Files
SoulStream/handoff/rounds/ins-r41-probe.txt
T
KeelrLeek 9f0601027c android: the handoff — the pending rounds, the pipeline, and what is unverified
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.
2026-09-14 07:57:41 -05:00

65 lines
5.0 KiB
Plaintext

/* ── the long session: what the app is still HOLDING ─────────────
Minutes is all a walk has ever been. These are the numbers that
decide what hours look like: the thumbnail map and its side
tables (from the store itself — they are module-private, so
artTally is the only way to see them), the catalog's ten
session maps, the queue, the transfer list, the DOM, and the
live listeners and timers.
The listener and timer counts come from a registry that a step
installs IN THE PAGE, not from here: they are -1 until it is
installed, which means every step before the session block, every
step after it puts itself away again, and the whole phone walk,
where it is never installed at all. They count what was
registered AFTER the install and is still ATTACHED — window,
document, or an element that is connected — so the absolute
number is small and depends on how much of the walk ran first;
it is the DELTA across the laps that means anything. Attached
rather than add-minus-remove because that counter is a liar in
this app: {#key nav.seq} replaces the .screen element on every
navigation, so each new screen gets its own scroll handler and
the old element is simply dropped.
grew* is the same number against whatever the block latched into
window.__ssBase, and -1 when nothing has. Every backslash here is
doubled and there is not one backtick, comment included — this
block lives inside a template literal. */
tallyArt: (function () {
/* one census per probe, kept in __ssLast for the fields below:
a field of an object literal cannot see its siblings, and
this insert is the only part of the probe this round owns.
All of it is a read; nothing here fetches or evicts. */
window.__ssCensus = function () {
var out = { art: 0, chars: 0, accents: 0, pending: 0, cat: 0, queue: 0, xfer: 0, nodes: 0, ears: -1, timers: -1, ticks: -1 };
try { var a = __ss.artTally(); out.art = a.art; out.chars = a.chars; out.accents = a.accents; out.pending = a.pending; /* waiting is a SUBSET of pending, never a second queue */ } catch (e) {}
try {
var c = __ss.catalog;
var ks = ['artists', 'albums', 'extras', 'profiles', 'seeds', 'albumInfo', 'popular', 'heroSeeds', 'overviews', 'listeners'];
for (var i = 0; i < ks.length; i++) out.cat += Object.keys(c[ks[i]] || {}).length;
} catch (e) {}
try { out.queue = __ss.player.queue.length; } catch (e) {}
try { out.xfer = Object.keys(__ss.transfers.items).length; } catch (e) {}
try { out.nodes = document.getElementsByTagName('*').length; } catch (e) {}
try { var k = window.__ssCount(); out.ears = k.listeners; out.timers = k.timeouts; out.ticks = k.intervals; } catch (e) {}
return out;
};
window.__ssLast = window.__ssCensus();
return window.__ssLast.art;
})(),
tallyChars: (function () { try { return window.__ssLast.chars; } catch (e) { return 0; } })(),
tallyAcc: (function () { try { return window.__ssLast.accents; } catch (e) { return 0; } })(),
tallyPend: (function () { try { return window.__ssLast.pending; } catch (e) { return 0; } })(),
tallyCat: (function () { try { return window.__ssLast.cat; } catch (e) { return 0; } })(),
tallyQueue: (function () { try { return window.__ssLast.queue; } catch (e) { return 0; } })(),
tallyXfer: (function () { try { return window.__ssLast.xfer; } catch (e) { return 0; } })(),
tallyNodes: (function () { try { return window.__ssLast.nodes; } catch (e) { return 0; } })(),
tallyEars: (function () { try { return window.__ssLast.ears; } catch (e) { return -1; } })(),
tallyTimers: (function () { try { return window.__ssLast.timers; } catch (e) { return -1; } })(),
tallyTicks: (function () { try { return window.__ssLast.ticks; } catch (e) { return -1; } })(),
grewArt: (function () { try { return window.__ssLast.art - window.__ssBase.art; } catch (e) { return -1; } })(),
grewCat: (function () { try { return window.__ssLast.cat - window.__ssBase.cat; } catch (e) { return -1; } })(),
grewEars: (function () { try { return window.__ssLast.ears - window.__ssBase.ears; } catch (e) { return -1; } })(),
grewTimers: (function () { try { return window.__ssLast.timers - window.__ssBase.timers; } catch (e) { return -1; } })(),
grewTicks: (function () { try { return window.__ssLast.ticks - window.__ssBase.ticks; } catch (e) { return -1; } })(),
grewNodes: (function () { try { return window.__ssLast.nodes - window.__ssBase.nodes; } catch (e) { return -1; } })(),