newspaper_wedding/.aidlc/sensors/aidlc-upstream-coverage.md
Andrew Ridgway bec1eaac87
Some checks failed
Test / test (push) Has been cancelled
first pass at the newspaper builder
2026-09-14 11:57:22 +10:00

1.6 KiB

id, kind, command, default_severity, fire_on, description, category, matches, input_schema, output_schema, timeout_seconds
id kind command default_severity fire_on description category matches input_schema output_schema timeout_seconds
upstream-coverage deterministic aidlc engine sensor-upstream-coverage advisory gate Checks the stage's deliverables reference the upstream artifacts the stage frontmatter declares it consumes document-shape **/{aidlc-docs,intents}/**
output_path stage_slug consumes deliverables
string string string[] string[]
pass unreferenced_artifacts
boolean string[]
5

upstream-coverage sensor

Reads the stage frontmatter consumes: list and checks the stage's deliverables reference each upstream artifact. A reference counts in any of the forms the framework's artifacts actually use:

  • the artifact slug as a standalone token (not embedded in a longer kebab token: requirements inside nfr-requirements does not count)
  • a wikilink ([[<slug>]]) or backticked filename (`<slug>.md`)
  • the producing stage's directory as a path segment (e.g. a provenance header citing nfr-requirements/ covers every artifact that stage produces)

Coverage is a property of the stage's whole output, not of each file: the check runs over the union of the stage's declared deliverables in the output directory (scaffolding - *-questions.md, *-timestamp.md, memory.md - is excluded from both sides), so a citation in a sibling deliverable counts.

Pure derivation from frontmatter - no per-stage config needed.

Failure mode

Emits SENSOR_FAILED and writes detail listing artifacts declared in consumes: that appear in none of the stage's deliverables in any accepted form.