feat: add /validate-ticket skill for post-merge validation #230
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ldraney/claude-custom!230
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "228-validate-ticket-skill"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds the
/validate-ticketrouting skill -- the right-side mirror of/review-ticket. Where/review-ticketgatestodo -> next_up(scope review),/validate-ticketgatesvalidation -> done(production verification).Changes
skills/validate-ticket/SKILL.md-- new routing skill that parses a board item reference, resolves the Forgejo issue and merged PR, spawns a fresh-context validation agent, and handles PASS/PARTIAL/FAIL verdictsTest Plan
cat ~/.claude/skills/validate-ticket/SKILL.mdskill-validate-ticket,sop-validation, andtemplate-validationnotesreview-ticketpattern (name, description, argument-hint)/validate-ticket board-slug#item-idon an item in thevalidationcolumnReview Checklist
Related Notes
pal-e-agency-- the project this work belongs toskill-validate-ticket(id 841) -- the pal-e-docs skill note this routing file delegates tosop-validation-- the post-merge validation SOP with repo-type checkliststemplate-validation-- the validation note templatereview-ticketskill (left-side gate)QA Review: /validate-ticket skill
Structure (review-ticket mirror check)
name,description,argument-hint-- matches review-ticket pattern exactlyAcceptance Criteria (#228)
SKILL.mdexists atskills/validate-ticket/SKILL.mdboard-slug#Nformat)skill-validate-ticket,sop-validation,template-validationdoneon PASS onlyvalidationScope Check
Nits
None found. Clean implementation.
VERDICT: APPROVED
PR #230 Review
DOMAIN REVIEW
Tech stack: Claude Code skill definition (Markdown frontmatter + structured instructions). Domain: agent routing, pal-e-docs MCP integration, kanban workflow automation.
Pattern conformance with review-ticket: The file follows the exact structural pattern of
skills/review-ticket/SKILL.md:name,description,argument-hint-- all present and correctly formatted.Deliberate differences from review-ticket (all correct):
pointsfield is omitted from Step 2 extraction -- consistent withfeedback_no_points.md(points are deprecated).pal-e-docs references (all three present in Step 4 agent prompt):
skill-validate-ticket(id 841) -- the delegated skill notesop-validation-- repo-type checkliststemplate-validation-- validation note formatColumn gate (Step 2): Correctly checks for
validationcolumn. Warning message matches review-ticket's pattern with appropriate column name substitution.Verdict handling (Step 5):
doneviaupdate_board_item, confirms, reminds about/update-docs. Only path that moves the item.validation. Explains blocked checks. Tells user to re-run manually.validation. Details expected vs. observed. Notes follow-up issues. Suggestsin_progressrework.Convention section: Clearly articulates the QA vs. validation distinction (left-side pre-merge vs. right-side post-merge). Good documentation for agents that encounter this skill.
Step 6
gate-validation-donehook reference: References a hook that enforces the validation gate. This is forward-looking (the hook is part of the broader #209 pipeline) but appropriate since the skill documents the expected enforcement mechanism.BLOCKERS
None.
This is a single Markdown skill file -- no executable code, no user input handling, no secrets, no auth paths. The BLOCKER criteria (test coverage for new functionality, unvalidated input, secrets in code, DRY auth violations) do not apply to skill routing definitions. The skill delegates all execution to a spawned agent that reads the actual skill note from pal-e-docs.
NITS
PR body section heading: The template convention uses
## Relatedbut this PR uses## Related Notes. Cosmetic only -- does not affect functionality or automation.Validation note slug pattern appears in two places: Step 5 (PASS verdict) mentions
validation-{issue-number}-{date}and Step 6 mentionsvalidation-{issue-number}-{YYYY-MM-DD}. The date format is slightly inconsistent between the two references ({date}vs.{YYYY-MM-DD}). The Step 6 version is more precise -- consider making Step 5 match.SOP COMPLIANCE
228-validate-ticket-skillfollows{issue-number}-{kebab-case-purpose}PROCESS OBSERVATIONS
This PR completes the right-side mirror of the kanban validation pipeline (issue #209). With
/review-ticketgatingtodo -> next_upand/validate-ticketgatingvalidation -> done, the full left-to-right kanban flow now has skill-based gates at both critical transitions. This is a DORA deployment frequency enabler -- automated validation gates reduce manual ceremony and make themerged != donedistinction enforceable.The skill is a routing layer only -- all domain logic lives in the pal-e-docs notes (
skill-validate-ticket,sop-validation,template-validation). This separation is correct: updating validation checklists does not require a PR to claude-custom.VERDICT: APPROVED