Section pages
DIALECTICA · the capsule engine · open source · Rust
Compile sources into reviewable context.
Research and architecture in development. This page explains our design direction. It is not a list of completed PRAXIS capabilities. See the documented product capabilities and open work.
DIALECTICA is the Rust ingestion and knowledge engine in development behind Context Capsules. It connects source records, typed graph proposals, validation and human review into an inspectable build process.
The local engine exposes schemas, a CLI, and an MCP interface. The reference examples below explain that development path; they do not establish hosted availability or complete integration with PRAXIS.
The pipeline
From sources to a reviewed capsule
Six stages, one invariant: models propose, humans decide, the compiler is deterministic. Typed artifacts let a reviewer inspect each stage.
- 01
Source pack
Documents are normalized into a content-addressed pack: every file hashed, every span addressable, rights recorded. Source references are retained for later inspection.
source_pack.json · spans · sha256 per document
- 02
Extraction proposals
Models read the pack and propose — claims, episodes, graph edges, ontology terms, reasoning devices, language rules. Proposals are typed records with confidence and source spans. Models propose records; acceptance belongs to the review and promotion stages.
extraction_proposals.jsonl · proposal boundary (ADR-007)
- 03
Review gates
A human expert decides: approve, approve with caveats, or reject — per record. The design records the reviewer’s role and reasoning alongside each decision, so later readers can inspect how a record was accepted.
reviewer_decisions.json · review_queue.json
- 04
Promotion
Approved records enter the canonical ledgers. Rejected proposals remain traceable so the next analyst can inspect both decisions.
promoted_record_set · promotion_summary.json
- 05
Deterministic compile
Deterministic compilation aims to produce the same bundle from the same approved inputs and toolchain. Reproducibility lets reviewers compare versions and check integrity.
manifest · ledgers · graph.jsonld · embedded graph
- 06
Archive & packs
The bundle is packaged as a portable .capsule archive. PRAXIS context packs, agent skills, and MCP resources are intended consumption paths; each adapter needs its own integration checks.
.capsule (mimetype-first zip) · context packs
A model-generated record can look convincing and still misread its source. Keeping proposals separate from accepted records gives a reviewer a place to inspect the evidence, record a reservation, or reject an interpretation before it is reused.
The technical idea
Give the next task a record
it can reason from.
Retrieval finds relevant material. Structure makes its meaning, relationships, and review state explicit. Explore how the parts are intended to work together.
Your evidence
Keep a claim close to its source.
Documents, passages, authors, and dates are the starting point. A statement should retain its origin and access boundary as it moves into structured knowledge.
- Receives
- Approved documents and a defined question
- Produces
- Source records with stable references
- Quality question
- Can a reviewer recover the passage and its context?
Illustrative record · Sources
- source id
- source-01
- passage
- The extension has been requested, not approved.
- record type
- statement
- access
- approved_for_this_task
Inspect the illustrative JSON
{
"source_id": "source-01",
"passage": "The extension has been requested, not approved.",
"record_type": "statement",
"access": "approved_for_this_task"
}Teaching example. This is not a production schema or an API response.
Architecture under development. Integration and portability require end-to-end validation.
Current capabilitiesNine architecture responsibilities
Why layered graphs, not one big graph
A single undifferentiated graph collapses things that must never be confused: what a source said, what an analyst concluded, when each became known, and which method produced the judgment. The proposed architecture separates nine responsibilities; the compiled historical reference has eight layers and no separate memory layer. These counts are a dated crosswalk, not a claim of nine deployed graphs.
The payoff is precision on both sides of the human-machine boundary: an agent can cite at the right level (this claim, from this span, under this trust rule), and a human can contest at the right level (the source is fine; the inference is wrong; the method was misapplied).
g:evidenceEvidence— What was actually said, whereAppend-only. Sources, spans, hashes, retrieval timestamps, rights. The bedrock — nothing above it may exist without a pointer into it.
g:claimsClaims— Atomic, typed assertionsEach claim binds subject–predicate–object to a source span, carries confidence, corroboration, a trust tier (T1 vetted / T2 corroborated / T3 needs corroboration), and a disputed flag that must surface downstream.
g:situationSituation— Entities and relationsThe who-relates-to-whom graph: actors, institutions, instruments, places. Edges carry confidence, temporal scope, and review state — relations are claims too.
g:temporalTemporal— Episodes, intervals, causalityTwo clocks on everything (occurred-at vs known-at), Allen-13 interval relations between episodes, boundary events, explicit causal links, supersession chains.
g:ontologyOntology— The vocabulary of the domainThe kernel grammar plus capsule-specific extensions, generated as an ontology blueprint per capsule and mapped with confidence and review state. The semantic layer agents reason against.
g:reasoningReasoning— How the expert thinksTyped, attributed devices, heuristics and critique prompts record which method informed an analysis.
g:memoryMemory— How the capsule was builtSemantic, episodic, and procedural build memory: what was proposed, what was asked, what was decided. The capsule remembers its own making.
g:governanceGovernance— Who vouches, and how stronglyTrust tiers, review ledger, sign-off, recorded dissent. Verification is a workflow, and this layer is its record.
g:runtimeRuntime— The contract for any consumerCitation rules (T1 assert · T2 attribute · T3 hedge), must-cite and must-surface-disputed flags, retrieval and composition policy. The capsule tells the agent how it may be used.
The embedded graph · Ladybug
Inspect the reference capsule’s embedded graph
Alongside the semantic JSON-LD, the compiler builds a read-only Ladybug projection — capsule.lbug — an embedded graph database queryable with Cypher, no server required. It is digest-pinned to the source graph: if the semantic layer changes, the projection is rebuilt and both hashes are recorded. The snippets below are from the actual reference capsule, not mockups.
schema.cypher — every node and edge carries review state and source spans
CREATE NODE TABLE CapsuleNode( id STRING, node_type STRING, label STRING, review_state STRING, source_span_ids_json STRING, properties_json STRING, PRIMARY KEY(id)); CREATE REL TABLE CapsuleEdge( FROM CapsuleNode TO CapsuleNode, id STRING, edge_type STRING, confidence DOUBLE, temporal_scope_json STRING, source_span_ids_json STRING, review_state STRING, explanation STRING);
queries.cypher — traversal without infrastructure
MATCH (n:CapsuleNode) RETURN count(n) AS node_count; MATCH (a:CapsuleNode)-[e:CapsuleEdge]->(b:CapsuleNode) RETURN a.id, e.edge_type, b.id LIMIT 50;
projection_manifest.json — digest-pinned, rebuildable
"engine": "ladybug", "database_path": "graph/ladybug/capsule.lbug", "source_graph_digest": "sha256:f28a32eceba22140f2e14a19508e4bd8…", "projection_digest": "sha256:8ee639b5cec225f95127ab60250fc611…", "read_only": true, "rebuildable": true
Each capsule type gets a graph profile suited to what it holds:
User
user_context_graph_v1role, mandate, audiences, standing positions
Situation
situation_graph_v1actors, claims, episodes, contradictions
Tool
tool_method_graph_v1devices, heuristics, traps, their dependencies
Output
output_trace_graph_v1contracts, exemplars, citation lineage
Temporal semantics
Two clocks, thirteen relations
Every claim carries two timestamps: when the thing happened (valid time) and when the capsule learned it (observation time). The separation is what lets analysis be honest about its own past — “what did we know on the 14th?” is a query, not an argument. Episodes relate through Allen’s thirteen interval relations, and superseded claims chain to their successors instead of disappearing.
A claim from the reference capsule, both clocks visible
“The regional army command publicly rejected the certification.”
clm_army_rejects_certification
valid time
valid_from: 2026-05-12
valid_to: null (no end recorded)
observation time
observed_at: 2026-05-12T10:30Z
superseded_by: null
Episode relations use the Allen-13 vocabulary — BEFORE, MEETS, OVERLAPS, DURING, STARTS, FINISHES, EQUALS, and their inverses — so “the offensive overlapped the talks” is typed structure, not prose. See the temporal-vision note for the full discipline.
Ontology & semantic layers
A kernel grammar, extended per capsule
The semantic layer starts from a kernel of eight typed primitives — the grammar practitioners actually think in — and grows a capsule-specific ontology blueprint on top: domain terms proposed during extraction, mapped with confidence, and promoted through the same review gates as everything else. The kernel is stable and MIT-licensed; the extensions are local, versioned, and provenance-mandatory.
The nine capsule layers and the eight kernel primitives are orthogonal: primitives are the vocabulary, layers are the epistemics. A Commitment is a primitive; whether it sits in claims (asserted), temporal (scheduled), or governance (reviewed) depends on what kind of statement is being made about it. Full formal treatment: the grammar and Ontology-Augmented Generation.
Determinism & integrity
Reproducible builds and the limits of a hash
Reproducible compilation makes changes inspectable: the inputs, toolchain, and output must be recorded together. The proposed integrity envelope (ADR-009) adds a Merkle root over the bundle, Ed25519 signatures, and a future capsule verify. The reference capsule includes a SHA-256 digest, and the Seal you see in the viewer is drawn from that hash. A matching digest helps detect changes to the artifact; it does not establish that its claims are true or that its author is trusted.
Capsule anatomy, for reference: evidence · claims · graph · temporal · ontology · reasoning · memory · governance · runtime.