====================================================================
直した②（fam_p0・T06 を右へ 1.0 m）を建て直して、1回ずつ回して確かめた
依頼：20261029_24_直した店2を建てて確かめ夜を回す.md
2026-10-29 18:47　check-in：cs:40　build_id cs40_20261029_1816（保留 0）
====================================================================

結論

  ・始める前の確かめ5つは、すべて合格だった。
  ・公開版（版 08db8a0d067c）の params と6店の店の形を cp で写した。版はすべてそろっていた。
    ③④⑤⑥⑦は前の写し（cs:39）と「版の番号」以外同じ。params は stores.fam_p0 と②の3条件（15〜17番）の site_result だけ違う。
  ・コードは変えていない。②は cs:39 と同じコード・同じ規則で建った。卓19・席88・確かめ A は全卓・待機場所3つとも道が引けた。
  ・確かめの3回（② × 0・1・2台 × 種0）は3回とも completed・全員帰った。
  ・2台の回で、丸テーブル T05・T06 のまわり（x 4.75〜6.85・y 11.3〜14.0）の 60 秒の「動けなくなった」は 0（前は 8）。
  ・合格の条件を満たしたので、B（②の夜 30 回）へ進んだ（別の報告 20261105_night_p0.txt）。
  ・台帳 634 → 637 行（追記だけ）。先頭 634 行の md5 は退避と同じ。


====================================================================
1. 始める前の確かめ（5つとも合格。18:10 ごろ）
====================================================================

  1. Unity エディタ：起動していない（Unity Hub だけが起動していた）
  2. /Volumes/KIOXIA：マウントされている。unity_ledger_v1.lock：なし
  3. 台帳 unity_ledger_v1.csv：634 行・md5 738553fac6a9bd2732cf6ad19818f16b（退避と同じ）
  4. ServiceSim の保留：0（cs:39 head）
  5. 公開中の serving-robot-params.json：meta.layout_generation 08db8a0d067c・unity_conditions 18 件（1回目の取得で合った）


====================================================================
2. 写したもの（A-1）
====================================================================

  写し元：https://pixelstomotors.com/sim/（2026-10-29 18:12 に curl で取得）
    控え：unity/site_copy_08db8a0d067c/（params・summary.json・unity/ の6店の JSON と地図・README.txt）
  版の番号：params の layout_generation、6店の JSON と地図の meta.generation、summary.json の6店がすべて 08db8a0d067c
  プロジェクトの前の写し（cs:39）との違い（JSON を読んで、項目ごとに比べた）
    p1・p2・p3・p4・p5 の JSON と地図：meta.generation だけ違う。それ以外の違い 0
    p0 の JSON：meta.generation・tables（T01・T03・T04・T05・T06）・routes が違う
      T06：footprint・parts・spots・stop が変わった（右へ 1.0 m）
      止まる位置：T01 (3.162, 13.362) → (3.388, 14.238)・T04 (7.038, 14.238) → (6.363, 14.212)・
                  T05 (5.363, 12.812) → (5.538, 12.812)・T06 (6.788, 11.862) → (7.788, 11.862)。T03 は同じ（dist だけ 12.56 → 12.12）
    p0 の地図：meta.generation・clear_mm・free_class・counts が違う
      counts 2（ふだんの道）125446 → 125788 / 1 35825 → 35555 / 0 576009 → 575937
    summary.json：6店の generation と、②の robot_dist_mean・robot_dist_max だけ違う
    params：meta.layout_generation・stores.fam_p0・unity_conditions の 15〜17 番の site_result だけ違う（ほかは同じ。条件は 18 件のまま）
      ② の試算（入店待ち）：0台 2.6471・1台 1.6909・2台 1.169（依頼の 2.65・1.69・1.17 と同じ）
  どれも cp でそのまま写した（手で値を写していない）。写したあと cmp でサイトの控えと同じことを確かめた。


====================================================================
3. 入れた cs・build_id
====================================================================

  check-in：cs:40（14 ファイル。params・summary.json・6店の JSON と地図。コード・.asset・シーンは変えていない）
  画面なしの実行ファイル：build_id cs40_20261029_1816 / unity_cs ServiceSim/cs:40 / pending_changes 空
                         Build Finished, Result: Success・error CS 0
  保留：check-in のあと 0。確かめの3回・夜のあとも 0。

  手で戻したもの（check-in していない）
    建てて確かめる処理で ProjectSettings/NavMeshAreas.asset・Mat_RobotKeepout.mat・StoreLayout_p0_memory.asset が
    変更ありになったので cm undo で戻した（.asset は中身が cs:39 と同じで、触っただけだった。NavMeshAreas は今までと同じ）。

  make_queue.py・night_runner.py・judge_night.py は変えていない。


