# 实验浏览与对比工作区

## 页面分工

首页用于查找主题，主题页用于选择具体实验，对比页用于观察实现及核对运行条件。继续以生成目录数据为唯一事实来源，不更改实验目录、历史输入或 GitHub Pages 发布方式。

## 首页

- 默认紧凑视图展示主题，手机单列；搜索、分类、只看可预览、主题 / 实验切换、大图 / 列表切换和排序直接可见。模型厂商、模型、产物、提示词和完整预览状态放在“更多筛选”。测试状态只保留一组标签。
- 已应用筛选显示可移除标签；从 URL 恢复高级筛选时自动展开对应区域。
- 主题卡片展示匹配实验数、模型数、最近已记录日期及最新模型与档位，完整模型名单按需展开。可直接打开匹配实验的预览；没有预览时明确显示状态。对比操作的 title 注明所选实验，继续保持独立操作。
- 卡片优先使用当前筛选范围内评分最高的已登记实验截图，回退到符合筛选的主题 thumbnail；完整显示图片，直接标注来源模型与档位。卡片的运行体验入口与截图指向同一实验。未采集截图时明确显示暂无截图。
- 点击截图在首页打开大图预览，可切换当前筛选内的同主题实验，并查看原图、实验记录或独立打开。默认只显示截图，点击“运行体验”才加载一个 iframe；切换实验、返回截图和关闭弹窗会卸载旧页面。关闭按钮、Escape 和点击遮罩均可退出，并恢复焦点及浏览位置。外部不可嵌入时提供独立打开，无截图或无预览时显示相应说明；不暗示相同输入或公平性能评测。
- 最近更新置于目录之后，按记录日期排列，直接进入对应主题的提示词版本与实验列表；手机自动换行，不引起整页溢出；未知日期不补造。
- 技术索引默认收起，导航入口自动展开；仍可搜索说明与可运行示例。
- 默认只浏览参与后续测试的主题，“后续测试”筛选可查看已归档或全部主题，状态随链接恢复。归档不删除历史，主题页与对比页继续可访问。

## 主题页

- 显示是否参与后续测试及状态历史。本地可填写原因归档整个主题或恢复测试，写入 topic.json 并更新生成文件；线上静态站点只展示状态。

- 默认进入“全部记录”，按提示词版本分组，较新版本在前；每条实验以紧凑表格行展示模型与厂商、供应商与工具、档位与轮次、日期、费用、耗时、输入留存及执行模式，预览、截图、记录、加入对比操作直接可见。厂商、工具和轮次使用对应单元格的第二行，减少横向占用。完整说明与修改信息在实验记录及条件对照中查看。
- 提示词版本筛选共同作用于“全部记录”“按模型”“档位覆盖”“任务正文”四种视图。任务范围区说明当前版本，并可直接进入正文阅读。费用口径说明放在清单下方；批次费用与耗时标明案例数，不拆算为单案例。
- “按模型”展开后按七列固定表格展示记录，用分组底色、档位标签、细分隔线和数字对齐保持层次。手机在表格区域内滑动，固定档位列；历史记录仍可展开、定位和加入对比。
- 浏览与覆盖视图支持搜索、模型和档位筛选；默认在各任务版本内按截图评分排序，同分按日期降序、ID 升序，无数值评分置后；显式选择模型排序时使用共享模型代际与档位顺序，也可切换为日期优先。排序作用于各版本内的实验；清除筛选保留当前提示词版本。
- 默认展示全部版本；`prompt`、`view`、`model`、`effort`、`q`、`sort` 查询参数可分享并随刷新、浏览器前进和后退恢复。搜索使用 replaceState，避免每次输入都新增历史。
- 覆盖矩阵行列来自当前筛选结果中的模型与档位。厂商与模型版本采用共享排序。单条实验直接展开，多条实验可按需展开；无记录与档位未记录分别表达，不推断模型能力。
- 390px 手机端将完整清单排为双列记录卡片，日期、供应商、工具、费用和耗时直接可见，不需要展开或横向滑动；覆盖视图按模型折叠，仅展示已有记录的档位，保留相同筛选与操作。

## 统一对比选择栏

