tools: the refuted-claim register never scanned code, and code is where a retraction fails to land
sylpheed-port found three live stale claims in their own source, each already retracted in their log days earlier. Their framing is the one that matters: a correction that does not reach the artifact a consumer reads has not been made, and a comment sits beside the thing it describes. check_refuted.py scanned docs/ only. Running it over tools/ and crates/ for the first time found one here too: jp_title_session.sh justified its own existence with 'a free-running clock lands somewhere else on a fresh boot' -- a claim I refuted myself the day before, when I measured the plate-pulse gate phase-locking the shutter to 1.6 % of the sweep traverse. The script's stated rationale rested on a premise I had already killed. Fixed the file with the correction in place, including what it means for what that script actually measures: a second capture through the same gate is a second sample at nearly the same animation phase, so its RMSE 0.32 is a phase-locked lower bound. Taught the register to scan code behind --code, excluding crates/sylpheed-viewer, which is the human's tool. Controlled three ways: a planted code revival exits 1 with --code, exits 0 without it -- which is the proof the gap was real -- and 0 again once removed. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wuu56cE8vJGTBtn1ppsk8v
This commit is contained in:
@@ -115,6 +115,18 @@ if "--selftest" in sys.argv:
|
||||
sys.exit(0)
|
||||
|
||||
root = Path(os.environ.get("CHECK_REFUTED_ROOT", "docs"))
|
||||
|
||||
# 🔴 THIS SCANNED `docs/` ONLY, AND CODE IS WHERE A RETRACTION FAILS TO LAND.
|
||||
# sylpheed-port found three live stale claims in their own source, each already
|
||||
# retracted in DECISIONS.md days earlier -- "a correction that does not reach the
|
||||
# artifact a consumer reads has not been made", and a comment sits BESIDE the
|
||||
# thing it describes. Running this register over code for the first time on
|
||||
# 2026-08-31 found one here too: jp_title_session.sh justified its own existence
|
||||
# with "a free-running clock lands somewhere else on a fresh boot", which I had
|
||||
# refuted myself the day before.
|
||||
# ⚠️ crates/sylpheed-viewer is excluded: it is the human's tool, not mine to edit.
|
||||
CODE_GLOBS = ("tools/**/*.py", "tools/**/*.sh", "crates/**/*.rs")
|
||||
CODE_SKIP = ("target/", "sylpheed-viewer")
|
||||
ref = root / "re" / "REFUTED.md"
|
||||
claims = []
|
||||
seen_report = set()
|
||||
@@ -138,7 +150,13 @@ suppressed = []
|
||||
seen_marked = set()
|
||||
for c in claims:
|
||||
needle = c.strip()
|
||||
for f in root.rglob("*.md"):
|
||||
code_files = []
|
||||
if "--code" in sys.argv:
|
||||
import glob as _g
|
||||
for _p in CODE_GLOBS:
|
||||
code_files += [Path(x) for x in _g.glob(_p, recursive=True)
|
||||
if not any(k in x for k in CODE_SKIP)]
|
||||
for f in list(root.rglob("*.md")) + code_files:
|
||||
if f == ref or f.name in CHRONOLOGICAL:
|
||||
continue
|
||||
lines = f.read_text(errors="replace").splitlines()
|
||||
|
||||
@@ -4,9 +4,23 @@
|
||||
# The first JP capture (2026-08-30) demonstrated the logo stack is at rest
|
||||
# WITHIN a run: five frames ~1.5 s apart, byte-identical over the port's ROI,
|
||||
# against a whole-frame contrast control showing 5-8 % of the screen moving.
|
||||
# That does not test the axis sylpheed-port's drift was on -- BETWEEN runs, where
|
||||
# a free-running clock lands somewhere else on a fresh boot. This script exists
|
||||
# to take a second, independent capture so that axis can be measured.
|
||||
# That does not test the axis sylpheed-port's drift was on -- BETWEEN runs. This
|
||||
# script exists to take a second, independent capture so that axis can be measured.
|
||||
#
|
||||
# 🔴 THE ORIGINAL RATIONALE HERE WAS REFUTED, and the retraction never reached this
|
||||
# file until 2026-08-31. It read: "BETWEEN runs, where a free-running clock lands
|
||||
# somewhere else on a fresh boot". IT DOES NOT. Both captures are shuttered on the
|
||||
# plate pulse, and the plate's pulse is part of the title animation, so the gate
|
||||
# PHASE-LOCKS the shutter: measured, the sweep sits 25-26 px apart across two runs
|
||||
# in different locales and different sessions -- 1.6 % of a ~1600 px traverse.
|
||||
# See structures/plate-pulse-phase-lock.md.
|
||||
#
|
||||
# ⚠️ SO WHAT THIS SCRIPT MEASURES IS NARROWER THAN THE COMMENT CLAIMED. A second
|
||||
# capture through the same gate is a second sample at nearly the SAME animation
|
||||
# phase, not a sample of a free-running clock. The RMSE 0.32 it produced is a
|
||||
# phase-locked lower bound on capture noise, not capture noise. The era
|
||||
# adjudication it fed still stands -- its margin, 16.72, clears even the unlocked
|
||||
# 11.9 -- but for the reason bgm/jp-title-at-rest.txt gives, not this one.
|
||||
#
|
||||
# Usage: jp_title_session.sh OUTDIR [wait_s]
|
||||
set -u
|
||||
|
||||
Reference in New Issue
Block a user