- Shipped
- April 27, 2026 at 6:32 AM UTC
- Author
- Kamo
- Commit
- a562cb6
- Watcher: every emitted Recording carries RecordedAt, derived from the EPOCH segment of our managed **************** filename, falling back to file mtime for voicemail / legacy files. - Grouper: CallBatch now tracks FileExtensions[] (one per file, parallel to Files[]) and the batch's overall RecordedAt (earliest leg start). Sort key for legs is RecordedAt with FinalizedAt as tiebreaker so the master leg is deterministic. - Uploader: manifest now includes top-level recordedAt and per-file extension. ConversionService consumes both to write the Recording (date_recorded, length from ffprobe) and per-leg RecordingExt rows.