Traceability

The documentation is modelled with sphinx-needs:

        flowchart RL
  req[Requirement] -- satisfies --> feat[Feature]
  spec[Specification] -- implements --> req
  api[Endpoint] -- implements --> feat
  api -. implements .-> req
    

Schema validation (schemas.json) enforces the solid edges at build time: every requirement satisfies a feature, every specification implements a requirement, and every endpoint declares its method, route and policy and implements a feature. The build also emits needs.json for downstream tooling.