095 忘れもの列車　技術・設計・体験の区別

最終版 1.0.2。固定３事件、乱数なし。全プレイ時間の保証はしていません。

自動の確認
・unittest 19件: 時刻表の独立期待値、写真の発見位置、乗車前の非表示。
・全事件×候補３人×既読根拠０/１/２件の全組合せで返却判定。
・同じ誤答は同じ一事実。未読根拠拒否、二件上限、終端停止、事件間独立。
・保存の往復、未知版保持、型/範囲/根拠/結末検査。
・同時入力拒否、開始押し残し、説明中のrelease同期、undo、確認取消、別事件。
・日本語字形、外国cwd、日本語空白パス、cp932出力環境、ASCII引用BAT。
・テスト前後にmedia内全ファイルSHA-256一致。実記録をテストで上書きしない。

戦略と比較
policy_results.json: A/B/C各３入力、計９件。早期０証拠、絞った調査、事情を全て読む。
全て返却に到達。早期の正答は、人が推理した証拠ではありません。
comparison_results.json: 同じ入力・同じ初期値・同じ返却目標で各事件２例。
並列写真／時刻タブは表示だけが異なり、モデルの最終ハッシュは一致。
過去の公開版との比較でも、人の理解しやすさの実証でもありません。

設計判断
読む順や、早く返す/寄り道して事情を知る選択を残しました。
答えを知った後の全フラグ収集を課しません。推理の入力と正しい返却は別に示します。
３人を総当たりできる点は仕様です。推理した実感が薄まるかは人に確認待ち。
全作品へ欲張り・損失を課す方針にはせず、ここでは観察と小さな発見を中心にしました。

ネイティブ記録
NATIVE_OBSERVATIONS.txt にUI経由のLinux観察を個別記載。
元のnative/automaticのevents.jsonと、起動時の実ソースコピーを保存。
1.0.0でB写真の小さい跡ラベルがカイの名前に近すぎる点を発見。
1.0.2で跡ラベルを右端へ移動。ルールと事件データは変更なし。
元記録を差替えず、derived_replay_validation.jsonで別途現行モデル照合。

映像
実際のPyxelの描画。自動の意味入力で進行する無音デモ。
元GIFの全フレームを一度ずつ30fpsでMP4へ。間引き・画像の再演なし。
タイミングは各automaticフォルダのtiming_validation.jsonに記録。
約25秒は動画再生時間であり、人が問題を解く所要時間ではありません。

未確認
人の初見理解・面白さ・再挑戦意欲、本作のWindows/macOS実機。
クラウド音声デバイスは初期化できません。本作は無音仕様で音質の主張はありません。
NOTE/Xは原稿候補。公開やLibraryへのアップロードはしていません。
