Fixes from trek-e's review on PR #1282:
1. Add missing withProjectRoot() wrapper on output — all other cmdInit*
functions include project_root in JSON, manager was the only one without it.
2. Add getMilestonePhaseFilter() to directory scan — prevents stale phase
directories from prior milestones appearing as phantom dashboard entries.
3. Replace hardcoded .planning/ paths with planningPaths(cwd) — forward
compatibility with workstream scoping (#1268).
4. Add 3 new tests:
- Conflict filter blocks dependent phase execution when dep is active
- Conflict filter allows independent phase execution in parallel
- Output includes project_root field
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add /gsd:manager — a single-terminal dashboard for managing milestones.
Shows all phases with visual status indicators (D/P/E columns), computes
recommended next actions, and dispatches discuss inline while plan/execute
run as background agents.
Key behaviors:
- Recommendation engine prioritizes execute > plan > discuss
- Filters parallel execute/plan when phases share dependency chains
- Independent phases (no direct or transitive dep relationship) CAN
run in parallel — dependent phases are serialized
- Dashboard shows compact Deps column for at-a-glance dependency view
- Sliding window limits discuss to one phase at a time
- Activity detection via file mtime (5-min window) for is_active flag
New files:
- commands/gsd/manager.md — skill definition
- get-shit-done/workflows/manager.md — full workflow spec
- get-shit-done/bin/lib/init.cjs — cmdInitManager() with phase parsing,
dependency graph traversal, and recommendation filtering
- get-shit-done/bin/gsd-tools.cjs — route 'init manager' to new command
- tests/init-manager.test.cjs — 16 tests covering status detection,
deps, sliding window, recommendations, and edge cases
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>