this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Get the initial pror^?totype up and running

+145 -26
+61 -13
apps/keytrace.dev/layouts/default.vue
··· 5 5 :show-add-claim="session?.authenticated" 6 6 > 7 7 <template #user> 8 - <NuxtLink 9 - v-if="session?.authenticated" 10 - :to="`/${session.handle}`" 11 - class="w-8 h-8 rounded-full bg-zinc-800 overflow-hidden flex items-center justify-center" 12 - > 13 - <img 14 - v-if="session.avatar" 15 - :src="session.avatar" 16 - class="w-full h-full object-cover" 17 - /> 18 - <UserIcon v-else class="w-4 h-4 text-zinc-500" /> 19 - </NuxtLink> 8 + <div v-if="session?.authenticated" class="relative" ref="menuRef"> 9 + <button 10 + class="w-8 h-8 rounded-full bg-zinc-800 overflow-hidden flex items-center justify-center cursor-pointer" 11 + @click="menuOpen = !menuOpen" 12 + > 13 + <img 14 + v-if="session.avatar" 15 + :src="session.avatar" 16 + class="w-full h-full object-cover" 17 + /> 18 + <UserIcon v-else class="w-4 h-4 text-zinc-500" /> 19 + </button> 20 + <Transition 21 + enter-active-class="transition ease-out duration-100" 22 + enter-from-class="opacity-0 scale-95" 23 + enter-to-class="opacity-100 scale-100" 24 + leave-active-class="transition ease-in duration-75" 25 + leave-from-class="opacity-100 scale-100" 26 + leave-to-class="opacity-0 scale-95" 27 + > 28 + <div 29 + v-if="menuOpen" 30 + class="absolute right-0 mt-2 min-w-[180px] rounded-lg bg-zinc-900 border border-zinc-800 shadow-xl py-1 z-50 origin-top-right" 31 + > 32 + <NuxtLink 33 + :to="`/${session.handle}`" 34 + class="flex items-center gap-2 px-3 py-2 text-sm text-zinc-300 hover:bg-zinc-800 hover:text-zinc-100" 35 + @click="menuOpen = false" 36 + > 37 + <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg> 38 + Profile 39 + </NuxtLink> 40 + <div class="h-px bg-zinc-800 my-1" /> 41 + <button 42 + class="flex items-center gap-2 px-3 py-2 text-sm text-zinc-400 hover:bg-zinc-800 hover:text-zinc-100 w-full" 43 + @click="handleLogout" 44 + > 45 + <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/><polyline points="16 17 21 12 16 7"/><line x1="21" y1="12" x2="9" y2="12"/></svg> 46 + Sign out 47 + </button> 48 + </div> 49 + </Transition> 50 + </div> 20 51 <NuxtLink 21 52 v-else 22 53 to="/" ··· 50 81 <script setup lang="ts"> 51 82 import { User as UserIcon } from "lucide-vue-next" 52 83 53 - const { session } = useSession() 84 + const { session, logout } = useSession() 85 + const menuOpen = ref(false) 86 + const menuRef = ref<HTMLElement | null>(null) 87 + 88 + function onClickOutside(e: MouseEvent) { 89 + if (menuRef.value && !menuRef.value.contains(e.target as Node)) { 90 + menuOpen.value = false 91 + } 92 + } 93 + 94 + onMounted(() => document.addEventListener("click", onClickOutside)) 95 + onUnmounted(() => document.removeEventListener("click", onClickOutside)) 96 + 97 + async function handleLogout() { 98 + menuOpen.value = false 99 + await logout() 100 + navigateTo("/") 101 + } 54 102 </script>
+3
apps/keytrace.dev/nuxt.config.ts
··· 26 26 }, 27 27 28 28 vite: { 29 + resolve: { 30 + dedupe: ["vue"], 31 + }, 29 32 server: { 30 33 allowedHosts: [".ngrok-free.app"], 31 34 },
+13 -2
apps/keytrace.dev/pages/add.vue
··· 170 170 const selectedService = ref<(ServiceOption & { inputLabel?: string; inputPlaceholder?: string; instructions?: string[]; proofTemplate?: string }) | null>(null) 171 171 const claimUri = ref("") 172 172 const claimUriError = ref("") 173 + const claimId = ref("") 173 174 174 175 const stepLabels = ["Choose service", "Create proof", "Verify"] 175 176 ··· 188 189 "Paste the verification content below into the file", 189 190 "Save the gist and paste the URL below", 190 191 ], 191 - proofTemplate: '{\n "keytrace": "{did}"\n}', 192 + proofTemplate: '{\n "keytrace": "{claimId}",\n "did": "{did}"\n}', 192 193 }, 193 194 { 194 195 id: "dns-txt", ··· 210 211 211 212 const proofContent = computed(() => { 212 213 const template = selectedService.value?.proofTemplate ?? "" 213 - return template.replace(/\{did\}/g, session.value?.did ?? "did:plc:...") 214 + return template 215 + .replace(/\{claimId\}/g, claimId.value) 216 + .replace(/\{did\}/g, session.value?.did ?? "did:plc:...") 214 217 }) 215 218 216 219 const selectedInstructions = computed(() => selectedService.value?.instructions ?? []) 217 220 221 + function generateClaimId() { 222 + const bytes = new Uint8Array(8) 223 + crypto.getRandomValues(bytes) 224 + return "kt-" + Array.from(bytes, (b) => b.toString(16).padStart(2, "0")).join("") 225 + } 226 + 218 227 function selectService(service: ServiceOption) { 219 228 selectedService.value = services.find((s) => s.id === service.id) ?? null 220 229 claimUri.value = "" 221 230 claimUriError.value = "" 231 + claimId.value = generateClaimId() 222 232 currentStep.value = 1 223 233 } 224 234 ··· 347 357 selectedService.value = null 348 358 claimUri.value = "" 349 359 claimUriError.value = "" 360 + claimId.value = "" 350 361 verificationSteps.value = [] 351 362 verificationComplete.value = false 352 363 verificationSuccess.value = false
+14 -1
apps/keytrace.dev/server/api/claims/index.post.ts
··· 37 37 createdAt: new Date().toISOString(), 38 38 } 39 39 40 + console.log(`[claims] Creating record: repo=${did} collection=${COLLECTION_NSID}`) 41 + console.log(`[claims] Record:`, JSON.stringify(record)) 42 + 40 43 const result = await agent.com.atproto.repo.createRecord({ 41 44 repo: did, 42 45 collection: COLLECTION_NSID, 43 46 record, 44 47 }) 45 48 49 + console.log(`[claims] Success: uri=${result.data.uri} cid=${result.data.cid}`) 50 + 46 51 return { 47 52 uri: result.data.uri, 48 53 cid: result.data.cid, 49 54 record, 50 55 } 51 - } catch { 56 + } catch (err: unknown) { 57 + console.error(`[claims] Failed to create claim record:`, err) 58 + if (err && typeof err === "object" && "status" in err) { 59 + console.error(`[claims] HTTP status: ${(err as any).status}`) 60 + } 61 + if (err && typeof err === "object" && "headers" in err) { 62 + const wwwAuth = (err as any).headers?.get?.("www-authenticate") ?? (err as any).headers?.["www-authenticate"] 63 + if (wwwAuth) console.error(`[claims] WWW-Authenticate: ${wwwAuth}`) 64 + } 52 65 throw createError({ 53 66 statusCode: 500, 54 67 statusMessage: "Failed to create claim record",
+4
apps/keytrace.dev/server/api/verify.post.ts
··· 23 23 } 24 24 25 25 try { 26 + console.log(`[verify] Starting verification: uri=${body.claimUri} did=${body.did}`) 26 27 const claim = new Claim(body.claimUri, body.did) 27 28 const result = await claim.verify({ timeout: 10_000 }) 29 + 30 + console.log(`[verify] Result: status=${result.status} errors=${JSON.stringify(result.errors)} matches=${JSON.stringify(claim.matches.map((m) => m.provider.id))}`) 28 31 29 32 return { 30 33 uri: claim.uri, ··· 38 41 })), 39 42 } 40 43 } catch (err: unknown) { 44 + console.error(`[verify] Error:`, err) 41 45 if (err instanceof Error && err.message.includes("Invalid DID")) { 42 46 throw createError({ statusCode: 400, statusMessage: "Invalid DID format" }) 43 47 }
+2 -1
apps/keytrace.dev/server/routes/oauth/login.get.ts
··· 11 11 try { 12 12 const client = getOAuthClient() 13 13 const url = await client.authorize(handle, { 14 - scope: "atproto", 14 + scope: "atproto repo:dev.keytrace.claim?action=create repo:dev.keytrace.claim?action=delete", 15 + 15 16 }) 16 17 17 18 return sendRedirect(event, url.toString())
+1 -1
apps/keytrace.dev/server/utils/oauth.ts
··· 98 98 "refresh_token", 99 99 ], 100 100 response_types: ["code"] as ["code"], 101 - scope: "atproto", 101 + scope: "atproto repo:dev.keytrace.claim?action=create repo:dev.keytrace.claim?action=delete", 102 102 token_endpoint_auth_method: "none" as const, 103 103 application_type: "web" as const, 104 104 dpop_bound_access_tokens: true,
+7 -2
apps/keytrace.dev/server/utils/session.ts
··· 1 1 import type { H3Event } from "h3" 2 + import { Agent } from "@atproto/api" 2 3 import { verifySignedDid, getOAuthClient } from "./oauth" 3 4 4 5 /** ··· 31 32 const did = requireAuth(event) 32 33 const client = getOAuthClient() 33 34 try { 35 + console.log(`[session] Restoring OAuth session for ${did}`) 34 36 const oauthSession = await client.restore(did) 35 - return { did, agent: oauthSession } 36 - } catch { 37 + const agent = new Agent(oauthSession) 38 + console.log(`[session] Session restored successfully`) 39 + return { did, agent } 40 + } catch (err) { 41 + console.error(`[session] Failed to restore OAuth session:`, err) 37 42 throw createError({ 38 43 statusCode: 500, 39 44 statusMessage: "Failed to restore OAuth session",
+1 -1
packages/doip/dist/claim.d.ts.map
··· 1 - {"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../src/claim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAEL,KAAK,oBAAoB,EAG1B,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAOzE;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED;;GAEG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,OAAO,CAAgB;gBAEnB,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAUpC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,OAAO,IAAI,oBAAoB,EAAE,CAEpC;IAED,IAAI,MAAM,IAAI,MAAM,EAAE,CAErB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,kBAAkB,IAAI,oBAAoB,GAAG,SAAS;IAItD;;OAEG;IACG,MAAM,CAAC,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC;YA6C1D,UAAU;IAYxB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,sBAAsB;IAoC9B,OAAO,CAAC,cAAc;IAqBtB,MAAM,IAAI,MAAM;IAahB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK;CAG3D"} 1 + {"version":3,"file":"claim.d.ts","sourceRoot":"","sources":["../src/claim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAEL,KAAK,oBAAoB,EAG1B,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAOzE;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED;;GAEG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,OAAO,CAAgB;gBAEnB,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAUpC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,OAAO,IAAI,oBAAoB,EAAE,CAEpC;IAED,IAAI,MAAM,IAAI,MAAM,EAAE,CAErB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,kBAAkB,IAAI,oBAAoB,GAAG,SAAS;IAItD;;OAEG;IACG,MAAM,CAAC,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC;YA6C1D,UAAU;IAkBxB,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,sBAAsB;IAoC9B,OAAO,CAAC,cAAc;IAqBtB,MAAM,IAAI,MAAM;IAahB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK;CAG3D"}
+12 -1
packages/doip/dist/claim.js
··· 113 113 if (!fetcher) { 114 114 throw new Error(`Unknown fetcher: ${request.fetcher}`); 115 115 } 116 - return fetcher.fetch(request.uri, { 116 + console.log(`[doip] Fetching proof: ${request.fetcher} ${request.uri} (format: ${request.format})`); 117 + const data = await fetcher.fetch(request.uri, { 117 118 format: request.format, 118 119 timeout: opts.timeout ?? DEFAULT_TIMEOUT, 119 120 headers: request.options?.headers, 120 121 }); 122 + const fileKeys = data && typeof data === "object" && "files" in data 123 + ? Object.keys(data.files) 124 + : []; 125 + console.log(`[doip] Fetched proof, files: ${JSON.stringify(fileKeys)}`); 126 + return data; 121 127 } 122 128 checkProof(data, targets) { 123 129 const proofPatterns = this.generateProofPatterns(); 130 + console.log(`[doip] Checking proof for DID ${this._did}, patterns: ${JSON.stringify(proofPatterns)}`); 131 + console.log(`[doip] Proof targets: ${JSON.stringify(targets.map((t) => t.path.join(".")))}`); 124 132 for (const target of targets) { 125 133 const values = this.extractValues(data, target.path); 134 + console.log(`[doip] Target ${target.path.join(".")}: found ${values.length} value(s)${values.length > 0 ? `: ${JSON.stringify(values.map((v) => v.slice(0, 100)))}` : ""}`); 126 135 for (const value of values) { 127 136 if (this.matchesPattern(value, proofPatterns, target.relation)) { 137 + console.log(`[doip] Match found at ${target.path.join(".")} (relation: ${target.relation})`); 128 138 return true; 129 139 } 130 140 } 131 141 } 142 + console.log(`[doip] No match found in any target`); 132 143 return false; 133 144 } 134 145 generateProofPatterns() {
+1 -1
packages/doip/dist/claim.js.map
··· 1 - {"version":3,"file":"claim.js","sourceRoot":"","sources":["../src/claim.ts"],"names":[],"mappings":"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"} 1 + {"version":3,"file":"claim.js","sourceRoot":"","sources":["../src/claim.ts"],"names":[],"mappings":"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"}
+1 -1
packages/doip/dist/serviceProviders/github.d.ts.map
··· 1 - {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/serviceProviders/github.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;GAKG;AACH,QAAA,MAAM,MAAM,EAAE,eAkEb,CAAC;AAEF,eAAe,MAAM,CAAC"} 1 + {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/serviceProviders/github.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;GAKG;AACH,QAAA,MAAM,MAAM,EAAE,eAwEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
+6
packages/doip/dist/serviceProviders/github.js
··· 31 31 }, 32 32 }, 33 33 target: [ 34 + // Check keytrace.json file content 35 + { 36 + path: ["files", "keytrace.json", "content"], 37 + relation: "contains", 38 + format: "text", 39 + }, 34 40 // Check proof.md file content 35 41 { 36 42 path: ["files", "proof.md", "content"],
+1 -1
packages/doip/dist/serviceProviders/github.js.map
··· 1 - {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/serviceProviders/github.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,MAAM,GAAoB;IAC9B,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,oBAAoB;IAE9B,kEAAkE;IAClE,KAAK,EAAE,wDAAwD;IAE/D,WAAW,EAAE,KAAK;IAElB,UAAU,CAAC,GAAG,EAAE,KAAK;QACnB,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;QAEnC,OAAO;YACL,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI,QAAQ,EAAE;gBACvB,GAAG,EAAE,sBAAsB,QAAQ,EAAE;gBACrC,MAAM,EAAE,IAAI;aACb;YACD,KAAK,EAAE;gBACL,OAAO,EAAE;oBACP,GAAG,EAAE,gCAAgC,MAAM,EAAE;oBAC7C,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,OAAO,EAAE;4BACP,MAAM,EAAE,gCAAgC;yBACzC;qBACF;iBACF;gBACD,MAAM,EAAE;oBACN,8BAA8B;oBAC9B;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC;wBACtC,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,iCAAiC;oBACjC;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,CAAC;wBACzC,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,6DAA6D;oBAC7D;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC;wBACxC,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,yBAAyB;oBACzB,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;iBAChE;aACF;SACF,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,GAAG;QACd,OAAO,sCAAsC,GAAG,EAAE,CAAC;IACrD,CAAC;IAED,KAAK,EAAE;QACL,EAAE,GAAG,EAAE,4CAA4C,EAAE,WAAW,EAAE,IAAI,EAAE;QACxE,EAAE,GAAG,EAAE,6CAA6C,EAAE,WAAW,EAAE,IAAI,EAAE;QACzE,EAAE,GAAG,EAAE,0BAA0B,EAAE,WAAW,EAAE,KAAK,EAAE;QACvD,EAAE,GAAG,EAAE,sCAAsC,EAAE,WAAW,EAAE,KAAK,EAAE;KACpE;CACF,CAAC;AAEF,eAAe,MAAM,CAAC"} 1 + {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/serviceProviders/github.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,MAAM,GAAoB;IAC9B,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,oBAAoB;IAE9B,kEAAkE;IAClE,KAAK,EAAE,wDAAwD;IAE/D,WAAW,EAAE,KAAK;IAElB,UAAU,CAAC,GAAG,EAAE,KAAK;QACnB,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;QAEnC,OAAO;YACL,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI,QAAQ,EAAE;gBACvB,GAAG,EAAE,sBAAsB,QAAQ,EAAE;gBACrC,MAAM,EAAE,IAAI;aACb;YACD,KAAK,EAAE;gBACL,OAAO,EAAE;oBACP,GAAG,EAAE,gCAAgC,MAAM,EAAE;oBAC7C,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,OAAO,EAAE;4BACP,MAAM,EAAE,gCAAgC;yBACzC;qBACF;iBACF;gBACD,MAAM,EAAE;oBACN,mCAAmC;oBACnC;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,CAAC;wBAC3C,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,8BAA8B;oBAC9B;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC;wBACtC,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,iCAAiC;oBACjC;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,CAAC;wBACzC,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,6DAA6D;oBAC7D;wBACE,IAAI,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC;wBACxC,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,yBAAyB;oBACzB,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;iBAChE;aACF;SACF,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,GAAG;QACd,OAAO,sCAAsC,GAAG,EAAE,CAAC;IACrD,CAAC;IAED,KAAK,EAAE;QACL,EAAE,GAAG,EAAE,4CAA4C,EAAE,WAAW,EAAE,IAAI,EAAE;QACxE,EAAE,GAAG,EAAE,6CAA6C,EAAE,WAAW,EAAE,IAAI,EAAE;QACzE,EAAE,GAAG,EAAE,0BAA0B,EAAE,WAAW,EAAE,KAAK,EAAE;QACvD,EAAE,GAAG,EAAE,sCAAsC,EAAE,WAAW,EAAE,KAAK,EAAE;KACpE;CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
+12 -1
packages/doip/src/claim.ts
··· 140 140 if (!fetcher) { 141 141 throw new Error(`Unknown fetcher: ${request.fetcher}`); 142 142 } 143 - return fetcher.fetch(request.uri, { 143 + console.log(`[doip] Fetching proof: ${request.fetcher} ${request.uri} (format: ${request.format})`); 144 + const data = await fetcher.fetch(request.uri, { 144 145 format: request.format, 145 146 timeout: opts.timeout ?? DEFAULT_TIMEOUT, 146 147 headers: request.options?.headers, 147 148 }); 149 + const fileKeys = data && typeof data === "object" && "files" in data 150 + ? Object.keys((data as Record<string, unknown>).files as object) 151 + : []; 152 + console.log(`[doip] Fetched proof, files: ${JSON.stringify(fileKeys)}`); 153 + return data; 148 154 } 149 155 150 156 private checkProof(data: unknown, targets: ProofTarget[]): boolean { 151 157 const proofPatterns = this.generateProofPatterns(); 158 + console.log(`[doip] Checking proof for DID ${this._did}, patterns: ${JSON.stringify(proofPatterns)}`); 159 + console.log(`[doip] Proof targets: ${JSON.stringify(targets.map((t) => t.path.join(".")))}`); 152 160 153 161 for (const target of targets) { 154 162 const values = this.extractValues(data, target.path); 163 + console.log(`[doip] Target ${target.path.join(".")}: found ${values.length} value(s)${values.length > 0 ? `: ${JSON.stringify(values.map((v) => v.slice(0, 100)))}` : ""}`); 155 164 for (const value of values) { 156 165 if (this.matchesPattern(value, proofPatterns, target.relation)) { 166 + console.log(`[doip] Match found at ${target.path.join(".")} (relation: ${target.relation})`); 157 167 return true; 158 168 } 159 169 } 160 170 } 171 + console.log(`[doip] No match found in any target`); 161 172 return false; 162 173 } 163 174
+6
packages/doip/src/serviceProviders/github.ts
··· 37 37 }, 38 38 }, 39 39 target: [ 40 + // Check keytrace.json file content 41 + { 42 + path: ["files", "keytrace.json", "content"], 43 + relation: "contains", 44 + format: "text", 45 + }, 40 46 // Check proof.md file content 41 47 { 42 48 path: ["files", "proof.md", "content"],