Context
Follow-up split off from #51 (which covered tools/attend/src/main.rs, now resolved). tools/ways-cli/src/main.rs has grown past the 500-line review threshold — 649 lines as of 2026-06 — following the same dispatcher-file anti-pattern that the attend split addressed, just at smaller scale.
Proposed shape
Mirror the attend cmd/* split that proved the pattern (PR #78/#79):
- Extract the clap
Commands enum into cli.rs
- Extract the match dispatch into
dispatch.rs
- Leave
main.rs as fn main() + panic-handling/setup only
Priority
Not urgent — it's an order of magnitude smaller than the attend case was, and the structure is healthy apart from size. Good candidate to roll into whatever PR next touches ways-cli command dispatch, or a standalone refactor when convenient.
References
Context
Follow-up split off from #51 (which covered
tools/attend/src/main.rs, now resolved).tools/ways-cli/src/main.rshas grown past the 500-line review threshold — 649 lines as of 2026-06 — following the same dispatcher-file anti-pattern that the attend split addressed, just at smaller scale.Proposed shape
Mirror the attend
cmd/*split that proved the pattern (PR #78/#79):Commandsenum intocli.rsdispatch.rsmain.rsasfn main()+ panic-handling/setup onlyPriority
Not urgent — it's an order of magnitude smaller than the attend case was, and the structure is healthy apart from size. Good candidate to roll into whatever PR next touches ways-cli command dispatch, or a standalone refactor when convenient.
References