Found by phugoid rung 1 (2026-08-24), the first external grading of observer verdicts against a mode-structure oracle (phugoid GAPS.md G4, tests/observer_check.eigs).
The value-channel predicates classify over a window of the last 10 observed samples (docs/PREDICATES.md), with no per-binding control. A mode slower than ~10 samples of the consumer's cadence cannot fold inside the window, and the failure is not mere insensitivity — the verdict is confidently wrong:
- The 747 phugoid (T = 46.9 s, physics truth
oscillating throughout) replayed through an observed binding at 1 Hz reads diverging on its rising quarter-cycles, stable/improving elsewhere — measured at three probe points, all wrong.
- The same signal decimated to 5 s cadence (9.4 samples/cycle) reads
oscillating correctly at every probe point.
dynamics already documents the entropy-channel flavor of cadence sensitivity (physics.eigs header: sampling every step makes everything read equilibrium); the value-channel version is sharper because diverging is an alarm verdict a consumer would act on (stall warning, conflict detection).
A frame-locked consumer — the flight-sim thesis: live verdicts at a frame deadline — cannot decimate per binding without hand-building a shadow binding per timescale, which is exactly the multi-timescale gray band (#187 lineage) the flight-sim proposal predicted would break first.
Question for the design: should the window be per-binding configurable (samples, or better, seconds — flight modes are specified in time units), or should a slow-fold detector widen it adaptively? The oscillating folding rule (>= 2 reversals, net travel <= 0.3x path) already almost expresses the right idea; it just never sees a fold at this cadence.
Repro (phugoid repo, branch rung-1-longitudinal): eigenscript tests/observer_check.eigs — the three O.ph1s.* rows are pinned as class divergence and will flip loudly the day the windowing changes, which is phugoid's re-grade signal.
Found by phugoid rung 1 (2026-08-24), the first external grading of observer verdicts against a mode-structure oracle (phugoid GAPS.md G4,
tests/observer_check.eigs).The value-channel predicates classify over a window of the last 10 observed samples (docs/PREDICATES.md), with no per-binding control. A mode slower than ~10 samples of the consumer's cadence cannot fold inside the window, and the failure is not mere insensitivity — the verdict is confidently wrong:
oscillatingthroughout) replayed through an observed binding at 1 Hz readsdivergingon its rising quarter-cycles,stable/improvingelsewhere — measured at three probe points, all wrong.oscillatingcorrectly at every probe point.dynamicsalready documents the entropy-channel flavor of cadence sensitivity (physics.eigs header: sampling every step makes everything readequilibrium); the value-channel version is sharper becausedivergingis an alarm verdict a consumer would act on (stall warning, conflict detection).A frame-locked consumer — the flight-sim thesis: live verdicts at a frame deadline — cannot decimate per binding without hand-building a shadow binding per timescale, which is exactly the multi-timescale gray band (#187 lineage) the flight-sim proposal predicted would break first.
Question for the design: should the window be per-binding configurable (samples, or better, seconds — flight modes are specified in time units), or should a slow-fold detector widen it adaptively? The
oscillatingfolding rule (>= 2 reversals, net travel <= 0.3x path) already almost expresses the right idea; it just never sees a fold at this cadence.Repro (phugoid repo, branch rung-1-longitudinal):
eigenscript tests/observer_check.eigs— the threeO.ph1s.*rows are pinned as classdivergenceand will flip loudly the day the windowing changes, which is phugoid's re-grade signal.