forked from cleveragents/cleveragents-core
1878998b7a
Rename the TDD tag system from tdd_bug/tdd_bug_<N> to tdd_issue/tdd_issue_<N> across the entire codebase. The tdd_expected_fail tag is unchanged. The TDD expected-failure workflow is not limited to bug fixes — it applies equally to any issue type (features, tasks, refactors). The _bug suffix was misleading and narrowed the perceived scope. The new _issue suffix accurately reflects that the TDD tagging system applies to any Forgejo issue. Changes span 92 files: - features/environment.py: validate_tdd_tags(), should_invert_result(), and apply_tdd_inversion() updated — regex, variables, error messages - robot/tdd_expected_fail_listener.py: _validate_tdd_tags(), _should_invert_result(), start_test(), end_test() updated consistently - 33 Behave .feature files: all @tdd_bug/@tdd_bug_<N> tags renamed - 29 Robot .robot files: all tdd_bug/tdd_bug_<N> tags renamed - 3 Robot fixture files renamed (tdd_bug_alone, tdd_missing_tdd_bug, tdd_expected_fail_missing_bug_n) with content and references updated - Tag validation tests and helpers updated (function names, command dispatch keys, output strings, fixture references) - CONTRIBUTING.md: section renamed from 'TDD Bug Test Tags' to 'TDD Issue Test Tags', all tag references and examples updated - noxfile.py: comment references updated - Step definition files, mock helpers, and benchmark files: docstring references updated ISSUES CLOSED: #965
43 lines
2.5 KiB
Gherkin
43 lines
2.5 KiB
Gherkin
@tdd_issue @tdd_issue_967 @mock_only
|
|
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
|