Files
TheTree_mock/docs/plans/original-completion-2026-10-02/execution/p07-01/wx/SPEC.md
T

11 KiB
Raw Blame History

P07-01-WX 仕上がった天候の機能の受入(マナ炉の産出を除く) 仕様(登録版 r01。P07-01 の補助の作業)

  • 状態: 登録の前の仕様。Root が main の docs/plans/original-completion-2026-10-02/execution/p07-01/wx/SPEC.md に固定し、その commit を base_commit にして通常の登録をする。出典は同じフォルダの PROVENANCE.json。
  • 位置づけ: Root の通常の owner の順序づけ(Root の記録 2026-10-23T19:36:14Z)による、原 P07-01 の作業の範囲の分割。人の新しいゲームの仕様の承認ではなく、原 P07-01 の受入の削除でもない。
    • 原 P07-01(仕様 ../SPEC.md。決定 A13、../PROVENANCE.json)の F1〜F8、霧の境界のマナ炉 120、原 88 の分母は、どれも未達のまま保つ。
    • この補助の作業の原本への加算は 0。
  • 前提: ユーザーの言葉(原文。Root が確かめたもの)「開発作業を進めて。」「統合試験の動作速度のチューニングを、今やるよりも機能実装の完了を優先して」。発言の日時は、元の答えを特定できないので書かない。原 P07-01 の task(project the-tree-p07-01)は、commander の判断 wait(event 5)で保持している。

1. 原本の条件と決定(変えない)

  • 原 P07-01 の work・acceptance・原子要件・横断条件・決定 A13 は、原の仕様 ../SPEC.md §1・§2 のとおり。
  • 原の受入 F1〜F8 は ../SPEC.md §6 のとおりで、この補助の作業はそれを書き換えない。

2. この補助の作業が受け入れるもの

原の仕様 §4・§5 の挙動のうち、次のものを受け入れる。§3 の持ち越しで、もう実装されている。

  • 自然天候(原 §4.1): 毎日 06:00 の1回の抽選、保存される系列 weather、出来事 WEATHER_FORECAST_DRAWN。
  • 雨の来客(原 §4.2)、雨の滞在(原 §4.3)、嵐(原 §4.5)。
  • マナ霧のうち、世界樹の産出(20→24)と、成人確認済みの客の性欲の増加(floor(×1.5))(原 §4.4)。
  • 上部の表示と予報(原 §4.6)、同時の扱い(原 §4.7)、保存と移行と拒否(原 §5)。

受け入れないもの(§6 の残件): 霧の境界のマナ炉の産出 120(原 §4.4 の炉の部分、原 F5 の炉の句)。

  • この補助の作業の要件 ID: P07-01-WX(受入 WX1〜WX8 の要件)。
  • 契約に並べる原子要件(原 §1。この補助の範囲で全部を満たすもの):
    • AR.weather.rain_arrivals
    • AR.weather.rain_stay
    • AR.weather.fog_excitation
    • AR.weather.storm_no_arrivals
    • AR.ui.hud_weather
  • 並べない原子要件: AR.weather.fog_magic(マナの霧で魔法効率が上がる)。A13 の問いの3項目め(原文は ../PROVENANCE.json)は「マナ霧の「魔法効率上昇」は世界樹・マナ炉の産出1.2倍」なので、炉の部分の無いこの作業では閉じない。
  • 原 §1 の横断条件(P07)は、この補助の範囲でもそのまま求める。

3. 持ち越しと、この作業で直すもの

  • 持ち越し: 原の task の提出 S dfacc83d0afdd322a6389e131b87d3205e5ac9c8(基準 4654789)の差分 24 ファイルを、bytes のまま後継の W に当てる。
    • 当て方は CARRY_OVER_DFACC83.patch(git apply)で、当てた後に全ての path を CARRY_OVER_DFACC83.json の SHA-256 と照合する。2つのファイルの path と SHA-256 は PROVENANCE.json の inputs。
    • 製品を作り直さない。持ち越した 24 ファイルは、下の照合の直し(tools/run_p07_weather_tests.py)を除いて変えない。
    • この作業の記録は ./IMPLEMENTATION_NOTES.md(この wx/ のフォルダ)に新しく書く(持ち越しの方法、照合の直し、§6 の訂正)。
    • S dfacc83 の局所の確認と native の収集(照合で exit 1)は、原の task の記録のままにし、後継の証拠に流用しない。
    • 持ち越す ../IMPLEMENTATION_NOTES.md §3 の「(P06 の未決定)」は誤り。正しい前提は §6 のとおりで、訂正は ./IMPLEMENTATION_NOTES.md に書く(持ち越しのファイルは bytes のまま)。
  • 直すもの: 登録の照合の道具 tools/run_p07_weather_tests.py の照合(verify)。S dfacc83 の native の収集では 14 本の suite が全て PASS したが、照合が old_bounded_teardown の suite の制御の環境を知らずに止まった。
    • 直し方は VERIFY_OLD_BOUNDED_FIX_DRAFT_R01.md(原の task の管理の記録。path と SHA-256 は PROVENANCE.json)のとおり。
    • ordinary_cleanup_prepared と old_bounded_teardown の両方の suite について、次を厳密に照合する。
      • 共通の収集(main 4654789 の tools/run_all_tests.py 172〜176・207〜208 行)と同じ制御の環境
      • 後片付けの証明(ordinary_gate・teardown_gate)の再照合
      • hash と証明
    • 検査を消したり、任意の環境を許したりしない。
  • 後継の検証で別の失敗が出た時: 失敗の原文を保存し、./IMPLEMENTATION_NOTES.md に原因と直しを書いてから、契約の allowed_paths の中で直す。直した後の確かめは、その失敗に関係する範囲だけにする。
  • 変えないもの: 固定された ../SPEC.md・../PROVENANCE.json・./SPEC.md(この文書)・./PROVENANCE.json。

