Description
53 of 82 *_validation.go files repo-wide (mostly in pkg/workflow) raise raw errors.New/fmt.Errorf for user-facing YAML/frontmatter validation instead of using the existing NewValidationError(field, value, reason, suggestion) helper (pkg/workflow/workflow_errors.go, pkg/parser/validation_error.go). These are the messages workflow authors see directly when gh aw compile rejects invalid frontmatter, so they matter more than generic internal errors.
Task
Migrate the 5 highest-traffic offenders to NewValidationError: pkg/workflow/secrets_validation.go, glob_validation.go, permissions_validation.go, docker_validation.go, engine_validation.go. Split each existing message into field / value / reason / suggestion (with a concrete valid example), following .github/skills/error-messages/SKILL.md. No behavioral change — message construction only.
Acceptance Criteria
Expected Impact
Improves the clarity of the most user-visible error messages in the repo — those thrown at gh aw compile time when a workflow author's frontmatter is invalid.
Suggested Agent
Repository Quality Improvement Agent, or a general coding agent
Estimated Effort
Medium (1-4 hours)
Data Source
DeepReport analysis, 2026-08-26 cycle — Repository Quality Improvement Report, Error Message Actionability Debt (discussion #56045, Task 2)
Generated by 🔬 Deep Report · claude · agent · 151 AIC · ⌖ 9.14 AIC · ⊞ 12.4K · ◷
Description
53 of 82
*_validation.gofiles repo-wide (mostly inpkg/workflow) raise rawerrors.New/fmt.Errorffor user-facing YAML/frontmatter validation instead of using the existingNewValidationError(field, value, reason, suggestion)helper (pkg/workflow/workflow_errors.go,pkg/parser/validation_error.go). These are the messages workflow authors see directly whengh aw compilerejects invalid frontmatter, so they matter more than generic internal errors.Task
Migrate the 5 highest-traffic offenders to
NewValidationError:pkg/workflow/secrets_validation.go,glob_validation.go,permissions_validation.go,docker_validation.go,engine_validation.go. Split each existing message intofield/value/reason/suggestion(with a concrete valid example), following.github/skills/error-messages/SKILL.md. No behavioral change — message construction only.Acceptance Criteria
NewValidationErrorcalls with concrete example suggestionsgo test ./pkg/workflow/... -run Validationpasses (update string-matching assertions as needed)make lint-error-messages-reportshows 0 violations for these 5 filesExpected Impact
Improves the clarity of the most user-visible error messages in the repo — those thrown at
gh aw compiletime when a workflow author's frontmatter is invalid.Suggested Agent
Repository Quality Improvement Agent, or a general coding agent
Estimated Effort
Medium (1-4 hours)
Data Source
DeepReport analysis, 2026-08-26 cycle — Repository Quality Improvement Report, Error Message Actionability Debt (discussion #56045, Task 2)