2026-10-25,Launcher 0.1.42 / CLI 0.1.25,Java 17.0.12 / Python 3.11.5。沿用 127.0.0.1:18368 的 file-legacy / LegacyBillQueryModel,匿名本机开发测试,Console/FAP关闭。实际进程117468及0.1.42 JAR路径已复查;没有重启、注册或刷新模型,没有操作18067。
当前Codex读取实时QM元数据,编写本章SQL意图与对应DSL。原生语义SQL接口仍未作为本章调用路线。引擎只接收DSL,全部先validate后execute;SQL与不明确输入的审查属于AI工作,不冒充引擎SQL解析。
第35章已审核的排名、HAVING请求原样复用。新增DSL的独立答案来自只读原始Chinook Invoice行,由Python Decimal按声明的日期、客户、国家、求和与计数规则计算。不是再执行一遍引擎SQL,也不是从本次响应自动生成预期值。
| 类别 | 用例 | 结果 |
|---|---|---|
| 基线复跑 | 排名前三、年度金额HAVING大于25 | 与第35章一致,2项 |
| 新正常查询 | 整体均额 | 477.53 / 83 = 5.753373493975904,显示5.75 |
| 新正常查询 | 按国家均额 | 20组逐字段核对;组均额直接平均5.843171…,不等于全局均额 |
| 新正常查询 | 全量客户排序 | 47位逐行一致;含00013/00051同额24.75等实际并列情况 |
| 新正常查询 | 客户00999明细 | 空数组 |
| 新正常查询 | 1990年空范围汇总 | [{"bills":0}],金额和均额NULL在默认输出中省略 |
| 故意改错 | 将HAVING合计条件改成slice单张条件 | 校验通过、执行空集;与原SQL要求的00026/25.84不一致 |
| 校验拒绝 | 排序引用未定义totalAmount | FIELD_NOT_FOUND,phase=query.validate,未执行 |
7项正常执行包含2项基线复跑和5项新正常查询。1项故意改错的执行单列,不计入正确转换的通过数。另有1项校验拒绝,以及对含义不明确的聚合WHERE输入进行的AI审查,后者没有生成DSL或调用引擎。
错例说明引擎正确执行了错误意图,不是引擎BUG,也不是声称观察到LLM实际犯错。本轮未发现新增引擎问题;结论只限上述用例,没有生产权限、多数据库或LLM多次生成评测。
从资料项目根目录,在原教学服务和模型可用时执行:
python -X utf8 lab/checks/verify-chapter36-query-meaning.py
脚本读取已保存的SQL/DSL,不实现SQL解析或重新调用LLM。人工审查SQL与独立预期的对应关系仍是前提;SQL含义变化时不能直接沿用旧预期。原模型、旧库、Chinook原始库、两份注册表及第35章基线请求的前后摘要一致。