Repository navigation
Commit f8ef8b4
Triage bot: require a one-line bug statement, restated or retracted on follow-up (#5441)
* feat(triage): require a one-line bug statement, restated or retracted on follow-up
The triage bot's bug declarations can bury the actual claim in prose,
leaving the reporter's vague title as the only visible problem
statement (#5390). Require a concise one-line statement of the fault
whenever the bot classifies as bug, and require follow-up reviews to
either restate or explicitly retract that statement rather than let
it stand unexamined.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: scope the restate-or-retract rule to statements that actually exist
Early-exit gates (step 1a/1b) can label an issue bug without reaching
step 3, so no one-line statement is ever written for them. Clarify
the follow-up rule doesn't apply in that case, so the bot isn't told
to hunt for a line that was never produced.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: clarify step 9's bug-statement clause excludes gate-only paths
Gates 1a/1b apply a type label without reaching step 3, so there is
no one-line statement to carry into the comment on those paths.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: close the soft-gate escape hatch on restating/retracting a bug statement
Tie the standing-claim check to the exact comment step 1 locates
(rather than an implied scan of "any prior comment"), and require the
statement to be restated even when unchanged, matching the existing
"say so" rule for classification/priority/root-cause. The previous
"if one is in play" wording let an agent skip the restate/retract on
a round where new evidence happened not to touch the bug claim.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: require the bug statement when follow-up first reclassifies to bug
The restate/retract rule only fired when a prior comment already
carried a statement, so a follow-up that newly reclassifies an issue
to bug (from configuration/question/unclear) never wrote one -
defeating the point for exactly the issues this feature exists to
catch.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: carry the bug statement into a duplicate-close comment
A high-confidence duplicate close (step 4) runs after step 3 writes
the one-line bug statement, but used its own terse comment template
that never mentioned it - silently dropping the statement on exactly
the close path step 9's full template doesn't reach.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: drop a stale bug statement if investigation reverses the call, split run-on step 9 sentence
Step 5's investigation can show the step 3 classification was wrong
(bug -> actually configuration), but nothing told the agent to revise
or drop the now-stale one-line statement before step 9 posts it.
Also split step 9's single run-on sentence so the bug-statement
conditional isn't buried inside the general comment-content list.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: point issue-pr at the triage comment's bug statement
issue-pr builds its PR from the triage comment's classification,
priority and root-cause pointer, but had no pointer to the new
one-line bug statement - risking the PR summary restating the
reporter's vague symptom instead of the verified fault.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: point issue-pr at the latest bug statement, not just the first-pass one
A follow-up review can write the first bug statement for an issue
(on a reclassification) or supersede the original with a sharpened
one. issue-pr's pointer only named the first-pass comment, so it
could use a stale or absent claim when a follow-up comment is the
real source.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
* fix: cover gate-applied bug labels that have no bug statement
The split and evidence gates apply a type label without investigating, so
a bug label can exist with no one-line statement. issue-pr now stops and
asks for a full triage instead of falling back to the reporter's title,
and issue-triage-followup writes the statement on the first full
investigation that confirms the bug, even when the label is already there.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: write a fresh bug statement when a retracted issue becomes a bug again
The follow-up rule keyed on "no earlier bot comment has a statement", so
an issue whose statement was retracted and that later went back to bug
kept the stale, retracted one as cover. It now keys on whether there is
a live statement to restate, and issue-pr ignores retracted statements.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>1 parent 0dab350 commit f8ef8b4
3 files changed
Lines changed: 17 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
18 | 20 | | |
19 | 21 | | |
20 | 22 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
53 | 60 | | |
54 | 61 | | |
55 | 62 | | |
56 | 63 | | |
57 | | - | |
| 64 | + | |
58 | 65 | | |
59 | 66 | | |
60 | 67 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| 76 | + | |
| 77 | + | |
76 | 78 | | |
77 | 79 | | |
78 | 80 | | |
79 | 81 | | |
80 | | - | |
| 82 | + | |
81 | 83 | | |
82 | 84 | | |
83 | 85 | | |
| |||
106 | 108 | | |
107 | 109 | | |
108 | 110 | | |
| 111 | + | |
109 | 112 | | |
110 | 113 | | |
111 | 114 | | |
| |||
131 | 134 | | |
132 | 135 | | |
133 | 136 | | |
| 137 | + | |
| 138 | + | |
134 | 139 | | |
135 | 140 | | |
136 | 141 | | |
| |||
0 commit comments