refactor(cli): rename plan lifecycle-list and lifecycle-apply to match specification
CI / build (push) Successful in 18s
CI / lint (push) Failing after 31s
CI / helm (push) Successful in 33s
CI / typecheck (push) Successful in 50s
CI / security (push) Failing after 51s
CI / coverage (push) Has been skipped
CI / benchmark-regression (push) Has been skipped
CI / unit_tests (push) Failing after 1m50s
CI / docker (push) Has been skipped
CI / quality (push) Successful in 3m43s
CI / integration_tests (push) Has been cancelled
CI / e2e_tests (push) Has been cancelled
CI / benchmark-publish (push) Has been cancelled
CI / status-check (push) Has been cancelled

Renames `plan lifecycle-list` to `plan list` and `plan lifecycle-apply` to `plan apply` to align with the specification's canonical command names. Removes legacy V2 plan commands that occupied those names.

- Renamed CLI command registrations from lifecycle-list/lifecycle-apply to list/apply
- Removed legacy V2 apply and list commands (~200 lines)
- Updated apply shortcut in main.py to delegate to v3 lifecycle
- Added defensive null check for plan existence in apply command
- Updated 63+ test, doc, and benchmark files for consistency

Closes #881

Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
This commit was merged in pull request #1188.
This commit is contained in:
2026-04-02 19:09:04 +00:00
committed by Forgejo
parent 908d5854a3
commit 48cff5cfe0
71 changed files with 562 additions and 943 deletions
+24 -24
View File
@@ -172,30 +172,30 @@ Feature: CLI lifecycle command coverage for action and plan commands
Then lifecycle coverage plan use should succeed
# ===================================================================
# Plan lifecycle-list success + error paths
# Plan list success + error paths
# ===================================================================
Scenario: Lifecycle coverage plan lifecycle-list shows plans
Scenario: Lifecycle coverage plan list shows plans
Given lifecycle coverage plans exist for listing
When I run lifecycle coverage plan lifecycle-list
When I run lifecycle coverage plan list
Then lifecycle coverage plan list should show table
Scenario: Lifecycle coverage plan lifecycle-list with json format
Scenario: Lifecycle coverage plan list with json format
Given lifecycle coverage plans exist for listing
When I run lifecycle coverage plan lifecycle-list with format "json"
When I run lifecycle coverage plan list with format "json"
Then lifecycle coverage plan list should succeed
Scenario: Lifecycle coverage plan lifecycle-list empty shows message
Scenario: Lifecycle coverage plan list empty shows message
Given lifecycle coverage no plans exist for listing
When I run lifecycle coverage plan lifecycle-list
When I run lifecycle coverage plan list
Then lifecycle coverage plan list should show no plans message
Scenario: Lifecycle coverage plan lifecycle-list invalid phase aborts
When I run lifecycle coverage plan lifecycle-list with invalid phase "bogus"
Scenario: Lifecycle coverage plan list invalid phase aborts
When I run lifecycle coverage plan list with invalid phase "bogus"
Then lifecycle coverage plan list should abort
Scenario: Lifecycle coverage plan lifecycle-list invalid state aborts
When I run lifecycle coverage plan lifecycle-list with invalid state "bogus"
Scenario: Lifecycle coverage plan list invalid state aborts
When I run lifecycle coverage plan list with invalid state "bogus"
Then lifecycle coverage plan list should abort
# ===================================================================
@@ -267,32 +267,32 @@ Feature: CLI lifecycle command coverage for action and plan commands
Then lifecycle coverage plan execute should succeed
# ===================================================================
# Plan lifecycle-apply success + error paths
# Plan apply success + error paths
# ===================================================================
Scenario: Lifecycle coverage plan lifecycle-apply transitions to apply phase
Scenario: Lifecycle coverage plan apply transitions to apply phase
Given lifecycle coverage a plan ready for apply exists
When I run lifecycle coverage plan lifecycle-apply with plan ID
When I run lifecycle coverage plan apply with plan ID
Then lifecycle coverage plan apply should succeed
Scenario: Lifecycle coverage plan lifecycle-apply auto-selects single ready plan
Scenario: Lifecycle coverage plan apply auto-selects single ready plan
Given lifecycle coverage a single plan ready for auto-apply exists
When I run lifecycle coverage plan lifecycle-apply without ID
When I run lifecycle coverage plan apply without ID
Then lifecycle coverage plan apply should succeed
Scenario: Lifecycle coverage plan lifecycle-apply no ready plans aborts
Scenario: Lifecycle coverage plan apply no ready plans aborts
Given lifecycle coverage no plans ready for apply
When I run lifecycle coverage plan lifecycle-apply without ID
When I run lifecycle coverage plan apply without ID
Then lifecycle coverage plan apply should abort
Scenario: Lifecycle coverage plan lifecycle-apply multiple ready plans aborts
Scenario: Lifecycle coverage plan apply multiple ready plans aborts
Given lifecycle coverage multiple plans ready for apply
When I run lifecycle coverage plan lifecycle-apply without ID
When I run lifecycle coverage plan apply without ID
Then lifecycle coverage plan apply should abort
Scenario: Lifecycle coverage plan lifecycle-apply with json format
Scenario: Lifecycle coverage plan apply with json format
Given lifecycle coverage a plan ready for apply exists
When I run lifecycle coverage plan lifecycle-apply with plan ID and format "json"
When I run lifecycle coverage plan apply with plan ID and format "json"
Then lifecycle coverage plan apply should succeed
# ===================================================================
@@ -385,9 +385,9 @@ Feature: CLI lifecycle command coverage for action and plan commands
When I run lifecycle coverage plan execute with plan ID
Then lifecycle coverage plan execute should abort
Scenario: Lifecycle coverage plan lifecycle-apply with general error
Scenario: Lifecycle coverage plan apply with general error
Given lifecycle coverage a plan apply with general error
When I run lifecycle coverage plan lifecycle-apply with plan ID
When I run lifecycle coverage plan apply with plan ID
Then lifecycle coverage plan apply should abort
Scenario: Lifecycle coverage plan cancel with general error