{"law":"anonymous public spec = reference minus PUBLIC_SPEC_HIDE minus forbidden prefixes/tokens; build fails closed on any leak or on a mutating operation without auth/idempotency metadata","forbidden_prefixes":["/system/","/system","/api/system","/steward/","/internal/","/security/","/api/security","/api/coordination/grammar/steward","/capabilities/execute","/federation/hall/evidence","/coordination/robots/service","/api/agent-hands/executor/join","/remote","/api/remote","/shell","/exec","/runtime/","/api/runtime","/vault","/api/vault","/ops/","/api/ops","/cabinet/api","/api/cabinet","/api/hall","/api/revenue"],"forbidden_tokens":["remote-exec","remote_exec","write_file","read_file","run_command","service-control","systemctl","send-action"],"hidden_fragments":["recompute","/learn","clone","valuate","reengage","auto-offer","bundles/generate","/brain/","founder","admin","immune","enforcer","swarm","orchestr","organism","truth-kernel","debug","payment_hold","payout","settle","stripe","ledger","wallet","permissions","/memory/"],"public_paths":210,"build":"PASS","error":null,"model":"POSITIVE ALLOWLIST since 2026-09-04: /openapi.json = EMPTY + APPROVED operations of spec/public_operations.json; unknown route = NOT PUBLIC","registry":"/.well-known/public-operations.json","registry_counts":{"approved":210,"seeded_unreviewed":636,"version":"2026-09-04.2"},"reference_tier_unclassified_routes":["GET /coordination/gym/status","POST /coordination/agent/requests","POST /coordination/agent/thread","POST /coordination/technics/partners/discover","POST /coordination/technics/purge","X-MATURITY /api/coordination/claim","GET /scaling/status","GET /scaling/metrics_now","GET /api/agent-hands/bank","GET /api/agent-hands/bank/account","POST /api/agent-hands/bank/account","POST /api/agent-hands/bank/orders","GET /api/agent-hands/bank/orders/{oid}","GET /api/agent-hands/bank/provider/orders/{oid}","POST /api/agent-hands/bank/orders/{oid}/accept","POST /api/agent-hands/bank/provider/orders/{oid}/accept","POST /api/agent-hands/bank/provider/orders/{oid}/report","POST /api/agent-hands/bank/orders/{oid}/confirm","GET /api/agent-hands/bank/join","GET /api/agent-hands/bank/onboard/{token}","POST /api/cc/human/say","GET /api/cc/human/ui.js","GET /api/cc/human/ui","GET /api/cc/human/health","GET /api/cc/human/form","POST /api/cc/human/form","X-MATURITY /api/coordination/grammar/","X-MATURITY /api/coordination/grammar","X-MATURITY /api/coordination/grammar/validate","X-MATURITY /api/coordination/grammar/route","X-MATURITY /api/coordination/grammar/contract/{oid}","X-MATURITY /api/coordination/grammar/vehicle/{kenteken}","X-MATURITY /api/coordination/grammar/fleet/watch","GET /api/demand/leads","POST /api/demand/leads/{lead_id}/reject","GET /api/calculator/cart/_stats","POST /api/calculator/cart/{cart_id}/refine","GET /api/calculator/cart/{cart_id}","GET /api/calculator/cart/{cart_id}/checkout","GET /{lang}/calculator/cart/{cart_id}","GET /api/calculator/recipes","GET /api/calculator/recipes/{recipe_id}","POST /api/calculator/bom","GET /api/calculator/bom/{bom_id}","POST /api/calculator/bom/{bom_id}/to_cart","POST /api/calculator/store/search","GET /api/calculator/store/tiers/{category}","GET /api/calculator/products","GET /api/calculator/stores","POST /api/calculator/cart/modes/{mode}"],"reference_tier_unclassified_count":797,"excluded_by_own_description":["POST /coordination/gym/run-batch","POST /api/demand/leads/{lead_id}/contact","POST /api/channels/notify-task","POST /federation/price_audit/{audit_id}/confirm","GET /bridge/say","GET /api/dynamics/baselines","GET /cabinet/revenue","GET /api/inbound/unprocessed"],"description_markers":["internal endpoint","internal only","internal:","admin only","admin-only","founder-only","founder only","steward","shell","system control","system-control","not public","private endpoint"],"canon_epoch":"2026-09-21T05:48:09.997137+00:00","anonymous_non_idempotent_writes":["POST /coordination/route","POST /coordination/agent/requests","POST /coordination/needs/parse","POST /coordination/program","POST /coordination/agent/thread","POST /coordination/claim","POST /api/coordination/claim","POST /api/agent-hands/order","POST /api/agent-hands/order/{oid}/fund","POST /api/agent-hands/case/{oid}/decide","POST /api/agent-hands/case/{oid}/recover","POST /api/agent-hands/join/preview","POST /api/agent-hands/join","POST /api/agent-hands/invite/{code}/register","POST /api/agent-hands/job/{oid}/offer","POST /api/agent-hands/order/{oid}/accept","POST /api/agent-hands/order/{oid}/report","POST /api/agent-hands/order/{oid}/confirm","POST /api/agent-hands/public/errand","POST /api/agent-hands/provider-consent","POST /api/agent-hands/bank/account","POST /api/agent-hands/bank/orders","POST /api/agent-hands/bank/orders/{oid}/accept","POST /api/agent-hands/bank/provider/orders/{oid}/accept","POST /api/agent-hands/bank/provider/orders/{oid}/report","POST /api/agent-hands/bank/orders/{oid}/confirm","POST /api/cc/go/{token}/enter","POST /api/cc/c","POST /api/cc/case/{ref}/claim","POST /api/cc/case/{ref}/upload","POST /api/cc/case/{ref}/payment","POST /api/cc/case/{ref}/complete","POST /api/cc/case/{ref}/outcome","POST /api/cc/case/{ref}/share","POST /api/cc/case","POST /api/cc/human/say","POST /api/cc/human/form","POST /api/coordination/grammar/validate","POST /api/coordination/grammar/route","POST /api/coordination/grammar/fleet/watch","POST /capabilities/classify","POST /capabilities/dispatch","POST /api/demand/leads/{lead_id}/reject","POST /capabilities/dispatch/benchmark","POST /api/calculator/cart/{cart_id}/refine","POST /api/calculator/bom","POST /api/calculator/bom/{bom_id}/to_cart","POST /api/calculator/store/search","POST /api/calculator/cart/modes/{mode}","POST /api/calculator/bom/{bom_id}/save_to_cabinet","POST /api/calculator/bom/{bom_id}/create_task","POST /api/calculator/material-plan","POST /api/calculator/transport-estimate","POST /api/calculator/material-plan/{list_id}/revise","POST /api/account/shopping-lists/{list_id}/duplicate","POST /api/calculator/feedback","POST /api/tenders/subscribe","POST /kans/{token}/antwoord","POST /kans/{token}/offerte","POST /kans/{token}/hulp","POST /kans/{token}/radar","POST /kans/welkom/{token}/antwoord","POST /api/shop/order","POST /api/relay/{token}/submit","POST /api/chrome-bridge/summary","POST /relay/{slug}/report","POST /api/brak/checkout","POST /api/tools/request","POST /api/funderingen/intake","POST /api/ua-zzp/intake","POST /api/assist","POST /api/calculator/products/match","POST /api/calculator/cart/build","POST /api/calculator/affiliate/click","POST /api/calculator/create-task-from-estimate","POST /api/calculator/done-for-you-offer","POST /api/calculator/offer/{offer_id}/confirm","POST /api/calculator/request-pro","POST /api/manufacturer/claim","POST /api/calculator/bom/{bom_id}/order-intent","POST /api/v1/calculate","POST /api/v1/orders","POST /api/calculator/track","POST /api/calculator/bom/{bom_id}/to_task","POST /exit","POST /api/scale/passport/issue","POST /api/scale/passport/verify","POST /api/scale/permission/attest","POST /api/scale/value/translate","POST /api/reality/receipt","POST /api/reality/receipt/{receipt_id}/revoke","POST /api/reality/oracle/kvk","POST /api/attest","POST /api/news/{slug}/comments","POST /api/news/{slug}/subscribe","POST /api/news/{slug}/unsubscribe","POST /api/outreach/drafts/{draft_id}/send","POST /api/outreach/drafts/{draft_id}/reject","POST /api/outreach/drafts/{draft_id}/edit","POST /api/astranl-identity/ack","POST /api/coordination/intent","POST /api/intake/step","POST /api/robots/{rid}/acquire","POST /api/robots/acquire/{req_id}/confirm","POST /api/jobs/estimate","POST /api/user/delete","POST /agent-onboarding/provider/preflight","POST /agent-onboarding/provider/register","POST /agent-onboarding/provider/kvk-verify","POST /api/robots/operators/register","POST /api/robots/operators/units","POST /api/forum/threads/{thread_id}/reaction","POST /api/forum/report","POST /api/forum/threads","POST /api/forum/threads/{thread_id}/reply","POST /api/forum/vote","POST /api/work/classify","POST /api/work/tasks/{task_id}/classify","POST /api/order/intent","POST /api/order/intent/{intent_id}/request-authorization","POST /api/order/intent/{intent_id}/authorize","POST /api/order/intent/{intent_id}/prepare-handoff","POST /api/order/intent/{intent_id}/mark-placed","POST /api/order/intent/{intent_id}/send-to-client","POST /api/order/intent/{intent_id}/cancel","POST /api/housing/need","POST /auth/signout","POST /auth/callback/telegram","POST /auth/email/start","POST /api/channels/subscribe","POST /api/channels/dispatch","POST /api/enterprise/onboard","POST /api/enterprise/{slug}/import","POST /api/enterprise/{slug}/dispatch","POST /api/chat/messages","POST /api/thread/create","POST /api/thread/for-task","POST /api/thread/{thread_id}/participant","POST /api/thread/{thread_id}/send","POST /api/thread/{thread_id}/attach","POST /api/vraagbaak/transcribe","POST /api/vraagbaak/ask","POST /federation/handshake","POST /federation/match","POST /federation/price_audit","POST /federation/hall/announce","POST /federation/hall/match","POST /federation/hall/match/{match_id}/accept","POST /federation/hall/auto-match","POST /federation/hall/match/{match_id}/message","POST /federation/hall/match/{match_id}/close","POST /federation/hall/match/{match_id}/envelope","POST /federation/agent/mandate","POST /federation/hall/match/{match_id}/negotiate","POST /federation/hall/match/{match_id}/artifact","POST /federation/hall/message/{message_id}/ack","POST /federation/agent/callback","POST /a2a/v1","POST /aweri/demand","POST /aweri/reality/seal","POST /aweri/watch","POST /api/attestations","POST /federation/peers/dashboard","POST /api/elicit","POST /api/elicit/{rid}/answer","POST /api/insights/{product_id}/checkout","POST /api/amh/register","POST /api/amh/mandate","POST /api/amh/verify","POST /api/amh/seal","POST /api/port/{slug}/offer","POST /api/port/{slug}/accept","POST /api/port/claim","POST /api/providers/voice-parse","POST /api/robots/claim","POST /api/robots/suggest","POST /api/calculator/materials","POST /api/calculator/parts-basket","POST /api/shortage/report","POST /api/calculator/plan","POST /api/calculator/estimate","POST /api/calculator/compare","POST /api/radio/chat","POST /api/radio/vote","POST /api/agents/robot-task-linker","POST /api/agents/news-generator","POST /api/agents/radio-signal-generator","POST /api/news/ingest","POST /api/news/pipeline/run","POST /api/provider/analyze-task","POST /api/kernel/check","POST /api/kernel/payment-cleanup","POST /api/tasks","POST /api/provider/profile","POST /api/outreach/run","POST /api/acquisition/generate","POST /api/devices/submit","POST /api/devices/acquire","POST /api/seo/generate","POST /api/seo/track","POST /api/content/generate","POST /api/referral/create","POST /api/agents/register","POST /api/agents/estimate","POST /coordinate","POST /api/eligibility-check","POST /api/cycle-outcome","POST /api/mind/ask","POST /api/v1/agent/discover","POST /api/partners/bridge/ingest","POST /api/partners/apply","POST /api/assistant/ask","POST /api/partners/order-exception","POST /api/delegation/create","POST /api/delegation/{task_id}/claim","POST /api/delegation/{task_id}/complete","POST /mcp/v1/quickstart","POST /api/task/{task_id}/chat","POST /api/task/{task_id}/team","POST /api/task/{task_id}/contact","POST /api/task/{task_id}/robot","POST /api/passkey/register/begin","POST /api/passkey/register/finish","POST /api/passkey/login/begin","POST /api/passkey/login/finish","POST /api/identity/register","POST /api/trust/{identity_id}/recalculate","POST /api/graph/edge","POST /api/agent/coordinate","POST /api/suggestions/{suggestion_id}/action","POST /api/metrics/speed/{task_id}/record_offer","POST /api/provider/register","POST /api/providers/{provider_id}/sessions","POST /task","POST /api/task/create","POST /api/task/{task_id}/confirm","POST /api/task/{task_id}/cancel","POST /tasks","POST /api/external/task","POST /api/public/offers","POST /api/offers","POST /api/public/agent/register","POST /api/costs/record","POST /api/qa/create","POST /api/qa/{qa_id}/submit","POST /api/customers/event","POST /api/capture/telegram","POST /api/capture/webhook","POST /api/capture/email","POST /api/pricing/mark-converted/{estimate_id}","POST /api/referral/use","POST /api/liquidity/run","POST /market/tasks","POST /market/tasks/{task_id}/reserve","POST /market/tasks/{task_id}/intake","POST /market/tasks/{task_id}/dispatch","POST /chat/v2","POST /chat","POST /notifications/{nid}/read","POST /notifications/read","POST /tasks/{task_id}/complete","POST /tasks/{task_id}/quick-pay","DELETE /tasks/{task_id}","POST /tasks/{task_id}/offers","POST /tasks/{task_id}/offers/{offer_id}/accept","POST /tasks/{task_id}/offers/{offer_id}/reject","POST /tasks/{task_id}/payment/test","POST /tasks/{task_id}/discussion","POST /tasks/{task_id}/publish","POST /tasks/{task_id}/agents/suggest-offer","POST /tasks/{task_id}/agents/analyze","POST /tasks/{task_id}/agents/{agent_type}","POST /tasks/{task_id}/agent-log/{action_id}/approve","POST /tasks/{task_id}/agent-log/{action_id}/reject","POST /tasks/{task_id}/rate","POST /tasks/{task_id}/execution/update","POST /tasks/{task_id}/complete-request","POST /tasks/{task_id}/complete-confirm","POST /provider/verify","POST /market/post","POST /market/post/{post_id}/reply","POST /api/assistant","POST /task-create","POST /api/chat","POST /api/providers/register","POST /api/business/coordination-request","POST /api/task/{task_id}/edit","POST /api/observe","POST /api/feedback","POST /webhooks/brevo/inbound","POST /api/providers/{provider_id}/boost","POST /api/inbound","POST /api/inbound/email/webhook","POST /api/claim","POST /api/feed/capacity","POST /api/coordination/case/{case_id}/subscribe","POST /a2a/","POST /a2a","POST /api/rails/vote","POST /api/pijn/seed","POST /api/ai/search","POST /api/coordination/case","POST /api/pijn"],"anonymous_non_idempotent_note":"kept in the public tier and documented truthfully as anonymous + not idempotent (Article 91 action_status guards replays at runtime); this list is the idempotency-metadata debt the organism must retire operation by operation","tiers":{"public_importable_small":"/agent-hands/openapi.json","public_reference":"/openapi.json","partner":"/openapi-partner.json (credential)","full":"/openapi-full.json (admin credential)"},"runtime_note":"documentation safety is not runtime safety; runtime auth boundaries are probed separately by organism/auto_guards/truth_contradiction_crawler.py and published at /data/truth_contradictions.json"}