37 Commits

Author SHA1 Message Date
0e3504af91 fix(accounting-worker): 补load_appbase——get_business_date未注册致product_accounting_generic崩'NoneType'not callable(i2v出账实测暴露,449条历史流水同因失败被掩盖) 2026-09-05 18:31:03 +08:00
e0dbac6f9d feat(accounting): 独立异步记账进程——模型用量出账(客户付/商户营收/供应商成本),同步记账留web,进程由start/stop.sh管理 2026-09-04 19:32:43 +08:00
ec4aebd9a3 feat(app): load_dapi() 接线——注册 Bearer key 认证供 rag 对外 API 鉴权(对齐 sage) 2026-09-03 16:12:30 +08:00
67e77a11c3 feat: 宿主集成pipeline-platform模块
- build.sh: clone/pip/wwwroot软链三处列表加入
- pipeline_app: load_pipeline_platform()(service之后)
- 菜单入口URL改 /pipeline-platform/agent_platform
2026-09-02 15:26:55 +08:00
252f119f35 feat(llm-govern): 集成pipeline-llm模型治理模块
- pipeline_app.py: load_llm() try/except兜底加载
- build.sh: clone/pip install/CRUD生成/wwwroot软链 四处枚举加pipeline-llm
- create_tables.py: 执行模块手写幂等DDL(8张llm_表,不走json2ddl避DEFAULT引号bug)
- import_init.py: 注册appcodes字典; rp.json: /pipeline-llm/** → logined
- index.ui主菜单: 加「模型治理」项(/pipeline-llm, TabPanel)
2026-09-01 17:28:03 +08:00
c04bcf0c9f feat: 挂载商机产线能力包 load_pipeline_opportunity(数据来自数据爬取平台内网HTTP) 2026-08-28 17:37:04 +08:00
38010ccdfd fix: load_pipeline_bidding() 漏调用——只 import 未执行,投标能力包从未装载(poller/能力包/角色工具全部未生效) 2026-08-27 00:27:03 +08:00
def469ddbc feat(bidding): 接入投标产线模块
- app/pipeline_app.py:load_pipeline_bidding(未装时优雅降级)
- build.sh:模块清单四处加 pipeline-bidding(clone/install/CRUD/wwwroot软链)
- wwwroot/index.ui:侧栏+主页卡片加「投标产线」入口(→/pipeline-bidding/index.ui)
2026-08-26 22:54:44 +08:00
ymq
6f5d4a6136 feat(supplychain): 集成供应链模块 + filemgr
- build.sh 四处列表 + 8b DDL 循环加 filemgr supplychain
- app/pipeline_app.py: load_filemgr() + load_supplychain()(filemgr 先于 supplychain)
2026-08-26 16:40:20 +08:00
4f00b931f5 feat(product_management): 接入产品层
- app/pipeline_app.py: load_product_management(),置于资源模块之后
  (产品层通过 env.product_interface 调 account_resource/storage_resource)
- 打通资源→产品→定价→折扣→出账链路
2026-08-26 15:39:08 +08:00
a08bac91b6 feat(商品化): 补 5 个模块集成 + 接入两个资源模块 + accounting 菜单(参考 sage)
关键修复:accounting/pricing/discount/unipay 的表和前端早已就位,
但 app/pipeline_app.py 从未 load 它们 —— 相关页面一点即 NameError 500。

- 入口补 load_pricing/accounting/discount/unipay + load_account_resource/storage_resource
  顺序:pricing 先于 accounting 与资源模块(资源计费依赖 pricing_program_charging)
- build.sh 四处列表 + 8b DDL 循环加 account_resource/storage_resource
- wwwroot/index.ui 加「账务管理」菜单 11 子项(参考 sage menu.ui 的配置账务结构)
  按 pipeline-app 实际存在的页面取项:sage 菜单里的 open_account.ui 本模块不存在,已剔除,
  另补上 sage 未列但存在的 我的账户/余额/明细/账单/信用额度/币种/汇率/记账日志
- i18n 四语言补「账务管理」
2026-08-26 14:54:24 +08:00
947b6d3abf feat(dingdingflow): 接入钉钉审批模块
- app/pipeline_app.py: load_dingdingflow(),置于 load_pipeline_service() 之前
  (后者的 dingtalk_approval 适配器依赖前者注册的 register_biz_handler)
- build.sh: 四处模块列表 + 8b DDL 循环加 dingdingflow(dda_* 表建到 pipeline 库)
- wwwroot/index.ui: 侧边栏加「钉钉审批」菜单(open_tab)
- i18n zh/en/jp/ko 补文案
2026-08-25 18:23:32 +08:00
8e09c5389a feat(rag): 接入 rag 知识库模块 + uapi 外部 API 网关
- app/pipeline_app.py: load_uapi() + init_rag_module()(uapi 必须先于 rag)
- build.sh: 四处模块列表加 uapi/rag(clone/pip/xls2ui/wwwroot symlink)
  新增 8b 步骤:json2ddl 建 rag_* 表 + 导入 uapi_seed.sql 配置种子
- wwwroot/index.ui: 侧边栏加「知识库」菜单项(open_tab 符合 UI 导航契约)
- i18n zh/en/jp/ko: 补知识库相关四语言文案

rag 表统一 rag_ 前缀,与产线业务表隔离;数据独立于 ragserver
2026-08-25 15:24:05 +08:00
8a3eb50300 feat(assets): 注册 assets_ver() 全局函数(js/css 最大 mtime, 30s 缓存),根治改了前端 js 浏览器仍跑旧代码 2026-08-25 14:36:18 +08:00
b849eb3e92 feat(office): 补提交 univer-office 办公代理(已部署上线)
/office/* 反向代理到本机 univer-office Node 服务(9091),承接 markdown<->IDocumentData 转换 + docx/xlsx/ppt 导出。含 office_proxy.py + config.json 路由 + pipeline_app 注册 + restart-pipeline.sh
2026-08-21 17:28:47 +08:00
72a362c96e fix: app 入口补 load_smssend(),修复发送验证码 sms_engine 未定义 NameError 2026-08-17 14:08:39 +08:00
324a4b7aab feat: 集成 app_audit 审计模块
- pipeline_app.py: load_app_audit(try/except 容错)
- build.sh: clone + pip install + wwwroot 链接加 app_audit
2026-08-14 12:21:51 +08:00
4b29ed0f87 bgfix 2026-07-19 11:53:13 +08:00
ffd36a3c51 fix: get_module_dbname returns pipeline for all modules 2026-07-18 23:48:23 +08:00
668bc55ed8 feat: get_module_dbname in pipeline_app.py + ServerEnv registration 2026-07-18 23:44:59 +08:00
3c9fdcf444 feat: UI pages, build.sh, deployment scripts, model uitype fixes
- Add SDLC dashboard, pipeline editor, ops center UI
- build.sh: clone business modules to pkgs/, xls2ui CRUD, fix created_by
- global_func.py: password_encode None-safe wrapper
- pipeline_app.py: permission cache warmup removed
- load_path.py: RBAC permission registration for all modules
- scripts/merge_i18n.py: i18n merge tool
- bin/init_perms.py, bin/init_data.py: init scripts
- set_role_perm.py: single permission registration
- Model uitype fields set for form editing
- pipeline_core/pipeline_ops load_path.py scripts
2026-07-18 22:44:34 +08:00
3623d5725e feat: add tenant module — menu entry + init loading
- Add tenant wwwroot symlink to pipeline-app
- Add '租户管理' to sidebar menu
- Load tenant.init in app init
2026-07-09 11:17:20 +08:00
a243f1d9cf fix: ktv_adapter model names — remove ky- prefix to match actual Sage llm records
- All 8 GPU service models now match tokentest llm names
- Add supporting app modules (quality_gate, model_selector, global_func, eval_music, eval_video)
2026-07-08 18:05:13 +08:00
212a0c1f85 fix: ktv_adapter pipeline_service导入改为可选 2026-07-07 22:14:10 +08:00
246a68dd26 fix: pipeline_service和pipeline_sdlc导入改为可选,缺失时优雅降级 2026-07-07 22:05:18 +08:00
216f2f9f59 fix: demucs固定separate_full模式 2026-07-06 17:26:40 +08:00
0fbc0d11cc chore: 清理最后一个wan2.6引用 2026-07-06 17:24:47 +08:00
bee01f6c3e fix: wan2.6→wan2.7 作为推荐默认模型 2026-07-06 17:23:57 +08:00
0d73abfb20 fix: 可灵替换为Seedance 2.0 + 清理旧GPU计算逻辑 2026-07-06 17:22:41 +08:00
225c654811 fix: 模型选择读取客户选项+定价改为llmage模型(wan2.6/happyhorse/kling) 2026-07-06 17:20:30 +08:00
3493444307 refactor: KTV产线全部改为通过llmage API调用,环境变量配置供应商/端点/APIKey 2026-07-06 17:11:51 +08:00
ffdba55fd7 feat: add full 4-stem demucs mode with MIDI instrument replacement
- Support mode='full' in handle_demucs_separating config
- Full mode: 4-stem separation → basic-pitch MIDI → fluidsynth render → mix
- Each instrument gets correct GM instrument (drums=channel10, bass=34, other=1)
- 2-stem mode preserved as default for backward compatibility
- Uses run_full.py standalone script on GPU server via SSH
2026-07-06 11:30:43 +08:00
eb10d97aa2 feat: eval_video/eval_music 接入 LLM 评估
- eval_video.py: semantic_consistency + character_consistency 调用 llm_bridge
- eval_music.py: emotion_lyrics_match + prompt_adherence 调用 llm_bridge
- 异常时回退默认分数,保证产线不中断
2026-06-25 21:10:35 +08:00
8408570ed7 feat: add multi-model cost estimation and selection after storyboard
- Add cost_estimator.py: supports Wan 2.2, Wan 2.7, Vidu 2.0 pricing
- Add model_selector.py: creates human_task for customer model selection
- Update ktv_adapter.py: add model_selecting step, modify scene_video_generating to use selected model
- Add integration guide: docs/model-selection-integration.md
2026-06-25 18:51:29 +08:00
9d3f0ff38c feat: 多维度质量评估体系 - 视频5维度/音乐7维度
新增模块:
- app/eval_video.py: 场景视频多维度评估 (视觉质量25%, 运动流畅度20%, 语义一致性30%, 角色一致性15%, 时间连贯性10%)
- app/eval_music.py: 音乐多维度评估 (节奏15%, 和弦10%, 听感20%, 情绪-歌词匹配20%, 指令匹配15%, 伴奏10%, 人声10%)

更新模块:
- app/quality_gate.py: 集成多维度评估函数,支持降级
- app/ktv_adapter.py: 注册6个质量门控 handlers (步骤9-10, 11, 12, 13, 14-15, 17)

质量门控流程:
1. 执行 handler
2. 多维度评估
3. 不达标自动重试(最多3次)
4. 仍不达标创建 human_task 暂停任务等待人工决策
2026-06-25 18:34:26 +08:00
f767f22717 feat: add KTV adapter with 17 step handlers
- Restore handlers_ktv.py as ktv_adapter.py (adapter pattern)
- Wire load_ktv_adapter() into pipeline_app.py init
- GPU ports: Wan2.2:8080, RealESRGAN:9082, fastwhisper:9925
- Handlers: audio/video preparing, demucs, lyrics, subtitles,
  music gen, character design, storyboard, scene video, KTV synthesis
2026-06-25 14:26:19 +08:00
9eccd08ffd feat: pipeline-app独立产线后端服务
3个业务模块:
- pipeline_core: 产线定义(pipelines/steps/versions)
- pipeline_ops: 运营(定价/供应量/使用记录)
- pipeline_dist: 分销(分销商/独立定价/API密钥)

- ahserver独立部署(端口9090)
- 独立数据库pipeline
- 80个文件, 符合module/db-table/crud三规范
2026-06-11 14:49:02 +08:00