{"spec_version":"v1","generated_at":"2026-04-05T07:34:59.121Z","public_key":"03dc27993a2c90856cdeb45e228ac065f18f69f0933c917b2336c1e75712f178","algorithm":"ed25519","ttl_seconds":60,"note":"Freshly signed on every call. receipt_id/issued_at/expires_at/signature change each time. Verify: base64-decode canonical_payload → UTF-8 bytes → Ed25519.verify(sig_hex, bytes, pub_key_hex).","vectors":[{"vector_id":"v1_xnys_open","description":"XNYS OPEN — weekday trading hours (09:30–16:00 ET). status: OPEN, source: SCHEDULE.","synthetic_time":"2026-04-07T15:00:00.000Z","receipt":{"receipt_id":"d2c3a59e-42be-40a1-ac9e-02b1f718a0e0","issued_at":"2026-04-05T07:34:59.121Z","expires_at":"2026-04-05T07:35:59.121Z","issuer":"headlessoracle.com","receipt_mode":"live","schema_version":"v5.0","public_key_id":"key_2026_v1","mic":"XNYS","status":"OPEN","source":"SCHEDULE","halt_detection":"active","signature":"32f0ca95452375b8832d35ad19f179cb9dad7f97329857481ea3752f13adf43b1eb7c100da7beeffd8e60c27fb2f9d347cd6384a476e69ae12cfa2c29a1c2600"},"canonical_payload":"eyJleHBpcmVzX2F0IjoiMjAyNi0wNC0wNVQwNzozNTo1OS4xMjFaIiwiaGFsdF9kZXRlY3Rpb24iOiJhY3RpdmUiLCJpc3N1ZWRfYXQiOiIyMDI2LTA0LTA1VDA3OjM0OjU5LjEyMVoiLCJpc3N1ZXIiOiJoZWFkbGVzc29yYWNsZS5jb20iLCJtaWMiOiJYTllTIiwicHVibGljX2tleV9pZCI6ImtleV8yMDI2X3YxIiwicmVjZWlwdF9pZCI6ImQyYzNhNTllLTQyYmUtNDBhMS1hYzllLTAyYjFmNzE4YTBlMCIsInJlY2VpcHRfbW9kZSI6ImxpdmUiLCJzY2hlbWFfdmVyc2lvbiI6InY1LjAiLCJzb3VyY2UiOiJTQ0hFRFVMRSIsInN0YXR1cyI6Ik9QRU4ifQ==","public_key":"03dc27993a2c90856cdeb45e228ac065f18f69f0933c917b2336c1e75712f178","algorithm":"ed25519"},{"vector_id":"v1_xnys_closed","description":"XNYS CLOSED — weekend (Saturday). status: CLOSED, source: SCHEDULE.","synthetic_time":"2026-04-04T15:00:00.000Z","receipt":{"receipt_id":"c36edad9-c2df-4243-bda1-de611b3e7eee","issued_at":"2026-04-05T07:34:59.121Z","expires_at":"2026-04-05T07:35:59.121Z","issuer":"headlessoracle.com","receipt_mode":"live","schema_version":"v5.0","public_key_id":"key_2026_v1","mic":"XNYS","status":"CLOSED","source":"SCHEDULE","halt_detection":"active","signature":"06d6b1be73960369f1db48f4469551aec0b43d479d5c4b1234b17542365aa572fd9cd1963b50156a5e89a8f24eaf4c362b9b9cfd190ef72ac1c5aa7189556e04"},"canonical_payload":"eyJleHBpcmVzX2F0IjoiMjAyNi0wNC0wNVQwNzozNTo1OS4xMjFaIiwiaGFsdF9kZXRlY3Rpb24iOiJhY3RpdmUiLCJpc3N1ZWRfYXQiOiIyMDI2LTA0LTA1VDA3OjM0OjU5LjEyMVoiLCJpc3N1ZXIiOiJoZWFkbGVzc29yYWNsZS5jb20iLCJtaWMiOiJYTllTIiwicHVibGljX2tleV9pZCI6ImtleV8yMDI2X3YxIiwicmVjZWlwdF9pZCI6ImMzNmVkYWQ5LWMyZGYtNDI0My1iZGExLWRlNjExYjNlN2VlZSIsInJlY2VpcHRfbW9kZSI6ImxpdmUiLCJzY2hlbWFfdmVyc2lvbiI6InY1LjAiLCJzb3VyY2UiOiJTQ0hFRFVMRSIsInN0YXR1cyI6IkNMT1NFRCJ9","public_key":"03dc27993a2c90856cdeb45e228ac065f18f69f0933c917b2336c1e75712f178","algorithm":"ed25519"},{"vector_id":"v1_xjpx_lunch","description":"XJPX CLOSED — lunch break 11:30–12:30 JST. status: CLOSED, source: SCHEDULE.","synthetic_time":"2026-04-07T03:00:00.000Z","receipt":{"receipt_id":"dcf04bf6-149f-418c-84ac-6e79d619375d","issued_at":"2026-04-05T07:34:59.121Z","expires_at":"2026-04-05T07:35:59.121Z","issuer":"headlessoracle.com","receipt_mode":"live","schema_version":"v5.0","public_key_id":"key_2026_v1","mic":"XJPX","status":"CLOSED","source":"SCHEDULE","halt_detection":"schedule_only","signature":"6dc80b1f65b3cc4b74143d79ef934d7ab8a9c017c36cd43a3575416a8f21bd6a82e6ce573317bb363e38d6c0a56f56c93b3cf28bc1d8bd8f7ac5f5137fa97209"},"canonical_payload":"eyJleHBpcmVzX2F0IjoiMjAyNi0wNC0wNVQwNzozNTo1OS4xMjFaIiwiaGFsdF9kZXRlY3Rpb24iOiJzY2hlZHVsZV9vbmx5IiwiaXNzdWVkX2F0IjoiMjAyNi0wNC0wNVQwNzozNDo1OS4xMjFaIiwiaXNzdWVyIjoiaGVhZGxlc3NvcmFjbGUuY29tIiwibWljIjoiWEpQWCIsInB1YmxpY19rZXlfaWQiOiJrZXlfMjAyNl92MSIsInJlY2VpcHRfaWQiOiJkY2YwNGJmNi0xNDlmLTQxOGMtODRhYy02ZTc5ZDYxOTM3NWQiLCJyZWNlaXB0X21vZGUiOiJsaXZlIiwic2NoZW1hX3ZlcnNpb24iOiJ2NS4wIiwic291cmNlIjoiU0NIRURVTEUiLCJzdGF0dXMiOiJDTE9TRUQifQ==","public_key":"03dc27993a2c90856cdeb45e228ac065f18f69f0933c917b2336c1e75712f178","algorithm":"ed25519"},{"vector_id":"v1_unknown","description":"UNKNOWN/SYSTEM — no holiday data for this year. Agents MUST treat UNKNOWN as CLOSED.","synthetic_time":null,"receipt":{"receipt_id":"21ed41c3-a364-4fb4-bd1e-5624a22adf04","issued_at":"2026-04-05T07:34:59.121Z","expires_at":"2026-04-05T07:35:59.121Z","issuer":"headlessoracle.com","receipt_mode":"live","schema_version":"v5.0","public_key_id":"key_2026_v1","mic":"XNYS","status":"UNKNOWN","source":"SYSTEM","halt_detection":"active","signature":"8764883a999c08598e88a1b73eff6fcb161bce13fb770bf40b765bb97e2ff325c2012b85670694fb4aa3a535a7d8a84dcc98fa856b7ae23568bd0455e5492502"},"canonical_payload":"eyJleHBpcmVzX2F0IjoiMjAyNi0wNC0wNVQwNzozNTo1OS4xMjFaIiwiaGFsdF9kZXRlY3Rpb24iOiJhY3RpdmUiLCJpc3N1ZWRfYXQiOiIyMDI2LTA0LTA1VDA3OjM0OjU5LjEyMVoiLCJpc3N1ZXIiOiJoZWFkbGVzc29yYWNsZS5jb20iLCJtaWMiOiJYTllTIiwicHVibGljX2tleV9pZCI6ImtleV8yMDI2X3YxIiwicmVjZWlwdF9pZCI6IjIxZWQ0MWMzLWEzNjQtNGZiNC1iZDFlLTU2MjRhMjJhZGYwNCIsInJlY2VpcHRfbW9kZSI6ImxpdmUiLCJzY2hlbWFfdmVyc2lvbiI6InY1LjAiLCJzb3VyY2UiOiJTWVNURU0iLCJzdGF0dXMiOiJVTktOT1dOIn0=","public_key":"03dc27993a2c90856cdeb45e228ac065f18f69f0933c917b2336c1e75712f178","algorithm":"ed25519"},{"vector_id":"v1_health","description":"HEALTH OK — same schema as /v5/health. No mic or schema_version fields.","synthetic_time":"2026-04-05T07:34:59.121Z","receipt":{"receipt_id":"17fb3a6f-7010-4ac9-9128-c41a82c33e6a","issued_at":"2026-04-05T07:34:59.121Z","expires_at":"2026-04-05T07:35:59.121Z","issuer":"headlessoracle.com","status":"OK","source":"SYSTEM","public_key_id":"key_2026_v1","signature":"a5499023e1d88e7f18a728cb2f61ff58c800f499865e7754ea1b45f796b7b8a2206f5261fab7859902d6bd49992ac34edecb67cb90a0d0f0a1f771e130488302"},"canonical_payload":"eyJleHBpcmVzX2F0IjoiMjAyNi0wNC0wNVQwNzozNTo1OS4xMjFaIiwiaXNzdWVkX2F0IjoiMjAyNi0wNC0wNVQwNzozNDo1OS4xMjFaIiwiaXNzdWVyIjoiaGVhZGxlc3NvcmFjbGUuY29tIiwicHVibGljX2tleV9pZCI6ImtleV8yMDI2X3YxIiwicmVjZWlwdF9pZCI6IjE3ZmIzYTZmLTcwMTAtNGFjOS05MTI4LWM0MWE4MmMzM2U2YSIsInNvdXJjZSI6IlNZU1RFTSIsInN0YXR1cyI6Ik9LIn0=","public_key":"03dc27993a2c90856cdeb45e228ac065f18f69f0933c917b2336c1e75712f178","algorithm":"ed25519"}]}