























@@ -0,0 +1,148 @@
1+---
2+name: openclaw-landable-bug-sweep
3+description: "Find or repair small high-confidence OpenClaw bugfix PRs until five are landable."
4+---
5+6+# OpenClaw Landable Bug Sweep
7+8+Autonomous maintainer workflow for producing five landable OpenClaw bugfix PR URLs.
9+Use for broad issue/PR sweeps where the bar is high and the output is PRs, not notes.
10+11+## Target
12+13+Return exactly five PR URLs, each with:
14+15+- bug summary
16+- why the fix is low-risk
17+- proof: local/CI/Testbox/live commands or run IDs
18+- issue/duplicate cleanup done or still pending
19+20+The five URLs may be existing PRs that were reviewed/fixed, or new PRs created from issues/clusters.
21+22+## Companion Skills
23+24+Use `$gitcrawl` for discovery/clustering, `$openclaw-pr-maintainer` for live GitHub mutation rules, `$github-author-context` when contributor trust matters, `$openclaw-testing` for proof choice, `$autoreview` before publishing/landing, and `$crabbox` for broad/E2E/live proof.
25+26+## Candidate Bar
27+28+Accept only when all are true:
29+30+- bug or paper cut, not feature/product/support/docs-only
31+- root cause is proven in current code
32+- dependency behavior checked via upstream docs/source/types when relevant
33+- production/runtime diff is small, ideally much smaller than 500 LOC and always below 500 LOC
34+- tests may be larger, but focused
35+- no new dependency
36+- no new config option
37+- no backward-incompatible behavior
38+- no security/product/owner-boundary decision needed
39+- no broad refactor smell
40+- focused proof is feasible
41+42+Good examples:
43+44+- provider parameter mismatch proven against dependency/API contract
45+- CLI command diverges from adjacent command behavior
46+- narrow runtime state/serialization bug with failing test
47+- issue already fixed on current `main`, with proof and closeable duplicates
48+49+Reject:
50+51+- feature requests, new knobs, migrations, release work, workflow policy, support
52+- auth/security boundary changes unless explicitly assigned
53+- bugs needing live credentials that are unavailable
54+- fixes whose clean shape is a larger architecture move
55+- speculative reports without reproducible/provable cause
56+- UI/UX changes requiring product judgment
57+58+## Sweep Loop
59+60+1. Start clean:
61+- `git status -sb`
62+- `git pull --ff-only`
63+- verify branch is expected, usually `main`
64+2. Build candidate clusters:
65+- `gitcrawl` open issues/PRs, neighbors, and search
66+- live `gh issue/pr view`
67+- include PRs linked from issues and duplicates
68+3. For each cluster:
69+- read issue/PR body, comments, labels, linked refs, current source, adjacent tests
70+- suppress maintainer-owned queue noise unless it is the best fix path
71+- identify opener/author and preserve credit
72+- decide: `repair-existing-pr`, `create-new-pr`, `close-fixed-on-main`, `close-duplicate`, or `reject`
73+4. Prove before patching:
74+- failing test, focused repro, log/source proof, or dependency contract proof
75+- if already fixed on `main`, prove with current source/test/commit and close kindly
76+5. Patch:
77+- prefer existing PR when good and writable
78+- if unwritable or wrong shape, create own PR and preserve useful contributor credit
79+- if no PR exists, create one
80+- add regression test when it fits
81+- changelog for user-facing fixes; thank credited human reporter/contributor
82+6. Review and publish:
83+- run focused proof
84+- run `$autoreview` until no accepted/actionable findings remain
85+- create/update PR with real body and proof fields
86+- push branch
87+- get CI green or document exact external blocker; do not count blocked PRs in the five
88+7. Hygiene:
89+- close duplicates and fixed-on-main issues with proof
90+- never mutate more than five associated items in one cluster without explicit confirmation
91+- comments must be kind, concrete, and include proof/PR/commit links
92+8. Repeat until five landable PR URLs are ready.
93+94+## PR Body Proof
95+96+Use the repo PR template. Include these exact labels:
97+98+```text
99+Behavior addressed:
100+Real environment tested:
101+Exact steps or command run after this patch:
102+Evidence after fix:
103+Observed result after fix:
104+What was not tested:
105+```
106+107+## Existing PR Rules
108+109+- Review code path beyond the diff before trusting it.
110+- If PR is good: fix small issues, run proof, push if writable, get CI green.
111+- If PR is not good but has a useful idea: recreate locally, co-author when warranted, close original with thanks and explanation.
112+- If PR is duplicate or fixed on `main`: comment proof, close.
113+- If maintainer cannot push to contributor branch: create own branch/PR, preserve useful commits or credit.
114+115+## Output Ledger
116+117+Maintain a running ledger:
118+119+```text
120+accepted:
121+- PR URL:
122+ source refs:
123+ bug:
124+ root cause:
125+ fix:
126+ risk:
127+ proof:
128+ CI:
129+ credit/thanks:
130+ cleanup:
131+132+rejected:
133+- ref:
134+ reason:
135+136+closed:
137+- ref:
138+ reason:
139+ proof/comment:
140+```
141+142+Final answer:
143+144+- exactly five accepted PR URLs
145+- 2-4 sentence explainer per PR
146+- proof/CI state per PR
147+- closed duplicates/fixed-on-main refs
148+- current branch/status
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。