====================================================================
4. ②を建てて分かったこと（JSON Store「② を建てて確かめる」・Map Planner「② 確かめ A」。どちらも画面なしのエディタで実行）
====================================================================

  数         卓：Unity 19 / JSON 19 / summary.json 19 で一致。席 88 で一致。細い通路 0 本。外寸 24 × 19.2 m
             地図のマスの数は JSON の counts と一致。合わないもの：なし
  卓の部品    椅子 58（椅子 52 ＋ スツール 6。Unity の数え方は「椅子」）・席に着く点 57・座る位置 88（前と同じ）
             丸い天板 2（T05・T06）は前と同じ作りで建った
  止まる位置  19 か所すべてロボット用の NavMesh の上（乗らない 0）。地図でも 19 卓すべて通れるマス
  道順       受け渡し口から全 19 卓、すべての区間がつながった。JSON の dist との差は平均 −0.24 m・最大 0.47 m（T17）。
             30% を超えた卓 0。狭い道を使う卓 0
  NavMesh    ロボット用 137.78 m2・人用 151.03 m2、どちらも「つながっていない面」0 m2
  席         入口 (11.0, 0.5) から全 19 卓の席に着く点まで歩ける（入れない卓 0）
  場所の点    25 か所すべて NavMesh に乗った（置けなかった所はない）。待機場所3つは地図で「ふだんの道」のマス
  確かめ A   引けない卓 0 / 19。待機場所3つとも道が引けた。長さの比 最小 0.979 / 平均 1.016 / 最大 1.041

  T06 を動かして変わったこと
    ・受け渡し口からの道（Unity）：T06 8.28 m（JSON 8.63）・T05 10.28 m（10.62）・T04 11.25 m（11.57）・
      T03 11.70 m（12.12）・T01 13.34 m（13.77）。差はどれも −0.3〜−0.4 m で、ほかの卓と同じくらい
    ・地図の「ふだんの道」のマスが 342 増えた（丸テーブル2つの間が通れるようになった分）
  前から残っている気づき（変わらず。依頼のとおり記録だけ）
    ・T19 の右の席に着く点 (23.7, 1.0) が通る半径 0.25 m の確かめで NavMesh に乗らない
    ・レジの内側：南北の歩ける幅 0.52 m（確かめが「入口が 0.7 m 未満」と出す）

  書き出し（unity/screens/）
    20261029_1813_map_planner_checkA_p0.txt・20261029_1813_map_plan_p0_memory.csv
    20261029_p0_memory_json_check.txt・20261029_p0_memory_table_dist.csv・20261029_family_v0_*（18:13）
    ※ 時刻の入らない名前のもの（20261029_p0_memory_json_check.txt など）は、依頼 23 の 17:12 ごろの書き出しを上書きした
      （同じ日・同じ名前で書き出す作りのため）。依頼 23 の数字は依頼 23 の報告に残っている。


====================================================================
5. 確かめの3回（② × 0・1・2台 × 種0・すれ違い入・待機場所へ戻る入・案B切・ラベル p0fixcheck・同時 4 本）
====================================================================

  python3 tools/make_queue.py --stores fam_p0 --seeds 0 --label p0fixcheck --out /tmp/p0f/queue_p0fixcheck.json
  python3 tools/night_runner.py --queue /tmp/p0f/queue_p0fixcheck.json --parallel 4 --night 20261029
      --label p0fixcheck --record-name 20261029_p0fixcheck
  出力 20261029_p0fixcheck_cs40_fam_p0_r{0,1,2}_s0_passon_sbret
  記録 night/20261029_p0fixcheck/（runner 終了コード 0・completed 3・失敗 0）
  judge.md：基準なし 3

  「今回 ／ 依頼 23 の p0check ／ 今回の試算（params の site_result）」の順。単位は分。割合は 0〜1
                                   0台                      1台                      2台
  最後まで回ったか                 completed                completed                completed
  全員帰ったか                     はい                     はい                     はい
  実時間                           2.3 ／ 2.4 分            2.4 ／ 2.5 分            2.4 ／ 2.5 分
  （参考）店の時間                 164.2 ／ 164.1 分        164.0 ／ 163.7 分        162.7 ／ 164.0 分
  入れた組の数                     31 ／ 31 ／ 38.1         31 ／ 31 ／ 38.25        31 ／ 31 ／ 36.4
  入店待ち                         1.35 ／ 1.33 ／ 2.65     1.17 ／ 1.21 ／ 1.69     1.22 ／ 1.45 ／ 1.17
   うち席は空いているのに待った     0 ／ 0 ／ 1.19           0 ／ 0 ／ 0.44           0 ／ 0 ／ 0.28
  料理の待ち                       0.73 ／ 0.68 ／ 0.61     1.03 ／ 0.95 ／ 0.94     0.54 ／ 0.94 ／ 0.39
  会計待ち                         0.84 ／ 0.80 ／ 1.41     0.58 ／ 0.72 ／ 1.30     0.88 ／ 1.16 ／ 1.12
  ロボットが運んだ皿の割合         0 ／ 0 ／ 0              1.000 ／ 0.987 ／ 0.979  1.000 ／ 0.974 ／ 1.000
  往復の数                         0 ／ 0                   63 ／ 63                 76 ／ 73
  30秒以上の止まり                 0 ／ 0                   2 ／ 1                   5 ／ 17
   （1往復あたり）                 0 ／ 0                   0.032 ／ 0.016           0.066 ／ 0.233
  動けなくなった（60秒）           0 ／ 0                   2 ／ 0                   2 ／ 12
  卓を空けた（逃がし弁）           0 ／ 0                   0 ／ 0                   0 ／ 0
  瞬間移動                         3 ／ 3                   10 ／ 8                  15 ／ 15
  打ち切り                         0 ／ 0                   0 ／ 0                   0 ／ 1
  （参考）あきらめた               2 ／ 3                   6 ／ 4                   4 ／ 12
  （参考）冷めた皿の割合           0 ／ 0 ／ 0              0.065 ／ 0.026 ／ 0.007  0 ／ 0.065 ／ 0
  （参考）待機場所へ戻った／出た   0 / 0                    63 / 63（前 63 / 63）    76 / 76（前 72 / 72）（戻れず受け渡し口へ 0）
  （参考）ドリンクバーで並んだ／あきらめた  50 / 2（前 52 / 2）  57 / 3（前 56 / 4）  49 / 3（前 51 / 4）
  ※ 「席は空いているのに待った」は依頼 23 と同じく blocked_wait（片付け待ち）で並べた。試算の列も blocked_wait_mean
  ※ 0台の瞬間移動 3 はロボットのいない回なので、人の側のもの
  ※ 試算の値は版が変わったので、依頼 23 の試算（2.68・2.44・1.60 など）と違う

  目立つ点（差の理由は調べていない）
    ・2台の回：30 秒以上の止まり 17 → 5、動けなくなった 12 → 2、料理の待ち 0.94 → 0.54 分（試算 0.39）。1台の回より料理の待ちが短くなった
    ・1台の回：動けなくなった 0 → 2（どちらも (8.77〜8.87, 6.04〜6.05)、スタッフ／お客さんとすれ違って 60 秒。受け渡し口から 2.1 m）
    ・入れた組の数は3回とも 31 組のまま（試算 36〜38 組）


