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.
This commit is contained in:
1 parent
867fd42972
commit
9f0601027c
400 files changed
+26401
-3
No files matched your search
@@ -0,0 +1,21 @@
|
||||
/* the envelope at the width the strip draws: 64 columns, each the
|
||||
loudest frame in its slice — the shape of the singing, not the wave */
|
||||
const cols = $derived.by(() => {
|
||||
const f = tapSync.activity?.frames;
|
||||
if (!f?.length) return [];
|
||||
const per = f.length / 64;
|
||||
return Array.from({ length: 64 }, (_, i) => {
|
||||
let m = 0;
|
||||
for (let j = Math.floor(i * per); j < Math.floor((i + 1) * per) && j < f.length; j++) m = Math.max(m, f[j]);
|
||||
return m;
|
||||
});
|
||||
});
|
||||
const spanMs = $derived((tapSync.activity?.frames?.length ?? 0) * (tapSync.activity?.frameMs ?? 100));
|
||||
const pct = (ms) => (spanMs ? Math.max(0, Math.min(100, (ms / spanMs) * 100)) : 0);
|
||||
/* one button, four states: reading the file, nothing worth reading, the
|
||||
estimate, and the way back out of it */
|
||||
const estLabel = $derived(
|
||||
tapSync.reading === "ready"
|
||||
? (tapSync.estimated ? "Clear the estimate" : "Estimate the timing")
|
||||
: tapSync.reading === "none" ? "No estimate for this one" : "Reading the song…",
|
||||
);
|
||||
Reference in new issue
Block a user