Remove the --mode/-m CLI flag from the validation attach command to align
with the specification, which defines validation mode as an inherent
property of the validation definition set at registration time via
validation add, not as a per-attachment override.
The service layer (ToolRegistryService.attach_validation) no longer
accepts mode as a parameter; instead it reads the mode from the
validation's registered definition. The ToolRegistryRepository
_to_legacy_domain now exposes the mode field so the service can access it.
All tests that passed --mode to the CLI or service have been updated or
removed. The invalid-mode validation scenarios were removed since the
mode is no longer caller-supplied. Coverage remains at 98.7%.
ISSUES CLOSED: #913
Co-authored-by: Jeffrey Phillips Freeman <jeffrey.freeman@cleverthis.com>
Co-committed-by: Jeffrey Phillips Freeman <jeffrey.freeman@cleverthis.com>
Robot Framework integration test suite for Specification Workflow Example 4:
Multi-Project Dependency Update. Exercises the supervised automation profile
with 4 projects (common-lib + 3 microservices), child plan spawning,
dependency-ordered execution, and coordinated apply.
- 8 test cases covering: project registration, action creation, plan use
with supervised profile, strategize with DEPENDENCY_ORDERED config,
child plan spawning (4 children), dependency-ordered execution
(common-lib first), coordinated apply, and full end-to-end lifecycle
- Multi-project scope initialization, changeset recording, and
cross-project validation via MultiProjectService
- Shared validation (local/pytest-mypy) registered and attached to all
4 projects per spec §Workflow Example 4
- Uses mocked LLM providers (CLEVERAGENTS_TESTING_USE_MOCK_AI=true)
- All Run Process calls have timeout=60s on_timeout=kill
(120s for full lifecycle)
- _NoClose wrapper calls rollback() to match established _SafeSession
pattern; child IDs generated via ULID() instead of hardcoded
ISSUES CLOSED: #768