feat(database): Add videos table for education module (ST4.3.1)
Table: education.videos
Features:
- Multipart upload tracking (upload_id, parts, progress)
- Storage integration (S3/R2/Cloudflare Stream)
- Video processing status (uploading → processing → ready)
- Transcoded versions JSONB (multiple resolutions)
- CDN URLs (video + thumbnail)
- Metadata JSONB (tags, language, difficulty, captions, transcript)
- Soft delete (deleted_at)
- GIN index for metadata search
- Helper functions (soft_delete_video)
- View for active videos
Constraints:
- Valid status enum
- Valid storage provider enum
- Positive file size & duration
- Progress 0-100%
Blocker: BLOCKER-003 (ST4.3 Video Upload Backend)
Epic: OQI-002
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>