docs: record wave 3 acceptance, hazard #7, and gaps carried into wave 4
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -194,3 +194,39 @@ orchestrator's own shell (exit 144) because the bash -c command line contained t
|
|||||||
literal string. Same bug made `pgrep -f "claude -p"` report a phantom running worker.
|
literal string. Same bug made `pgrep -f "claude -p"` report a phantom running worker.
|
||||||
Use the bracket trick (`ps aux | grep "[c]laude -p"`) or match on argv shape
|
Use the bracket trick (`ps aux | grep "[c]laude -p"`) or match on argv shape
|
||||||
(`ps -eo pid,args | grep -E "tasks/(wave-guard|run-task)" | grep -v grep`).
|
(`ps -eo pid,args | grep -E "tasks/(wave-guard|run-task)" | grep -v grep`).
|
||||||
|
|
||||||
|
## HAZARD #7 — never `git add -A` while workers are running
|
||||||
|
The orchestrator committed twice (10:09, 10:22) while E1/E2 were actively writing
|
||||||
|
files. `git add -A` swept half-finished wave-3 SOURCE into commits whose messages said
|
||||||
|
"orchestration tooling". That silently defeats the whole reason this repo exists as git:
|
||||||
|
per-wave `git diff --stat` verification. It also produced a fake-clean `git status`,
|
||||||
|
which briefly looked like the workers had produced nothing at all.
|
||||||
|
**Rules:**
|
||||||
|
- While a wave is in flight, commit with an EXPLICIT pathspec only, e.g.
|
||||||
|
`git add docs/HANDOFF.md tasks/ && git commit ...` — never `-A`, never `.`.
|
||||||
|
- Do the wave's own `git add -A` commit only AFTER the sentinel exists and the build
|
||||||
|
and tests have been independently verified.
|
||||||
|
- If it happens anyway: `git reset --soft <last-good>`, `git reset`, then re-commit in
|
||||||
|
honest slices. Safe here — the repo has no remote and checkpoints exist. Done once
|
||||||
|
already (commits d947aa7/058e864 were rebuilt into dbb0726 + a022a1b).
|
||||||
|
|
||||||
|
## Wave 3 — COMPLETE, verified by the orchestrator on 09-06
|
||||||
|
E1 (nav/setup/locations/settings) and E2 (library/detail/scan) both reported SUCCESS;
|
||||||
|
E2 took one quota wait and run-task.sh resumed it correctly.
|
||||||
|
| Check | Result |
|
||||||
|
|---|---|
|
||||||
|
| `assembleDebug` | **exit 0** |
|
||||||
|
| `testDebugUnitTest` | **exit 0 — 91 tests, 0 failures, 0 errors** (was 68) |
|
||||||
|
| boundary check | clean: neither touched build files or the other's packages |
|
||||||
|
Commit `a022a1b` (32 files, +3081).
|
||||||
|
|
||||||
|
**Known gaps carried into wave 4 — do not lose these:**
|
||||||
|
1. **Cover pipeline has NEVER run against a real PocketBase.** Download-on-create and
|
||||||
|
multipart upload-on-sync were only exercised against fakes (worker C's own report).
|
||||||
|
This is the single most likely place a real bug is hiding. Wave 4 must do a live
|
||||||
|
round-trip against 127.0.0.1:8090.
|
||||||
|
2. Settings shows the PocketBase user id, not the email — `AuthRepository`/`SettingsStore`
|
||||||
|
never persist the login email (E1's report). Cosmetic, needs a data-layer change.
|
||||||
|
3. No Room foreign keys between books/shelves/bookcases (deliberate, worker C).
|
||||||
|
4. No emulator on this box: nothing has ever been *run*, only compiled and unit-tested.
|
||||||
|
Paparazzi PNGs are the only evidence of how any of it actually looks.
|
||||||
|
|||||||
Reference in New Issue
Block a user