feat(config): add validation.on-create and validation.on-sync config options (bd-t7jq)
Add .beads/config.yaml support for template validation settings: - validation.on-create: warn|error|none (default: none) - validation.on-sync: warn|error|none (default: none) When set to "warn", issues missing required sections (based on type) show warnings but operations proceed. When set to "error", operations fail. Implementation: - Add validation keys to YamlOnlyKeys in yaml_config.go - Add defaults in config.go - Wire up bd create to check validation.on-create config - Wire up bd sync to run validation before export - Add tests for config loading - Update CONFIG.md documentation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -166,12 +166,26 @@ var createCmd = &cobra.Command{
|
||||
estimatedMinutes = &est
|
||||
}
|
||||
|
||||
// Validate template if --validate flag is set
|
||||
// Validate template based on --validate flag or config
|
||||
validateTemplate, _ := cmd.Flags().GetBool("validate")
|
||||
if validateTemplate {
|
||||
// Explicit --validate flag: fail on error
|
||||
if err := validation.ValidateTemplate(types.IssueType(issueType), description); err != nil {
|
||||
FatalError("%v", err)
|
||||
}
|
||||
} else {
|
||||
// Check validation.on-create config (bd-t7jq)
|
||||
validationMode := config.GetString("validation.on-create")
|
||||
if validationMode == "error" || validationMode == "warn" {
|
||||
if err := validation.ValidateTemplate(types.IssueType(issueType), description); err != nil {
|
||||
if validationMode == "error" {
|
||||
FatalError("%v", err)
|
||||
} else {
|
||||
// warn mode: print warning but proceed
|
||||
fmt.Fprintf(os.Stderr, "%s %v\n", ui.RenderWarn("⚠"), err)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Use global jsonOutput set by PersistentPreRun
|
||||
|
||||
Reference in New Issue
Block a user