STATE.md Frontmatter (Phase Lifecycle)
STATE.md carries YAML frontmatter that the status-line hook reads on every render. v1.40 adds four optional phase-lifecycle fields read by parseStateMd() and rendered by formatGsdState():
| Field | Type | Purpose |
|---|---|---|
active_phase | string (e.g. "4.5") | Phase number when an orchestrator command is in flight |
next_action | string | Recommended next command when idle (discuss-phase / plan-phase / execute-phase / verify-phase) |
next_phases | YAML flow array | Phases the next_action applies to (e.g. ["4.5"]) |
progress | block | Nested total_phases / completed_phases / percent for the milestone progress bar |
All four fields are optional and additive — STATE.md files without them keep rendering exactly as in v1.38.x. See STATE-MD-LIFECYCLE.md for the full field reference, parser constraints, and rendering scenes.