Commit Graph
396 Commits
Author SHA1 Message Date
hh 95cd4abd3c fix: 同步视频项目积分余额 2026-07-16 13:40:25 +08:00
hh 68ab717cb8 fix: 工作台最近项目显示商品主图 2026-07-16 11:12:53 +08:00
hh 3bfa35ae07 chore: 不跟踪脚本时间todo 2026-07-16 10:18:37 +08:00
hh db0e984bd2 fix: 固定脚本助手思考用时 2026-07-16 10:17:12 +08:00
hh 04e9d3a3ef fix: 修正故事板历史时间时区 2026-07-15 21:49:54 +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 ff0a93677a fix: 修复图片生成切换商品重复批次 2026-07-15 16:07:25 +08:00
hh 4358f7809a fix: 修复无消费权限闪屏 2026-07-15 15:13:21 +08:00
hh 92fa85ef8c fix: 优化权限不足提示 2026-07-15 14:43:29 +08:00
hh 44148dad0e fix: 固定充值支付金额快照 2026-07-15 14:05:23 +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 ca3b09c62e fix: 优化裤装上身图裤长与景别 2026-07-15 00:22:36 +08:00
hh 1a40a8cb4b feat: 优化模特上身图多图与裤长策略 2026-07-14 17:16:38 +08:00
hh 2b26c93031 chore: 开启测试环境模特上身图V2 2026-07-14 15:37:33 +08:00
hh 0a58b89919 feat: 优化模特上身图提示词 2026-07-14 15:18:54 +08:00
hh da58f99293 fix: 限制自由创作标题行数 2026-07-13 22:13:10 +08:00
hh 6131bcdd9d fix: 统一视频自由创作标题 2026-07-13 21:53:15 +08:00
hh 3078271f97 fix: 限制手动比例输入 2026-07-13 17:35:47 +08:00
hh 0e93d52db1 fix: 自由创作完成后同步余额通知 2026-07-13 17:11:37 +08:00
hh c5983abe35 fix: 优化认证异常提示 2026-07-13 16:34:27 +08:00
hh 826fc124e6 fix: 修复资产库批量删除 2026-07-13 16:10:46 +08:00
hh 0a5a565088 chore: 忽略本地 pnpm 存储 2026-07-13 14:33:19 +08:00
hh bd3b484fde fix: 修复商品批量删除与恢复 2026-07-13 14:31:26 +08:00
hh f803948143 fix: 商品详情视频项目卡片可打开并展示主图 2026-07-13 13:52:59 +08:00
hh 5d2b70c3a2 fix: 统一资产库条目统计 2026-07-13 13:16:09 +08:00
hh df9b8a2f1b chore: 开启模特三视图生成 2026-07-13 12:01:05 +08:00
hh 50068c0e79 fix: 规范模特三视图计费显示 2026-07-13 11:57:51 +08:00
hh b3687e9c0e docs: 同步中文提交规范 2026-07-13 11:24:23 +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
hh 3e52942547 fix: 修复换火山账号导致素材库操作失败问题 2026-07-09 17:54:05 +08:00
zycandClaude Opus 4.8 8c50096888 chore(env): 火山迁移到新账号 — 视频 ARK key + 素材库审核 AK/SK
- VOLCANO_ARK_API_KEY / VIDEO_ARK_API_KEY → 新账号 ark-2e6b8833(视频与素材库同账号,保 asset:// 人脸引用可解析)
- ASSETS_API_ACCESS_KEY/SECRET_KEY → 新账号 AKLTOTgz.../TTJZ...(Patrick 提供,已连通性实测)
- ASSETS_API_PROJECT_NAME int_dev_Airlabs → default(新账号已有 human 素材组所在项目)
- 图片/文本走 yunqi 中转站、TOS/TTS 独立账号,均不属本次迁移,未动

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-09 15:24:25 +08:00
hh 93e8ece9da feat: 自由创作任务素材组编辑优化 2026-07-09 15:05:32 +08:00
hh b1d5d25264 feat: 消费模块自定义金额充值调整为正整数 2026-07-09 14:18:46 +08:00
hh a82f90d0e0 fix: 修复自由创作首尾帧上传人脸图不通过问题 2026-07-09 11:39:54 +08:00
hh 5c9e62a165 fix: 视频项目-分镜脚本删除时回显一下修复 2026-07-08 16:21:18 +08:00
hh 4379aaf9cc docs: 更新模特库与我的演员数据流说明 2026-07-08 11:37:56 +08:00
hh 9ccd061205 docs: 记录当前版本模特库与演员数据流 2026-07-08 11:32:12 +08:00
hh ff723b4281 fix: 自由创作分类入库区分视频与图片展示 2026-07-07 18:39:01 +08:00
hh 45ff7838d8 feat: 视频脚本添加分镜最后一个按钮不隐藏-自带脚本移除上传文件 2026-07-07 14:07:17 +08:00
zycandClaude Fable 5 2fcd6d996c fix(deploy): migrate 跨 pod 串行化 + rescale 迁移幂等守卫(测试环境×10⁶事故复盘)
事故:连推 3 commit 触发 3 轮 rolling 部署,多个新 pod 并发跑 migrate 且崩溃重跑,
积分 ×10 rescale 被交错重放——ai.0025 执行 6 次(单价/任务计价 ×10⁶),accounts.0008
执行 2 次(限额 ×100),billing.0003/0004 从未完成(django_migrations 漏记录)。
测试库数据已按精确倍率手工修复并补记迁移记录(备份于本机)。

两层防复发:
1. docker-entrypoint 用 MySQL GET_LOCK('airshelf_migrate') 串行化 migrate,
   后到 pod 等锁,拿到时迁移已被记录 → 自然 no-op;
2. 三个 rescale 迁移加 airshelf_rescale_marker 幂等标记(与数据变更同事务提交):
   记录丢失/崩溃重跑时,标记在 → 跳过,不会重复 ×10。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 11:25:40 +08:00
zycandClaude Sonnet 5 d466bd60c6 feat(adminpanel): 任务监控「回收退款」手动兜底
新增 POST /api/admin/tasks/<id>/reap/:仅限卡在「已预留」超 10 分钟的僵尸任务(SUBMITTED/
POLLING 故意不许杀,视频合法耗时 5-10 分钟+,强杀会与轮询结算竞态),标失败 + 退还冻结积分,
与自动回收 _reap_stale_standalone_image_tasks 同款账务路径,幂等。

自动回收只在同团队下次提交时顺手触发,团队弃用某功能后冻结积分会永久躺着——这是给超管的
手动出口。序列化器加 reapable 字段(与端点闸同口径),任务监控行级「回收退款」按钮。
4 条测试(成功退款+审计/窗口内拒绝/非 RESERVED 拒绝/非超管 403)。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-07 10:38:45 +08:00
zycandClaude Sonnet 5 299b2c9ecd feat(admin): 后台列表分页 + 积分显示格式化
9 张 admin 列表表格接服务端分页(共享 Pager 组件,10条/页,alwaysShow 单页也显示分页条);
积分数值统一 pts() 格式化(去除 DecimalField 序列化的多余小数位,整数不再显示 .0000)。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-07 10:16:40 +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
hh c1420316c2 chore: 更新gitignore排除本地win一键启动bat脚本 2026-07-06 18:04:56 +08:00
halice 8b4dd535ae fix(ai): 允许删除自由创作失败任务 2026-07-06 17:19:46 +08:00