trace-manifest.org

trace-manifest.json

A portable record of intent, build, and proof

A trace-manifest is one JSON file that records a project's traceability matrix: every durable requirement ID, what proves it, what carries it as open work, and whether the whole chain from intent to build to proof holds. An emitter writes it; a viewer renders it; the file itself is the record.

The format is deliberately vendor-neutral. format: "trace-manifest" plus schemaVersion are the interop contract — any tool honoring the schema can write one, and any viewer can read the result without knowing which tool wrote it.

Versions

VersionStatusSpecJSON Schema
v4stable/spec/v4//schema/v4.json
v5beta — interop rev/spec/v5//schema/v5.json

v5 is additive: every new field is optional, and a valid v4 file is a valid v5 file minus the new fields. The rev exists to open the format to emitters whose models differ from the reference implementation — explicit tier and parents edges instead of ID-prefix conventions, a generalized origin for ledger-minted IDs, durable code anchors, and an ext escape hatch. Writing an emitter? Start with the conformance checklist.

The smallest honest manifest

{
  "format": "trace-manifest",
  "schemaVersion": 5,
  "emitter": { "name": "your-tool", "version": "1.0.0" },
  "gate": { "ok": true, "failures": [] },
  "rows": [
    {
      "id": "AC-SYNC-01",
      "tier": "criterion",
      "parents": ["FR-SYNC-01"],
      "status": "proven",
      "statement": "Offline edits reconcile without loss.",
      "proofs": [{ "name": "test_AC_SYNC_01_reconcile", "path": "tests/sync_test.py", "line": 51 }]
    }
  ]
}

Status core

Four values, fixed across versions. Viewers key color on status and nothing else; emitters with a different native model map onto it and may record their own term in nativeStatus.

StatusMeaning
provenA named carrier exists — not "tests ran green"
tracked-debtWork started, proof missing, excused by an open task
GAPA criterion with neither proof nor open debt — the gate refuses
backlogPlanning altitude; visible, not a silent gap

Files

Who writes it, who reads it

The practice lineage is the software requirements-traceability matrix — not OMG ReqIF, not OSLC, not a certification claim. One file, one shape, readable at rest.