059 雪道の救助隊：5段階教材

Python3.11以上 / Pyxel2.9.9 / GUI対応PC。
ZIP全体を空のフォルダーへ展開します。通常の学習段階.pyは各一本だけでも動きます。

Windows:
py -3 -m venv .venv
.venv\Scripts\python.exe -m pip install -r requirements.txt
.venv\Scripts\python.exe 01_costs.py

macOS/Linux:
python3 -m venv .venv
.venv/bin/python -m pip install -r requirements.txt
.venv/bin/python 01_costs.py

02_contact.py → 03_prepare.py → 04_carry_home.py → 05_preview_undo.pyへ進みます。
本文はLESSON.md。コード変更後は保存→Esc終了→同じファイルを再実行。Rは状態リセットです。
全キーを離してから次の操作をします。キー一覧と実験は本文にあります。

テスト（Pyxelを使わない標準ライブラリーの検査）:
python -B -S test_stages.py
python -B -S qa/cp932_check.py
python -B -S qa/exercise_checks.py
python -B -S qa/verify_freeze.py
原作を別に展開し、PYXEL059_ORIGINALを元の059フォルダーへ設定すると直接原典照合2件も実行します。原典なしではその2件だけskipです。

自動描画検査:
python 05_preview_undo.py --headless-smoke --demo-checkpoint --output new_frame.png --state-json new_state.json
既存ファイルに上書きしません。出力先親フォルダーは先に用意します。相対出力先は起動した作業ディレクトリです。
これは自動入力による実Pyxel描画で、Windows/macOS実機GUI、物理キー、ブラウザー、人の学習試験とは別です。

原作と教材コード・自作図形はMIT。LICENSE/LICENSE.txtと各.py先頭の許諾を残してください。原作由来Noto字形の別条件はassets/NOTO-LICENSE.txt。教材のASCII画面には外部字形は不要です。Pyxelは別途導入します。
元の完成版プロジェクトはサイトの別ZIPです。架空のゲーム模型であり、現実の救助手順ではありません。

検査範囲と限界はqa/REVIEW.md、測定値はqa/final-results.json、完全性はFROZEN_SHA256.jsonにあります。PyxelのMIT通知もassets/PYXEL-LICENSE.txtに保持しています。
