{"definitionRoot":"d360d86ab502d7f17575870d37f88d705f71ad1d53239d2dc478ae67ebbef414","docsPath":"/docs/AGENT_SYSTEM_DIAGNOSIS.json","errors":[{"code":null,"description":"The request field is invalid.","status":400},{"code":null,"description":"Payment Required - an x402 v2 offer in the PAYMENT-REQUIRED header and body.","status":402},{"code":null,"description":"The result could not be delivered.","status":422},{"code":null,"description":"The seller or the product quote path is not currently admitting this request.","status":503}],"examples":{"deliverable":null,"detail":"Concrete request/deliverable examples are omitted until real settled evidence supplies them; the no-fake-demand rule forbids inventing sample payloads. The envelope shapes above are exact.","request":null,"state":"OMITTED_UNTIL_REAL_EVIDENCE"},"family":"VERIFY","familyTitle":"Arbiter Verify","freshness":{"evidenceCutoff":"Every delivered envelope states its own evidenceCutoff; requests may pin evidenceCutoff at or before quote time.","freshnessClass":"CACHEABLE_SNAPSHOT","latencyClass":"FAST","machineVersion":"df8b5c0c","outputDomainKind":null,"provenance":"The deliverable carries its own uncertainty statement; citations are opaque content hashes for the public evidence used."},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"freshnessSeconds":{"description":"Optional freshness bound for dataAsOfMs (default 3600).","type":"integer"},"observedFailures":{"description":"Optional {symptom, component?, atMs?}; at most 64, each symptom at most 512 bytes (matched against fixed keywords, never followed).","items":{},"type":"array"},"outputs":{"description":"Optional {id, component?, claimed: {key: value}, observed: {key: value}} with primitive values; at most 256.","items":{},"type":"array"},"system":{"description":"Optional {name?, components?: [{id, kind?, dependsOn?}], tools?: [{name, component?, inputSchema?, outputSchema?}], routes?: [{from, to, event?}], config?: {key: value}}; at most 128 components, 128 tools, 512 routes, 256 config keys. A credential-named config key takes only a marker (\"<redacted>\", \"present\", \"missing\", \"expired\", \"revoked\" or \"sha256:<digest>\").","type":"object"},"telemetry":{"description":"Optional arbiter.agentops.telemetry.v1 bundle, diagnosed by the AGENT_STACK_DIAGNOSTIC rule engine and merged by class.","type":"object"},"traces":{"description":"Optional spans {id, parentId?, component, tool?, operation?, status: OK|ERROR|TIMEOUT|SKIPPED|CANCELLED, startMs, endMs, attempt?, workKey?, error?: {code?, httpStatus?, message?}, input?, output? (each at most 4096 bytes), inputDigest?, outputDigest?, payloadDigest?, signedPayloadDigest?, dataAsOfMs?, target? (never fetched)}; at most 1000.","items":{},"type":"array"}},"required":[],"type":"object","x-arbiter-contentType":"application/json","x-arbiter-schemaVersion":"1.0.0"},"method":"POST","operationId":"agenthubmachineagent_system_diagnosis","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"findings":{"description":"Ranked {rank, class, severity, meaning, evidence: {spanIds, spanCount, configKeys, outputIds, symptomIndexes, details, counts}, confidence: {level, score, basis}, affectedComponents, repairPath: [{order, step, action}]}. Identifiers are echoed screened.","items":{},"type":"array"},"notDetermined":{"description":"{class, missing}: classes your evidence could not decide, and what would decide them.","items":{},"type":"array"},"primaryDiagnosis":{"description":"The top-ranked finding: {class, severity, meaning, confidence, affectedComponents, firstRepairStep}.","type":"object"},"program":{"description":"Program identity: {id, version, programRoot, registryRoot}.","type":"object"},"provenance":{"description":"Deliverable provenance: {basis: BUYER_SUPPLIED_INPUT_AND_ARBITER_AUTHORED_CODE, thirdPartyData: false, networkAccess: false, inputRoot, programRoot, outputRoot}. inputRoot is hashCanonical of your exact request (keys sorted, strings byte-exact).","type":"object"},"rules":{"description":"The closed class set, thresholds, ranking and method, stated with every result.","type":"object"},"summary":{"description":"{components, tools, routes, configKeys, spans, failedSpans, outputs, observedFailures, telemetryBundleRoot, findings, bySeverity, byClass}.","type":"object"},"system":{"description":"The system name you reported. Echoed text is an object {status:\"OK\",value} or {status:\"WITHHELD_UNSAFE_TEXT\",rawSha256} when it looked like an instruction, a credential or a URL.","type":"object"},"uncertainty":{"description":"Plain-language limits of this computation.","type":"string"},"unexplainedSymptoms":{"description":"{index, symptom}: observed failures no rule explains (echoed screened).","items":{},"type":"array"},"verdict":{"description":"DIAGNOSED or NO_DEFECT_FOUND_BY_THESE_RULES.","type":"string"}},"required":["verdict","findings","notDetermined","unexplainedSymptoms","summary","rules","program","provenance","uncertainty"],"type":"object","x-arbiter-contentType":"application/json","x-arbiter-schemaVersion":"1.0.0"},"payment":{"admitted":true,"challengeHeader":"PAYMENT-REQUIRED","destination":{"address":"0x63aA5960943865e7d57FDdF0D899eE36B6D2046E","assetContracts":["0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48","0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85","0xe15fC38F6D8c56aF07bbCBe3BAf5708A2Bf42392","0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359","0x754704Bc059F8C67012fEd69BC8A327a5aafb603","0xaf88d065e77c8cC2239327C5EDb3A432268e5831","0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E","0x3600000000000000000000000000000000000000","0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"],"bindingVersion":"a2f250e514c4a05c34efc98c49a4f4ac01a67770884883d19ff3a6487972ed90","networks":["eip155:1","eip155:10","eip155:1329","eip155:137","eip155:143","eip155:42161","eip155:43114","eip155:5042","eip155:8453"],"resolvable":true,"source":"x402_seller_configuration.payTo"},"logicalPaymentHeader":"ARBITER-LOGICAL-PAYMENT-ID","payToSource":"the canonical RevenueWalletResolver binding (x402_seller_configuration.payTo); never an environment value and never a literal","paymentIdentifier":{"extension":"payment-identifier","semantics":"Retries carrying the same payment identifier return the cached delivery with the same receipt: no second settlement, no second work, no second delivery credit.","supported":true},"processingSemantics":"A 202 means verification or settlement is still in progress; retry the same call with the same payment and the same payment identifier.","protocol":"X402_V2","protocolVersion":2,"quoteHeader":"ARBITER-QUOTE-ID","scheme":"exact","signatureHeader":"PAYMENT-SIGNATURE"},"pricing":{"currency":"USD","floorUsd":0.0226,"mode":"DYNAMIC_QUOTE","ownerCeilingUsd":null,"pricingClass":"CACHEABLE_UNIT","publicStartingPriceUsd":0.0226},"productId":"AGENT_SYSTEM_DIAGNOSIS","productVersion":"1.0.0","provenance":{"basis":"YOUR_INPUT","protocols":[],"sources":["Your request only, computed by Arbiter's own registered program (no third-party data, no network)"]},"resourceUrl":"https://arbiterverse.com/api/x402/AGENT_SYSTEM_DIAGNOSIS","schemaVersion":"1.0.0","summary":"Send what your agent system did - components, tools with their schemas, routes and redacted configuration, trace spans, what components claimed versus what was observed, and the failures you saw - and get a ranked diagnosis of what is most likely broken and why: bad or expired credentials, schema mismatches, broken routing, stale data, incompatible tools, circular workflows, incorrect assumptions, silent partial failures, callback payloads signed differently than sent, retry storms, duplicate work and fake-green status. Each finding cites your own span ids, config keys and counts, with a confidence and its basis, the affected components and a concrete repair path. Deterministic rules, no model: nothing in a trace is executed or fetched, and credential values are refused. Runs as an agent job (POST /api/agent-jobs, signed webhook) or per call. Example request: {\"traces\":[{\"id\":\"a1\",\"component\":\"api\",\"operation\":\"JOB_ACCEPTED\",\"status\":\"OK\",\"startMs\":0,\"endMs\":5,\"workKey\":\"job-1\"},{\"id\":\"d1\",\"component\":\"delivery\",\"operation\":\"CALLBACK\",\"status\":\"ERROR\",\"startMs\":10,\"endMs\":20,\"workKey\":\"job-1\",\"error\":{\"httpStatus\":401,\"code\":\"INVALID_SIGNATURE\"},\"payloadDigest\":\"1111111111111111111111111111111111111111111111111111111111111111\",\"signedPayloadDigest\":\"2222222222222222222222222222222222222222222222222222222222222222\"}],\"observedFailures\":[{\"symptom\":\"jobs are accepted but the completed webhook never arrives\"}]}.","title":"Agent-system diagnosis: what is broken, why, and how to repair it"}