Files
TheTree_mock/docs/qa/P1_FIRST_OPERATING_DAY.md

3.5 KiB

P1 最小宿の単日検証

実施日: 2026-09-09。環境: macOS / Apple M4 / Godot 4.7.2。基準コミット 423fd6d から codex/first-operating-loop で実装。

今回の到達点

通常開始の5,000G・資材50から、通常UIの建築・雇用・配属処理を使い、受付1、一般客室2、通路7、日勤のアカネ1人で翌朝06:00まで進めた。客やサービスの直接挿入、無料の食材、見学用の完成施設は使用していない。時間は通常の1分Tickを省略せず進めた。

自然到着客の宿泊売上320G、受付売上6,020G、建築出金1,340G、契約金等の運営費180G、給与120G、確定利益6,040G、手持ち9,700G、未払0G。台帳照合は一致。00:00は第1営業日のまま、06:00に第2営業日へ移行する。専用テスト枠に保存し、復元後の全決算値・開業達成表示を確認した。

受付の反復利用による収益は現行値の記録であり、経営バランスの完成判定ではない。価格・受付会計・宿泊決済仕様の調整を課題台帳に残す。

実行結果

以下の2群で make check と make test の全構成ターゲットを実行し、両方が終了コード0、エラー0で完了した。

make check test-s0 test-s1 test-s2 test-s4 test-s5
make test-s3 test-s6 test-mvp test-acceptance test-ui test-perf
対象 結果
配属・再配属・継続勤務・旧保存互換 103 checks PASS
Pixel表示・カメラ・入力 238 checks PASS
既存Dashboard 121 checks PASS
従業員画面・開業ガイドの解除/予約 44 checks PASS
通常UIの建築から翌朝・保存再開 35 checks PASS
PERF-MVP-001 smoke 24 checks PASS

その他のS0〜S6・MVP・既存受入もすべて成功。生ログはローカルの artifacts/first-operating-day/core-regression.log と integration-regression.log に保存した。

初回はテストの保存先に res:// を指定したため拒否された。専用 user://tests/first_operating_day_<process_id>/restore-check へ変更した。Coordinatorが保存時にStringNameをStringへ正規化するため、表示用決算の往復比較はJSON表現の全値で確認する。実際の保存・復元および既存の厳密Snapshot検証も通過している。通常の手動セーブ先へ触れないよう、既存Dashboard試験もPID付き専用枠へ分離した。

画面と再現

make capture-opening は実描画で開始・配属後・決算の3画面と運営JSONを生成する。今回の画面確認は1440×810、従業員画面の独立確認は1280×720で行った。

  • artifacts/first-operating-day/opening.png
  • artifacts/first-operating-day/staffed.png
  • artifacts/first-operating-day/first-close.png
  • artifacts/first-operating-day/operating-report.json

生成物はGit管理の外にある。コード、Kenneyの取得元とライセンス、再現手順はGitに保存する。

残る判定

P1全体の補給・厨房・配送を含む3営業日は未合格。昇降機、配属先への実通勤と到着後の稼働、収支バランスは後続課題。配属APIは経路の存在を事前に検証するが、人物を移動させない。

既存14日受入の一部は日次境界を加速して検証する方式であり、全AIを含む20,160分の実Tick完走とは異なる。負荷試験は小規模な論理smokeで、実描画やWindows基準機の性能合格ではない。Windows書き出し・実機試遊・初見30分試遊は今回実行していない。