Skip to content

refactor: establish modular directory structure for seqerakit#250

Open
edmundmiller wants to merge 2 commits intomainfrom
spr/edmundmiller/refactor-establish-modular-directory-structure-for-seqerakit
Open

refactor: establish modular directory structure for seqerakit#250
edmundmiller wants to merge 2 commits intomainfrom
spr/edmundmiller/refactor-establish-modular-directory-structure-for-seqerakit

Conversation

@edmundmiller
Copy link
Copy Markdown
Collaborator

@edmundmiller edmundmiller commented Nov 19, 2025

refactor: establish modular directory structure for seqerakit

Create foundational architecture to support one-file-per-command pattern
by organizing code into logical modules. This is the first step in a
stacked PR series to improve code maintainability and AI-assisted
development.

Changes:

  • Create new directory structure: commands/, resources/, core/, utils/
  • Move core modules to core/ package:
    • seqeraplatform.py → core/seqeraplatform.py
    • overwrite.py → core/overwrite.py
    • on_exists.py → core/on_exists.py
  • Extract YAML utilities to utils/yaml_utils.py:
    • load_and_merge_yaml_files()
    • filter_blocks_by_targets()
    • get_resource_order()
  • Move general utilities to utils/helpers.py
  • Add backward compatibility imports in original locations

This refactoring maintains 100% backward compatibility while laying the
groundwork for subsequent PRs that will extract resource-specific parsers
and handlers into individual modules.

Test Plan:

  • All 111 unit tests pass
  • No breaking changes to public API
  • Backward compatibility maintained through import shims

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

Pull Request: #250

edmundmiller added a commit that referenced this pull request Nov 20, 2025
Create foundational architecture to support one-file-per-command pattern
by organizing code into logical modules. This is the first step in a
stacked PR series to improve code maintainability and AI-assisted
development.
Changes:
- Create new directory structure: commands/, resources/, core/, utils/
- Move core modules to core/ package:
  - seqeraplatform.py → core/seqeraplatform.py
  - overwrite.py → core/overwrite.py
  - on_exists.py → core/on_exists.py
- Extract YAML utilities to utils/yaml_utils.py:
  - load_and_merge_yaml_files()
  - filter_blocks_by_targets()
  - get_resource_order()
- Move general utilities to utils/helpers.py
- Add backward compatibility imports in original locations
This refactoring maintains 100% backward compatibility while laying the
groundwork for subsequent PRs that will extract resource-specific parsers
and handlers into individual modules.
Test Plan:
- All 111 unit tests pass
- No breaking changes to public API
- Backward compatibility maintained through import shims
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Pull Request: #250

Test Plan:
- All 111 unit tests pass
- No breaking changes to existing functionality
- Verified backward compatibility with re-export shims
@edmundmiller edmundmiller force-pushed the spr/edmundmiller/refactor-establish-modular-directory-structure-for-seqerakit branch from e557671 to f87ab87 Compare November 20, 2025 03:16
@edmundmiller edmundmiller changed the base branch from spr/edmundmiller/main.refactor-establish-modular-directory-structure-for-seqerakit to refactor/typer-cli November 20, 2025 03:17
Create foundational architecture to support one-file-per-command pattern
by organizing code into logical modules. This is the first step in a
stacked PR series to improve code maintainability and AI-assisted
development.

Changes:
- Create new directory structure: commands/, resources/, core/, utils/
- Move core modules to core/ package:
  - seqeraplatform.py → core/seqeraplatform.py
  - overwrite.py → core/overwrite.py
  - on_exists.py → core/on_exists.py
- Extract YAML utilities to utils/yaml_utils.py:
  - load_and_merge_yaml_files()
  - filter_blocks_by_targets()
  - get_resource_order()
- Move general utilities to utils/helpers.py
- Add backward compatibility imports in original locations

This refactoring maintains 100% backward compatibility while laying the
groundwork for subsequent PRs that will extract resource-specific parsers
and handlers into individual modules.

Test Plan:
- All 111 unit tests pass
- No breaking changes to public API
- Backward compatibility maintained through import shims

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

Pull Request: #250
@edmundmiller edmundmiller self-assigned this Nov 20, 2025
@edmundmiller edmundmiller force-pushed the spr/edmundmiller/refactor-establish-modular-directory-structure-for-seqerakit branch from f87ab87 to 930bf5b Compare November 20, 2025 16:54
Base automatically changed from refactor/typer-cli to main November 25, 2025 03:15
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