The three silent failure modes
Long-lived memory and retrieval systems rarely break loudly. They drift. This kit ships synthetic fixtures that pin down the three ways they go wrong:
- Forgetting — a stale or lost fact is returned in place of the current one.
- Chronology — facts come back in the wrong time order.
- Entity confusion — a fact is attributed to the wrong entity.
Read the full methodology → — the exact checks each mode runs and how the tri-state verdict is assigned. Worked examples: forgetting, chronology, entity confusion. New to the terms? Start with the glossary.
How it works
- Deterministic evaluator. Same input, byte-identical report. No randomness, no wall-clock, no network, no datastore.
- Honest tri-state verdicts.
unknownis first-class — missing evidence never fabricates a pass or a fail. - Reproducible receipts. Every run carries a sha256 digest so a result is auditable and replayable.
- Versioned contract. Fail-closed on contract drift; adapters normalize external payloads under documented input caps and sandbox isolation.
- Whole-suite CI gate. Point the CLI at a directory to gate an entire fixture suite in one command.
Quick start
The local CLI and fixtures are free and self-serve. Writing your own cases? See the fixture-authoring guide. Clone the repo and run:
# Evaluate one fixture-run (exit code = verdict: 0 pass / 1 fail / 2 unknown / 3 contract error)
node src/cli.mjs fixtures/forgetting/negative-stale-value.json --human
# Gate a whole suite in CI (recursive; precedence error > fail > unknown > pass)
node src/cli.mjs fixtures/chronology --human
Status
The free local fixture kit is the product today. Hosted history and team CI policy
are a later, authentication-gated layer; billing stays disabled until those gates pass.
Contract version 1, evaluator
1.0.0.