v0.2.3 · Verification Prompt Ablation

初始实验 60/60 Tool / Task 固定,仅替换 Verification Prompt

这一版做什么

image-only · native claude -p · no harness hard gate

这版不复制 VDiff 的 PDF binding、固定 Step 1–5 或其它“大操作”。它只把可迁移的部分抽象为三段 Prompt:通用外部 MLLM 工具、简单 image-to-code 任务、不同密度的验证策略,然后观察模型是否主动形成过程验证与完成前的全面验证闭环。

正式初始实验4 × 5 × 3 = 60C0–C3 全部完成并离线评分
当前后续小迭代12/12 运行完成C3 / C4 · V2 对比 V3 双 Checkpoint · 离线评估待完成
当前结论C1 平均分最高C3 Pass@4 最多;C2 验证成本最重

Viewer 调整

12 datasets · 60 trajectories · rubric-only score contract
v0.2.3 Unified Visual Trajectory Viewer真实 target / render / HTML、运行事件与 VDiff Gold+discovery 离线 rubric 分数
打开 v0.2.3 Viewer →
Viewer 边界本实验没有 harness hard gate,也没有 epoch。Viewer 使用 rubric-only 评分合同,不把离线 rubric 结果伪装成在线 geometry / visual gate。

结果、时间与验证行为

5 cases × 3 replicates per condition

质量看 VDiff Gold+discovery rubric 分数;成本看平均时间、主模型成本和 MLLM 调用。验证行为再拆成过程中的 Focused Validate 与候选页面级的 Gate-like Checkpoint

条件MacroPass@4相对 C0平均时间平均成本MLLM 调用过程验证Gate-like平均修复循环
C0Tool + Task
无 Verification
3.675micro 3.644 5/15 baseline 2m 10s $1.50 4other 4 0 0 0.00
C1+ V0 Mentor Minimal
Mentor 极简版
3.927micro 3.919 6/15 +0.251CI [0.052, 0.425] 4m 04s $2.87 5other 5 0 0 0.00
C2+ V1 Initial Full
初始完整版
3.830micro 3.770 7/15 +0.155CI [-0.133, 0.387] 12m 29s $11.00 81other 10 19 5213P / 38F / 1? 3.07
C3+ V2 Overall Compact
整体压缩版
3.875micro 3.829 8/15 +0.200CI [0.017, 0.345] 5m 50s $5.24 36other 7 10 1919? 0.93
行为口径过程验证:局部裁图、局部主张或中间产物检查。Gate-like:同时使用完整 reference 与完整 candidate、面向整页/多维度结论的调用。它是轨迹中的自发行为,不是 harness 强制 Gate;? 表示调用范围像 Gate,但回答没有明确 PASS / FAIL / INSUFFICIENT。

当前 V3 后续:验证行为

12/12 generation complete · offline quality evaluation pending

这一表只描述已经发生的外部验证行为,不并入上面的正式质量结论。C3 共 3 次过程验证、13 次 Gate 且全部 FAIL;C4 共 18 次过程验证、81 次 Gate(61F / 20P),严格双 Checkpoint closure 仅 3/6 成立。

展开 12 条轨迹Focused / Gate / Other / closure
轨迹过程验证GateOther最终行为
C3 · case25-r1022F / 0P0最终 Gate FAIL 后完成
C3 · case25-r2022F / 0P0最终 Gate FAIL 后完成
C3 · case25-r3122F / 0P0最终 Gate FAIL 后完成
C3 · case5-r1022F / 0P0最终 Gate FAIL 后完成
C3 · case5-r2022F / 0P0最终 Gate FAIL 后完成
C3 · case5-r3233F / 0P0最终 Gate FAIL 后完成
C4 · case25-r1111815F / 3P2Closure 违反
C4 · case25-r23117F / 4P2Closure 成立
C4 · case25-r3195F / 4P0成立;最终 PASS 有保留
C4 · case5-r10139F / 4P1Closure 违反
C4 · case5-r201712F / 5P0Closure 成立
C4 · case5-r331313F / 0P1Closure 违反
当前读法V3 显著增加了 Gate 调用,但“调用更多”不等于严格闭环成立:3/6 C4 轨迹仍违反同一最新 artifact 上连续两次全面验证的 closure。离线 rubric 分数完成前,不判断 V3 的最终质量收益。

逐个 case 对比

case mean + 60 条单轨迹跳转

先看每个 case 的三次平均分,再展开到每条轨迹。四条件对比链接始终固定同一个 case 和同一个 replicate。