====================================================================
6. 2台の回の 30 秒以上の止まり（5 回）の場所と理由
====================================================================

  受け渡し口の点 (10.9, 5.45) から 2.5 m 以内              4 回
   うち待機場所1の四角（x 12.2〜13.0・y 5.1〜5.9）の中     3 回（(12.24〜12.25, 5.51)。もう1台のロボット 2（2回とも 60 秒の「動けなくなった」）・分からない 1（44 秒・よける場所へ動いた））
   うち待機場所での止まりを除いた数                        1 回（(11.62, 5.28)：もう1台のロボット・32 秒・回り込んで動き出した）
  仕切りの右端のすき間のまわり（x 7.5〜9.5・y 8.0〜9.6）  1 回（(8.59, 8.31)：もう1台のロボット・31 秒・自分で動き出した）
  丸テーブルのまわり（x 4.75〜6.85・y 11.3〜14.0）         0 回（前は 8 回・すべて 60 秒）
  奥の区画のそのほか                                       0 回
  ドリンクバーのまわり（x 13.0〜21.5・y 2.6〜4.5）         0 回
  入口・レジのまわり（x 9.0〜14.0・y < 3.8）                0 回
  理由ごと（5 回）：もう1台のロボット 4・分からない 1
  動けなくなった 2 ＝ 待機場所1 の 2

  ロボットどうしが向かい合って止まった（face_stop）：23 回（待機場所 14・通路 9・受け渡し口 0）、いちばん長いもので 248 秒（待機場所）


====================================================================
7. 台帳
====================================================================

  行数：634 → 637（3 行足した。追記だけ。3行とも unity_cs ServiceSim/cs:40・layout_generation 08db8a0d067c）
  先頭 634 行の md5：738553fac6a9bd2732cf6ad19818f16b（退避と同じ）
  列は今までどおり（59 列）。鍵ファイルは残っていない
  B の前の台帳（637 行）の md5：415f1bb1dd41fab4f4480eef101f4856


====================================================================
8. 合格か
====================================================================

  合格。3回とも completed・全員帰った。2台の回の丸テーブル T05・T06 のまわりの 60 秒の「動けなくなった」は 0。
  → 続けて B（②の夜 30 回）を回した。結果は 20261105_night_p0.txt


====================================================================
9. 決めてほしいこと
====================================================================

  1. StoreLayout_p0_memory.asset の「写した日時」（fetchedAt）が前の版（17:05・dffc100b269c）のまま。
     建てるときの報告に古い版の字が出る（中身の JSON は 08db8a0d067c）。③⑤⑦なども前から同じ扱いで直していない。
     .asset の字を写し直すたびに直すかどうか。
  （夜の結果についての決めごとは 20261105_night_p0.txt に書いた）
