v0.2.0 — the requirement status lifecycle
Plumbline v0.2.0 — the requirement status lifecycle.
This release lands ADR 004's full maturity × coverage model: status is the requirement's maturity, orthogonal to whether code fulfils it.
Added
- Requirement status —
draft→proposed→approved(committed) →rejected, honouring OFT'sStatusattribute as a first-class axis. - Dead-end detection — an
approveditem that declares noNeedsnow fails, instead of faking 100% coverage. - Maturity gate policy — code against a not-yet-approved item is a warning (build-ahead, or status-lag when fully covered), never a failure; code anchoring a
rejecteditem is zombie code (a hard fail, distinct from a broken anchor). - Spec-debt budget — bound un-built spec (not-yet-approved
feat/req) viamaxProposed/maxProposedPctinplumbline.json.
Changed
- Breaking: a register item with no
Status:now defaults toproposed, notapproved— a requirement is enforced only when explicitlyStatus: approved. Pre-1.0, so a minor bump. - The
audit,maintainandonboardskills are fully fluent in the model (scoring over the approved set, the planned-vs-realised burndown, status transitions).
Install (Claude Code)
/plugin marketplace add https://github.com/dr-zog/plumbline.git#dist
/plugin install plumbline@plumbline
Plumbline traces itself (100%). MIT licensed. Full detail in the changelog.