zebra-report/web
Russell Ballestrini b9e254172b
zebra-spaces: mesh.recv telemetry — surface mesh PC audio decoder stats
Fox 2026-06-07 follow-up to ticket 0001: with the caa0548 fix live,
SFU sub PC receivers still show level=0 + jbuf=? on blanka-chrome.
That's EXPECTED when mesh has taken the swap (SFU receiver becomes
orphaned by design), but without a corresponding stat from the mesh
PC's own receiver we can't distinguish "mesh decoder is alive and
producing samples; SFU orphan is fine" from "mesh decoder is also
silent — both paths dead, listener hears nothing".

Add per-peer mesh.recv lines to the telemetry tick, tagged with the
short uuid prefix:

  mesh.recv u=8afc pkt=23900 lost=8 bytes=339884 jitter=0.0080
            level=0.025 jbuf=0.48s lp=0.1s

Same fields as aud.recv (the SFU sub PC line) so direct comparison
is easy. We skip peers whose connectionState !== 'connected' so a
failed mesh PC doesn't poison the line. Failure on one peer's
getStats is swallowed independently — multi-peer rooms remain
readable even if one mesh PC's stats reporter throws.

Reveals (per ticket 0001 next narrowing):
  - mesh decoder level + jbuf — proves or rules out the mesh decoder
    being orphaned at the worklet swap point
  - per-peer breakdown when mesh=N > 1, so we can tell which peer's
    mesh path is healthy and which is stalled
  - same lastPacketReceived 'lp' so a mesh RTP stall is visible at
    a glance
2026-06-07 12:24:22 -04:00
..
blog phase 1: unfirehose reconstruction from session JSONL ingest 2026-05-27 13:51:14 -04:00
fonts phase 2: gap analysis — cat>> append + binary asset recovery 2026-05-27 13:54:19 -04:00
chat.html zebra-spaces: fresh-stream wrap on mic ontrack + mute-gate mesh swap (kill fedora-chrome silence) 2026-06-07 11:33:57 -04:00
host-your-own.html zebra-spaces: fresh-stream wrap on mic ontrack + mute-gate mesh swap (kill fedora-chrome silence) 2026-06-07 11:33:57 -04:00
how-it-works.html zebra-spaces: fresh-stream wrap on mic ontrack + mute-gate mesh swap (kill fedora-chrome silence) 2026-06-07 11:33:57 -04:00
index.html web: bump mobile body padding from 1rem to 1.25rem so the right edge has visible breathing room 2026-05-31 14:13:25 -04:00
kernel.html web: bump mobile body padding from 1rem to 1.25rem so the right edge has visible breathing room 2026-05-31 14:13:25 -04:00
stamp.js web: stamp each zebra-report page with build date + md5/sha256 2026-05-28 17:50:12 -04:00
zebra-audio.html zebra-spaces: fresh-stream wrap on mic ontrack + mute-gate mesh swap (kill fedora-chrome silence) 2026-06-07 11:33:57 -04:00
zebra-spaces.html zebra-spaces: mesh.recv telemetry — surface mesh PC audio decoder stats 2026-06-07 12:24:22 -04:00