feat(executors): NEED-DECISION and BLOCKED carry a CLASS tag
This commit is contained in:
+5
-3
@@ -27,8 +27,9 @@ Every choice was made in the plan or is a NEED-DECISION to report.
|
||||
|
||||
- Apply the FIX PLAN to the letter — fix the ROOT CAUSE named in DIAGNOSIS,
|
||||
not the symptom. A plan hole or an open choice (naming, data shape, API
|
||||
surface, dependency) → STOP, report `NEED-DECISION` with the precise
|
||||
question. Never re-investigate or improvise a different fix.
|
||||
surface, dependency, a user-visible choice such as placement, wording or
|
||||
behavior) → STOP, report `NEED-DECISION` with the precise question and
|
||||
its `CLASS:`. Never re-investigate or improvise a different fix.
|
||||
- Stay inside the contract FILE SCOPE. A needed file outside it →
|
||||
`NEED-DECISION` (the orchestrator owns scope changes); don't touch it.
|
||||
- Add or update the regression test the plan names — it must fail before the
|
||||
@@ -73,5 +74,6 @@ FILE(S) : <created/modified paths>
|
||||
TEST(S) : <regression test added/updated + final suite run result, verbatim line>
|
||||
SMOKE : <build/typecheck result if run, or n/a>
|
||||
NOTES : <DONE: deviations (must be none) | NEED-DECISION: the exact
|
||||
question + the options you see | BLOCKED: the blocker verbatim>
|
||||
question + the options you see + CLASS: visible | public-name |
|
||||
scope | internal | BLOCKED: the blocker verbatim>
|
||||
```
|
||||
|
||||
+5
-3
@@ -37,8 +37,9 @@ report below is optional on this path (the dispatcher needs the edit applied
|
||||
## EXECUTION RULES
|
||||
|
||||
- Follow the plan to the letter. A plan hole or an open choice (naming,
|
||||
data shape, API surface, dependency) → STOP, report `NEED-DECISION` with
|
||||
the precise question. Never improvise a design decision.
|
||||
data shape, API surface, dependency, a user-visible choice such as
|
||||
placement, wording or behavior) → STOP, report `NEED-DECISION` with the
|
||||
precise question and its `CLASS:`. Never improvise a design decision.
|
||||
- Stay inside the contract FILE SCOPE. A needed file outside it →
|
||||
`NEED-DECISION` (the orchestrator owns scope changes); don't touch it. On
|
||||
the applier path the scope is the files named in the bundle item — apply
|
||||
@@ -84,5 +85,6 @@ STATUS : DONE | NEED-DECISION | BLOCKED
|
||||
FILES : <created/modified paths>
|
||||
TESTS : <added/updated + final suite run result, verbatim line>
|
||||
NOTES : <DONE: deviations (must be none) | NEED-DECISION: the exact
|
||||
question + the options you see | BLOCKED: the blocker verbatim>
|
||||
question + the options you see + CLASS: visible | public-name |
|
||||
scope | internal | BLOCKED: the blocker verbatim>
|
||||
```
|
||||
|
||||
+6
-1
@@ -43,6 +43,10 @@ the edit applied + self-verified, not the report grammar).
|
||||
BLOCKED`, report why (the orchestrator escalates to `/bugfix`), never
|
||||
expand scope yourself. On the applier path it is the files named in the
|
||||
bundle item — apply only those.
|
||||
- An open user-visible choice the contract does not settle (placement,
|
||||
wording, behavior) → `STATUS BLOCKED` with `CLASS: visible | public-name |
|
||||
scope` in NOTES, BEFORE editing anything. The orchestrator asks the user
|
||||
and re-dispatches once.
|
||||
- If tests exist for the affected code, run them. Detection cascade:
|
||||
```bash
|
||||
# JS/TS
|
||||
@@ -78,5 +82,6 @@ STATUS : DONE | BLOCKED
|
||||
FILE(S) : <changed files — suffix files you CREATED with " (new)">
|
||||
FIX : <one-line description>
|
||||
SMOKE : <test/build result, verbatim line>
|
||||
NOTES : <BLOCKED: the blocker; DONE: none>
|
||||
NOTES : <BLOCKED: the blocker, + CLASS: visible | public-name | scope when
|
||||
you halted at an open choice before editing; DONE: none>
|
||||
```
|
||||
|
||||
@@ -311,6 +311,9 @@ lock "bugfixer passes" "$BF" "## FOUR PASSES"
|
||||
lock "bugfixer stays minimal" "$BF" "keep the fix minimal"
|
||||
lock "bugfixer neg control" "$BF" "**Negative control.**"
|
||||
lock "bugfixer test must fail" "$BF" "A test that passes both ways"
|
||||
lock "feater class tag" "$FE" "CLASS:"
|
||||
lock "bugfixer class tag" "$BF" "CLASS:"
|
||||
lock "hotfixer class tag" "$REPO/agents/hotfixer.md" "CLASS:"
|
||||
|
||||
echo ""
|
||||
echo "gates: $PASS pass, $FAIL fail"
|
||||
|
||||
Reference in New Issue
Block a user