{"agent":"codeguardian","tier":6,"status":"verified","summary":"This iNFT has verified encrypted intelligence, memory, compute history, replay trace, and certificate evidence.","checks":[{"id":"token","label":"iNFT token and ownership","ok":true,"tier":1,"source":"live","detail":"Live 0G Galileo demo token is seeded and publicly referenced"},{"id":"manifest","label":"Proof-of-Intelligence manifest","ok":true,"tier":2,"source":"live","root":"sha256:228dab69761d19637632d73801a34d899064ce51f3ffd82d6fc182bb2432aee4","detail":"Manifest root is bound to the live demo iNFT and registered in the live Proof-of-Intelligence registry"},{"id":"intelligence_bundle","label":"Encrypted intelligence bundle","ok":true,"tier":3,"source":"live","root":"sha256:6289903e00f2e42448eb3cad30d322fcd4e1b3e3af54dd37f35a863a864f0bcd","detail":"AES-256-GCM encrypted bundle exists and root matches"},{"id":"memory","label":"Persistent memory","ok":true,"tier":4,"source":"live","root":"sha256:a2398bbb0b7b561c7fa891cf7a808f81991996cc1bce29b01dc0d6010ac11c72","detail":"Memory checkpoint and history root match"},{"id":"compute_history","label":"0G Compute run history","ok":true,"tier":5,"source":"hybrid","root":"sha256:3536c2223ad4ce203d583a7b55a73c249aded63430eebbc53a3989be2eadaf4e","detail":"Analysis and critic run records are present"},{"id":"run_trace","label":"Executable behavior trace","ok":true,"tier":5,"source":"live","root":"sha256:59f86560dcb00747fcb04368daeb8d0318f75ac4928180636db1e37e445362e9","detail":"Replayable trace includes analysis, patch, critic, and memory events"},{"id":"ens","label":"Optional ENS","ok":true,"tier":2,"source":"mock","detail":"ENS is not targeted in this submission; this is mock compatibility metadata only"},{"id":"certificate","label":"Certificate/export bundle","ok":true,"tier":6,"source":"live","root":"sha256:8e573883fd043ae0e58b566e12d96c682306c89a8b08a7c3c9a77cac6e6e2db1","detail":"Certificate binds the live demo iNFT and is issued in the live Proof-of-Intelligence registry"}],"evidence":{"manifestRoot":"sha256:228dab69761d19637632d73801a34d899064ce51f3ffd82d6fc182bb2432aee4","intelligenceBundleRoot":"sha256:6289903e00f2e42448eb3cad30d322fcd4e1b3e3af54dd37f35a863a864f0bcd","memoryRoot":"sha256:a2398bbb0b7b561c7fa891cf7a808f81991996cc1bce29b01dc0d6010ac11c72","latestRunRoot":"sha256:59f86560dcb00747fcb04368daeb8d0318f75ac4928180636db1e37e445362e9","checkpointRoot":"sha256:e397bbbff2aa81b1889f90cb749b8f70fee9791d0111192e49c79da51cebfbf1","historyRoot":"sha256:e4ba11b5c16faa78033c22d4f5b4ea7c3a129d5d9e007373c006de99c0707060","liveRegistryAddress":"0x90d7f68cbf2a860f7b2c54548095fcb72d61b9af","liveDemoInftAddress":"0xa390c79f21a3b4f62f4797308f50f8ff9ea4f4c9","livePassportId":"0x01212ca92791787ccb99c454d3b59c5596f90882c892c7fca3e63294a159430c","liveCertificateId":"4"},"missing":[],"sources":["live","hybrid","mock"],"token":{"chainId":16602,"contract":"0xa390c79f21a3b4f62f4797308f50f8ff9ea4f4c9","tokenId":"1","owner":"0x053B860f329C9e4549D23dc8Aadf1116b99F1233","standard":"ERC-7857-like live demo iNFT","metadataUri":"https://proof-of-intelligence-explorer.vercel.app/api/agent/codeguardian","manifestRoot":"sha256:228dab69761d19637632d73801a34d899064ce51f3ffd82d6fc182bb2432aee4","source":"live"},"manifest":{"schema":"poi/v0.1","name":"CodeGuardian","description":"An autonomous 0G iNFT code-review agent with encrypted intelligence, evolving memory, compute-backed critic loops, replayable traces, and dynamic policy upgrades.","inft":{"chainId":16602,"contract":"0xa390c79f21a3b4f62f4797308f50f8ff9ea4f4c9","tokenId":"1","standard":"ERC-7857-like live demo iNFT"},"identity":{"owner":"0x053B860f329C9e4549D23dc8Aadf1116b99F1233","ens":"codeguardian.poi-demo.eth"},"storage":{"manifestRoot":"sha256:228dab69761d19637632d73801a34d899064ce51f3ffd82d6fc182bb2432aee4","intelligenceBundleRoot":"sha256:6289903e00f2e42448eb3cad30d322fcd4e1b3e3af54dd37f35a863a864f0bcd","memoryRoot":"sha256:a2398bbb0b7b561c7fa891cf7a808f81991996cc1bce29b01dc0d6010ac11c72","latestRunRoot":"sha256:59f86560dcb00747fcb04368daeb8d0318f75ac4928180636db1e37e445362e9"},"compute":{"provider":"0xa48f01287233509FD694a22Bf840225062E67836","models":["qwen/qwen-2.5-7b-instruct"],"latestRunIds":["zg-hybrid-analysis-001","zg-hybrid-critic-001","zg-hybrid-analysis-002","zg-hybrid-critic-002","zg-live-analysis-95bb0f30184d","zg-live-critic-a83aa740043a"]},"skills":[{"name":"static-code-review","version":"0.1.0","codeHash":"sha256:75e6535fdf2da0c091bd57055d9443e062cab9e890baac0ae44f4340bb9d0b48","permissions":["read_fixture","write_memory","append_trace"]},{"name":"patch-proposal","version":"0.1.0","codeHash":"sha256:4806c0aa151f1de6c31ccfdc4b2b0a1723a467c78cf085ba132687db5abfb25d","permissions":["propose_patch"]},{"name":"critic-loop","version":"0.1.1","codeHash":"sha256:105b17eb2621b0c6591e097f1fc0ebd81b8c6596b46efe2b7404e420173de20c","permissions":["self_review","upgrade_policy"]},{"name":"memory-update-policy","version":"0.1.0","codeHash":"sha256:3ac32f5f3fb152e07438bc904c44ad085afbb41442998bb3b066f91de8f944ee","permissions":["write_memory","checkpoint_history"]}],"memory":{"type":"checkpointed-kv-with-immutable-history","checkpointRoot":"sha256:e397bbbff2aa81b1889f90cb749b8f70fee9791d0111192e49c79da51cebfbf1","historyRoot":"sha256:e4ba11b5c16faa78033c22d4f5b4ea7c3a129d5d9e007373c006de99c0707060"},"proof":{"status":"certified","certificateId":"poi-cert-codeguardian-001","issuedAt":"2026-04-26T00:20:13.000Z"},"permissions":{"publicProfile":true,"ownerCanDecrypt":true,"allowedActions":["verify","replay","export-proof","owner-decrypt-demo","run-allowlisted-demo-task"]}},"certificate":{"schema":"poi-certificate/v0.1","certificateId":"poi-cert-codeguardian-001","agent":"CodeGuardian","tier":6,"issuedAt":"2026-04-26T00:20:13.000Z","issuer":"AgentProof - Proof-of-Intelligence Explorer","evidence":{"inft":{"chainId":16602,"contract":"0xa390c79f21a3b4f62f4797308f50f8ff9ea4f4c9","tokenId":"1"},"intelligenceBundleRoot":"sha256:6289903e00f2e42448eb3cad30d322fcd4e1b3e3af54dd37f35a863a864f0bcd","memoryRoot":"sha256:a2398bbb0b7b561c7fa891cf7a808f81991996cc1bce29b01dc0d6010ac11c72","latestRunRoot":"sha256:59f86560dcb00747fcb04368daeb8d0318f75ac4928180636db1e37e445362e9","computeRunIds":["zg-hybrid-analysis-001","zg-hybrid-critic-001","zg-hybrid-analysis-002","zg-hybrid-critic-002","zg-live-analysis-95bb0f30184d","zg-live-critic-a83aa740043a"]}},"run":{"schema":"poi-run/v0.1","runId":"codeguardian-run-003","agent":"CodeGuardian","source":"live","task":"Audit async side effects for unchecked failures.","events":[{"type":"task_received","at":"2026-04-26T00:20:00.000Z","detail":{"target":"examples/codeguardian/fixtures/unchecked-async-side-effect.ts","goal":"Audit async side effects for unchecked failures.","source":"hybrid"},"root":"sha256:5bdd45a35c1bce03fa4ef187477edf75b510b7b3bb267f77cdc46460c9f72280"},{"type":"context_loaded","at":"2026-04-26T00:20:01.000Z","detail":{"target":"examples/codeguardian/fixtures/unchecked-async-side-effect.ts","sourceHash":"sha256:79fabb8f811fd1fb260468b81663b19269a16979aca4f3c2908c28b968e9cfa3","byteLength":259,"source":"hybrid"},"root":"sha256:0df2aeb043de6cf7e41f782323de60876df9cc838fa036b9b4a4d30bdc01e76f"},{"type":"compute_started","at":"2026-04-26T00:20:02.000Z","detail":{"runId":"zg-live-analysis-95bb0f30184d","model":"qwen/qwen-2.5-7b-instruct","provider":"0xa48f01287233509FD694a22Bf840225062E67836","source":"live"},"root":"sha256:c00c50fcd3df275dd0f4ed2235fcc7d283ad83874862821c9dbd3e267a474740"},{"type":"compute_completed","at":"2026-04-26T00:20:04.000Z","detail":{"runId":"zg-live-analysis-95bb0f30184d","outputHash":"sha256:3bd121aaf0db03f3c838b67f3aac34d0bde2cde27ef85eaecd4bbd762265e3a3","source":"live"},"root":"sha256:7f2601cdda8674b384f93ed16e4d92b8dceb0e44c4b25c0c3c93bbf94b81348f"},{"type":"issue_found","at":"2026-04-26T00:20:05.000Z","detail":{"issue":"A failed awaited side effect can escape without explicit classification or recovery.","source":"live"},"root":"sha256:2b546d01e4b7cdfbc240f5a1d74db1acef673203d6c102b63465b3841b00763a"},{"type":"patch_proposed","at":"2026-04-26T00:20:07.000Z","detail":{"patch":"Wrap the awaited side effect in explicit error handling and return a typed failure result.","patchDiff":"diff --git a/examples/codeguardian/fixtures/unchecked-async-side-effect.ts b/examples/codeguardian/fixtures/unchecked-async-side-effect.ts\n@@\n export async function saveAuditResult(\n   id: string,\n   writeAudit: (id: string) => Promise<void>,\n ): Promise<SaveResult> {\n-  await writeAudit(id);\n+  try {\n+    await writeAudit(id);\n+  } catch (error) {\n+    return {\n+      ok: false,\n+      reason: error instanceof Error ? error.message : \"audit write failed\",\n+    };\n+  }\n   return { ok: true, id };\n }\n","source":"live"},"root":"sha256:9e6ddf3c4c850cbaadfa1e8fee0b65340a4bea1c2c07b0c87b4a9b6d62b7c225"},{"type":"critic_started","at":"2026-04-26T00:20:08.000Z","detail":{"runId":"zg-live-critic-a83aa740043a","model":"qwen/qwen-2.5-7b-instruct","provider":"0xa48f01287233509FD694a22Bf840225062E67836","source":"live"},"root":"sha256:5ea9658440d85a63159da84b27fe93b821c75e960e0d525e3176c7d2749cd529"},{"type":"critic_completed","at":"2026-04-26T00:20:10.000Z","detail":{"critique":"The patch addresses the issue by ensuring that any errors from awaited side effects are handled explicitly. However, it is important to provide more context on how the failure result will be used and ensure that the error handling is robust and clear. Consider adding detailed error messages and specifying the type of failure for better debugging and maintenance.","accepted":true,"source":"live"},"root":"sha256:7397851581b6996029ef293c2ebf45fd44b4768da100180fc568e9fd6c9e4df1"},{"type":"memory_delta_created","at":"2026-04-26T00:20:11.000Z","detail":{"learnedPattern":"Wrap awaited side effects in explicit error handling.","memoryDelta":"Added an async side-effect handling pattern to persistent review memory.","source":"hybrid"},"root":"sha256:b5f465e30d2efdccb902018b478c49a3d60e7046cebe8a01f962f6fa9c9d1006"},{"type":"memory_written","at":"2026-04-26T00:20:12.000Z","detail":{"memoryRoot":"sha256:a2398bbb0b7b561c7fa891cf7a808f81991996cc1bce29b01dc0d6010ac11c72","version":3,"source":"live"},"root":"sha256:fe1d87882ccd73f857c6b36d40b5fb5bbdec05e16bfa4051246333b566a6738a"},{"type":"skill_upgrade_checked","at":"2026-04-26T00:20:13.000Z","detail":{"upgraded":false,"source":"hybrid"},"root":"sha256:a7781139ac43f77fe8ad49728fadd57a188ed9e5f312db97eecb545f6dd23077"},{"type":"trace_committed","at":"2026-04-26T00:20:14.000Z","detail":{"traceRoot":"sha256:655cb96747a2141f62ddc78a16e4b2c39fd5a80e413358bc40ba7bdc125f3c7c","source":"live"},"root":"sha256:a4379af2343b21fafd3a5f641b65c169a6efa14b7fe8ea6449b5b299405680ba"},{"type":"certificate_issued","at":"2026-04-26T00:20:15.000Z","detail":{"certificateId":"poi-cert-codeguardian-001","source":"live"},"root":"sha256:8a98bdfa21be2867acf1d4834bdcf5db3adad17f574c0cbfc7b14950ee5a8cb1"}],"result":{"issue":"A failed awaited side effect can escape without explicit classification or recovery.","patch":"Wrap the awaited side effect in explicit error handling and return a typed failure result.","patchDiff":"diff --git a/examples/codeguardian/fixtures/unchecked-async-side-effect.ts b/examples/codeguardian/fixtures/unchecked-async-side-effect.ts\n@@\n export async function saveAuditResult(\n   id: string,\n   writeAudit: (id: string) => Promise<void>,\n ): Promise<SaveResult> {\n-  await writeAudit(id);\n+  try {\n+    await writeAudit(id);\n+  } catch (error) {\n+    return {\n+      ok: false,\n+      reason: error instanceof Error ? error.message : \"audit write failed\",\n+    };\n+  }\n   return { ok: true, id };\n }\n","critique":"The patch addresses the issue by ensuring that any errors from awaited side effects are handled explicitly. However, it is important to provide more context on how the failure result will be used and ensure that the error handling is robust and clear. Consider adding detailed error messages and specifying the type of failure for better debugging and maintenance.","accepted":true,"memoryRoot":"sha256:a2398bbb0b7b561c7fa891cf7a808f81991996cc1bce29b01dc0d6010ac11c72"}},"computeRuns":{"schema":"poi-compute-runs/v0.1","provider":"0xa48f01287233509FD694a22Bf840225062E67836","model":"qwen/qwen-2.5-7b-instruct","runs":[{"id":"zg-hybrid-analysis-001","type":"analysis","promptHash":"sha256:a1395afc1da06ab4c6659e41cde99aadc667081505c9deeedb21344e60fcfcb9","outputHash":"sha256:be5b3003c68d22c78d13ef0d753f88323eb71f3e40ba9a97b67de5b23e3cbef6","at":"2026-04-26T00:00:04.000Z","source":"hybrid"},{"id":"zg-hybrid-critic-001","type":"critic","promptHash":"sha256:61e7c42804e74757c991baa39e2028aaa09090dacfb6ba5e89c0a68e4398f6b3","outputHash":"sha256:79be7837b8660e70999b1243f11ce556498495b1b246b926af8703622e7d9bdf","at":"2026-04-26T00:00:10.000Z","source":"hybrid"},{"id":"zg-hybrid-analysis-002","type":"analysis","promptHash":"sha256:0c1d5bbb88f8a6fc3e3aa626b18e9607741d3396ce86df3b4e3e360e2ea6b420","outputHash":"sha256:52a61a030d9a99fd63a37ec5ae502438733a389b90c583f28606f3d17eef2e4d","at":"2026-04-26T00:10:04.000Z","source":"hybrid"},{"id":"zg-hybrid-critic-002","type":"critic","promptHash":"sha256:e7e14279b7740e3a7a605b5a9449b7fd9b02aee1a634b6640282f660641c5215","outputHash":"sha256:ab77f6ee37959571c3a80f4be8324dcfde9e85a625aa75bfa9bb5215c54acde3","at":"2026-04-26T00:10:10.000Z","source":"hybrid"},{"id":"zg-live-analysis-95bb0f30184d","type":"analysis","promptHash":"sha256:f73f67b8ca9165a8c1aa957d3732e1dfe95f52e8ca1b5d2ac1248e433f3cdfb8","outputHash":"sha256:3bd121aaf0db03f3c838b67f3aac34d0bde2cde27ef85eaecd4bbd762265e3a3","at":"2026-04-26T00:20:04.000Z","source":"live"},{"id":"zg-live-critic-a83aa740043a","type":"critic","promptHash":"sha256:510b89f03cf1d932da52ba57efcf3a723b4d06454a5e5587eadca61a4da97fa9","outputHash":"sha256:84e490da252516a8bd0b848a18222470520c11c9023ae74dece4df59cf02b012","at":"2026-04-26T00:20:10.000Z","source":"live"}]},"da":{"available":true,"source":"mock"},"issuedAt":"2026-04-26T00:00:00.000Z"}