HANDOFF · 2026-05-24 · 続編
新規5施設ご利用案内 構築 — 引き継ぎ
既存6施設(館山・京都・渋谷・南房総・軽井沢・晴海)の体裁を踏襲し、Harbor 九十九里・Harbor 南葉山・Core 軽井沢 I・Core 軽井沢 II・Core 河口湖 の5施設ガイドを新規構築する。完了後、yamato-club から Active リンク化+写真差し替え。
現在地(2026-05-24時点)
NOW
会員ハブ+6施設ガイドの統一ナビ実装が完了
- yamato-club.pages.dev = Member's Index(PRC会員のトップ)
- 各施設ガイドに「Member's Index バックリンク + ドッグイヤー目次 + Colophonフッター」装備
- 稼働中ガイド6サイト: tateyama / kyoto / shibuya / minamiboso / karuizawa / harumi
- Member's Index 上で Harbor 九十九里・Harbor 南葉山・Core 軽井沢 I・Core 軽井沢 II・Core 河口湖 は "Coming Soon" 表示のまま
- ビルド方式:
scripts/build_member_guides.py の FACILITIES dict に1施設1エントリを足してビルド→output/guides/_drafts/{slug}_member/→_deploy/{slug}/へコピー→wrangler でデプロイ
このセッションでやること
NEXT
新規5施設のガイドを既存6施設と同水準で公開する
| 施設 | slug 候補 | Cloudflare project 名 | 本番URL(予定) |
| Harbor 九十九里 | kujukuri | yamato-kujukuri-guide | yamato-kujukuri-guide.pages.dev |
| Harbor 南葉山 | minamihayama | yamato-minamihayama-guide | yamato-minamihayama-guide.pages.dev |
| Core 軽井沢 I | karuizawa_core1 | yamato-karuizawa-core1-guide | yamato-karuizawa-core1-guide.pages.dev |
| Core 軽井沢 II | karuizawa_core2 | yamato-karuizawa-core2-guide | yamato-karuizawa-core2-guide.pages.dev |
| Core 河口湖 | kawaguchiko | yamato-kawaguchiko-guide | yamato-kawaguchiko-guide.pages.dev |
Otakeさん指示(重要):Core 軽井沢 I と II は内容が微妙に違うため、分けて作る。後で統合する選択肢は残す。
情報源(先にあたるべき順序)
大竹さんは「情報としてはあるはず」と発言。先にNotion/SoT/Hubを当たり、Webや想像で埋めない。順序は memory/feedback_internal_sources_before_web.md に準拠:
- Notion 🏗️プロジェクトDB: 各施設のHubページ。住所・最大人数・WiFi・設備一覧の正本
- SoT GSheet: YAMATO_ご利用案内_穴埋めマトリクス(5施設対応・新5施設も列追加して埋める)
- 運営正本 GSheet: オペレーターガイド GSheet
- Hub Excel:
output/tmp/YAMATO_Harbor南房総_SunTerraceCove_Hub.xlsx 等。新施設の Hub があれば最も濃い情報源
- FACILITY_PHOTOS.md: OTA本番写真フォルダの所在マップ。ヒーロー写真と章別写真はここから
- Webは最後。OTA掲載や民泊届出データを参照する場合のみ
注意:5施設の中で情報の充実度はバラつくはず(Coreは"作りたい構想"段階の可能性、九十九里は実物件がどこまで進行中か要確認)。着手前に、5施設それぞれの「情報濃度ランク」を Otake さんに確認するのが安全。十分濃い施設だけ完成版、薄い施設は (要記入) プレースホルダ多めの暫定公開、という分け方も検討。
実行手順
1情報棚卸し — 5施設それぞれについて、上記情報源を順に当たり「現状どこまで埋まるか」を
マトリクスGSheet に列追加して可視化。
Otakeさんに「この濃度で公開していい?」を一度確認。
2FACILITIES dict 追加 — scripts/build_member_guides.py 冒頭の FACILITIES = {...} に新5エントリ追加。既存 karuizawa エントリを雛形にコピーし、name_member / name_member_en / theme / address / tel / wifi_ssid / collection_kicker / ja_label / concept / features_list 等を埋める。Collection に応じて theme を決める(Harbor系は harbor、Core系は forest or 新設)。
3写真調達 — 各施設の OTA本番写真フォルダから hero 1枚+章別8枚(arrival / facility / options / residence / rules / services / departure / feedback)を scripts/build_member_guides.py の collect_photos() が拾える場所に配置。FACILITY_PHOTOS.md の対応表を確認。なければ Coming Soon 画像のままで暫定公開。
4ビルド&ローカル確認 — python scripts/build_member_guides.py → output/guides/_drafts/{slug}_member/ 生成 → ブラウザでローカル確認 → TBD カウント・章リンク・ドッグイヤー挙動を1施設1章でチェック。
5_deploy へコピー — Python で shutil.copytree('_drafts/{slug}_member','_deploy/{slug}')。既存施設の _deploy は触らない。
6Cloudflare Pages プロジェクト作成 — 各施設につき wrangler pages project create yamato-{slug}-guide --production-branch=main。5回個別実行(PowerShell foreach loop は memory/feedback_wrangler_deploy_no_loop_in_powershell.md により禁止)。
7デプロイ — 各施設につき wrangler pages deploy "output/guides/_deploy/{slug}/" --project-name=yamato-{slug}-guide --branch=main --commit-message="initial: new facility guide" --commit-dirty=true。5回個別実行。
8yamato-club リンク有効化+写真差し替え — output/deploy/yamato_club/index.html の該当 card disabled ブロックを a class="card" に書き換え、href と画像を実物に。images/f_{slug}.{ext} を新施設の hero から copy。wrangler pages deploy "output/deploy/yamato_club/" --project-name=yamato-club ...。
留意点・既知の論点
- Core 軽井沢 I/II の重複度: 後で統合可能なように、build_member_guides.py 内で2つの FACILITIES エントリは 共通フィールドを参照する形でなく独立に書く(DRYしすぎると分離が痛い)。微差は3〜5項目と想定。
- 九十九里・南葉山の実体: 現地物件として運営中か、開業準備中か、座組のみか、で情報の埋まり方が変わる。Otakeさんに状態を確認すること。
- Core コレクションのテーマ: 既存 build_member_guides.py の
theme_overrides() に "core" テーマが未定義の可能性あり。要確認、なければ forest(軽井沢) / ocean(河口湖近辺の水辺) などで暫定。CLAUDE.md / DESIGN_GUIDELINES.md / BRAND_PHILOSOPHY.md §3 のコレクション定義を先に確認。
- 章テンプレートは5施設共通で良いか: Core は「一棟貸し・完全プライベート」なので "Services(スタッフ常駐)" の存在意義が薄いかもしれない。章構成を1施設だけ削ると目次/ナビ仕様が崩れるため、空章にしてプレースホルダ表示する方が無難。
- 住所・連絡先の機密度: 会員向けLPなので施設住所は表示してOK。だがオーナー個人情報や鍵暗証番号は ops-internal 側で管理(
memory/feedback_data_security_layers.md)。
- 「Coming Soon」のまま残す判断もあり: 情報が
(要記入) 大量の状態で公開するより、TBD 30以上なら一旦未公開のままにする方が体験は守られる。Otakeさんに「TBDがN以上なら未公開/未満なら公開」のしきい値を確認。
引き継ぎ情報
| 種別 | パス / URL | 用途 |
| ビルド | scripts/build_member_guides.py | FACILITIES dict に追加するだけで全自動生成。Member's Index ナビコンポーネントは既に組み込み済み |
| SoT | 穴埋めマトリクスGSheet | 5列追加して情報棚卸し |
| 会員ハブ | output/deploy/yamato_club/index.html | Step 8 でカードを書き換える対象。既に5施設分の card disabled ブロックが存在 |
| 写真ルーティング | FACILITY_PHOTOS.md | OTA本番写真フォルダの所在マップ |
| Notion DB | 🏗️プロジェクトDB | 各施設Hubページ(NOTION_MAP.md 参照) |
| 前セッションの実装 | 2026-05-24.html | 会員ハブ整備とMember's Indexナビ実装の経緯 |
| ナビ仕様 | build_member_guides.py の nav_css() / sticky_header_html() / dogear_html() / contents_overlay_html() / colophon_html() / nav_script() | 変更不要。FACILITIES dict 追加だけで全章に伝播 |
| memory 必読 | memory/feedback_internal_sources_before_web.md
memory/feedback_wrangler_deploy_no_loop_in_powershell.md
memory/feedback_data_security_layers.md | 情報源優先順位/wrangler個別実行/機密レイヤー分離 |
セッション冒頭の動き出し例
1) このハンドオフHTMLを Read で読む
2) scripts/build_member_guides.py の FACILITIES dict と karuizawa エントリを Read(雛形把握)
3) Notion 🏗️プロジェクトDB を mcp__notion で fetch、5施設のHubページを取得
4) Otakeさんに 「5施設のうち、情報が揃っているのはどれですか? Coreの章構成は既存と同じで良いですか?」 を最初に確認
5) 確認結果に応じて Step 1(情報棚卸し)から進める