 zycandClaude Opus 4.8
|
98b6ba948e
|
fix: 平台套图/新建商品 YYX 第二轮(清单4 未完成项)
平台套图:
- 商品列表无真封面时回退 mock 图(与商品库一致显图)
- 商品分类去掉前缀「//」
- 左侧商品栏可折叠(收起只剩商品图)
- 结果搜索框加 × 清空 + 平台筛选悬浮弹窗(可清空)
- 结果卡精简:去容器/引号/平台/小标题,提示词可折叠展开、张数灰色
- 删悬浮「更多」里重复的加入资产库入口
- 去掉加入资产库后的中央遮罩,只保留左上角已入库标签
- 重跑/单图再生成的新批次置底并自动滚动到底
新建商品抽屉:
- 上传失败:黑色遮罩 + 感叹号 + 提示 + 重新上传胶囊
- 填了内容中途退出:二次确认(复用 ConfirmModal)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-27 16:51:49 +08:00 |
|
 zycandClaude Opus 4.8
|
217d24f316
|
fix: 平台套图工作台 YYX 测试清单一轮修复(13 条)
- 平台改单选;结果分组/标签名对应所选平台
- 工作台结果区按当前商品隔离(productBatches)
- 平台套图去掉「详情排版」,只出平台头图
- 部分失败给失败占位 +「重跑这张」单张重跑;部分成功批次恢复加入资产库
- 提示词框加大;生图模型选择移入框内作胶囊靠左置底
- 去掉生成按钮下方说明文字
- 工作台「新建商品」改弹抽屉(复用 ProductCreateDrawer),不再跳商品库
- 右上搜索恒显全部平台、改为筛选结果图(按提示词)
- 结果卡参考即梦:显示提示词/平台/张数
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-27 15:18:21 +08:00 |
|
 zycandClaude Opus 4.8
