Migration Plan
:::info Source
Sourced from services/media-service/MIGRATION_PLAN.md in the documentation repo.
:::
1. Rules
- AssetReference schema (F24) frozen M1 start; additive only.
- Caption/Transcript schema (F28) frozen M3 start.
- Variant profiles additive; removing a profile requires re-transcode of old assets.
- AI provenance additive per F04.
2. Database
Additive columns. Status enum additive. New kinds additive.
3. API
URL major on breaking. Sparse fieldsets safe. Upload API stable.
4. Event Evolution
All v1 additive.
5. Variant Profile Migration
- Adding new profile: existing assets transcoded lazily on next request.
- Removing profile: deprecate; wait for all usage cleared; retire.
6. Caption Format Evolution
- VTT + SRT supported. New formats additive.
- WebVTT extensions (e.g., positioning) optional.
7. AI Model Evolution
- Prompt versioning via ai-gateway.
- Existing artifacts retain their provenance; rerun opt-in.
8. CDN Evolution
- CDN provider swap via ACL (CloudFront → Fastly etc.).
- Signed URL format versioned; old URLs remain valid during transition.
9. Data Residency
- Assets pinned to tenant homeRegion.
- Migration: copy S3 objects + DB rows; verify checksums; swap serving region.
10. GDPR
- User erasure: delete uploaded assets (grace period 30 days).
- Bundle-referenced: anonymize owner, retain for bundle.
- AI-generated: delete unless part of bundle.
11. Changelog
Per-release: new kinds, variant profiles, caption formats, AI models.