summaryrefslogtreecommitdiff
path: root/docs/evidence/p64-verification.txt
blob: 4942afd21dfd72651658aab03fe095158ee165ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
P64 整改(Hermes vision 复核不通过)验证记录
基线:commit 4971a2a(保留,不重写历史);本单在其上整改。

整改三点
1) 桥梁栏杆可读性(原未达目标)
   - `scripts/make-jiangnan-art.py` slot5 重绘为「深墨栏杆体 (34,28,30) + 暖亮扶手线 (214,196,158)
     + 亮色望柱」三段对比;桥面木色 (119,76,47) 为中间调,栏杆与桥面差 >= 2 档。单格 32px、尺寸不变。
   - analyze-p64.py 新增判据 4「栏杆可辨」:按日志相机定位桥格,取两侧栏杆条带(相对桥格
     x 偏移 1..6 与 26..31,纵向 3 格);栏杆像素口径 = 亮色 r>150&g>130&b>100 或深色 r/g/b<80
     (纯桥面木色 ≈(119,77,47) 两类都不满足),要求左右两条带各自 rail_ratio >= 0.70。
2) 内景布局
   - `sampleRenderPlan.Interior` 改排到全屋四角/沿墙:窗(18,1) 上墙中、床(33,2)+床尾凳(33,5) 右上、
     屏风(34,11) 右下、桌(5,8)+椅(8,8)+壶(9,8) 左中、凳(5,11) 左下。
   - 新增纯函数 `interiorElementScreenRect`(drawInterior 改用它),供「不重叠/不压道」回归复用。
   - P64EvidenceTests 新增 `InteriorFurnitureIsSpreadAcrossRoomAndNonOverlapping`:8 件两两不重叠、
     覆盖 4 个象限、不覆盖房间中心通道。
3) 回归与收口:见下。

改动文件
- scripts/make-jiangnan-art.py、src/LivingVillage.Desktop/Assets/jiangnan-world.png
- scripts/analyze-p64.py(新增判据 4)
- src/LivingVillage.Desktop/VillageArt.fs(slot5 语义注释、interiorElementScreenRect、内景改排)
- src/LivingVillage.Desktop.Tests/P64EvidenceTests.fs(新增布局回归)
- docs/evidence/p64-{overview,bridge,interior}.png、p64-analysis.txt、p64-run-log.txt(重出)

构建/测试
- dotnet build LivingVillage.sln -c Release → 0 错误,1 警告(P40ArtTests.fs FS0760,既有)
- dotnet test LivingVillage.sln -c Release --no-build → Desktop 314/314(313→+1),Kernel 119/119

证据实跑(真实 Desktop + xvfb 1280x720)
LV_P64_SHOT=1 LV_LEGACY_MAP=1 xvfb-run -a -s "-screen 0 1280x720x24"(exit=0)
log:
  p64-plan upper_band_props=11 upper_band_kinds=4 bridge_props=1 bridge_foot_tiles=3 bridge_abutments=4 interior_elements=8
  p64-shot=p64-overview tick=2592000 avatar=(1008,688) camera=(384,344) home=Outside
  p64-shot=p64-bridge  tick=2592000 avatar=(1008,912) camera=(384,568) home=Outside
  p64-shot=p64-interior tick=2592056 avatar=(1008,763) camera=(384,568) home=Inside (HomeId 1)

scripts/analyze-p64.py → verdict: PASS
  p64-overview 1280x720 mean=86.3 std=33.3 黑块=0 白块=0
  p64-bridge   1280x720 mean=86.0 std=33.1 黑块=0 白块=0
  p64-interior 1280x720 mean=118.7 std=54.1 黑块=0 白块=0
  俯瞰上半部内容密度 (y120..360) = 0.1812(P62 基线 0.1030)
  桥区域木色占比 = 0.4047
  栏杆条带占比:overview left=0.942 right=0.933;bridge left=1.000 right=0.996(阈值 0.70)
  三帧两两不同;缺字空白位=0
check-no-white-blocks.py 三帧 → failures=0

确定性
--performance-baseline ×3 → 953775FAEB2FDDE97289491AA260BD8D390C571E48A7A13AD2CB6FB7124F7F6C ×3,PASS

边界
- 未改 Kernel/Sim、HUD 结构、字形表、外部素材、进门流程/HomeMode、512x384;未 push
- 逐帧视觉复核仍受本写入模型不支持图像输入限制(P60 G3)——本单按 Hermes vision 结论整改并量化;
  最终可否通过仍需 vision 能力方复核(范围外,不做)