返回 Bug 清单
BUG-1358project-02中已修复python-logic

Python **kwargs 函数收到位置参数 TypeError — locals() 作为位置参数传递

发现:2026-10-12验证:2026-10-12置信度:70%

症状

运行到 fallback 分支(DB 失败 / 参数缺失 / 非法 error_type)时立即 TypeError 崩溃,fallback JSONL 完全失效,主流程审计链路断裂

根因

定义 def _write_fallback(**kwargs): 时,调用方传 _write_fallback(locals(), ...error=...) 把 locals() 作为第一个位置参数传给了只接受 **kwargs 的函数,导致参数不匹配

修复方案

把三处 _write_fallback(locals(), error=...) 改为显式构造 kwargs dict 展开传入:_write_fallback(client_id=client_id, tenant_id=tenant_id, ..., error_detail='...'),消除位置参数

错误签名

TypeError: _write_fallback() takes 0 positional arguments but 1 was given

技术信息

来源项目

project-02

涉及文件

bk_backend/llm/audit.py

标签

project-02, mcp-reported, source-agent