diff --git a/README.md b/README.md
index d4160b5..963c9de 100644
--- a/README.md
+++ b/README.md
@@ -1,118 +1,34 @@
-
+# Open CoT
-

+Open CoT is **Cognitive Operations Theory**: a compact, schema-first standard for the boundary between cognition and execution.
-### Schemas for Cognitive Artifacts, Capabilities, and Reconciliation
+The model contributes a typed cognitive artifact. Runtime code validates, authorizes, executes endpoint capabilities, records observations, and reconciles final state. Reasoning remains important as evidence, but it is never authority.
-**Open CoT** — an open standard for portable cognitive artifacts, capability snapshots, execution intent, observations, policy boundaries, receipts, and reconciliation results.
+## Core RFCs
-

-

-

-

+The active RFC set is intentionally small and sequential:
-
+1. Cognitive Artifact & Reasoning Evidence
+2. Capability Snapshot & Endpoint Descriptor
+3. Execution Intent & Endpoint Invocation
+4. Policy Gate & Permission Evaluation
+5. Observation, Receipt & Audit Evidence
+6. Reconciliation Result & Error Taxonomy
+7. Runtime Boundary & Cognitive Pipeline
+8. Budget, Cost & Temporal Bounds
+9. Requester Identity & Governance Context
+10. Human Approval, Yield & Resume
+11. Conformance, Registry & Compatibility Rules
+12. Compact Context Serialization
----
+Schemas are embedded in the RFC markdown and generated into `schemas/` with `python3 tools/sync_schemas_from_rfcs.py`.
-## Why This Exists
-
-Modern AI systems need a stable contract between fuzzy cognition and concrete capability. The model-like component can interpret, summarize, propose, and produce typed artifacts, but it must not own runtime authority or side effects.
-
-Open CoT defines the portable interface layer for that boundary:
-
-- what cognitive artifacts look like,
-- how available capabilities are represented,
-- how execution intent binds to an immutable capability snapshot,
-- how policy, delegation, budget, and receipts are recorded,
-- how observations and final reconciliation results are serialized.
-
-Earlier runtime-governance language was useful while the project was searching for the right security shape. The standard is now moving toward a sharper inversion: **cognition emits structured artifacts; runtimes reconcile those artifacts against capability, policy, budget, and evidence**.
-
-## The Core Insight
-
-The LLM is not the runtime, orchestrator, or authority boundary. It is a non-deterministic cognitive function. A runtime can use its output only after validation and reconciliation.
-
-**Cognition emits.** Schemas express. Capability snapshots bound what may be requested. Policy gates authorize or refuse. Runtimes execute through explicit endpoints. Observations, receipts, and reconciliation results prove what happened.
-
-This makes Open CoT useful beyond any one framework. An implementation can use Restate, Temporal, a queue worker, a local process, MCP, HTTP, or a custom executor. The portable layer is the schema contract, not the implementation stack.
-
-## What This Repo Contains
-
-| Area | Role |
-|------|------|
-| [`rfcs/`](./rfcs/) | **53 RFCs** covering reasoning traces, tool invocation, governed execution, policy, delegation, receipts, capability manifests, cognitive artifacts, and reconciliation results |
-| [`schemas/`](./schemas/) | Versioned JSON Schemas per RFC, including `registry.json` |
-| [`harness/`](./harness/) | Reference TypeScript core package that exercises earlier governed execution RFCs |
-| [`examples/`](./examples/) | Validated instance fixtures keyed by registry shortname |
-| [`reference/python/`](./reference/python/) | Reference Python tooling |
-| [`tools/`](./tools/) | Schema and fixture validation, registry sync, and RFC helpers |
-| [`standards/`](./standards/) | Human-readable reasoning patterns and evaluation metrics |
-| [`datasets/`](./datasets/) | Conventions and converters for training-ready data |
-| [`benchmarks/`](./benchmarks/) | Tasks, scoring, leaderboards |
-| [`conformance/`](./conformance/) | Conformance and interoperability material |
-| [`docs/`](./docs/) | Architecture, philosophy, contributing, experiments, and launch notes |
-
-For the current architecture framing, see [`docs/architecture.md`](./docs/architecture.md).
-
-## Forward Spine
-
-The newer reconciliation-oriented spine is:
-
-- **RFC 0052** — cognitive artifacts, execution intent, observations, and immutable capability snapshots.
-- **RFC 0053** — reconciliation result envelope and structured error taxonomy.
-- **RFC 0049** — capability manifests, now a predecessor to more precise capability snapshots.
-- **RFC 0041** — policy documents and policy gate semantics.
-- **RFC 0047** — delegation requests, decisions, and authority receipts.
-- **RFC 0048** — execution receipts and audit envelopes.
-- **RFC 0051** — temporal semantics for validity, replay, and ordering.
-
-Older RFCs still matter. RFC 0001, 0003, and 0007 define foundational reasoning, tool invocation, and governed execution concepts. The new RFCs clarify how those ideas become a portable schema layer for reconciliation runtimes.
-
-## Design Principles
-
-- **Typed artifacts over prompt contracts** — model output is structured input, not authority.
-- **Capability snapshots over ambient tools** — cognition sees an explicit inventory and cannot invent endpoints.
-- **Execution intent over direct execution** — proposed work is reconciled before side effects.
-- **Policy gates over schema-only safety** — valid shape is not permission.
-- **Observations and receipts over logs alone** — every side effect should leave replayable evidence.
-- **Implementation neutrality** — Open CoT should not require Restate, MCP, Vercel AI SDK, Open Lagrange, or any specific runtime.
-- **Spec gaps become RFC work** — if an implementation needs a general interface, it belongs here.
-
-## Quick Start
-
-Validate schemas and examples:
-
-```bash
-python3 -m venv .venv && source .venv/bin/activate
-pip install -r requirements-tools.txt
-python tools/validate.py
-```
-
-Run the reference package:
+## Validate
```bash
-cd harness && npm install && npm test
+python3 tools/sync_schemas_from_rfcs.py
+python3 tools/validate.py
+cd harness && npm test
```
-## Open Lagrange Relationship
-
-Open Lagrange is the opinionated TypeScript proving ground for this standard. It uses Restate for durable reconciliation, Zod for runtime boundaries, Vercel AI SDK for structured cognitive artifact generation, and MCP-shaped endpoints for side effects.
-
-That implementation pressure-tests Open CoT. If Open Lagrange needs a portable structure, this repo should receive the RFC/schema update instead of letting a private dialect grow elsewhere.
-
-## Current Status
-
-- **53 RFCs** and a versioned JSON Schema registry.
-- New draft schemas for cognitive artifacts and reconciliation results.
-- Reference package coverage for governed execution, policy, delegation, receipts, budgets, and capability manifests.
-- Cross-language validation tooling for schemas and examples.
-- Experiment cards and local runbooks under [`docs/experiments/`](./docs/experiments/).
-
-## Contributing
-
-See [`docs/contributing.md`](./docs/contributing.md). Normative changes belong in RFCs first; implementations should follow the spec and feed gaps back into it.
-
-## License
-
-This project is licensed under the **MIT License**. See [`LICENSE`](./LICENSE).
+Open Lagrange is the opinionated implementation proving this interface under durable execution, policy gates, endpoint execution, and reconciliation.
diff --git a/conformance/fixtures/fixture_matrix.json b/conformance/fixtures/fixture_matrix.json
index e6000cd..2838ae0 100644
--- a/conformance/fixtures/fixture_matrix.json
+++ b/conformance/fixtures/fixture_matrix.json
@@ -1,30 +1,17 @@
{
- "version": "0.1.0",
"profiles": {
- "A": [
+ "core": [
{
- "shortname": "reasoning",
- "path": "conformance/fixtures/profile_a/reasoning.json"
- }
- ],
- "B": [
- {
- "shortname": "reasoning",
- "path": "conformance/fixtures/profile_b/reasoning.json"
+ "shortname": "cognitive_artifact",
+ "path": "conformance/fixtures/profile_core/cognitive_artifact.json"
},
{
- "shortname": "tool_invocation",
- "path": "conformance/fixtures/profile_b/tool_invocation.json"
+ "shortname": "capability_snapshot",
+ "path": "conformance/fixtures/profile_core/capability_snapshot.json"
},
{
- "shortname": "verifier_output",
- "path": "conformance/fixtures/profile_b/verifier_output.json"
- }
- ],
- "C": [
- {
- "shortname": "dataset_packaging",
- "path": "conformance/fixtures/profile_c/manifest.json"
+ "shortname": "reconciliation_result",
+ "path": "conformance/fixtures/profile_core/reconciliation_result.json"
}
]
}
diff --git a/conformance/fixtures/profile_a/reasoning.json b/conformance/fixtures/profile_a/reasoning.json
deleted file mode 100644
index 88fb40e..0000000
--- a/conformance/fixtures/profile_a/reasoning.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "version": "0.1",
- "task": "Compute 9 * 8.",
- "steps": [
- {
- "id": "s1",
- "type": "calculation",
- "content": "9 * 8 = 72"
- }
- ],
- "final_answer": "72"
-}
diff --git a/conformance/fixtures/profile_b/reasoning.json b/conformance/fixtures/profile_b/reasoning.json
deleted file mode 100644
index 8027a35..0000000
--- a/conformance/fixtures/profile_b/reasoning.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "version": "0.1",
- "task": "What is 17 * 23?",
- "steps": [
- {
- "id": "s1",
- "type": "thought",
- "content": "Break 23 into 20 + 3."
- },
- {
- "id": "s2",
- "type": "calculation",
- "content": "17 * 20 = 340",
- "parent": "s1"
- },
- {
- "id": "s3",
- "type": "calculation",
- "content": "17 * 3 = 51",
- "parent": "s1"
- }
- ],
- "final_answer": "391"
-}
diff --git a/conformance/fixtures/profile_b/tool_invocation.json b/conformance/fixtures/profile_b/tool_invocation.json
deleted file mode 100644
index 59613c0..0000000
--- a/conformance/fixtures/profile_b/tool_invocation.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "tool_name": "search",
- "arguments": {
- "query": "population of Tokyo"
- },
- "result": {
- "output": {
- "population": 13960000
- }
- },
- "triggered_by_step": "s1",
- "observation_step": "s2"
-}
diff --git a/conformance/fixtures/profile_b/verifier_output.json b/conformance/fixtures/profile_b/verifier_output.json
deleted file mode 100644
index 3b0cde5..0000000
--- a/conformance/fixtures/profile_b/verifier_output.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "version": "0.1",
- "trace_id": "trace_001",
- "verifier": "symbolic_math_v1",
- "results": [
- {
- "step_id": "s2",
- "correct": "true",
- "confidence": 0.99
- }
- ]
-}
diff --git a/conformance/fixtures/profile_c/manifest.json b/conformance/fixtures/profile_c/manifest.json
deleted file mode 100644
index 9b76b29..0000000
--- a/conformance/fixtures/profile_c/manifest.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "version": "0.1",
- "name": "conformance-fixture-dataset",
- "description": "Minimal profile C fixture for Open CoT conformance checks.",
- "schemas": {
- "reasoning": "0.1",
- "verifier_output": "0.1",
- "tool_invocation": "0.1",
- "branching": "0.1",
- "reward": "0.1",
- "ensemble": "0.1"
- },
- "counts": {
- "traces": 1,
- "verifier_outputs": 1,
- "ensembles": 0,
- "rewards": 0
- },
- "splits": [
- "train",
- "validation",
- "test"
- ],
- "created_at": "2026-04-14T00:00:00Z",
- "license": "MIT"
-}
diff --git a/conformance/fixtures/profile_core/capability_snapshot.json b/conformance/fixtures/profile_core/capability_snapshot.json
new file mode 100644
index 0000000..41e12f8
--- /dev/null
+++ b/conformance/fixtures/profile_core/capability_snapshot.json
@@ -0,0 +1,18 @@
+{
+ "snapshot_id": "snapshot-1",
+ "created_at": "2026-04-27T15:00:00Z",
+ "capabilities_hash": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "capabilities": [
+ {
+ "endpoint_id": "repo-status",
+ "capability_name": "status",
+ "description": "Read repository status.",
+ "input_schema": {
+ "type": "object"
+ },
+ "risk_level": "read",
+ "requires_approval": false,
+ "capability_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+}
diff --git a/conformance/fixtures/profile_core/cognitive_artifact.json b/conformance/fixtures/profile_core/cognitive_artifact.json
new file mode 100644
index 0000000..08ba221
--- /dev/null
+++ b/conformance/fixtures/profile_core/cognitive_artifact.json
@@ -0,0 +1,39 @@
+{
+ "artifact_id": "artifact-1",
+ "schema_version": "open-cot.core.v1",
+ "capability_snapshot_id": "snapshot-1",
+ "intent_verification": {
+ "objective": "Summarize repository status.",
+ "request_boundaries": [
+ "read-only"
+ ],
+ "allowed_scope": [
+ "inspect files"
+ ],
+ "prohibited_scope": [
+ "write files"
+ ]
+ },
+ "reasoning_trace": {
+ "evidence_mode": "audit_summary",
+ "summary": "The request is read-only and can use the repository status endpoint.",
+ "steps": [
+ {
+ "step_id": "r1",
+ "kind": "interpretation",
+ "content": "Classified as read-only inspection.",
+ "visibility": "audit_summary",
+ "confidence": 0.9
+ }
+ ]
+ },
+ "assumptions": [
+ "Repository access is available."
+ ],
+ "execution_intents": [],
+ "observations": [],
+ "uncertainty": {
+ "level": "low",
+ "explanation": "The requested operation is narrow."
+ }
+}
diff --git a/conformance/fixtures/profile_core/reconciliation_result.json b/conformance/fixtures/profile_core/reconciliation_result.json
new file mode 100644
index 0000000..6719c58
--- /dev/null
+++ b/conformance/fixtures/profile_core/reconciliation_result.json
@@ -0,0 +1,89 @@
+{
+ "reconciliation_id": "recon-1",
+ "status": "completed",
+ "capability_snapshot": {
+ "snapshot_id": "snapshot-1",
+ "created_at": "2026-04-27T15:00:00Z",
+ "capabilities_hash": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "capabilities": [
+ {
+ "endpoint_id": "repo-status",
+ "capability_name": "status",
+ "description": "Read repository status.",
+ "input_schema": {
+ "type": "object"
+ },
+ "risk_level": "read",
+ "requires_approval": false,
+ "capability_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
+ }
+ ]
+ },
+ "artifact": {
+ "artifact_id": "artifact-1",
+ "schema_version": "open-cot.core.v1",
+ "capability_snapshot_id": "snapshot-1",
+ "intent_verification": {
+ "objective": "Summarize repository status.",
+ "request_boundaries": [
+ "read-only"
+ ],
+ "allowed_scope": [
+ "inspect files"
+ ],
+ "prohibited_scope": [
+ "write files"
+ ]
+ },
+ "reasoning_trace": {
+ "evidence_mode": "audit_summary",
+ "summary": "The request is read-only and can use the repository status endpoint.",
+ "steps": [
+ {
+ "step_id": "r1",
+ "kind": "interpretation",
+ "content": "Classified as read-only inspection.",
+ "visibility": "audit_summary",
+ "confidence": 0.9
+ }
+ ]
+ },
+ "assumptions": [
+ "Repository access is available."
+ ],
+ "execution_intents": [],
+ "observations": [],
+ "uncertainty": {
+ "level": "low",
+ "explanation": "The requested operation is narrow."
+ }
+ },
+ "executed_intents": [
+ {
+ "intent_id": "intent-1",
+ "snapshot_id": "snapshot-1",
+ "endpoint_id": "repo-status",
+ "capability_name": "status",
+ "capability_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "risk_level": "read",
+ "requires_approval": false,
+ "idempotency_key": "idem-1",
+ "arguments": {}
+ }
+ ],
+ "skipped_intents": [],
+ "observations": [
+ {
+ "observation_id": "obs-1",
+ "intent_id": "intent-1",
+ "status": "recorded",
+ "summary": "Repository status was read.",
+ "output": {
+ "clean": true
+ },
+ "observed_at": "2026-04-27T15:00:00Z"
+ }
+ ],
+ "errors": [],
+ "final_message": "Completed read-only inspection."
+}
diff --git a/docs/architecture.md b/docs/architecture.md
index 765104e..dba3901 100644
--- a/docs/architecture.md
+++ b/docs/architecture.md
@@ -1,82 +1,14 @@
# Architecture
-Open CoT is a portable schema layer for reconciling non-deterministic cognition with concrete capability.
+Open CoT defines a stable interface between non-deterministic cognition and deterministic execution.
-It does not require a particular runtime, model provider, endpoint protocol, storage backend, or workflow engine. It defines the artifacts that let those systems coordinate safely.
+## Boundary
-## Cognitive Layer vs Runtime Layer
+- Cognition emits a `cognitive_artifact`.
+- The artifact references a `capability_snapshot`.
+- Requested work is expressed as `execution_intent`.
+- Runtime code applies a `policy_gate`, budget bounds, and schema validation.
+- Endpoint results become observations and receipts.
+- The run ends with a `reconciliation_result`.
-| Cognitive layer | Runtime layer |
-|-----------------|---------------|
-| Emits a typed cognitive artifact | Validates and reconciles that artifact |
-| Sees a capability snapshot | Discovers and signs capability inventory |
-| Proposes execution intent | Applies policy, budget, and preconditions |
-| Produces explanatory reasoning trace | Treats trace as audit material, not proof |
-| Consumes observations | Executes endpoints and records receipts |
-
-The boundary is intentionally asymmetric. Cognition may propose. Runtime reconciles.
-
-## Core Data Flow
-
-The current forward path is:
-
-`Capability discovery` → **Capability Snapshot** → `Cognitive step` → **Cognitive Artifact** → `Runtime validation` → `Policy gate` → `Endpoint execution` → **Observation** → **Reconciliation Result** → `Receipts / audit`.
-
-The cognitive step receives only the capability snapshot and prior observations. It does not receive ambient authority, live tool handles, filesystem access, credentials, or transport configuration.
-
-## Primary Artifacts
-
-1. **Capability Snapshot** — Immutable inventory of available endpoints. Each capability carries server name, capability name, JSON-schema-compatible input shape, optional output shape, risk level, approval requirement, and stable digest.
-2. **Cognitive Artifact** — Structured proposal emitted by a model-like component. It includes intent verification, assumptions, reasoning trace, execution intent, uncertainty, observations, and optional yield reason.
-3. **Execution Intent** — A requested endpoint action bound to a specific snapshot ID and capability digest.
-4. **Policy Gate Result** — Runtime authorization result. Shape validation does not imply permission.
-5. **Observation** — Structured record of endpoint output, skipped work, validation failure, or policy refusal.
-6. **Reconciliation Result** — Final envelope describing completed, yielded, approval-required, failed, or completed-with-errors outcomes.
-7. **Receipts and Audit Envelopes** — Integrity-backed execution and lifecycle evidence from RFC 0048 and related RFCs.
-
-## Trust Boundaries
-
-| Source | May supply | Must not supply |
-|--------|------------|-----------------|
-| Cognitive function | Structured artifact, execution intent, assumptions, explanation | Authority, forged receipts, endpoints outside the snapshot |
-| Runtime | Validation, reconciliation, policy gates, endpoint dispatch, observations | Silent policy bypass, hidden side effects |
-| Policy layer | Allow, deny, narrow, approval, yield semantics | Direct endpoint side effects |
-| Endpoint executor | Endpoint output, errors, metadata | Expanded authority or altered snapshot semantics |
-| Audit layer | Integrity and replay evidence | Retroactive mutation of prior artifacts |
-
-## Validation Order
-
-A conforming reconciliation runtime should evaluate execution intent in this order:
-
-1. Validate the cognitive artifact shape.
-2. Confirm the referenced snapshot ID.
-3. Confirm endpoint server and capability names exist in the snapshot.
-4. Confirm the capability digest.
-5. Validate arguments against the original capability input schema.
-6. Apply policy gates.
-7. Check approval requirements, risk, budget, and preconditions.
-8. Execute the endpoint through the runtime boundary.
-9. Validate endpoint result shape when available.
-10. Record observation, receipt, and reconciliation result.
-
-## Normative vs Reference
-
-- **Normative:** RFC text and JSON Schemas under `schemas/`.
-- **Reference:** TypeScript harness, Python helpers, examples, and downstream implementations such as Open Lagrange.
-
-Open Lagrange is an opinionated implementation: Restate for durable execution, Zod for runtime validation, Vercel AI SDK for structured generation, and MCP-shaped endpoint execution. Those choices prove the standard under pressure, but they are not required by Open CoT.
-
-## RFC Map
-
-- **RFC 0052** — Cognitive artifact and capability snapshot.
-- **RFC 0053** — Reconciliation result and error taxonomy.
-- **RFC 0049** — Capability manifest precursor and model-facing capability projection.
-- **RFC 0041** — Policy documents and policy gate inputs.
-- **RFC 0047** — Delegation and authority material.
-- **RFC 0048** — Execution receipts and audit envelopes.
-- **RFC 0051** — Temporal semantics, validity, replay, and ordering.
-- **RFC 0001 / 0003 / 0007** — Foundational reasoning, tool invocation, and governed execution lineage.
-
-## Closing Note
-
-The standard should make implementations interchangeable at the artifact boundary. If a runtime discovers a missing portable concept, that concept should become an Open CoT RFC/schema change rather than a private extension.
+Reasoning is evidence for audit and review. It cannot grant permission, execute endpoints, or override policy.
diff --git a/docs/conformance-fixtures.md b/docs/conformance-fixtures.md
index 8168672..fcd6668 100644
--- a/docs/conformance-fixtures.md
+++ b/docs/conformance-fixtures.md
@@ -1,6 +1,6 @@
# Conformance Fixtures
-Open CoT includes executable fixtures aligned to profile levels from RFC 0046.
+Open CoT includes executable fixtures aligned to the compact core conformance profile.
## Fixture Matrix
@@ -13,9 +13,8 @@ python3 tools/check_conformance_fixtures.py
## Profiles
-- **Profile A** (`conformance/fixtures/profile_a`): core reasoning trace validation
-- **Profile B** (`conformance/fixtures/profile_b`): reasoning + tool invocation + verifier output
-- **Profile C** (`conformance/fixtures/profile_c`): dataset packaging manifest
+- **Core profile** (`conformance/fixtures/profile_core`): cognitive artifact,
+ capability snapshot, and reconciliation result validation.
## Why this exists
@@ -25,4 +24,4 @@ These fixtures provide stable, versioned examples for:
- quickstart validation
- downstream implementation testing
-This keeps profile claims auditable and reduces ambiguity for adopters integrating Open CoT in training/evaluation pipelines.
+This keeps profile claims auditable and reduces ambiguity for adopters integrating Open CoT at runtime boundaries.
diff --git a/docs/contributing.md b/docs/contributing.md
index b81b84e..38ce9f3 100644
--- a/docs/contributing.md
+++ b/docs/contributing.md
@@ -1,88 +1,15 @@
# Contributing
-Thank you for helping improve open-cot.
+Open CoT accepts changes that strengthen the compact Cognitive Operations Theory core.
-## Principles
+## Required Pattern
-- Prefer changes that align with `schemas/rfc-0001-reasoning.json` (RFC 0001) or propose a schema bump with clear migration notes.
-- Keep benchmark tasks and scoring reproducible; document expected inputs and outputs.
-- Match existing tone and structure in docs under `docs/` and `standards/`.
+- Update the RFC markdown first.
+- Embed normative JSON Schema inside `` and `` markers.
+- Run `python3 tools/sync_schemas_from_rfcs.py` and commit generated schemas.
+- Add or update a valid example under `examples/