8ea00f5185
CI / unit_tests (push) Has been cancelled
CI / benchmark-publish (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / typecheck (push) Has been cancelled
CI / security (push) Has been cancelled
CI / quality (push) Has been cancelled
CI / integration_tests (push) Has been cancelled
CI / e2e_tests (push) Has been cancelled
CI / coverage (push) Has been cancelled
CI / benchmark-regression (push) Has been cancelled
CI / build (push) Has been cancelled
CI / push-validation (push) Has been cancelled
CI / status-check (push) Has been cancelled
CI / docker (push) Has been cancelled
CI / helm (push) Has been cancelled
Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
43 lines
2.5 KiB
Gherkin
43 lines
2.5 KiB
Gherkin
@tdd_issue @tdd_issue_967 @mock_only @tdd_issue_4178
|
|
Feature: TDD Issue #967 — plan execute only transitions state, does not run strategize or execute phase processing
|
|
As a developer
|
|
I want to verify that the plan execute CLI command handles plans in Strategize/QUEUED state
|
|
by running strategize phase processing before transitioning to Execute
|
|
So that the bug is captured and will be caught by a regression test
|
|
|
|
Bug #967: The plan execute CLI command originally only called
|
|
service.execute_plan(plan_id), which is a state transition only
|
|
(Strategize/COMPLETE → Execute/QUEUED). It did not construct a
|
|
PlanExecutor or call run_strategize() / run_execute(). When a plan
|
|
was in Strategize/QUEUED state (immediately after plan use), the command
|
|
failed because execute_plan() requires Strategize/COMPLETE.
|
|
|
|
These tests exercise the CLI orchestration layer (the execute_plan command
|
|
handler in plan.py) via CliRunner to verify the bug is fixed. The fix
|
|
added phase-aware orchestration: when a plan is in Strategize/QUEUED,
|
|
the CLI runs PlanExecutor.run_strategize() before transitioning.
|
|
|
|
Scenario: CLI execute command handles plan in Strategize/QUEUED state
|
|
Given a CLI runner and mocked services for bug 967
|
|
And a plan in Strategize/QUEUED state for bug 967
|
|
When I invoke the plan execute CLI command for the QUEUED plan for bug 967
|
|
Then the CLI should succeed and the plan should reach Execute phase for bug 967
|
|
|
|
Scenario: CLI execute command orchestrates full lifecycle for QUEUED plan
|
|
Given a CLI runner and mocked services for bug 967
|
|
And a plan in Strategize/QUEUED state for bug 967
|
|
When I invoke the plan execute CLI command for the QUEUED plan for bug 967
|
|
Then the executor should have run strategize for the plan for bug 967
|
|
And the plan should have completed execute phase processing via CLI for bug 967
|
|
|
|
Scenario: Positive control — proper orchestration transitions QUEUED plan to Execute
|
|
Given a real plan executor with a plan in Strategize/QUEUED for bug 967
|
|
When I run the proper orchestration of strategize then execute for bug 967
|
|
Then the plan should be in Execute/QUEUED state via orchestration for bug 967
|
|
|
|
Scenario: CLI auto-discovery finds plans in Strategize/QUEUED state
|
|
Given a CLI runner and mocked services for bug 967
|
|
And a single plan in Strategize/QUEUED state eligible for auto-discovery for bug 967
|
|
When I invoke the plan execute CLI command without a plan id for bug 967
|
|
Then the CLI should succeed and auto-discover the QUEUED plan for bug 967
|