小鱼开发
4612abeb9e
bump version to 1.8.2
2026-06-08 13:30:02 +08:00
小鱼开发
c98509c07a
fix: 提示词中引导评论/私信领取资料的用语从'扣/抠'改为'回复'
...
避免'扣避坑'/'抠避坑'等表达被平台判定为敏感词。
2026-06-08 10:09:45 +08:00
小鱼开发
8417709f1a
bump version to 1.8.1
2026-06-06 12:34:40 +08:00
小鱼开发
47bb987e06
fix: 素材匹配兼容不可见字符 + 时长容错 + UI 细节修复
...
- material_service: 精确查询失败后全量内存标准化匹配,兼容数据库 name 含不可见字符
- material_service: 素材时长过滤放宽到 70% 兜底,避免打轴合并导致匹配失败
- material_service: 增加详细 warn 日志,便于诊断未匹配原因
- broll_category: 新增 get_by_level 方法供全量查询使用
- VoiceMaterialLibrary: 上传弹窗文案换行显示
- ScriptCreation: 主题卡片 min-height 64px 修复文字截断
2026-06-05 17:26:30 +08:00
小鱼开发
1dc7c2d66b
bump version to 1.8.0
2026-06-04 17:40:21 +08:00
小鱼开发
3e94013d2b
feat: MP4音频提取、素材6.2导入、新prompt
...
- Tauri FFmpeg sidecar 支持从 MP4 提取音频(MP4→MP3)
- VoiceMaterialLibrary 支持 .mp4 上传自动提取音频后走声音复刻
- 前端路径安全:writeFile/remove 改用 BaseDirectory.AppLocalData + 相对路径
- 新增 prompt:新房装修流程、装备材料选择
- 新增素材6.2:48个分类 + 67个视频素材入库脚本
- MP4 时长限制修正:10秒~2分钟(原5分钟)
2026-06-03 15:04:06 +08:00
小鱼开发
3587559a87
fix: 素材回退逻辑支持模糊匹配二级分类
...
- 新增 broll_category.get_by_name_like_and_level() 模糊匹配方法
- _try_fallback_to_parent 增加三级降级策略:
1. 精确匹配
2. 模糊匹配 LIKE %parent_name%(兼容'电路施工'→'电路施工镜')
3. 自动补后缀'镜'/'阶段'再精确匹配
- 解决 scene 中 parent_name 与数据库二级分类 name 不一致导致回退失败的问题
2026-06-02 15:51:43 +08:00
小鱼开发
af8c483910
feat: 素材匹配 fallback 到上级分类随机选取
...
当三级分类(level=3)精确匹配失败时,回退到上级(level=2)
分类随机选取一个子分类,避免 AI 生成无效 scene(如
'电路施工-电路施工')导致素材匹配完全失败。
- CRUD: 新增 get_children_by_parent_id 方法
- match_material: 新增 _try_fallback_to_parent 辅助函数
- batch_match: 同步增加 fallback 逻辑
- 顺手修复 zip() 缺少 strict 参数的 lint 问题
2026-06-01 19:05:41 +08:00
小鱼开发
f109a115d4
chore: bump version to 1.7.1
2026-06-01 17:59:02 +08:00
小鱼开发
5a95987ea0
chore: bump version to 1.7.0
2026-06-01 16:59:06 +08:00
小鱼开发
44bda3e67f
style: 脚本卡片样式美化 — 左对齐、加粗标题、选中态左侧竖条
2026-06-01 16:04:58 +08:00
小鱼开发
534ffd08b2
refactor: 脚本提示词体系重构 — 子类从目录改为单个文件
...
- 删除 system/bk/ 下所有旧提示词,平铺替换为 23 个新文件
- 文件名格式统一为: 文案——描述.txt
- 后端: _meta.json 扁平化,loader.py 新增 list_prompt_files() + load_prompt_file()
- 后端: API 从 subcategory 改为 filename,按指定文件读取
- 后端: categories 接口返回文件列表(label/desc/filename)供前端展示
- 前端: ScriptCreation 分类选择改为卡片网格,展示文案+描述
- 前端: 清理 subcategoryCode,统一改为 filename
- 前端: 字幕字号调整为 64/96/80px
2026-06-01 14:05:43 +08:00
小鱼开发
aa818b75a8
refactor: 脚本提示词体系重构 — 子类从目录改为单个文件
...
- 删除 system/bk/ 下所有旧提示词,平铺替换为 23 个新文件
- 文件名格式统一为: 文案——描述.txt
- 后端: _meta.json 扁平化,loader.py 新增 list_prompt_files() + load_prompt_file()
- 后端: API 从 subcategory 改为 filename,按指定文件读取
- 后端: categories 接口返回文件列表(label/desc/filename)供前端展示
- 前端: ScriptCreation 分类选择改为卡片网格,展示文案+描述
- 前端: 清理 subcategoryCode,统一改为 filename
- 前端: 字幕字号调整为 64/96/80px
2026-06-01 13:44:59 +08:00
小鱼开发
c5f1098831
bump version to 1.6.7
2026-05-27 18:39:18 +08:00
小鱼开发
603650cfb3
bump version to 1.6.6
2026-05-27 15:38:50 +08:00
小鱼开发
15dc5df12c
chore(log): 日志只记录错误信息
...
- uvicorn access_log 设为 False,关闭 HTTP 访问日志
- .env.example 中 LOG_LEVEL 默认改为 ERROR
2026-05-27 15:35:51 +08:00
小鱼开发
00f0088c2a
fix(prompts): 将'评论区扣/抠'改为'评论区回复',避免台词中出现'扣'字
2026-05-27 14:20:27 +08:00
小鱼开发
4a295e6e0d
fix(vidu): 回调签名头大小写不敏感匹配
...
dict(request.headers) 的 key 为小写(x-hmac-signature),代码用大写(X-HMAC-SIGNATURE)获取导致全为None。建立小写查找表统一处理。
2026-05-27 09:40:45 +08:00
小鱼开发
63e0ffeaea
fix(vidu): 回调签名使用 APP_BASE_URL 构建 URL,添加调试日志
...
- vidu_callback 改用 APP_BASE_URL 构建 callback_url,避免 Nginx 代理导致 scheme 不一致
- verify_signature 增加详细调试日志,打印 signing_string 和签名对比
2026-05-27 09:34:59 +08:00
小鱼开发
10fc4092b2
bump version to 1.6.5
2026-05-26 23:37:05 +08:00
小鱼开发
6c64189c70
fix(update): check_update 兼容同平台多包,优先返回 updater 包
...
- scalar_one_or_none() 在 release_id+platform+architecture 多行时抛异常
- 改为查询全部后取第一个,按 signature desc 排序优先 updater 包
2026-05-26 23:28:09 +08:00
小鱼开发
d84a4e9d65
fix(db): 放宽 release_package 唯一约束,支持同平台多文件(dmg + app.tar.gz)
...
- 唯一约束从 (release_id, platform, architecture) 改为包含 filename
- 新增 Alembic 迁移 7d855b38fe83
2026-05-26 22:57:20 +08:00
小鱼开发
790cf3a7fb
bump version to 1.6.4
2026-05-26 19:54:02 +08:00
小鱼开发
943358bafc
bump version to 1.6.3
2026-05-26 19:21:23 +08:00
小鱼开发
8cddaec70e
chore(release): 优化发布脚本并统一表名
...
- publish_release.py: 自动加载.env,macOS Universal拆分为x86_64+aarch64,七牛云目录按平台区分
- 重命名表 mjk_release_packages -> mjk_app_release_packages,同步约束名
- 更新相关文档
2026-05-26 10:13:52 +08:00
小鱼开发
4af42c157e
fix: BGM 混音链路修复——URL 先下载到本地缓存再混音
...
- fix: 删除 BGM 预览硬编码开发者路径,改为使用 url 字段
- fix: BGM 混音前检测是否为 URL,先下载到 bgm_cache 本地缓存
- fix: Rust mix_bgm_to_video 恢复 validate_safe_path 校验,拒绝 URL
- feat: 新增 bgm_cache 目录及自动清理策略(30天/200MB上限)
- feat: Settings 缓存清理扩展为媒体缓存(video + BGM 统一清理)
- chore: BGM url 字段改为后端必填,同步 schema/model/seed/迁移
2026-05-25 00:54:17 +08:00
小鱼开发
06ec0ee202
feat: BGM 云端化 + 步骤页面 UI 统一重构
...
后端:
- 新增 BGM 数据库模型、Schema、CRUD、API 路由
- BgmMusic 增加 url 字段存储七牛云地址
- Alembic 迁移: 创建 BGM 表 + 添加 url 字段
- import_bgm.py 导入时自动上传七牛云 (meijiaka-zy/bgm/...)
前端:
- VideoCompose BGM 选择改为卡片弹窗 (系统BGM + 本地上传)
- 去掉 BGM 硬编码本地路径, 直接使用云端 URL
- CoverDesign 视觉重构: 绿色边框卡片、角标、hover 遮罩
- CoverDesign 去掉预选背景, 默认空白需手动选择
- 所有步骤按钮规范统一: 左=重新生成(主色), 右=导出/预览(次色)
- 预览按钮状态统一: 文字变为'视频预览中...', 保持 btn-secondary
- 去掉所有步骤按钮的 svg/emoji 图标
Rust:
- mix_bgm_to_video 支持临时文件保护 (输入输出同路径时自动中转)
- FFmpeg BGM 混合使用 aloop 循环 + amix 滤镜
2026-05-24 15:39:54 +08:00
小鱼开发
53371aabcd
feat(image): 封面形象抠图增加积分消耗(每次 10 积分)
...
- config/points-config.yaml: 添加 cover_avatar: 10 固定积分
- point_service.py: _CATEGORY_MAP 添加 cover_avatar → 封面形象
- image.py: remove_background 接口前置余额检查 + 后置扣费
- CoverAvatarLibrary.tsx: 上传弹窗显示积分提示,余额不足友好提示
2026-05-23 10:59:47 +08:00
小鱼开发
db34090d5d
feat(image): 人物描边宽度从 10px 调整为 20px
2026-05-23 10:10:21 +08:00
小鱼开发
d18e705a99
feat(image): 抠图增加人物白色描边(need_contour + contour_color + contour_size + need_crop_background)
...
- provider: 增加 need_contour/contour_color/contour_size/need_crop_background 参数
- service: 默认 scene=human,human/product 场景自动启用白色描边 + 裁剪背景
- adapter: 透传新参数到 provider
- API: scene 默认值改为 human
- 前端: removeBackground 默认 scene 改为 human
2026-05-23 10:04:34 +08:00
小鱼开发
6011225eec
fix(image): 抠图结果下载后转存七牛云,解决前端 CORS 跨域加载失败
2026-05-23 09:50:40 +08:00
小鱼开发
222c468681
fix(mediakit): 兼容火山引擎抠图API的两种响应格式(code/data 和 success/result)
2026-05-23 09:44:27 +08:00
小鱼开发
430aea4aa8
fix(image): 增强抠图失败时的诊断日志,记录原始响应内容
2026-05-23 09:39:38 +08:00
小鱼开发
8a5f0ace34
fix(update): 204 响应不通过 HTTPException 抛出,避免 Content-Length 校验失败
2026-05-23 09:24:53 +08:00
小鱼开发
f01f2c366a
feat(cover-avatar): 封面形象功能
...
后端:
- 新增 POST /upload/image 图片上传(七牛云 image bucket)
- 新增 POST /image/remove-background AI 抠图(火山引擎 MediaKit)
- 提取 file_validation.py 共享模块
Rust:
- 新增 cover_avatar.rs 存储层(cover_avatars.json + 图片本地存储)
- 新增 4 个 IPC 命令:load/save/delete/save_image
前端:
- 新增 CoverAvatarLibrary 页面(内容管理 → 封面形象)
- 新增 coverAvatar API 模块和 coverAvatarStore
- 封面设计集成:背景图/封面形象弹窗选择 + Fabric.js 叠加
- 优化左侧布局:视觉素材横向卡片(9:16)+ 文案配置分组
2026-05-22 18:38:18 +08:00
小鱼开发
1a0679049e
refactor(profile): restore recent transactions table
...
Replace menu list (使用明细 + 设置) with recent transactions table:
- Add back recentTx state and loading state
- Fetch last 5 transactions in loadData
- Display table with type/amount/description/time columns
- Add '查看全部' link to usage-detail page
- Remove unused icon components (FileTextIcon, SettingsIcon, ChevronRightIcon)
2026-05-22 15:02:11 +08:00
小鱼开发
2cece72abe
feat: 用户白名单免验证码登录
...
- Settings 新增 SMS_CODE_WHITELIST 配置(逗号分隔手机号)
- login_with_sms 中白名单手机号跳过验证码校验
- 方便内部测试和演示账号使用
2026-05-21 16:32:09 +08:00
小鱼开发
1d7a45618a
temp: 启用 Windows DevTools + 清理无用文件 + 修复积分计算
2026-05-20 10:55:43 +08:00
小鱼开发
9ddcb2347d
ci: 构建流程优化 - test环境固定/平台选择/版本号自动更新/缓存
...
- VITE_API_BASE_URL 固定为 dev.tapi.meijiaka.cn(test环境)
- 添加 platform 选择(all/macos/windows),支持单独构建
- 添加版本号自动更新(tauri.conf.json + Cargo.toml)
- 添加 Rust + Node 构建缓存,节省CI额度
- 修复 ViduAdapter parse_callback 运算符优先级bug
- 修复 ViduProvider tts_sync 日志前缀误写
- VoiceSynthesis 空状态UI优化
2026-05-19 15:17:36 +08:00
小鱼开发
dd3864db1f
fix: CORS 配置添加 Windows Tauri 生产模式 origin http://tauri.localhost
2026-05-19 11:36:53 +08:00
小鱼开发
88f913b511
revert: remove auto-generated DMG background, pending design
2026-05-19 09:50:56 +08:00
小鱼开发
c04c53e061
chore(release): bump version to 1.5.18
2026-05-18 23:27:24 +08:00
小鱼开发
07bcbc2317
release: v1.5.16
2026-05-18 16:31:58 +08:00
小鱼开发
74fd855d33
feat(points): 充值档位添加积分有效期字段
...
- config/points-config.yaml: 每个档位添加 validity_days(7/30/90/180/365/0)
- points.py: 支付回调和主动查询补单时根据档位配置设置 batch_expired_at
- RechargeModal: 卡片展示有效期(永久有效 / N 天内有效)
2026-05-18 15:26:54 +08:00
小鱼开发
ddec4a607b
fix(prompt): 修复 3 个提示词示例中使用二级分类名的错误 scene
...
将示例 JSON 中的 scene 从二级分类名改为正确的三级分类名:
- 水电改造5.9.txt: 瓷砖铺贴->墙砖定位-瓷砖铺贴
- 常见问题25选8-5.9.txt: 瓷砖铺贴->墙砖定位-瓷砖铺贴
- 油工进场5.7.txt: 墙面基层->墙固施工-墙面基层
2026-05-17 23:18:41 +08:00
小鱼开发
2d41b58021
fix(prompt): 修复 6 个提示词示例中的截断 scene
...
示例 JSON 中的 scene 值漏写了 '-施工翻车镜' 后缀,
导致 AI 可能模仿生成截断的 scene 名称,匹配失败。
受影响的文件:
- 半包谈价格5.8.txt
- 装修合同5.8.txt
- 装修监工5.8-2.txt
- 装修监工5.8.txt
- 防水5.7.txt
- 瓦工进场交代5.8.txt
2026-05-17 22:23:43 +08:00
小鱼开发
85f7e5c934
chore(prompt): 强化 24 个提示词的 scene 格式约束
...
要求 AI 输出 scene 时必须从内置素材库标题中完整原样复制,
包括连字符-前后的顺序,不得调换、缩写或改写。
从源头减少 scene 名称与数据库分类名不匹配的问题。
2026-05-17 21:37:49 +08:00
小鱼开发
2a36e4ec3d
fix(material): 支持 scene 名称顺序颠倒兜底匹配
...
AI 生成 scene 时常将三级分类名中的 '-' 前后顺序写反
(如 瓷砖铺贴-瓷砖完工展示 vs 瓷砖完工展示-瓷砖铺贴),
导致精确匹配失败、素材匹配为空。
- match_material: 精确匹配失败后,尝试倒序匹配
- batch_match: 批量查询时同时查询原始名和倒序名,
内存中构建 scene->category 映射,优先精确匹配、fallback 倒序
2026-05-17 21:35:44 +08:00
小鱼开发
43e736c32d
fix(wxpay): 修复微信下单重入错误
...
out_trade_no 原格式 MJZ{order.id:012d} 在数据库重建后 ID 从 1 重新开始,
导致与微信支付缓存中的历史订单号冲突,触发 INVALID_REQUEST 重入错误。
新格式加入时间戳:MJZ{timestamp}{order.id:08d},确保全局唯一。
2026-05-17 19:39:43 +08:00
小鱼开发
1f7201f593
fix(schema): 移除 PolishRequest 中错误的字段
...
PolishRequest 中误入了 message 和 result 字段(应为响应模型字段),
导致后端验证要求请求体必须包含 message,润色接口调用失败。
2026-05-16 15:14:18 +08:00