Skip to main content

Audit files of the kit verification lots

One file per lot, <lot>.yaml, owned by that lot only. Its entries replace the default mapping of tools/traceability/mapping_source.py for the requirements it lists. Format:

requirements:
FOUN-006:
component: api-contracts
state: existing # existing | partial | absent | broken | blocked
paths: [services/control-plane/src/eai/api_openapi.py]
tests: [services/control-plane/tests/test_api_openapi.py::test_breaking_change_needs_a_major_bump]
docs: [docs/api/control-plane-v1.md]
migrations: [] # file names under sql/postgres, or a path under navin-manager/server/sql
routes: ["GET /v1/telemetry/slo"] # must exist in the Control Plane or Platform Manager API surface
ui: ["studio/policies"]
evidence: [E-FL-API] # evidence sets of evidence.yaml or evidence.d/<lot>.yaml
residual: {fr: "...", en: "..."} # only while work remains
blocked: {fr: "... [B-CLUSTER]", en: "... [B-CLUSTER]"} # only for a missing resource or a client decision
notes: {fr: "what proves the acceptance criterion", en: "..."}
blockers: # optional, new cross-cutting blockers only
B-EXAMPLE: {title: {fr: ..., en: ...}, detail: {fr: ..., en: ...}, needed: {fr: ..., en: ...}, exit: {fr: ..., en: ...}}

Validate a file with services/control-plane/.venv/bin/python tools/traceability/mapping_source.py --validate docs/implementation/audit/&lt;lot&gt;.yaml docs/implementation/evidence.d/&lt;lot&gt;.yaml. A requirement becomes PASSED only when tools/traceability/trace.py run records a green run of every evidence set it cites, with no residual and no blocker.