fix(host): load_xxx 规范化调用点(load_rag/load_pipeline_llm/load_pipeline_sdlc)+pipeline-task 接入修复(init加载/build.sh四清单补名/wwwroot软链下划线)+opportunity 建表走json2ddl幂等+import_init登记
This commit is contained in:
parent
d9c241f3d8
commit
8ede565596
@ -28,9 +28,16 @@ def init():
|
||||
except ImportError:
|
||||
def load_pipeline_service(): pass
|
||||
try:
|
||||
from pipeline_sdlc.adapter import load_sdlc_adapter
|
||||
from pipeline_sdlc.init import load_pipeline_sdlc
|
||||
except ImportError:
|
||||
def load_sdlc_adapter(): pass
|
||||
def load_pipeline_sdlc(): pass
|
||||
# pipeline_task:任务中心交互层(无自有表,调 pipeline_service 的函数)。
|
||||
# 必须加载:task_detail.ui/step_panel.ui 在 Jinja 渲染期直接调
|
||||
# get_task_data/get_step_node_data,未注册则详情页 500 UndefinedError。
|
||||
try:
|
||||
from pipeline_task.init import load_pipeline_task
|
||||
except ImportError:
|
||||
def load_pipeline_task(): pass
|
||||
try:
|
||||
from app_audit.init import load_app_audit
|
||||
except ImportError:
|
||||
@ -65,9 +72,9 @@ def init():
|
||||
def load_dapi(): pass
|
||||
# rag:知识库(向量检索 + 图谱),表名统一 rag_ 前缀,与产线业务表不冲突
|
||||
try:
|
||||
from rag.init import init_rag_module
|
||||
from rag.init import load_rag
|
||||
except ImportError:
|
||||
def init_rag_module(): pass
|
||||
def load_rag(): pass
|
||||
# dingdingflow:钉钉审批(表名 dda_ 前缀)。必须早于 pipeline_service,
|
||||
# 后者的 dingtalk_approval 适配器要用它注册的 register_biz_handler
|
||||
try:
|
||||
@ -117,9 +124,9 @@ def init():
|
||||
def load_supplychain(): pass
|
||||
# pipeline_llm:模型治理(供应商/账号/端点/组织策略/限额限流/双维度记账)
|
||||
try:
|
||||
from pipeline_llm.init import load_llm
|
||||
from pipeline_llm.init import load_pipeline_llm
|
||||
except ImportError:
|
||||
def load_llm(): pass
|
||||
def load_pipeline_llm(): pass
|
||||
# pipeline_platform:平台内部 agent(模型自动配置等,仅管理员)
|
||||
try:
|
||||
from pipeline_platform.init import load_pipeline_platform
|
||||
@ -145,12 +152,13 @@ def init():
|
||||
load_product_management() # 产品层:依赖资源模块的 product_interface
|
||||
load_filemgr() # 文件管理:先于 supplychain(合同附件依赖)
|
||||
load_supplychain() # 供应链:供应商/分销商/折扣
|
||||
load_llm() # 模型治理:供应商/账号/端点/组织策略/限额限流/记账
|
||||
load_pipeline_llm() # 模型治理:供应商/账号/端点/组织策略/限额限流/记账
|
||||
load_pipeline_service()
|
||||
load_pipeline_task() # 任务中心交互层:注册 task_detail/step_panel 页面所需 Jinja helper(依赖 pipeline_service)
|
||||
load_pipeline_platform() # 平台内部 agent(依赖 pipeline_service 的 llm_bridge)
|
||||
load_pipeline_bidding() # 投标产线能力包(依赖 pipeline_service 的 capability 分发)
|
||||
load_pipeline_opportunity() # 商机产线能力包(数据来自数据爬取平台内网 HTTP)
|
||||
load_sdlc_adapter()
|
||||
load_pipeline_sdlc()
|
||||
load_app_audit()
|
||||
load_showcase()
|
||||
load_tenant()
|
||||
@ -158,7 +166,7 @@ def init():
|
||||
load_smssend()
|
||||
load_uapi() # 必须在 rag 之前:rag 通过 uapi 调 vdb/reranker/ner/graph
|
||||
load_dapi() # 必须在 rag 之前:注册 Bearer key 认证,rag API 端点鉴权依赖
|
||||
init_rag_module()
|
||||
load_rag()
|
||||
|
||||
# Permission cache warms up on first request
|
||||
|
||||
|
||||
19
build.sh
19
build.sh
@ -53,7 +53,10 @@ for mod in pipeline_core pipeline_ops pipeline_dist; do
|
||||
done
|
||||
|
||||
# 5. Install business modules (clone external, local already in pkgs)
|
||||
for mod in pipeline-sdlc showcase evaluate pipeline-service pipeline-task tenant app_audit product_management discount pricing unipay smssend accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pipeline-llm pipeline-platform; do
|
||||
# 注:evaluate 只 clone 不 install——其 wwwroot/json/models 嵌套在包内(evaluate/evaluate/),
|
||||
# 与本脚本 pkgs/<mod>/wwwroot 软链约定不兼容,且依赖 VBench/torch 重环境;
|
||||
# 待营销产线开发时连同结构规范化一起接入。
|
||||
for mod in pipeline-sdlc showcase evaluate pipeline-service pipeline-task tenant app_audit product_management discount pricing unipay smssend accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pipeline-llm pipeline-platform pipeline-opportunity; do
|
||||
cd "$cdir/pkgs"
|
||||
if [ ! -d "$mod" ]; then
|
||||
git clone https://git.opencomputing.cn/yumoqing/$mod || echo "SKIP: $mod"
|
||||
@ -62,7 +65,9 @@ for mod in pipeline-sdlc showcase evaluate pipeline-service pipeline-task tenant
|
||||
done
|
||||
|
||||
# 6. pip install all modules from pkgs/(pipeline-service 是普通 install 非 editable,部署必 pull+pip install 都做)
|
||||
for mod in pipeline_core pipeline_ops pipeline_dist pipeline-sdlc showcase pipeline-service tenant app_audit product_management discount pricing unipay smssend accounting uapi rag dingdingflow pipeline-bidding pipeline-llm pipeline-platform; do
|
||||
# 注意与第 5 步 clone 清单对齐:clone 了却不 install 的模块,主程序 try/except 会静默降级——
|
||||
# 模块整个消失且零报错(account_resource 等 4 个此前正是这种状态,测试机靠手工补装)。
|
||||
for mod in pipeline_core pipeline_ops pipeline_dist pipeline-sdlc showcase pipeline-service pipeline-task tenant app_audit product_management discount pricing unipay smssend accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pipeline-llm pipeline-platform pipeline-opportunity; do
|
||||
if [ -d "pkgs/$mod" ]; then
|
||||
"$cdir/py3/bin/pip" install "pkgs/$mod/" 2>&1 | tail -1
|
||||
fi
|
||||
@ -91,7 +96,7 @@ fi
|
||||
# 7. Regenerate CRUD from json for all pipeline modules
|
||||
# 注意:凡 json/ 下有 CRUD 定义的模块都必须在列——漏掉则页面从未生成,
|
||||
# 菜单点进去 500(fpath is None)。pricing 曾因遗漏导致定价管理 500。
|
||||
for mod in appbase pipeline_core pipeline_ops pipeline_dist pipeline-sdlc rbac dapi accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pricing pipeline-llm; do
|
||||
for mod in appbase pipeline_core pipeline_ops pipeline_dist pipeline-sdlc rbac dapi accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pricing pipeline-llm pipeline-opportunity; do
|
||||
json_dir="pkgs/$mod/json"
|
||||
models_dir="pkgs/$mod/models"
|
||||
wwwroot_dir="pkgs/$mod/wwwroot"
|
||||
@ -104,17 +109,19 @@ done
|
||||
|
||||
|
||||
# 8. Link module wwwroot directories (symlinks from pkgs/)
|
||||
for mod in pipeline-sdlc showcase tenant pipeline_core pipeline_ops pipeline_dist appbase app_audit product_management discount pricing unipay rbac dapi accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pipeline-llm pipeline-platform; do
|
||||
for mod in pipeline-sdlc showcase tenant pipeline_core pipeline_ops pipeline_dist appbase app_audit product_management discount pricing unipay rbac dapi accounting uapi rag dingdingflow account_resource storage_resource filemgr supplychain pipeline-bidding pipeline-llm pipeline-platform pipeline-opportunity pipeline-task; do
|
||||
src="pkgs/$mod/wwwroot"
|
||||
dst="wwwroot/$mod"
|
||||
if [ -d "$src" ]; then
|
||||
rm -rf "$dst" 2>/dev/null
|
||||
# pipeline-task 的菜单/RBAC 路径用下划线(/pipeline_task),软链名保持下划线
|
||||
[ "$mod" = "pipeline-task" ] && dst="wwwroot/pipeline_task"
|
||||
ln -sf "../pkgs/$mod/wwwroot" "$dst"
|
||||
echo " wwwroot: $mod linked"
|
||||
fi
|
||||
done
|
||||
# pipeline_task has no separate module
|
||||
mkdir -p wwwroot/pipeline_task
|
||||
# pipeline_task 兜底:模块缺失时保留空目录防菜单 404(正常路径已由上方软链覆盖)
|
||||
[ -e wwwroot/pipeline_task ] || mkdir -p wwwroot/pipeline_task
|
||||
|
||||
# 8b. uapi + rag 模块建表 + 导入外部服务配置种子
|
||||
# uapi 表(upapp/uapi/uapiio...)必须先建,rag 的 uapi_seed.sql 才有表可插
|
||||
|
||||
@ -24,7 +24,10 @@ TABLE_MODULES = ['product_management', 'discount', 'pricing', 'unipay', 'smssend
|
||||
# appbase 也放这里:svgicon/appcodes/appcodes_kv/params 是系统级配置表,含种子数据,幂等建(params 另在下方手动 ensure 默认参数)
|
||||
# dapi 放这里:downapp/downapikey 是下位系统接入表,幂等建(不 DROP,避免误删已注册的下位系统)
|
||||
# accounting 放这里:subject/account_config/accounting_config 是记账配置,account/ledger 是运行时数据,幂等建(不 DROP)
|
||||
IDEMPOTENT_MODULES = ['pipeline_core', 'pipeline-service', 'appbase', 'dapi', 'accounting']
|
||||
# 产线模块 pipeline-bidding(bid_*) / pipeline-opportunity(opp_*) 放这里:走 json2ddl 从 models/*.json 生成
|
||||
# (已验证无 DEFAULT ''N'' bug),项目里含运行时数据(标书章节/商机报告),必须幂等不 DROP
|
||||
IDEMPOTENT_MODULES = ['pipeline_core', 'pipeline-service', 'appbase', 'dapi', 'accounting',
|
||||
'pipeline-bidding', 'pipeline-opportunity']
|
||||
|
||||
|
||||
# appbase 系统级配置表(幂等建表 + 默认参数,不 DROP 以免清空运行时数据)
|
||||
|
||||
@ -31,6 +31,7 @@ INIT_MODULES = [
|
||||
('rbac', 'pkgs/rbac/init/data.json'),
|
||||
('accounting', 'pkgs/accounting/init/data.json'),
|
||||
('pipeline-bidding', 'pkgs/pipeline-bidding/init/data.json'),
|
||||
('pipeline-opportunity', 'pkgs/pipeline-opportunity/init/data.json'),
|
||||
('pipeline-llm', 'pkgs/pipeline-llm/init/data.json'),
|
||||
]
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user