|
8f32ad69d3
|
fix: 电商测试清单一轮 bug 修复(视频项目角色/场景 + 图片工作台 + 视频收口)
视频项目(ZWQ):
- 演员工作台保存后「我的演员」仍 0 个:保存时加入资产库(in_library=True)
- 资产详情「应用当前角色」自动送审(不再要手动点灰盾)
- 「我的演员」卡 + 待生成 seed 卡补删除入口(垃圾桶,两步确认)
- 新增场景未生成就刷新会丢:sceneDrafts 按项目持久化 localStorage
- 场景 AI 生成强制叠加「无真人」约束,避免出真人致视频被火山拒
- 进入项目默认落到当前阶段(不再恒显第 1 阶段)
- 视频已出但进度卡 3/4:submit/poll/adopt 幂等补推 current_stage→VIDEO,
否则 settle_video_completion 因阶段守卫直接返回、永不收口 completed
图片工作台(PMC):
- 生图走 action 全局单飞锁致并发重跑/多平台套图被拒成「失败/少出图」:
action 加 concurrent 选项,生图不占单飞锁
- 切模块再切回状态丢/数量少:每批各自落盘 pendingIds(onSubmitted 回传),
切回时全部批次各自续轮询
附:含一处早前未提交的图片创作改动(选火山+传参考图强制切 gpt-image-2 + gen 气泡溢出 CSS)。
新增/通过测试:AttachOfficialModel、商品图删除、视频卡阶段收口、参考图强切模型。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-27 15:11:29 +08:00 |
|
zyc
|
ce7eaefe1d
|
生图模型可选(火山/gpt-image)+ 模特上身图提示词强化 + 多会话等改动
本轮(生图模型选择 + 火山接入):
- 工作室新增「生图模型」选择器(模特上身图/平台套图头部 chip + 图片创作底部 Pill),
默认火山 Seedream,可切 gpt-image-2;选择写入 localStorage,下次进页面读回
- 后端 resolve_image_model 解析所选模型;enqueue_standalone_images 接 image_model
- worker 按模型能力分流:有 image_edit(gpt-image)走多图编辑;无(火山)走
image_generation(image=参考图);新增 _ratio_to_volcano_size 让火山按比例出图
→ 内衣等敏感品类用火山可绕开 gpt-image 的 sexual 内容审核
模特上身图提示词:
- 穿戴/非穿戴分流、按 index 变化动作场景镜头、负面词尾接、多图参考序号自适应
- _product_reference_urls:商品参考真实上传图优先、排除 AI 生成图、可多张
其他(并入此前各会话未提交改动):
- 图片创作多会话(ImageConversation + migration 0019)、任务中心按类型过滤
- accounts/projects/assets/team/auth 等零散调整、相关测试
- 测试脚本(tryon_*.py)、测试清单(core/bug/*.xlsx)
|
2026-06-27 14:00:28 +08:00 |
|
 zycandClaude Opus 4.8
|
0a519ca892
|
feat: 任务中心只展示生图任务(模特上身图/平台套图/图片创作)
- AITaskViewSet 支持 ?task_type=a,b,c 过滤
- 前端任务中心请求 task_type=person_image,product_image,过滤掉
entity_extraction/script_*/storyboard 等流水线内部任务,只留生图工作室产出
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-27 11:04:40 +08:00 |
|
 zycandClaude Opus 4.8
|
26577b99b1
|
feat: 生图模型可选(火山/gpt-image) + 工作台图「加入资产库」收纳 + 任务中心排序修复
- AI 工作室生图支持显式选模型:resolve_image_model 解析 volcano(Seedream 图生图,
无 image_edit 时走 image_generation 带参考图)/ gpt-image(image_edit 多图编辑),
未选回落系统默认;enqueue_standalone_images 透传 image_model
- 资产库收纳:Asset 加 in_library 字段(迁移 0007,既有资产 db_default=True 不动);
工作台生成图默认 in_library=False,只在工作台展示,用户「加入资产库」后才进库列表;
assets 视图/序列化器/library 页/types 配套
- 任务中心修复:AITaskViewSet 默认 order_by(-created_at),前端 aiTasks 取 page_size=200。
原因:列表无排序时 MySQL 按 UUID 主键乱序返回,把一批旧失败记录顶到首页,
前端又只取首页 20 条算 全部/已完成/失败 → 误显示「全部失败」(实为 421 成功/少量失败)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-27 10:34:12 +08:00 |
|
zyc
|
de4b20cc7b
|
模特上身图提示词重构 + 图片创作页 UI 调整
后端(模特上身图提示词):
- build_model_tryon_prompt_refs 重写:穿戴/非穿戴分流(穿戴=真实穿身替换原衣,
非穿戴=手持/佩戴/使用不动原衣)、每张按 index 变化动作/场景/镜头、负面词尾接、
多图参考序号自适应(参考图1~N=商品,参考图N+1=模特)
- 新增 _product_reference_urls:商品参考图真实上传图优先、排除 AI 生成图、可多张(≤3),
无真实图回落 cover
- worker run_standalone_image_task 模特分支改用多图取图 + 传 index/n_product
前端(图片创作/工作室):
- 生成数量改 1/2/4;图片比例新增「手动输入」(宽:高 两输入框)
- 临时隐藏「商品库」按钮
- 模特卡:去掉 // 真人模特,标题改图片底部白字遮罩层 + 单行省略
- 工作室壳负边距对齐 .content padding,修复上下被遮挡/裁切
其他:并入此前未提交的商品页改动、脚本 Agent/格式实测文档与 demo
|
2026-06-27 09:31:44 +08:00 |
|
 zycandClaude Opus 4.8
|
4c8b2d1902
|
feat: 出图报错捕获真因 + 翻成前端友好提示(故事板)
老板/研发要求:有报错时把真因抓出来,做成前端友好提示。
- 捕获真实错误体(openai_compatible._raise_with_body):取代 raise_for_status()。
yunqi 的真因(moderation_blocked / safety_violations=[sexual])只在 body 里,
原来只剩状态行「400 Bad Request for url」→ 真因长期不可见。现在完整抓出。
- friendly_generation_error():把原始报错翻成中文友好提示(内容审核/超时/限流/
凭证/参考图被拒…),前端直接展示;原始报错留 task.error_message 供研发排查。
- 故事板失败:友好提示存 shot.error_message;并撤回「重试 400」——审核拦截重试
也是白拦,改成快速失败+提示,引导用户改措辞(如避免「胸罩/内衣/抚摸/贴身」)。
- 前端:失败帧缩略图加红色「⚠失败」角标(hover 看原因),主视图显示完整友好提示;
不再灰着没反应。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-26 17:03:02 +08:00 |
|
 zycandClaude Opus 4.8
|
d26500bdbd
|
fix(pipeline): 基础资产页两个轮询空闲不停 → 空闲即停、开工即起
现象:停在基础资产页(尤其点「重新提取角色/场景」后)pending-assets 与
poll-reviews 一直轮询、刷屏。
根因:
- poll-reviews 的停止条件写成「只有先见过 processing 才停」,没有审核中资产时
永远停不下来(8s 空转)。
- pending-assets 在该页无停止条件(4s 一直发)。
- pending-assets 把每渲染换新引用的 onRefreshProject 放进依赖 → 每渲染重订阅
并立刻补发请求,越刷越密。
修复:
- pending-assets:一轮发现无在途出图 + genBusy 为空即停;genBusy 变化(开始/结束
生成)时重订阅恢复。onRefreshProject 改走 ref,移出依赖。
- poll-reviews:一轮后端无 processing 即停;genBusy / reviewWake(手动送审)/
pendingGenKey(出片完成→自动送审)任一变化时重订阅,把盾盯到终态再停。
- 终态(active/failed)在最后一轮非空响应即下发,停在空响应安全不丢更新。
空闲坐在基础资产页 = 零轮询;仅有真实生成/审核在途时才轮询且完事即停。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-26 13:16:48 +08:00 |
|
 zycandClaude Opus 4.8
|
669d9a683b
|
polish: 商品/场景三视图「替换」选图层——通用化 + 场景修复 + 过滤分页
- 商品三视图「替换」数据源修复:旧实现只读 productRecord.images(封面1张)
→ 改为 fetch 后端 ?product= 三路并集,只列商品图(product_image)。
- 页脚样式对齐人物/场景卡:hstack 左 ghost「替换」+ 右 primary「AI 生成」。
- 场景卡「替换」修复:旧实现误用人物专用演员库(列出角色数据)→ 场景改走
通用选图层,按 category=scene 取;人物仍走演员库。覆盖 seed/已生成/详情 3 入口。
- 场景过滤:故事板帧也被存成 category=scene(metadata 全空,只能按名字),
过滤掉 storyboard/分镜,只留真场景图。
- 商品/场景选图均加分页,20 个一页(上一页 / X·共N / 下一页)。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-25 14:08:58 +08:00 |
|
 zycandClaude Opus 4.8
|
dea9dbb3ed
|
fix: 修复资产/视频/三视图三处 bug + 脚本模型切 YunQi gemini
1. 视频「全部生成」串行短路:任一段提交失败就 break 致后面段不提交
(4 个框只跑 2 个)→ 改 Promise.allSettled 并发,单段失败不拖累其余,
部分失败也刷新并如实报告。(App.tsx)
2. 基础资产/三视图 AI 出图偶发失败「生成不出来」:中转站瞬时抖动
(网络/5xx/429/空返回)一次失败即退费 → 加退避重试 3 次,永久错误
(4xx 内容违规)仍立即退费。(services.py run_base_asset_task/run_triview_task)
3. 商品三视图无法用已有素材:商品卡加「使用已有素材」,选商品已有图 /
上传本地图直接 attach 成三视图(不走平台 AI 生成、不计费)。(pipeline.tsx)
4. 脚本助手:tokenssr 欠费致 GPT-5.5/Gemini 全挂 → 文本模型切 YunQi。
实测 YunQi gpt-5.5 频道扛不住重型结构化任务(skill 全提示词仅 1/5 成功、
常吐空无 JSON),gemini-3.1-pro 5/5 稳定 → 默认改 gemini,停用 gpt-5.5。
按「一 provider 一 key」拆 yunqi_gpt / yunqi_gemini 两 provider。
(.env / settings / 迁移 0017+0018)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-25 12:00:03 +08:00 |
|
 zycandClaude Opus 4.8
|
8222a46202
|
fix(pipeline): 视频为末步时收口项目完成态 + 列表 5→4 步同步
V1 雪藏「拼接导出」第 5 阶段后,完成态(COMPLETED)只在 export.py 拼接成片时
才置,导致视频全部出片的项目永远卡在 videoing,列表末格一直闪烁。
- 后端:新增 settle_video_completion(幂等)+ VIDEO_IS_FINAL_STAGE 开关。
全部片段出片→项目 completed、video 阶段标成功;某段被重跑→退回 videoing。
挂 retrieve(自愈历史卡住项目)/poll-video-segment/submit-video-segment/
adopt-video-version 四入口;收口直接查库,不吃 prefetch 旧缓存致误判。
V2 恢复导出把 VIDEO_IS_FINAL_STAGE 置 False,完成判定交回 export.py。
- 前端:项目列表/网格进度从 5 步同步成 4 步(PROJ_STAGE_TOTAL=4),
export 阶段并入第 4;已完成项目末格走 done(绿)不再用闪烁的 cur。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-24 17:32:12 +08:00 |
|
 zycandClaude Opus 4.8
|
658aaa222f
|
feat(storyboard): 故事板改分镜制(单场独立重跑/历史)+ 视频过审闸 + 审核前端如实化
三块改动在 services/views/pipeline/App/api 等文件按行交织、且过审闸后端依赖故事板新
模型,无法拆成各自独立可编译的提交,故合并为一次:
· 故事板分镜制:新增 StoryboardShot/StoryboardShotVersion(对标 VideoSegment/Version)
+ 数据迁移(采用版每帧转一 shot+已采用版本)。每镜一个 shot,各自历史版本,可单场
重跑、逐场切换/采用,新增「开始生成故事板/单场重跑/采用某版」端点。重跑非阻塞(后台
静默轮询出图,不锁其它场按钮);历史「查看」与「采用」分离(切版本不丢在制重跑)。
视频取分镜图/删分镜清理/过审闸全部改读 storyboard_shots。
· 视频生成前过审闸:点生成校验含真人脸的人物立绘/故事板分镜是否过审,未过审弹窗列出
哪一镜/哪个,可一键送审,挡住不生成(collect_video_review_blockers + precheck 端点)。
· 审核前端如实化:不再 `|| "processing"` 伪造审核中;送审失败经 onNotify 如实提示;
审核轮询扩到视频阶段,送审后能看着盾变绿。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-24 17:11:55 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
51d5010c43
|
fix(admin): Django 自带后台挪到 /django-admin/,/admin/* 回落 SPA,修后台刷新 404
前端平台后台用客户端路由 /admin/*,但 nginx 把 /admin/ 反代给了 Django(只有自带后台),
刷新 /admin/prompts 等 → Django 404。把 Django 后台挪 /django-admin/、nginx 同步改,
/admin/* 落到 try_files → index.html(SPA 路由)。Django admin 命名空间仍是 admin,reverse 不变。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 02:04:08 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
fd596776e2
|
feat(image): 支持真 16:9(1536x864)+ 人物/商品三视图/场景默认 16:9
- gpt-image-2 实测支持 16:9(宽高需被 16 整除):真 16:9 = 1536x864(长边封顶 1536);
原来「16:9」误给成 1536x1024(实为 3:2)。修正 _RATIO_TO_SIZE 与 _ratio_to_image_size
- admin「提示词」页比例按钮新增「宽 16:9」
- 迁移 0015/0016:scene + product_triview + person_triview 默认比例设为 16:9;
分镜图(storyboard_frame)/立绘/视频保持竖屏不动
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 00:56:33 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
dee269aeda
|
fix(script): 脚本按向导选的成片时长生成,不再写死 60 秒
pipeline 调脚本 agent 时 total_duration 写死成 60,忽略了向导里选的时长(选 30s 也按 60s 出)。
改为从 project.metadata.wizard.duration("0-30"→30)解析后传入;缺省回落 60。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 00:56:33 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
79fc95f1b7
|
fix(video): 视频卡用首帧当封面(#t=0.1),不再显示空白占位
<video preload="metadata"> 不解码画面、又没 poster(后端抽帧没产出 poster 文件)→ 卡片空白。
给缩略图视频地址加 #t=0.1,浏览器跳到 0.1s 渲染该帧当封面;取的是当前采用版 mp4(=最新版)。
改:视频卡缩略图 + 详情弹窗历史版本缩略图。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 18:23:57 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
c2c2dfdc77
|
feat(review): 故事板分镜图挂火山人像审核盾 + 红盾可重新送审
- 后端 StoryboardFrameSerializer 暴露 review_status + 驳回原因(之前没给,前端画不出盾)
- 前端故事板趴:每张分镜图(缩略图角上只留盾 / 大图左上完整徽章)挂 ReviewBadge,
与人物/场景卡同款(审核中橙光 / 已过审绿 / 未过审红);故事板趴每 8s 轮询刷新审核态
- ReviewBadge:红盾(未过审)也可点「重新送审」——「审核超时」是误判(分镜图在 processing
卡太久被本地超时兜底标失败,非火山真违规),重提即可再审;灰盾/红盾两处(分镜图+人物卡)行为一致
- compact 模式:嵌在 overflow:hidden 容器里的盾(分镜图)改用原生 title 提示,避免 CSS 气泡被裁看不见
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 17:23:18 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
4074c13733
|
fix(video): 提交报错接住返 JSON 不再白屏 + 分镜图 processing 也走素材库 asset://
- submit-video-segment 视图接住 submit_video_segment 的异常 → 返回干净 JSON(真实火山报错文案),
不再让它变成 500 整页 HTML 报错栈 → 前端把 101KB HTML 怼进 toast 撑爆白屏
- 前端 request():非 JSON 错误体只显示状态行,绝不把整页 HTML 塞进 toast(白屏兜底)
- _seedance_ref_url:只要分镜图/人物已进素材库(有 remote_id)就走 asset://,不再卡 active —— 故事板
刚重生成时分镜图还是 processing,卡 active 会回落原始直链 → 火山以「疑似真人」拒。实测 processing
的素材 asset:// 照样可引用,根治「重生成故事板后重跑视频被人脸拒」
真机验证:场4 完整提交(人物/分镜图 asset:// + 场景/商品直链)ACCEPTED 出片;后端测试通过,tsc/build 过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 16:57:37 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
38f4d95951
|
feat(video): 视频卡交互反馈 + 「全部重跑」真重跑已完成的段
- 单卡「重跑」/ 详情弹窗「重跑本场」/「全部重跑」点下立刻进「提交中」态:按钮转圈、视频块叠
spinner 遮罩,撑到该段真进 running(busy 接管),堵掉空窗连点 → 防双倍扣费、不再点完没反应
- 「全部重跑」改为把已完成(succeeded)的段也重跑(原来过滤掉 succeeded → 全成功项目点了等于
没点、还弹假的「已提交」);只跳过在途(running/queued)避免重复提交
- 视频卡加「共 N 版 ›」小标识(N>1 才显示),点开详情弹窗看历史版本/切换/采用
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 16:57:37 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
f9c52a171c
|
feat(product): 商品图删除接通 + 至少保留一张
- 详情页编辑态的删除叉子原是纯 CSS ::after 装饰、没绑事件,且列表用的是 asset id 而非删除接口要的
ProductImage id —— 接通:编辑态点图真调删除接口、用 ProductImage id,非编辑态仍点击放大
- 商品至少保留一张图(与「创建必须带图」一致):后端删到最后一张返回 400;前端只剩一张时那张不显示
叉子 + 提示「商品至少保留一张图;要移除请删除整个商品」;封面无对应 ProductImage(如三视图采用为封面)
则只展示、不可删
- 加 2 个后端测试(多张可删 200 / 删最后一张 400)
真实接口验:两张删一张 200、再删最后一张 400 并保留一张;后端测试通过,tsc/build 通过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 16:29:05 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
f02c8053a1
|
feat(product-create): upload-first 建商品 —— 图拖入即进桶,创建时带 asset 一块落库
- 抽屉拖入/选图 → 立刻 POST /api/assets/upload/ 传进 TOS 桶拿 asset id(每张带上传中/完成/失败态,
首图标「主图」=cover_asset);上传未完成禁用「创建商品」
- 点创建 → POST /api/products/ 直接带 cover_asset + images inline 落库,一步到位,不再「先建后传图」
(那条因传图接口需先有商品 ID,与「创建必须带图」校验天然冲突 → 建商品恒 400「商品创建失败」)
- 同步读取 File:addImages 一进来就 Array.from 取文件,避免 pickImage 紧接的 input.value="" 清空
input.files 导致「第一次点没反应、第二次才上传」;选好即发起上传,不靠会滞后的 effect
- 后端保留「创建必须带图」校验(upload-first 下可满足、且正确)
真实接口验:独立上传 201 → 带 cover+images 创建 201(落库)→ 无图创建 400;tsc/build/后端测试通过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 16:28:53 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
dbd1382fb1
|
feat(storyboard): 整张生成时每张分镜转圈(不全屏遮挡)+ 未生成占位回 2:3 竖屏
- 每张分镜占位(缩略图 + 大图)叠半透明遮罩 + spinner,样式同基础资产趴;不再全屏遮挡
- 中间大图空占位由 16:9 横框改 2:3 竖屏,与成品(1024×1536)同形;fh-flat 下加兜底高度居中
- 生成结束(成功/失败)spinner 自动停
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 13:16:16 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
9c2a3bc365
|
feat(prompts): admin「提示词」页 —— 视频线 6 条生图/视频提示词正文+比例可在后台改,不再写死
诉求:生图/视频提示词全写死在代码里,产品方看不到也改不了(之前那版只做成「质量后缀」不是正文)。
现新增可编辑「提示词模板」体系,覆盖视频项目生产线 6 条:人物立绘 / 人物三视图 / 商品三视图 /
场景图 / 分镜图 / 视频。
后端:
- 新模型 PromptTemplate(key 固定 6 条 + template 正文 + ratio 比例 + enabled);迁移 0012/0013
种入默认正文(= 各 builder 现写死文本,零回归)。
- render_prompt(key, default, **字段):读 DB 模板,留空/停用回落默认;安全替换 {占位符}(中文名),
未知占位符原样保留(改错不致命)。prompt_ratio_size:比例→gpt-image 尺寸。
- 6 个 builder/调用点改走模板;5 条图比例可改(gpt-image 仅 1:1/竖/横),视频固定 Seedance 9:16。
场景图新增可编辑「场景风格」包装(默认仅 {场景描述},零回归)。人物/分镜/视频原质量后缀并入模板。
- adminpanel CRUD:GET /prompt-templates、PATCH /<id>(改正文/比例/启用,key 不可改、不增删,带审计)。
前端:admin 新增「提示词」侧栏页(/admin/prompts):6 卡,每卡=占位符提示+正文文本框+比例按钮+
启用开关+保存。复用 .btn/.card-hard 共享类,仅 token 配色,单橙锚点。
验证:Django 套件 102 全绿(含新模型/API/生成侧立即生效 + 人物提示词改读模板);tsc+vite build 绿;
无头(独立 sqlite 栈)真开 /admin/prompts:6 卡齐、文本框/比例/占位符齐、0 控制台错误。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 03:19:07 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
be4bc1c8f4
|
feat(pipeline): 未生成的人物/场景卡可点进详情(先立绘后三视图)+ 卡内提示词框固定5行
- seed(未生成·来自脚本)卡:缩略图/名字可点 → 进资产详情弹窗(保留卡上内联「AI 生成」快捷,
两条路都能生成,A 方案)。详情弹窗支持「还没生成组」的空壳实体(用脚本名+提示词兜底),
生成立绘后刷新按同名 key 自动切回真实体。
- 顺序限制(本就在详情里,现对 seed 也生效):没立绘时「AI 生成三视图」禁用 + 提示
「请先生成左侧立绘」;立绘按钮首次显示「生成立绘」(非「重跑」),替换走 seed 路由。
- 卡内提示词框(.prompt-box,外层人物/场景卡)固定 5 行高、超长框内滚动,不再被长提示词撑高。
自检:复用现成详情弹窗与 .btn/.prompt-box 共享类,无裸色值/无重写共享类;单橙锚点不变。
验证:tsc + vite build 绿;无头(独立 sqlite 栈)真点 seed 卡 → 详情打开、三视图禁用+提示、
立绘按钮「生成立绘」、提示词框 115px 固定且超长可滚动、0 控制台错误(截图存档)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 02:07:46 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
e5b3833ba5
|
fix(pipeline): 基础资产页去掉重复「重新提取」按钮 + 留存的升二级(守单橙锚点)
- 删顶栏右上浮动「重新提取」(pipeline-reextract,JSX + CSS)—— 它与左侧「重新提取角色/场景」
提取后同时出现、点的是同一动作(runExtract only),重复。
- 留左侧那个(上下文更贴、文案更清),并按 design.md §3 从三级 ghost 升二级(btn btn-sm,
白底+inside-border)—— 比 ghost 显眼一档,又不抢橙(单橙锚点仍归 生成三视图/确认资产)。
自检:用共享 .btn 类、无裸色值/无新阴影/未重写共享类;tsc 绿。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-23 01:43:38 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
c8cb6d3d51
|
fix(extract): 实体提取改异步(worker+轮询),根治 502 + 刷新丢 loading + 重复扣费
问题:进资产页点"提取人物/场景"——同步死等豆包思考模型(数十秒)→ 撞网关超时
502;"提取中"loading 是纯前端内存态,刷新即丢;且无幂等,刷新后重点会重复扣费。
改动(对齐全站异步三件套:出图/三视图/故事板同款):
- 后端 submit_extract_entities:Web 只建 RESERVED 任务 + 预留额度秒回(不再 502);
已有在途提取则复用,绝不二次预扣(防刷新后重点 / 并发重复扣费)。
- 后端 run_extract_entities_task(Celery worker):流式调豆包 + 解析 + 落库 + 扣费;
失败退费并把可读错误记进 task.error_message。
- 新增 AITask.Type.entity_extraction(迁移 0011)+ extract-status 端点(轮询进度/成败)。
- 前端 runExtract 改提交+轮询;进资产页自动认领在途提取,刷新后 loading 自己回来。
验收:完整 Django 套件 149/149 全绿(含新增 4 测:异步落库+计费一次 / content空
回退 reasoning / 在途防重复扣费 / 状态端点成败透出);tsc + vite build 全绿;
makemigrations --check 无遗漏。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-22 23:15:11 +08:00 |
|
seaislee1209
|
612ab6864d
|
feat(pipeline): 基础资产页 A三视图手动 + B进故事板拦截 + C采用/未采用 + D删除
- A 三视图改手动:删"打开角色详情自动出三视图"逻辑、角色生成只出立绘(不再链式自动三视图);
详情弹窗保留「AI 生成三视图」按钮作手动入口(提示文案去掉"自动")
- B 进下一步拦截:「确认资产,进入故事板」按钮挂 guardGen —— 被引用角色/场景缺"已采用"参考图就弹窗拦
- C 采用/未采用:角色/场景卡加 toggle 徽章(已采用绿/未采用灰);默认按"实体名是否在脚本里"派生,
用户可点击覆盖并持久化(metadata.adopt);后端 set-base-asset-adopt 端点;下游 _storyboard_reference_images
只取已采用组(商品组永远保留、顺带排除未采用/三视图组的兜底误抓)
- D 删除:角色/场景卡 hover 显删除按钮(二次确认),商品主卡不给删;后端 delete-base-asset(连带三视图组)
- 顺手:提取闸门按钮去掉"不自动花钱"文案
验收:projects/assets/ai 全套(基线既有 7 失败零新增,新增 set-adopt/delete 3 测过);tsc+build 绿;
无头核对(采用 toggle/hover 删除/待审核盾齐活、0 console error)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-22 19:23:02 +08:00 |
|
seaislee1209
|
fda0385d2f
|
feat(pipeline): 基础资产页提取闸门简化为单按钮 + 卡式 loading + 顶栏重新提取
- 进资产页遮罩上从「3 个按钮(只提取/提取+生成/全套)」简化为单个醒目 CTA「提取角色 / 场景」
(走 only 模式:只提取不出图,生成仍由用户后续手动点);提取时用脚本同款卡式 loading
(spinner + 标题 + 跳点 + 扫光进度条;sgv-* 样式解作用域以复用)
- 内容区右上角(团队头像正下方)加「重新提取」按钮 —— 仅基础资产页且已提取过时露出,点击重提
验收:tsc+build 绿;无头核对(空项目显单按钮闸门「提取角色/场景」、已提取项目显「重新提取」、0 console error)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-22 14:12:39 +08:00 |
|
seaislee1209
|
1d40e89418
|
feat(product-detail): 素材区重做为结构化 — 角色逐个 / 商品图平铺 / 图片成品平铺 / 场景分镜视频按项目打包
按"东西的性质"分,不再一锅炖:
- 后端 /api/products/{id}/materials/:角色=立绘+配对三视图(triview_of)逐个、带「被几个项目引用」
(BaseAssetGroup 去重计数);商品图平铺;图片成品(上身图/套图/创作)平铺;场景/分镜/视频素材按视频项目打包
- 前端商品详情素材区重做:角色卡(左上标签+左下「N 个项目引用」/「// 暂未引用」,点开看形象图+三视图)、
商品图平铺、图片成品平铺带类型标签、项目包卡(点开看该项目场景+分镜+视频素材);通用明细弹窗
- 单测 ProductMaterialsTests(角色配对+引用数=1 / 商品图 / 图片成品 / 项目包2素材)
验收:products+assets 22 测绿;tsc+build 绿;无头核对(角色卡「1 个项目引用」+商品图平铺、0 console error)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-22 13:34:39 +08:00 |
|
seaislee1209
|
708b9ea572
|
feat(review): 全站统一「审核盾」徽章 + 灰盾点击手动提交兜底
火山人像审核状态此前三处文案各异(已审核/通过/审核✓…)。统一成一个共享 ReviewBadge:
全色填充盾(无对勾叉)+ 文案 + hover 气泡说明,4 态:
🟢已过审(active) / 🔴未过审(failed) / 🟠审核中(processing,橙盾光扫动画) / ⚪待审核(空)
灰盾(未送审)可点 → 提交审核(兜底,不加固定按钮):后端新增 POST /api/assets/{id}/submit-review/
(团队级,仅送审三类),前端点击乐观置 processing。气泡组件顺带成为全站首个统一 tooltip。
- 后端 submit-review 端点 + 单测(送审类 200 / 非送审类 400)
- 共享 components/review-badge.{tsx,css}(盾用 SVG 蒙版填色 + 橙态 rv-sweep 光扫)
- 资产库详情弹窗 / 商品详情素材组弹窗 / 视频流程基础资产 三处全换成它(各自接 onSubmit)
验收:assets 16 测绿;tsc+build 绿;无头核对四态(灰可点+气泡/绿已过审/橙审核中不可点)、0 console error
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 22:46:51 +08:00 |
|
seaislee1209
|
9108b7679d
|
feat(product-detail): AI素材成组(A)— 按类型归组,点组卡弹窗看整组
商品详情「AI 生成素材」从一堆散卡(单拎着)改为按类型成组:角色(形象图+三视图)/ 商品图 /
模特上身图 / 平台套图 / 自由创作 / 场景 / 分镜图 / 视频素材 各一组卡(带数量角标),
点组卡 → 弹窗看这组所有素材(缩图可放大;送审类才显审核态)。去掉「加载更多」(组少不分页)。
验收:tsc+build 绿;无头核对(2 组卡 角色/商品图、点开弹窗显组内素材 + 审核态、0 console error)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 22:20:42 +08:00 |
|
seaislee1209
|
3fda75ce65
|
fix(product-detail): 修素材类型标签映射 + 审核态只显送审类
- PD_ASSET_TYPE_LABEL 改对并补全:person→角色(原误为「模特上身图」)、scene→场景(原误为
「平台套图」)、补 model_portrait/model_tryon/platform_kit/free_create/storyboard/video_clip
(老数据里分镜=scene、形象图=person 因此前张冠李戴)
- 审核态(火山人像审核)只渲染在送审三类(person/tri_view/storyboard)上;其余素材根本不送审,
此前一律标「待审核」是误导,现不显
验收:tsc+build 绿;无头核对(角色显「角色」+待审核、商品图无审核态、0 console error)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 22:13:36 +08:00 |
|
seaislee1209
|
725f7aa001
|
chore(css): 移除 styles.css 里老 V1 .factory-* 死样式(根除居中泄漏源)
那块用的是 --card/--ink-3/JetBrains Mono 旧 token,只剩泄漏作用(align-items:center 把
图片工具卡内容居中)。现版 .factory-* 样式全由 ai-tools-page.css(.asset-factory 作用域)提供、
卡角由 design-restraint.css .with-corners 提供,故整块移除;并从 1180px 媒体查询选择器里摘掉 .factory-body。
(沿用上方已移除老 .msg-* 的同一思路。)
验收:build 绿;无头三卡内容偏移仍 31px、0 console error、卡角/视觉无变化
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 21:47:20 +08:00 |
|
seaislee1209
|
caec48c827
|
fix(asset-factory): 图片工具卡内容贴左 — 盖掉残留全局 .factory-body 漏进的居中
旧全局 .factory-body(styles.css)是老两栏 grid 带 align-items:center;新的
.asset-factory .factory-body 特异性更高但没写 align-items,导致 center 漏进来把
标签/标题/按钮整块水平居中。卡越宽偏越多(2列卡内容离左边 ~167px)。
显式补 align-items:stretch 盖掉 → 内容左对齐贴 30px 内边距(无头实测 31px,不随卡宽漂移)。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 21:26:28 +08:00 |
|
seaislee1209
|
4571991deb
|
feat(library): 资产库重做为「成品库」— 图片成品三类 + 视频成品按项目素材包
定义:资产 = 平台产出的成品。原料(商品/模特)归各自的库、半成品(角色/三视图/场景/分镜)归项目,
资产库只装成品 —— tab 从 9 个收成 5 个。
- 后端 /api/assets/video-packs/:视频成品按项目素材包(与「导出全部」同源,取 VideoSegment.adopted_version
真实视频资产,给 TOS 直链 url 供 <video> 播放/取首帧);summary 改只数成品(tryon/kits/creations/others)
- 资产库 _tab_q 加 others(我的上传+未归类兜底);角色/场景/商品图/素材 tab 移除(各回各家)
- 前端 library:tab→模特上身图/平台套图/自由创作/视频成品/其他;视频成品=项目包卡(<video>首帧封面)
→ 点开弹窗看该项目所有片段(可播);图片成品/其他复用原网格
- 单测 VideoPacksTests:按项目分组 + 软删片段排除
验收:后端单测绿(基线 4 失败零新增);tsc+build 绿;无头 0 报错(5 tab + 视频包弹窗 3 段)
注:图片成品「按生成批次成组」待图片趴有真实数据时接线(当前 demo 已清空)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 20:54:42 +08:00 |
|
seaislee1209
|
a39d2b8603
|
feat(video): 视频页「导出全部」— 把项目所有视频片段打包成 zip 下载
- 后端 ProjectViewSet 加 export-clips action:逐段从 TOS 拉取已采用视频片段、内存 zip 打包返回下载
(单段失败跳过不毁整包;空项目 400);文件名走 RFC5987 UTF-8 编码兼容中文
- 前端视频阶段 queue-bar 在「上传视频」旁加「导出全部」按钮(下载图标 + 导出中/失败态),
api.exportProjectClips 取 blob → 触发浏览器下载;仅有已完成片段时可点
- 单测 ExportClipsTests:打包全部片段 + 空项目 400
验收:后端单测绿(基线 4 失败零新增);tsc+build 绿;真打包 补水面膜 项目得 950KB zip;无头 0 报错
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 20:38:31 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
9e791a4db9
|
fix(projects+assets): 项目封面引用真实商品图 + 资产库排除软删资产
- 项目卡封面:废弃「项目名关键词→静态 mock 假图」映射(与真实数据脱节,导致全是假面膜图),
改用后端 cover_preview_url(取商品 cover_asset 主图);无商品图 → 干净占位
- 资产库 queryset/summary/facets 补 is_deleted=False:软删资产不再出现在资产库与 tab 计数
(此前 is_deleted 字段在资产库未生效,软删无效)
- 单测 AssetSoftDeleteTests:列表 + 计数均排除软删
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 19:44:45 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
c6e9c7e77b
|
feat(video): 期3 视频趴 — 人物→角色 + 引用模特库/自动入库 + 分镜合规归类 + 资产库素材
后端:
- B 路:视频流程新生成角色立绘+三视图成套 → 自动入模特库(run_triview_task,幂等 additive)
- 合规闭合:三视图 person→tri_view、分镜图 scene→storyboard,两者均加 on_commit 送审(此前只有角色立绘送审,三视图/分镜图漏审 = 合规缺口)
- 资产库 _tab_q:成片 finals→素材 materials(所有视频排除最终成片;最终成片隐藏不列)
- 单测 TriviewAutoEnrollTests:自动入库 + 幂等 + 三视图落审核范围
前端:
- 视频项目资产趴「人物」→「角色」(KIND_LABEL,区块名/新增/空态/详情弹窗一处全改;向导人设 persona 不动)
- A 路:演员库收编模特库 —— 顶部「模特库」tab 取自模特库实体(含官方跨团队模特),选一个即用其形象图作角色参考
- 资产库 library:人物→角色、成片 tab→素材、分类标签补全(模特上身图/平台套图/自由创作/视频素材/最终成片)
- vite.config:端口与后端代理目标可用 VITE_PORT/VITE_API_TARGET 覆盖(默认不变),避免多实例撞车
验收:后端单测全绿(基线既有 7 失败零新增);tsc+build 全绿;无头 0 console error
(资产库角色/素材改名、最终成片隐藏;pipeline 资产趴显角色;演员库模特库 tab 含 5 模特)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 19:27:23 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
c8f3f91d38
|
feat(images): 期2 图片趴三类 — 模特上身图/平台套图/自由创作 归类+成组+接模特库
后端:
- 独立生图三类归类:model+product→model_tryon(模特上身图,引用模特库,不送审) / cover→platform_kit(平台套图) / image→free_create(自由创作);生成演员(model 无 product)仍→person(视频角色,留期3)
- 成组:每次提交一个 batch_id 串起整批,落 asset.metadata;另记 mode + model_entity_id(上身图溯源模特库)
- generate-image 端点透传 model_entity_id;资产库 _tab_q+summary 加 tryon/kits/creations 三类桶
- 单测 StandaloneCategoryTests 直跑 worker 验四态归类全绿(绕开异步 .delay)
前端:
- 资产库 library.tsx 加三类 tab(模特上身图/平台套图/自由创作)+ 计数 + 筛选维度
- ai-tools 模特选择器数据源 person→模特库(listModels 映射,选中传形象图当参考 = 引用模特库),ActorLibrary 同源
- api.ts submitGenerateImage 加 model_entity_id
验收:tsc+build 全绿;无头 0 console error(资产库三类 tab 各归类正确、模特选择器 5 张取自模特库)
基线既有 3 失败(StandaloneImageReferenceTests 异步漂移)零新增
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-21 16:36:29 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
44e90233ff
|
feat(models): 期1 模特库地基 — Model 顶级实体 + 模特库页 + 审核范围扩展
后端:
- 新增 Model(模特)团队级实体:形象图+三视图+声线(声线尾期),官方模板标签,软删
- Asset.Category 枚举一次加全(model_portrait/tri_view/voice/model_tryon/platform_kit/free_create/storyboard),逐期接线
- 送审范围 person → REVIEW_CATEGORIES{person,tri_view,storyboard}(review.py + adminpanel 队列),图片趴不送审;当前行为不变(forward-compat)
- /api/models/ ModelLibraryViewSet:本团队∪官方模板、官方/我的 tab、真人上传、软删(官方不可删)、跨团队资产引用防越权
- backfill_models 命令把历史成套模特(kind=model + 项目流命名配对)归集成 Model,dry-run 默认
前端:
- 左菜单新增「模特库」顶级入口(person 图标)+ 路由 /models
- 模特库页:全部/官方模板/我的模特 tab + 真人上传 + 模特卡(形象图+三视图缩略+官方标签),仅用 design token
测试:assets 10/10 绿;tsc+build 全绿;无头走查 0 console error(全部5/官方3/我的2,官方标签达标)
基线既有 7 失败(ai/projects provider mock 漂移)零新增
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 22:53:46 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
1c9143ce61
|
fix(base-assets): F8 商品卡与人物/场景卡统一尺寸(240px 方图)
- 原商品卡 360px高/3:5(高窄)、人物卡方图(矮宽)→ 视觉不一致
- 商品卡改 240px 宽 + 方图(aspect-ratio:1),与人物/场景卡一致
- 人物/场景网格列固定 240px(不拉伸)→ 与商品卡精确等大,左对齐
- 同步对齐稿:W4 审核范围收窄(仅视频趴人脸送审,模特上身图属图片趴不审)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 19:49:57 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
998b0bfb93
|
fix(product-detail): 素材卡「归档」按钮 → 只读审核状态
- 状态不再是用户可点循环(通过/不通过/归档),改为只读展示团队审核结果
- 状态值 archive→pending:active(绿盾)=通过 / failed(红标)=不通过 / 其它=待审核
- 移除 statusOverrides 本地覆盖 + cycleAssetStatus + 采用三视图的状态联动
- 筛选项「归档」→「待审核」;CSS .pill.archive→.pill.pending 去 cursor:pointer
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 19:21:31 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
3469799da5
|
feat(trash): 商品删除→垃圾桶(软删可恢复)+ 左侧垃圾桶入口
后端(无需迁移,复用 Product.status active/archived):
- destroy 改软删(status→archived);正常列表/详情只看 active
- 新增 /products/trash(列已删)、/products/{id}/restore(恢复)、/{id}/purge(彻底删)
- tests.py:软删/列表隐藏/回收站/恢复/彻底删/拒绝彻底删 active —— 5 测试全过
前端:
- api:productsTrash / restoreProduct / purgeProduct
- 左侧导航加「垃圾桶」(新增 trash 图标);route-config 接 /trash 路由
- 新页 routes/trash.tsx + trash-page.css(仅 token):已删商品列表 + 恢复 + 彻底删(二次确认)
- 删除确认文案「不可撤销」→「移至垃圾桶可恢复」;toast「商品已删除」→「已移至垃圾桶」
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 19:16:28 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
b8fc1a0749
|
fix(product-create): 新建商品上传健壮性 — loading/失败提示/等齐再关抽屉
- 原 close() 在图片上传之前执行 + 上传无 catch → 失败静默,商品建了却无图
- 改:create 后用 Promise.all 等全部图传完,saving 态贯穿整个上传(抽屉不提前关,
「创建中…」可见)
- 上传失败 → flash「图片上传失败 · 已保留可重试」,不关抽屉
- createdRef 暂存已建商品:重试只补传图,不重复建商品
- onCreate 失败也给提示(不再静默)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 19:03:30 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
2e880714b1
|
fix(base-assets): 资产详情还原 — 容器比例/提示词框固定/hover反白/缺三视图标签
- F1 缺三视图标签:橙底白字 r-sm → 白底琥珀描边胶囊(对齐设计稿)
- F3 立绘容器 3/4 → 9/16(资产详情左 + 库 adx-lead-img)
- F4 库三视图格 adx-tri-cell 3/4 → 16/9(流水线详情本就 16/9)
- F6 资产详情提示词栏 .ad-detail-prompt 固定高度 88px + resize:none
- F2 人物提示词框 .asset-prompt-edit 固定 74px(≈三行)+ resize:none,studio rows 4→3
- F7 三视图上方 icon 按钮 hover:橙底+白 icon(原仅字色变橙)
- F5 资产详情「重跑立绘/替换」按钮行右对齐
- F8(商品块 vs 人物块统一)结构性差异,待用户指认,本轮挂起
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 19:00:18 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
8550d532ac
|
fix(storyboard): 还原故事板 — 时间区间/缩略图/白底/字号对齐HTML
- E1 每场卡字号对齐 HTML:.nm 12→11.5、.sub 12→10.5、.asset-tag 12→11.5
- E2 故事板主图留白底色 --background-lighter(灰)→ --surface(白),
contain 完整显示竖长拼图时不再透出「灰底大框」
- E3 每场 sub 由「#1」改为时间区间「0~15s」(累加脚本镜时长,无脚本回退序号)
- E4 绑定资产前的占位圆点 → 已引用资产缩略图(groupMainUrl,无图回退圆点)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 18:51:42 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
d7f7ed2bae
|
feat(pipeline): V1 雪藏拼接导出(代码保留,V2 恢复)
- 阶段步进器 STAGE_STEPS 去掉「拼接导出」第 5 项 → 菜单只剩 1-4
- 视频阶段「确认视频,进入拼接」入口按钮 {false &&} 隐藏(代码留存)
- 已完成项目落到第 4 阶段(视频)而非被藏的第 5,避免空白
- Stage 5 拼接导出渲染块原样保留,V2 恢复改 false→true + 还原菜单项即可
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 18:39:49 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
b946a64409
|
fix(ui): 批量栏黑底还原 + 图片生成页排版对齐HTML + 视频卡去多余上传
- .bulk-bar 全局裸类被 admin-page.css 白底版盖掉 → 收窄到 .admin-app;
商品库/项目/资产库批量浮条恢复黑底
- 批量浮条显隐改绑「有无选中」(.show)而非编辑模式 → 退选即消失
- asset-factory 三卡:开始生成按钮挪回 factory-text 内(对齐HTML),
按钮紧跟描述、卡片高度回正;tag/desc/价格字号对齐HTML(10.5/13.5/10.5)
- 全站内容区上内边距 48px→24px(对齐设计稿 #page-content),标题不再整体偏低
- 视频卡移除多余「上传」按钮(AI生成不需单卡上传,全局上传入口保留);
video-card-head 顶端对齐改垂直居中
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 18:34:33 +08:00 |
|
 seaislee1209andClaude Opus 4.8
|
cdfcffcecd
|
feat(admin): Phase 9 收尾治理 — 全局项目监控 + 数据完整性体检
后端:adminpanel projects(全局项目流水线监控+状态筛)+ integrity(数据体检:无账户团队/无图商品/过期邀请码/
无文件资产/失败项目/卡 reserved 计数 + totals);AdminProjectSerializer;IsPlatformAdmin。
前端:adminApi adminProjects/integrity;Admin 治理页(体检卡片超0高亮 + 项目监控表状态筛)。
测试:adminpanel 53 单测过(项目列/筛/体检报告);无头 e2e _admin-p9.mjs 4 断言过 + 0 console error(全只读);tsc+build 绿。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-19 22:51:49 +08:00 |
|