协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
rework-loop【开发与工程】Structured rework with git blame attribution for failed goal iterations. Maps failures to responsible changes and routes targeted fix briefs.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Structured rework with blame attribution for failed goal iterations. When the oracle says "fail," don't blindly retry — identify what broke, map it to the responsible change, and route a targeted fix.
fail verdict during a goal iterationBlind retry is the #1 waste in autonomous loops. A rework loop instead:
git diff / git blame to find the responsible changeOracle: FAIL
│
▼
Parse failure → "tests/auth.test.ts:45 — token refresh assertion fails"
│
▼
Blame → "src/auth/refresh.ts:23 changed in this iteration"
│
▼
Rework brief → {file: "src/auth/refresh.ts", constraint: "only fix refresh logic"}
│
▼
Route → backend-engineer or typescript-reviewer
│
▼
Track → attempts[src/auth/refresh.ts] += 1
The rework brief is a structured context packet for the next iteration:
## REWORK BRIEF
**Goal:** {original objective}
**Iteration:** {N} (rework attempt {M} for this location)
**Failing evidence:**
- Test: tests/auth.test.ts:45 — "should refresh expired tokens"
- Error: Expected token.expiresAt to be > now, got 2024-01-01
**Root cause (blame):**
- File: src/auth/refresh.ts:23
- Change: Added early return before expiry check
- Commit: (this iteration, uncommitted)
**Constraint:**
- ONLY modify src/auth/refresh.ts
- DO NOT touch test files (they define correct behavior)
- The refresh logic must handle: valid token, expired token, missing token
**Suggested fix:**
- Remove the early return at line 23
- Ensure expiry check runs before refresh attempt
Rework escalates to triage when:
| Condition | Action |
|---|---|
| 3+ rework attempts on same location | Escalate: "persistent trouble spot" |
| Rework introduces new failures | Escalate: "regression cascade" |
| Blame maps to multiple unrelated files | Escalate: "scope too broad for targeted rework" |
| No clear blame (flaky test, env issue) | Escalate: "non-deterministic failure" |
git diff --name-only (this iteration vs last good)git diff <file> to extract specific hunksTrack attempts per file/function to detect patterns:
{
"src/auth/refresh.ts": {
"attempts": 3,
"lastAttempt": "2024-01-15T10:30:00Z",
"outcomes": ["fail", "fail", "pass"],
"totalCost": 1.20
}
}
When attempts >= 3 without convergence: this is a persistent trouble spot.
The loop should escalate rather than keep burning budget.
/goal: Rework replaces blind retry in the maker-oracle loopcompletion-oracle.js: Oracle's failReasons feed into blame parsing/triage: Escalated rework items go to triage inbox