SuperAPI AI 工具集

pythia-review

通用与其它

查看项目

更新于 10-16 01:10

技能介绍

用途:审查 PL/SQL 代码,包括改动的存储过程或包、尚未应用的提议文件,以及疑似引发问题的对象。技能分两遍进行:先看数据库自身能给出的机器信号,再按清单判断可能的问题。

主要能力与用法:第一遍用 pythia lint <file> 检查提议文件,结合内置标准与 conventions.json 中 LEAD 的规则,按行号报告错误;用 pythia errors NAME 获取编译错误与警告及行列位置;用 pythia src NAME 读取带编译器行号的源码,便于定位;用 pythia impact NAME --depth 2 评估对象暴露程度,依赖多的对象问题优先级更高。对尚未应用的文件,编译结论要到 apply 时才产生,需明确说明编译尚未验证。

第二遍按 reference/antipatterns.md 逐项检查,若项目存在 .pythia/conventions.md 则优先于通用清单。七类反模式包括:逐行游标循环、字符串拼接动态 SQL、WHEN OTHERS THEN NULL、循环内 COMMIT、手写类型而非 %TYPE/%ROWTYPE、大 OUT 参数未加 NOCOPY、与代码库风格漂移(可用 pythia similar 查看既有风格)。

报告方式:每条发现按“第 N 行:问题 — 为何有害 — 修复方式”锚定;严重度顺序为破坏正确性、静默丢数据或报错、规模化性能、风格漂移。写结论前须用 src 读实际代码核实,不能仅凭 diff 记忆。干净的审查要说明检查了什么,例如编译通过、无新增 INVALID、清单通过。

限制:不用于判断改动是否可安全应用(那属于 pythia-impact 与 pythia-apply 的预览);不适用于非 PL/SQL 的应用代码。资料未提供安装方式、收费与平台信息。