chore: develop → main 同步 v0.1.91 #107

Merged
xiaoxia merged 7 commits from develop into main 2026-06-29 15:41:05 +08:00
Owner

同步 develop 到 main,包含 PR#105(剪辑计划编辑器后端)和 PR#106(前端)

同步 develop 到 main,包含 PR#105(剪辑计划编辑器后端)和 PR#106(前端)
xiaoxia added 7 commits 2026-06-29 15:41:01 +08:00
feat: 剪辑计划编辑器后端 — 模板 CRUD + 分类 + 生成校验
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
62c8d1cdff
- domain: Template, TemplateSegment, TemplateCategory 实体
- ports: TemplateRepositoryPort Protocol
- adapters: SQLAlchemyTemplateRepository + 3 个 ORM Model
- application: CRUD use cases + GenerateFromTemplateUseCase
- 业务规则: one_take=1片段, voice_over_mix=每段需material_type, 配音±30%警告
- schemas: Pydantic request/response models
- routes: /api/v1/templates CRUD + /generate + /categories
- alembic: 014_add_template_tables (templates/template_segments/template_categories)
- tests: 21 个单元测试全部通过
feat: 剪辑计划编辑器前端实现
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
fff47a7a3d
- 新增剪辑计划编辑器页面 (三栏布局)
  - 左侧:模板面板(搜索/筛选/加载模板)
  - 中间:预览区 + 时间线(片段拖拽排序)
  - 右侧:标题/字幕/BGM 设置面板
- 支持 4 种模式切换(画中画/人物口播/一镜到底/口播+混剪)
- 新增「我的模板」页面(卡片视图/编辑/复制/删除/生成)
- 新增 API 模块(mock 数据,后端就绪后替换)
- 更新路由和导航菜单

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
fix: 修复代码审计5个问题 (P0-1,P0-2,P1-3,P1-4,P1-5)
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
9b6a0b8b14
P0-1: 剪辑模式使用 EditingMode 枚举,移除硬编码字符串
  - voice_over_mix → voice_over, person_narration → voice_pip
  - use_cases.py 导入 EditingMode 枚举替代硬编码 VALID_MODES

P0-2: 补充 packages/application/template/__init__.py

P1-3: Use Cases 依赖 TemplateRepositoryPort 而非 SQLAlchemyTemplateRepository

P1-4: generate 端点重命名为 validate(只校验不生成)
  - GenerateFromTemplateUseCase → ValidateTemplateUseCase
  - POST /{id}/generate → POST /{id}/validate

P1-5: 软删除模板时级联清理关联 segments,避免孤儿数据

测试全部通过 (21/21)
fix: 修复复审2个建议 (models注释 + N+1查询 + 事务边界)
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
78524a04eb
- models.py: 注释中旧模式名对齐 EditingMode 枚举
- list_by_user: 批量加载 segments 避免 N+1 查询
- create(): flush 替代 commit,create_segments 统一提交事务
Merge pull request 'feat: 剪辑计划编辑器后端 — 模板 CRUD + 分类 + 生成校验' (#105) from feat/editing-planner-backend into develop
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
e8cd246422
fix: 修复 PR#106 代码审计问题
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
067439a1dd
P0-1: TemplateMode 改为英文枚举值(pip/voice_over/one_take/voice_pip),显示层通过 MODE_LABELS 映射中文
P0-2: EditingPlanner 通过 useSearchParams 读取 ?template=xxx&generate=1,自动加载模板并打开发成弹窗
P1-3: 848行组件拆分为 5 个子组件(TemplatePanel/TimelinePanel/SettingsPanel/SaveModal/GenerateModal)
P1-4: GenerateFromTemplatePayload voiceover_id(string) → voiceover_duration(number)
P1-5: SaveModal 分类字段 Input → Select,关联后端 categories API
P1-6: SaveTemplatePayload 补充 estimated_duration 字段
P2: TimelinePanel Slider 约束 min≤max

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Merge pull request 'feat: 剪辑计划编辑器前端实现' (#106) from feat/editing-planner-frontend into develop
CI/CD Pipeline / Validate Code Quality And Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Has been cancelled
Deploy / Deploy Staging (push) Has been cancelled
Deploy / Build Production Runtime Images (push) Has been cancelled
Deploy / Deploy Production (push) Has been cancelled
Deploy / Production Browser E2E (push) Has been cancelled
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
Tests / lint (pull_request) Failing after 237h12m30s
Tests / test (pull_request) Failing after 237h13m33s
9631272cfb
xiaoxia merged commit 0a8c8833a4 into main 2026-06-29 15:41:05 +08:00
Sign in to join this conversation.