port: their docstring point found three stale claims in my code

Their sharpening of my harness-note finding: a why in an authored file has a
convention demanding a citation; a docstring has nothing, travels with the code,
and reads as authoritative. Their instance was ring_row.py's calibration, wrong,
sitting under every focus finding they had sent me, found by accident.

Swept mine for numbers I had corrected in DECISIONS.md. Three live instances, each
contradicting my own log. video.rs asserted '28 % of S00A's frames presented and
47 % of ADV's' as measured; boot.gd asserted that the same numbers 'refuted the
claim outright'; dialog_rows.rs said 'by three routes'. All three were retracted
days ago in the log and never in the code -- the percentages came from contended
runs and the counter is an upper bound that goes vacuous once the engine outruns
the stream, and three routes became two, one compound.
verify-transcode-fidelity was the only one already correct.

Third time this pattern has bitten me, and it is the one audio.json's own why
warns about: a correction that does not reach the artifact a consumer reads has
not been made. First was loop_why shipping a refuted story into manifest.json,
second a BLOCKED row, this is code comments -- the worst of the three because they
sit beside the thing they describe.

So the class is now checked rather than swept: the retracted numbers are register
rows carrying the propositions they asserted, and check-claims immediately failed
on my own corrections quoting them unmarked. The next stale number of this kind
fails a run instead of waiting for a sweep.

What it does not cover is a docstring number that was never corrected anywhere.
The register holds only what I have already retracted, so it catches propagation
failures rather than wrong numbers -- their ring_row.py case would still have gone
undetected here, because nothing had retracted that calibration.

Their closing observation is the honest limit: the only thing that has actually
caught these is one of us reading the other's sentence for its own sake, which is
not a filter and does not scale.

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-31 03:20:29 +00:00
parent d768c3ef75
commit 2759f3e719
5 changed files with 74 additions and 11 deletions

View File

@@ -1,7 +1,10 @@
//! Independent check of "DIFFICULTY is a dialog: GP_DIALOG entries 2/3".
//!
//! The Decoder identified `DLG_SELECT_DIFFICULTY` as `GP_DIALOG.pak` entries 2/3
//! by three routes, one of which is button count and geometry. That half is
//! by TWO arguments, one of them compound — corrected from "three routes", which
//! was taking credit for the exclusion scan. The image leg names no entry, and
//! the disc and oracle legs are one argument, since the capture is compared
//! against the disc's rows. One of them is button count and geometry. That half is
//! readable from the disc with this port's own reader, so it is checked here
//! rather than taken on their word — the same form as re-deriving `ptbtn11`'s
//! row order from my export when they offered it.

View File

