SoT/operations/supply_ordering.md の表をスクリプトが直接パースする。表を直せば即反映(コード側に写さない)showThinkingSummaries: true・thinking 記録あり・cp932 化けなし・memory 正本とミラー一致を実測。DELL 側の登録スクリプトだけ未実施cart.py が Windows(cp932) で起動しなかったのを修正 — 出力の絵文字で UnicodeEncodeError。main() 内だけ stdout を UTF-8 化(モジュールトップでやると import 側の二重ラップ事故になるため)build_catalog.py の生成物が毎回汚れるのを修正 — generated_from が Windows で data\order_history\... になり Linux 生成物と差分。as_posix() 固定。修正後は再生成しても diff ゼロを実測82137f25 として PR ブランチへ push(main には入れていない)agent_name_inject.py --selftest 全7名OK・Stuart 1,314字/44%)、カタログ再生成(施設10 / 品目89 / ASIN156)を家側で実働確認_inbox/WEB_QUEUE.md に検証状況を残した(6cc9e13e)。学び1件を memory feedback_worktree_push_blocked_by_merged_handoff に追記https://www.amazon.co.jp/gp/aws/cart/add.html?ASIN.1=B09YV12L66&Quantity.1=1skills/supply-order/SKILL.md §罠 に代替手順あり)B07DX5VZGD ¥2,300 / RIN蓋付き B00F9PIMOM ¥2,966(どちらも逗子葉山=Atelier の採用品)。Claude 側の推奨は tower(蓋なしで軽く Harbor の設え寄り)。決めて南房総で1回発注すれば、辞書を直さなくても次回から定番として引けるsession_close_merge_guard と auto classifier の両方に止められる実績あり)git pull → /web-inbox でキューの supply-order エントリを処理済みへ。WEB_QUEUE.md は merge 時に conflict する見込み(main 側でキューを整理済みのため)。conflict は「待機中の1件をブランチ側から拾い、処理済み欄は main 側を採る」で解けるpython scripts/hooks/ensure_userpromptsubmit_hooks_registered.py(settings.json はマシン固有で git 同期されないため BLADE の結果が伝播しない)order-import-amazon でCSVを落として build_catalog.py」まで一周させると、カタログが自己更新する設計が効いているか確認できるSoT/brand/amenity_grades.md)を守ったまま自動化する。間違えるより止まるを実装で担保しているのがこのラインの品質の核| 種別 | パス / URL | 用途 |
|---|---|---|
| PR | github.com/tmkcln/Claude_tmk/pull/87 | 本体。ドラフト。Ready→Squash merge は大竹さん |
| ブランチ | claude/facility-supply-ordering-7xxgqc(tip 82137f25) | 出先3コミット+家側の Windows 修正1コミット |
| SoT | SoT/operations/supply_ordering.md | 施設辞書・品目辞書・解決の優先順位。先に読む。表を直せば即反映 |
| SoT | SoT/operations/amazon_order_routing.md | 配送先の正本。施設辞書の「Amazon配送先名」列と一致させる |
| SoT | SoT/brand/amenity_grades.md | 実績が無い品を新規選定する時のグレード規定 |
| AI社員 | SoT/agents/stuart.md / SoT/agents/roster.yaml | Stuart のカード。発注系スキル4本を Frank から移管済み |
| スキル | skills/supply-order/SKILL.md | 実行フロー・判断の癖・罠(カート投入が効かない時の代替を含む) |
| スクリプト | scripts/supply_order/cart.py | 口述 → カート投入URL。--json で機械可読 |
| スクリプト | scripts/supply_order/build_catalog.py | 履歴CSV → 定番品カタログ生成。生成物は手で編集しない |
| 生成物 | data/supply_catalog/catalog.json | 施設10 / 品目89 / ASIN156(1〜7月のCSVから生成) |
| コマンド | python scripts/supply_order/cart.py --text "南房総 ハンドソープ シャンプー" | 口述をそのまま渡す。改行でも一行でも通る。語尾の数字が数量 |
| コマンド | python scripts/supply_order/build_catalog.py | 新しいCSVを落とした後に回す |
| コマンド | python scripts/hooks/ensure_userpromptsubmit_hooks_registered.py | DELL 側で1回(thinking-recall の残作業) |
| キュー | _inbox/WEB_QUEUE.md | main 側に検証状況を記載済み。マージ後 /web-inbox で閉じる |
| カルテ | claude.ai/code/artifact/29f32bfe… | 出先セッションが作った判断用カルテ(一過性) |
gp/aws/cart/add.html は Amazon の標準形式だが、Amazon Business アカウント側の挙動は実機でしか分からない。ここが通らないと「カゴまで1手」が成立しないmemory/feedback*.md を検出してブロックし、force push も権限で弾かれて二重に詰む(2026-08-11 実測。memory feedback_worktree_push_blocked_by_merged_handoff)Forest Retreat 軽井沢(母屋)と VX軽井沢1(Core)は同一住所で CSV上は判別できない(辞書に注記あり)減るものを、誰も覚えていなくても切らさない。人が押すのは最後の「発注」の1回だけにする。