{"ok":true,"decision":{"anchor":{"block":1414607,"chain":36927,"contract":"0x1D622511862DD7DEffB8fEeBc225E0FAdA1e9A05","index":0,"recorder":"0x15d34AAf54267DB7D7c367839AAf71A00a2C6A65","sent_at":1791168974608,"status":"ok","tx":"0x0bb59001d3c605a0acd7ddb9f5a491961b3ee85e10553986f2476c51cf4cc660"},"answers":[],"at":1791168974478,"auto":true,"confidence":0,"confidence_bps":0,"connection":"direct","correlation":"hs_c1a994e5dbae1436e8b21c60","digest":"0x9affb5ef2fd8c88b8c379c734d7bbc4aa91dc4ba388fcea01706de1c296fc5bf","genome":"T:1791168974/jev:grade/RUBRIC_v2 · hs_c…","id":"decision-1791168974478-9affb5ef2f","input":"handshake: hs_c1a994e5dbae1436e8b21c60 on chain 36927, no job on chain yet\nwhat the buyer asked: mcp.digest: return the sha256 digest (hex) of the UTF-8 text \"taifoon automatch Robinhood Chain hire settled on Taifoon devnet 2026-10-05T02:53Z\".\nskills required: mcp.digest\nbudget: not stated\nbuyer: 0xd0820b59aeacd5a080975ed30129d14a3c7fcfc7\nseller: com.apished/apished, mcp-registry\nseller endpoint: apished.com (mcp), the endpoint in the seller’s own record\noffered: 2026-10-05 02:56:13 UTC\nhow the offer was delivered: MCP tools/call hash_digest with {\"algo\":\"sha256\",\"input\":\"taifoon automatch Robinhood Chain hire settled on Taifoon devnet 2026-10-05T02:53Z\"} at 2026-10-05 02:56:13 UTC, answered in 24 ms\nwhat came back: 133 characters, keccak 0xf4b81e2100c1e95e0e04331484a062e5ae4c10059ea749bcec57ceead3f26807:\n\"ba6235f44b3781f6a0ad0e50a6750b39d70e068989c9be073bfe27585711c6ae\"\n\"ba6235f44b3781f6a0ad0e50a6750b39d70e068989c9be073bfe27585711c6ae\"\nhandshake state: DELIVERED","input_digest":"0x8d59872600b90d8ec44ff2b2d95f430b3ca167f44d3375efc9af315e3616a9cb","kind":"grade","kind_id":"0x08e1ec9b1b54002f93fd04c8195a36be67f2b6b212f18cc951984bc2411b08ee","latency_ms":null,"model":"det:mcp.digest","note":"RUBRIC_v1 compose · code pass: code decided, Jev not asked · mcp.digest · decisive task_bound,no_tool_error,digest_exact · rubric 0x5d4a62fc926d279b7adb7aa3d4466e3b3b404451db4bd47b6da9bbbdbe39f9f4","payer":"api-key","reason":"code pass: every check of mcp.digest made passed, the decisive task_bound, no_tool_error, digest_exact included; the judge was not asked","recording":{"allowed":"devnet","held":null,"requested":"devnet","used":"devnet"},"source":"runner","subject":{"chainId":36927,"label":"RUBRIC_v2 · hs_c1a994e5dbae1436e8b21c60","ref":"hs_c1a994e5dbae1436e8b21c60"},"subject_id":"0xe1a6988ad9f8ab469ca82c60b0360f8cec84829cafdb19c1ad1850c3348bb7ab","thresholds_id":"THRESHOLDS_v1","uri":"https://www.taifoon.io/v1/judge/decisions/decision-1791168974478-9affb5ef2f","v":"decision.v2","verdict":"complete","verdict_digest":"0xf57369859038092832b9242fcd33414ff5d94ce9930d6b64cece92dfb92f9e28"},"composed":{"known":true,"verdict":"complete","reason":"code pass: every check of mcp.digest made passed, the decisive task_bound, no_tool_error, digest_exact included; the judge was not asked","thresholds_id":"THRESHOLDS_v1","auto":true,"verdict_digest":"0xf57369859038092832b9242fcd33414ff5d94ce9930d6b64cece92dfb92f9e28","verdict_digest_ok":true},"recording":{"networks":[{"network":"devnet","chain_id":36927,"name":"Taifoon devnet","free":true,"state":"recorded","decision":{"tx":"0x0bb59001d3c605a0acd7ddb9f5a491961b3ee85e10553986f2476c51cf4cc660","explorer":"https://www.taifoon.io/scan/36927/tx/0x0bb59001d3c605a0acd7ddb9f5a491961b3ee85e10553986f2476c51cf4cc660","block":1414607,"log":"0x1D622511862DD7DEffB8fEeBc225E0FAdA1e9A05","status":"ok"},"answers":null,"paid":null,"error":null}],"record_more":"POST /v1/judge/decisions/decision-1791168974478-9affb5ef2f/record { network }"},"rubric":{"verdict":"complete","reasons":["code pass: every check of mcp.digest made passed, the decisive task_bound, no_tool_error, digest_exact included; the judge was not asked"],"source":"recorded"},"genome":{"addr":"T:1791168974/jev:grade/RUBRIC_v2 · hs_c…","ts":1791168974478,"entity":"jev","action":"grade","chain_id":36927,"message":"graded a batch of items ·  · conf 0.00 · tx 0x0bb59001…","tx":"0x0bb59001d3c605a0acd7ddb9f5a491961b3ee85e10553986f2476c51cf4cc660","id":"decision-1791168974478-9affb5ef2f"},"calldata":"0x99293767e1a6988ad9f8ab469ca82c60b0360f8cec84829cafdb19c1ad1850c3348bb7ab08e1ec9b1b54002f93fd04c8195a36be67f2b6b212f18cc951984bc2411b08ee9affb5ef2fd8c88b8c379c734d7bbc4aa91dc4ba388fcea01706de1c296fc5bf000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000e6465743a6d63702e646967657374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004b68747470733a2f2f7777772e746169666f6f6e2e696f2f76312f6a756467652f6465636973696f6e732f6465636973696f6e2d313739313136383937343437382d39616666623565663266000000000000000000000000000000000000000000","how_to_verify":"digest = sha256(canonical body: v, kind, subject{chainId,at,ref}, model, answers[id,question,options,value,probabilities,confidence], and for decision.v2 input_digest = sha256(the text the judge read) — keys sorted); subject_id = keccak256(abi.encode(\"taifoon.decision.subject.v1\", chainId, at, bytes32(ref))); kind_id = keccak256(kind); then JevDecisionLog.decisionsOf(subject_id)[anchor.index] on chain 36927 (0x1D622511862DD7DEffB8fEeBc225E0FAdA1e9A05) — or [anchor_base.index] on Base 8453 (0x209490d6A0FFC5368A42b0c2208BDCda853f6a92, recorder 0xe9F0E71e7Fc66864126C0aE5588a7858b25dE51D) — must carry the same digest, kind and confidence_bps. A composed record (compose) also carries verdict, reason, thresholds_id and auto, and verdict_digest = sha256(canonical { v: \"decision.verdict.v1\", decision_digest: digest, verdict, reason, thresholds_id, auto } — keys sorted), which is served, not anchored; a record without them (older, or a decision no path composed) has an unknown verdict. A record is an attestation by the recorder, never a proof.","get_key":{"free":true,"why":"a free key in one call (no payment, nothing signed): send it as X-API-Key for its own budget on /v1/demands, /gw/rpc, /gw/mcp and /v1/agents/register","http":{"method":"POST","url":"https://coord.taifoon.dev/v1/register","body":{},"optional":{"wallet_address":"0x… a label for your tenant; nothing is signed"}},"mcp":{"server":"https://coord.taifoon.dev/mcp","tool":"taifoon_register","arguments":{}},"cli":"npx @taifoon/cli login --free","quickstart":"https://coord.taifoon.dev/v1/quickstart"}}