一键导入
issue-fix
Fix all mechanically fixable issues identified by issue-triage
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Fix all mechanically fixable issues identified by issue-triage
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Audit and improve repository health — docs sync, best practices, skill extraction, and maintenance recommendations
List all currently open issues
Create a new issue in doc/issues/
Triage all open issues — analyze complexity, feasibility, and whether user decisions are needed
| name | issue-fix |
| description | Fix all mechanically fixable issues identified by issue-triage |
| argument-hint | [issue-number] |
Implement fixes for all open issues that were triaged as mechanically fixable (no user decision needed).
Read the rules: Read doc/issues/CLAUDE.md to understand the issue lifecycle and resolution process.
Collect candidates: List all *.md files in doc/issues/ (excluding CLAUDE.md and the resolved/ subdirectory). Read each file and filter to those that meet ALL of these criteria:
status: open or status: in-progress## Triage sectionMechanical fix: yes and Requires user decision: noIf no triage data exists: If open issues exist but none have been triaged, inform the user to run /issue-triage first. Do NOT attempt to fix un-triaged issues.
Fix issues in priority order: Sort candidates by priority (critical > high > medium > low), then process each issue.
IMPORTANT — use subagents to conserve context: Delegate the implementation of each individual issue to a subagent via the Agent tool. The parent (you) is responsible for orchestration only: reading issues, dispatching subagents, collecting results, and presenting the final summary. This prevents the main conversation context from being consumed by the details of each fix.
Subagent dispatch pattern:
git diff or read the changed files to confirm the changes are correct before moving to the next issue.Steps each subagent must perform (include these in the subagent prompt):
a. Update status: Change the issue's status to in-progress and update the updated date.
b. Implement the fix: Based on the issue description and triage analysis, make the necessary code changes. Follow all project conventions in CLAUDE.md (code style, testing requirements, etc.).
c. Add or update tests: Analyze the changes you made and add tests that cover the new or modified behavior. This is a REQUIRED step — do not skip it.
Analysis process:
*_test.go): for new/changed handlers, utility functions, error conditions, security validations (path traversal, input sanitization). Follow the existing httptest pattern in server_test.go.e2e/tests/*.spec.ts): for new/changed UI interactions (buttons, drag/resize, toggles, dropdowns), visual state changes, and user-facing workflows. Follow the existing patterns in e2e/tests/.scripts/).test.describe blocks for Playwright.Minimum test requirements per change type:
| Change type | Required tests |
|---|---|
| New HTTP handler/endpoint | Unit test: success path, 403 (path traversal), 404 (not found), error conditions |
| New CLI flag | Unit test: flag parsing, behavior toggle |
| New frontend button/interaction | E2e test: element exists, click produces expected result |
| New frontend toggle/state | E2e test: toggle changes state, state reflected in UI |
| Security-sensitive change | Unit test: ALL malicious input variants (path traversal, XSS payloads, oversized input) |
| Bug fix | Regression test: reproduces the original bug scenario, verifies it no longer occurs |
d. Verify the fix:
go vet ./... to check for issues.go test ./... to ensure all tests pass (including the new ones).cd e2e && npx playwright test to verify.e. Update specification: If the fix changes or adds user-visible behavior (new endpoints, changed defaults, new CLI flags, altered response formats, etc.), update doc/SPEC.md to reflect the new behavior. This keeps the authoritative spec in sync with the implementation. Skip this step for purely internal changes (refactors, test fixes, comment updates) that don't affect documented behavior.
f. Resolve the issue:
status to resolved and set the updated date.## Resolution section describing what was changed, including which tests were added.doc/issues/resolved/.g. If a fix fails or turns out to need user input: Do NOT force a fix. Instead, update the triage section to note that the issue is more complex than initially assessed, set Mechanical fix: no and Requires user decision: yes, and leave the status as open. Move on to the next issue.
Report: After processing all candidates, present a summary:
| Issue | Title | What was done |
|---|---|---|
| #NNNN | ... | ... |
| Issue | Title | Reason |
|---|---|---|
| #NNNN | ... | ... |
| Issue | Title | Decision needed |
|---|---|---|
| #NNNN | ... | ... |
Requires user decision: yes. List them in the "Skipped" section.go test or go vet fails after a fix, revert the changes for that issue and report it as "Could not fix".