Skip to content

Make 'run' and 'validate' agree: run bypasses the validation gate entirely #241

Description

@jeremymanning

Add template validation at YAML compile time to catch errors early in the pipeline development process. This task involves:

  1. Implementing compile-time validation in YAMLCompiler
  2. Adding template syntax validation before pipeline execution
  3. Checking for undefined variables and missing dependencies
  4. Validating tool configurations and parameters
  5. Providing clear error messages for validation failures

Acceptance Criteria

  • YAMLCompiler performs comprehensive validation at compile time
  • Template syntax errors are caught before execution
  • Undefined variables and missing dependencies are detected
  • Tool configurations are validated against schemas
  • Clear, actionable error messages are provided
  • Validation can be bypassed when necessary (development mode)

Files Affected

  • YAMLCompiler implementation
  • Template validation modules
  • Pipeline configuration validators
  • Error reporting and messaging systems
  • Test files for validation scenarios

Implementation Notes

  • Build on fixes from tasks 001-006 for complete validation
  • Use existing schema validation where possible
  • Implement template parsing for variable detection
  • Consider performance impact of validation on large pipelines
  • Allow for different validation levels (strict, permissive)
  • Ensure validation works with all supported template features

Testing Requirements

  • Test validation of various template syntaxes
  • Verify detection of undefined variables
  • Test tool configuration validation
  • Validate error message clarity and usefulness
  • Performance testing with complex pipelines
  • Integration testing with the complete pipeline system

Definition of Done

  • Compile-time validation is fully implemented in YAMLCompiler
  • All template syntax and configuration errors are caught early
  • Error messages are clear and actionable
  • Validation performance is acceptable for typical pipelines
  • All tests pass including complex validation scenarios
  • Integration with existing pipeline workflows is seamless
  • Code review completed and approved

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinghigh-priorityCritical issue that needs to be addressed ASAP

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions