Commit Graph
97 Commits
Author SHA1 Message Date
Azmat@qq.com 2745760d33 全能创作闸门与多人物定妆收口
主页已填卖点跳过卖点确认;按图片内容创作不再重复问品牌品名;方案卡支撑改为 P0/P1/P2;多人物视频一次生成多张定妆图并在出片前校验数量;超管登录直进后台。
2026-09-22 10:02:47 +08:00
Azmat@qq.com 0bd1db6bf9 模特库标签分页与全能创作收口:藏长视频、选择器分页
角色库导入打标签并支持筛选;模特库与全能创作角色/商品选择改为每页 20 条分页。临时限制成片 ≤60 秒,过滤对话里的超长时长选项,并收拢本地全能创作与后台用户相关修复。
2026-09-21 16:24:37 +08:00
Azmat@qq.com bd4799151c 登陆优化 2026-09-17 10:28:37 +08:00
Azmat@qq.com 15718a60bf 大量优化修改扣积分规则 2026-09-04 17:20:22 +08:00
Azmat@qq.com 3e904479d9 修改全能创作发现问题 2026-09-03 19:00:59 +08:00
Azmat@qq.com e7122b78fb 优化架构K8s 副本和队列 2026-09-03 16:38:02 +08:00
Azmat@qq.com 6a628b0ca7 添加全能创作功能 2026-09-03 13:11:46 +08:00
Azmat@qq.com c0a0b9603b 优化脚本 2026-08-28 14:45:38 +08:00
Azmat@qq.com 51620bf25b 完成视频复刻和优化 2026-08-27 11:54:47 +08:00
Azmat@qq.com c25060c6c6 优化住流程和添加复刻视频页面 2026-08-26 18:44:03 +08:00
Azmat@qq.com 0ee498d807 测试极速成片 2026-08-26 15:18:18 +08:00
Azmat@qq.com df6784b90c 优化脚本 2026-08-25 16:40:22 +08:00
Azmat@qq.com e2ec2d14af 完成极速成品和脚本优化 2026-08-25 11:13:07 +08:00
Azmat@qq.com 00fc454db7 极速成片页面和提炼提示词 2026-08-24 15:52:05 +08:00
Azmat@qq.com 2f5b7304b0 添加视频复刻和优化脚本旁白 2026-08-24 10:48:01 +08:00
Azmat@qq.com 6c588a7fee 完善UI 2026-08-20 16:10:01 +08:00
Azmat@qq.com ba1613f2b5 优化UI 2026-08-20 12:52:05 +08:00
Azmat@qq.com b883fed981 完善前端UI 2026-08-20 10:41:28 +08:00
Azmat@qq.com dcd9bf6b5e 构建报错已经改掉了 2026-08-19 17:55:28 +08:00
Azmat@qq.com a343f47f0c 大量修改UI 2026-08-19 17:44:56 +08:00
Azmat@qq.com 18b3927817 修改部份ui 2026-08-18 18:32:19 +08:00
Azmat@qq.com dfe94a923e 完善二期清单 2026-08-18 14:11:05 +08:00
Azmat@qq.com d1ecb52125 大量修改二期功能清单内容 2026-08-17 18:26:42 +08:00
hh 538c5024e2 fix: 隔离图片创作商品会话 2026-07-16 18:22:09 +08:00
hh ff5eaeee8a fix: 修复图片补图删除回填 2026-07-16 15:30:02 +08:00
hh 95cd4abd3c fix: 同步视频项目积分余额 2026-07-16 13:40:25 +08:00
hh 79d7344134 fix: 收口三视图错误提示 2026-07-15 18:18:35 +08:00
hh 755e210951 fix: 支持删除图片异常批次 2026-07-15 17:52:29 +08:00
hh 4358f7809a fix: 修复无消费权限闪屏 2026-07-15 15:13:21 +08:00
hh fdd3bbfad2 fix: 限制自定义充值最低金额 2026-07-15 13:47:32 +08:00
hh e81d7170ed fix: 统一AI生成失败提示 2026-07-15 13:12:35 +08:00
hh 38d8c8ad54 fix: 统一前端模型展示名称 2026-07-15 11:11:09 +08:00
hh 0e93d52db1 fix: 自由创作完成后同步余额通知 2026-07-13 17:11:37 +08:00
hh 826fc124e6 fix: 修复资产库批量删除 2026-07-13 16:10:46 +08:00
hh bd3b484fde fix: 修复商品批量删除与恢复 2026-07-13 14:31:26 +08:00
hh 6a37d2e9df feat: 接通模特三视图生成 2026-07-13 11:22:37 +08:00
hh fc0f0ca370 feat: 解耦角色与模特并完善模特库 2026-07-13 11:02:30 +08:00
hh 564215dc53 fix: 完善商品—模特库-视频项目-自由创作等删除先进垃圾桶及可恢复等流程 2026-07-10 15:06:07 +08:00
zycandClaude Sonnet 5 bf20de956c feat(billing): 计费商业化重构(积分制)+ 团队差异化调价
统一计价引擎 apps/billing/pricing.py:1积分=¥0.1,平台成本(¥)与用户价(积分)双记账,
视频按火山真实 usage.total_tokens 结算(true-up,终结¥1/段倒贴)+ 首发×1.5毛利系数。
Team.price_multiplier 差异化调价(jimeng同款):挂牌价×系数两步HALF_UP取整,视频类
按下单时的价格/汇率快照结算(中途改配不影响在途任务)。

