fullseye

让通用算法也能实现 — algo-c 对应路线图

日本語 · English · 简体中文 · 繁體中文 · 한국어 · Deutsch

用户需求(2026-08-16):https://github.com/okumuralab/algo-c(奥村晴彦 《[修订新版] C语言标准算法辞典》全部源码)中出现的通用算法, 也希望能在 Fullseye 中实现。

诚实的现状认知:Fullseye 目前是 图像算法设计 AI(op 注册表 = image/region/ feature/contour/volume 的 sort、进化 + holdout gate + Python→C codegen)。通用算法 (排序/搜索/图论/数论/加密/压缩)无法归入图像 sort,因此需要扩展语言、类型与 codegen。 这是跨越多个会话的工作。本文档就是其确定计划(供下一次会话在完整上下文中执行的正本)。

algo-c 的分类(书籍目录 · 实现对象地图)

※ 严格的覆盖范围以 repo 的 /src 为正本。

领域 代表性算法 Fullseye 中的承接方式
数值计算 方程式(二分法/Newton)、数值积分(Simpson/Romberg)、线性方程组(Gauss/LU)、插值(spline)、FFT 既有 dsp(FFT)+ 新增 numeric op 族
随机数 · 统计 Mersenne Twister、分布、统计量 新增 rng/stat op(确定性 seed)
排序 quick/heap/merge/shell/radix 新增 array sort + seq 类型
搜索 二分搜索、哈希、BST/AVL/B-tree 新增 array/map op
字符串 KMP/BM/Rabin-Karp、编辑距离、正则表达式 新增 text 类型 + op
DFS/BFS、Dijkstra、Warshall-Floyd、MST、最大流 新增 graph 类型 + op
几何 凸包、线段相交、Voronoi 既有 pcseg/几何 + 新增 geom2d
数论 · 加密 素数、GCD、RSA、MD5/SHA、AES 新增 numtheory/crypto(教学用 · honest 披露)
数据压缩 Huffman、LZ/LZW、算术编码 新增 compress op
DP/搜索 8-queens、背包问题、DP fscript 的控制流 + array

实现架构(确定方针)

将 Fullseye 的既有资产扩展到通用领域。不会稀释图像 AI 的焦点(通用 op 归入独立 tier / opt-in)。

  1. 类型系统扩展:在现有 6+1 种 sort(image/region/feature/contour/match/any/volume)基础上, 新增seq(一维数组)/text(字符串)/graph/scalar(ops.py 的 sort · fslib 类型)。
  2. fscript 的通用语言化:目前已具备 if/for/while、赋值、tuple。将分阶段新增数组/字符串 字面量、索引、procedure(函数)(此前决定收窄语言范围,通用 tier 将以独立 profile 解禁)。 正本 = 重新审视 docs/FSCRIPT_DECISION.md 中的 A/B 分支。
  3. op 注册表扩展:将 algo-c 中的各个算法以 op(name/in-out sort/params/c_stmt)形式 注册。直接沿用既有的 Python→C codegen(engine.to_python/to_c)+ difftest(honest gate:以 Python 为 oracle,对 C 做差分验证)→ 用实测保证”能用 C 实现”
  4. honest gate:把 algo-c 的 C 代码作为参考实现喂给 difftest,与 Fullseye codegen 生成的 C 验证数值/位一致性(既有 gate 的扩展)。尊重原始代码的许可协议(algo-c = 书籍附带代码, 使用条件待确认),不直接照抄,而是从规格重新实现(公开披露方针)。

阶段计划(下次会话以后)

honest 的局限与规律


P1 完成记录(2026-08-16, Opus5[1m]/ultracode)

达成了最小实证”Fullseye 也能为通用算法生成 C 代码,并能 honest 实测出 C 一致性”。

P1 对抗性评审后的强化(2026-08-16, [[feedback_no_solo_ai_judgment]])

对本会话自行编写的代码实施了独立的对抗性评审(Workflow 4 个视角 = 算法正确性 / codegen · C 安全 / gate 健全性 / 集成 · 焦点安全,共 22 项 findings)。我对全部结果做了一手代码验证(v11 规律), 修正了真正的缺陷:

