069 沈黙の証人

最初に思い出してほしいものを選ぶ、忘れ物の聞き取りゲーム。
A/B/Cは独立した固定事件です。地図・写真・時計の最初の一枚だけ細部、残りは大分類。実際の記憶や尋問手法を説明する作品ではありません。沈黙・表情・応答速度を嘘の根拠にしません。

目的
一枚以上の回答を聞き、回答と両立する候補を全部残して報告すること。一件に決められない正式な報告も成功です。時間制限なし、全資料を読む義務なし。真相だけを勘で選び、まだ消せない候補を除外すると認定されません。

操作
SpaceまたはZ 開始。上下 資料、Z 提示。左右 候補、Space 残す/除外、Enter 報告。A 補助照合。X 直前の判断へ戻す。R 同じ出来事の再演、P 説明/停止、1～3 事件、B 比較版切替と再演、S 決定的記録を書き出す、M 表紙、Esc 終了。画面の同時決定入力は一操作だけ受理し、離すまで次の決定を受け付けません。

起動
Windows: setup.batを一度実行し、play.bat。Python 3.10以上とインターネットでPyxel導入が必要。Windows実機は未検証です。
macOS/Linux: sh setup.sh、sh play.sh。ランタイムはPyxelとPython標準ライブラリのみ。日本語ビットマップ字形と全文ライセンス同梱。開発用の文字生成・動画変換だけPillow/ffmpegを使います。

記録と検証
python -m unittest -v test_model test_ui / python experiments.py
model.pyは不変Stateとstep、本文/図形の共通候補データ、正規化JSONのSHA-256を持ちます。任意seedではなくA/B/Cの有限bank。1試行128状態変更、セッション記録512意味入力。Sはrecordsへ設定・意味入力・論理順・終状態を保存。拒否された提示はモデルを変えません。

一変更比較
Bで精度規則だけを全資料細部に変更。候補・真相・本文集合・目標は共通。共通目標は根拠に沿う集合報告。108通りの順序/途中報告を両版で検査。一意に至る順も両版・全事件に存在します。A時計先は最後までH1/H2、B地図先もH1/H2、C地図先はH3/H4。時計や写真が常に正解という規則ではありません。

media内は自動操作の実Pyxel無音映像と、別フォルダのエージェントによるLinuxネイティブ操作記録。人の試遊や音の評価ではありません。元のコードsnapshotとイベントを保存し、後日の再検査で上書きしません。
