064 すれ違い日記：5段階Pyxel教材

ねらい：採用した事実と両立する有限世界を残し、全世界で成り立つ一行だけを確実とする。
予定・観測・本人の目的・他人の行動を混同しない。二つの結末はどちらも完成です。

Python 3.11+ / Pyxel 2.9.9。実検証：Linux / Python 3.12.14、無音。
必要なら仮想環境を作り、python -m pip install -r requirements.txt。
制作時にはインストールを行っていません。

このフォルダで順に実行：
python 01_worlds.py          公開二札で10世界を絞る
python 02_read_place.py      開放・既読・配置を分ける
python 03_entailment.py      保留／矛盾／根拠不足／完成
python 04_private_topics.py  三事件・本人の説明・既知根拠だけの照合
python 05_undo_endings.py    原作全モデル・Undo・同等の二結末

各.pyは単独で別フォルダへ置き、改名しても起動できます。兄弟.pyやassetsを読みません。
詳細な理由、期待結果、文字列編集課題、原作との差はLESSON.md。
コード編集は保存→Esc終了→同じ.pyを再実行。Rはソースを読み直しません。

上下：話題 / Z：読む / Space：配置・除去 / 左右：03以降の結論候補
Enter：03以降の提出 / 1,2,3：04以降の事件 / H：04以降の既知根拠照合
X：05のUndo / Tab：05のWON後の結末選択 / R：初期化 / Esc：終了
01だけは左右で二札を選び、Spaceで使います。一操作ごとに全キーを離してください。

原作本文とデータは日本語、UIはASCII訳。原作の人物別UI・日本語反証詳細・表紙・停止・
記録・比較切替・録画・音は省略。Hは未知の返事を先読みしません。
Cでは全件読んでも作者・意図は未確定。全件質問や一世界への確定は完成条件ではありません。
配布コードの閲覧を防ぐ情報セキュリティ機能ではありません。

検証：python -B test_stages.py
CP932既定読み：python -B qa/cp932_check.py
実編集・操作：python -B qa/exercise_checks.py
実描画：python -B qa/runtime_checks.py 新規フォルダ
境界描画：python -B qa/render_boundaries.py 別の新規フォルダ
凍結確認：python -B qa/verify_freeze.py

PNG/JSON出力はheadless限定、新しいファイル・正しい拡張子・既存の親フォルダが必要。
両出力をPyxel読込前に絶対化し、起動cwdとスクリプト隣の同名ファイルを保護します。
qa/REPORT.mdに実測範囲と未検証範囲があります。実ブラウザ、Windows/macOS GUI、
物理キー、可聴音、人の学習効果は未確認。外部公開・アップロードはしていません。

原作MIT全文：LICENSE / LICENSE.txtと各.py先頭。
Noto字形のOFL：assets/NOTO-LICENSE.txt（字形自体は教材UIでは不使用）。
Pyxel MIT：assets/PYXEL-LICENSE.txt。依存本体は同梱しません。
