From 66e3cf87fe6df219f6b55a7f74d8f6b9800f55b6 Mon Sep 17 00:00:00 2001 From: Tibsfox Date: Wed, 1 Apr 2026 14:35:57 -0700 Subject: [PATCH] fix(autonomous): clarify phase count display to prevent misleading N/T (#1516) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When phase numbers are globally sequential across milestones (e.g., phases 61-67), the banner showed "Phase 63/5" where 5 was the count of remaining phases — easily mistaken for "63 out of 5 total." Clarify that T must be total milestone phases and add fallback display format for when phase numbers exceed the total count. Co-Authored-By: Claude Opus 4.6 (1M context) --- get-shit-done/workflows/autonomous.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/get-shit-done/workflows/autonomous.md b/get-shit-done/workflows/autonomous.md index c6363a32f..b13e36c9d 100644 --- a/get-shit-done/workflows/autonomous.md +++ b/get-shit-done/workflows/autonomous.md @@ -136,7 +136,9 @@ For the current phase, display the progress banner: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ``` -Where N = current phase number (from the ROADMAP, e.g., 6), T = total milestone phases (from `phase_count` parsed in initialize step, e.g., 8), P = percentage of all milestone phases completed so far. Calculate P as: (number of phases with `disk_status` "complete" from the latest `roadmap analyze` / T × 100). Use █ for filled and ░ for empty segments in the progress bar (8 characters wide). +Where N = current phase number (from the ROADMAP, e.g., 63), T = total milestone phases (from `phase_count` parsed in initialize step, e.g., 67). **Important:** T must be `phase_count` (the total number of phases in this milestone), NOT the count of remaining/incomplete phases. When phases are numbered 61-67, T=7 and the banner should read `Phase 63/7` (phase 63, 7 total in milestone), not `Phase 63/3` (which would confuse 3 remaining with 3 total). P = percentage of all milestone phases completed so far. Calculate P as: (number of phases with `disk_status` "complete" from the latest `roadmap analyze` / T × 100). Use █ for filled and ░ for empty segments in the progress bar (8 characters wide). + +**Alternative display when phase numbers exceed total** (e.g., multi-milestone projects where phases are numbered globally): If N > T (phase number exceeds milestone phase count), use the format `Phase {N} ({position}/{T})` where `position` is the 1-based index of this phase among incomplete phases being processed. This prevents confusing displays like "Phase 63/5". **3a. Smart Discuss** @@ -919,7 +921,7 @@ When any phase operation fails or a blocker is detected, present 3 options via A - [ ] Complete-milestone invoked via Skill() with ${milestone_version} arg - [ ] Cleanup invoked via Skill() — internal confirmation is acceptable (CTRL-01) - [ ] Final completion banner displayed after lifecycle -- [ ] Progress bar uses phase number / total milestone phases (not position among incomplete) +- [ ] Progress bar uses phase number / total milestone phases (not position among incomplete), with fallback display when phase numbers exceed total - [ ] Smart discuss documents relationship to discuss-phase with CTRL-03 note - [ ] Frontend phases get UI-SPEC generated before planning (step 3a.5) if not already present - [ ] Frontend phases get UI review audit after successful execution (step 3d.5) if UI-SPEC exists