* stage 1: project init
* stage 2: skeleton with navigation
* step 2.5: streams list
* step 4: stream playback experience
* step 5-6: compose experience
* fix: broken record
* transcode media particles to mp4
* build: reproducible go generate
* build: rename skaffold module for particle processor worker
* infra: increase particle processor worker resources
Was dealing with OOM errors
* tweaks to mobile
* log transcode work
* view on desktop placeholder
* tweak padding
* cap video resolution to save on memory
* infra: bump memory limits as insurance
* ux improvements
* update bundle id for mobile
* config for mobile
This was causing issues in which the last_child_created_at field for
stream particles was slightly after the actual particle's creation time,
and so comparing whether it's unseen merely via the playback markers
would be inaccurate.
This generates the transcript and shows the caption experience on the
client side for media particles. It also simplifies other side effects
that we must perform such as updating the `last_child_created_at` field
for stream and container particles.