Problem
/assess-ticket produces structured verdicts across four dimensions: drift, relevance, progress, and complexity. None of these capture whether the agent recommends implementing the ticket — whether its framing, scope, or proposed fix hold up to scrutiny.
- Drift checks "do referenced files still exist? do API references still match?" — narrow factual anchoring.
- Relevance checks "does the motivation still apply?" — whether the underlying need persists.
- Progress checks "has the work been done?"
- Complexity classifies effort.
A ticket can be factually anchored, motivated, unimplemented, and well-sized — and still be wrong about scope or proposed solution. The skill currently has no way to surface that.
Context
This gap was identified during the design of #460 (which adds the same evaluation criteria to /design-and-plan). The two skills serve different consumers — /design-and-plan consumes evaluation conversationally during active design; /assess-ticket produces a structured artifact for triage and portfolio decisions — so each needs its own integration of the criteria.
The shared criteria live in packages/agents/content/skills/_data/ticket-evaluation.md, created by #460 (landed in commit 8263772).
Solution
Add Advisability as a fifth dimension to /assess-ticket. It captures the agent's recommendation on whether to implement the ticket as written, synthesizing the four facets defined in _data/ticket-evaluation.md (problem reality, scope correctness, solution soundness, title accuracy).
Dimension shape
- Name: Advisability
- Icon: 🧭
- Verdicts:
- 🟢
advisable — recommend implementing as written; all four facets pass scrutiny
- 🟠
questionable — recommend with concerns; one or more facets surface issues warranting human review
- 🔴
inadvisable — recommend against implementing as written; rework needed before proceeding
- Evidence: prose bullets, one per concern surfaced; omit when no facet fires. Bullets do not prefix facet names.
- Position: between Progress and Complexity in the assessment block. Concern-scale dimensions stay grouped; Complexity remains last as the size-scale outlier.
- Skip: when progress is
complete, matching the existing complexity carve-out.
Next-steps integration
| Verdict |
Action |
questionable |
♻️ Revise ticket to address advisability concerns |
inadvisable |
🏁 Close as inadvisable |
The ♻️ "Revise" action is distinct from the existing ♻️ "Update ticket to match current codebase state" (different intent: content/scope rework vs factual sync). When both fire, the combined next-steps list shows them as two separate options rather than collapsing under the dedupe rule.
Baseline: advisable is baseline; non-baseline verdicts trigger the next-steps prompt.
Compatibility
Advisability is orthogonal to existing dimensions:
- A ticket can have 🟢 drift (files exist) but 🔴 advisability (proposed fix is wrong).
- A ticket can have 🟢 relevance (motivation applies) but 🟠 advisability (scope is too narrow).
Dependencies
Acceptance criteria
Problem
/assess-ticketproduces structured verdicts across four dimensions: drift, relevance, progress, and complexity. None of these capture whether the agent recommends implementing the ticket — whether its framing, scope, or proposed fix hold up to scrutiny.A ticket can be factually anchored, motivated, unimplemented, and well-sized — and still be wrong about scope or proposed solution. The skill currently has no way to surface that.
Context
This gap was identified during the design of #460 (which adds the same evaluation criteria to
/design-and-plan). The two skills serve different consumers —/design-and-planconsumes evaluation conversationally during active design;/assess-ticketproduces a structured artifact for triage and portfolio decisions — so each needs its own integration of the criteria.The shared criteria live in
packages/agents/content/skills/_data/ticket-evaluation.md, created by #460 (landed in commit 8263772).Solution
Add Advisability as a fifth dimension to
/assess-ticket. It captures the agent's recommendation on whether to implement the ticket as written, synthesizing the four facets defined in_data/ticket-evaluation.md(problem reality, scope correctness, solution soundness, title accuracy).Dimension shape
advisable— recommend implementing as written; all four facets pass scrutinyquestionable— recommend with concerns; one or more facets surface issues warranting human reviewinadvisable— recommend against implementing as written; rework needed before proceedingcomplete, matching the existing complexity carve-out.Next-steps integration
questionableinadvisableThe ♻️ "Revise" action is distinct from the existing ♻️ "Update ticket to match current codebase state" (different intent: content/scope rework vs factual sync). When both fire, the combined next-steps list shows them as two separate options rather than collapsing under the dedupe rule.
Baseline:
advisableis baseline; non-baseline verdicts trigger the next-steps prompt.Compatibility
Advisability is orthogonal to existing dimensions:
Dependencies
Acceptance criteria
/assess-ticketSKILL.md gains an Advisability dimension that references_data/ticket-evaluation.md.advisable/questionable/inadvisable.complete, matching the complexity carve-out.next-steps-after-assessment.mdadds Advisability to the baseline-verdict table and the action-mapping tables.next-steps-after-assessment.mddistinguishes ♻️ "Revise ticket to address advisability concerns" from ♻️ "Update ticket to match current codebase state" — when both fire, both appear as separate options.assess-ticket/SKILL.mdis updated if the new dimension introduces a principle worth surfacing.