34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# pbl_agent_runtime 模块技能(自动生成骨架 + 人工补充)
|
||
|
||
## 定位
|
||
Designer/Critic Agent 运行时与 fail-closed 工具裁决(M4a/M4b)
|
||
|
||
## 挂载
|
||
`from pbl_agent_runtime.init import load_pbl_agent_runtime` → `load_pbl_agent_runtime()`(应用 app/pbls.py init() 中按序调用)
|
||
|
||
## 数据表(6 张)
|
||
- `pbl_agent_def`:Agent 定义(Designer/Critic)
|
||
- `pbl_tool_registry`:工具注册表(13 启用 / 9 禁用含 pbl.publish)
|
||
- `pbl_agent_trace`:Agent 执行轨迹(第28章 7 要素)
|
||
- `pbl_agent_tool_call`:工具调用明细(服务端裁决留痕)
|
||
- `pbl_approval`:人工审批单(14.2 四类,无绕过路径)
|
||
- `pbl_llm_call_log`:LLM 调用日志(超时/重试/限流/兜底留痕)
|
||
|
||
## 契约接口(10 个,路径 `/pbl_agent_runtime/api/<name>.dspy`)
|
||
- `pbl_agent_designer_run`
|
||
- `pbl_agent_critic_run`
|
||
- `pbl_agent_trace_write`
|
||
- `pbl_agent_trace_list`
|
||
- `pbl_tool_registry_list`
|
||
- `pbl_tool_registry_save`
|
||
- `pbl_tool_adjudicate`
|
||
- `pbl_approval_create`
|
||
- `pbl_approval_decide`
|
||
- `pbl_approval_list`
|
||
|
||
## 陷阱
|
||
- 库名一律 `ServerEnv().get_module_dbname('pbl_agent_runtime')`,禁止硬编码 DBNAME。
|
||
- sqlor 只有 `C/U/D/R/I/sqlExe`;查询走 pbl_common.api 的 q_all/q_one(已适配)。
|
||
- 所有读写强制带 `tenant_id`(pbl_common.api.tenant_id()),缺失即 fail-closed 报错。
|
||
- 新增契约需同步三处:api.py 定义 + __init__.py 导出 + init.py env 注册 + scripts/load_path.py 路径。
|