summaryrefslogtreecommitdiff
path: root/docs/evidence/p62-verification.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/evidence/p62-verification.txt')
-rw-r--r--docs/evidence/p62-verification.txt47
1 files changed, 47 insertions, 0 deletions
diff --git a/docs/evidence/p62-verification.txt b/docs/evidence/p62-verification.txt
new file mode 100644
index 0000000..3c7f571
--- /dev/null
+++ b/docs/evidence/p62-verification.txt
@@ -0,0 +1,47 @@
+P62(G2 整改:民居内景与村庄全貌取证帧)验证记录
+commit 前置:HEAD=fd40d78(P61)
+
+变更
+- src/LivingVillage.Desktop/Game.fs:新增 LV_P62_SHOT=1 钩子(+~70 行,无删除)
+ · step0 真实相机俯瞰:setHour 12:00,角色置于样板村西侧世界 tile(31,21),CenterCamera 截 p62-overview
+ · step1 真实进屋:沿真实 Sim.step 向村舍门 tile(31,23) 移动,抵达后真实 M5Command.Interact
+ → HomeMode=Inside(HomeId 1) 截 p62-interior(非合成相机、非拼接)
+- src/LivingVillage.Desktop.Tests/P62EvidenceTests.fs(新,+2 测试)
+ · InteriorEntryViaRealInteractReachesInsideMode:门口真实 Interact → Inside(HomeId 1), status="home entered"
+ · OverviewViewportContainsWholeSampleVillage:俯瞰点居中后样板村落全部元素+门口均落 1280x720 视口内(钉住"全貌")
+- src/LivingVillage.Desktop.Tests/LivingVillage.Desktop.Tests.fsproj:加入 P62EvidenceTests.fs
+- scripts/analyze-p62.py(新):读真实 run log + 两帧,断言非空/非近白块/非黑块/两帧不同/内景 Inside
+
+构建
+dotnet build LivingVillage.sln -c Release → 已成功生成,0 错误,1 警告(P40ArtTests.fs(38,28) FS0760,既有)
+
+测试
+dotnet test LivingVillage.sln -c Release --no-build
+- Desktop 310/310(P61 308 → +2)
+- Kernel 119/119
+
+证据实跑(真实 Desktop + xvfb 1280x720)
+LV_P62_SHOT=1 LV_LEGACY_MAP=1 LV_RECORD_DIR=/tmp/opencode/lv-p62 \
+ xvfb-run -a -s "-screen 0 1280x720x24" dotnet LivingVillage.Desktop.dll(exit=0)
+log:
+ p62-shot=p62-overview tick=2592000 avatar=(1008,688) camera=(384,344) home=Outside
+ p62-shot=p62-interior tick=2592020 avatar=(1008,741) camera=(384,344) home=Inside (HomeId 1)
+(角色由 (1008,688) 真实走到 (1008,741) 后 Interact 进门 → tick 前进 20)
+
+scripts/analyze-p62.py /tmp/opencode/lv-p62 docs/evidence/p62-analysis.txt → verdict: PASS
+ p62-overview.png 1280x720 mean=85.2 std=31.8 max_dark_block=0 max_white_block=15
+ p62-interior.png 1280x720 mean=118.8 std=54.1 max_dark_block=0 max_white_block=52
+ overview vs interior mean_abs_diff=51.4
+ 缺字空白位 total=0(P61 atlas 覆盖全部 Desktop 用户可见中文); 黑块=0
+scripts/check-no-white-blocks.py p62-overview.png p62-interior.png → checked=2 failures=0 OK
+
+确定性
+LivingVillage.Headless.dll --performance-baseline ×3 → final_digest=
+953775FAEB2FDDE97289491AA260BD8D390C571E48A7A13AD2CB6FB7124F7F6C ×3,performance_determinism=PASS
+
+边界
+- 未改 src/LivingVillage.Kernel/Sim.fs / Sim.step;未动 Kernel/Sim 地图与 seed 口径
+- 未引外部素材;HUD/对话框未结构重排(仅新增钩子,全部新增行)
+- 内景取证在可玩样板地图(LV_LEGACY_MAP=1,即 SampleScript 真实进门所用的样板场景);
+ 256x192 生成器世界里的"村民居可进入"未在本切片取证(超出 G2 范围,留待后续)
+- 图像逐帧视觉复核仍受本写入模型不支持图像输入限制(见 P60 G3),需 vision 能力方复核