fix(lipsync): 私有桶 OSS 媒体 URL 重签修复对口型 403 (#1839) #1837
Merged
auto-approve-bot
merged 1 commits from 2026-09-10 13:05:28 +08:00
fix/lipsync-oss-presign-403-1839 into develop
1 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
09fcc39e4f |
fix(lipsync): 私有桶 OSS 媒体 URL 提交 MediaKit 前统一重签 7 天,修复对口型 403 (#1839)
CI/CD Pipeline / Check push changed paths (pull_request) Has been skipped
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 25s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 25s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 1m12s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 1m32s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m32s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m42s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 1m44s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m43s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 4m58s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Successful in 1s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 2m57s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 9s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 21s
AI Code Review / AI Code Review (pull_request) Successful in 6m18s
根因:bucket xiaoxia-autocut 为私有桶(匿名 GET 返回 403 AccessDenied)。 TTS 直生音频/输出成片经 storage.upload_file 返回不带签名的裸 public_url, MediaKit GPU worker(terminator→storageGW) 拉取时 403 Forbidden; 前端传入的 1h 短预签名 video_url 排队后也可能过期。 修复(仅改对口型相关): - 新增 LipsyncService._sign_media_url():自家 OSS 桶 host 的 URL(裸的/ 将过期的短预签名)统一重签为 7 天长有效期;外部临时 URL(CosyVoice/ MediaKit)原样透传;异常降级原 URL 不阻断。 - create_job 提交 MediaKit 前对 video_url/audio_url 统一重签。 - _persist_output_video 返回成片前同样重签,私有桶播放不再 403。 - 6 个新单测覆盖重签/透传/降级/端到端;lipsync 相关 46 测试全过。 |