v0.39.0
PR view: lifecycle stepper refinements (#216)
- Context-aware segments: an apply run's housekeeping phases (warming/initializing/classify/report) fold into the apply segment as a sub-phase detail — a running apply no longer re-activates the done plan side; "now" is per-execution.
- Relevance-gated bar: plan-only PRs render a plan-only bar (no apply/verify noise);
movesshows only when the plan detected state moves;initonly when observed. - Real progress: the active plan/apply segment partially fills with k-of-N stack progress and shows the % in the caption.
- Plain-language phases: every segment carries a human description in the tooltip and the under-bar caption.
- Stage badge: PLANNING / AWAITING APPROVAL / APPLYING / APPLIED / … next to the tier name.
- Honest no-change claims: counts-known gating during apply; the tagline falls back to the plan rollup pre-classify.
Wire: LifecyclePhase gains optional detail + progress_pct (additive). Serve/UI-side only — no runner behavior change.