Formalize the command groups to be proper objects, not a tuple of values (CRAFT-560).
Metadata
Current evaluation
Merged after approval. Command groups refactored from tuples to proper objects to prepare for the craft-cli split. Removed group codenames, retaining only descriptions for user display. Approved by one reviewer.
Suggested action: —
No scores available.
Issue body
This is a requirement for when the command groups will be defined and used by different codes (lib and app), after the split of part of `charmcraft` code to `craft-cli`.
While doing this, I also removed the group's "codename" and just left the "description", which is what should be used for showing to the user.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged after approval. Command groups refactored from tuples to proper objects to prepare for the craft-cli split. Removed group codenames, retaining only descriptions for user display. Approved by one reviewer. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged refactoring that converts command groups from tuples to proper objects to support the craft-cli code split. Removed the group codename attribute, retaining only the description for user display. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged refactoring that converts command groups from tuples to proper objects, preparing for the craft-cli code split. The group codename was removed, retaining only the description for user display. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #557 Removed the command group from the command itself to simplify the whole structure (CRAFT-555). | charmcraft | merged | Merged following reviewer approval. Simplified the architecture by removing the command group from the command itself (CRAFT-555). The update modified 12 files (+165/-173 lines), primarily adjusting tests while flagging core structural changes. | |
| #4911 Refactor `command_group` usage | snapcraft | closed | Closed and deferred to a scheduled pulse. Initial refactoring work began via a WIP commit to replace snapcraft.cli.CommandGroup with craft_cli.CommandGroup and remove overrides. |