{"api_version":2,"receipt_profile":"zambo-hosted-receipt/1","schema_url":"https://zambo.dev/aer-1/hosted-profile.schema.json","id":"3922c41c-7bc5-4c6d-808d-1f2501d35843","source_url":"https://zambo.dev/api/receipt/3922c41c-7bc5-4c6d-808d-1f2501d35843","receipt":{"id":"3922c41c-7bc5-4c6d-808d-1f2501d35843","created_at":"2026-11-05T03:01:10.729Z","receipt_schema_version":"0.4","job_summary":"MCP tool execution: meal_plan","tools":["meal_plan"],"steps":[{"tool":"meal_plan","status":"success","started_at":"2026-11-05T03:01:10.358Z","completed_at":"2026-11-05T03:01:10.729Z"}],"output_hash":"sha256:7a0b278b9ad14373d77ef2b229747d826a380643ad29eeed4e29fc1764ee5935","hash_algorithm":"sha256","canonical_bytes":"eyJjYWxsZXIiOnsiYmFzaXMiOiJpcF91YV8zMGQiLCJpZCI6InNoYTI1Njo4ZTdiMzU2ZGQ5ZWY5YTYyZDM2N2ZkYzAwY2U5Y2UxYTQxZTM0ZDNlYzNiZWNhNjFiZTBhMjU4ZTBiYWM4YzgxIiwicm90YXRlc19hdCI6IjIwMjYtMTItMDNUMDA6MDA6MDAuMDAwWiIsInR5cGUiOiJhbm9ueW1vdXMifSwiaXNzdWVyX2NsYWltcyI6eyJwcm92ZW5hbmNlX2NsYXNzIjoiRVhFQ1VURUQgQlkgWkFNQk8ifSwib3V0cHV0Ijp7ImRheXMiOlt7ImJyZWFrZmFzdCI6eyJjYWxvcmllcyI6MzAwLCJuYW1lIjoiR3JlZWsgeW9ndXJ0IHdpdGggZnJ1aXQiLCJ0aW1lIjoiNSBtaW4ifSwiZGF5IjoxLCJkaW5uZXIiOnsiY2Fsb3JpZXMiOjY1MCwibmFtZSI6IlNoZWV0LXBhbiB2ZWdldGFibGVzIHdpdGggYSBwcm90ZWluIiwidGltZSI6IjMwIG1pbiJ9LCJsdW5jaCI6eyJjYWxvcmllcyI6NTAwLCJuYW1lIjoiR3JhaW4gYm93bCB3aXRoIGJlYW5zIGFuZCB2ZWdldGFibGVzIiwidGltZSI6IjE1IG1pbiJ9LCJzbmFjayI6IkZydWl0IGFuZCBudXRzIn0seyJicmVha2Zhc3QiOnsiY2Fsb3JpZXMiOjMwMCwibmFtZSI6IkdyZWVrIHlvZ3VydCB3aXRoIGZydWl0IiwidGltZSI6IjUgbWluIn0sImRheSI6MiwiZGlubmVyIjp7ImNhbG9yaWVzIjo2NTAsIm5hbWUiOiJTaGVldC1wYW4gdmVnZXRhYmxlcyB3aXRoIGEgcHJvdGVpbiIsInRpbWUiOiIzMCBtaW4ifSwibHVuY2giOnsiY2Fsb3JpZXMiOjUwMCwibmFtZSI6IkdyYWluIGJvd2wgd2l0aCBiZWFucyBhbmQgdmVnZXRhYmxlcyIsInRpbWUiOiIxNSBtaW4ifSwic25hY2siOiJGcnVpdCBhbmQgbnV0cyJ9LHsiYnJlYWtmYXN0Ijp7ImNhbG9yaWVzIjozMDAsIm5hbWUiOiJHcmVlayB5b2d1cnQgd2l0aCBmcnVpdCIsInRpbWUiOiI1IG1pbiJ9LCJkYXkiOjMsImRpbm5lciI6eyJjYWxvcmllcyI6NjUwLCJuYW1lIjoiU2hlZXQtcGFuIHZlZ2V0YWJsZXMgd2l0aCBhIHByb3RlaW4iLCJ0aW1lIjoiMzAgbWluIn0sImx1bmNoIjp7ImNhbG9yaWVzIjo1MDAsIm5hbWUiOiJHcmFpbiBib3dsIHdpdGggYmVhbnMgYW5kIHZlZ2V0YWJsZXMiLCJ0aW1lIjoiMTUgbWluIn0sInNuYWNrIjoiRnJ1aXQgYW5kIG51dHMifV0sImRheXNfcGxhbm5lZCI6MywiZGlldGFyeSI6InZlZ2V0YXJpYW4iLCJmYWxsYmFjayI6dHJ1ZSwiZ29hbCI6ImJhbGFuY2VkIiwibm90ZSI6IkFJIGdlbmVyYXRpb24gd2FzIHVuYXZhaWxhYmxlLCBzbyBhIHNhZmUgc3RhcnRlciBwbGFuIGlzIHNob3duLiIsInByZXBfdGlwIjoiQmF0Y2gtY29vayBncmFpbnMgYW5kIHZlZ2V0YWJsZXMgb25jZSwgdGhlbiBwb3J0aW9uIHRoZW0gZm9yIHRoZSB3ZWVrLiIsInNlcnZpbmdzIjoxLCJzaG9wcGluZ19saXN0IjpbIkdyZWVrIHlvZ3VydCIsInNlYXNvbmFsIGZydWl0IiwiYnJvd24gcmljZSIsImJlYW5zIiwibWl4ZWQgdmVnZXRhYmxlcyIsIm9saXZlIG9pbCIsIm51dHMiLCJsZW1vbiJdLCJ2ZXJkaWN0IjoiQSBzaW1wbGUgYmFsYW5jZWQgcGxhbiBpcyByZWFkeTsgYWRqdXN0IHBvcnRpb25zIGZvciB5b3VyIG5lZWRzLiIsIndlZWtseV9jYWxvcmllcyI6NDM1MH0sInJlY2VpcHRfc2NoZW1hX3ZlcnNpb24iOiIwLjQiLCJzaWRlX2VmZmVjdHMiOnsiZGVjbGFyYXRpb25faGFzaCI6InNoYTI1Njo0NWFhZDM4ZjNhYTk4MmI5YWFmZTkyZWNiNDE2ZWJlOTg3OTFlZGRiYWY4YWI2ZGYwYmQwODYwNWI3YzFiZmVlIiwiZGVjbGFyZWQiOlsibm9uZSJdLCJzY2hlbWFfdmVyc2lvbiI6InphbWJvLXNpZGUtZWZmZWN0cy8xIn0sInRvb2wiOnsibmFtZSI6Im1lYWxfcGxhbiIsInNjb3BlIjoicHVibGljIiwidmVyc2lvbiI6IjQuMC4wIn19","canonical_bytes_withheld_for_privacy":false,"canonical_byte_length":1830,"verification_status":"verified","session_trail":[],"result_preview":"{\"days\":[{\"day\":1,\"breakfast\":{\"name\":\"Greek yogurt with fruit\",\"time\":\"5 min\",\"calories\":300},\"lunch\":{\"name\":\"Grain bowl with beans and vegetables\",\"time\":\"15 min\",\"calories\":500},\"dinner\":{\"name\":\"Sheet-pan vegetables with a protein\",\"time\":\"30 min\",\"calories\":650},\"snack\":\"Fruit and nuts\"},{\"day\":2,\"breakfast\":{\"name\":\"Greek yogurt with fruit\",\"time\":\"5 min\",\"calories\":300},\"lunch\":{\"name\":\"Grain bowl with beans and vegetables\",\"time\":\"15 min\",\"calories\":500},\"dinner\":{\"name\":\"Sheet-pan vegetables with a protein\",\"time\":\"30 min\",\"calories\":650},\"snack\":\"Fruit and nuts\"},{\"day\":3,\"breakfast\":{\"name\":\"Greek yogurt with fruit\",\"time\":\"5 min\",\"calories\":300},\"lunch\":{\"name\":\"Grain bowl with beans and vegetables\",\"time\":\"15 min\",\"calories\":500},\"dinner\":{\"name\":\"Sheet-pan vegetables with a protein\",\"time\":\"30 min\",\"calories\":650},\"snack\":\"Fruit and nuts\"}],\"shopping_list\":[\"Greek yogurt\",\"seasonal fruit\",\"brown rice\",\"beans\",\"mixed vegetables\",\"olive oil\",\"nuts\",\"lemon\"],\"weekly_calories\":4350,\"prep_tip\":\"Batch-cook grains and vegetables once, then portion them for the week.\",\"verdict\":\"A simple balanced plan is ready; adjust portions for your needs.\",\"days_planned\":3,\"dietary\":\"vegetarian\",\"goal\":\"balanced\",\"servings\":1,\"fallback\":true,\"note\":\"AI generation was unavailable, so a safe starter plan is shown.\"}","result_preview_integrity":"display_only_not_committed","result_preview_truncated":false,"input_hash":"sha256:515aac52277323baf56b859eac3fbe6b916971fd088e8b49b247b30a0d0406ff","input_hash_layout":"zambo-json-sorted-keys-utf8-v1","free_used":0,"free_remaining":0,"free_limit":0,"signal_handle":null,"tool":{"name":"meal_plan","version":"4.0.0","scope":"public"},"caller":{"type":"anonymous","id":"sha256:8e7b356dd9ef9a62d367fdc00ce9ce1a41e34d3ec3beca61be0a258e0bac8c81","basis":"ip_ua_30d","rotates_at":"2026-12-03T00:00:00.000Z"},"side_effects":{"declared":["none"],"schema_version":"zambo-side-effects/1","declaration_hash":"sha256:45aad38f3aa982b9aafe92ecb416ebe98791eddbaf8ab6df0bd08605b7c1bfee"},"evidence_sha256":null,"evidence_url":null,"evidence_byte_length":null,"evidence_content_type":null,"evidence_source_url":null,"evidence_status":"empty","result_source":null,"evidence_source":null,"external_evidence":[],"provenance":{"result_source":null,"evidence_source":null,"evidence_status":"empty","evidence_captures":[]},"provenance_class":"EXECUTED BY ZAMBO","metadata_hash":"sha256:ae33c9643dfda65f645fda074e70ccc4b75ff5c4528754f0bb463cffe1876039","anchor":{"event_id":"a09865d5215304dd92010cdb4fe2bda94d4aff41b4827b1dcfffcfd38af418a7","pubkey":"e13475107d30c918ec664adf2ab1141024a22fb35190f82c9e933704fa49af41","relays":["wss://relay.damus.io","wss://nos.lol","wss://relay.primal.net"],"status":"partial","published_at":"2026-11-05T03:01:11.268Z","schema_version":"zambo-receipt-anchor/1","envelope":{"anchored_at":"2026-11-05T03:01:10.729Z","evidence_url":null,"receipt_uuid":"3922c41c-7bc5-4c6d-808d-1f2501d35843","output_sha256":"sha256:7a0b278b9ad14373d77ef2b229747d826a380643ad29eeed4e29fc1764ee5935","schema_version":"zambo-receipt-anchor/1","evidence_sha256":null,"evidence_byte_length":null},"envelope_bytes":"{\"anchored_at\":\"2026-11-05T03:01:10.729Z\",\"evidence_byte_length\":null,\"evidence_sha256\":null,\"evidence_url\":null,\"output_sha256\":\"sha256:7a0b278b9ad14373d77ef2b229747d826a380643ad29eeed4e29fc1764ee5935\",\"receipt_uuid\":\"3922c41c-7bc5-4c6d-808d-1f2501d35843\",\"schema_version\":\"zambo-receipt-anchor/1\"}"},"receipt_profile":"zambo-hosted-receipt/1","schema_url":"https://zambo.dev/aer-1/hosted-profile.schema.json","api_version":1,"verification_scope":"separate_sha256_commitment_and_provenance_binding_checks","checks":{"commitment_matches":{"label":"SHA-256 commitment","passed":true,"status":"pass","detail":"The exact decoded canonical bytes match the stored SHA-256 output hash."},"canonical_payload_matches":{"label":"Canonical payload reconstruction","passed":true,"status":"pass","detail":"The stored output and known call context reconstruct the exact canonical bytes."},"provenance_binding":{"label":"Provenance claim binding","status":"pass","passed":true,"detail":"The metadata claim is consistent with the verified receipt bytes; issuer is not authenticated."},"metadata_binding":{"label":"AER-1 metadata hash","status":"pass","passed":true,"detail":"metadata_hash matches the canonical metadata block."},"signature":{"label":"Ed25519 signature (not checked)","passed":false,"status":"not_checked","detail":"No Ed25519 signature or pinned signing key was checked."},"chain":{"label":"Receipt chain (not checked)","passed":false,"status":"not_checked","detail":"No append-only receipt-chain proof was checked."},"issued_by_zambo_dev":{"label":"Issuer authentication","passed":false,"status":"not_checked","detail":"A zambo.dev receipt URL does not authenticate the issuer; no pinned signature or trusted issuer key was checked."},"immutable_log_timestamp":{"label":"Stored timestamp","passed":true,"timestamp":"2026-11-05T03:01:10.729Z","detail":"The receipt store reports 2026-11-05T03:01:10.729Z; immutability is not checked here."},"receipt_schema_version":"0.4","signature_valid":{"label":"Ed25519 signature (not checked)","passed":false,"status":"not_checked","detail":"Compatibility field only. No Ed25519 signature was checked; use API v2 checks.commitment_matches for the SHA-256 commitment."},"chain_valid":{"label":"Receipt chain (not checked)","passed":false,"status":"not_checked","detail":"This endpoint does not verify an append-only chain."}},"execution_context":{"environment":"zambo.dev hosted MCP","quota_identity":{"meter_key":"sha256:015ad8859da04104d098990554744ebd36447f16e1c93fdb36b1f90956fb1f10"}}},"evidence_status":"empty","verification_status":"verified","checks":{"commitment_matches":{"status":"pass","passed":true,"expected_hash":"sha256:7a0b278b9ad14373d77ef2b229747d826a380643ad29eeed4e29fc1764ee5935","computed_hash":"sha256:7a0b278b9ad14373d77ef2b229747d826a380643ad29eeed4e29fc1764ee5935","detail":"SHA-256 of the exact decoded canonical bytes matches output_hash."},"canonical_payload_matches":{"label":"Canonical payload reconstruction","passed":true,"status":"pass","detail":"The stored output and known call context reconstruct the exact canonical bytes."},"provenance_binding":{"label":"Provenance claim binding","status":"pass","passed":true,"detail":"The metadata claim is consistent with the verified receipt bytes; issuer is not authenticated."},"metadata_binding":{"label":"AER-1 metadata hash","status":"pass","passed":true,"detail":"metadata_hash matches the canonical metadata block."},"issuer_authentication":{"label":"Issuer authentication","passed":false,"status":"not_checked","detail":"A zambo.dev receipt URL does not authenticate the issuer; no pinned signature or trusted issuer key was checked."},"signature":{"status":"not_checked","detail":"No Ed25519 signature or pinned signing key is supplied."},"schema":{"status":"not_checked","detail":"Schema conformance is left to the client using the linked hosted-profile schema."},"chain":{"status":"not_checked","detail":"This endpoint does not verify an append-only receipt chain."}}}