v0.1 plan: review fixes as failing acceptance tests first; AGENTS.md lessons + deviations rule
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -41,6 +41,17 @@ implementing it one task at a time.
|
||||
compile against them.
|
||||
- Comments say why, not what. `gofmt` decides layout; run it before the gate.
|
||||
|
||||
## Lessons from earlier reviews
|
||||
|
||||
These come from defects found in review; the evidence is in `docs/implementer-log.md`.
|
||||
|
||||
- A type assertion on a value that came from outside your package (`w.(http.Flusher)`, a decoded
|
||||
JSON field) uses the two-value form and handles the `false` case. An unchecked assertion is a
|
||||
panic waiting for a caller you did not think of.
|
||||
- When a rule says "every" or "everywhere", finish by listing each place it applies and checking
|
||||
them one by one. The task shows one place; the rule covers all of them.
|
||||
- Never end a turn by describing what you are about to do. Do it, then report.
|
||||
|
||||
## The gate
|
||||
|
||||
`make gate` must print `gate: ok` before a task is done. It runs offline: `gofmt -l`, `go vet`,
|
||||
@@ -67,6 +78,6 @@ the commit. Be honest: the log is how the owner judges the process.
|
||||
| Status | `done` or `stopped` |
|
||||
| Gate runs | How many times you ran `make gate` |
|
||||
| First gate | `pass` or `fail` for the first run |
|
||||
| Deviations | Anything you did that the task did not say, or `none` |
|
||||
| Deviations | Anything you did that the task did not say, or `none`. If your Notes describe a change you made, it belongs here as well — a row that says `none` next to Notes that describe a change is wrong. |
|
||||
| Notes | Problems you hit and how you solved them, in one or two sentences |
|
||||
| Model | Write `?`. The owner fills this in. |
|
||||
|
||||
Reference in New Issue
Block a user