@@ -165,10 +165,17 @@ pub struct Transcoded {
/// The transcode's own duration and frame rate, probed from the file that
/// was just written.
///
/// Recorded so the RUNTIME can say what it actually presented. Godot's video
/// player drops frames to hold its schedule, and it drops a lot of them here
/// — measured at **28 % of `S00A`'s frames presented and 47 % of `ADV`'s** on
/// a box with no GPU. Without a frame count in the manifest a run can only
/// Recorded so the RUNTIME can say what it actually presented.
///
/// 🔴 CORRECTED 2026-09-01. This read: *"Godot's video player drops frames to
/// hold its schedule, and it drops a lot of them here — measured at 28 % of [refuted]
/// `S00A`'s frames presented and 47 % of `ADV`'s"*. **Both numbers are
/// retracted.** They came from CONTENDED runs, and the counter is an upper
/// bound on ENGINE frames that is vacuous once the engine outruns the stream
/// — quiet, `ADV` draws 6 480 frames across a 4 123-frame video. On a quiet
/// box the bound is 8890 % for `S00A`, and playback runs **+6.7 %…+6.9 %**
/// long for both films. What survives is that elapsed seconds hide whatever
/// the player does, which is why the count is in the manifest. Without a frame count in the manifest a run can only
/// report elapsed seconds, and elapsed seconds are exactly what stays
/// plausible while three frames in four go missing.
///

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 -->
298 sections. Search this before re-deriving anything.
299 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)
@@ -309,6 +309,7 @@ dies, which is what this file is for.
* [Closing one of my own, and a second relayed count from the same delivery](#closing-one-of-my-own-and-a-second-relayed-count-from-the-same-delivery)
* [The oracle capture's own focus state was never established — now it is, by exclusion](#the-oracle-captures-own-focus-state-was-never-established--now-it-is-by-exclusion)
* ["Independently" dies on a fact, and I decline to re-add the pairing they restored](#independently-dies-on-a-fact-and-i-decline-to-re-add-the-pairing-they-restored)
* [Their docstring point found three stale claims in my code](#their-docstring-point-found-three-stale-claims-in-my-code)
<!-- /INDEX -->
## P0 — the exporter, 2026-08-28
@@ -13207,7 +13208,7 @@ their side.
## 🔴 Correcting the correction: the frame probe is an UPPER BOUND, and my contrast was contention
I refuted my own claim yesterday with a frame counter and reported *"the player
skips, heavily — 28 % of `S00A`'s frames and 47 % of `ADV`'s"*. **Both numbers
skips, heavily — 28 % of `S00A`'s frames and 47 % of `ADV`'s"* [refuted]. **Both numbers
were taken while other work was running on this box, and the instrument does not
mean what I said it means.**
@@ -14814,3 +14815,48 @@ is the amplifier**, and the only filter either of us has found is that I
re-derive the load-bearing half — which by construction never touches the asides,
because they are not load-bearing. **The filter and the failure select for exactly
the same property.**
## Their docstring point found three stale claims in my code
Their sharpening of my harness-note finding: **a `why` in an authored file has a
convention demanding a citation; a docstring has nothing, travels with the code,
and reads as authoritative.** Their instance was `ring_row.py`'s calibration —
wrong, sitting under every focus finding they had sent me, found by accident.
Swept mine for numbers I had corrected in `DECISIONS.md`. **Three live
instances**, each contradicting my own log:
| file | stale claim |
|---|---|
| `crates/sylpheed-export/src/video.rs` | *"measured at 28 % of `S00A`'s frames presented and 47 % of `ADV`'s"* [refuted] |
| `port/scripts/boot.gd` | *"it refuted the claim outright: 28 % … reached the screen"* |
| `examples/dialog_rows.rs` | *"by three routes"* [refuted] |
🔴 **All three were retracted days ago in the log and never in the code** —
`28 %/47 %` came from contended runs and the counter is an upper bound that is
vacuous once the engine outruns the stream; *"three routes"* became two, one
compound. `verify-transcode-fidelity` was the only one already correct.
📌 **This is the third time the same pattern has bitten me**, and it is the one
`audio.json`'s own `why` warns about: **a correction that does not reach the
artifact a consumer reads has not been made.** The first was `loop_why` shipping
a refuted story into `manifest.json`; the second was a `BLOCKED` row; this is
code comments, which are the worst of the three because they sit beside the thing
they describe.
### ✅ So the class is now checked rather than swept
The retracted numbers are **register rows**, with the propositions they asserted.
`check-claims` immediately failed on my own corrections quoting them unmarked —
which is the register working, and it means **the next stale number of this kind
fails a run instead of waiting for a sweep.**
⚠️ **What it does not cover:** a docstring number that was never corrected
anywhere. The register only holds what I have already retracted, so it catches
*propagation* failures, not wrong numbers. **Their `ring_row.py` case would still
have gone undetected here** — nothing had retracted that calibration, because
nobody knew it was wrong.
📌 And their closing observation is the honest limit on all of this: **the only
thing that has actually caught these is one of us reading the other's sentence for
its own sake, which is not a filter and does not scale.**

View File

@@ -658,10 +658,15 @@ var _skippable := false
##
## 🔴 PERMANENT ON PURPOSE. This port asserted that a player running longer than
## its media must have presented every frame -- argued from the absence of a
## visible drop rather than measured. The measurement is the two lines below and
## it refuted the claim outright: **28 % of `S00A`'s frames and 47 % of `ADV`'s**
## reached the screen, and `S00A` held real time precisely BY dropping three in
## four.
## visible drop rather than measured.
##
## 🔴 CORRECTED 2026-09-01, and the correction is of a correction. This read that
## the measurement "refuted the claim outright: 28 % of `S00A`'s frames [refuted] and 47 %
## of `ADV`'s reached the screen". **Retracted.** Those runs were contended, and
## this counts ENGINE frames -- an upper bound that constrains nothing once the
## engine outruns the stream, which it does: quiet, `ADV` draws 6 480 across a
## 4 123-frame video. The original claim is still unsupported; the numbers that
## were said to refute it do not.
##
## So the count is not a diagnostic to reach for, it is printed by default. An
## instrument that has to be added before the question can be asked is one that

View File

@@ -55,6 +55,8 @@ the capture turns out to determine it :: the leaf's phase is fixed by the captur
COMPOSITED rather than standalone :: the four screens without an opaque-black primitive are drawn composited over another screen
structural limit, not an unrun experiment :: EXTRAS cannot be strengthened past n=1 because this archive holds no second destination
HANDOFF Q10 says nothing on the disc :: nothing on the disc names which track the menu plays, so the port must choose one
28 % of `S00A`'s frames :: 28 % of S00A's frames and 47 % of ADV's reached the screen, measured
by three routes :: DIFFICULTY is identified by three independent routes
ROWS
)