BillingConfig 单例(汇率/毛利系数/预留buffer,admin可调即刻生效)。存量数据 ×10 rescale
迁移(RunPython+atomic,MySQL 迁移不可中断重跑)。开户赠送归零(DEFAULT_TRIAL_CREDITS=0,
商业决策)。audit_billing 加 I9(卖亏审计)。271 条测试 + tsc/build 全绿。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-07 10:04:00 +08:00
zycandClaude Fable 5 c5f7eb2acc feat(ai): 自由创作视频生成全量移植(/free-create)——Seedance 文/图生视频+按时长计费+人物素材库
后端:
- free_video.py: 提交/轮询/收藏/软删全链路,复用 AITask(新增 is_deleted/is_favorited, migration 0022)
- video_pricing.py: 按时长 token 计费(×1.10 buffer+clamp); video_errors.py 错误归一; media_probe.py 时长探测
- catalog/volcano: Seedance free-video 模型接入+seed(migration 0023)
- 素材库: FreeAssetGroup/FreeAsset(火山 Assets API 引用登记, migration 0009)+ 上传/轮询/删除接口
- settings: FREE_VIDEO_MAX_CONCURRENT 团队并发闸(默认3); CELERY_TASK_ALWAYS_EAGER 本地联调开关(生产恒关)
- 测试: test_free_video.py 新增; billing/products/projects tests 配套调整

前端:
- /free-create 页面+components/free-create/ 全套(输入栏/@mention 素材引用/生成卡/视频详情弹窗/素材库弹窗)
- api.ts/types.ts 扩展 free-video 与 free-assets 接口; 路由/侧边栏入口接入

bug/: 测试清单 (11)(12) 与截图归档

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 10:58:36 +08:00
zycandClaude Fable 5 a048c32527 fix(ai): 图片创作重跑三连修——丢参考图/裂新批次/提示词矛盾
① 重跑丢参考图:「重跑这张/重跑整批」原来不带 refs → 后端收不到
reference_image_ids 落到纯文生图,出图与上传素材无关。现 GenBatch.refs
存 assetId(上传后回写;恢复批次由 tasks 接口新带的 id 还原),重跑原样带回。

② 重跑裂新聊天记录:enqueue 每次新铸 batch_id,后端没有「补进原批次」
概念,刷新/切对话后重跑图裂成新卡、原卡失败格还挂着。现生成接口收/回
batch_id(UUID 校验,非法兜底新铸),重跑沿用原批次并打 batch_append 标记;
前端批次卡存 backendBatchId(提交回调即落,整批全失败也不丢),重跑带回。
恢复分组时 rerun 任务不计入「应出张数」→ 补图成功后失败格自然收掉;
批次状态改按「有任务在跑」判定,已有好图+补图在途也能接续轮询。

