port: cross-check the leaf sweep against my export -- their reading and mine reconcile
Their withdrawal gave coordinates to check my renderer against, and my first measurements looked like a contradiction: phase-to-phase differences span the whole frame against their 400 px quad tracking x 921->1041. Fine steps showed the shape -- nothing above threshold over 5 units, the entire frame over 120 -- a large, slowly-moving object, and with --time frozen all of it is the leaf. Reading the leaf record from my own export resolves it. ptloop01: leaf pteff03, span 600, x track -639..1521, scale (100,600). ptloop02: span 720, scale (100,800). Loop spans 600 and 720 differing from each other is exactly their reading from the other side. Scale is 100% horizontal, so the quad is a normal-width strip stretched vertically, and its x track crosses the entire 1280 frame -- two phases 120 units apart put it hundreds of pixels apart and the difference covers the union, which is why the bboxes are frame-wide. Their 921->1041 is a segment of that track, not its extent. The caution they applied one level up applies again: a centre track is not a drawn extent either, and I nearly wrote up a disagreement by comparing a sub-range against a full sweep. It also explains their dead zone: a strip anchored at the pivot sweeping at 100% width spends almost all its time outside the 200x90 parent rect. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N7FiFFFwbvG2uxdcEh8HyF
This commit is contained in:
@@ -9,7 +9,7 @@ dies, which is what this file is for.
|
||||
|
||||
<!-- INDEX: generated by tools/port/index-decisions -- do not hand-edit -->
|
||||
|
||||
176 sections. Search this before re-deriving anything.
|
||||
177 sections. Search this before re-deriving anything.
|
||||
|
||||
* [P0 — the exporter, 2026-08-28](#p0--the-exporter-2026-08-28)
|
||||
* [P1 — Godot draws the screen, 2026-08-28](#p1--godot-draws-the-screen-2026-08-28)
|
||||
@@ -187,6 +187,7 @@ dies, which is what this file is for.
|
||||
* [Answering "an unenumerated set" — don't enumerate, test](#answering-an-unenumerated-set--dont-enumerate-test)
|
||||
* [🔴 The third clock was in my own list, and I did not wire it](#the-third-clock-was-in-my-own-list-and-i-did-not-wire-it)
|
||||
* [The leaf phase was an arbitrary choice; the capture turns out to determine it](#the-leaf-phase-was-an-arbitrary-choice-the-capture-turns-out-to-determine-it)
|
||||
* [Cross-checking their leaf reading against my export — it reconciles](#cross-checking-their-leaf-reading-against-my-export--it-reconciles)
|
||||
|
||||
<!-- /INDEX -->
|
||||
## P0 — the exporter, 2026-08-28
|
||||
@@ -10069,3 +10070,46 @@ pose, so the flat reading was *partly real* and the wrong conclusion had support
|
||||
pinning (max 89.48 → 0 across waits) is **confirmed** — re-run with fresh files and
|
||||
distinct md5s — and in correct units the phase sweep gives five distinct frames.
|
||||
The flag was never the problem.
|
||||
|
||||
## Cross-checking their leaf reading against my export — it reconciles
|
||||
|
||||
Their withdrawal (*"the parent rect is a pivot anchor, not the drawn extent"*)
|
||||
gave me coordinates to check my renderer against, and my first measurements looked
|
||||
like a contradiction: phase-to-phase differences on both `title` and `main_menu`
|
||||
span the **whole frame**, against their 400 px quad tracking x 921→1041.
|
||||
|
||||
Fine steps showed the shape: **nothing changes above threshold over 5 units, and
|
||||
the entire frame changes over 120** — a large, slowly-moving object. At
|
||||
`--time=4.0` the screen is frozen, so all of that is the leaf.
|
||||
|
||||
✅ Reading the leaf record out of my own export resolves it:
|
||||
|
||||
| | `ptloop01` | `ptloop02` |
|
||||
|---|---|---|
|
||||
| leaf element | `pteff03` | `pteff04` |
|
||||
| loop span | **600** | **720** |
|
||||
| x track | **−639 … 1521** | −639 … 1521 |
|
||||
| scale | **(100, 600)** | (100, 800) |
|
||||
|
||||
* ✅ **Loop spans 600 and 720, different from each other** — exactly their reading,
|
||||
from the other side.
|
||||
* ✅ Scale is **100 % horizontal**, 600/800 % vertical — so the quad is *not*
|
||||
widened; it is a normal-width strip stretched vertically.
|
||||
* 📌 **The x track runs −639 to 1521**, right across and beyond the 1280 frame. Two
|
||||
phases 120 units apart place the quad hundreds of pixels apart, and the
|
||||
*difference* covers the union of both positions — which is why my diff bboxes
|
||||
are frame-wide. **No contradiction.**
|
||||
|
||||
Their x 921→1041 is a segment of that track, not its extent. So the caution they
|
||||
just applied one level up applies again here: **a centre track is not a drawn
|
||||
extent either**, and I nearly wrote up a disagreement by comparing a sub-range
|
||||
against a full sweep.
|
||||
|
||||
✅ It also explains their dead zone honestly: a strip anchored at the pivot,
|
||||
sweeping horizontally at 100 % width, spends almost all its time **outside** the
|
||||
200×90 parent rect — so zero difference inside that rect is expected and proves
|
||||
nothing, which is what they withdrew.
|
||||
|
||||
⚠️ And it strengthens my phase-0 result rather than threatening it: a quad crossing
|
||||
the entire frame is exactly the kind of element whose phase a whole-frame RMSE can
|
||||
resolve, which is consistent with the 0.5 spread I measured against a 0.0565 floor.
|
||||
|
||||
Reference in New Issue
Block a user