method: correct 'cannot adjudicate against the incumbent' -- it needed a discriminator
The entry said a candidate-vs-incumbent comparison is the wrong shape of experiment. Too strong. Two iterations later the same comparison adjudicated with no new oracle, once a structural property was added that says which side is wrong per disagreement -- does the chosen run contain the settle instant. Control 3072 of 3072; disagreements attributed 1036 of 1036. Corrected rule: a bare comparison cannot adjudicate because a disagreement is symmetric; it becomes decisive the moment a property breaks the symmetry per case. Reach for an oracle when no such property exists, not as the first move. With the tell that I had one available and did not look: I recorded the residual as 'ambiguous by construction' and moved on TWICE without asking what would make it un-ambiguous. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wuu56cE8vJGTBtn1ppsk8v
This commit is contained in:
@@ -2533,6 +2533,27 @@ whatever it returns — the same reason a truncated log and a t=0 render both lo
|
||||
fine from inside. Template matching against the exported cue with a bed-only
|
||||
control has no such knob, which is the right fix rather than a better threshold.
|
||||
|
||||
## ✅ 2026-08-30 — the residual is explained, and it is entirely `rest()`'s
|
||||
|
||||
The 21.9 % I called *"ambiguous by construction"* is not ambiguous.
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| **control** — one plateau, covering the settle instant | **3 072 / 3 072 agree (100 %)** |
|
||||
| test — more than one plateau | 1 622 elements, agree on 586 |
|
||||
| of the **1 036** disagreements, `rest()` on a run **not covering** the settle instant | **1 036 — all** |
|
||||
|
||||
`rest_plateau()` picks the **longest** run, which need not be the one the screen is
|
||||
sitting in. **Both poses are genuinely held** — these are plateau cases, not
|
||||
transients — so it is `rest()` returning a pose the screen has **already left**.
|
||||
|
||||
**That completes the case for the proposal**, alongside your three oracle screens and
|
||||
my one: control exact, and every disagreement attributed to the incumbent.
|
||||
⚠️ **I am still not changing `rest()` in this pinned crate** — the evidence is now
|
||||
strong enough that a human should decide, which is a different thing from me landing
|
||||
it.
|
||||
[`plateau-choice.txt`](../re/data/plateau-choice.txt)
|
||||
|
||||
## ✅ 2026-08-30 — the gap you named is closed: `settle_time()` ITSELF beats `rest()`
|
||||
|
||||
You tested the port's settled pose, not `UiBuild::settle_time()`, and flagged the
|
||||
|
||||
@@ -1612,7 +1612,9 @@ last keyframe is visible; 87.8 % of all elements end at `a = 0` *because of that
|
||||
exit ramp*, so the split was near-uninformative. I ran that control only because the
|
||||
port had just been bitten by it.
|
||||
|
||||
## A candidate cannot be adjudicated against the incumbent it is meant to replace
|
||||
## A candidate cannot be adjudicated against the incumbent **by the comparison alone**
|
||||
|
||||
🔴 **This entry was written too strongly and is corrected below.**
|
||||
|
||||
Proposing that the settled pose come from the **screen's** settle instant rather
|
||||
than each element's `rest()`, the obvious validation is: where `rest()` is already
|
||||
@@ -1628,6 +1630,31 @@ control moved the number and did not change that.
|
||||
**oracle** — the same two poses scored against a capture of the game, 0.01 % against
|
||||
0.75 % differing. That is a third party neither rule authored.
|
||||
|
||||
### 🔴 …and that conclusion was too strong. What was missing was a DISCRIMINATOR.
|
||||
|
||||
Two iterations later the same comparison **did** adjudicate, without any new oracle.
|
||||
The addition was a structural property that says, for each disagreement,
|
||||
*which side is wrong*: **does the pose `rest()` chose lie in a run that contains the
|
||||
settle instant?**
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| control — one plateau, covering the settle instant | **3 072 / 3 072 agree** |
|
||||
| disagreements attributable to the incumbent | **1 036 / 1 036** |
|
||||
|
||||
Every disagreement had `rest()` on a run the screen has already left. That is not a
|
||||
tie the comparison cannot break — it is a decision, and the incumbent loses all of
|
||||
them.
|
||||
|
||||
⚠️ **So the corrected rule is:** a *bare* candidate-vs-incumbent comparison cannot
|
||||
adjudicate, because a disagreement is symmetric. It becomes decisive the moment you
|
||||
can name a property that **breaks the symmetry per case**. Reach for an oracle when
|
||||
no such property exists — not as the first move.
|
||||
|
||||
📌 The tell that I had one available and had not looked: I recorded the residual as
|
||||
*"ambiguous by construction"* and moved on **twice**, in two separate iterations,
|
||||
without asking what would make it un-ambiguous.
|
||||
|
||||
📌 Related and worth keeping together: **any statistic keyed on "where does an
|
||||
element's visibility end" is near information-free on this corpus.** A screen's exit
|
||||
ramp drives every element to `a = 0`, so **12 278 of 13 991 (87.8 %)** end there.
|
||||
|
||||
Reference in New Issue
Block a user