Skip to content

MCP Tools

This page renders site/src/data/mcp-tools.generated.json, which is generated from the MCP server contracts. Descriptions and readiness are not duplicated by hand.

plan_work exposes deterministic automatic classification plus an optional deterministic Profile as two distinct sources. Planned Skill intent and actual activation remain separate: activation is unverified until Runtime Capability Discovery supplies evidence. Explicit Skill Lock and scoped consent still apply. The bundled local R0 core is not a semantic model, cannot activate Skills or mutate a native Codex Goal, and grants no deployment/production authority.

Current generated profile: bundled-local-r0

This generated profile describes the prepared GA candidate, which is not included in published beta.3. Within the original twelve tools, it retains 4 always local-ready + 3 Router-owned conditional-local tools. Conditional-local does not mean 7/12 local-ready: it is available only for a validated Router-owned work graph with no Native Goal authority. Explicit Skill Lock and consent remain unchanged. A local gate is advisory and is not Skill activation, deployment, production approval, or Host evidence.

The current source adds eight opt-in Memory tools, for 20 tools total: 10 local-ready, 5 conditional-local, 2 verified-Host-required, and 3 configured-adapter-required. The two additional conditional tools are Profile transition and rollback; their prerequisites are the effective Memory policy, an exact reviewed Proposal, and a locally permitted target, not a Router-owned work graph. Memory remains default-off. Status, candidate list, and Profile preview are read-only; R1 purge requires explicit confirmation and reports unsupported scopes without claiming deletion. These source capabilities do not change the published beta.3 package.

Native Goal boundaries remain tool-specific: verified-host-scheduler for next work, verified-event-store plus activation-receipt-verifier for formal progress, and verified-evidence-store plus gate-authority for gates. Missing graphs require local creation or replay through router-owned-work-graph; corrupt graphs return a sanitized internal-error. Every unavailable or unsafe branch must fail closed.

Availability Meaning
local-ready Executable in the bundled local R0 control plane
conditional-local Per-tool conditions: Router-owned work graph, or policy-bound reviewed local Profile operation; no implicit Host authority
verified-host-required Requires verified Host authority or stores
configured-adapter-required Requires a server-configured evaluation adapter
sync_runtime_context — verified-host-required

Synchronize a verified host capability snapshot before routing or resuming work. This mutation requires verified-host authority and fails closed in the bundled local R0 runtime.

  • Risk: R1
  • Runtime requirement: verified-host
  • Required capabilities: verified-host-runtime, runtime-authority-receipt
  • Local conditions: not conditional-local
  • Fallback: Continue in bundled local R0 mode or initialize a verified host integration.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "intent": {
      "additionalProperties": false,
      "description": "Inputs to verified runtime capability discovery.",
      "properties": {
        "agent_runtime_snapshot": {
          "additionalProperties": false,
          "description": "Runtime capabilities directly observed by the active agent.",
          "properties": {
            "artifact_kind": {
              "description": "Artifact discriminator for the runtime snapshot.",
              "type": "string"
            },
            "capabilities": {
              "description": "Capabilities directly observable from the current agent runtime.",
              "items": {
                "additionalProperties": false,
                "properties": {
                  "aliases": {
                    "description": "Alternative identifiers observed for this capability.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "canonical_id": {
                    "description": "Canonical capability identifier.",
                    "type": "string"
                  },
                  "display_name": {
                    "description": "Human-readable capability name.",
                    "type": "string"
                  },
                  "exposure": {
                    "description": "How the capability is exposed to the current agent runtime.",
                    "type": "string"
                  },
                  "kind": {
                    "description": "Capability kind such as Skill, Plugin, MCP tool, or app.",
                    "type": "string"
                  }
                },
                "required": [
                  "canonical_id",
                  "kind",
                  "display_name",
                  "exposure",
                  "aliases"
                ],
                "type": "object"
              },
              "type": "array"
            },
            "runtime_revision": {
              "description": "Host-observed revision of the available runtime surface.",
              "type": "string"
            },
            "schema_id": {
              "description": "Registered schema identifier for the agent runtime snapshot.",
              "type": "string"
            },
            "schema_version": {
              "description": "Version of the registered runtime snapshot schema.",
              "type": "string"
            }
          },
          "required": [
            "schema_id",
            "schema_version",
            "artifact_kind",
            "runtime_revision",
            "capabilities"
          ],
          "type": "object"
        },
        "host_snapshot_ref": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Verified host snapshot reference, or null when unavailable."
        },
        "plugin_handshake_ref": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Verified Plugin handshake reference, or null when unavailable."
        }
      },
      "required": [
        "host_snapshot_ref",
        "plugin_handshake_ref",
        "agent_runtime_snapshot"
      ],
      "type": "object"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "intent"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "cache_used": {
      "type": "boolean"
    },
    "degraded": {
      "type": "boolean"
    },
    "drift": {
      "items": {
        "additionalProperties": {},
        "propertyNames": {
          "type": "string"
        },
        "type": "object"
      },
      "type": "array"
    },
    "provider_failures": {
      "items": {
        "additionalProperties": {},
        "propertyNames": {
          "type": "string"
        },
        "type": "object"
      },
      "type": "array"
    },
    "snapshot": {
      "additionalProperties": {},
      "propertyNames": {
        "type": "string"
      },
      "type": "object"
    }
  },
  "required": [
    "snapshot",
    "drift",
    "provider_failures",
    "cache_used",
    "degraded"
  ],
  "type": "object"
}
plan_work — local-ready

