-
Notifications
You must be signed in to change notification settings - Fork 3
Closed
Description
Problem
PR #61 (detect_cycles) introduced three code quality issues identified during post-merge review:
- Hand-rolled
glob_match()— cycles.rs implements a naive glob matcher whenglobsetis already a workspace dependency, and theignorecrate is used elsewhere for.rpgignorehandling - Inline TOON formatting — ~130 lines of TOON formatting live inside the
detect_cyclestool handler in tools.rs instead of intoon.rs(whereformat_health_report()lives) - Duplicated
.rpgignoreparsing — cycles.rs manually reads and parses.rpgignoreinstead of reusing theignore::gitignore::GitignoreAPI thatrpg-encoder/src/evolution.rsalready uses
Solution
- Replace
glob_match()withignore::gitignore::Gitignore::matched_path_or_any_parents() - Extract formatting to
format_cycle_report()intoon.rs - Move
.rpgignoreloading to the MCP layer, passOption<Gitignore>viaCycleConfig::excluded_paths
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels