diff --git a/docs/re/structures/title-residual-tone-vs-geometry.md b/docs/re/structures/title-residual-tone-vs-geometry.md index 02fde31b..f5744401 100644 --- a/docs/re/structures/title-residual-tone-vs-geometry.md +++ b/docs/re/structures/title-residual-tone-vs-geometry.md @@ -110,3 +110,36 @@ screens. **A consumer must not carry a global tone correction.** * Our render draws the sweeps' **parent** record only — the pre-leaf-fix state — so the geometry share measured here includes both the missing rotation and the missing leaf placement. Both are closed by the same decision. + +## ✅ The menu's edge residual is NOT global misregistration, and not blur + +**Measured by `sylpheed-port`** (`tools/port/edge-residual-kind`, branch +`auto/port-p6-audio` at `f4351b0`), running the discriminator I proposed but could +not execute — it needs their render beside the capture, which I do not have. +Recorded as their measurement. + +The test, made concrete: a shift by `(dx,dy)` makes the **signed** residual track +the **gradient**, and the fitted slope *is* the shift in pixels; a blur makes it +track the **laplacian**, symmetric and directionless. + +| | | +|---|---| +| **control** — a known +1 px shift | reads back **+0.938 px** (r +0.789) | +| **control** — a known blur | **r −0.896** on the laplacian | +| neither leaked into the other's channel | ✅ | +| **`main_menu` vs the capture** | **−0.010 px** horizontal, **−0.009 px** vertical; laplacian **r +0.103** | + +❌ **Global misregistration is excluded**: any whole-frame translation is under a +hundredth of a pixel, against a control that reads a true 1 px at 0.938. +❌ **Blur is excluded**: the weak laplacian term is the **opposite sign** to the +blur control, so the capture is not a softened render either. + +⚠️ **The reach is the whole reach: this is a WHOLE-FRAME fit.** One misplaced +element is a small share of 38 752 edge pixels and would not move these numbers. It +excludes a **global** translation, not a **local** one. + +📌 **So of the three candidates I named — misregistration, antialiasing, a misplaced +soft element — the third survives, and it is the only one left.** The next test is +necessarily **local**: where does the edge residual concentrate spatially, and does +that region correspond to one element? ⚠️ That needs the residual map, which is on +the port's side; I can state the test and cannot run it.