Files
cleveragents-core/features/cli_core.feature
T
HAL9000 195fbac109
CI / lint (pull_request) Successful in 40s
CI / helm (pull_request) Successful in 38s
CI / build (pull_request) Successful in 48s
CI / quality (pull_request) Successful in 1m0s
CI / typecheck (pull_request) Successful in 1m29s
CI / security (pull_request) Successful in 1m28s
CI / push-validation (pull_request) Successful in 20s
CI / unit_tests (pull_request) Successful in 5m8s
CI / docker (pull_request) Successful in 1m27s
CI / integration_tests (pull_request) Successful in 8m39s
CI / coverage (pull_request) Successful in 11m1s
CI / status-check (pull_request) Successful in 3s
fix: add required @a2a, @session, @cli tags to BDD feature files
Add domain-scenario Gherkin tags to all A2A, session, and CLI feature
files (30 files) so tests can be filtered individually via behave.

- 8 A2A feature files: @a2a tag
- 7 session feature files: @session tag
- 15 CLI feature files: @cli tag

ISSUES CLOSED: #9124
2026-06-02 15:41:06 -04:00

126 lines
5.6 KiB
Gherkin

@cli
Feature: Core system commands (version, info, diagnostics)
As a user of CleverAgents
I want version, info, and diagnostics commands
So that I can inspect the system state and troubleshoot issues
# -- version command --
Scenario: Version command shows version string
When I run the system version command
Then the system version output should contain "1.0.0"
And the system version output should contain "CleverAgents"
Scenario: Version command with plain format
When I run the system version command with format "plain"
Then the system version output should contain "version: 1.0.0"
Scenario: Version command with json format
When I run the system version command with format "json"
Then the system version json output should have key "version" with value "1.0.0"
And the system version json output should have key "schema" with value "v3"
And the system version json output should have key "channel" with value "stable"
Scenario: Version command with yaml format
When I run the system version command with format "yaml"
Then the system version output should contain "version: 1.0.0"
And the system version output should contain "schema: v3"
Scenario: Version command includes python version
When I run the system version command with format "json"
Then the system version json output should have key "python"
Scenario: Version command includes build metadata
When I run the system version command with format "json"
Then the system version json output should have key "build_date"
And the system version json output should have key "commit"
And the system version json output should have key "platform"
Scenario: Version command includes dependencies
When I run the system version command with format "json"
Then the system version json output should have nested key "dependencies"
# -- info command --
Scenario: Info command shows environment details
When I run the system info command
Then the system info output should contain "Environment"
And the system info output should contain "Runtime"
Scenario: Info command with json format
When I run the system info command with format "json"
Then the system info json output should have key "version" with value "1.0.0"
And the system info json output should have key "data_dir"
And the system info json output should have key "database"
And the system info json output should have key "server_mode"
Scenario: Info command with plain format
When I run the system info command with format "plain"
Then the system info output should contain "version: 1.0.0"
And the system info output should contain "server_mode:"
Scenario: Info command shows provider count
When I run the system info command with format "json"
Then the system info json output should have key "providers_configured"
Scenario: Info command shows automation level
When I run the system info command with format "json"
Then the system info json output should have key "automation"
Scenario: Info command shows storage info
When I run the system info command with format "json"
Then the system info json output should have nested key "storage"
# -- diagnostics command --
Scenario: Diagnostics command runs checks
When I run the system diagnostics command
Then the system diagnostics output should contain "Checks"
And the system diagnostics output should contain "Summary"
Scenario: Diagnostics command with json format
When I run the system diagnostics command with format "json"
Then the system diagnostics json output should have key "checks"
And the system diagnostics json output should have key "summary"
And the system diagnostics json output should have key "recommendations"
Scenario: Diagnostics json summary has counts
When I run the system diagnostics command with format "json"
Then the system diagnostics json summary should have key "total"
And the system diagnostics json summary should have key "warnings"
And the system diagnostics json summary should have key "errors"
And the system diagnostics json summary should have key "duration_s"
Scenario: Diagnostics checks include config file
When I run the system diagnostics command with format "json"
Then the system diagnostics checks should include "Config file"
Scenario: Diagnostics checks include database
When I run the system diagnostics command with format "json"
Then the system diagnostics checks should include "Database"
Scenario: Diagnostics checks include git
When I run the system diagnostics command with format "json"
Then the system diagnostics checks should include "Git"
Scenario: Diagnostics checks include disk space
When I run the system diagnostics command with format "json"
Then the system diagnostics checks should include "Disk space"
Scenario: Diagnostics checks include file permissions
When I run the system diagnostics command with format "json"
Then the system diagnostics checks should include "File permissions"
Scenario: Diagnostics --check exits zero when no errors
When I run the system diagnostics command with check flag
Then the system diagnostics exit code should be 0
Scenario: Diagnostics with plain format
When I run the system diagnostics command with format "plain"
Then the system diagnostics output should contain "checks:"
And the system diagnostics output should contain "summary:"
Scenario: Diagnostics recommendations are a list
When I run the system diagnostics command with format "json"
Then the system diagnostics json recommendations should be a list