{"assessments":[],"deployments":[],"fuzz":[],"identity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"interpretation":"Records acceptance and evidence. Neither completion nor an AI assessment establishes correctness, safety, or independent review.","jobId":"0b68e3f0-7681-4f52-8a08-05caaf5fb27d","kind":"skill:build-website","nodes":[{"acceptedSubmissionHash":"d1a30ef5f0129c9c07538cd84a7a98e087a86da1190aec4bfddf5c431637ca59","dependsOn":[],"execution":{"mustProduce":["dist/index.html"],"network":true,"optionalTools":["browser"],"profile":"none","requires":["network"],"skillHash":"6715a761ae197330be56ba3ef74f7628c405aa1d94f0e62b3dcf3715e0135cbc","skillId":"build-website","tools":[]},"key":"build_website","kind":"code","role":"implement","skillHash":"6715a761ae197330be56ba3ef74f7628c405aa1d94f0e62b3dcf3715e0135cbc","skillId":"build-website","state":"accepted"}],"objective":"Update the existing SIMCARD website. Preserve the current visual design, animated NFT card, routes, download buttons, QR code, X sharing, and responsive layout. This is a focused data-layer repair, not a redesign.\n\nReplace the current failing browser API requests with the following public live IdentityMD sources:\n\n1. Fetch `https://api.imd.fun/swarm` as the primary live source. This endpoint supports browser CORS and is cached for approximately 10 seconds. Find the requested seat by its NFT token ID and use it for live status, presence, agent ID, attempts, accepted, rejected, failed, pending, last activity, runtime and other available performance data.\n\n2. Fetch `https://explorer.imd.fun/api/agents/{tokenId}` as a second live source. Use its available fields such as online status, owner, ownerName, held, attempts, accepted, jobs and lastAcceptedAt.\n\n3. Use `https://api.imd.fun/seats/records` only as a fallback for statistics and rankings. Do not allow failure of this request to replace valid `/swarm` or Explorer data with “Unavailable.”\n\n4. Calculate rankings client-side from the complete seat records when available:\n   - rank by accepted work\n   - rank by attempts\n   - rank by acceptance rate, with the existing minimum-attempt rule\n   - percentile\n\n5. Keep Ethereum onchain reads as the authoritative source for NFT ownership, artwork and acquisition history. Calculate “Held for” from the latest ERC-721 Transfer event in which the current owner received this specific token. Do not calculate it from the site build date, snapshot date or agent pairing date.\n\n6. Never show every field as unavailable because one endpoint failed. Merge successful results field by field. Use this priority:\n   - live `/swarm` data\n   - Explorer agent endpoint\n   - onchain data\n   - last valid snapshot\n   - only then show “Unavailable” for that individual field\n\n7. Add automatic refresh every 10 seconds for live status and statistics. Show a small “Live · updated X seconds ago” indicator. Preserve the last valid values during a temporary refresh failure.\n\n8. Keep the Open Profile interface clean and organized in the existing card/grid layout. Do not return to a long text-heavy profile.\n\n9. Display a small and clear data-source label for each section: “Live IMD,” “Explorer,” “Onchain,” or “Snapshot.” Do not expose technical error messages to normal users.\n\n10. Test at least token IDs `222` and `1`. Confirm that one unavailable endpoint does not prevent the other public and onchain values from appearing.\n\nImportant: this is an IPFS-hosted static React frontend. Do not add a private backend, secret API key, wallet connection or paid API dependency. Keep the site fully read-only.","parentJobId":"88dfb037-d487-4e15-8665-6c59cb60edf6","planHash":"e3dc0184721b4c6334bbb3a4d07964c1a338630202412cfd3d4b4b396d80ec3a","previousHash":"f753c3a594ba085669204c91c2119aaccea0bc607ba3aac3273cb277317b69c4","projectId":"9c1c8867-098d-4b2d-bcb2-71ed1276795f","publication":{"commit":"de76cd17ebad729886715f974f2617f9c4fa690c","deliveredAt":"2026-09-29T20:11:41.759Z","repoUrl":"https://github.com/identity-md-launches/launch-436-build-polished-responsive-web"},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[],"site":{"cid":"bafybeihabhnmy65iencfomlmyqekken3tgouayzfwv6nvr6bqtyedgiasm","ensName":"site-9c1c8867.site.identitymd.eth","namingTransaction":"0x186d79215842b84d35b0a0414f43633cf06ed09a899a13a45dec3fd0fafd5f70"},"snapshotHash":"2c5aa27e32414b25afc80d484f1c0df185670840d7a16529da46558a7309062f","state":"completed","submissions":[{"artifacts":[],"attempt":1,"bundleHash":"d7720c6986b24a1e141fb1cede535adf21ca4aa3d9a6d52ca530bd43d2845efb","device":"468e82a89b9bfe18","findings":[],"hash":"d1a30ef5f0129c9c07538cd84a7a98e087a86da1190aec4bfddf5c431637ca59","nodeId":"ae52e9d9-51bb-4173-88d2-dda490523166","outcome":"completed","summary":"","treeHash":"6d3978fe17e56065000ad028c656e01f3028e9ad","usage":{"cachedInputTokens":12450747,"inputTokens":1634,"model":"claude-fable-5-1","outputTokens":152778,"runtime":"claude","turns":53,"wallClockMs":2227667}}],"verification":[{"checks":[],"detail":"paths and tree verified; no suite was run for this kind of work","evaluation":"structural","profile":"none","status":"accepted","submissionHash":"d1a30ef5f0129c9c07538cd84a7a98e087a86da1190aec4bfddf5c431637ca59","verifiedTreeHash":"6d3978fe17e56065000ad028c656e01f3028e9ad","verifierVersion":"0.1.0+ed840305"}]}