③ 同批换装一半不换:带参考图模板「严格保留款式/不要换款」与用户要求
(如"生成现代服装的穿着")直接矛盾,模型每张随机听一边。改为只锁主体身份
(人物五官/发型/体型,商品品类/外形/Logo),用户明确要求改变的以用户要求
为最高优先级,未提及的才默认与参考图一致。

测试:apps 全量 214 过(需 --settings=airshelf.settings.test);
新增 test_rerun_with_batch_id_reuses_batch_and_marks_append。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 13:40:52 +08:00
zycandClaude Opus 4.8 22268d608b fix: 测试清单一轮bug修复(商品库/视频项目/设置/消费/平台套图)
- 商品库编辑删图假成功+悬停无删除图标;商品三视图错显角色三视图
- 视频项目演员删除入口;角色三视图防呆;故事板审核失败原因透出
- 设置:管理团队死按钮/通知未接入项屏蔽/邮箱验证链路
- 消费:账单流水切换类型重置分页+独立总页数
- 资产库上传按钮隐藏;月限额两处对齐
- 平台套图:提示词框放大/选模型胶囊内嵌/未读任务角标/工作台记录持久化
- 新建商品独立添加卖点按钮;商品库超1920自适应

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 19:46:35 +08:00
zycandClaude Opus 4.8 4d2b9343b3 feat: 角色重跑参考当前立绘+提示词,保持人物一致 (row42)
原「重跑」立绘是纯文生图,每次重抽成另一个随机人。改为:角色已有当前立绘时,
重跑传该立绘作参考图 → 后端走 image_edit(参考立绘+提示词),保持同一人物相貌/发型/身份一致。

- generate_base_asset 新增 reference_asset_id;person 有参考图则 image_edit + build_person_portrait_prompt_refs
- run_base_asset_task image_edit size 按 kind 区分(person 立绘竖 1024x1536,商品三视图横)
- 全链路透传 reference_asset_id:pipeline.regenPortrait(传 viewPortraitAsset)→ genBaseAsset →
  onGenerateBaseAsset → api.generateBaseAsset → generate-base-asset 端点
场景重跑不受影响(仍文生图);需部署生效(后端)。

