Skip to content

Refactor: architecture cleanup - #69

Merged
steveclarke merged 2 commits into
masterfrom
refactor/architecture-cleanup
Mar 22, 2026
Merged

steveclarke merged 2 commits into
masterfrom
refactor/architecture-cleanup

Conversation

@steveclarke

Copy link
Copy Markdown
Owner

Summary

  • Fix layer inversions — Models::Card no longer depends on Cli::Formatter for priority labels; normalize_timestamp extracted from CLI layer into shared Superthread::TimeUtils module
  • Remove dead code — deleted unused Confirmable concern, LinkedCard model, LinkedCardRef#to_s override, and workspace_path helper (-100 lines net)
  • Reduce duplication — replaced duplicate apply_date_filters in Cards CLI with existing DateParsable#filter_by_date concern; migrated 4 inline begin/rescue blocks to with_not_found helper (matching pages.rb pattern)
  • Improve readability — split 36-line resolve_list_with_context into three focused methods; fixed yard-lint warning on Concerns module
  • Add architecture assessment — architecture-assessment.md documents findings and prioritized recommendations

Test plan

  • All 734 specs pass
  • standardrb passes with no offenses
  • yard-lint lib/ passes with no offenses
  • Verify CI passes on GitHub Actions

…de, reduce duplication

- Move PRIORITY_NAMES constant from Cli::Formatter to Models::Card,
  fixing upward dependency from model to CLI layer
- Extract normalize_timestamp into shared Superthread::TimeUtils module
- Delete dead code: Confirmable concern, LinkedCard model,
  LinkedCardRef#to_s override, workspace_path helper
- Replace duplicate apply_date_filters with DateParsable#filter_by_date
- Migrate Cards CLI from inline begin/rescue to with_not_found helper
- Extract resolve_list_with_context into three focused private methods
- Add architecture assessment document
@steveclarke
steveclarke merged commit c111ec2 into master Mar 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant