Problem
collapseAll and expandAll are fully implemented, unit-tested, and wired to zero UI surfaces. No user can reach them.
- Implementation:
src/store/slices/expansionActions.ts:82 (expandAll) and :90 (collapseAll)
- Exposed on the store interface:
src/store/slices/taskSlice.ts:125-126
- Unit tests:
tests/unit/store/taskSlice.test.ts:1425-1505
- References anywhere in
src/components/, src/config/, src/hooks/: none
Verified by grep — outside the store slice and its tests, the identifiers appear nowhere in the codebase.
Why it is worth wiring
Measured on examples/mars-colony.ownchart (29 tasks, 7 summaries): collapse-all reduces the chart from 29 visible rows to 7. For users with phase-structured projects this is a significant readability win that costs one evening of work, because the hard part is already written and tested.
Scope
Wire the existing actions to the UI. No new state, no new logic.
Acceptance criteria
Notes
Split out of #88. During the concept work on #88 this surfaced as existing-but-unreachable functionality. It is not a substitute for #88 — collapsing hides child tasks, whereas #88 aims to keep every child bar visible while compressing vertically. The two solve different problems and both are wanted.
Problem
collapseAllandexpandAllare fully implemented, unit-tested, and wired to zero UI surfaces. No user can reach them.src/store/slices/expansionActions.ts:82(expandAll) and:90(collapseAll)src/store/slices/taskSlice.ts:125-126tests/unit/store/taskSlice.test.ts:1425-1505src/components/,src/config/,src/hooks/: noneVerified by grep — outside the store slice and its tests, the identifiers appear nowhere in the codebase.
Why it is worth wiring
Measured on
examples/mars-colony.ownchart(29 tasks, 7 summaries): collapse-all reduces the chart from 29 visible rows to 7. For users with phase-structured projects this is a significant readability win that costs one evening of work, because the hard part is already written and tested.Scope
Wire the existing actions to the UI. No new state, no new logic.
View), following the existinguseViewTabActionspatternuseKeyboardShortcuts(candidates:Ctrl+Shift+[/Ctrl+Shift+]— confirm no collision with existing bindings)HelpTopicentry insrc/config/helpContent.ts(project rule: new user-facing features need help content)Acceptance criteria
openis already persisted per task)npm run ci:localgreenNotes
Split out of #88. During the concept work on #88 this surfaced as existing-but-unreachable functionality. It is not a substitute for #88 — collapsing hides child tasks, whereas #88 aims to keep every child bar visible while compressing vertically. The two solve different problems and both are wanted.