# 版本记录(观澜·如东样板 v2) > 本文件由 `scripts/version_log.py` 生成,**勿手改**:事实(版本号、级别、变更)写在 > `src/version.py` 的 `HISTORY` 里,改完跑 `python scripts/version_log.py --write`。 > `guanlan.py check` 与打包器都会校验本文件与代码里的版本号是否一致。 ## 版本号规则(用户令 2026-09-17) 编号 **`v<大版本号>.<中版本号>.<小版本号>`**,例如 `v2.74.0`。 | 级别 | 含义 | |---|---| | 大版本号 | 系统解决方案、架构或核心功能改变 | | 中版本号 | 非核心功能新增、减少、修改 | | 小版本号 | 消缺完善 | **怎么改**:改动落在"解决方案/架构/核心功能" → 大 +1(中/小归 0);落在"非核心功能的新增/减少/修改" → 中 +1(小归 0);只是"消缺完善" → 小 +1;一次发布混了几类,取最高那一级 **打包文件名** = `app_guanlang_v2.74.0.zip`(规则:`app_guanlang_v<版本号>.zip`)。 版本号只写在 `src/version.py` 一行(`VERSION = '2.74.0'`);打包器、安装脚本、安装记录 `install-info.json`、自检都读它,不另设真源。 | 版本 | 日期 | 级别 | 主要变更 | 说明 | |---|---|---|---|---| | `v2.74.0` | 2026-10-03 | 中 | 对拍判据稳定化(预热 + URL 缓存 + DOM 稳定等待);步骤⑤之一:文本/表格/图数字复核 | ① **判据稳定化**:多页签合跑时基线页元素数曾波动(report 66/61、generation 48/166),根因是基线页自身按异步取数渲染。已在 `tools/struct_diff.mjs` 加:(a)起跑前 `warmup()` 把 `/api/fleet` 追到非 pending;(b)fetch 桩按**完整 URL 缓存**(同轮同 URL 同一份);(c)基线页渲染后等 **DOM 稳定**(连续 3 次子元素数一致)。连跑两遍全量结果**完全一致** ⇒ 判据可复现。② component 的 +1 已定位到确切位置与性质:**基线里"振动融合已迁移"提示块嵌在九系统卡的 `
` 内部**(不是独立 section);Vue 侧把它改成 `