Replace us.
We designed it that way.
The Knowledge Platform Contract v2 defines every interface between Canon Engine and its consumers. Any system that conforms to this contract can substitute for Canon Engine. Any system that consumes it can be substituted for the orchestration layer. This is the boundary that makes both independently valuable.
Products get replaced.
Contracts survive.
Most knowledge platforms create lock-in through proprietary APIs, custom query languages, and undocumented storage schemas. When you outgrow them or they shut down, you migrate everything.
Canon Engine inverts this. The contract is the product. The implementation is one way to fulfill it. If Google ships an enterprise knowledge layer tomorrow that conforms to the Knowledge Platform Contract, your orchestration layer doesn't change. Not a line.
Clear ownership. No ambiguity.
Ten sections. Every interface defined.
Knowledge Source Types
Four categories of knowledge, each with its own ingestion path, storage schema, and enrichment profile.
Canon Vault Documents
Frontmatter schema, document types, vault structure, path conventions, and lifecycle states.
Ingestion Interface
Typed payloads for transcript, email, and document ingestion with idempotency guarantees.
Enrichment Contract
Per-source enrichment profiles, output schemas, and the invariant that Canon docs are never enriched.
Obligation Registers
The primary operational interface between Canon Engine and execution systems.
Change Events
Typed change sets emitted when vault content changes: added, modified, deleted, superseded.
Query Interface
Three query modes: file-based (local), vector (semantic), structured (record-level).
Chunking Contract
Source-specific chunking strategies, speaker-boundary awareness, and unified chunk schema.
Governance Invariants
Six non-negotiable constraints, status lifecycle, and the stewardship rule.
Storage Ownership
Which tables Canon Engine owns, which the consumer owns, and the shared surface.
Build on the contract.
If you're evaluating knowledge infrastructure for agentic systems and you want governed truth instead of undifferentiated vectors — let's talk.
Start a Conversation →