# NavSea 20nm Small Scope Audit Method ## Goal 用小范围图像对比去服务两件事: - 整理出当前继续收敛的唯一 `style.json` - 建立一套比“只看后台数字”更可信的审计方法 这份方法不追求一次解释全部问题,只服务当前固定视觉基线: - compare page: - `http://192.168.200.184/newpec/navsea-compare-karatsu-20nm.html` ## Current Style Under Test 当前继续整理、继续改的唯一 style 文件是: - repo source: - [`src/pbf/style.navsea-delivery-karatsu-10nm.json`](/root/sourceserver/pbf/src/pbf/style.navsea-delivery-karatsu-10nm.json) - deployed copy: - `/mnt/sda1/www/newpec/domain/style.navsea-delivery-karatsu-10nm.json` 说明: - 虽然文件名里仍写着 `10nm` - 但当前 `20nm compare` 右侧实际就是用这份 style - 所以后续视觉复原应继续收敛这一个文件 - 不再新增新的 delivery style 主文件,除非明确要分叉方案 ## Why Small Scope 整屏图像 diff 太粗,只能说明“还是不一样”。 当前更有效的方法是: - 只盯 3 个代表性热点 - 每个热点绑定一类 backend 容易误判的问题 - 用小范围截图 + 点击拾取 + backend issue family 一起判断 这样做的目的不是追求一个漂亮的整屏 diff 数字,而是: - 让 style 修改有明确观察点 - 让 backend audit 的问题项能和肉眼问题真正对应上 ## Pilot Hotspots 当前试验版热点配置文件: - [`strict_audit_hotspots_20nm_pilot.json`](/root/sourceserver/pbf/strict_audit_hotspots_20nm_pilot.json) 这 3 个热点分别代表: 1. `takashima_main_harbor_marks` - 看灯塔、小灯、红绿标识、近岸航标 - 对应 backend: - `p航路標識群` - `safety_icon_missing` - `text_missing_in_engineering` 2. `takashima_inner_nearshore_hazards` - 看鱼礁、碍航点、近岸混合符号 - 对应 backend: - `p投錨注意障害物` - `p航行危険障害物` - `p航路標識群` 3. `east_breakwater_marks` - 看远一点的防波堤灯台、港口标记 - 对应 backend: - `p航路標識群` - `safety_icon_missing` ## Pilot Run 当前试验版报告: - [`report/strict_audit_pilot/strict_audit_summary.md`](/root/sourceserver/pbf/report/strict_audit_pilot/strict_audit_summary.md) - [`report/strict_audit_pilot/strict_audit_summary.json`](/root/sourceserver/pbf/report/strict_audit_pilot/strict_audit_summary.json) 热点截图目录: - [`report/strict_audit_pilot/hotspots`](/root/sourceserver/pbf/report/strict_audit_pilot/hotspots) 本轮试验结果: - `takashima_main_harbor_marks` - changed ratio: `0.783759` - `takashima_inner_nearshore_hazards` - changed ratio: `0.744246` - `east_breakwater_marks` - changed ratio: `0.617833` 当前解读: - 这 3 个热点都足够敏感,能稳定反映当前 style 还没有复原到位 - 其中主港航标区最适合做第一优先级视觉回归观察点 - 东侧防波堤区差异最小,适合做“有没有被新改动误伤”的回归点 ## Trustworthy Audit Method 当前建议的可信审计方法是四件事一起用: 1. 固定视觉页面 - 只看 `20nm compare` 2. 小范围 AOI 图像审计 - 只跑固定热点,不看整屏大 diff 做结论 3. 点击拾取 - 在 compare 页里点具体对象 - 看右侧实际命中的 `source`、`source-layer`、`render layer` 和属性 4. 对象级 backend audit - 用 `10nm rerun` 那套可回对口径 - 主要检查: - `missing` - `extra` - `mismatch` ## Decision Rule 以后判断一次 style 修改是否可信,按这个顺序: 1. 修改 [`src/pbf/style.navsea-delivery-karatsu-10nm.json`](/root/sourceserver/pbf/src/pbf/style.navsea-delivery-karatsu-10nm.json) 2. 部署到 `/mnt/sda1/www/newpec/domain/style.navsea-delivery-karatsu-10nm.json` 3. 用固定页面肉眼看 3 个 pilot hotspots 4. 跑一次: ```bash python3 navsea_strict_audit.py \ --hotspots-json /root/sourceserver/pbf/strict_audit_hotspots_20nm_pilot.json \ --output-dir /root/sourceserver/pbf/report/strict_audit_pilot ``` 5. 对热点里仍然不对的对象做点击拾取 6. 再决定问题属于: - style 表达式问题 - sprite / runtime 问题 - delivery PBF 语义字段不足,需要回 builder ## Current Conclusion 当前已经可以固定下来的东西是: - 视觉基线: - `http://192.168.200.184/newpec/navsea-compare-karatsu-20nm.html` - style source of truth: - [`src/pbf/style.navsea-delivery-karatsu-10nm.json`](/root/sourceserver/pbf/src/pbf/style.navsea-delivery-karatsu-10nm.json) - 小范围试验审计: - [`strict_audit_hotspots_20nm_pilot.json`](/root/sourceserver/pbf/strict_audit_hotspots_20nm_pilot.json) - 可信方法: - `20nm compare 肉眼审图 + 小范围 AOI 图像对比 + 点击拾取 + 10nm 对象级 backend audit` 这套方法比“只看 20nm backend 总数”更可信,也比“只看整屏图像 diff”更可操作。