Create or replay a durable Single, Phased, or Managed Goal plan using deterministic automatic classification plus an optional deterministic Profile from user-owned configuration. The result exposes both sources and planned Skill intent; activation remains unverified until Runtime Discovery supplies evidence. Explicit Skill Lock and scoped consent still apply. This local planner is not a semantic model, does not activate Skills or mutate a native Codex Goal, and grants no deployment or production authority.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Use the bundled durable local planner.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "explicit_semantics": {
      "anyOf": [
        {
          "enum": [
            "use",
            "only",
            "all"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "How explicit Skill IDs constrain routing; null when no explicit lock exists."
    },
    "explicit_skill_ids": {
      "description": "Skill IDs explicitly selected by the user and protected by Explicit Skill Lock; an empty array allows automatic planning without proving activation.",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "goal_binding_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Native Goal identifier when this request progresses or steers an existing Goal."
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "objective": {
      "description": "The user-visible outcome inspected by the structural deterministic classifier; it is not a semantic-model or authority input.",
      "minLength": 1,
      "type": "string"
    },
    "requested_work_mode": {
      "anyOf": [
        {
          "enum": [
            "single",
            "phased",
            "managed-goal"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Explicit envelope hint; null allows deterministic automatic classification."
    },
    "routing_context": {
      "additionalProperties": false,
      "description": "Context for an optional deterministic Profile match. Omission preserves the V2 beta.1 request contract; these values grant no runtime or deployment authority.",
      "properties": {
        "current_phase_id": {
          "anyOf": [
            {
              "pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Current Phase identifier; only that Phase's Primary and immediate support become current intent."
        },
        "domains": {
          "description": "Deterministic domain identifiers used by profile matchers.",
          "items": {
            "pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
            "type": "string"
          },
          "maxItems": 32,
          "type": "array"
        },
        "tags": {
          "description": "Deterministic task tags used by profile matchers.",
          "items": {
            "pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
            "type": "string"
          },
          "maxItems": 32,
          "type": "array"
        },
        "workspace_root": {
          "anyOf": [
            {
              "minLength": 1,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Workspace root whose fixed .codex/workflow-skill-router.json may be loaded after MCP Client-root or operator-root authorization."
        }
      },
      "required": [
        "workspace_root",
        "domains",
        "tags",
        "current_phase_id"
      ],
      "type": "object"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "objective",
    "goal_binding_id",
    "requested_work_mode",
    "explicit_skill_ids",
    "explicit_semantics"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "activation_status": {
      "description": "Planning evidence only; intended-unverified never proves actual activation.",
      "enum": [
        "not-planned",
        "intended-unverified"
      ],
      "type": "string"
    },
    "classification": {
      "additionalProperties": false,
      "description": "Deterministic classification trace for the work envelope only; it neither selects runtime capabilities nor grants authority.",
      "properties": {
        "classifier_revision": {
          "type": "string"
        },
        "confidence": {
          "enum": [
            "high",
            "medium",
            "low"
          ],
          "type": "string"
        },
        "reason_codes": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "source": {
          "description": "Authoritative source for the deterministic work-envelope decision.",
          "enum": [
            "native-goal-binding",
            "caller-work-mode-hint",
            "deterministic-analyzer",
            "profile-route",
            "builtin-fallback",
            "legacy-replay"
          ],
          "type": "string"
        }
      },
      "required": [
        "source",
        "confidence",
        "classifier_revision",
        "reason_codes"
      ],
      "type": "object"
    },
    "created_work_items": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "matched_profile_rule_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "planned_skill_ids": {
      "description": "Planned Skill intent from an explicit lock or deterministic Profile; it does not prove runtime activation.",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "planned_skill_tree": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "exit_gate": {
            "type": "string"
          },
          "phase_id": {
            "type": "string"
          },
          "primary_skill_id": {
            "type": "string"
          },
          "support_skill_ids": {
            "items": {
              "type": "string"
            },
            "maxItems": 3,
            "type": "array"
          }
        },
        "required": [
          "phase_id",
          "primary_skill_id",
          "support_skill_ids",
          "exit_gate"
        ],
        "type": "object"
      },
      "type": "array"
    },
    "profile_warnings": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "route_source": {
      "description": "Source of planned Skill intent, distinct from work-envelope classification.",
      "enum": [
        "user-explicit",
        "workspace-profile",
        "managed-workspace-profile",
        "personal-profile",
        "managed-personal-profile",
        "builtin-default"
      ],
      "type": "string"
    },
    "routing_envelope": {
      "type": "string"
    },
    "routing_profile_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "routing_profile_ids": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "runtime_mode": {
      "type": "string"
    },
    "selection_mode": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "support_consent_required": {
      "type": "boolean"
    },
    "work_graph_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "workflow_run_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "status",
    "workflow_run_id",
    "work_graph_id",
    "created_work_items",
    "routing_envelope",
    "selection_mode",
    "support_consent_required",
    "planned_skill_ids",
    "runtime_mode",
    "route_source",
    "routing_profile_ids",
    "routing_profile_digest",
    "matched_profile_rule_id",
    "planned_skill_tree",
    "activation_status",
    "profile_warnings",
    "classification"
  ],
  "type": "object"
}
propose_support_consent — local-ready

Persist one concrete Phase-scoped support SKILL set for an explicit-locked plan before asking the user. The bundled local R0 runtime binds the route, scope, revisions, and material context.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane, explicit-skill-plan
  • Local conditions: not conditional-local
  • Fallback: Persist a Phase-scoped support proposal before asking for user consent.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "context_fingerprint": {
      "description": "Material context fingerprint that invalidates stale consent.",
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "goal_revision": {
      "anyOf": [
        {
          "maximum": 9007199254740991,
          "minimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Current native Goal revision, or null outside Goal mode."
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "phase_id": {
      "description": "Current Phase to which the proposal is strictly scoped.",
      "minLength": 1,
      "type": "string"
    },
    "plan_revision": {
      "description": "Current Router plan revision bound to the proposal.",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "type": "integer"
    },
    "primary_skill_id": {
      "description": "User-locked primary SKILL from the persisted plan.",
      "minLength": 1,
      "type": "string"
    },
    "scope_anchor_id": {
      "description": "Stable scope anchor for the current Phase.",
      "minLength": 1,
      "type": "string"
    },
    "support_skill_ids": {
      "description": "Concrete distinct supporting SKILLs proposed for this Phase.",
      "items": {
        "minLength": 1,
        "type": "string"
      },
      "maxItems": 3,
      "minItems": 1,
      "type": "array"
    },
    "workflow_run_id": {
      "description": "Existing explicit-locked workflow plan receiving the concrete support proposal.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "workflow_run_id",
    "phase_id",
    "scope_anchor_id",
    "goal_revision",
    "plan_revision",
    "primary_skill_id",
    "support_skill_ids",
    "context_fingerprint"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "consent_action": {
      "enum": [
        "proposal-required",
        "approved",
        "rejected"
      ],
      "type": "string"
    },
    "decision_ref": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "goal_relation": {
      "enum": [
        "none",
        "progress"
      ],
      "type": "string"
    },
    "phase_id": {
      "type": "string"
    },
    "primary_skill": {
      "type": "string"
    },
    "proposal_id": {
      "type": "string"
    },
    "replayed": {
      "type": "boolean"
    },
    "routing_envelope": {
      "enum": [
        "single",
        "phased",
        "managed-goal"
      ],
      "type": "string"
    },
    "runtime_mode": {
      "type": "string"
    },
    "selection_mode": {
      "const": "explicit-locked",
      "type": "string"
    },
    "state_version": {
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "type": "integer"
    },
    "status": {
      "enum": [
        "proposal-required",
        "approved",
        "rejected"
      ],
      "type": "string"
    },
    "support_skills": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "workflow_run_id": {
      "type": "string"
    }
  },
  "required": [
    "status",
    "proposal_id",
    "workflow_run_id",
    "phase_id",
    "routing_envelope",
    "selection_mode",
    "primary_skill",
    "support_skills",
    "consent_action",
    "goal_relation",
    "decision_ref",
    "state_version",
    "replayed",
    "runtime_mode"
  ],
  "type": "object"
}
transition_support_consent — local-ready

Apply an approve or reject intent to a persisted support proposal. The bundled local R0 runtime preserves the bound route, rejects stale scope or revisions, and fails closed on conflicting replays.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane, persisted-support-proposal
  • Local conditions: not conditional-local
  • Fallback: Apply approve or reject intent to the bound proposal without rewriting its route.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "action": {
      "description": "User consent intent; route fields cannot be supplied here.",
      "enum": [
        "approve",
        "reject"
      ],
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "current_context_fingerprint": {
      "description": "Current material context fingerprint.",
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "current_goal_revision": {
      "anyOf": [
        {
          "maximum": 9007199254740991,
          "minimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "description": "Current native Goal revision, or null outside Goal mode."
    },
    "current_phase_id": {
      "description": "Host-observed current Phase used for fail-closed scope validation.",
      "minLength": 1,
      "type": "string"
    },
    "current_plan_revision": {
      "description": "Current Router plan revision.",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "type": "integer"
    },
    "current_scope_anchor_id": {
      "description": "Host-observed current Phase scope anchor.",
      "minLength": 1,
      "type": "string"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "proposal_id": {
      "description": "Persisted support proposal receiving the user decision.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "proposal_id",
    "action",
    "current_phase_id",
    "current_scope_anchor_id",
    "current_goal_revision",
    "current_plan_revision",
    "current_context_fingerprint"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "consent_action": {
      "enum": [
        "proposal-required",
        "approved",
        "rejected"
      ],
      "type": "string"
    },
    "decision_ref": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "goal_relation": {
      "enum": [
        "none",
        "progress"
      ],
      "type": "string"
    },
    "phase_id": {
      "type": "string"
    },
    "primary_skill": {
      "type": "string"
    },
    "proposal_id": {
      "type": "string"
    },
    "replayed": {
      "type": "boolean"
    },
    "routing_envelope": {
      "enum": [
        "single",
        "phased",
        "managed-goal"
      ],
      "type": "string"
    },
    "runtime_mode": {
      "type": "string"
    },
    "selection_mode": {
      "const": "explicit-locked",
      "type": "string"
    },
    "state_version": {
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "type": "integer"
    },
    "status": {
      "enum": [
        "proposal-required",
        "approved",
        "rejected"
      ],
      "type": "string"
    },
    "support_skills": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "workflow_run_id": {
      "type": "string"
    }
  },
  "required": [
    "status",
    "proposal_id",
    "workflow_run_id",
    "phase_id",
    "routing_envelope",
    "selection_mode",
    "primary_skill",
    "support_skills",
    "consent_action",
    "goal_relation",
    "decision_ref",
    "state_version",
    "replayed",
    "runtime_mode"
  ],
  "type": "object"
}
get_next_work — conditional-local

For a validated Router-owned work graph with no Native Goal authority, return the next local item with authority_mode=router-local and host_goal_mutated=false. Native Goal scheduling requires verified-host-scheduler. A missing graph requests Router-owned graph creation or replay; a corrupt graph returns only a sanitized internal-error correlation. All unavailable or unsafe branches fail closed.

  • Risk: R0
  • Runtime requirement: conditional-local
  • Required capabilities: router-owned-work-graph, no-native-goal-authority-required
  • Local conditions: router-owned-work-graph, no-native-goal-authority-required
  • Fallback: Use a validated Router-owned graph or initialize the verified host scheduler.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "workflow_run_id": {
      "description": "Workflow run whose next host-scheduled work item is requested.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "workflow_run_id"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "enum": [
        "router-local",
        "verified-host"
      ],
      "type": "string"
    },
    "host_goal_mutated": {
      "type": "boolean"
    },
    "refresh_requirements": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "status": {
      "type": "string"
    },
    "work_item": {
      "anyOf": [
        {
          "anyOf": [
            {
              "additionalProperties": false,
              "properties": {
                "authority_mode": {
                  "const": "router-local",
                  "type": "string"
                },
                "dependency_ids": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                },
                "phase_id": {
                  "type": "string"
                },
                "primary_skill_id": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "status": {
                  "enum": [
                    "pending",
                    "ready",
                    "active",
                    "verifying",
                    "paused",
                    "completed",
                    "failed",
                    "decomposition-required",
                    "host-scheduler-required"
                  ],
                  "type": "string"
                },
                "support_skill_ids": {
                  "items": {
                    "type": "string"
                  },
                  "maxItems": 3,
                  "type": "array"
                },
                "work_item_id": {
                  "type": "string"
                },
                "workflow_run_id": {
                  "type": "string"
                }
              },
              "required": [
                "work_item_id",
                "workflow_run_id",
                "phase_id",
                "dependency_ids",
                "primary_skill_id",
                "support_skill_ids",
                "status",
                "authority_mode"
              ],
              "type": "object"
            },
            {
              "anyOf": [
                {
                  "additionalProperties": false,
                  "properties": {
                    "routing_envelope": {
                      "enum": [
                        "single",
                        "phased",
                        "managed-goal"
                      ],
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    },
                    "work_item_id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "work_item_id",
                    "routing_envelope",
                    "status"
                  ],
                  "type": "object"
                },
                {
                  "additionalProperties": false,
                  "properties": {
                    "dependency_ids": {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "envelope": {
                      "enum": [
                        "single",
                        "phased",
                        "managed-goal"
                      ],
                      "type": "string"
                    },
                    "milestone_id": {
                      "type": "string"
                    },
                    "phase_ids": {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "read_resources": {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "required": {
                      "type": "boolean"
                    },
                    "scope": {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "skill_policy_ref": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string"
                    },
                    "work_item_id": {
                      "type": "string"
                    },
                    "write_resources": {
                      "items": {
                        "type": "string"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "work_item_id",
                    "milestone_id",
                    "title",
                    "required",
                    "status",
                    "envelope",
                    "dependency_ids",
                    "read_resources",
                    "write_resources",
                    "scope",
                    "skill_policy_ref",
                    "phase_ids"
                  ],
                  "type": "object"
                }
              ]
            }
          ]
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "status",
    "refresh_requirements",
    "work_item",
    "authority_mode",
    "host_goal_mutated"
  ],
  "type": "object"
}
validate_route — verified-host-required

Validate a concrete route and any proposed support capability against current policy, consent, risk, and runtime evidence. This mutation requires verified-host snapshots and activation authority.

  • Risk: R1
  • Runtime requirement: verified-host
  • Required capabilities: verified-capability-snapshot, route-validation-authority
  • Local conditions: not conditional-local
  • Fallback: Preserve the route proposal and validate it after verified host initialization.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "capability_snapshot_id": {
      "description": "Verified capability snapshot used for route validation.",
      "minLength": 1,
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "policy_revision": {
      "description": "Immutable routing policy revision expected by the caller.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "route_proposal": {
      "additionalProperties": {},
      "description": "Complete route proposal evaluated against current policy and capability state.",
      "propertyNames": {
        "type": "string"
      },
      "type": "object"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "route_proposal",
    "capability_snapshot_id",
    "policy_revision"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "exit_gate": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "lease": {
      "anyOf": [
        {},
        {
          "type": "null"
        }
      ]
    },
    "outcome_mode": {
      "type": "string"
    },
    "requires_runtime_approval": {
      "type": "boolean"
    },
    "route": {
      "anyOf": [
        {},
        {
          "type": "null"
        }
      ]
    },
    "valid": {
      "type": "boolean"
    },
    "violations": {
      "items": {
        "additionalProperties": {},
        "propertyNames": {
          "type": "string"
        },
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "valid",
    "violations",
    "requires_runtime_approval",
    "route",
    "lease",
    "outcome_mode",
    "exit_gate"
  ],
  "type": "object"
}
record_work_event — conditional-local

For a validated Router-owned work graph with no Native Goal authority, append only user-or-agent-reported-local progress and return host_transition_authorized=false. Native Goal work requires verified-event-store and activation-receipt-verifier. A missing graph requests local graph creation or replay; a corrupt graph returns a sanitized internal-error. All unavailable or unsafe branches fail closed.

  • Risk: R0
  • Runtime requirement: conditional-local
  • Required capabilities: router-owned-work-graph, no-native-goal-authority-required
  • Local conditions: router-owned-work-graph, no-native-goal-authority-required
  • Fallback: Record advisory local progress or continue through the verified host event store.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "activation_receipt_ref": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Single-use activation receipt when the observation reports execution."
    },
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "observation": {
      "additionalProperties": {},
      "description": "Versioned work observation validated by the core codec.",
      "propertyNames": {
        "type": "string"
      },
      "type": "object"
    },
    "phase_id": {
      "description": "Phase receiving the semantic observation.",
      "minLength": 1,
      "type": "string"
    },
    "workflow_run_id": {
      "description": "Workflow run receiving the semantic observation.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "workflow_run_id",
    "phase_id",
    "observation",
    "activation_receipt_ref"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "event_ids": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "evidence_class": {
      "const": "user-or-agent-reported-local",
      "type": "string"
    },
    "host_transition_authorized": {
      "const": false,
      "type": "boolean"
    },
    "replayed": {
      "type": "boolean"
    },
    "resulting_state_version": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "event_ids",
    "resulting_state_version",
    "replayed"
  ],
  "type": "object"
}
evaluate_gate — conditional-local

For a validated Router-owned work graph with no Native Goal authority, evaluate only persisted local check IDs as a router-local advisory gate with host_transition_authorized=false. A local pass is not Skill activation, Native Goal completion, deployment, or production approval. Native Goal gates require verified-evidence-store and gate-authority; missing graphs request local creation or replay, while corrupt graphs return a sanitized internal-error. All unavailable or unsafe branches fail closed.

  • Risk: R0
  • Runtime requirement: conditional-local
  • Required capabilities: router-owned-work-graph, no-native-goal-authority-required
  • Local conditions: router-owned-work-graph, no-native-goal-authority-required
  • Fallback: Evaluate an advisory local gate or continue through verified host evidence authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identifier for tracing one command flow.",
      "minLength": 1,
      "type": "string"
    },
    "evidence_refs": {
      "description": "Content-addressed evidence references considered by the gate.",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "expected_evidence_digest": {
      "description": "Evidence digest expected before evaluating mandatory checks.",
      "minLength": 1,
      "type": "string"
    },
    "expected_plan_revision": {
      "description": "Plan revision bound to this gate decision.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "expected_state_version": {
      "description": "Expected aggregate state version for compare-and-swap protection.",
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Caller-stable key that safely replays the same semantic command.",
      "minLength": 1,
      "type": "string"
    },
    "phase_id": {
      "description": "Phase whose exit gate is evaluated.",
      "minLength": 1,
      "type": "string"
    },
    "workflow_run_id": {
      "description": "Workflow run whose phase gate is evaluated.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "expected_state_version",
    "idempotency_key",
    "correlation_id",
    "workflow_run_id",
    "phase_id",
    "expected_plan_revision",
    "expected_evidence_digest",
    "evidence_refs"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "evidence_class": {
      "const": "user-or-agent-reported-local",
      "type": "string"
    },
    "evidence_digest": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "failures": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "gate_scope": {
      "const": "router-local",
      "type": "string"
    },
    "host_transition_authorized": {
      "const": false,
      "type": "boolean"
    },
    "mandatory_failures": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "passed": {
      "type": "boolean"
    },
    "replayed": {
      "type": "boolean"
    },
    "resulting_state_version": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "status": {
      "type": "string"
    }
  },
  "required": [
    "status",
    "passed",
    "evidence_digest"
  ],
  "type": "object"
}
get_router_status — local-ready

Read durable Router plan counts and native Goal status candidates without mutating the host Goal. This read is available from the bundled local R0 control plane.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Read the bundled local planner status.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "goal_binding_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Native Goal binding to filter, or null for session scope."
    },
    "workflow_run_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Workflow run to filter, or null for session scope."
    }
  },
  "required": [
    "context",
    "goal_binding_id",
    "workflow_run_id"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "created_work_items": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "goal_binding_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "goal_status_candidate": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "candidate_id": {
              "type": "string"
            },
            "candidate_type": {
              "type": "string"
            },
            "evidence_digest": {
              "type": "string"
            }
          },
          "required": [
            "candidate_id",
            "candidate_type",
            "evidence_digest"
          ],
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    },
    "host_goal_mutated": {
      "type": "boolean"
    },
    "workflow_run_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "goal_binding_id",
    "workflow_run_id",
    "created_work_items",
    "goal_status_candidate",
    "host_goal_mutated"
  ],
  "type": "object"
}
run_model_evaluation — configured-adapter-required

Run fresh attempts from a sealed case through a server-configured evaluation adapter. This quota-consuming operation requires configured-adapter authority and never accepts executable paths from model input.

  • Risk: R2
  • Runtime requirement: configured-adapter
  • Required capabilities: configured-evaluation-adapter, sealed-evaluation-case, trusted-subprocess-adapter-config
  • Local conditions: not conditional-local
  • Fallback: Configure a trusted host-side adapter or report manual-required evidence.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "authorization_ref": {
      "description": "Trusted server-side authorization selecting a configured evaluation adapter.",
      "minLength": 1,
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe evaluation correlation identifier.",
      "minLength": 1,
      "type": "string"
    },
    "idempotency_key": {
      "description": "Caller-stable key for this authorized evaluation request.",
      "minLength": 1,
      "type": "string"
    },
    "repeats": {
      "description": "Fresh attempt count requested for each selected evaluation case.",
      "maximum": 9007199254740991,
      "minimum": 1,
      "type": "integer"
    },
    "sealed_case_ref": {
      "description": "Reference to a sealed evaluation package with isolated scoring data.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "authorization_ref",
    "sealed_case_ref",
    "repeats",
    "idempotency_key",
    "correlation_id"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "adapter_kind": {
      "type": "string"
    },
    "attempts": {
      "items": {
        "additionalProperties": {},
        "propertyNames": {
          "type": "string"
        },
        "type": "object"
      },
      "type": "array"
    },
    "evidence_class": {
      "type": "string"
    },
    "manifest_digest": {
      "type": "string"
    },
    "profile": {
      "type": "string"
    },
    "run_id": {
      "type": "string"
    },
    "status": {
      "type": "string"
    }
  },
  "required": [
    "run_id",
    "status",
    "profile",
    "adapter_kind",
    "attempts",
    "manifest_digest",
    "evidence_class"
  ],
  "type": "object"
}
compare_evaluations — configured-adapter-required

Compare authorized baseline and candidate evaluation runs without fabricating unavailable metrics. This read requires configured evaluation evidence and remains review-required until attested.

  • Risk: R1
  • Runtime requirement: configured-adapter
  • Required capabilities: verified-evaluation-runs, evaluation-authorization
  • Local conditions: not conditional-local
  • Fallback: Import or run two authorized evaluation arms before comparison.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "authorization_ref": {
      "description": "Trusted authorization permitting comparison of the selected runs.",
      "minLength": 1,
      "type": "string"
    },
    "baseline_run_id": {
      "description": "Completed baseline evaluation run identifier.",
      "minLength": 1,
      "type": "string"
    },
    "candidate_run_id": {
      "description": "Completed candidate evaluation run identifier.",
      "minLength": 1,
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe comparison correlation identifier.",
      "minLength": 1,
      "type": "string"
    },
    "idempotency_key": {
      "description": "Caller-stable key for the comparison request.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "authorization_ref",
    "baseline_run_id",
    "candidate_run_id",
    "idempotency_key",
    "correlation_id"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "baseline_run_id": {
      "type": "string"
    },
    "candidate_release_eligible": {
      "type": "boolean"
    },
    "candidate_run_id": {
      "type": "string"
    },
    "hard_violation_difference": {
      "maximum": 9007199254740991,
      "minimum": -9007199254740991,
      "type": "integer"
    },
    "paired_count": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "pass_rate_difference": {
      "type": "number"
    }
  },
  "required": [
    "baseline_run_id",
    "candidate_run_id",
    "paired_count",
    "pass_rate_difference",
    "hard_violation_difference",
    "candidate_release_eligible"
  ],
  "type": "object"
}
export_router_artifact — configured-adapter-required

Export a sanitized evaluation artifact from a validated comparison and optional trusted attestation. This operation requires configured-adapter evidence and cannot self-approve publication.

  • Risk: R2
  • Runtime requirement: configured-adapter
  • Required capabilities: reviewed-evaluation-comparison, export-attestation
  • Local conditions: not conditional-local
  • Fallback: Keep the artifact review-required until trusted attestation is available.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "attestation_ref": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Human or trusted verifier attestation, or null for review-required output."
    },
    "authorization_ref": {
      "description": "Trusted authorization permitting sanitized artifact export.",
      "minLength": 1,
      "type": "string"
    },
    "comparison_ref": {
      "description": "Validated evaluation comparison used to build the artifact.",
      "minLength": 1,
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Authority context supplied by the Codex host.",
      "properties": {
        "actor": {
          "description": "Verified user or host actor responsible for this request.",
          "minLength": 1,
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "description": "Host policy snapshot governing authority and runtime behavior.",
          "minLength": 1,
          "type": "string"
        },
        "session_id": {
          "description": "Stable session identifier used to isolate Router state and idempotency.",
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe export correlation identifier.",
      "minLength": 1,
      "type": "string"
    },
    "export_kind": {
      "description": "Supported sanitized export format requested by the caller.",
      "minLength": 1,
      "type": "string"
    },
    "idempotency_key": {
      "description": "Caller-stable key for the export request.",
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "context",
    "authorization_ref",
    "comparison_ref",
    "export_kind",
    "attestation_ref",
    "idempotency_key",
    "correlation_id"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "artifact_digest": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "evidence_class": {
      "type": "string"
    },
    "review_authority": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "review_subject_digest": {
      "type": "string"
    },
    "reviewed_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "schema_version": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "summary": {
      "additionalProperties": {},
      "propertyNames": {
        "type": "string"
      },
      "type": "object"
    }
  },
  "required": [
    "schema_version",
    "status",
    "evidence_class",
    "summary",
    "review_subject_digest",
    "review_authority",
    "reviewed_at",
    "artifact_digest"
  ],
  "type": "object"
}
get_memory_status — local-ready

Read the effective default-off Memory policy and a path-free global history summary without creating or migrating optional Memory state. A policy is not Skill activation, Host write permission, or background learning.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "actual_skill_consistency": {
      "const": "unavailable",
      "type": "string"
    },
    "allowed_targets": {
      "items": {
        "enum": [
          "managed-personal",
          "managed-workspace-local",
          "user-personal",
          "workspace-file"
        ],
        "type": "string"
      },
      "maxItems": 4,
      "type": "array"
    },
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "candidate_generation_enabled": {
      "type": "boolean"
    },
    "capture_enabled": {
      "type": "boolean"
    },
    "effective_mode": {
      "enum": [
        "disabled",
        "observe",
        "reviewed",
        "automatic"
      ],
      "type": "string"
    },
    "eligible_workflow_count": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "history_summary_digest": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "memory_store_exists": {
      "type": "boolean"
    },
    "personal_ceiling": {
      "enum": [
        "disabled",
        "observe",
        "reviewed",
        "automatic"
      ],
      "type": "string"
    },
    "policy_digest": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "profile_promotion": {
      "enum": [
        "disabled",
        "review-required",
        "automatic-managed"
      ],
      "type": "string"
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "workspace_requested_mode": {
      "anyOf": [
        {
          "enum": [
            "disabled",
            "observe",
            "reviewed",
            "automatic"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "effective_mode",
    "personal_ceiling",
    "workspace_requested_mode",
    "policy_digest",
    "capture_enabled",
    "candidate_generation_enabled",
    "profile_promotion",
    "allowed_targets",
    "memory_store_exists",
    "reason_codes",
    "history_summary_digest",
    "eligible_workflow_count",
    "actual_skill_consistency",
    "authority_mode"
  ],
  "type": "object"
}
remember_workflow — local-ready

Record one eligible completed local Workflow under the current opt-in Memory policy using only retained routing context. This explicit local operation may rebuild Candidates but does not promote Profiles, infer raw matchers, activate Skills, or grant Side-effect authority.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identity. A changed identity is not the same replay.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "idempotency_key": {
      "description": "Stable key for replaying the identical bounded intent.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "one_shot": {
      "enum": [
        "none",
        "remember-once",
        "no-memory"
      ],
      "type": "string"
    },
    "risk_class": {
      "enum": [
        "r0",
        "r1",
        "r2",
        "r3"
      ],
      "type": "string"
    },
    "side_effect_outcome": {
      "enum": [
        "none",
        "known-success",
        "known-failure",
        "unknown"
      ],
      "type": "string"
    },
    "target_profile_class": {
      "enum": [
        "managed-personal",
        "managed-workspace-local",
        "user-personal",
        "workspace-file"
      ],
      "type": "string"
    },
    "workflow_run_id": {
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root",
    "idempotency_key",
    "correlation_id",
    "workflow_run_id",
    "target_profile_class",
    "risk_class",
    "side_effect_outcome",
    "one_shot"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "candidate_id": {
      "anyOf": [
        {
          "pattern": "^candidate:[0-9a-f]{32}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "observation_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "observation_id": {
      "anyOf": [
        {
          "pattern": "^observation:[0-9a-f]{32}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "policy_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "replayed": {
      "type": "boolean"
    },
    "route_signature_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "status": {
      "enum": [
        "recorded",
        "not-recorded",
        "memory-disabled"
      ],
      "type": "string"
    },
    "target_profile_class": {
      "enum": [
        "managed-personal",
        "managed-workspace-local",
        "user-personal",
        "workspace-file"
      ],
      "type": "string"
    }
  },
  "required": [
    "status",
    "observation_id",
    "observation_digest",
    "route_signature_digest",
    "policy_digest",
    "target_profile_class",
    "reason_codes",
    "replayed",
    "candidate_id",
    "authority_mode"
  ],
  "type": "object"
}
record_route_feedback — local-ready

Record bounded typed feedback against an existing Observation and matching Workflow session. The operation rejects unbound corrections and accepts no free-text feedback, raw objective, or caller-provided Profile content.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "corrected_route_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "correction_dimensions": {
      "items": {
        "enum": [
          "work-mode",
          "phase-order",
          "primary-skill",
          "support-skill",
          "exit-gate",
          "matcher",
          "target"
        ],
        "type": "string"
      },
      "maxItems": 7,
      "type": "array"
    },
    "correlation_id": {
      "description": "Public-safe correlation identity. A changed identity is not the same replay.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "feedback_type": {
      "enum": [
        "accepted",
        "corrected",
        "rejected",
        "support-rejected",
        "capability-unavailable",
        "gate-failed",
        "completed",
        "abandoned",
        "no-memory"
      ],
      "type": "string"
    },
    "idempotency_key": {
      "description": "Stable key for replaying the identical bounded intent.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "observation_id": {
      "pattern": "^observation:[0-9a-f]{32}$",
      "type": "string"
    },
    "original_route_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "reason_code": {
      "anyOf": [
        {
          "enum": [
            "user-accepted",
            "user-rejected",
            "user-correction",
            "support-rejected",
            "capability-unavailable",
            "gate-failed",
            "completed",
            "abandoned",
            "no-memory"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "workflow_run_id": {
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root",
    "idempotency_key",
    "correlation_id",
    "workflow_run_id",
    "observation_id",
    "feedback_type",
    "reason_code",
    "correction_dimensions",
    "original_route_digest",
    "corrected_route_digest"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "feedback_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "feedback_id": {
      "anyOf": [
        {
          "pattern": "^feedback:[0-9a-f]{32}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "observation_id": {
      "pattern": "^observation:[0-9a-f]{32}$",
      "type": "string"
    },
    "policy_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "replayed": {
      "type": "boolean"
    },
    "status": {
      "enum": [
        "recorded",
        "memory-disabled"
      ],
      "type": "string"
    }
  },
  "required": [
    "status",
    "feedback_id",
    "feedback_digest",
    "observation_id",
    "policy_digest",
    "reason_codes",
    "replayed",
    "authority_mode"
  ],
  "type": "object"
}
list_workflow_candidates — local-ready

Read sanitized Candidate evidence summaries with a bounded result limit, Workspace isolation, and an explicit truncation marker. This read-only operation never rebuilds Candidates, creates a Memory store, or grants runtime authority.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "limit": {
      "maximum": 1000,
      "minimum": 1,
      "type": "integer"
    },
    "status": {
      "anyOf": [
        {
          "enum": [
            "proposed",
            "approved",
            "rejected",
            "expired",
            "suppressed",
            "superseded",
            "auto-promoted"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root",
    "status",
    "limit"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "candidates": {
      "items": {
        "additionalProperties": false,
        "properties": {
          "candidate_digest": {
            "pattern": "^sha256:[0-9a-f]{64}$",
            "type": "string"
          },
          "candidate_id": {
            "pattern": "^candidate:[0-9a-f]{32}$",
            "type": "string"
          },
          "confidence": {
            "enum": [
              "insufficient-evidence",
              "low",
              "medium",
              "high"
            ],
            "type": "string"
          },
          "created_at": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "material_evidence_digest": {
            "pattern": "^sha256:[0-9a-f]{64}$",
            "type": "string"
          },
          "metrics": {
            "additionalProperties": false,
            "properties": {
              "canonical_skill_ids": {
                "type": "boolean"
              },
              "completion_rate": {
                "maximum": 1,
                "minimum": 0,
                "type": "number"
              },
              "distinct_days": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "distinct_runs": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "hard_contract_violations": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "manual_correction_rate": {
                "maximum": 1,
                "minimum": 0,
                "type": "number"
              },
              "required_gate_pass_rate": {
                "maximum": 1,
                "minimum": 0,
                "type": "number"
              },
              "route_consistency": {
                "maximum": 1,
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "distinct_runs",
              "distinct_days",
              "completion_rate",
              "required_gate_pass_rate",
              "manual_correction_rate",
              "route_consistency",
              "canonical_skill_ids",
              "hard_contract_violations"
            ],
            "type": "object"
          },
          "pattern_id": {
            "pattern": "^pattern:[0-9a-f]{32}$",
            "type": "string"
          },
          "policy_digest": {
            "pattern": "^sha256:[0-9a-f]{64}$",
            "type": "string"
          },
          "reason_codes": {
            "items": {
              "enum": [
                "memory-disabled",
                "personal-policy-missing",
                "workspace-policy-missing",
                "invalid-memory-policy",
                "ambiguous-memory-policy",
                "workspace-policy-exceeds-ceiling",
                "workspace-root-unverified",
                "explicit-no-memory",
                "workflow-not-terminal",
                "required-gate-not-passed",
                "unknown-side-effect-outcome",
                "sensitive-route-excluded",
                "insufficient-evidence",
                "candidate-conflict",
                "candidate-suppressed",
                "candidate-not-proposed",
                "workflow-candidate-not-found",
                "profile-preview-stale",
                "profile-policy-drift",
                "profile-drift",
                "profile-candidate-drift",
                "profile-proposal-state-conflict",
                "profile-proposal-expired",
                "profile-promotion-disabled",
                "profile-target-not-allowed",
                "profile-backtest-failed",
                "profile-backtest-drift",
                "profile-lint-failed",
                "profile-authority-mismatch",
                "profile-proposal-not-found",
                "memory-store-unavailable",
                "memory-operation-failed",
                "idempotency-conflict",
                "memory-idempotency-conflict",
                "stale-summary-digest",
                "scope-not-available",
                "managed-profile-purge-not-available",
                "rollback-source-revision-unavailable",
                "automatic-user-profile-write-forbidden",
                "explicit-route-requires-review",
                "workflow-context-mismatch",
                "workflow-run-not-found",
                "workflow-not-completed",
                "no-matchable-routing-context",
                "matcher-seed-required",
                "unresolved-skill-identity",
                "risk-class-excluded",
                "profile-versioning-required",
                "candidate-evidence-drift"
              ],
              "type": "string"
            },
            "maxItems": 64,
            "type": "array"
          },
          "recommendation_mode": {
            "enum": [
              "reviewed",
              "automatic"
            ],
            "type": "string"
          },
          "scope": {
            "enum": [
              "personal",
              "workspace"
            ],
            "type": "string"
          },
          "status": {
            "enum": [
              "proposed",
              "approved",
              "rejected",
              "expired",
              "suppressed",
              "superseded",
              "auto-promoted"
            ],
            "type": "string"
          },
          "target_profile_class": {
            "enum": [
              "managed-personal",
              "managed-workspace-local",
              "user-personal",
              "workspace-file"
            ],
            "type": "string"
          },
          "workspace_identity_digest": {
            "anyOf": [
              {
                "pattern": "^sha256:[0-9a-f]{64}$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "candidate_id",
          "candidate_digest",
          "pattern_id",
          "status",
          "recommendation_mode",
          "confidence",
          "target_profile_class",
          "workspace_identity_digest",
          "material_evidence_digest",
          "policy_digest",
          "created_at",
          "scope",
          "metrics",
          "reason_codes"
        ],
        "type": "object"
      },
      "maxItems": 1000,
      "type": "array"
    },
    "truncated": {
      "type": "boolean"
    }
  },
  "required": [
    "candidates",
    "truncated",
    "authority_mode"
  ],
  "type": "object"
}
preview_profile_update — local-ready

Build a read-only, deterministic Profile preview with semantic Diff, canonical Profile JSON, Backtest, and full Proposal Digest. No Proposal or Profile is persisted; approval must reproduce and bind the same preview before a local write.

  • Risk: R0
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "candidate_id": {
      "pattern": "^candidate:[0-9a-f]{32}$",
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root",
    "candidate_id"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "proposal": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "backtest": {
              "additionalProperties": false,
              "properties": {
                "acceptable": {
                  "type": "boolean"
                },
                "backtest_digest": {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                "capability_gap_summary": {
                  "const": "unavailable",
                  "type": "string"
                },
                "equal_rank_conflicts": {
                  "items": {
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "manual_precedence": {
                  "type": "boolean"
                },
                "manual_profile_digests": {
                  "items": {
                    "pattern": "^sha256:[0-9a-f]{64}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "planned_route_regressions": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "positive_match_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "positive_match_coverage": {
                  "maximum": 1,
                  "minimum": 0,
                  "type": "number"
                },
                "positive_observation_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "shadowed_rule_ids": {
                  "items": {
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "unexpected_match_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "workspace_isolation": {
                  "type": "boolean"
                }
              },
              "required": [
                "positive_observation_count",
                "positive_match_count",
                "positive_match_coverage",
                "unexpected_match_count",
                "shadowed_rule_ids",
                "equal_rank_conflicts",
                "manual_precedence",
                "manual_profile_digests",
                "capability_gap_summary",
                "planned_route_regressions",
                "workspace_isolation",
                "acceptable",
                "backtest_digest"
              ],
              "type": "object"
            },
            "backtest_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "candidate_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "candidate_id": {
              "pattern": "^candidate:[0-9a-f]{32}$",
              "type": "string"
            },
            "created_at": {
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
              "type": "string"
            },
            "expected_profile_digest": {
              "anyOf": [
                {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                {
                  "const": "missing",
                  "type": "string"
                }
              ]
            },
            "expires_at": {
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
              "type": "string"
            },
            "policy_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposal_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposal_id": {
              "pattern": "^proposal:[0-9a-f]{32}$",
              "type": "string"
            },
            "proposed_profile_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposed_profile_json": {
              "maxLength": 1048576,
              "type": "string"
            },
            "semantic_diff_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "semantic_diff_json": {
              "maxLength": 1048576,
              "type": "string"
            },
            "state_version": {
              "maximum": 2147483647,
              "minimum": 1,
              "type": "integer"
            },
            "status": {
              "enum": [
                "pending",
                "approved",
                "rejected",
                "stale",
                "expired",
                "applied",
                "failed"
              ],
              "type": "string"
            },
            "target_profile_class": {
              "enum": [
                "managed-personal",
                "managed-workspace-local",
                "user-personal",
                "workspace-file"
              ],
              "type": "string"
            },
            "workspace_identity_digest": {
              "anyOf": [
                {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "proposal_id",
            "proposal_digest",
            "candidate_id",
            "candidate_digest",
            "status",
            "state_version",
            "target_profile_class",
            "expected_profile_digest",
            "proposed_profile_digest",
            "semantic_diff_digest",
            "backtest_digest",
            "policy_digest",
            "workspace_identity_digest",
            "created_at",
            "expires_at",
            "proposed_profile_json",
            "semantic_diff_json",
            "backtest"
          ],
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "replayed": {
      "type": "boolean"
    },
    "revision_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "revision_id": {
      "anyOf": [
        {
          "pattern": "^revision:[0-9a-f]{32}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "status": {
      "enum": [
        "previewed",
        "pending",
        "applied",
        "rejected",
        "blocked",
        "not-found"
      ],
      "type": "string"
    }
  },
  "required": [
    "status",
    "proposal",
    "revision_id",
    "revision_digest",
    "replayed",
    "reason_codes",
    "authority_mode"
  ],
  "type": "object"
}
transition_profile_update — conditional-local

Apply an explicit approve or reject decision to the exact bound Profile preview under the current Memory policy. This conditional-local operation uses CAS, Backtest, Revision and atomic writes; workspace-file targets require verified Host write authority and fail closed in the bundled runtime.

  • Risk: R1
  • Runtime requirement: conditional-local
  • Required capabilities: bundled-local-control-plane
  • Local conditions: effective-memory-policy, bound-reviewed-profile, local-profile-target
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "action": {
      "enum": [
        "approve",
        "reject"
      ],
      "type": "string"
    },
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identity. A changed identity is not the same replay.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "expected_profile_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "const": "missing",
          "type": "string"
        }
      ]
    },
    "expected_proposal_digest": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "expected_state_version": {
      "maximum": 2147483647,
      "minimum": 1,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Stable key for replaying the identical bounded intent.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "proposal_id": {
      "pattern": "^proposal:[0-9a-f]{32}$",
      "type": "string"
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root",
    "idempotency_key",
    "correlation_id",
    "proposal_id",
    "expected_proposal_digest",
    "expected_profile_digest",
    "expected_state_version",
    "action"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "proposal": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "backtest": {
              "additionalProperties": false,
              "properties": {
                "acceptable": {
                  "type": "boolean"
                },
                "backtest_digest": {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                "capability_gap_summary": {
                  "const": "unavailable",
                  "type": "string"
                },
                "equal_rank_conflicts": {
                  "items": {
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "manual_precedence": {
                  "type": "boolean"
                },
                "manual_profile_digests": {
                  "items": {
                    "pattern": "^sha256:[0-9a-f]{64}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "planned_route_regressions": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "positive_match_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "positive_match_coverage": {
                  "maximum": 1,
                  "minimum": 0,
                  "type": "number"
                },
                "positive_observation_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "shadowed_rule_ids": {
                  "items": {
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "unexpected_match_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "workspace_isolation": {
                  "type": "boolean"
                }
              },
              "required": [
                "positive_observation_count",
                "positive_match_count",
                "positive_match_coverage",
                "unexpected_match_count",
                "shadowed_rule_ids",
                "equal_rank_conflicts",
                "manual_precedence",
                "manual_profile_digests",
                "capability_gap_summary",
                "planned_route_regressions",
                "workspace_isolation",
                "acceptable",
                "backtest_digest"
              ],
              "type": "object"
            },
            "backtest_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "candidate_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "candidate_id": {
              "pattern": "^candidate:[0-9a-f]{32}$",
              "type": "string"
            },
            "created_at": {
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
              "type": "string"
            },
            "expected_profile_digest": {
              "anyOf": [
                {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                {
                  "const": "missing",
                  "type": "string"
                }
              ]
            },
            "expires_at": {
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
              "type": "string"
            },
            "policy_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposal_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposal_id": {
              "pattern": "^proposal:[0-9a-f]{32}$",
              "type": "string"
            },
            "proposed_profile_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposed_profile_json": {
              "maxLength": 1048576,
              "type": "string"
            },
            "semantic_diff_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "semantic_diff_json": {
              "maxLength": 1048576,
              "type": "string"
            },
            "state_version": {
              "maximum": 2147483647,
              "minimum": 1,
              "type": "integer"
            },
            "status": {
              "enum": [
                "pending",
                "approved",
                "rejected",
                "stale",
                "expired",
                "applied",
                "failed"
              ],
              "type": "string"
            },
            "target_profile_class": {
              "enum": [
                "managed-personal",
                "managed-workspace-local",
                "user-personal",
                "workspace-file"
              ],
              "type": "string"
            },
            "workspace_identity_digest": {
              "anyOf": [
                {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "proposal_id",
            "proposal_digest",
            "candidate_id",
            "candidate_digest",
            "status",
            "state_version",
            "target_profile_class",
            "expected_profile_digest",
            "proposed_profile_digest",
            "semantic_diff_digest",
            "backtest_digest",
            "policy_digest",
            "workspace_identity_digest",
            "created_at",
            "expires_at",
            "proposed_profile_json",
            "semantic_diff_json",
            "backtest"
          ],
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "replayed": {
      "type": "boolean"
    },
    "revision_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "revision_id": {
      "anyOf": [
        {
          "pattern": "^revision:[0-9a-f]{32}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "status": {
      "enum": [
        "previewed",
        "pending",
        "applied",
        "rejected",
        "blocked",
        "not-found"
      ],
      "type": "string"
    }
  },
  "required": [
    "status",
    "proposal",
    "revision_id",
    "revision_digest",
    "replayed",
    "reason_codes",
    "authority_mode"
  ],
  "type": "object"
}
rollback_profile_revision — conditional-local

Create a new reviewable rollback Proposal from a validated Revision and current Profile Digest. This conditional-local mutation does not silently write a Profile; the new Proposal requires transition approval. Workspace file writes still require verified Host authority.

  • Risk: R1
  • Runtime requirement: conditional-local
  • Required capabilities: bundled-local-control-plane
  • Local conditions: effective-memory-policy, bound-reviewed-profile, local-profile-target
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identity. A changed identity is not the same replay.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "expected_profile_digest": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "idempotency_key": {
      "description": "Stable key for replaying the identical bounded intent.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "source_revision_id": {
      "pattern": "^revision:[0-9a-f]{32}$",
      "type": "string"
    },
    "workspace_root": {
      "anyOf": [
        {
          "maxLength": 4096,
          "minLength": 1,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Optional Workspace root bound to MCP Client or operator-advertised roots before Core access; never a target filename."
    }
  },
  "required": [
    "context",
    "workspace_root",
    "idempotency_key",
    "correlation_id",
    "source_revision_id",
    "expected_profile_digest"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "proposal": {
      "anyOf": [
        {
          "additionalProperties": false,
          "properties": {
            "backtest": {
              "additionalProperties": false,
              "properties": {
                "acceptable": {
                  "type": "boolean"
                },
                "backtest_digest": {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                "capability_gap_summary": {
                  "const": "unavailable",
                  "type": "string"
                },
                "equal_rank_conflicts": {
                  "items": {
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "manual_precedence": {
                  "type": "boolean"
                },
                "manual_profile_digests": {
                  "items": {
                    "pattern": "^sha256:[0-9a-f]{64}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "planned_route_regressions": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "positive_match_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "positive_match_coverage": {
                  "maximum": 1,
                  "minimum": 0,
                  "type": "number"
                },
                "positive_observation_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "shadowed_rule_ids": {
                  "items": {
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
                    "type": "string"
                  },
                  "type": "array"
                },
                "unexpected_match_count": {
                  "maximum": 9007199254740991,
                  "minimum": 0,
                  "type": "integer"
                },
                "workspace_isolation": {
                  "type": "boolean"
                }
              },
              "required": [
                "positive_observation_count",
                "positive_match_count",
                "positive_match_coverage",
                "unexpected_match_count",
                "shadowed_rule_ids",
                "equal_rank_conflicts",
                "manual_precedence",
                "manual_profile_digests",
                "capability_gap_summary",
                "planned_route_regressions",
                "workspace_isolation",
                "acceptable",
                "backtest_digest"
              ],
              "type": "object"
            },
            "backtest_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "candidate_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "candidate_id": {
              "pattern": "^candidate:[0-9a-f]{32}$",
              "type": "string"
            },
            "created_at": {
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
              "type": "string"
            },
            "expected_profile_digest": {
              "anyOf": [
                {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                {
                  "const": "missing",
                  "type": "string"
                }
              ]
            },
            "expires_at": {
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
              "type": "string"
            },
            "policy_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposal_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposal_id": {
              "pattern": "^proposal:[0-9a-f]{32}$",
              "type": "string"
            },
            "proposed_profile_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "proposed_profile_json": {
              "maxLength": 1048576,
              "type": "string"
            },
            "semantic_diff_digest": {
              "pattern": "^sha256:[0-9a-f]{64}$",
              "type": "string"
            },
            "semantic_diff_json": {
              "maxLength": 1048576,
              "type": "string"
            },
            "state_version": {
              "maximum": 2147483647,
              "minimum": 1,
              "type": "integer"
            },
            "status": {
              "enum": [
                "pending",
                "approved",
                "rejected",
                "stale",
                "expired",
                "applied",
                "failed"
              ],
              "type": "string"
            },
            "target_profile_class": {
              "enum": [
                "managed-personal",
                "managed-workspace-local",
                "user-personal",
                "workspace-file"
              ],
              "type": "string"
            },
            "workspace_identity_digest": {
              "anyOf": [
                {
                  "pattern": "^sha256:[0-9a-f]{64}$",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "proposal_id",
            "proposal_digest",
            "candidate_id",
            "candidate_digest",
            "status",
            "state_version",
            "target_profile_class",
            "expected_profile_digest",
            "proposed_profile_digest",
            "semantic_diff_digest",
            "backtest_digest",
            "policy_digest",
            "workspace_identity_digest",
            "created_at",
            "expires_at",
            "proposed_profile_json",
            "semantic_diff_json",
            "backtest"
          ],
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "replayed": {
      "type": "boolean"
    },
    "revision_digest": {
      "anyOf": [
        {
          "pattern": "^sha256:[0-9a-f]{64}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "revision_id": {
      "anyOf": [
        {
          "pattern": "^revision:[0-9a-f]{32}$",
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "status": {
      "enum": [
        "previewed",
        "pending",
        "applied",
        "rejected",
        "blocked",
        "not-found"
      ],
      "type": "string"
    }
  },
  "required": [
    "status",
    "proposal",
    "revision_id",
    "revision_digest",
    "replayed",
    "reason_codes",
    "authority_mode"
  ],
  "type": "object"
}
purge_workflow_memory — local-ready

Purge an explicitly confirmed local Memory scope bound to the current global summary Digest, including after capture is disabled. This destructive R1 operation never deletes User-owned Profiles; unsupported scopes return scope-not-available without claiming deletion.

  • Risk: R1
  • Runtime requirement: local-r0
  • Required capabilities: bundled-local-control-plane
  • Local conditions: not conditional-local
  • Fallback: Memory is default-off; use explicit policy-bound local operations. Workspace-file writes require verified Host authority.

Input schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "confirmed": {
      "const": true,
      "description": "Explicit confirmation of the destructive scope. Never inferred from Memory mode.",
      "type": "boolean"
    },
    "context": {
      "additionalProperties": false,
      "description": "Session/actor correlation context; these identifiers do not grant Host write authority.",
      "properties": {
        "actor": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "runtime_policy_snapshot_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        },
        "session_id": {
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
          "type": "string"
        }
      },
      "required": [
        "session_id",
        "actor",
        "runtime_policy_snapshot_id"
      ],
      "type": "object"
    },
    "correlation_id": {
      "description": "Public-safe correlation identity. A changed identity is not the same replay.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "expected_summary_digest": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "idempotency_key": {
      "description": "Stable key for replaying the identical bounded intent.",
      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$",
      "type": "string"
    },
    "include_managed_profiles": {
      "type": "boolean"
    },
    "scope": {
      "enum": [
        "history-only",
        "analytics-only",
        "candidates-only",
        "revisions-only",
        "managed-profiles-only",
        "all-memory-data"
      ],
      "type": "string"
    }
  },
  "required": [
    "context",
    "idempotency_key",
    "correlation_id",
    "scope",
    "expected_summary_digest",
    "include_managed_profiles",
    "confirmed"
  ],
  "type": "object"
}

Output schema

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false,
  "properties": {
    "authority_mode": {
      "const": "router-local",
      "type": "string"
    },
    "deleted_command_receipts": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "deleted_feedback": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "deleted_observations": {
      "maximum": 9007199254740991,
      "minimum": 0,
      "type": "integer"
    },
    "reason_codes": {
      "items": {
        "enum": [
          "memory-disabled",
          "personal-policy-missing",
          "workspace-policy-missing",
          "invalid-memory-policy",
          "ambiguous-memory-policy",
          "workspace-policy-exceeds-ceiling",
          "workspace-root-unverified",
          "explicit-no-memory",
          "workflow-not-terminal",
          "required-gate-not-passed",
          "unknown-side-effect-outcome",
          "sensitive-route-excluded",
          "insufficient-evidence",
          "candidate-conflict",
          "candidate-suppressed",
          "candidate-not-proposed",
          "workflow-candidate-not-found",
          "profile-preview-stale",
          "profile-policy-drift",
          "profile-drift",
          "profile-candidate-drift",
          "profile-proposal-state-conflict",
          "profile-proposal-expired",
          "profile-promotion-disabled",
          "profile-target-not-allowed",
          "profile-backtest-failed",
          "profile-backtest-drift",
          "profile-lint-failed",
          "profile-authority-mismatch",
          "profile-proposal-not-found",
          "memory-store-unavailable",
          "memory-operation-failed",
          "idempotency-conflict",
          "memory-idempotency-conflict",
          "stale-summary-digest",
          "scope-not-available",
          "managed-profile-purge-not-available",
          "rollback-source-revision-unavailable",
          "automatic-user-profile-write-forbidden",
          "explicit-route-requires-review",
          "workflow-context-mismatch",
          "workflow-run-not-found",
          "workflow-not-completed",
          "no-matchable-routing-context",
          "matcher-seed-required",
          "unresolved-skill-identity",
          "risk-class-excluded",
          "profile-versioning-required",
          "candidate-evidence-drift"
        ],
        "type": "string"
      },
      "maxItems": 64,
      "type": "array"
    },
    "replayed": {
      "type": "boolean"
    },
    "scope": {
      "enum": [
        "history-only",
        "analytics-only",
        "candidates-only",
        "revisions-only",
        "managed-profiles-only",
        "all-memory-data"
      ],
      "type": "string"
    },
    "status": {
      "enum": [
        "purged",
        "blocked",
        "scope-not-available"
      ],
      "type": "string"
    },
    "summary_digest_after": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    },
    "summary_digest_before": {
      "pattern": "^sha256:[0-9a-f]{64}$",
      "type": "string"
    }
  },
  "required": [
    "status",
    "scope",
    "deleted_observations",
    "deleted_feedback",
    "deleted_command_receipts",
    "summary_digest_before",
    "summary_digest_after",
    "replayed",
    "reason_codes",
    "authority_mode"
  ],
  "type": "object"
}
Terminal window
node scripts/build-mcp-reference-data.mjs
node scripts/build-mcp-reference-data.mjs --check