接下来(P2 以后)

P3 完成记录 — 字符串 op(2026-08-17, Opus5[1m]/ultracode, graph-loop-engineering)

为 algo tier 新增 3 种字符串算法。“字符串 = 以 float64 携带代码点序列”(Unicode 标量 < 2^53 故为 严格精确)使其无需改造即可搭载既有的 float64 二进制 harness(无需新 wire 类型)。值仅做相等比较 (整数编码精确)· 位置/距离为严格整数 → C-vs-Python 按位一致 且 Python-vs-oracle 为 EXACT(tol 0)

P3 字符串 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

独立对抗性评审 Workflow(4 个视角 · 各项 finding 由验证代理以实际代码/实际 compile 确认)= 3 项 findings 全部 CONFIRMED(其中 2 项是同一根本原因被不同视角分别报告)。经一手验证后全部修正:

P2 完成记录 — gauss_solve(2026-08-16, Opus5[1m]/ultracode, graph-loop-engineering)

新增线性方程组 Gauss 消元(部分主元),完成 P2 数值计算。 依用户指示以 graph-loop-engineering 技能将其节点化到 raptor work-graph,让 tool driver 无人值守执行(双层方针 = breadth 由 work-graph 的 difftest gate 负责,对抗性 findings 的采纳与 push 是会话内的人工检查点)。

P2 gauss 对抗性评审后的强化(2026-08-16, [[feedback_no_solo_ai_judgment]])

对自行编写的 gauss 代码实施独立对抗性评审 Workflow(4 个视角 = numeric 正确性 / C 安全 / gate 健全性 / 集成 · 覆盖,各项 finding 均由验证代理实际执行重现)。5 项 findings 中 4 项 CONFIRMED,经一手 代码验证后全部修正:

P1.5b 完成记录 — 在 Studio 中以只读方式展示 general tier(2026-08-17, Opus5[1m]/ultracode)

在 op 浏览器中展示 general(algo)tier。 为不稀释图像焦点的设计 = general op 属于 seq/scalar 的 另一套计算模型,故 只读(不纳入图像流水线)。

P4 完成记录 — 图 op(2026-08-17, Opus5[1m]/ultracode, bonus)

为 algo tier 新增 3 种图算法(不在候选之内,但顺应用户”全部推进”+ 7-8h 自律的方针作为 bonus)。 将图打包进输入 seq([n, m, (u,v,w)*m],无向;dijkstra 会在前面加上 src 前缀 [n, m, src, ...]), 搭载既有的 float64 harness。

P5 完成记录 — 数论 · 压缩 · 教学用哈希(2026-08-17, Opus5[1m]/ultracode, graph-loop-engineering)

为 algo tier 新增 5 种通用算法,完成 algo-c 路线图(P1→P5)。 整数以 float64 携带(exact < 2^53), 因此不需要新的 wire 类型。位/整数运算在 C 端 cast 为 unsigned long long/unsigned int 后进行,再 转回 double(结果 < 2^53 故 exact)。全部 5 个 op 均为 exact(C 按位一致,且 Python==独立 oracle tol 0)。

P5 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

对自行编写的 P5 代码实施独立对抗性评审 Workflow(4 个视角 = algorithm-correctness / C-safety-codegen / gate-honesty / integration-focus,各项 finding 均由验证代理以实际 compile/执行重现,18 个 agent)。14 项原始 → 9 项 CONFIRMED / 5 项 REFUTED。全部 CONFIRMED 均由我一手重现(亲自用 ziglang 编译 · 运行)后修正。尤为值得一提的是对”gate 是否能证伪自身守卫”这一点的深入追问:

P6 完成记录 — 计算几何(2026-08-17, Opus5[1m]/ultracode, 12h 自律 · graph-loop-engineering)

为 algo tier 新增 3 种几何算法(algo-c 路线图 P1→P5 完成后的扩展 = P6。对应最初 TOC 中的 “几何 = 凸包/线段相交”)。也是通向图像 tier 中轮廓/区域处理的桥梁。将 2-D 点打包进输入 seq,用整数坐标(各 [-100000, 100000])使全部方向判定/鞋带和都成为严格整数运算(完全不使用 浮点除法)= C 按位一致,且 Python==独立 oracle tol 0。

