Dead code: removed an unused `settings` import (main.py), an unused `RITUAL_HOLD_MS` import (RitualPanel), and an unused `beforeEach` (SigilDesigner test). The `_refs` keep-alive in sdr.ts is deliberate (holds hardware-pass constants) and stays; the orphaned .evp-scope / .radio-waterfall CSS was already removed in an earlier lint pass. Duplicate: coldSpot.ts and baseline.ts each carried the same time-aware EMA alpha formula. Extracted it as baseline.emaAlpha(dtMs, tauMs) and pointed both at it. coldSpot's pure-function core is deliberately NOT merged into the stateful ThresholdBaseline class — different contract (immutable-state-threaded vs internal-threshold), and forcing them together would be an overhaul that risks the tested cold-spot logic. Determinism fix: test_familiar_presence_answers_again_on_a_known_channel pinned RETURN_CHANCE=1.0 but not the sky. Since the astronomy wiring made the real return chance RETURN_CHANCE*(1 - veil_thinness*PULL), and veil_thinness reads the *actual current moon phase*, a full-moon test run dragged the effective chance to ~0.55 and the test failed ~45% of the time. Now also pins VEIL_THINNESS_PULL=0 to isolate re-contact from the veil influence (which has its own tests). Verified 12/12 consecutive passes; it was ~7/12 before. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
5.6 KiB
5.6 KiB