T-HUB/apps/media-worker/src
glass beadian 1429e4e9af feat: video direct-to-R2 ingest — browser seals, worker probes off R2
POST /video/direct/init|complete: the browser seals (SPENC2) and PUTs
straight to object storage; the api HEAD-checks, registers the unprobed
asset and queues a probe job — video bytes never cross the api box.

Worker side: produce_job_claim widened to probe jobs (042), the runner
gains a probe lane (sealed fetch → SPENC1/SPENC2 open by magic → scratch →
ffprobe → metadata write-back → complete 100), worker storage reads SPENC2
frames via DIRECT_EC_PRIVATE_KEY (inherited through compose appenv), and a
ported ffprobe util. Probe rows carrying input_json fail instead of
stranding; the claim guard no longer strands probe rows as invalid.
2026-10-16 10:52:47 +00:00
..
bus Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
compositor Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
gate Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
preview Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
producer feat: video direct-to-R2 ingest — browser seals, worker probes off R2 2026-10-16 10:52:47 +00:00
relay Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
supervisor Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
env.ts feat: produce worker deployment + web producer/collective/branding UI + mobile CSS (wave-2c) 2026-10-14 20:40:49 +00:00
main.ts Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
produce.ts chore: MEDIA_DEBUG_STDERR=1 routes produce ffmpeg stderr to /tmp/ffmpeg-debug.log (debug aid; default stays redacted) 2026-10-14 23:05:10 +00:00
production.ts Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00
types.ts Tactical Media Broadcast Hub — initial release 2026-10-10 11:56:42 +00:00