Enforce ruststreamer processing order and metadata finalization
Address follow-up review findings in durable recording processing. Acceptance criteria: - Jobs targeting the same stable object-key prefix execute in creation order across normal enqueue, retries, and recovery so older work cannot overwrite newer output. - Shutdown outcomes distinguish recording teardown failures from bookmark metadata finalization failures. - Jobs with known metadata finalization failures are persisted as blocked or failed and are not marked ready for processing. - Final bookmark persistence preserves pending data after a failed write and joins all outstanding metadata writer threads while aggregating failures. - Regression tests cover ordered retries/recovery, blocked finalization jobs, and complete writer joining/data preservation. - Formatting, clippy, checks, and relevant tests pass.
Checklist
4 of 4 complete- Serialize conflicting processing jobs in creation order through retries and recovery
- Persist metadata-finalization shutdown failures without releasing jobs to processing
- Join all metadata writers and preserve failed final bookmark data
- Add regressions and pass Rust validation
- Area
- Streaming
- Project
- streaming-engines
- Kind
- Bug
- Priority
- High
- Task ID
tsk_pb66mfz2gr- Updated