docs: bound #477 command witness fix and resume #480

This commit is contained in:
Erik 2026-09-05 11:46:44 +02:00
parent 9556c17480
commit 350340d2ed
3 changed files with 72 additions and 2 deletions

View file

@ -718,9 +718,12 @@ Update immediately when a slice changes state. Chat is not the ledger.
---
**S5 current supplement (2026-09-05, packet§50):** #477 patch written in its
scratch, compiling/testing; no accepted return or new client run. Lead verified
scratch, returned Release0W0E/11 focused/312 portableGPU; one narrow command-
recording test gap is contracted in477-fix-round1-command-witness.md. No
accepted return or new client run. Lead verified
#480's retail/paired-binary child publication and contracted the separate
shared prepared-cache fix in480-equipped-render-publication-contract.md.
shared prepared-cache fix in480-equipped-render-publication-contract.md;
Rawls implements it in fresh s5-480-openai-impl at9556c1748.
Rynthid Recall6150→3032001C corroborates owner generation4; historical route
labels are not location evidence (479-rynthid-location-evidence.md). #479
transform cause remains unproven. No change to G4 FAIL or the open obligations.

View file

@ -0,0 +1,55 @@
# #477 fix round1 — execute the actual buffer recording path
Lead return check2026-09-05. No production synchronization error found in the
returned three fixes. This is one bounded test-evidence finding, before the
two independent review lenses, not a new renderer scope.
The frozen round0 scratch remains at29730506c with five changed files. The
lead read all production/test diffs and the report, checked the final TRX
counts and mutation failures, and independently rehashed the source. Release
log says0W0E; focused11/11 and portableGPU312/312. Those results are real but
do not satisfy the copy-recording part of the original contract.
## Finding F1
BufferCopyDependencySchedule_CoversSameDrainChainsAndEarlierDrainsOnlyForMigrations
constructs arrays of copy-kind enums and calls a Boolean predicate plus a
barrier factory. It never records an upload, migration or second drain.
UploadQueue_RecordsMigrationBarrierImmediatelyBeforeItsDependentCopy checks
substring order. Its mutation fails on missing text, not an emitted command.
Therefore same-drain/A-to-B-to-C/across-drain execution is NOT proved. The
original contract explicitly requires the actual recording body, not a
separately reconstructed schedule. Do not claim these cases covered solely
by the current tests' names.
## Bounded correction
Replace that synthetic schedule claim with a test exercising the real
production native recording body. A test-local Silk native-call interception
fixture is acceptable, or a narrowly extracted body directly invoked by
VulkanUploadQueue.Record as allowed in the original contract. Do not add a
generic recorder, planner, history map, second queue or driver dependency to
the hermetic lane. Prefer no production change; if extraction is necessary,
keep the loop/masks/ranges/order identical and mechanically bind its caller.
Capture actual CmdCopyBuffer and CmdPipelineBarrier2 arguments/order for:
staging-to-migration in one drain, A-to-B-to-C in one drain, then a producer
in an earlier drain followed by migration. Verify exact source/destination
handles and offsets/size, dependency immediately before the affected read,
and the unchanged one trailing draw-consumer barrier. Include independent
staging/no unnecessary pre-copy barrier and empty/drained-queue behavior.
No screenshots or physical Vulkan run by the implementer.
Remove the actual production pre-migration barrier again: the new command
witness must fail at the missing/wrong command sequence, not a source-text
assertion. Restore raw hashes and rerun the focused and affected portableGPU
lane plus Release0W0E. Source guards may remain as secondary binding checks.
No need to repeat the unchanged first three mutations unless their source or
tests change; preserve the existing raw/TRX proof and clearly scope reuse.
Only the existing #477 test file and, if indispensable, the exact recording
body in VulkanUploadQueue may change. Other production source hashes remain
frozen. Record the narrow result/commands and revised hashes; lead verifies
before independent API/behavior and production/lifetime reviews. No commit,
client launch, other scratch edits or hidden scope expansion. Both clients
must be absent before EVERY build/test. The owner's review limit still binds.

View file

@ -4689,6 +4689,18 @@ proceed in an independent fresh scratch while GPU testing continues; no
changes to GPU/lifetime policy, no fallback cell membership or new owner.
Implementation/visual PASS remain owed. Lead owns commits/integration.
Dispatch: contract9556c17480d042e2353de3dfddc70fb51a88c60e, fresh clean
`.claude/worktrees/s5-480-openai-impl`, branch `codex/s5-480-openai-impl`.
OpenAI Rawls implements and will not review his own repair. A usage-limit
interruption stopped the initial dispatch before edits; the owner explicitly
said Continue and both477/480 agents resumed. No new client run occurred.
#477 round0 returned five files, Release0W0E, focused11/11, portableGPU312/312;
lead read source/TRX and rehashed the change. One test-evidence finding F1:
the copy-sequence test only inspected text/kind predicates, not actual native
recording. `477-fix-round1-command-witness.md` binds that narrow correction,
with no new synchronization behavior or broad framework. Not accepted yet.
Primary ACE spell6150 resolves to3032001C and matches the owner's generation4;
old route labels "Sawato"/"Rynthid" are unreliable identifiers. Evidence and
candidate elevated2D31 complex are in479-rynthid-location-evidence.md. A