4. 受入条件(acceptance_baseline の本文と同じ)

  • P07-01-WX1 自然天候: 毎日 06:00 に1回だけ、原 SPEC §4.1 の確率・開始の時刻・続く時間で天候が自然に予定され、同じ world_seed と同じ操作で同じ天候の列になる。新しいゲームの開始の日も抽選され、旧 save は原 SPEC §5.2 のとおり移行する。
  • P07-01-WX2 雨の来客: 雨の間の来客の計画の新規の人数が、同じ条件の晴れの半分(切り捨て)になり、嵐の 0 と定員・マナの上限を壊さない。
  • P07-01-WX3 雨の滞在: 雨の間に帰りの時刻になった客が、雨の終わりか元の予定 + 240 分の早い方まで1回だけ残り、その後は今の規則で帰る。嵐と霧では延びない。
  • P07-01-WX4 嵐: 自然の嵐を含め、嵐の間の新規入館が 0。
  • P07-01-WX5 マナ霧(炉を除く): 霧の間のマナの境界で世界樹 24(上限 300 のまま)、成人確認済みの客の性欲の増加が floor(×1.5) になり、霧の外と成人確認の無い客は変わらない。マナ炉の産出 120 はこの補助の作業では受け入れず、通常の営業での達成を主張しない(炉の産出の経路が無いので、貯蔵の規則の単体の確かめは開示として扱う)。
  • P07-01-WX6 表示と予報: ゲームの本物の Runtime と Main の上部の表示で、今の天候・次の切り替え(種類と時刻)・効果の案内が Runtime の値と一致する。
  • P07-01-WX7 保存と再開: 天候の切り替えの直前・直後・途中の保存を、同じ process と別の process で読み、天候・予定・系列・来客・滞在の延長・霧の効果が同じになり、二重に効かない。旧 save は原 SPEC §5.2 で読め、不正な状態は原 SPEC §5.3 で拒否して状態を保つ。
  • P07-01-WX8 回帰と照合: 関連の回帰(狭い roster と再開の2段)と後継の S の全 roster(既存の代表負荷の性能の suite を含む)が PASS。登録の照合が、ordinary_cleanup_prepared と old_bounded_teardown の両方の suite について、制御の環境と後片付けの証明・hash を厳密に照合する。既存の試験の期待値の変更は EXPECTATION_CHANGES.json に変更前後と根拠を一覧にする。元の失敗(S dfacc83 の native の照合の失敗を含む)を保存し、未解決の試験を除いて PASS にしない。

5. 原 F1〜F8 との対応

原の受入 この補助 扱い
F1 自然天候 WX1 同じ本文
F2 雨の来客 WX2 同じ本文
F3 雨の滞在 WX3 同じ本文
F4 嵐 WX4 同じ本文
F5 マナ霧 WX5 世界樹 24 と性欲 ×1.5 だけ。炉 120 は §6 の残件
F6 表示と予報 WX6 同じ本文
F7 保存と再開 WX7 同じ本文
F8 回帰 WX8 同じ要求に、照合の厳密さ(両方の後片付けの suite)を足す
  • この補助の作業が合格しても、原 F1〜F8 の whole-unit の受入にはならない。原 P07-01 の完了は、§6 の残件を満たした後に、原の全8条件の独立レビューと通常の統合・final を経てだけ数える。

6. 残件(原 P07-01 の未達として保つもの)

  • 霧の境界のマナ炉の産出 120(原 §4.4・F5 の炉の句)と、マナの霧で魔法効率が上がる原子要件。今のゲームには、炉の施設も、炉が産出を入れる経路も無い(持ち越しの ../IMPLEMENTATION_NOTES.md §3、原の task の P07_01_F5_FURNACE_SCOPE_DECISION_R01.md。path と SHA-256 は PROVENANCE.json)。満たすのに要るもの:
    • P13 の炉の施設(AR.facility.mana_furnace.exists・footprint(D06)・zone・layer など)
    • D04 のユニットの消費(AR.facility.mana_furnace.unit_consumption)
    • A06 の別承認(炉の人物の適格性と収率の実接続。docs/plans/original-completion-2026-10-02/decisions.json の A06 の原文「炉の人物適格性・収率の実接続は別承認。」)
  • 原 P07-01 の whole-unit の独立レビュー・通常の統合・final。

7. 検証

  • validation p07-weather(tools/run_p07_weather_tests.py --output {build_dir}/p07-weather-evidence。持ち越した道具に §3 の直しを入れたもの)。
  • 狭い roster は原 SPEC §8 と同じ 12 本と再開の2段(実 16 段)。
  • 手順: 持ち越しと照合の直し → 局所の確認(直した道具の --prepare-only を含む)→ 通常の submit → 後継の S で native の収集 → 正式の validation → 空きを 2.6 GB 以上と実測してから全 roster を1回 → 後の圧縮 → 配置 → 凍結 → 別の新しい Opus の独立レビュー(この補助の範囲で whole-unit。炉の産出を主張していないことの確かめを含む)→ 通常の統合と final。
  • 速度の調整の作業と、微小な変更ごとの全回帰はしない。

8. 開示

  • 持ち越した IMPLEMENTATION_NOTES.md §2・§3 のとおり。
    • 実装担当の詳細は人の承認ではない。
    • 霧の性欲は正の増分だけに効く。
    • 予報はその日の分だけを出す。
    • UI は今の部品のまま。
    • Windows の実機は後。
    • 毎日の出来事が1件増える。
  • 原本の完了数は 24/88 のまま。