- 对比页默认实时预览，顶部顺序为实时预览、截图比较、提示词差异、实验详情。首页、主题页和实验阅读页的对比入口遵循此默认值；分享链接明确指定的标签仍按链接恢复。
- 大屏顶部将主题导航居中，目录入口保留在左侧，模型、布局和分享位于右侧，内容与视口控制居中；手机自动换行。主题下拉框聚焦时可按 ↑/↓ 立即切换到上一项或下一项，旁边提供同样作用的按钮和操作提示；到首尾停止，不经过清空项。快捷键仅作用于主题下拉框，保留 Alt+↓ 等原生下拉操作，继续保留各栏所选模型及分享恢复能力。
- 顶部切换主题或提示词版本时，保留 A/B/C/D 各栏所选模型和偏好档位，换成这些模型在目标任务下的实验；当前记录仍属于目标任务时保留原轮次，否则优先同模型同档位，缺少该档位时按现有模型排序选择同模型的其他记录，界面显示实际档位。先为所有栏位保留精确匹配，再处理同模型回退，避免抢占其他栏位的同档位记录；所选实验不重复，原空位继续留空。
- 模型在目标任务没有记录时，该栏留空并提示所选模型，保留模型和档位偏好，切回有记录的任务时恢复；不以其他模型替代。模型偏好随 `leftModel/rightModel/thirdModel/fourthModel` 及对应 `Effort` 参数写入分享链接，刷新、前进后退和交换左右均保留；手动更换或清空实验时更新该栏偏好。
- 切换主题同步更新网址中的实验 ID，清除旧子页面、卸载和放大状态，手机回到 A，保留布局、内容标签和视口设置。清空主题时清空实验及模型偏好。初次选择主题且没有所选模型时，才按现有排序填入默认实验。此规则修正了 `34eb34a18c4730be0ce0d2d6a766758663328f0e` 仅更新候选范围而保留旧实验的行为，也避免切换主题时重置用户所选模型。
- 打开分享链接、刷新及浏览器前进后退时，以链接明确指定的实验 ID 恢复工作区，不因 `group` 不同而替换实验，保留手动跨主题对比；只有未指定实验和模型偏好时才按主题自动填入。
- 首页和主题页共享 sessionStorage 中的选择，最多四条；继续兼容旧版的两条选择。
- 展示每条实验的模型、档位、轮次、主题及提示词版本，支持逐条移除、清空与满额替换。
- 选择两条打开双栏，选择三至四条打开四宫格；未选第四条时保留空位，不自动填充其他实验。
- 所选实验使用稳定 ID 构造相对分享链接，支持 Pages 子路径。刷新与页面切换保留当前标签页内的选择。

## 运行条件对照

- 作为独立“条件对照”标签页，横向列出当前布局中的所选实验；A 为输入关系基准。
- 包括主题、模型、档位、轮次、日期、提示词版本、输入关系与指纹、输入留存、工具、上下文、产物、网络、技术栈和人工修改。
- “只看差异”按实际展示字段值筛选，至少两条有效实验才能使用。选项通过 `differencesOnly=1` 恢复。
- 缺失信息显示未记录；无预览实验可以参与条件对照；重复或失效 ID 明确提示。
- 条件视图不加载 iframe，切回预览会重新加载当前可见侧。移动端表格在自身区域内滚动，避免整页水平溢出。
- 相同输入或相同已知条件不代表工具、上下文和人工修改完整一致，不给出自动性能评分。

## 验证

浏览器回归覆盖根路径和 Pages 子路径的筛选恢复、矩阵计数及重复轮次、手机布局、四条选择的保存与替换、精确分享恢复、无预览与失效实验的条件对照。保留既有预览卸载、模块切换、直接打开和静态链接回归。

## 浏览信息口径

首页明确标出主题按任务复杂度排列，卡片直接显示任务复杂度；筛选数字以条实验为单位。主题卡片的“对比此实验”加入当前截图对应记录，提示完整模型身份与任务版本。截图评分用于选择当前筛选的代表截图，不表示跨任务模型排名。条件对照中两侧均未记录表示信息缺失，“只看差异”隐藏这些相同缺失值，不能据此宣称条件一致。


## 手机比较与实验摘要

双栏条件对照在手机按字段纵向展示 A/B 值，分为比较摘要、结果与消耗、完整证据；完整证据默认折叠，四宫格继续使用可横向滚动的完整表格。“只看差异”同时作用于两种展示。实验选择入口使用次级按钮，手机面板完整显示模型、档位与轮次。主题清单在选择实验后标出与当前基准的关系，清空选择即移除提示。

实验阅读页在历史正文之前显示从 run 元数据生成的摘要，包含模型、档位、版本、日期、输入留存、工具、评分、费用、耗时与人工修改。批次费用与耗时标明批次和案例数；未知信息不补造。手机提供返回本页目录的入口。新增摘要不改写历史 Markdown 正文。


## 展示与公共模块

蓝色用于主要操作和当前选择；截图评分使用中性色，输入不完整或不同的比较关系使用带文字的琥珀色提示。颜色令牌集中在 site.css。首页先排序和分页，再生成当前可见卡片；总计与筛选仍使用完整匹配集。URL 参数解码集中到 workspace-state.js，保留旧分享参数；条件展示模板集中到 compare-records.js，双栏手机与桌面共用字段值与差异过滤。

技术示例导航通过生成的 guides.js 读取 catalog/guides.json 的联网状态，不另维护 slug 判断清单；加载失败明确提示未载入，不能误报离线可用。404 迁移结果显示可读的主题、模型与档位，同时保留稳定实验 ID 和跳转锚点。
