$npx -y skills add apache/magpie --skill issue-reassessSweep a configured pool of resolved or end-of-life <issue-tracker> issues and re-assess each against the current <default-branch>. Per-issue: invoke issue-reproducer to extract and run the reporter's code, classify the runtime outcome, attach a nature analysis, compose a `v
| 1 | <!-- SPDX-License-Identifier: Apache-2.0 |
| 2 | https://www.apache.org/licenses/LICENSE-2.0 --> |
| 3 | |
| 4 | <!-- Placeholder convention (see ../../AGENTS.md#placeholder-convention-used-in-skill-files): |
| 5 | <project-config> → adopter's project-config directory |
| 6 | <issue-tracker> → URL of the project's general-issue tracker |
| 7 | <issue-tracker-project> → project key within the tracker |
| 8 | <upstream> → adopter's public source repo |
| 9 | <default-branch> → upstream's default branch (master vs main) |
| 10 | <runtime> → recipe for invoking the project's runtime |
| 11 | Substitute these with concrete values from the adopting |
| 12 | project's <project-config>/ before running any command below. --> |
| 13 | |
| 14 | # issue-reassess |
| 15 | |
| 16 | Use this skill when the task is a **campaign** over a bounded set |
| 17 | of resolved or end-of-life `<issue-tracker>` issues: pick the |
| 18 | candidate set, run each reporter's reproducer against |
| 19 | `<default-branch>` via [`issue-reproducer`](../issue-reproducer/SKILL.md), |
| 20 | classify the outcome, attach a nature analysis, and produce a report |
| 21 | a maintainer can scan and act on. The campaign is read-only against |
| 22 | the tracker; the output is advisory. |
| 23 | |
| 24 | This skill is the **campaign layer**. Per-issue mechanics live in |
| 25 | sibling skills: |
| 26 | |
| 27 | - [`issue-reproducer`](../issue-reproducer/SKILL.md) — the |
| 28 | load-bearing per-issue piece: locate the reproducer, classify the |
| 29 | shape, adapt, run, record evidence as `verdict.json`. This skill |
| 30 | calls into it for every candidate. |
| 31 | - [`issue-triage`](../issue-triage/SKILL.md) — sibling for the |
| 32 | unsorted-new pool (this skill handles resolved / EOL / reopened |
| 33 | pools instead). |
| 34 | - [`issue-fix-workflow`](../issue-fix-workflow/SKILL.md) — where |
| 35 | the `still-fails-*` tail goes once the campaign is done; the |
| 36 | campaign produces ready-made reproducers for the fix flow. |
| 37 | - [`issue-reassess-stats`](../issue-reassess-stats/SKILL.md) — |
| 38 | read-only dashboard over the campaign artefacts this skill |
| 39 | produces. |
| 40 | |
| 41 | --- |
| 42 | |
| 43 | ## Golden rules |
| 44 | |
| 45 | **Golden rule 1 — read-only on tracker state.** Even when 30 of 30 |
| 46 | findings say `fixed-on-master` with strong evidence, the campaign |
| 47 | does **not** post 30 comments, transition 30 issues, or close |
| 48 | anything. The output is a report; a maintainer decides whether and |
| 49 | how to publish it. See *Transitioning workflow state* in |
| 50 | [`issue-triage`](../issue-triage/SKILL.md). |
| 51 | |
| 52 | **Golden rule 2 — bounded sweeps only.** A campaign trying to sweep |
| 53 | 200 issues in one session blows context, produces low-quality bulk |
| 54 | output, and means a crash at issue 150 loses 150 issues' work. |
| 55 | Bound the candidate set *before* the loop starts: a query with a |
| 56 | limit, an age bucket, a component slice. Practical first sweeps are |
| 57 | 5–10 issues; sustained campaigns rarely exceed 50. |
| 58 | |
| 59 | **Golden rule 3 — resumable from disk.** A 50-issue run that |
| 60 | crashes at issue 30 must be resumable from issue 31. Per-issue |
| 61 | evidence packages on disk (per |
| 62 | [`<project-config>/reproducer-conventions.md`](../../projects/_template/reproducer-conventions.md)) |
| 63 | are the resumption point — in-memory campaign state is not. |
| 64 | |
| 65 | **Golden rule 4 — surface headlines, not stats.** *"30 |
| 66 | fixed-on-master, 5 still-fail, 15 cannot-run"* — the 5 still-fail |
| 67 | are usually the most important rows. They're issues where work |
| 68 | might actually be done. Surface them at the top of the report; do |
| 69 | not bury them under the `fixed-on-master` majority. |
| 70 | |
| 71 | **Golden rule 5 — recommend, never decide.** *"Close |
| 72 | `<KEY>-1234`"* frames the agent as the decider. Phrase as |
| 73 | recommendation: *"`fixed-on-master`; a maintainer may want to |
| 74 | consider closing after a second pair of eyes."* Workflow decisions |
| 75 | belong to maintainers, applied via a separate skill invocation. |
| 76 | |
| 77 | **Golden rule 6 — no fabricated evidence for `cannot-run-*`.** |
| 78 | *"Probably passes on `<default-branch>`."* That's a guess in a |
| 79 | verdict slot. If it can't be run, the verdict is the `cannot-run-*` |
| 80 | category — no further claim. The classification taxonomy has cells |
| 81 | for these for a reason |