Part V · Contracts · Plate 03

engram.ote.v1

On this page

3. Engram Cognitive Provisioning (engram.ote.v1) & MCP Contract

3.1 engram.ote.v1 TOML Schema

Every seat in Cortex / OpenRig is provisioned with an OteSpec TOML manifest:

schema_version = "engram.ote.v1"

[seat]
seat_id = "seat:core-exec-01"
archetype = "archetype:general"
keyspace_budget_tokens = 2000

[ontology]
domain = "acme-core"
allowed_kinds = ["invariant", "architecture", "decision", "known_process", "procedure", "incident"]
entity_patterns = ["ADR-\\d{4}", "K\\d{2}"]

[[topology.mounts]]
ring = "M0" # M0 (Fleet Canon) -> M1 (Archetype) -> M2 (Repo) -> M3 (Team) -> M4 (Seat)
ring_id = "canon:shared" # pre-S2 stores used canon:fleet; `engram migrate --rings` moves them
access = "read_only"
budget_share_pct = 20

[epistemology]
credible_z = 1.96
graduation_lcb_threshold = 0.78
graduation_min_samples = 8.0
nomination_lcb_threshold = 0.85
nomination_min_verifications = 5

# Optional (Engram S5): the trust anchor for attested sealed_* / human_* outcomes. Without it no
# attested event can be verified, so nothing new graduates (existing graduations are held on the
# full posterior) and `engram status` reports "graduation: blocked (no attested evidence)".
[attestation]
allowed_signers = ".engram/attestors" # OpenSSH allowed_signers; absolute or relative to this file; never a git ref
reverify_fraction = 0.2               # share of first-try rubric accepts tagged for a sealed re-run

[retrieval]
embedding_provider = "remote-openai" # Requires an explicit endpoint or THALAMUS_URL; no default URL
embedding_model = "qwen3-embedding-8b"
embedding_dims = 128
fail_open = true

[retrieval.reranker]
enabled = true
provider = "vllm-rerank" # Requires an explicit endpoint or THALAMUS_URL; no default URL
model = "qwen3-reranker-8b"
prompt_template = "qwen3_reranker_chatml"
candidates_k = 20
guaranteed_dense_k = 5

Ring ids cns init writes (S5 revision 3). Engram's default store is one database per HOME, so a ring id that two repositories share is one ring for both. cns init therefore keeps only M0, M1 and M3 at Engram's built-in ids (engram default-ote). It derives M2 from the repository: repo: plus the first 16 hex digits of its root commit id (the lexically first root when the history has several). A repository with no commit gets a generated 16-hex id, which cns init prints and which stays in .engram/ote.toml. M4 is the seat id cns init writes in [seat] (seat:<domain>-implementer): Engram names a seat's own ring by its seat id and scopes M4 evidence to the seat whose id equals the ring id. cns init never rewrites an existing .engram/ote.toml. deploy/test-s5-ote-template.sh asserts the shape and the isolation of two repositories under one HOME.

Disclosed, not fixed: forks share an M2 ring. A fork or a second clone has the same root commit, so on one machine it mounts the same M2 ring as the original and each recalls the other's repository memories. Two repositories whose directory names give the same domain (or that pass the same --domain) get the same seat id and so share an M4 ring.

3.2 Engram MCP Tools (engram mcp)