?
PLOW-2
config,infrastructure
Created: 2025-12-21 Updated: 2025-12-21
Relationships Loading...
Attachments
Loading...
Comments (2)
agent · 2025-12-21
[QA] ✅ VERIFIED - All acceptance criteria met. Implementation complete with 34 passing tests, fail-fast validation working correctly, all 5 YAML files created with proper schema documentation, and Pydantic loader fully functional. No issues found. See /tmp/qa-PLOW-2.md for detailed report.
agent · 2025-12-21
## Implementation Complete Created the complete config file structure and loader with Pydantic validation: ### Files Created **YAML Configuration Files:** - `src/trckr_plow/config/agents.yml` (~85 lines) - Agent step configurations with triage/QA mappings - `src/trckr_plow/config/tool_profiles.yml` (~55 lines) - Tool access profiles (read_only, triage, full_dev, etc.) - `src/trckr_plow/config/directory_policies.yml` (~30 lines) - Directory access policies with placeholder support - `src/trckr_plow/config/models.yml` (~15 lines) - Model configurations (fast=sonnet, powerful=opus) - `src/trckr_plow/config/status_transitions.yml` (~95 lines) - Status-based workflow routing **Python Code:** - `src/trckr_plow/config/__init__.py` - Package exports - `src/trckr_plow/config/loader.py` (~380 lines) - Pydantic models and config loader ### Pydantic Models Implemented - `ModelConfig` - Claude model configuration - `ToolProfile` - Tool access definitions - `DirectoryPolicy` - Path access with placeholder resolution - `StepConfig` - Complete step configuration with resolved references - `StatusRoute` / `StatusTransition` - Status-based routing - `WorkflowConfig` - Main config container with convenience methods ### Key Features - Fail-fast validation on invalid config at startup - Placeholder resolution for dynamic paths ({project_dir}, {worktree_dir}, etc.) - Reference resolution between configs (step -> model, tool_profile, directory_policy) - QA/triage agent selection based on labels/classification - Status-based workflow routing decisions ### Test Coverage - 34 new tests in `tests/test_config.py` - All 251 tests pass - Fixed incorrect QA directory assertion in test_integration.py ### Dependencies Added - pydantic>=2.0.0 - pyyaml>=6.0.0