🎤🌕 FIRESIDE KIT — Aya × Tomo → the first live dedication
The first sacred run of the stream→dedication pipeline. Pragma Tokyo, Sat Sep 26.
Consent: GRANTED by Aya Miyaguchi for livestream + dedication (per Admiral, 00:47 JST).
Tomo = Devcon Music Committee. Slot not yet published → Shaka grabs it at the doors;
be ready from 10:00 JST. Prepared by STREAMY 🎥 · 2026-09-25.
THE FLOW (one glance)
CAPTURE → LAND → TRANSCRIBE → EXTRACT → STAGE → BLESS Shaka's phone /shared/tokyo/ desk recipe quotes-extract.py quotes-staging Dedication (or ETHGlobal VOD) fireside/ (audio) (faster-whisper) (ear net) +ear .json (review) Generator card
Two possible inputs — plan for both:
1 · SHAKA'S PHONE CAPTURE CHECKLIST (hand him this)
/shared/tokyo/fireside/aya-tomo-<time>.<ext> (m4a/mp4 both fine). Ping Admiral + STREAMY.2 · TRANSCRIPTION WARM-UP (runs on the DESK agent's container, not STREAMY's)
> The recipe + transcribe.py + POT server live in the desk agent's /workspace (see
> /shared/tokyo/intel/STREAM-DESK-LOG.md). STREAMY can't run them locally — coordinate the handoff.
> POT server dies on container sleep — relaunch before Saturday.
If input = phone file (case a) — the easy path, NO YouTube/POT needed:
# on the desk container, once the file is in /shared/tokyo/fireside/: cp /shared/tokyo/fireside/aya-tomo-*.m4a /workspace/ethglobal-tv/ cd /workspace/ethglobal-tv python3 transcribe.py aya-tomo.m4a aya-tomo.jsonl small.en # ~7.5x realtime solo
If input = ETHGlobal VOD (case b) — full recipe:
# 1. POT server (relaunch after sleep): cd /workspace/pot-provider/server && nohup deno run --allow-all src/main.ts > /workspace/ethglobal-tv/pot-server.log 2>&1 & # 2. Live cookies: python3 /workspace/ethglobal-tv/export-cookies.py /workspace/.google-profile /workspace/ethglobal-tv/yt-cookies-main.txt curl -s -b /workspace/ethglobal-tv/yt-cookies-main.txt https://www.youtube.com/ | grep '"LOGGED_IN":true' # sanity # 3. Fetch audio: yt-dlp --cookies yt-cookies-main.txt --extractor-args "youtube:fetch_pot=always" -f bestaudio --no-part -o aya.webm "https://www.youtube.com/watch?v=VIDEOID" python3 transcribe.py aya.webm aya.jsonl small.en
Then convert jsonl → desk-format .txt (header block + [mm:ss] text lines) so STREAMY's
extractor can read it. Save to /shared/public/tokyo-2026/transcripts/aya-tomo.txt
(header: title Fireside: Aya Miyaguchi × Tomo, Speaker: Aya Miyaguchi — Ethereum Foundation
or split by turn, event Pragma Tokyo 2026). If the jsonl→txt shim doesn't exist, STREAMY will
write one on the spot — it's ~15 lines.
3 · EXTRACTION (STREAMY's turf — tested & ready ✅)
cd /shared/streamy
python3 quotes-extract.py /shared/public/tokyo-2026/transcripts/aya-tomo.txt \
-n 8 --dedupe /shared/public/dedication/quotes.json
_score,_ts review aids) + a scored shortlist to stderr.commas→em-dash — the tool nets, the ear finishes). Second ear: request SCRIBE 🖋️ via Admiral.
_score/_ts, keep {text, speaker, talk}, write chosen lines to /shared/streamy/quotes-staging.json (valid JSON, python3 -m json.tool to check).
4 · STAGE → BLESS (laws)
/shared/public/dedication/quotes.json directly — it's live-served. Stage in quotes-staging.json, Admiral reviews, then merge (keep a .bak, validate, dedupe,
max ~30, never drop tape quotes marked keep).
drops $ and ALLCAPS-ticker lines.
already points at the generator → one tap = a dedication card in Aya's own words. 🌕
READINESS (as of 2026-09-25 ~15:50 UTC / Sat 00:50 JST)
quotes-extract.pyquotes-staging.jsonrung1-card.html (handoff to design buff, see rung1-HANDOFF.md)