cc24d8c8ac
Completely removed all legacy plan commands from the CLI:
- Removed tell, build, new, current, cd, continue CLI commands
- Removed programmatic wrapper functions (tell_command, build_command, etc.)
- Removed legacy deprecation message
- Updated help text to indicate V3 Plan Lifecycle exclusively
- Removed stale references to tell/build in help output and command validation
Removes the legacy 'tell' and 'build' CLI shortcuts from main.py:
- Removed echo lines advertising tell/build commands
- Removed tell/build from valid_cmds list
- Removed tell/build from _LIGHTWEIGHT_COMMANDS frozenset
- These dead entries were preventing helpful error messages
Test infrastructure improvements:
- Event bus exception test: Patch the module-level logger during emit() so that
structlog.testing.capture_logs() can capture the logs. Without patching, the
module-level logger created at import time is not captured by the context manager.
- Session create/list commands: Suppress cleveragents.mcp logger to CRITICAL level
during JSON/YAML output formatting to prevent health check warnings with ANSI codes
from being written to stdout before JSON output, which breaks JSON parsing.
- Extended plan_cli_coverage_boost with scenarios for estimation_result,
invariants, execution_environment, validation_summary, and checkpoint
coverage in _plan_spec_dict
Documentation:
- Created docs/Legacy_to_V3_Guide.md with comprehensive migration instructions
- Updated CONTRIBUTING.md to document removal of legacy workflow
- Updated CHANGELOG.md to reference issue #4181 instead of PR #10800
ISSUES CLOSED: #4181
43 lines
1.6 KiB
Gherkin
43 lines
1.6 KiB
Gherkin
Feature: Legacy plan persistence removal
|
|
As a developer migrating to the v3 plan lifecycle,
|
|
I want legacy plan paths to emit deprecation warnings,
|
|
so that I know to use PlanLifecycleService instead.
|
|
|
|
Background:
|
|
Given a clean test environment for legacy removal
|
|
|
|
# --- PlanService deprecation ---
|
|
|
|
Scenario: PlanService emits deprecation warning on instantiation
|
|
When I instantiate PlanService
|
|
Then a DeprecationWarning mentioning "PlanService is deprecated" is raised
|
|
|
|
Scenario: PlanService still functions after deprecation warning
|
|
When I instantiate PlanService
|
|
And I call create_plan on the legacy service
|
|
Then the plan is created successfully
|
|
|
|
# --- PlanRepository deprecation ---
|
|
|
|
Scenario: PlanRepository emits deprecation warning on instantiation
|
|
When I instantiate PlanRepository
|
|
Then a DeprecationWarning mentioning "PlanRepository is deprecated" is raised
|
|
|
|
# --- ChangeRepository deprecation ---
|
|
|
|
Scenario: ChangeRepository emits deprecation warning on instantiation
|
|
When I instantiate ChangeRepository
|
|
Then a DeprecationWarning mentioning "ChangeRepository is deprecated" is raised
|
|
|
|
# --- PlanLifecycleService is NOT deprecated ---
|
|
|
|
Scenario: PlanLifecycleService does NOT emit deprecation warnings
|
|
When I instantiate PlanLifecycleService
|
|
Then no DeprecationWarning is raised
|
|
|
|
# --- UnitOfWorkContext plans accessor is deprecated ---
|
|
|
|
Scenario: UnitOfWorkContext plans property emits deprecation warning
|
|
When I access the plans property on UnitOfWorkContext
|
|
Then a DeprecationWarning mentioning "deprecated" is raised
|