Do (+4)
Do
- Keep configs in
config/workflows/directory - Use descriptive filenames:
<domain>_<task>_<variant>.yaml - Version control all configurations
- Use comments to document parameters
- Validate configs before execution with
--dry-run - Log sufficient context for debugging
Don't
- Hardcode absolute paths
- Skip input validation
- Mix configuration with implementation
- Create overly complex nested configs
- Ignore error handling
Configuration Design
- Keep configs in
config/workflows/directory - Use descriptive filenames:
<domain>_<task>_<variant>.yaml - Version control all configurations
- Use comments to document parameters
Handler Development
- One handler per task type
- Validate inputs at handler start
- Log progress for long-running tasks
- Return structured results
File Organization
project/
config/
workflows/ # Workflow configs
analysis.yaml
transform.yaml
schemas/ # Validation schemas
src/
workflow_executor/ # Executor code
scripts/
run_workflow.sh # CLI wrapper
data/
raw/
processed/
results/