port: land the loop decode on the handoff, and note the edit trap

Second iteration running where a scripted HANDOFF edit failed its
assertion on rewrapped text, leaving the port's page stale while docs/re
had the finding. Patched by reading the file first, and METHOD now says
to check the commit's file count for a silently dropped edit.
This commit is contained in:
Sylpheed RE agent
2026-08-28 20:53:33 +00:00
parent 3717293fa9
commit 83293c3f81
2 changed files with 15 additions and 6 deletions

View File

@@ -65,12 +65,15 @@ authored version can be deleted.
luminance oscillates continuously at **≈ 2.2 s ± 0.4** (measured, 7 intervals luminance oscillates continuously at **≈ 2.2 s ± 0.4** (measured, 7 intervals
over a 22 s capture). Build 4 declares `ptloop01.rat`/`ptloop02.rat`, and over a 22 s capture). Build 4 declares `ptloop01.rat`/`ptloop02.rat`, and
`loop*.rat` is a decoded **looping sprite animation**. Drawing the resting `loop*.rat` is a decoded **looping sprite animation**. Drawing the resting
pose and stopping will look wrong. ❔ Whether 2.2 s is the loop's declared pose and stopping will look wrong.
cycle is **still unread**. The record was located — an `opt `-linked `RATC` at **The loop records are decoded**: `ptloop01.rat` (an `opt `-linked `RATC` at
`0xbb5966` in build 4, placing `pteff03.t32`, declaring 30 at `+0x004`, with a `0xbb5966`) sweeps `pteff03.t32` left→right over **450 units = 7.5 s**;
pivot matching `screen info` — but a leaf record's keyframe times are **not** in `ptloop02.rat` sweeps `pteff03a.t32` right→left over **570 units = 9.5 s**.
the build's 40-byte block layout, and a strided monotonic scan finds nothing. Ordinary 40-byte keyframe blocks from `+0x68`, three keyframes each.
The period is measured; the port hardcodes it. **But those are not the ≈ 2.2 s oscillation** — a 7.5 s cycle gives ~3 peaks
in a 22 s capture and it showed 8. The 2.2 s period is real and its **source is
unidentified**, so expect the title to carry *both* the decoded sweeps and
something else.
* **Menu order is geometric.** Buttons sorted top-to-bottom by resting Y. This is * **Menu order is geometric.** Buttons sorted top-to-bottom by resting Y. This is
✅ correct for a vertical menu and is **not** a decoded neighbour graph — the ✅ correct for a vertical menu and is **not** a decoded neighbour graph — the
disc's real navigation structure is unknown, and `opt ` is *not* a focus link disc's real navigation structure is unknown, and `opt ` is *not* a focus link

View File

@@ -255,3 +255,9 @@ agent's loop prompt, i.e. nowhere durable. See [`README.md`](README.md) for the
layout I was testing for, and the over-constrained filter reported the layout as layout I was testing for, and the over-constrained filter reported the layout as
refuted. Scan for the *shape* (here: `0x??ffffff` fade words at a constant refuted. Scan for the *shape* (here: `0x??ffffff` fade words at a constant
stride) and let the count fall out. stride) and let the count fall out.
* **Read the target text before writing a patch pattern for it.** Two iterations
running, a scripted edit to `HANDOFF.md` failed its assertion because the
paragraph had been rewrapped since the pattern was written — and both times the
finding landed in `docs/re/` while the page the port agent reads kept the stale
version. The commit's file count is the tell: if it is one short, an edit was
silently dropped.