port: a withholding reason was false -- the hidden leaf is a visible expanding ring

authored/rendering.json justified not drawing build_12,15/pgloading_loop5 with
'leaf scale (0,0)'. That describes t=0 and t=30 and nothing after. The leaf holds
pgloading_ring, scale ramping 0 -> 250 -> 800 -> 1000 with alpha full at t=55 --
an expanding fading ring, visible at scale 140 alpha 143 at the port's own pose
instant near t=44. Withholding it declines to draw SOMETHING.

Still withheld, on the reason already in the file: no oracle capture for a
loading screen and verify-screen's reference draws no leaves, so the content is
unadjudicable. Behaviour unchanged at 59530 px.

The two entries in that list were written to different standards -- ptlogo_eff2
gets four paragraphs working through both readings, pgloading_loop5 got one false
line. The difference is that one was interesting and one was a loading screen.

Also verifies the measurement in the same paragraph: 'max went 155 -> 232 when
drawn' reproduces at 231, differing pixels 20498 -> 58313. The file's numbers
were sound and its reasoning was not, in adjacent sentences.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N7FiFFFwbvG2uxdcEh8HyF
This commit is contained in:
Sylpheed port agent
2026-08-30 07:16:07 +00:00
parent 7e7adf1ea4
commit f06be84be6
3 changed files with 92 additions and 4 deletions

View File

@@ -36,9 +36,27 @@
" parent scale gates the leaf it is a 0.95 s flash; if the leaf runs free it",
" spins for 16 s. Nothing on the disc chooses and title_jp has no oracle",
" capture.",
" `build_12,15/pgloading_loop5` -- leaf scale (0,0). A zero scale is one of",
" the three historical failures this corpus names, so it is exactly where a",
" guess is most expensive.",
" `build_12,15/pgloading_loop5` -- STILL NOT DRAWN, but the reason given here",
" was WRONG and is replaced. It read \"leaf scale (0,0). A zero scale is one of",
" the three historical failures this corpus names\" -- which describes t=0 and",
" t=30 and nothing after them.",
"",
" What the leaf actually holds, read out of the export: ONE element,",
" `pgloading_ring`, with a sprite, whose scale ramps 0 -> 250 -> 800 -> 1000",
" while its alpha rises to full at t=55 and falls to nothing by t=130. An",
" expanding, fading ring -- a loading pulse, not a degenerate record.",
"",
" 🔴 And it is VISIBLE at the instant this port poses. `build_12`'s settle",
" window is [40, 48], so the pose lands near t=44, where the ring interpolates",
" to scale 140 at alpha 143. So withholding it is not declining to draw",
" nothing; it is declining to draw something, and the old reason hid that.",
"",
" It stays withheld on the reason below, which is the one that always applied:",
" there is no way to adjudicate it here. The loading screens have no oracle",
" capture -- the RE agent records them as not reachable from the title path --",
" and `verify-screen` compares against a renderer that draws no leaves at all.",
" Drawing it would put unadjudicable content on a screen, which is the same",
" test `ptlogo_eff2` fails.",
"",
"AND THERE IS NO WAY TO ADJUDICATE EITHER HERE. `title_jp` has no oracle",
"capture, and `verify-screen` compares against `sylpheed-cli`, which does not",

View File

@@ -651,3 +651,26 @@ one frame between two of our own renderers, on a screen matching the oracle at
⚠️ Do not read this as the port being wrong. Against the **capture**, `title` is at
0.21 % and `title_plate` at 0.00093 %. This is two of our renderers disagreeing,
and the one with an oracle behind it is not the one under suspicion.
---
## The loading screens hide a visible leaf animation
*Derived from HANDOFF `9ca1eb5`. Raised 2026-08-30 by the port. **Low priority**,
and nothing is waiting on it.*
`pgloading_loop5` on `build_12`/`build_15` carries a leaf — `pgloading_ring`, one
sprite — that expands **scale 0 → 1000** while fading in and out over t=0…130. At
the port's own pose instant (~t=44) it would draw at **scale 140, alpha 143**. The
port does not draw it.
⚠️ It is withheld for a reason that is sound — no oracle capture exists for a
loading screen, and `verify-screen`'s reference draws no leaves, so the content
would be unadjudicable either way — but the reason previously recorded was
**false** (*"leaf scale (0,0)"*), which made it look like there was nothing to
draw. There is.
What would settle it: **any capture of a loading screen with the ring mid-expansion**.
The Decoder records these screens as unreachable from the title path, so this may
never become answerable, and that is an acceptable outcome — the entry now says
what is being withheld rather than implying the question is empty.

