Add structured data builders and Rich renderers for version, info, and
diagnostics commands. Support --format rich/plain/json/yaml output parity
and --check flag for diagnostics (exits non-zero on errors).
Includes Behave scenarios, Robot smoke tests, ASV benchmarks, and updates
existing tests to match the new Rich panel output format.
Fix 25 E501 line-too-long violations in RST/markdown docstring tables
across resource.py, tool.py, models.py, and lifecycle.py. Also fix
invalid test expectation in project_commands_coverage.feature where
project list with no database was expected to abort but now succeeds
with an empty list after the redesign.
Fix issues identified during test execution:
- Improve name validation to reject multiple slashes and empty parts
- Fix conditional routing YAML to include all exit nodes
- Fix QuotedString parse type to standard quoted format
- Fix line length in error message (split across lines)
- All 47 Behave scenarios pass (0 failures)
- All Robot Framework integration tests pass (283 passed, 3 skipped)
- All ASV benchmarks execute successfully
Part 12 (bugfix) of C1.schema implementation.
Add complete actor configuration schema:
Main Schema:
- ActorConfigSchema: top-level model bringing all components together
- Type-specific field requirements (LLM, TOOL, GRAPH)
- Model validator for cross-field validation
- Environment variable mappings
YAML I/O Methods:
- from_yaml_file(): load and validate from YAML
- to_yaml_file(): save configuration to YAML
- Proper error handling (FileNotFoundError, YAMLError, ValidationError)
Validation Logic:
- LLM actors require 'model' field
- TOOL actors require at least one tool
- GRAPH actors require 'model' and 'route' with cycle detection
- Namespaced name validation (namespace/name format)
Part 4 of C1.schema implementation (Actor YAML Schema Models).
Add graph workflow models for ActorType.GRAPH:
Graph Models:
- EdgeDefinition: connections between nodes with conditional routing
- NodeDefinition: node specifications (agent, tool, conditional, subgraph)
- RouteDefinition: complete graph topology with validation
Validation Features:
- Unique node ID validation
- Reference validation for all edges and entry/exit points
- Cycle detection using DFS algorithm
- Node ID format validation (alphanumeric with underscores/hyphens)
Part 3 of C1.schema implementation (Actor YAML Schema Models).
Add base configuration models for actor YAML schema:
Tool Models:
- ToolParameter: parameter definitions for inline tools
- ToolDefinition: complete inline tool with Python code
Configuration Models:
- MemoryConfig: conversation history and memory settings
- ContextConfigSchema: file inclusion and context window config
All models include comprehensive validation:
- Parameter name validation (valid Python identifiers)
- Tool name validation (namespace/name format)
- Field validators using Pydantic v2 patterns
Part 2 of C1.schema implementation (Actor YAML Schema Models).
- plan use: accept positional PROJECT args, add --automation-profile,
--invariant (repeatable), and actor override flags
- lifecycle-list: add --state/--processing-state, --action filters,
optional positional REGEX for name filtering, Action column in output
- plan status: enhanced detail view with processing state, project
links, arguments order, automation profile provenance, actor
overrides, automation level, and full timestamps
- Add docs/reference/plan_cli.md reference documentation
- Add Behave feature (17 scenarios) with mock service steps
- Add Robot smoke test (7 cases) with import-safe helper
- Add ASV benchmarks for plan use/list/status commands
- Enforce config-only 'action create --config <file>' (remove legacy
inline flags: --name, --strategy-actor, --execution-actor,
--definition-of-done, --arg)
- Load config via ActionConfigSchema.from_yaml_file() then
Action.from_config() with clear validation error surfacing
- Remove 'action available' subcommand (no draft state; actions are
available by default)
- Add REGEX positional arg to 'action list' for name filtering
- Add Short Name and Definition of Done summary to all CLI outputs
- Add 'action list --namespace/-n' and '--state/-s' filters
- Update existing tests to match new config-only create flow
- Add features/action_cli_spec_alignment.feature (19 scenarios)
- Add robot/action_cli_spec.robot smoke tests
- Add benchmarks/action_cli_bench.py ASV benchmarks
- Add docs/reference/action_cli.md
- git_worktree: verify original_path is the git repo root, not just a
subdirectory of an unrelated parent repo (fixes false-positive on CI
where temp dirs are inside the workspace checkout)
- Robot helper: update factory tests to reflect B4 implementations
(git_worktree and copy_on_write are now supported strategies)
Refs: TASK-006