{
  "ok": true,
  "service": "mmir-api-control-plane",
  "version": "2026-06-06-route-receipts-v1",
  "scoring_policy_version": "2026-07-17-final-answer-authority-v18",
  "status": "bootstrap-free-route",
  "identity": "orchestration layer for trusted AI",
  "mode": "control-plane-bootstrap",
  "no_paid_routes_started": true,
  "trusted_frontend_origin_policy": {
    "version": "2026-06-07-worker-trusted-frontends-v1",
    "allowed_origins": [
      "https://mmir.ai",
      "https://www.mmir.ai",
      "https://staging.mmir.ai",
      "https://mmir-web-production-preview.halvord-vinger.workers.dev",
      "https://inkognitroz.github.io",
      "http://localhost:3000",
      "http://127.0.0.1:3000",
      "http://localhost:3001",
      "http://127.0.0.1:3001",
      "http://localhost:4173",
      "http://127.0.0.1:4173",
      "http://localhost:5173",
      "http://127.0.0.1:5173"
    ],
    "allowed_methods": [
      "GET",
      "POST",
      "OPTIONS"
    ],
    "allowed_headers": [
      "authorization",
      "content-type",
      "x-mmir-session-token",
      "x-mmir-node-token",
      "x-mmir-local-token",
      "x-mmir-owner-command-code",
      "x-request-id"
    ],
    "credentials": false,
    "wildcard_allowed": false,
    "no_paid_routes_started": true
  },
  "routes": [
    "/",
    "/health",
    "/status",
    "/control-plane/intelligence/status",
    "/models",
    "/v1/models",
    "/control-plane/model/visibility",
    "/control-plane/demo/readiness",
    "/nodes",
    "/chat",
    "/api/chat",
    "/chat/completions",
    "/v1/chat/completions",
    "/chat/compare",
    "/chat/discussions",
    "/nodes/register",
    "/nodes/:id/heartbeat",
    "/scheduler/candidates",
    "/routing/decision",
    "/routing/score",
    "/tools/no-key/preview",
    "/scaling/plan",
    "/connectors/catalog",
    "/identity/me",
    "/identity/orgs",
    "/identity/sessions",
    "/identity/invites",
    "/prompts",
    "/prompts/presets",
    "/prompts/save/plan",
    "/assistants",
    "/datasets",
    "/registry/models",
    "/training/jobs",
    "/memory/search",
    "/knowledge/search",
    "/node/identity",
    "/doctor",
    "/hardware",
    "/tunnels/status",
    "/control-plane/node/register-plan",
    "/control-plane/tunnel/plan",
    "/control-plane/provider/plan",
    "/control-plane/provider/probe",
    "/control-plane/owner/suggestions/plan",
    "/control-plane/owner/feedback/inbox",
    "/control-plane/owner/demo-learning/inbox",
    "/control-plane/owner/capability/outcomes",
    "/capability/outcomes/plan",
    "/feedback/intake",
    "/feedback/inbox/plan",
    "/telemetry/events",
    "/telemetry/demo-transcript",
    "/web/search/plan",
    "/web/url-fetch/plan"
  ],
  "capabilities": [
    "health",
    "status",
    "intelligence.status",
    "models.bootstrap",
    "models.visibility",
    "demo.readiness",
    "openai.v1.models",
    "chat.bootstrap",
    "openai.v1.chat.completions",
    "chat.completions.stream",
    "chat.compare.bootstrap",
    "chat.discussions.bootstrap",
    "web.search.plan",
    "web.url_fetch.plan",
    "prompts.presets",
    "prompts.save.plan",
    "owner.suggestions.plan",
    "feedback.intake.plan",
    "feedback.inbox.plan",
    "feedback.owner_inbox",
    "feedback.demo_learning_inbox",
    "capability.outcomes.rollup",
    "telemetry.events.metadata_only",
    "telemetry.demo_transcript.demo_only",
    "nodes.public-free",
    "routing.free-first",
    "routing.score",
    "tools.no_key.preview",
    "scheduler.free-candidates",
    "nodes.fail-closed",
    "scaling.fail-closed"
  ],
  "repo_contract_surfaces": [
    {
      "route": "/intelligence/swarm/plan",
      "capability": "intelligence.swarm.plan",
      "runtime_registered": false,
      "repo_contract_implemented": true,
      "implementation_surface": "cloudflare-worker"
    },
    {
      "route": "/chat/swarm/preview",
      "capability": "chat.swarm.preview",
      "runtime_registered": false,
      "repo_contract_implemented": true,
      "implementation_surface": "cloudflare-worker"
    },
    {
      "route": "/feedback/intake",
      "capability": "feedback.intake",
      "runtime_registered": true,
      "repo_contract_implemented": true,
      "implementation_surface": "gateway-runtime"
    },
    {
      "route": "/control-plane/owner/feedback/inbox",
      "capability": "feedback.owner_inbox",
      "runtime_registered": true,
      "repo_contract_implemented": true,
      "implementation_surface": "gateway-runtime"
    },
    {
      "route": "/control-plane/owner/demo-learning/inbox",
      "capability": "feedback.demo_learning_inbox",
      "runtime_registered": true,
      "repo_contract_implemented": true,
      "implementation_surface": "gateway-runtime"
    }
  ],
  "limits": {
    "max_json_body_bytes": 65536,
    "provider_calls_enabled": false,
    "paid_routes_enabled": false,
    "streaming": "sse-free-route-v1"
  },
  "chat_memory": {
    "canonical_answer_contract_live": true,
    "request_history_memory": {
      "ready": true,
      "default_enabled": true,
      "storage": "none",
      "source": "OpenAI-style messages[] supplied in the current request",
      "supported_routes": [
        "/v1/chat/completions",
        "/chat/completions"
      ],
      "privacy_cost_mode": "no_server_side_conversation_storage"
    },
    "durable_session_memory": {
      "ready": false,
      "default_enabled": false,
      "writes_enabled": false,
      "reason": "Held off intentionally to avoid hidden KV/DO writes, cost drift, and raw conversation retention before explicit controls exist.",
      "blocked_until": [
        "explicit_demo_or_user_consent",
        "short_ttl_session_retention_policy",
        "kv_or_durable_object_budget_guard",
        "owner_readable_privacy_and_delete_policy",
        "redaction_policy_for_raw_prompt_storage"
      ]
    },
    "stateless_client_requirement": "Send prior turns in messages[] until durable session memory is explicitly enabled.",
    "cost_guard": {
      "github_actions_required": false,
      "kv_write_required_for_request_history": false,
      "paid_infrastructure_required": false,
      "no_paid_routes_started": true
    },
    "recommended_next_action": "Enable consent-gated short-TTL server session memory only after privacy and budget guards are live."
  },
  "answer_pipeline": {
    "object": "mmir.answer_pipeline.status",
    "canonical_gateway_path_live": true,
    "scoring_policy_version": "2026-07-17-final-answer-authority-v18",
    "reference_node": "inkognitroz/mmir-answer",
    "supported_routes": [
      "/v1/chat/completions",
      "/chat/completions"
    ],
    "stages": [
      "request_history_memory",
      "persona_no_internal_plumbing",
      "bootstrap_stub_rejection",
      "capability_grounding_live_data_or_tools_when_relevant",
      "connected_swarm_or_route_selection",
      "best_answer_scoring",
      "ensemble_synthesis_for_strategy_explanation_and_ux",
      "norwegian_quality_polish",
      "signed_route_receipt"
    ],
    "frontend_role": "thin_client_send_messages_and_render_answer",
    "durable_session_memory_required_now": false,
    "no_paid_routes_started": true,
    "github_actions_required": false,
    "kv_write_required": false,
    "recommended_next_action": "Keep gateway answer quality guarded by live probes; add durable session memory only after consent, TTL, privacy and KV budget guards."
  },
  "autonomous_cost_guard": {
    "object": "mmir.autonomous_cost_guard.status",
    "revenue_before_infra_required": true,
    "free_first_policy": true,
    "owner_action_required_now": false,
    "github_actions_dependency_required_for_deploy": false,
    "direct_wrangler_deploy_fallback_ready": true,
    "recommended_when_actions_exhausted": [
      "run focused tests locally",
      "use wrangler deploy directly only after local green checks",
      "commit with [skip ci] when CI minutes are constrained",
      "avoid broad scheduled audits and workflow_dispatch loops until quota resets"
    ],
    "kv_free_tier_guard": {
      "enabled": true,
      "avoid_unbounded_writes": true,
      "durable_feedback_storage_requires_budget_guard": true
    },
    "paid_infra_policy": "blocked_until_revenue_or_explicit_owner_budget",
    "safe_autonomous_loop": [
      "local evidence",
      "small reversible patch",
      "direct deploy when needed",
      "live smoke",
      "issue handoff with proof"
    ],
    "recommended_next_action": "Use existing free/BYOK/cloud-node capacity and connection-lift probes before adding paid infrastructure."
  },
  "operator_readiness": {
    "readiness_state": "compare_ready",
    "repo_contract_surface_count": 2,
    "blocked_surface_count": 2,
    "surface_handoffs": [
      {
        "route": "/intelligence/swarm/plan",
        "capability": "intelligence.swarm.plan",
        "status": "handoff_required",
        "current_surface": "gateway-runtime",
        "target_surface": "cloudflare-worker",
        "repo_contract_implemented": true,
        "reason": "repo_contract_runtime_gap"
      },
      {
        "route": "/chat/swarm/preview",
        "capability": "chat.swarm.preview",
        "status": "handoff_required",
        "current_surface": "gateway-runtime",
        "target_surface": "cloudflare-worker",
        "repo_contract_implemented": true,
        "reason": "repo_contract_runtime_gap"
      }
    ],
    "repo_contract_surfaces": [
      {
        "route": "/intelligence/swarm/plan",
        "capability": "intelligence.swarm.plan",
        "runtime_registered": false,
        "repo_contract_implemented": true,
        "implementation_surface": "cloudflare-worker"
      },
      {
        "route": "/chat/swarm/preview",
        "capability": "chat.swarm.preview",
        "runtime_registered": false,
        "repo_contract_implemented": true,
        "implementation_surface": "cloudflare-worker"
      }
    ],
    "blocked_surfaces": [
      {
        "route": "/intelligence/swarm/plan",
        "capability": "intelligence.swarm.plan",
        "status": "not_ready",
        "reason": "Swarm planning is not registered in this gateway runtime; use the Cloudflare worker deployment for the repo-backed contract surface.",
        "blocking_journeys": [
          "swarm_plan"
        ],
        "runtime_registered": false,
        "repo_contract_implemented": true,
        "implementation_surface": "cloudflare-worker"
      },
      {
        "route": "/chat/swarm/preview",
        "capability": "chat.swarm.preview",
        "status": "not_ready",
        "reason": "Swarm preview is not registered in this gateway runtime; use the Cloudflare worker deployment for the repo-backed contract surface.",
        "blocking_journeys": [
          "swarm_preview"
        ],
        "runtime_registered": false,
        "repo_contract_implemented": true,
        "implementation_surface": "cloudflare-worker"
      }
    ],
    "signed_receipts_ready": true,
    "durable_feedback_ready": true,
    "owner_feedback_auth_configured": true,
    "owner_feedback_inbox_ready": true,
    "owner_demo_learning_inbox_ready": true,
    "journeys": {
      "first_chat_ready": true,
      "compare_ready": true,
      "no_key_tool_preview_ready": true,
      "swarm_plan_ready": false,
      "swarm_preview_ready": false,
      "feedback_capture_ready": true,
      "owner_feedback_inbox_ready": true,
      "owner_demo_learning_inbox_ready": true
    },
    "journey_surfaces": {
      "first_chat": {
        "route": "/v1/chat/completions",
        "ready": true,
        "runtime_registered": true,
        "repo_contract_implemented": false,
        "implementation_surface": "gateway-runtime"
      },
      "compare": {
        "route": "/chat/compare",
        "ready": true,
        "runtime_registered": true,
        "repo_contract_implemented": false,
        "implementation_surface": "gateway-runtime"
      },
      "no_key_tool_preview": {
        "route": "/tools/no-key/preview",
        "ready": true,
        "runtime_registered": true,
        "repo_contract_implemented": false,
        "implementation_surface": "gateway-runtime",
        "system_context_handoff_route": "/chat/swarm/preview",
        "trusted_grounding_only": true
      },
      "swarm_plan": {
        "route": "/intelligence/swarm/plan",
        "ready": false,
        "runtime_registered": false,
        "repo_contract_implemented": true,
        "implementation_surface": "cloudflare-worker"
      },
      "swarm_preview": {
        "route": "/chat/swarm/preview",
        "ready": false,
        "runtime_registered": false,
        "repo_contract_implemented": true,
        "implementation_surface": "cloudflare-worker"
      },
      "feedback_capture": {
        "route": "/feedback/intake",
        "ready": true,
        "runtime_registered": true,
        "repo_contract_implemented": true,
        "implementation_surface": "gateway-runtime",
        "intake_configured": true,
        "durable_feedback_ready": true
      },
      "owner_feedback_inbox": {
        "route": "/control-plane/owner/feedback/inbox",
        "ready": true,
        "runtime_registered": true,
        "repo_contract_implemented": true,
        "implementation_surface": "gateway-runtime",
        "durable_feedback_ready": true,
        "owner_auth_configured": true
      },
      "owner_demo_learning_inbox": {
        "route": "/control-plane/owner/demo-learning/inbox",
        "ready": true,
        "runtime_registered": true,
        "repo_contract_implemented": true,
        "implementation_surface": "gateway-runtime",
        "durable_feedback_ready": true,
        "owner_auth_configured": true
      }
    },
    "operator_controls": {
      "route_receipt_authority": {
        "ready": true,
        "keyed": true,
        "signature_algorithm": "hmac-sha256-canonical-json-v1",
        "signature_key_id": "mmir-live-route-receipt-key-v2",
        "previous_key_count": 1,
        "required_for_journeys": [
          "first_chat",
          "compare",
          "swarm_preview"
        ]
      },
      "feedback_store": {
        "ready": true,
        "durable_binding_configured": true,
        "writable": true,
        "readable": true,
        "read_only_digest": {
          "ready": true,
          "command": "npm run feedback:digest:live -- --limit 5 --json",
          "intended_for": [
            "codex",
            "claude",
            "operator_backlog_triage"
          ],
          "owner_code_required": false,
          "local_wrangler_auth_required": true,
          "raw_demo_messages_included": false,
          "provider_secrets_included": false,
          "kv_write_operations": 0,
          "max_default_kv_read_operations": 6,
          "github_issue_rail": {
            "ready": true,
            "command": "npm run feedback:promote:live",
            "intended_for": [
              "codex",
              "claude",
              "operator_backlog_triage"
            ],
            "explicit_write_flag_required": true,
            "comment_existing_issue_enabled": true,
            "comment_dedupe_policy": "fingerprinted_feedback_digest_marker",
            "dedupe_policy": "open_issue_exact_title",
            "owner_code_required": false,
            "local_wrangler_auth_required": true,
            "local_gh_auth_required": true,
            "raw_demo_messages_included": false,
            "provider_secrets_included": false,
            "github_actions_required": false,
            "kv_write_operations": 0,
            "max_kv_read_operations": 9
          }
        }
      },
      "owner_feedback_auth": {
        "ready": true,
        "owner_auth_configured": true,
        "required_header": "x-mmir-owner-command-code"
      }
    },
    "recommended_demo_path": {
      "object": "mmir.recommended_demo_path",
      "status": "ready",
      "safe_primary_journey": "compare",
      "can_demo_now": true,
      "steps": [
        {
          "id": "first_chat",
          "title": "Run first chat with Supergeni",
          "route": "/v1/chat/completions",
          "surface": "gateway-runtime",
          "proof_request": {
            "object": "mmir.demo_step.proof_request",
            "safe_to_run_in_demo": true,
            "local_contract_check": {
              "command": "node --test test/api.test.js",
              "network_required": false,
              "github_actions_required": false
            },
            "method": "POST",
            "route": "/v1/chat/completions",
            "body_template": {
              "model": "supergeni",
              "messages": [
                {
                  "role": "user",
                  "content": "Svar kort paa norsk: Hva er MMIR?"
                }
              ],
              "max_tokens": 120
            },
            "expect": {
              "status": 200,
              "no_paid_routes_started": true,
              "provider_secrets_in_browser": false,
              "object": "chat.completion"
            }
          }
        },
        {
          "id": "compare",
          "title": "Show best-answer compare",
          "route": "/chat/compare",
          "surface": "gateway-runtime",
          "proof_request": {
            "object": "mmir.demo_step.proof_request",
            "safe_to_run_in_demo": true,
            "local_contract_check": {
              "command": "node --test test/api.test.js",
              "network_required": false,
              "github_actions_required": false
            },
            "method": "POST",
            "route": "/chat/compare",
            "body_template": {
              "model": "mmir-supergenius",
              "models": [
                "mmir-supergenius",
                "gemma3:270m"
              ],
              "messages": [
                {
                  "role": "user",
                  "content": "Sammenlign rutene kort og velg beste svar."
                }
              ]
            },
            "expect": {
              "status": 200,
              "no_paid_routes_started": true,
              "provider_secrets_in_browser": false,
              "object": "chat.compare"
            }
          }
        },
        {
          "id": "no_key_tool_preview",
          "title": "Preview no-key grounding handoff",
          "route": "/tools/no-key/preview",
          "surface": "gateway-runtime",
          "proof_request": {
            "object": "mmir.demo_step.proof_request",
            "safe_to_run_in_demo": true,
            "local_contract_check": {
              "command": "node --test test/api.test.js",
              "network_required": false,
              "github_actions_required": false
            },
            "method": "POST",
            "route": "/tools/no-key/preview",
            "body_template": {
              "tool": "calculator",
              "expression": "19*37"
            },
            "expect": {
              "status": 200,
              "no_paid_routes_started": true,
              "provider_secrets_in_browser": false,
              "object": "mmir.no_key_tool.preview",
              "result_text": "703"
            }
          }
        },
        {
          "id": "feedback_capture",
          "title": "Capture demo feedback",
          "route": "/feedback/intake",
          "surface": "gateway-runtime",
          "proof_request": {
            "object": "mmir.demo_step.proof_request",
            "safe_to_run_in_demo": true,
            "local_contract_check": {
              "command": "node --test test/api.test.js",
              "network_required": false,
              "github_actions_required": false
            },
            "method": "POST",
            "route": "/feedback/intake",
            "body_template": {
              "command": "@inkognitroz demo proof: feedback capture works",
              "source": "demo-readiness-proof",
              "explicit_demo_feedback": true
            },
            "expect": {
              "status": 200,
              "no_paid_routes_started": true,
              "provider_secrets_in_browser": false,
              "object": "owner.suggestion.plan",
              "intake_kind": "public_feedback",
              "raw_prompt_stored_by_mmir": false
            }
          }
        },
        {
          "id": "owner_feedback_inbox",
          "title": "Review owner feedback inbox",
          "route": "/control-plane/owner/feedback/inbox",
          "surface": "gateway-runtime",
          "proof_request": {
            "object": "mmir.demo_step.proof_request",
            "safe_to_run_in_demo": true,
            "local_contract_check": {
              "command": "node --test test/api.test.js",
              "network_required": false,
              "github_actions_required": false
            },
            "method": "GET",
            "route": "/control-plane/owner/feedback/inbox",
            "owner_authorization": {
              "required": true,
              "header": "x-mmir-owner-command-code",
              "value_placeholder": "<owner-code>"
            },
            "expect": {
              "status": 200,
              "no_paid_routes_started": true,
              "provider_secrets_in_browser": false,
              "object": "owner.feedback.inbox",
              "owner_authorized": true
            }
          }
        },
        {
          "id": "owner_demo_learning_inbox",
          "title": "Review demo-learning inbox",
          "route": "/control-plane/owner/demo-learning/inbox",
          "surface": "gateway-runtime",
          "proof_request": {
            "object": "mmir.demo_step.proof_request",
            "safe_to_run_in_demo": true,
            "local_contract_check": {
              "command": "node --test test/api.test.js",
              "network_required": false,
              "github_actions_required": false
            },
            "method": "GET",
            "route": "/control-plane/owner/demo-learning/inbox",
            "owner_authorization": {
              "required": true,
              "header": "x-mmir-owner-command-code",
              "value_placeholder": "<owner-code>"
            },
            "expect": {
              "status": 200,
              "no_paid_routes_started": true,
              "provider_secrets_in_browser": false,
              "object": "owner.demo_learning.inbox",
              "owner_authorized": true
            }
          }
        }
      ],
      "next_blocked_action": {
        "id": "handoff:intelligence.swarm.plan",
        "title": "Probe intelligence.swarm.plan on cloudflare-worker",
        "action": "probe_repo_contract_surface",
        "route": "/intelligence/swarm/plan",
        "target_surface": "cloudflare-worker",
        "unblocks_journeys": [
          "swarm_plan"
        ],
        "proof_request": {
          "object": "mmir.next_blocked_action.proof_request",
          "action": "probe_repo_contract_surface",
          "route": "/intelligence/swarm/plan",
          "local_contract_check": {
            "command": "node --test test/api.test.js",
            "network_required": false,
            "github_actions_required": false
          },
          "no_paid_routes_started": true,
          "provider_secrets_in_browser": false,
          "live_probe": {
            "method": "GET",
            "route": "/intelligence/swarm/plan",
            "target_surface": "cloudflare-worker",
            "owner_authorization_required": false
          }
        }
      },
      "no_paid_routes_started": true
    },
    "proof_runbook": {
      "object": "mmir.demo_proof_runbook",
      "status": "ready",
      "primary_local_check": "node --test test/api.test.js",
      "github_actions_required": false,
      "network_required_for_local_contract": false,
      "no_paid_routes_started": true,
      "provider_secrets_in_browser": false,
      "offline_proof_step_ids": [
        "first_chat",
        "compare",
        "no_key_tool_preview",
        "feedback_capture",
        "owner_feedback_inbox",
        "owner_demo_learning_inbox"
      ],
      "offline_proof_count": 6,
      "blocked_control_count": 2,
      "blocked_controls": [
        {
          "id": "handoff:intelligence.swarm.plan",
          "title": "Probe intelligence.swarm.plan on cloudflare-worker",
          "action": "probe_repo_contract_surface",
          "route": "/intelligence/swarm/plan",
          "target_surface": "cloudflare-worker",
          "depends_on": [],
          "unblocks_journeys": [
            "swarm_plan"
          ]
        },
        {
          "id": "handoff:chat.swarm.preview",
          "title": "Probe chat.swarm.preview on cloudflare-worker",
          "action": "probe_repo_contract_surface",
          "route": "/chat/swarm/preview",
          "target_surface": "cloudflare-worker",
          "depends_on": [],
          "unblocks_journeys": [
            "swarm_preview"
          ]
        }
      ]
    },
    "offline_verification": {
      "object": "mmir.demo_readiness.offline_verification",
      "ready_to_run": true,
      "network_required": false,
      "github_actions_required": false,
      "provider_calls_required": false,
      "kv_writes_required": false,
      "no_paid_routes_started": true,
      "readiness_state": "compare_ready",
      "proof_step_ids": [
        "first_chat",
        "compare",
        "no_key_tool_preview",
        "feedback_capture",
        "owner_feedback_inbox",
        "owner_demo_learning_inbox"
      ],
      "commands": [
        {
          "id": "focused_demo_contract",
          "command": "node --test test/api.test.js",
          "purpose": "Verify status/readiness proof requests and first demo rails quickly.",
          "network_required": false,
          "github_actions_required": false
        },
        {
          "id": "full_gateway_check",
          "command": "npm run check",
          "purpose": "Run the full local gateway lint and test suite before commit or deploy.",
          "network_required": false,
          "github_actions_required": false
        }
      ],
      "hourly_safe_commands": [
        {
          "id": "focused_demo_contract",
          "command": "node --test test/api.test.js",
          "purpose": "Verify status/readiness proof requests and first demo rails quickly.",
          "network_required": false,
          "github_actions_required": false,
          "provider_calls_required": false,
          "kv_writes_required": false,
          "owner_secret_required": false,
          "github_issue_creation_expected": false
        }
      ],
      "next_live_action_safe_for_hourly_status": true,
      "next_live_action_hourly_decision": {
        "object": "mmir.demo_readiness.hourly_live_action_decision",
        "safe": true,
        "reason": "safe_read_only_probe",
        "action_id": "handoff:intelligence.swarm.plan",
        "route": "/intelligence/swarm/plan",
        "blocked_by": []
      },
      "next_blocked_action": {
        "id": "handoff:intelligence.swarm.plan",
        "action": "probe_repo_contract_surface",
        "route": "/intelligence/swarm/plan",
        "target_surface": "cloudflare-worker",
        "unblocks_journeys": [
          "swarm_plan"
        ]
      }
    },
    "operator_cue": {
      "object": "mmir.demo_readiness.operator_cue",
      "status": "demo_ready",
      "safe_primary_journey": "compare",
      "next_local_command": {
        "id": "focused_demo_contract",
        "command": "node --test test/api.test.js",
        "network_required": false,
        "github_actions_required": false,
        "provider_calls_required": false,
        "kv_writes_required": false
      },
      "next_read_only_live_probe": {
        "id": "handoff:intelligence.swarm.plan",
        "title": "Probe intelligence.swarm.plan on cloudflare-worker",
        "action": "probe_repo_contract_surface",
        "route": "/intelligence/swarm/plan",
        "command": "curl -fsS -X GET https://api.mmir.ai/intelligence/swarm/plan",
        "read_only_probe": true,
        "provider_call_expected": false,
        "kv_write_expected": false,
        "github_issue_creation_expected": false,
        "paid_route_allowed": false
      },
      "read_only_live_probe_count": 1,
      "read_only_live_probes": [
        {
          "id": "handoff:intelligence.swarm.plan",
          "title": "Probe intelligence.swarm.plan on cloudflare-worker",
          "action": "probe_repo_contract_surface",
          "route": "/intelligence/swarm/plan",
          "command": "curl -fsS -X GET https://api.mmir.ai/intelligence/swarm/plan",
          "read_only_probe": true,
          "provider_call_expected": false,
          "kv_write_expected": false,
          "github_issue_creation_expected": false,
          "paid_route_allowed": false
        }
      ],
      "excluded_live_action_count": 1,
      "excluded_live_action_reason_counts": {
        "provider_call_expected": 1
      },
      "excluded_live_actions": [
        {
          "id": "handoff:chat.swarm.preview",
          "title": "Probe chat.swarm.preview on cloudflare-worker",
          "action": "probe_repo_contract_surface",
          "route": "/chat/swarm/preview",
          "target_surface": "cloudflare-worker",
          "offline_contract_check_id": "focused_demo_contract",
          "required_gate": "explicit_acceptance_or_demo_window",
          "reason": "provider_call_expected",
          "blocked_by": [
            "provider_call_expected"
          ]
        }
      ],
      "next_live_probe_safe_for_hourly_status": true,
      "blocked_until": null,
      "no_paid_routes_started": true,
      "provider_secrets_in_browser": false
    },
    "next_action_plan": [
      {
        "id": "handoff:intelligence.swarm.plan",
        "title": "Probe intelligence.swarm.plan on cloudflare-worker",
        "capability": "intelligence.swarm.plan",
        "route": "/intelligence/swarm/plan",
        "action": "probe_repo_contract_surface",
        "priority": "p1",
        "handoff_required": true,
        "target_surface": "cloudflare-worker",
        "depends_on": [],
        "unblocks_journeys": [
          "swarm_plan"
        ],
        "evidence_required": [
          "/intelligence/swarm/plan responds on cloudflare-worker",
          "response keeps no_paid_routes_started=true",
          "response does not expose provider secrets or raw private prompts",
          "swarm plan returns async 472-route orchestration metadata"
        ],
        "verification": {
          "command": "curl -fsS -X GET https://api.mmir.ai/intelligence/swarm/plan",
          "expected_evidence": [
            "/intelligence/swarm/plan responds on cloudflare-worker",
            "response keeps no_paid_routes_started=true",
            "response does not expose provider secrets or raw private prompts",
            "swarm plan returns async 472-route orchestration metadata"
          ],
          "live_network_required": true,
          "owner_secret_required": false,
          "provider_call_expected": false,
          "paid_route_allowed": false,
          "mutates_state": false,
          "kv_write_expected": false,
          "github_issue_creation_expected": false,
          "read_only_probe": true,
          "safe_for_hourly_autonomous_status": true
        }
      },
      {
        "id": "handoff:chat.swarm.preview",
        "title": "Probe chat.swarm.preview on cloudflare-worker",
        "capability": "chat.swarm.preview",
        "route": "/chat/swarm/preview",
        "action": "probe_repo_contract_surface",
        "priority": "p1",
        "handoff_required": true,
        "target_surface": "cloudflare-worker",
        "depends_on": [],
        "unblocks_journeys": [
          "swarm_preview"
        ],
        "evidence_required": [
          "/chat/swarm/preview responds on cloudflare-worker",
          "response keeps no_paid_routes_started=true",
          "response does not expose provider secrets or raw private prompts",
          "swarm preview returns bounded route attempts and best_answer metadata"
        ],
        "verification": {
          "command": "curl -fsS -X POST https://api.mmir.ai/chat/swarm/preview -H \"Content-Type: application/json\" -d '{\"messages\":[{\"role\":\"user\",\"content\":\"MMIR demo readiness smoke\"}],\"max_routes\":1}'",
          "expected_evidence": [
            "/chat/swarm/preview responds on cloudflare-worker",
            "response keeps no_paid_routes_started=true",
            "response does not expose provider secrets or raw private prompts",
            "swarm preview returns bounded route attempts and best_answer metadata"
          ],
          "live_network_required": true,
          "owner_secret_required": false,
          "provider_call_expected": true,
          "paid_route_allowed": false,
          "mutates_state": false,
          "kv_write_expected": false,
          "github_issue_creation_expected": false,
          "read_only_probe": false,
          "safe_for_hourly_autonomous_status": false
        }
      }
    ],
    "hourly_safe_next_action_plan": [
      {
        "id": "handoff:intelligence.swarm.plan",
        "title": "Probe intelligence.swarm.plan on cloudflare-worker",
        "capability": "intelligence.swarm.plan",
        "route": "/intelligence/swarm/plan",
        "action": "probe_repo_contract_surface",
        "priority": "p1",
        "handoff_required": true,
        "target_surface": "cloudflare-worker",
        "depends_on": [],
        "unblocks_journeys": [
          "swarm_plan"
        ],
        "evidence_required": [
          "/intelligence/swarm/plan responds on cloudflare-worker",
          "response keeps no_paid_routes_started=true",
          "response does not expose provider secrets or raw private prompts",
          "swarm plan returns async 472-route orchestration metadata"
        ],
        "verification": {
          "command": "curl -fsS -X GET https://api.mmir.ai/intelligence/swarm/plan",
          "expected_evidence": [
            "/intelligence/swarm/plan responds on cloudflare-worker",
            "response keeps no_paid_routes_started=true",
            "response does not expose provider secrets or raw private prompts",
            "swarm plan returns async 472-route orchestration metadata"
          ],
          "live_network_required": true,
          "owner_secret_required": false,
          "provider_call_expected": false,
          "paid_route_allowed": false,
          "mutates_state": false,
          "kv_write_expected": false,
          "github_issue_creation_expected": false,
          "read_only_probe": true,
          "safe_for_hourly_autonomous_status": true
        }
      }
    ],
    "hourly_safe_next_action_count": 1,
    "next_hourly_safe_action": {
      "id": "handoff:intelligence.swarm.plan",
      "title": "Probe intelligence.swarm.plan on cloudflare-worker",
      "capability": "intelligence.swarm.plan",
      "route": "/intelligence/swarm/plan",
      "action": "probe_repo_contract_surface",
      "priority": "p1",
      "handoff_required": true,
      "target_surface": "cloudflare-worker",
      "depends_on": [],
      "unblocks_journeys": [
        "swarm_plan"
      ],
      "evidence_required": [
        "/intelligence/swarm/plan responds on cloudflare-worker",
        "response keeps no_paid_routes_started=true",
        "response does not expose provider secrets or raw private prompts",
        "swarm plan returns async 472-route orchestration metadata"
      ],
      "verification": {
        "command": "curl -fsS -X GET https://api.mmir.ai/intelligence/swarm/plan",
        "expected_evidence": [
          "/intelligence/swarm/plan responds on cloudflare-worker",
          "response keeps no_paid_routes_started=true",
          "response does not expose provider secrets or raw private prompts",
          "swarm plan returns async 472-route orchestration metadata"
        ],
        "live_network_required": true,
        "owner_secret_required": false,
        "provider_call_expected": false,
        "paid_route_allowed": false,
        "mutates_state": false,
        "kv_write_expected": false,
        "github_issue_creation_expected": false,
        "read_only_probe": true,
        "safe_for_hourly_autonomous_status": true
      }
    },
    "next_actions": [
      "Probe intelligence.swarm.plan on cloudflare-worker",
      "Probe chat.swarm.preview on cloudflare-worker"
    ]
  },
  "feedback_store": {
    "durable_binding_configured": true,
    "writable": true,
    "readable": true,
    "free_tier_guard_active": true,
    "default_read_limit": 10,
    "max_read_limit": 25,
    "owner_read_cache_ms": 120000,
    "write_rate_limit_max": 60,
    "write_rate_window_ms": 60000,
    "interaction_sample_every": 50,
    "demo_transcript_session_limit_per_hour": 4,
    "demo_transcript_session_window_ms": 3600000,
    "budget_policy_version": "2026-06-24-kv-free-tier-guard-v1",
    "binding_name_candidates": [
      "MMIR_FEEDBACK_STORE",
      "MMIR_FEEDBACK_INBOX",
      "MMIR_FEEDBACK_EVENTS"
    ]
  },
  "route_receipt_authority": {
    "keyed": true,
    "signature_algorithm": "hmac-sha256-canonical-json-v1",
    "signature_key_id": "mmir-live-route-receipt-key-v2",
    "previous_key_count": 1,
    "required_before_marketplace_settlement": true
  },
  "request_id": "a1f072027b6bc235"
}