From 94d761ebff02c61bded367e2b3acfb788f1ceaa6 Mon Sep 17 00:00:00 2001 From: Sylpheed port agent Date: Wed, 2 Sep 2026 21:08:28 +0000 Subject: [PATCH] port: the (A) snap RESTARTS the leaves at t=0, not just the shared clock Measured by the Decoder with the full-quad reader: at the snap frame both sweeps enter at their DECLARED OPENING alphas -- pteff03 at 255, pteff03a at 0 rising 1,2,3,4,6,11,17 from x=1721. Those are the leaves' own t=0 poses. My implementation advanced the shared clock and left the leaf phase untouched, so the sweeps would have sat mid-travel at the right clock value and the wrong position. A defect visible only in a film -- no still and no clock reading would show it, because the clock was correct. The field already existed (leaf_start_units, from the F6 work); it simply was not being set at the snap. VERIFIED, pre-registered, via --probe-leaf on a real boot with a real press: snap frame -> leaf_t 0.0, pteff03 x=-639, pteff03a x=1721 (declared t=0) next frame -> leaf_t 0.5, both advanced by 2 px Their separate note on my snap target: 236.0 survives their challenge -- at the snap the sweeps are at alpha 255, putting the title clock in [100,238) -- but their data cannot separate 236 from 200. Recorded as surviving, not confirmed; the bound in the code comment already says so. --- port/scripts/boot.gd | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/port/scripts/boot.gd b/port/scripts/boot.gd index e111acaa..d10d4dc2 100644 --- a/port/scripts/boot.gd +++ b/port/scripts/boot.gd @@ -995,8 +995,20 @@ func _unhandled_input(event: InputEvent) -> void: if overlay != null and event.is_action_pressed("ui_accept"): var snap_to := overlay.settle_time() if snap_to > 0.0 and view.time_units < snap_to: - print(" (A) snaps the title: shared clock %.1f -> %.1f" % [view.time_units, snap_to]) + print(" (A) snaps the title: shared clock %.1f -> %.1f, leaves restart at 0" + % [view.time_units, snap_to]) view.time_units = snap_to + # 🔴 THE LEAVES RESTART AT THEIR OWN t=0; the snap is not only a clock + # advance. MEASURED: at the snap frame both sweeps enter at their + # DECLARED OPENING alphas -- `pteff03` at 255, `pteff03a` at 0 rising + # 1,2,3,4,6,11,17 from x=1721 + # (`docs/re/f5-verified-with-full-quad-reader.md`). + # + # Advancing the shared clock alone would leave the leaf phase where it + # was, so the sweeps would sit mid-travel at the right clock value and + # the wrong position -- a defect visible only in a film, and one this + # implementation had until this line. + view.leaf_start_units = snap_to view.queue_redraw() _overlay_process(0.0) return