save checkpoint
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Backward-Compatible Command Aliases
|
||||
|
||||
## Module
|
||||
Cli
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Old command paths preserved as aliases with deprecation warnings, allowing smooth migration without breaking existing CI pipelines.
|
||||
|
||||
## Implementation Details
|
||||
- **Route Mapping**: `src/Cli/StellaOps.Cli/cli-routes.json` -- JSON-driven route mapping with 60+ deprecated-to-new mappings. Each mapping defines `old` path, `new` path, `type: "deprecated"`, `removeIn` version, and `reason`.
|
||||
- **Command Router**: `src/Cli/StellaOps.Cli/Infrastructure/` -- route-based command router that intercepts old paths and redirects to new commands
|
||||
- **Deprecation System**: `src/Cli/StellaOps.Cli/Commands/CommandFactory.cs` -- command factory that registers aliases alongside primary commands
|
||||
- **Key consolidation mappings**:
|
||||
- `notify *` -> `config notify *` (settings consolidation)
|
||||
- `admin feeds *` -> `config feeds *` (feed configuration)
|
||||
- `feeds list` -> `config feeds list` (feed configuration)
|
||||
- `integrations *` -> `config integrations *` (integration configuration)
|
||||
- `registry list` -> `config registry list` (registry configuration)
|
||||
- `sources list` -> `config sources list` (source configuration)
|
||||
- `signals list` -> `config signals list` (signal configuration)
|
||||
- `attest verify` -> `verify attestation` (verification consolidation)
|
||||
- **Tests**: `src/Cli/__Tests/StellaOps.Cli.Tests/Integration/DeprecationWarningTests.cs`, `src/Cli/__Tests/StellaOps.Cli.Tests/Infrastructure/CommandRouterTests.cs`
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Run deprecated `stella notify channels list` and verify it works but shows deprecation warning pointing to `stella config notify channels list`
|
||||
- [ ] Run deprecated `stella feeds list` and verify deprecation warning pointing to `stella config feeds list`
|
||||
- [ ] Run deprecated `stella attest verify` and verify deprecation warning pointing to `stella verify attestation`
|
||||
- [ ] Verify the deprecation warning includes the `removeIn` version (e.g., "will be removed in 3.0")
|
||||
- [ ] Verify the new command path works without deprecation warnings
|
||||
- [ ] Run deprecated command with `--format json` and verify output still works correctly with warning on stderr
|
||||
- [ ] Verify CI pipelines using old commands still exit with correct exit codes
|
||||
- [ ] Verify all 60+ route mappings in cli-routes.json have corresponding working aliases
|
||||
|
||||
## Verification
|
||||
|
||||
- **Verified**: 2026-02-13T15:30:00Z
|
||||
- **Tier 0 (Source)**: pass -- all referenced source files exist on disk
|
||||
- **Tier 1 (Build)**: pass -- module builds cleanly, 412 tests pass in StellaOps.Cli.Commands.Tests
|
||||
- **Tier 2d (Integration)**: pass -- targeted integration tests confirm behavioral correctness
|
||||
- **Test Project**: `src/Cli/__Tests/StellaOps.Cli.Commands.Tests/StellaOps.Cli.Commands.Tests.csproj`
|
||||
- **Evidence**: `docs/qa/feature-checks/runs/cli/backward-compatible-command-aliases/run-001/tier2-integration-check.json`
|
||||
Reference in New Issue
Block a user