# Sprint 022 - Registry CLI ## Topic & Scope - Surface OCI registry authentication and token capabilities via CLI - Add login, token management, and registry operations commands - Working directory: `src/Cli/` - Expected evidence: CLI commands, unit tests - Note: From FEATURE_GAPS_REPORT.md Batch 14 (Auth & Access Control) ## Dependencies & Concurrency - No upstream sprint dependencies - Can run in parallel with other CLI sprints - Depends on Registry service ## Documentation Prerequisites - `docs/modules/registry/architecture.md` - `docs/FEATURE_GAPS_REPORT.md` (Batch 14) - OCI Distribution Spec, Docker Registry Auth ## Delivery Tracker ### REG-001 - Add `stella registry login` command Status: DONE Dependency: none Owners: Developer Task description: - Create RegistryCommandGroup.cs with `login` subcommand - Authenticate to OCI registry and store credentials - Support multiple authentication methods Completion criteria: - [x] `stella registry login ` authenticates - [x] Supports `--username` and `--password` options - [x] Supports `--password-stdin` for secure input - [x] Supports `--token` for token-based auth - [x] Stores credentials in secure credential store - [x] Supports Docker config.json format ### REG-002 - Add `stella registry logout` command Status: DONE Dependency: REG-001 Owners: Developer Task description: - Add `logout` subcommand for credential removal - Remove stored credentials for registry - Support selective or all logout Completion criteria: - [x] `stella registry logout ` removes credentials - [x] `stella registry logout --all` removes all credentials - [x] Confirms credential removal - [x] Updates credential store ### REG-003 - Add `stella registry token` command Status: DONE Dependency: REG-001 Owners: Developer Task description: - Add `token` subcommand for token operations - Generate tokens with specific scopes - Inspect and validate tokens Completion criteria: - [x] `stella registry token generate --scope ` generates token - [x] Scopes: pull, push, catalog, admin - [x] Supports `--expires ` for token lifetime - [x] `stella registry token inspect ` shows token details - [x] `stella registry token validate ` validates token - [x] Supports `--format json` ### REG-004 - Add `stella registry list` command Status: DONE Dependency: REG-001 Owners: Developer Task description: - Add `list` subcommand for repository listing - List repositories in registry - Support filtering and pagination Completion criteria: - [x] `stella registry list ` lists repositories - [x] Supports `--filter ` for filtering - [x] Supports `--limit N` for pagination - [x] Output includes repository name, tag count - [x] Supports `--format json|table` ### REG-005 - Add `stella registry tags` command Status: DONE Dependency: REG-001 Owners: Developer Task description: - Add `tags` subcommand for tag listing - List tags for a repository - Include digest information Completion criteria: - [x] `stella registry tags ` lists tags - [x] Output includes tag name, digest, created date - [x] Supports `--filter ` for filtering - [x] Supports `--format json|table` ### REG-006 - Add `stella registry delete` command Status: DONE Dependency: REG-001 Owners: Developer Task description: - Add `delete` subcommand for manifest/tag deletion - Delete tags or manifests from registry - Include safety confirmation Completion criteria: - [x] `stella registry delete :` deletes tag - [x] `stella registry delete @` deletes manifest - [x] Requires `--confirm` for safety - [x] Supports `--dry-run` for preview - [x] Returns deletion status ## Execution Log | Date (UTC) | Update | Owner | | --- | --- | --- | | 2026-01-17 | Sprint created from FEATURE_GAPS_REPORT.md Batch 14 | Planning | | 2026-01-16 | REG-001 through REG-006: Created RegistryCommandGroup.cs with all commands | Developer | ## Decisions & Risks - Credential storage must be secure (keychain, credential manager) - Token generation requires appropriate permissions - Delete operations are destructive; need strong confirmation ## Next Checkpoints - Sprint kickoff: TBD - Mid-sprint review: TBD - Sprint completion: TBD