case512 trajectories · best mean C1 4.017
条件分数时间MLLM过程验证Gate-like · final修复循环查看
C0 · r1 3.68 2m 57s 0 0 0 0 轨迹 · 回放
C0 · r2 4.11 1m 38s 0 0 0 0 轨迹 · 回放
C0 · r3 3.47 2m 02s 0 0 0 0 轨迹 · 回放
C1 · r1 4.05 2m 49s 0 0 0 0 轨迹 · 回放
C1 · r2 4.05 5m 17s 0 0 0 0 轨迹 · 回放
C1 · r3 3.95 4m 18s 0 0 0 0 轨迹 · 回放
C2 · r1 3.21 32m 17s 9 1 8 · pass 6 轨迹 · 回放
C2 · r2 3.68 15m 40s 7 1 6 · fail 5 轨迹 · 回放
C2 · r3 3.37 12m 56s 6 1 5 · fail 4 轨迹 · 回放
C3 · r1 4.00 4m 20s 1 0 1 · unknown 0 轨迹 · 回放
C3 · r2 3.74 5m 54s 1 0 1 · unknown 0 轨迹 · 回放
C3 · r3 3.11 23m 29s 11 6 2 · unknown 7 轨迹 · 回放
case912 trajectories · best mean C3 4.300
条件分数时间MLLM过程验证Gate-like · final修复循环查看
C0 · r1 4.18 0m 45s 0 0 0 0 轨迹 · 回放
C0 · r2 4.27 0m 41s 0 0 0 0 轨迹 · 回放
C0 · r3 4.09 0m 38s 0 0 0 0 轨迹 · 回放
C1 · r1 4.45 2m 24s 0 0 0 0 轨迹 · 回放
C1 · r2 3.82 2m 17s 0 0 0 0 轨迹 · 回放
C1 · r3 3.91 1m 36s 0 0 0 0 轨迹 · 回放
C2 · r1 4.09 5m 46s 3 0 2 · pass 1 轨迹 · 回放
C2 · r2 4.18 7m 29s 3 3 0 2 轨迹 · 回放
C2 · r3 4.27 12m 51s 12 5 5 · fail 7 轨迹 · 回放
C3 · r1 4.36 4m 40s 2 2 0 1 轨迹 · 回放
C3 · r2 4.09 3m 10s 2 0 1 · unknown 0 轨迹 · 回放
C3 · r3 4.45 3m 42s 2 0 2 · unknown 1 轨迹 · 回放
case2212 trajectories · best mean C1 3.807
条件分数时间MLLM过程验证Gate-like · final修复循环查看
C0 · r1 3.30 2m 03s 1 0 0 0 轨迹 · 回放
C0 · r2 3.47 2m 20s 1 0 0 0 轨迹 · 回放
C0 · r3 3.58 4m 04s 1 0 0 0 轨迹 · 回放
C1 · r1 4.03 4m 45s 1 0 0 0 轨迹 · 回放
C1 · r2 3.58 2m 12s 2 0 0 0 轨迹 · 回放
C1 · r3 3.81 3m 08s 1 0 0 0 轨迹 · 回放
C2 · r1 4.26 33m 40s 7 2 3 · pass 3 轨迹 · 回放
C2 · r2 3.52 6m 53s 4 0 4 · pass 3 轨迹 · 回放
C2 · r3 3.47 7m 21s 5 0 4 · pass 2 轨迹 · 回放
C3 · r1 4.03 5m 20s 3 0 2 · unknown 1 轨迹 · 回放
C3 · r2 4.09 2m 37s 1 0 1 · unknown 0 轨迹 · 回放
C3 · r3 3.18 3m 57s 2 1 0 0 轨迹 · 回放
case2312 trajectories · best mean C1 3.750
条件分数时间MLLM过程验证Gate-like · final修复循环查看
C0 · r1 2.57 1m 00s 0 0 0 0 轨迹 · 回放
C0 · r2 3.75 1m 06s 0 0 0 0 轨迹 · 回放
C0 · r3 3.33 1m 29s 0 0 0 0 轨迹 · 回放
C1 · r1 4.79 4m 28s 1 0 0 0 轨迹 · 回放
C1 · r2 3.61 13m 59s 0 0 0 0 轨迹 · 回放
C1 · r3 2.85 2m 36s 0 0 0 0 轨迹 · 回放
C2 · r1 3.40 10m 31s 4 0 4 · fail 3 轨迹 · 回放
C2 · r2 3.47 8m 02s 7 0 5 · fail 3 轨迹 · 回放
C2 · r3 3.61 16m 17s 6 6 0 4 轨迹 · 回放
C3 · r1 3.33 4m 14s 1 1 0 0 轨迹 · 回放
C3 · r2 3.68 6m 30s 2 0 2 · unknown 1 轨迹 · 回放
C3 · r3 3.82 5m 45s 3 0 3 · unknown 2 轨迹 · 回放
case2512 trajectories · best mean C2 4.307
条件分数时间MLLM过程验证Gate-like · final修复循环查看
C0 · r1 3.33 2m 09s 1 0 0 0 轨迹 · 回放
C0 · r2 4.08 1m 28s 0 0 0 0 轨迹 · 回放
C0 · r3 3.92 8m 14s 0 0 0 0 轨迹 · 回放
C1 · r1 3.83 2m 13s 0 0 0 0 轨迹 · 回放
C1 · r2 3.50 3m 34s 0 0 0 0 轨迹 · 回放
C1 · r3 4.67 5m 19s 0 0 0 0 轨迹 · 回放
C2 · r1 4.17 3m 01s 2 0 1 · pass 0 轨迹 · 回放
C2 · r2 4.50 4m 08s 3 0 2 · pass 1 轨迹 · 回放
C2 · r3 4.25 10m 24s 3 0 3 · pass 2 轨迹 · 回放
C3 · r1 4.67 7m 46s 2 0 2 · unknown 1 轨迹 · 回放
C3 · r2 3.33 2m 57s 2 0 1 · unknown 0 轨迹 · 回放
C3 · r3 4.25 3m 12s 1 0 1 · unknown 0 轨迹 · 回放