构建: tsc=0/build=0; py_compile OK; projects+assets 测试无新增回归(基线 4 fail 2 err)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 13:20:47 +08:00
zycandClaude Opus 4.8 8f8bf3283a fix: 顶栏头像也显示真头像 (row29 续2)
上轮只改了侧栏/账户菜单/设置页,漏了顶栏右上角 .topbar-avatar(App.tsx 与 pipeline.tsx 各一处)。
改为有 avatar_url 显 <img> 否则首字;.topbar-avatar 已有 overflow:hidden + img 铺满规则,CSS 不动。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 11:16:38 +08:00
zycandClaude Opus 4.8 b0b3ac2348 fix(test-round): 测试清单一批 bug 修复 + 团队月限额持久化
后端:
- accounts: 团队级月限额持久化(Team.monthly_credit_limit 三态 + PATCH/GET
  /api/auth/team/settings/,刷新不丢,PMC#12);头像上传 500→502 可读错误;
  设备下线真失效(删并重建 token,旧 token 401)
- assets: 审核类目加 model_portrait,消除三视图"无需审核"误报
- ai/projects/products: 模特已有三视图复用、产品三视图同步回商品库
  (metadata.view=three_view)、真人模特三视图回写

前端:
- 商品图删除判断改用真实图片数;团队成员弹窗禁点外部关闭
- 图片预览骨架铺满占位;平台套图左侧栏折叠改导航同款;收件箱长文换行对齐
- 团队月限额改真落库(乐观更新+失败回滚)

测试:新增 TeamSettingsTests(5 条),accounts 全套 36 tests 通过;前端 build 0 error

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 18:50:22 +08:00
zycandClaude Opus 4.8 ffada7caab fix: 测试清单(8) 新一轮 — ZWQ/PMC/设置/团队 多项修复
视频/工作台/商品库(ZWQ):
- row19 视频阶段移除已取消的【上传视频】按钮 (pipeline.tsx)
- row20 工作台统计栏(总项目/进行中/成片)点击跳转视频项目对应 tab (dashboard/projects/route-config/App)
- row21 最新项目跳转改用真实 projectId, 不再跳到最近打开项目 (dashboard.tsx)
- row22+PMC28 网格/列表视图模式持久化(localStorage), 跨菜单记住用户选择 (projects/ai-tools + 新 hook use-view-mode.ts)
- row24 已有三视图的演员/模特直接复用, 不再强制点AI生成三视图 (pipeline.tsx)

图片生成/设置(PMC):
- row27 任务中心: 6个进行中状态补全归类, 不再把生成中误判为失败栏 (stage-config.ts)
- row29 头像上传500: avatar_url 存公读直链替代超长预签名URL(URLField max_length=200溢出) (accounts/views.py, 需部署)
- row30 显示名保存后回显: 改读 first_name 回退 username, 修刷新仍旧名 (settings.tsx)
- row31/32 隐藏【创作默认】【显示】两个设置模块 (settings.tsx)

平台套图(YYX):
- row3 图片预览铺满占位 (ai-tools-page.css)

团队:
- PMC25 充值/邀请成员/设置月限额三弹窗禁止点遮罩误关 (team.tsx)

含平台套图线上提示词优化(services.py/views.py/api.ts, 前序会话遗留一并提交)
构建: tsc --noEmit=0, npm run build=0 (1755模块); 后端 py_compile OK
注: row29 头像/后端项需部署生效

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 16:45:29 +08:00
zycandClaude Opus 4.8 6e7425048c fix: PMC 测试清单未完成项 + YYX#row22 未读角标
PMC#16 账户登录地址不正确:
- 写死的 https://airshelf.com/login(不存在的域名)改成 ${location.origin}/login,
  与邀请链接同源,成员拿到的就是当前真实访问地址。

PMC#17/#18 成员三档额度只有月度生效、日/总纯装饰 → 列表显示与配置对不上:
- TeamMember 新增 daily_credit_limit / total_credit_limit(0=不限,迁移 0006);
- reserve_credit 逐档真实管控(每日/每月/累计总额),口径=窗口内 CHARGE 流水 + 在途预留;
- 成员列表"每日额度"由写死"不限"改成真实日额度+今日已用,并新增"总额度"列;
- 创建/编辑弹窗三档额度真入库真生效;补 3 个计费单测(日/总拦截、0=不限)。

PMC#24 同批生成的图片文字/内容雷同:
- 根因=套图/自由创作同批 N 张用同一 prompt 且无变化(只有模特上身图按 index 变);
- 给平台套图/自由参考/纯文生图都加按 index 的版式变体,避开传 seed(防中转站 400)。

PMC#25 重跑应在原任务上重跑而非新开任务:
- 全批"重跑"改为原地复位同一批次卡;"重跑这张/再生成"改为补图进原卡(不覆盖好图、不新开任务)。

YYX#row22 图片生成未读角标(本仓库既有改动一并提交):
- AITask 新增 read_at(迁移 0020 + 索引一致性迁移 0021);导航栏"图片生成"未读胶囊、
  商品预览右下角未读分数;查看某商品即标记其生成任务已读、清零角标。

注:PMC#14/#15/#20/#22/#23 早前提交已修,需部署重测;PMC#13/#21 为 provider 侧
生成失败,代码侧重试/退费/僵尸回收/错误外露已就位,需部署后看真实 error_message 定位;
PMC#19 收件箱标记与设计稿逐字一致,待截图复现。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 18:27:15 +08:00
zycandClaude Opus 4.8 e6e3c48524 fix: PMC 图片工作台 — 去多余toast + 费用预估对齐实扣
PMC#23 删除批次后仍弹「图片已生成」:
- 生图成功不再弹全局 toast(批次卡已就地显示结果),也就不会在「生成中删掉该批次」后
  延迟弹出让人误以为删了又生成。

PMC#20 费用预估跟实扣有差别:
- 预估由写死的 ¥0.1/¥0.3/¥0.5 改为按「当前选的生图模型」真实 unit_price 计算
  (后端 estimate_cost=unit_price,如 gpt-image-2=¥2),预估与实扣一致。
- ModelConfig 序列化本就含 unit_price,前端类型补上并据此计算。

附注(同批已在早前提交内生效):PMC#5/#10 多批各自续轮询、PMC#8 并发重跑、
PMC#14/#15/#22 生成后自动滚动+清输入。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 17:15:04 +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