用途:审查 Python OpenInference 插桩包是否符合项目既有模式与约定,属于清单驱动的代码审查,逐节检查并输出带文件路径与行号的发现,按严重程度分级。
主要能力:
- 定位待审查包(位于 python/instrumentation/openinference-instrumentation-<name>/),阅读 init.py、_wrappers.py、pyproject.toml 与 tests/。
- 拉取被插桩库源码作为事实依据,核对被 monkey-patch 的方法、签名、参数类型、边界情况与属性提取,并据此校准严重程度。
- 检查测试与 CI 配置:tox.ini 安装模式、test-requirements.txt、pinned 与 -latest 测试目标。
- 检查测试写法:conftest.py fixtures、pytest-recording/VCR 磁带、穷尽式 pop 属性断言、上下文属性传播测试。
- 检查 OpenInference 语义约定:span kind、输入输出值与 MIME 类型,以及 LLM、Embedding、Tool、Agent、Retrieval 等类型对应属性。
- 检查 Span 层级:父子关系、trace_id 一致性、span kind 层级、线程/异步上下文传播、抑制插桩与 TraceConfig 掩码支持。
使用方式:先确认待审查包;用 tox 安装固定版本库,例如 cd python && uvx --with tox-uv tox run -e <pyVER>-ci-<pkg> -- --co -q,随后在 python/.tox/<pyVER>-ci-<pkg>/lib/python<X.Y>/site-packages/<library>/ 查阅库源码;若 tox 失败可退回临时 venv 中 pip install <library>。最后按 Critical/High/Medium/Low 汇总发现,并列出做得好的部分,再询问用户是修复、运行测试还是仅审查。
适用场景:审查 OpenInference Python 插桩包的正确性与完整性,尤其是新增或修改 instrumentor 时。
限制:资料未提供具体收费、价格、平台支持范围与效果数据;审查结论需以实际库源码为准,不应假设被插桩库的行为。