Everything written this session that has not been through the device: rounds 43 to 48 (each patch adversarially verified, 43's transient-notice expectation fixed), a partial round 49, the pipeline scripts, the Android Auto design and the icon comparison mock. Also the two harness changes that were never A/B'd — adaptive waits, which may only shorten a declared wait and never lengthen it, and a ship that runs the mock walk and the deploy at the same time. The A/B and its 255-step baseline are in handoff/tools; main stays at what the phone has actually walked.
30 lines
2.2 KiB
Plaintext
30 lines
2.2 KiB
Plaintext
/* the instrument itself, before anything is asked of it: the registry
|
|
is counting, the store is answering, and the walk is not sitting on a
|
|
toast from the block above. tallyTicks is only asked to ANSWER (-1 is
|
|
'no registry'), never to be non-zero: the app's own intervals were
|
|
all started at boot, before the registry went in, so the only live
|
|
one here belongs to the mock's playback ticker — requiring it would
|
|
tie this guard to the mock instead of to the registry. */
|
|
"session-warm": (i) => i.tallyEars > 0 && i.tallyTicks >= 0 && i.tallyArt > 0 && !i.toast,
|
|
/* Nine laps later. The listener and interval counts are the sharp ones —
|
|
both measured dead flat over the nine, twice — so their headroom is
|
|
small on purpose; grewEars allows four for a screen that happens to
|
|
be mounted at the second reading and not the first, and grewTicks is
|
|
one-sided because a ticker that simply stopped between the readings
|
|
is not a leak. Both were driven with a listener and an interval
|
|
deliberately stranded once a lap: +9 and +9, and this line failed.
|
|
tallyTimers is a CEILING rather than a delta, and nine of the
|
|
thirty-two are real: every track start schedules a 47-second
|
|
recents refresh (player.svelte.js, the desktop's own shape), so a
|
|
walk this fast keeps a dozen of them pending at once. That window is
|
|
bounded by its own length and does not grow with the session, while a
|
|
genuinely leaking timer climbs past this ceiling as laps are added.
|
|
Making it a delta would need a fifty-second quiet period between the
|
|
two readings, which is not worth the minute — said here rather than
|
|
tightening the number blind. tallyArt is the bound itself; grewArt's
|
|
headroom is for a sibling round that puts more records in a lap, and
|
|
is to be raised deliberately rather than deleted. */
|
|
"session-late": (i) => i.grewEars <= 4 && i.grewTicks <= 0 && i.tallyTimers <= 32
|
|
&& i.tallyArt <= 512 && i.grewArt <= 80 && i.grewCat <= 24 && i.grewNodes <= 200,
|
|
"session-clear": (i) => /^(Good |Still)/.test(i.title) && !i.toast && !i.notice && !i.half.includes("up"),
|