Files
temp/features/resource_list_lifecycle_state.feature
freemo 8ea00f5185 fix: restore CI quality tests to passing state (#4175)
Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me>
2026-04-08 11:02:14 +00:00

81 lines
3.9 KiB
Gherkin

Feature: agents resource list shows devcontainer lifecycle state column
As a CleverAgents user
I want the resource list to show the lifecycle state for devcontainer-instance resources
So that I can see whether a devcontainer is detected, running, stopped, or failed
Background:
Given a fresh in-memory resource registry
And built-in types are bootstrapped
Scenario: resource list shows "Status" column header
Given a devcontainer-instance resource is registered
When I run resource list with all flag
Then the resource output should contain "Status"
Scenario: resource list shows "detected (not built)" for a new devcontainer-instance
Given a devcontainer-instance resource is registered
When I run resource list with all flag
Then the resource output should contain "detected (not built)"
Scenario: resource list shows "running" state for a running devcontainer
Given a devcontainer-instance resource is registered
And the devcontainer lifecycle state is "running"
When I run resource list with all flag
Then the resource output should contain "running"
Scenario: resource list shows "stopped" state for a stopped devcontainer
Given a devcontainer-instance resource is registered
And the devcontainer lifecycle state is "stopped"
When I run resource list with all flag
Then the resource output should contain "stopped"
Scenario: resource list shows "failed" state for a failed devcontainer
Given a devcontainer-instance resource is registered
And the devcontainer lifecycle state is "failed"
When I run resource list with all flag
Then the resource output should contain "failed"
Scenario: resource list shows empty state for non-container resources
Given I run resource add "git-checkout" "local/my-repo" with path "/tmp/repo"
When I run resource list
Then the resource output should contain "local/my-repo"
And the resource output should contain "git-checkout"
Scenario: resource list shows warning banner when devcontainer is in detected state
Given a devcontainer-instance resource is registered
When I run resource list with all flag
Then the resource output should contain "Devcontainer detected"
Scenario: resource list does not show warning banner when devcontainer is running
Given a devcontainer-instance resource is registered
And the devcontainer lifecycle state is "running"
When I run resource list with all flag
Then the resource output should not contain "Devcontainer detected"
# @tdd_issue @tdd_issue_4263 @tdd_expected_fail @skip
@skip
Scenario: resource list JSON output includes lifecycle_state for devcontainer-instance
Given a devcontainer-instance resource is registered
When I run resource list with all flag and format "json"
Then the resource output should be valid JSON
And the resource JSON output should contain key "lifecycle_state"
Scenario: resource list JSON output has null lifecycle_state for non-container resources
Given I run resource add "git-checkout" "local/my-repo" with path "/tmp/repo"
When I run resource list with format "json"
Then the resource output should be valid JSON
And the resource JSON lifecycle_state should be null for non-container resources
Scenario: resource list shows lifecycle state for container-instance resources
Given a container-instance resource is registered
When I run resource list with all flag
Then the resource output should contain "Status"
And the resource output should contain "detected (not built)"
Scenario: resource list succeeds gracefully when lifecycle tracker raises an error
Given a devcontainer-instance resource is registered
And the lifecycle tracker raises an error for the resource
When I run resource list with all flag
Then the resource list command should succeed
And the resource output should contain "devcontainer-instance"