三部分 Prompt

分别查看 · 分别切换中英文

页面按 Tool → Task → Verification 展示,不再按完整实验条件重复三套内容。每一部分独立切换中英文;Verification 额外切换清单中的多个版本。

Tool Prompt

如何把外部 MLLM 暴露给主模型
V1 · 初始版·对齐当前 MCPInitial MCP-Aligned English source · 中文对照
# Tool V1 · Initial MCP-Aligned / 初始版 · 对齐当前 MCP:中文审阅

状态:待审候选  
对应 Module ID:`tool-V1-initial-mcp-aligned`  
用途:人工审阅;不会注入运行时

```text
<multimodal_model_tool>

你可以使用 `mcp__mllm__call`,下文称为 `CallMLLM`。每次调用会把一条自包含的
`instruction` 和带有明确 label 的 `inputs` 发送给一个全新、独立的多模态模型
上下文。Inputs 可以包含内联文字、工作区内的 UTF-8 文本文件或图片。

被委托模型可能具有比主模型更强或互补的视觉能力,并提供独立的上下文窗口。在需要视觉
证据的工作中,应主动并根据需要多次使用它。当多个 model profile 可用时,可以对不同
profile 进行多次聚焦调用,以获得互补观察或独立意见。

CallMLLM 可以用于视觉读取、定位、布局理解、图片比较、图片与代码或历史产物之间的
对应,以及可见差异诊断。这些只是能力示例,不构成固定 workflow。

每次调用彼此独立,只能看到本次提供的 instruction 和 inputs。提供必要上下文,并清楚
标注多个输入。只在 instruction 中写出路径并不等于附加文件。已有代码或产物文件使用
`kind: "text_file"` 附加,图片使用 `kind: "image"` 附加。

由你决定询问什么、提供哪些输入、选择哪个可用 model profile,以及需要什么返回格式。
`capability_tags` 和 `output` 可以省略;默认值分别为 `["Z1"]` 和文本输出。
返回内容是当前工作的证据;如何使用仍由你负责。

可用 profiles:

{{MODEL_PROFILE_CATALOG}}

</multimodal_model_tool>
```

Task Prompt

要完成的 image-to-code 任务
V1 · 初始版Initial English source · 中文对照
# Task V1 · Initial / 初始版:中文审阅

状态:待审候选  
对应 Module ID:`task-V1-initial`  
用途:帮助人工审阅英文运行时原文;本文件不会注入 Claude  
运行时占位符:`{{REFERENCE_IMAGE_PATH}}`

本模块只定义图像转代码任务。产物入口发现和依赖策略属于 Runtime Contract;验证、外部工具、
Checkpoint、Gate 和评分均不属于 B2。英文文件是唯一规范运行时来源。

```text
<image_to_code_task>

参考图片:`{{REFERENCE_IMAGE_PATH}}`

创建一个忠实、live 且可编辑的 HTML 页面,复现参考图片所展示的可见状态。主要目标是在参考图片原始像素尺寸下渲染时保持视觉忠实。

- 可读文字和界面内容必须保持为真实、可见的 DOM 元素。不得使用完整参考图片或包含可读文字的栅格图片替代真正的页面实现。
- 每个可见元素都应尽可能匹配参考图片中对应区域的位置和 bbox。
- 对于可编辑文本流,应使用普通文档流、Flexbox 或 Grid。不得使用绝对定位、固定布局表格、定位文本框或手工 `<br>` 模拟自然文字换行。

</image_to_code_task>
```

Verification Prompt

验证与 Checkpoint 行为
V0 · Mentor 极简版Mentor Minimal English source · 中文对照
# Verification V0 · Mentor Minimal / Mentor 极简版:中文审阅

状态:保留的基线比较版本;尚未冻结,也没有用于实验  
对应 Module ID:`verification-V0-mentor-minimal`  
来源:Mentor HTML 验证条款第 3–5 条;有意不包含任务条款第 1–2 条

```text
迭代调整 HTML 页面,直到空间差异处于容差范围内(页面坐标中小于 5px),并且没有文字裁切或重叠。

空间差异解决后(漂移小于 5px),执行视觉验证。在宣布构建完成之前修复视觉失败。如果视觉修复造成漂移回归,重新校准间距,并重新验证空间与视觉两方面。

对持续存在的视觉差异,判断哪些差异对人眼而言显著。视觉上显著的差异必须修复——不要在没有改变方法的情况下宣布它们无法修复。
```

版本材料

generated from formal analysis