Observed 2026-09-08 while cleaning up the graph after v0.37.0.
What happens
forgeplan health reports 10 phase mismatches. Seven are EvidencePacks:
EVID-133, EVID-134, EVID-135, EVID-148 phase: validate
EVID-149, EVID-150, EVID-151 phase: shape
The other three are PRD-082, PRD-083, PROB-083 — those are ordinary and not what this issue is about.
Why the evidence ones are a category error
The greenfield workflow (crates/forgeplan-core/src/phase/mod.rs:100-127) is:
Shape → Validate → Adi → Code → ... → Evidence → Done
An EvidencePack is the output of the Evidence phase. Asking one to walk through Adi (produce a decision) and Code (write the implementation) describes work an evidence pack does not do and never will. forgeplan phase EVID-133 even suggests --to adi as the next step, which is advice to record something that did not happen.
So these seven are not stalled. They are complete artifacts being measured against a lifecycle that was designed for PRDs.
How they surfaced
Four of the seven (EVID-133/134/135/148) appeared in the mismatch list today, as a direct result of activating 51 evidence packs that had been stuck in draft only because of the leaf-EVID scoring defect (#325, fixed in v0.37.0). Activating them was correct; the mismatch report is the phase model noticing they are now active with a phase that was never advanced past validate in May.
I deliberately did not advance their phases. Running phase-advance ... --to adi on an evidence pack would write false workflow history — a record saying it went through ADI when it did not. The count being wrong is better than the history being wrong.
Why it is worth fixing rather than tolerating
The phase machine is advisory by design (mod.rs:1, and PROB-029 already downgraded mismatches from critical to advisory). Nothing is blocked. But seven of ten entries in a report being structurally-impossible-to-resolve is how a signal becomes noise, and noise trains people to skip the whole section — including the three entries that are real.
Fix direction
Either:
- Kind-aware phases — evidence/note/problem get a shorter workflow, or none. The module already anticipates this:
workflow_type: greenfield is documented as "currently the only one", so the extension point exists.
- Or exclude non-PRD-shaped kinds from the mismatch check — cheaper, and honest, if a full second workflow is more than this is worth.
Measure first: how many of the 167 evidence packs would be flagged once more of them get activated? Today it is seven because most evidence is still draft. That number grows as the graph gets tidied, so this gets louder, not quieter.
Refs: PRD-056, EPIC-005, PROB-029, #325, v0.37.0
Observed 2026-09-08 while cleaning up the graph after v0.37.0.
What happens
forgeplan healthreports 10 phase mismatches. Seven are EvidencePacks:The other three are PRD-082, PRD-083, PROB-083 — those are ordinary and not what this issue is about.
Why the evidence ones are a category error
The greenfield workflow (
crates/forgeplan-core/src/phase/mod.rs:100-127) is:An EvidencePack is the output of the Evidence phase. Asking one to walk through
Adi(produce a decision) andCode(write the implementation) describes work an evidence pack does not do and never will.forgeplan phase EVID-133even suggests--to adias the next step, which is advice to record something that did not happen.So these seven are not stalled. They are complete artifacts being measured against a lifecycle that was designed for PRDs.
How they surfaced
Four of the seven (EVID-133/134/135/148) appeared in the mismatch list today, as a direct result of activating 51 evidence packs that had been stuck in draft only because of the leaf-EVID scoring defect (#325, fixed in v0.37.0). Activating them was correct; the mismatch report is the phase model noticing they are now
activewith a phase that was never advanced pastvalidatein May.I deliberately did not advance their phases. Running
phase-advance ... --to adion an evidence pack would write false workflow history — a record saying it went through ADI when it did not. The count being wrong is better than the history being wrong.Why it is worth fixing rather than tolerating
The phase machine is advisory by design (
mod.rs:1, and PROB-029 already downgraded mismatches from critical to advisory). Nothing is blocked. But seven of ten entries in a report being structurally-impossible-to-resolve is how a signal becomes noise, and noise trains people to skip the whole section — including the three entries that are real.Fix direction
Either:
workflow_type: greenfieldis documented as "currently the only one", so the extension point exists.Measure first: how many of the 167 evidence packs would be flagged once more of them get activated? Today it is seven because most evidence is still
draft. That number grows as the graph gets tidied, so this gets louder, not quieter.Refs: PRD-056, EPIC-005, PROB-029, #325, v0.37.0