第19篇验证记录 日期2026-09-20 代码SHA256: 3838f3894d7cab6f3309f628e3b6e4c8314fdeabb2eaf58dc04546e66fae8550 主class SHA256: ccaeaf3fbb483babad5d3d3aced7ed09b861da1b86e6653831ddc00a64f81cf5 固定17 helper源码SHA256: f3189a705e0806cf313e260ddccfa1183daf67fd8aeb8768f053bf4c3f255690 产品3.9.6-a355171b081b5b60749db8f19cca1528b0df936f,Java17。 官方binary包SHA512: e999626df06de30dc8bb53bb51da9bb786b1658406adafc6b92f104d72ca25e869f70a57c83a726f8b9558cc0fb519fc20f201aa5d6da09884bc4be5fe6dd3b0 作者实际编译(cwd仓库根): /opt/homebrew/opt/openjdk@17/bin/javac -cp 'examples/distributed-systems/.build/zk17/classes:examples/distributed-systems/.build/apache-zookeeper-3.9.6-bin/lib/*' -d examples/distributed-systems/.build/zk19/classes examples/distributed-systems/zk19/Zk19.java 编译exit0。 实际运行(cwd examples/distributed-systems): /opt/homebrew/opt/openjdk@17/bin/java -cp '.build/zk19/classes:.build/zk17/classes:.build/apache-zookeeper-3.9.6-bin/lib/*' Zk19 > .build/zk19/author-run.txt 2>&1 经环境正规require_escalated允许回环监听,三个场景全部PASS,exit0,session56460/chunk e1f4c8。 本轮不是系统防护终止,无换名绕过。 临时目录缺口:以上实际命令没有覆盖JVM默认临时目录。日志java.io.tmpdir仍指向/var/folders下系统临时目录;无法确认JVM/依赖内部是否写入。显式源码、class、日志和server数据都在仓库,不能据此把“所有内部写入均在仓库”当事实。 随后暂停新增实验执行;README和正文命令已加入TMPDIR=$PWD/.build/zk19/tmp、javac -J-Djava.io.tmpdir=...、java -Djava.io.tmpdir=...,尚未用此修订命令运行。没有重跑来替换旧证据。 父静态审阅最终Java已完成,未见阻塞;父独立运行及CLI尚未执行。这些是未验证项。 后续父验收:复用既有classes,TMPDIR及-Djava.io.tmpdir均指向仓库.build/zk19/tmp;--help退出0(e3a80e),--invalid退出2(1d2bff)。未启动服务、未新增编译。父完整故障场景独立运行仍未执行,不能把CLI结果当故障实验复验。 首次npm run build退出0(session17215,6e40c1),日志.build/zk19/hexo-build.log。浏览器六SVG尺寸分别786x447、355x634、460x478、426x1110、786x620、458x670,无error日志,fencing图截图检查可读。发现首段post_link后的Markdown课程链接未解析,仅加空行分段修复,不改散文措辞;该局部格式修改豁免重复双扫描。修复后构建与链接回读另记。 实际server数据 .build/zk19/run-8556719035995119038。 安全检查:所有监听127.0.0.1随机端口,只有自己的run目录;仅本机开放ACL。自然过期使用代理断链,不用close/server.expire;结束及异常时关闭资源。 以下摘录原始TRACE/PASS,省略INFO/DEBUG及网络断连堆栈;不是完整日志。GUID/session/毫秒只是这次独占本机观察。首轮自然过期最终通过恢复握手SessionExpiredException终止旧handle,未声称覆盖客户端本地expirationTimeout分支。 TRACE 33ms A WatchedEvent state:SyncConnected type:None path:null zxid: -1 TRACE 45ms B WatchedEvent state:SyncConnected type:None path:null zxid: -1 TRACE 54ms C WatchedEvent state:SyncConnected type:None path:null zxid: -1 TRACE 56ms VERSION 3.9.6-a355171b081b5b60749db8f19cca1528b0df936f, built on 2026-09-03 19:29 UTC negotiated=8000 data=.build/zk19/run-8556719035995119038 TRACE 99ms predecessor-1 WatchedEvent state:SyncConnected type:NodeDeleted path:/queue/candidate-5ad397ad-d7cf-4fd1-907e-898f8bbaae57-lock-0000000000 zxid: 8 TRACE 111ms predecessor-2 WatchedEvent state:SyncConnected type:NodeDeleted path:/queue/candidate-9e9bca8c-dfef-4853-a61e-942a3a9bb47a-lock-0000000001 zxid: 9 TRACE 111ms predecessor-2 WatchedEvent state:SyncConnected type:NodeDeleted path:/queue/candidate-9e9bca8c-dfef-4853-a61e-942a3a9bb47a-lock-0000000001 zxid: 9 TRACE 135ms predecessor vanished before exists; relist /queue/candidate-9090dfd2-942e-42f6-a71f-d0b0a3eae772-lock-0000000003 PASS queue: numeric order; direct predecessor chain; no false C acquisition; list/exists deletion race relists TRACE 158ms reply-client WatchedEvent state:SyncConnected type:None path:null zxid: -1 TRACE 159ms target create xid recorded before forwarding=1 TRACE 167ms DROP complete create response xid=1 err=0 zxid=17 TRACE 269ms reply-client WatchedEvent state:Disconnected type:None path:null zxid: -1 TRACE 2040ms reply-client WatchedEvent state:SyncConnected type:None path:null zxid: -1 PASS lost reply: successful TCP response dropped; ConnectionLoss; same-session GUID recovery finds one; blind retry creates two TRACE 2185ms reply-client WatchedEvent state:Disconnected type:None path:null zxid: -1 TRACE 2297ms reply-client WatchedEvent state:Closed type:None path:null zxid: -1 TRACE 2319ms old-holder WatchedEvent state:SyncConnected type:None path:null zxid: -1 TRACE 2336ms proxy BLOCK TRACE 2441ms old-holder WatchedEvent state:Disconnected type:None path:null zxid: -1 TRACE 10740ms predecessor-1 WatchedEvent state:SyncConnected type:NodeDeleted path:/fence/candidate-b5314da4-8b3e-48bc-a124-271b4508b84f-lock-0000000000 zxid: 26 TRACE 10746ms proxy ALLOW TRACE 11390ms old-holder WatchedEvent state:Expired type:None path:null zxid: -1 PASS fencing: natural expiry; old token accepted before high-water advance; new token accepted first; late old write rejected atomically only by fenced resource PASS ALL: actual ZooKeeper lock APIs and TCP loss; fencing resource is an explicit nonpersistent memory model TRACE 11517ms A WatchedEvent state:Closed type:None path:null zxid: -1 TRACE 11631ms predecessor-4 WatchedEvent state:Closed type:None path:null zxid: -1 TRACE 11631ms B WatchedEvent state:Closed type:None path:null zxid: -1 TRACE 11748ms C WatchedEvent state:Closed type:None path:null zxid: -1 写作门禁:blog-editor入口、blog-illustrator六图,父全文审读后补五节点分区及移交过程记录;anti-ai-tone tech最终汉字3499错误0提醒0,其后anti-persona-fabrication人工与词扫描通过,最后落source。扫描文件.build/zk19/tone.txt与persona.txt。未新增实验运行,源码与class保持上述SHA。站点构建/图示渲染待父执行,未预填结果。