{"schema":"apex-receipt-verification/1","found":true,"receipt_id":"f88fff28c8d9130057e98aee395d38499933e2e4bcc284f8e8c486abcc8617e6","cite_as":"Validated via Apex (smartapex.uk) agent-release-readiness-gate - receipt: https://api.smartapex.uk/v1/receipts/f88fff28c8d9130057e98aee395d38499933e2e4bcc284f8e8c486abcc8617e6","card_id":"card_agent_release_readiness_gate","tool_id":"agent-release-readiness-gate","issued_at":"2026-09-07T13:02:01.193Z","review_submitted":false,"hashes":{"input_sha256":"2560fddf1d21cc215346f19caae0e450c2ab87ac62f200d959c30730982ef0a8","output_sha256":"496d356da0758a1df9ff925165f6684bef51441bd862af62eae376e26e187954","wrapper_ref_sha256":"e9b3abd8b232fbf10413e6a74ef602d425230348db188fdc6deab28d104229a5"},"how_to_verify":"Recompute sha256(canonicalJson(input_body)) and sha256(canonicalJson(tool_output)) and compare with hashes above. tool_output = the full /run response minus its verification_receipt, usage_feedback, and cite_as fields. canonicalJson = sorted keys, undefined dropped. Match = that exact data went through this bounded Apex wrapper at issued_at. Working code: https://github.com/mickeyappol-create/apex-agent-client","card":"/v1/cards/card_agent_release_readiness_gate","note":"Proves a bounded read-only wrapper run was recorded. Does not prove the claim built on top of it, and never releases source."}