Summary
Hippo’s recalled guidance repeatedly points to validator complexity as an ongoing maintainability problem. Memories: mem_dcfce992eff3, mem_7fed758b38cd, mem_0755d605eefd, and mem_98f16a2f627c. The recurring rule is to split validators once they exceed roughly 100–200 lines, with 300 lines treated as a hard refactor threshold.
Rationale
This is a strong cross-memory theme rather than a one-off note. The project also already has supporting refactoring guidance in scratchpad/validation-refactoring.md, so the next step is highly actionable: pick one large validator and decompose it into smaller, domain-focused helpers with targeted tests.
Next steps
- Inspect validator-heavy files under
pkg/workflow/ and pkg/cli/ for candidates above the documented size/complexity thresholds.
- Choose one validator that mixes multiple concern areas and split it into smaller helpers or files.
- Add or update unit tests to cover valid, invalid, and edge-case paths after the split.
- Use
scratchpad/validation-refactoring.md as the implementation guide.
Memory: mem_dcfce992eff3, mem_7fed758b38cd, mem_0755d605eefd, mem_98f16a2f627c
Generated by 🦛 Daily Hippo Learn · gpt54 · 21.6 AIC · ⌖ 9.63 AIC · ⊞ 5.5K · ◷
Summary
Hippo’s recalled guidance repeatedly points to validator complexity as an ongoing maintainability problem. Memories:
mem_dcfce992eff3,mem_7fed758b38cd,mem_0755d605eefd, andmem_98f16a2f627c. The recurring rule is to split validators once they exceed roughly 100–200 lines, with 300 lines treated as a hard refactor threshold.Rationale
This is a strong cross-memory theme rather than a one-off note. The project also already has supporting refactoring guidance in
scratchpad/validation-refactoring.md, so the next step is highly actionable: pick one large validator and decompose it into smaller, domain-focused helpers with targeted tests.Next steps
pkg/workflow/andpkg/cli/for candidates above the documented size/complexity thresholds.scratchpad/validation-refactoring.mdas the implementation guide.Memory:
mem_dcfce992eff3,mem_7fed758b38cd,mem_0755d605eefd,mem_98f16a2f627c