View File

@@ -9,7 +9,7 @@ dies, which is what this file is for.
<!-- INDEX: generated by tools/port/index-decisions -- do not hand-edit -->
118 sections. Search this before re-deriving anything.
119 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)
@@ -129,6 +129,7 @@ dies, which is what this file is for.
* [A second witness for the pixel-cost claim, from a different renderer](#a-second-witness-for-the-pixel-cost-claim-from-a-different-renderer)
* [Reconciling the two ink figures, and what "has its own key" is resting on](#reconciling-the-two-ink-figures-and-what-has-its-own-key-is-resting-on)
* [Not one of the 80 has a decoded key — and the port's four are the rule's oracle check](#not-one-of-the-80-has-a-decoded-key--and-the-ports-four-are-the-rules-oracle-check)
* [A withholding reason that was false, and the measurement beside it that was not](#a-withholding-reason-that-was-false-and-the-measurement-beside-it-that-was-not)
<!-- /INDEX -->
## P0 — the exporter, 2026-08-28
@@ -6969,3 +6970,49 @@ convention, a retracted control of theirs, and this. It has also stopped being
about the port — nothing in `build_12`/`build_15` has moved since the rule landed,
and the remaining questions are the Decoder's to hold. Continuing would be
refining someone else's page.
## A withholding reason that was false, and the measurement beside it that was not
`authored/rendering.json` names three leaf records the exporter flags and the port
does **not** draw. Auditing the reasons rather than the behaviour:
### 🔴 `build_12,15/pgloading_loop5` — the reason was wrong
It read *"leaf scale (0,0). A zero scale is one of the three historical failures
this corpus names."* That describes **t=0 and t=30 and nothing after them.**
What the leaf actually holds, read from the export: one element,
`pgloading_ring`, with a sprite, whose scale ramps **0 → 250 → 800 → 1000** while
its alpha rises to full at t=55 and falls to nothing by t=130. An expanding,
fading ring — a loading pulse, not a degenerate record.
⚠️ **And it is visible at the instant this port poses.** `build_12`'s settle window
is [40, 48], so the pose lands near **t=44**, where the ring interpolates to
**scale 140 at alpha 143**. Withholding it is not declining to draw *nothing*; it
is declining to draw *something*, and the one-line reason concealed which.
**It stays withheld**, on the reason that always applied and is already written
below it in the same file: there is no way to adjudicate it here. The loading
screens have no oracle capture — the Decoder records them as unreachable from the
title path — and `verify-screen` compares against a renderer that draws no leaves.
Drawing it would put unadjudicable content on a screen, which is the test
`ptlogo_eff2` also fails. Behaviour unchanged: `build_12` still renders 59 530 px
of ink.
📌 The two entries in that list were written to different standards. The
`title_jp/ptlogo_eff2` reason is four paragraphs, states the scale as a *pop*
(0 → 125 % → 0 over 0.95 s), works through both readings and says why neither can
be chosen. The `pgloading_loop5` reason was one line and false. Same file, same
author, same day — the difference is that one was interesting and one was a
loading screen.
### ✅ The measurement in the same paragraph checks out
That paragraph also claims *"its max went 155 → 232 when they were drawn"* for
`title_jp`. Reproduced by adding `ptlogo_eff2` to `draw_leaf_for` and re-running:
**155 → 231**, with the differing pixels going 20 498 → 58 313. One off a number
recorded days ago, which is rounding rather than drift.
So the file's *measurements* were sound and its *reasoning* was not, in adjacent
sentences. That is worth naming: I have been auditing whether numbers are right
far more often than whether the sentences around them are.