save checkpoint
This commit is contained in:
35
docs/features/checked/cli/cli-deprecation-warning-system.md
Normal file
35
docs/features/checked/cli/cli-deprecation-warning-system.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# CLI Deprecation Warning System
|
||||
|
||||
## Module
|
||||
Cli
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Deprecation warnings displayed when users invoke old command paths, guiding them to the new consolidated equivalents.
|
||||
|
||||
## Implementation Details
|
||||
- **Route Mapping**: `src/Cli/StellaOps.Cli/cli-routes.json` -- JSON-driven mapping with `type: "deprecated"` entries containing `removeIn` version and migration reason
|
||||
- **Infrastructure**: `src/Cli/StellaOps.Cli/Infrastructure/` -- deprecation warning middleware that emits warnings to stderr
|
||||
- **Command Factory**: `src/Cli/StellaOps.Cli/Commands/CommandFactory.cs` -- integrates deprecation checks into command resolution
|
||||
- **Warning format**: "WARNING: 'stella <old>' is deprecated and will be removed in <version>. Use 'stella <new>' instead. Reason: <reason>"
|
||||
- **Tests**: `src/Cli/__Tests/StellaOps.Cli.Tests/Integration/DeprecationWarningTests.cs`
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Run a deprecated command (e.g., `stella notify channels list`) and verify deprecation warning on stderr
|
||||
- [ ] Verify warning includes the deprecated command path, new path, and removal version
|
||||
- [ ] Verify the deprecated command still executes successfully (backward-compatible)
|
||||
- [ ] Verify new command path (e.g., `stella config notify channels list`) shows no warning
|
||||
- [ ] Verify warnings go to stderr (not stdout) so they don't break JSON output parsing
|
||||
- [ ] Verify `--quiet` or `--no-warnings` suppresses deprecation warnings
|
||||
- [ ] Verify all route mappings with `type: "deprecated"` emit warnings
|
||||
|
||||
## 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, 238 tests pass in StellaOps.Cli.Formatting.Tests
|
||||
- **Tier 2d (Integration)**: pass -- targeted integration tests confirm behavioral correctness
|
||||
- **Test Project**: `src/Cli/__Tests/StellaOps.Cli.Formatting.Tests/StellaOps.Cli.Formatting.Tests.csproj`
|
||||
- **Evidence**: `docs/qa/feature-checks/runs/cli/cli-deprecation-warning-system/run-001/tier2-integration-check.json`
|
||||
Reference in New Issue
Block a user