refactor: organize artifact CLI commands - #4671
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The refactor preserves command behavior, follows the documented CLI architecture, and retains comprehensive coverage.
Review effort: Balanced
Findings: None
What changed in this PR
Refactors artifact CLI handlers into command-specific modules while preserving behavior and aligning tests with the source hierarchy.
Changes:
- Splits
list,info, andlookuphandlers into dedicated modules. - Centralizes shared registration infrastructure.
- Reorganizes tests and verifies stable command registration.
Review fully AI-generated by GitHub Copilot (model: unknown, autonomous).
| File | Description |
|---|---|
src/specify_cli/artifacts/_commands.py |
Centralizes shared registration. |
src/specify_cli/artifacts/command_list.py |
Houses the list command. |
src/specify_cli/artifacts/command_info.py |
Houses the info command. |
src/specify_cli/artifacts/command_lookup.py |
Houses the lookup command. |
src/specify_cli/artifacts/catalog.py |
Updates module documentation. |
tests/specify_cli/artifacts/conftest.py |
Provides shared fixtures. |
tests/specify_cli/artifacts/helpers.py |
Provides shared test helpers. |
tests/specify_cli/artifacts/test_catalog.py |
Retains domain tests. |
tests/specify_cli/artifacts/test_catalog_parity.py |
Clarifies parity-test scope. |
tests/specify_cli/artifacts/test_command_list.py |
Covers list behavior. |
tests/specify_cli/artifacts/test_command_info.py |
Covers info behavior. |
tests/specify_cli/artifacts/test_command_lookup.py |
Covers lookup behavior. |
tests/specify_cli/artifacts/test_registration.py |
Verifies registration order and uniqueness. |
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
mnriem
force-pushed
the
mnriem-chore/artifact-cli-refactor
branch
from
September 22, 2026 12:04
95ffe74 to
2d04d90
Compare
Assisted-by: GitHub Copilot (model: GPT-5.6 Sol, autonomous) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
mnriem
force-pushed
the
mnriem-chore/artifact-cli-refactor
branch
from
September 22, 2026 12:13
2d04d90 to
503dd36
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
specify artifactcommand into its pairedcommand_<name>.pymoduleartifacts/_commands.pyValidation
uvx ruff@0.15.0 check src tests: passedgit diff --check: passedspecify artifacthelp surface: byte-identical before/afterAI disclosure
Authored autonomously by GitHub Copilot (model: GPT-5.6 Sol) on behalf of @mnriem. The implementation, tests, validation, commit, and this pull request description were fully AI-generated.