P6 对抗性评审(2026-08-17, [[feedback_no_solo_ai_judgment]])

并行实施了 2 场独立对抗性评审 Workflow(各项 finding 均由验证代理以实际 compile/执行/压力测试重现):

P7 完成记录 — 线段相交(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

几何工具集扩展 1 个 op:segments_intersect(KIND_REDUCE)= 判定 2 条闭线段 [x1,y1,x2,y2,x3,y3,x4,y4] 是否相交(1.0/0.0)。是通向图像的直线/轮廓分析的桥梁。采用 CLRS 33.1 的整数方向判定法(proper crossing = 端点严格跨越对方线段 + 4 个共线 on-segment 特殊情形)。整数 坐标 [-100000,100000] 下叉积严格精确(|cross| ≤ 8e10 可放入 long long)= C 按位一致。oracle = sympy.geometry 的 Segment 相交判定(符号计算 = 与方向判定完全不同的方法)。实测:8 个固定情形 全部正确 + 与 sympy 在 2970 组随机整数线段对上不一致数为 0(含共线重叠/T 字形/共享端点/near-miss)。 退化(点)线段因 sympy 无法构造 Segment,已从 holdout 中排除(op 本身用通用方向判定逻辑可处理,但 未纳入 gate = 已披露)。difftest passed(python exact / C 按位一致 / c_verified),work-graph 节点 无人值守完成(全部 algo op 达到 24 个 · 已 gate 化)。

P7 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

3 个视角的对抗性评审(验证代理以实际 compile/执行重现)= 1 项原始 → 1 项 CONFIRMED(MED · gate-honesty)。op 本身正确(与 sympy 完全一致),但difftest holdout 从未以单独理由驱动过 d1/d3/d4 的 on-segment 特殊情形(端点落在对方线段内部 = 无共享端点),导致删除该分支的错误 op 能通过 gate(50 个 holdout 的判定结果一个也没变化)。已自行重现确定(丢弃 d3+d4 的变异体 passed=True · [0,0,10,0,3,0,3,5]→错误得到 0.0)。修正=为各 on_seg 分支(d1/d2/d3/d4)新增以 单独理由驱动的固定 holdout 情形(端点在对方线段内部 · 轴平行 4 个 + 对角 2 个)→ 已自行确认任意 丢弃 d1/d2/d3/d4 中的一个分支都会使 difftest FAIL(均为 passed=False)。已知解测试中也新增了 4 个端点-内部情形。全部套件从 4765 增至 4772 passed / 0 failed(+7)· ruff clean · mypy 新增 0。

P8 完成记录 — 搜索/选择(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

为 algo tier 新增 2 种搜索/选择算法(从几何转向另一个领域以均衡 tier)。基于比较,可处理任意 (NaN-free)double,结果为 index 或既有元素,故 exact(tol 0)· C 按位一致。

P8 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

2 个视角的对抗性评审(实际 compile/执行验证)= 1 项原始 → 1 项 CONFIRMED(LOW · correctness)。 正确性不变,但存在性能缺陷:kth_smallest 的 quickselect 因单一 pivot(Lomuto)而在 all-equal/低基数大输入下呈 O(n²)(median-of-three 无法保护重复值 · n=40000 全相等时耗时 7.44s,sorted/reverse 则很快)。测试的 holdout 仅 n≤30、计时测试只有 sorted 情形,未能捕捉。 姐妹 op quicksort 已在使用 3-way(Dutch flag)划分。修正=将 kth_smallest 改写为 3-way(Dutch national flag)划分(用 equal-band 把重复值折叠 → 使 all-equal 变为 O(n) · 仅用 比较且与顺序无关 → 维持 C==Python==sorted()[k] 的 parity)。已自行重现确认:all-equal n=40000 从 7.44s 降至 0.0019s(实现 O(n) 化)· correctness 的 5000 组情形不一致数为 0 · difftest 按位一致。计时测试已扩展到 sorted/reverse/all_equal/few_distinct(实际防护退化)。

P9 完成记录 — 统计/聚合(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

为 algo tier 新增 2 种统计 op:count_distinct(去重值数量 = 整数 count)/ mode_value (众数 · 值较小者优先 tie)。均基于比较(任意 NaN-free double),结果为 count 或既有元素,故 exact (tol 0)。两个 op 均先复制并排序,再做单遍扫描(结果与顺序无关,故即使 C 的 qsort 与 Python 的 sorted 顺序不同也按位一致)。oracle=len(set()) / collections.Counter(独立机制)。 ★主动强化:当 mode_value 的众数为零且 ±0.0 混杂时,C 的不稳定 qsort 与 Python 的稳定 sort 可能 返回符号不同的值而导致按位不一致 → 用 + 0.0 把 −0.0→+0.0 归一化(其他值不变)使 C==Python 更加健壮(与 rle_encode 的带符号零披露同属一类)。实测:各 5000 组随机情形与 oracle 的不一致数为 0 · difftest passed(python exact / C 按位一致 / c_verified)。全部 algo op 达到 28 个 · 已 gate 化。 ruff clean · mypy 新增 0。

P9 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

2 个视角的对抗性评审(实际 compile/执行/变异验证)= 1 项原始 → 1 项 CONFIRMED(MED · gate-safety)。正确性不变,但存在 gate 覆盖缺口:holdout 无法证伪删除 mode_value 的 +0.0 归一化这一变异体(唯一的带符号零情形 [0.0,-0.0,0.0] 在两个 backend 中都被排序为 +0.0 在末尾, 删除归一化也仍然按位一致)。注释声称能担保的按位检查从未真正驱动过该归一化。修正=在 holdout 中新增 -0.0 不落在 run 末尾的情形 [0.0,-0.0]·[-0.0,0.0](两种顺序,无论 qsort 的 tie 顺序如何 必有一方会发散)。已自行重现确认:删除归一化的变异体使 difftest FAIL,现行(已归一化)代码在 新增情形下按位一致 pass。全部套件从 4787 增至 4796 passed / 0 failed

P10 完成记录 — 数论(第2部分)(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

新增 2 种数论 op(建立在 P5 的整数机制之上 · 共享 category numtheory)。整数以 float64 携带 (exact <2^53)· 在 honest 域内全部模乘积都能放入 uint64/long long = C 按位一致,且 Python==独立 oracle tol 0。

P10 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

2 个视角的对抗性评审(实际 compile/执行/变异验证)= 1 项原始 → 1 项 CONFIRMED(MED · c-safety-gate)。op 本身正确且 overflow-safe(已用 353 个敌对情形验证),但 modular_inverse 的 holdout 未驱动到声明域 2^53(in-domain 的 m 最大只到约 1e9),使 C 的 long long→int 窄化变异体(破坏 2^53 域)能以按位一致通过 gate。姐妹 op pow_mod(base=exp 已固定在 2^53)/ gcd_seq(已固定 2^53 守卫边界)/ is_prime(近 2^32)都能捕捉同类变异体,唯独 modular_inverse 未覆盖。修正=在 holdout 中新增 2^53 边界情形([2, 2^53−1] coprime → inverse · 接近 2^53 的大 coprime 值 · [2^52, 2^53] 均为偶数 → −1,使 Bezout 运算驱动 |q·s|~2m~2^54)。已自行重现确认: long long→int 变异体使 difftest FAIL,baseline 按位一致 pass。oracle(pow)已经能对应,故仅 新增 holdout。全部套件全绿。

P11 完成记录 — 位运算(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

新增 2 种位运算 op:xor_reduce(全部元素的按位 XOR)/ popcount_total(全部元素的 1 位总数 = Kernighan 算法)。用 float64 携带非负整数,域 [0, 2^53−1] 内全部值可放入 53 位(XOR 结果也 < 2^53=exact · popcount 是较小整数)= C 按位一致,且 Python==独立 oracle (functools.reduce(operator.xor) / 内置 int.bit_count() = 与 Kernighan 不同的机制)tol 0。 两个 op 均为 passed=True · python exact / C 按位一致 / c_verified。已事先用各 3000 组随机情形与 oracle 核对不一致数为 0。fail-soft = 负数/非整数/≥2^53 时为 0.0。全部 algo op 达到 32 个 · 已 gate 化。ruff clean(以 FURB161 将 bin().count('1').bit_count() 化)· mypy 新增 0。

P11 对抗性评审结果(2026-08-17, [[feedback_no_solo_ai_judgment]])

2 个视角的对抗性评审 Workflow(correctness + gate-safety,wf_7d130631-c0f)= findings 0 (无缺陷)。评审者 1 得到 {findings:[]},评审者 2 在做”gate mutation testing(破坏实现看 gate 能 否抓到)”过程中因 window 压缩而中断(未产出结果)。依规律不去复活死掉的 background,而是由我 用同样的 mutation test 亲自一手完成验证:对 xor_reduce/popcount_total 的代表性 7 种变异体(空 初始化 acc=1 / 误用 OR / 2^53 域边界 off-by-one / 删除负数守卫 / Kernighan→shift[popcount≠bitlength] / +2 误差 / admit 2^53)在 holdout 上执行 → 全部 7 种变异体均被独立 oracle 捕捉(oracle_err > 0)。结论 = P11 的 gate 可证伪 · 未发现确定缺陷(fed093a 正当、无需 follow-up commit)。

P12 完成记录 — 扩展欧几里得算法(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

新增 1 种数论 op(建立在 P5 的整数机制 + P10 的 Bezout 不变量之上 · 共享 category numtheory=P5+P10+P12)。extended_gcd(KIND_MAP):输入 [a, b](非负整数 ≤ 2^53)→ 输出 [g, x, y](严格 3 值,满足 a·x + b·y = g = gcd(a,b)),域外为 [] fail-soft。用迭代版 two-variable sweep 计算系数。系数为严格精确(不变量 |q·s| = |old_s − new_s| ≤ 2·max(a,b) ≤ 2^54 能放入 C 的 long long)故 C==Python 按位一致。域为 [0, 2^53] 含端点(2^53 为 exact · 系数 |x|,|y| ≲ 2^52 在 float64 也是 exact)。

P12 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

3 个视角的对抗性评审 Workflow(correctness / c-safety+gate-honesty / integration,各项 finding 均由 验证代理以实际 compile/执行的 mutation 重现,5 个 agent · 125 次工具调用)= 2 项原始(同一 根本原因)→ 1 项 CONFIRMED(MED · gate-cannot-falsify)。op 本身正确(已在 20 万组 + 全部端点 上验证 · 与递归 oracle 不发散 · 域内无 long long overflow),但difftest holdout 的域外情形全部 集中在 operand a 一侧([2^53+2,3]/[2.5,7]/[-1,7]),唯一的 bad-b 情形 [7,NaN] 因 NaN 在 bd>=0.0 处即短路,一次也没能单独驱动 b 的 3 个守卫分支 → b 侧守卫的单侧退化(a/b 是 复制对称代码,因而看似合理)能同时穿过两个 gate 的一半(与 P5/P7/P9/P10 相同的 gate-coverage 教训)。自行重现确定:从 _PY/_C 两侧同时删除 bd>=0/bd<=2^53/bd==int全部 passed=True(未被捕捉),而对称的 a 侧删除全部 passed=False(已被捕捉 · 因 a 的域端在 holdout 中)。修正=在 holdout 与 fail-soft 测试中新增 [valid_a, finite_bad_b] 情形 ([3, 2^53+2]·[7,-1]·[7,2.5])→ 重新实测后 b 侧 3 处删除全部被捕捉(passed=False, pydiff=inf)、baseline 在 70 个用例上按位一致 pass。★采纳验证代理的 honest 纠正(驳回 finding 中的过度断言):”删除 bd<=2^53 会使 b=2^62 时 C long long 发生 overflow UB”这一说法不准确 ——b=2^62 时 C(long long)与 Python(bignum)按位一致(无 overflow)。真正的问题是输出的精度损失 (Bezout 系数在 > 2^53 时无法用 float64 严格表示,导致 a·x+b·y==g 被破坏),b<=2^53 的上限正是 为守护此精度。机制描述有误,但缺陷本身与修复方案成立 = 予以采纳。

P13 完成记录 — 最近点对(分治法)(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

几何工具集再扩展 1 个 op(P6/P7 之后的第 2 弹):closest_pair(KIND_REDUCE)= 用分治法 (CLRS 33.4)求 2-D 整数点集的最小平方距离。输入 [x0,y0,x1,y1,...](2n 个 · 整数坐标 [-1e5,1e5])→ 输出 = 最小平方欧氏距离(整数严格精确)。仅用平方距离(不开方),故封闭于 long long/整数 float64,C==Python 按位一致。最大平方距离 = (2e5)²×2 = 8e10 < 2^53=exact。 fail-soft = 点数 <2(n<4)/ 长度为奇数 / 坐标非整数或超出 [-1e5,1e5] 域 → -1.0。

P13 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

3 个视角的对抗性评审 Workflow(correctness / c-safety+gate-honesty / integration,各项 finding 均由 验证代理以实际 compile/执行的 mutation 重现)= 3 个视角收敛到同一根本原因 → 1 项 CONFIRMED (severity = 我最初评为 MED / 验证代理评为 HIGH,认为 gate-honesty 失败[gate 会 green-light 错误 op]更严重。作为 honest 披露两种评价并存,修正内容相同)。op 本身正确(在 3 万+1.6 万组敌对情形 上与暴力法不一致数为 0),但difftest holdout 从未驱动 strip 的 y-scan 超过 immediate neighbor(j==i+1)→ 将 strip 前向扫描收窄至仅 j==i+1 的退化能被 gate 放行(因 7 近邻定理指的是 “至多 7 个”而非”恰好 1 个”,按 y 序存在非相邻的最近点对是可能的)。自行重现确定:将扫描范围 收窄为 range(i+1, min(i+2, sc)) 的 mutation 同时应用到 _PY/_C → passed=True(未被捕捉)。已在 整数网格中搜索并发现能证伪该缺陷的最小情形(例如 [0,-6,-2,-2,4,-3,-5,3]= 最近点对在 y 序上相隔 2 个位置 → 完整/暴力法得 20,而仅 j==i+1 得 25)。修正=在 holdout 与已知值测试中新增 strip 内 最近点对在 y-sorted 中非相邻的 3 种情形([0,-6,-2,-2,4,-3,-5,3]→20 / [-4,5,-1,-3,0,-1,3,-3]→5 / [-1,-6,-1,0,-5,-4,1,-4,4,4]→8)→ 重新实测确认 j==i+1-only 的 mutation 被捕捉(passed=False, pydiff=12)、baseline 在 61 个用例上按位一致 pass、其他 5 个 mutation 无回归。在既有的 6 种 mutation(省略 strip/sq 忽略 y/坐标上下限/整数性/空 strip)基础上, strip 扫描深度也变得可证伪(将 P12 的 gate-coverage 教训扩展到几何领域的 strip 扫描)。

P14 完成记录 — Huffman 最优前缀编码代价(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

数据压缩再扩展 1 个 op(P5 的 rle_encode 之后的压缩第 2 弹):huffman_cost(KIND_REDUCE)= 给定 符号频率 [f0,f1,...](非负整数 ≤2^40),求最优前缀(Huffman)编码的最小总代价(=全部内部节点 合并权重之和 = Σ freq×编码长度)。★核心 = 最优代价对 tie 不变(每个符号的编码长度会随 tie 打破方式改变,但总代价由频率多重集合唯一决定),故即使 C 与 Python 以不同顺序取出等权元素, 总和依旧相同 = 按位一致能干净地成立。整数用 long long 携带(通过域守卫约束在 < 2^54,无 overflow)。

P14 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

3 个视角的对抗性评审 Workflow(correctness / c-safety+gate-honesty / integration,各项 finding 均由 验证代理以实际 mutation 重现)= 3 项 CONFIRMED(均为 merge overflow bail 边界的 gate-coverage 问题 · op 本身正确、tie 不变性也已在 5 万+4000+2 万组数据上确定)。correctness 相关 的指摘为 0(tie 不变性的主张、两队列法的最优性均稳健)。CONFIRMED 全部集中在”merge-total>2^53 的 fail-soft 边界”的覆盖上:

P15 完成记录 — 最长递增子序列长度(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

搜索/选择再扩展 1 个 op(P8 binary_search/kth_smallest 之后的搜索第 2 弹 · DP/patience sorting 新算法族):lis_length(KIND_REDUCE)= 用 patience sorting 求任意 NaN-free double 数列的 最长严格递增子序列(LIS)长度。仅用比较(不对值做算术运算),故长度由数组本身唯一确定 = C==Python 按位一致。tails[k] 保存长度 k+1 的递增子序列的最小末尾,对每个元素在 tails[mid] < x(bisect_left · 严格)位置替换或扩展末尾(O(n log n))。空 → 0.0,混有 NaN → -1.0 fail-soft(用 x != x 检测)。

P15 对抗性评审结果(2026-08-17, [[feedback_no_solo_ai_judgment]])

3 个视角的对抗性评审 Workflow(correctness / c-safety+gate-honesty / integration,mutation 验证)= findings 0(全部视角均无指摘)。已验证 patience sorting 的严格比较 · NaN 守卫 · tails 缓冲区安全 · O(n²) DP oracle 的独立性 · holdout 单独驱动严格比较的能力,未检测到可证伪的缺陷。 事先的 mutation 3/3 全部被捕捉(严格 <<=/NaN 守卫/二分方向)与 4 万组 DP 一致,说明 gate 稳健。

P16 完成记录 — 逆序数(归并排序法)(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

统计再扩展 1 个 op(P9 count_distinct/mode_value 之后的统计第 2 弹):count_inversions (KIND_REDUCE)= 用计数归并排序以 O(n log n) 求任意 NaN-free double 数列的逆序数 (i<j 且 a[i] > a[j] 的严格对数)。仅用比较(不对值做算术运算),故 count 由数组本身唯一确定 = C==Python 按位一致。合并时每当右列先取出一个元素,就把左列剩余数量累加(经典做法)。count 为 非负整数,故 -1.0 是安全 sentinel:NaN→-1.0 fail-soft,空/单元素→0.0。相等值不算逆序(tie 时 先取左边 = arr[i] <= arr[j])。

P16 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

★worktree 隔离评审首次成功应用:3 个视角 × 隔离 git worktree(各代理从 cd76da0 建立各自 专用副本并做 mutation)→ 本 repo 的 algo.py 始终保持干净(验证代理也明确记录”real repo 为 只读 · 在隔离 worktree 中做 mutation · 已清理善后”)。结构性解决了 P14 的污染问题。结果 = 2 项 CONFIRMED(均为 LOW) · correctness 相关为 0(op 正确):

P17 完成记录 — 最大子数组和(Kadane 算法)(2026-08-17, Opus5[1m]/ultracode, 12h 自律)

搜索/优化再扩展 1 个 op(P8 binary_search/kth_smallest · P15 lis_length 之后的搜索第 3 弹):max_subarray(KIND_REDUCE)= 对整数值 double 数列用 Kadane 的 O(n) 重置扫描 (cur = max(0, cur+x); best = max(best, cur))求连续子数组的最大和允许空子数组 (和为 0),故答案恒 ≥ 0(全负时为 0.0)= -1.0 是安全 sentinel。在整数域内(各 |x| ≤ 2^52 且绝对值的滚动和 ≤ 2^52)使全部部分和都保持在严格整数 < 2^53 → 答案严格精确 · C==Python 按位一致。独立 oracle(全部 O(n²) 子数组的暴力最大值)因整数加法的结合律而与 Kadane 严格一致。fail-soft -1.0 = NaN / inf / 非整数 / |x| > 2^52 / 滚动和溢出。

P17 对抗性评审后的强化(2026-08-17, [[feedback_no_solo_ai_judgment]])

worktree 隔离评审(4 个 agent · 3 个视角 + 对抗性验证)= 1 项 CONFIRMED(LOW · gate-honesty)/ refuted 0。验证代理在隔离 worktree 中完整重现,并明确记录本 repo 的 algo.py 未被污染(status --porcelain 只有 auto 的 SESSION_SUMMARY)。correctness/integration 相关为 0 (op 正确):

2026-09-03:对抗性评审(algo + C codegen)的 8 项修正