checkStrictWarnings performs additional checks in strict mode
(tasks []*model.Task, result *ValidationResult)
| 564 | |
| 565 | // checkStrictWarnings performs additional checks in strict mode |
| 566 | func (v *Validator) checkStrictWarnings(tasks []*model.Task, result *ValidationResult) { |
| 567 | for _, task := range tasks { |
| 568 | // Warn about tasks with no status |
| 569 | if task.Status == "" { |
| 570 | result.AddIssue(LevelWarning, task.ID, task.FilePath, |
| 571 | "task has no status specified (will default to pending)") |
| 572 | } |
| 573 | |
| 574 | // Warn about tasks with no priority |
| 575 | if task.Priority == "" { |
| 576 | result.AddIssue(LevelWarning, task.ID, task.FilePath, |
| 577 | "task has no priority specified (will default to medium)") |
| 578 | } |
| 579 | |
| 580 | // Warn about tasks with no effort |
| 581 | if task.Effort == "" { |
| 582 | result.AddIssue(LevelWarning, task.ID, task.FilePath, |
| 583 | "task has no effort specified (will default to medium)") |
| 584 | } |
| 585 | |
| 586 | // Warn about tasks with no group |
| 587 | if task.Group == "" { |
| 588 | result.AddIssue(LevelWarning, task.ID, task.FilePath, |
| 589 | "task has no group specified") |
| 590 | } |
| 591 | |
| 592 | // Warn about tasks with no tags |
| 593 | if len(task.Tags) == 0 { |
| 594 | result.AddIssue(LevelWarning, task.ID, task.FilePath, |
| 595 | "task has no tags") |
| 596 | } |
| 597 | |
| 598 | // Warn about empty body |
| 599 | if strings.TrimSpace(task.Body) == "" { |
| 600 | result.AddIssue(LevelWarning, task.ID, task.FilePath, |
| 601 | "task has no description/body content") |
| 602 | } |
| 603 | } |
| 604 | } |