SCALE_TERASU_HP_バージョン管理表
TERASU公式HP バージョン管理表
大串FB「修正するたびにver11みたいに数字更新していって。ver11に戻したいとか言えたりするから」(2026-05-27 10:33)
以降、TERASU公式HPの全修正をver番号で管理。「ver◯に戻して」と言われたら該当backup tar.gz から復元deploy可能。
管理ルール
- 修正・deployのたびに ver +1
index.html先頭 (<head>直後) に<!-- TERASU-VER: ver{N} | YYYY-MM-DD HH:MM | 修正内容 -->を埋め込み- backup tar.gz(
~/scale-hp-showcase-backups/scale-hp-showcase_YYYY-MM-DD_HHMM.tar.gz)とver番号を紐付け - 「verNに戻して」で即時ロールバック可能
- デプロイは必ず
scale_deploy.sh terasu(terasu_prod_guard経由)
制作実績デモ運用ルール(2026-06-12 大串FB・恒久)
大串FB「デモ更新の流れ、めっちゃ良かった!今後はデモ更新依頼したら、毎回直接デプロイでTERASU HP特化のリンクに変更したうえで公開してね〜。制作実績に乗せているのは、全部TERASU HP直下のデモリンクにしたい。統一感出るし」
- デモ追加/更新依頼 = preview 不要・直接 prod デプロイOK(preview必須ルールの例外)
- 必ず
/demos/<名>/に内部ホスト化してから works カードに載せる。外部 pages.dev リンクのカード新設は禁止(統一感) - 手順は ver20.7 で確立した内部ホスト化フロー(wgetミラー→クエリ付きファイル名正規化→
href="/"→./化→root絶対パス書換[HTML/CSS/JS全部・JS動的読込アセット個別取得]→偽アセットfile検査・削除→ローカル実機検証[console 0/画像broken 0]→Drive正本rsync→/tmp方式デプロイ→本番検証→ver+1) - works カードの href / em 表記とも
terasu.scale-group.co.jp/demos/<名>/形式。サムネは headless Chrome 1100×1451 縦長FVキャプチャ - 既存デモフォルダを上書きする時は pre tar.gz 必須(旧版ロールバック用)
- 内部ホストは元デモのスナップショット。元デモ側更新時は再ミラー必要
- SPA(Gatsby/Next 絶対パス焼込み)等で内部ホスト不可の場合のみ大串に相談
- memory:
feedback_terasu_demo_workflow.md(Claude用ルール本体)
確定版マーカー
| 領域 | 確定ver | 確定日時 | backup |
|---|---|---|---|
| FV (ファーストビュー) | ver12 ★FV確定 | 2026-05-27 16:10 | scale-hp-showcase_2026-05-27_1609.tar.gz |
大串FB「完璧すぎる!ver12でファーストビューは確定でいきたい」 (2026-05-27 16:15)
以降、FV領域の修正は ver12 を起点 に行う。ver12のFV関連実装は退化させない (rollback時もFV部分はver12維持)。
バージョン履歴
| ver | 日時 | 修正内容 | backup tar.gz |
|---|---|---|---|
| ver1 | 2026-05-27 10:32 | TOP復旧 (Phase 1d/1e SEOブロック撤去) + SERVICE soft撤去 + kurokitec原本+純白(#fff)復帰 + FV対策のみ(画像最適化/preload/eager/decoding/fetchpriority/GPU hint/distinct4) | scale-hp-showcase_2026-05-27_1031.tar.gz |
| ver2 | 2026-05-27 10:35 | FVモンタージュ画像 distinct 4枚 → 35枚 (kurokitec原本通り全種類) 復活 | scale-hp-showcase_2026-05-27_1035.tar.gz |
| ver3 | 2026-05-27 10:38 | FV四隅白対策: .p-top__mvBgImg を 130vw/130vh に拡大 (5度回転で生じる四隅余白を完全カバー・kurokitec原本109vw/100vh→130vw/130vh) |
scale-hp-showcase_2026-05-27_1038.tar.gz |
| ver4 | 2026-05-27 11:02 | SERVICEタイトル「TERASUが選ばれる、3つの理由。」に文字リビールアニメ追加。18文字span展開+CSSフェードスライドイン+IntersectionObserverで in-view時にトリガー。「出会いを生む、ホームページを」と同様の文字リビール演出 | scale-hp-showcase_2026-05-27_1101.tar.gz |
| ver5 | 2026-05-27 11:06 | FV白フラ根治 (Codex指示): A=fv-gpu-hint縮小 (contain:paint外す + .slider__listのみwill-change維持・子要素 .item/.img/.u-objectfit の大量will-change削除) / B=hp1-35.jpg src と preload に ?v=ver5 cache bust 付与 (Cloudflare immutable回避) | scale-hp-showcase_2026-05-27_1106.tar.gz |
| ver6 | 2026-05-27 11:08 | SERVICEタイトル文字リビール表示バグ修正: ver4で <p class="jp c-txtanimation js-titlereveal"> の c-txtanimation がkurokitec原本CSS .c-txtanimation{opacity:0} を発動して p全体が非表示になっていたので、c-txtanimation削除 + .jp.js-titlereveal{opacity:1!important} 強制 |
scale-hp-showcase_2026-05-27_1108.tar.gz |
| ver7 | 2026-05-27 11:30 | FVスクロール中の不可視保険レイヤー追加 (Codex指示C案): <div id="fv-safety-bg"> を <body> 直下に配置・position:fixed z-index:-1 background:#252525 opacity:0 (初期非表示)・JSで scrollY>50 かつ #service 到達前のみ .is-active(opacity:1) 付与。<body> 透過から透けて見える保険レイヤーがFVモンタージュ瞬間消失時にhtml白下地ではなく#252525暗色を露出させる。SERVICEセクション(z-index:2)は前面なので白背景影響なし |
scale-hp-showcase_2026-05-27_1129.tar.gz |
| ver8 | 2026-05-27 11:30 | TOP「DEMO」見出しにも文字リビールアニメ適用: <h2 class="title p-top__historyHd">DEMO</h2> を 4文字span展開 + js-titlereveal class追加 + CSS selector拡張(.p-top__historyHd.js-titlereveal 対応)。SERVICEタイトルと同じ動作・既存JSはquerySelectorAllで全要素拾うのでそのまま流用 |
scale-hp-showcase_2026-05-27_1129.tar.gz |
| ver9 | 2026-05-27 11:55 | ver7全画面保険レイヤー撤去 + 円形マスク内のみ静的fallback (Codex指示): ver7の <div id="fv-safety-bg"> + <style id="fv-safety"> + <script id="js-fvsafety-init"> 3点を完全撤去 (全画面#252525のopacity transitionでグレーチカチカが発生していたため)。代替で .p-top__mvBgBody{background-color:#252525;} 静的設定。.p-top__mvBgBody は kurokitec原本 clip-path:circle(...) で円形マスク化されているため、<style id="fv-bgbody-fallback"> 1行でマスク内だけにfallback適用 → .p-top__mvBgImg 瞬間消失時も円形内だけ#252525露出・画面全体グレー化なし・transitionなし・scroll監視なし |
scale-hp-showcase_2026-05-27_1154.tar.gz |
| ver10 | 2026-05-27 15:35 | FVレイヤー構造を根本安定化 (Codex指示): 円形fallbackがまだ一瞬見える原因として、animated clip-path親(.p-top__mvBgBody)配下に position:fixed 子(.p-top__mvBgImg)を置く構造がコンポジット落ち誘発と特定。<style id="fv-structure-fix">で2点修正: ①.p-top__mvBgImg{position:absolute!important} → 親.p-top__mvBg(fixed)で画面固定維持しつつ子absolute化で animated親+fixed子の不安定な組み合わせを解消・②.p-top__mv.is-mvafter .p-top__mvBg{opacity:1!important;visibility:visible!important} → SERVICE被覆前にFV背景が消える挙動を停止(SERVICE z-index:2で前面なので背面残置でも見た目影響なし)。ver9 mvBgBody fallback / ver3 130vw四隅対策 / ver5 fv-gpu-hint縮小版 / ver5 ?v=ver5 cache bust 38件 / ver4-8 title-reveal 全保護維持 |
scale-hp-showcase_2026-05-27_1535.tar.gz |
| ver11 | 2026-05-27 15:54 | 円形マスク完全被覆後 clip-path解除 + mvBgCircle停止 (Codex指示): ver10後も5.25秒/15.6秒付近で残るチカチカ原因として、巨大clip-pathと.p-top__mvBgCircle scale/rotate継続でブラウザ合成レイヤ破綻と特定。①<style id="fv-clip-unlock">で .p-top__mv.is-fvclip-unlocked 時に .p-top__mvBgBody{clip-path:none!important} + .p-top__mvBgCircle{opacity:0!important;visibility:hidden!important}・②<script id="js-clipunlock-init"> で rAF throttle scroll監視・円半径(.p-top__mvBgBodyrect.width × CSS変数--circle-scale/100/2) > viewport四隅最大距離 + ヒステリシス80px でunlock・戻り時に lock解除。固定scrollYでなく動的半径判定でclassバタつき防止 |
scale-hp-showcase_2026-05-27_1554.tar.gz |
| ver12 ★FV確定 | 2026-05-27 16:10 | clip-unlock半径計算修正 + ScrollTrigger update追従 (Codex指示): ver11の半径式 (r.width*cs/100)/2 でclip-path circle描画半径を過小評価しており、scrollY 850px (--circle-scale 113.4) で既に画面全体を覆えているのに 2400pxまでunlockされず巨大clip-pathが残っていた問題に対応。①半径式を Math.min(r.width, r.height) * cs / 100 に変更 (/2削除・実際のclip-path描画に近似)・②window.ScrollTrigger.addEventListener("refresh"/"scrollEnd") でGSAP更新時にもcheck発火 (--circle-scale更新の1フレ遅延解消)・③scrollY中のみrAF tick loop追加 (1秒静止で停止・ScrollTrigger不在環境フォールバック)・ヒステリシス80px継続。大串「完璧すぎる」評価で FV確定版 |
scale-hp-showcase_2026-05-27_1609.tar.gz |
| ver13 (撤回) | 2026-05-30 10:00 | 失敗: PATH_SUBS で先頭スラッシュ無し _cdn/wp-content/themes/kurokitec パターンを置換し忘れ → kurokitec→terasu-base の文字列置換だけ走り → 存在しないパス _cdn/wp-content/themes/terasu-base/ が17ページ×5箇所 = 85箇所生成 → FV画像 (mv-circle-mask 等) が404 → FV真っ白。大串「TERASUが選ばれる、3つの理由。より上が全部まっさら」報告でロールバック。preview branch を ver12 内容で直接上書き復元 (rollback_ver12_preview/ → wrangler --branch=preview) |
scale-hp-showcase_2026-05-30_1003_pre-ver13.tar.gz (pre-rollback用) |
| ver13.1 (撤回) | 2026-05-30 10:20 | path置換は成功したが class prefix t-*化 で vendor.js (GSAP plugins bundle・lib touch対象外) と整合崩壊 → メニュー click 動かず → ロールバック。学び: vendor.js 内部 selector との整合が grep ベースで担保困難 → class prefix化は段階的アプローチ必要 |
scale-hp-showcase_2026-05-30_1045.tar.gz |
| ver13.2 ★著作権ゼロ化 prod反映済 | 2026-05-30 12:18 | 著作権コード指紋ゼロ化 (SAFE版) — class prefix化を諦め (vendor.js整合問題) し、「決定的バレ証拠 (path/識別子/コメント/WordPress指紋)」だけを完全消去する現実解。①ディレクトリrename _cdn/wp-content/themes/kurokitec/ → _assets/theme/ / _cdn/wp-includes/ → _assets/core/ / contact-form-7/ → _assets/form/ / google-site-kit/ → _assets/analytics/・②PATH_SUBS 先頭スラッシュ有無両対応・JSON-escaped path対応・③kurokitec文字列全消去 (0件)・④wp-content/wp-includes/wp-admin/wp-json/WordPress 文字列全消去 (全0件)・⑤<script type="speculationrules">ブロック全削除 (WP特有prefetch)・⑥sourceURL/sourceMappingURLコメント全削除・⑦HTML/JS/CSS コメント全削除 (TERASU-VER/IE条件分岐/verマーカー保護)・⑧wp-polyfill.min.js → polyfill.min.js rename + id="polyfill-js" 更新。class prefix (cm-/u-/js-/p-top__/c-) は次フェーズ (vendor.js bundle整合課題)。実機検証: ver12本番とver13.2 previewスクリーンショット完全同一・console error 0・menu click 正常動作・gnav開く・全リソースHTTP 200。Chrome MCP (claude-in-chrome) で私自身が preview を navigate→console→DOM検証 する体制確立 (大串確認往復ゼロ化)。ガード更新: terasu_prod_guard.sh を _cdn/ または _assets/theme/ 両対応に拡張。preview→大串「プレビュー全部見れる」OK→prod反映済*。本番 terasu.scale-group.co.jp で kurokitec=0 / wp-content=0 / _assets/theme=6件 確認 |
scale-hp-showcase_2026-05-30_1218.tar.gz |
| ver14.0-mvlab (preview) | 2026-05-30 19:10 | FV円形マスク形状8バリエーション・大串選定ラボ (大串FB「裏で動く丸を別の形に・色んなパターン見たい」)。?shape=X で切替: circle(default)/ellipse/ellipse-wide/squircle/rounded-square/hexagon/octagon/diamond/blob。?edge=ring/dashed/glow で外縁装飾。<style id="mv-clip-shapes">+<script id="js-clip-shape-switch">。--circle-scale変数連動でver12のscroll-unlock動作維持。未選定 |
scale-hp-showcase_2026-05-30_1910_pre-ver14.tar.gz |
| ver14.1-lab (preview) | 2026-05-30 19:35 | TOP「3つの理由」デザイン6種 + メニューアニメ6種 + /about/料金ブロック新規・大串選定ラボ (大串FB「3理由が普通すぎ・メニューがお手本と同じ・WHAT WE DO後に料金ブロック」)。【①3理由 .tsr ?reasons=X】cards(白カード+アンバー番号タイル)/editorial(セリフ番号+細罫)/accentbar(グラデ縦バー)/darkpanel(ダーク高級)/floatnum(巨大アウトライン番号)/glassgrid(3カラムガラス)。【②メニュー ?menu=X】slide/drawer(リンクstagger)/curtain(上から)/fade(スケール+stagger)/wipe(clip円ワイプ)/flip(3D)。円形リビール(circle)を display:none で消去 = お手本と差別化。方式: 自前controller(click capture+stopImmediatePropagation で is-menuopen を確実トグル) + !important CSS で旧テーマGSAPのinline transform上書き。【③/about/料金】WHAT WE DO(p-ism__spirits)直後に .t-price ブロック新規挿入: 初期10万/月額1万/最短3営業日の3カラム + 含有6項目チェックリスト + 相場比較(30-200万 取消線) + CTA。独自クラスt-price-*。Chrome MCP実機検証済: reasons=cards美しい / menu=slide 実click で開閉正常(circle消去確認) / about料金ブロック表示OK。著作権: 追加コード内 kurokitec/wp- 文字列 0件維持。未選定(大串が ?param で見比べ中)* |
scale-hp-showcase_2026-05-30_1919_pre-ver14.1.tar.gz |
| ver13.2補足 | - | (ver13.2詳細続き) F12で見える旧テーマ・WordPress指紋を全消去。デザイン/レイアウト/アニメ/内容は1pxも変えず、コード裏側だけ TERASUオリジナル化。①ディレクトリリネーム _cdn/wp-content/themes/kurokitec/ → _assets/theme/ / _cdn/wp-includes/ → _assets/core/ / contact-form-7/ → _assets/form/ / google-site-kit/ → _assets/analytics/・②PATH_SUBS 先頭スラッシュ有無 両対応 (ver13失敗原因の修正)・③クラス名 prefix cm-/u-/js-/p-/c- → t-cm-/t-u-/t-js-/t-p-/t-c- 全置換 (約6,600件)・④CSS変数 --ff/--ink/--c/--black/--white 等25種 → --t-* 化・⑤HTML/JS/CSSコメント全削除 (TERASU-VER/IE条件分岐は保護)・⑥<script type="speculationrules"> ブロック全削除 (WP特有のprefetch機能・指紋)・⑦sourceURL/sourceMappingURL コメント全削除・⑧JSON-escaped path (\/wp-content\/等) も対応・⑨wp-polyfill.min.js → polyfill.min.js リネーム + id="polyfill-js" 更新・⑩WordPress 文字列 → TERASU。完全ゼロ化検証: kurokitec=0 / wp-content=0 / wp-includes=0 / wp-admin=0 / wp-json=0 / WordPress=0 / /wp-=0。全リソースHTTP 200確認 (mv-circle-mask01.svg/theme/style.css/vendor.js/polyfill.min.js/YakuHanJP fonts)。FV ver12 全保護対象生存 (clip-unlock/structure-fix/bgbody/gpu/cover/title-reveal + JS群)。preview URL: https://adda5077.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
scale-hp-showcase_2026-05-30_1032.tar.gz |
ver14.5-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.5-ogp (preview) |
| 日時 | 2026-06-01 13:29 |
| 内容 | リンクプレビュー用OGP画像を新規作成・差し替え。参考画像の「暗い斜めタイル背景 + 中央大文字ロゴ」構成をTERASU版で再現。img/hp1.jpg〜hp35.jpg 等のHPビジュアルを背景に使い、中央テキストは TERASU のみ、EST表記は削除。 |
| 変更ファイル | index.html / img/og-terasu-hp.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 155KB / 2000px制限内 |
| preview | https://49ca83cd.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1329.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.6-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.6-ogp (preview) |
| 日時 | 2026-06-01 13:45 |
| 大串FB | 「背景暗すぎ」「背景のHPの大きさは全部統一」「TERASUの文字の横にロゴマーク欲しい」「60点」 |
| 内容 | OGP画像をFB反映で再作成。背景HPタイルを同一サイズに統一し、全体を明るく調整。中央はTERASUマーク + TERASU の横並びに変更。 |
| 変更ファイル | index.html / img/og-terasu-hp-v2.jpg / img/og-terasu-hp-v3.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v3.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 244KB / 2000px制限内 |
| preview | https://746169e1.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1344.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.7-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.7-ogp (preview) |
| 日時 | 2026-06-01 13:53 |
| 大串FB | 「TERASUのフォントがなんか微妙」「Zen Kaku Gothic Newで」「背景もっと黒めで(黒木テックと同じ)」「HPの画像は一番上で合わせる」「一番下もHP画像の途中で終わるように」「横と全く同じ位置は違和感、統一感あるように」 |
| 内容 | OGP画像を再作成。中央ロゴはTERASU HP左上に寄せて Zen Kaku Gothic New に変更。背景は黒木テック参考に近い暗さへ戻しつつ、HP画像は同一サイズ・上揃えで配置。グリッド感を避けるため列/行位置を少しずらし、上端・下端ともHP画像が途中で切れる構図に調整。 |
| 変更ファイル | index.html / img/og-terasu-hp-v5.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v5.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 147KB / 2000px制限内 |
| preview | https://45c8c4f2.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1353.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.8-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.8-ogp (preview) |
| 日時 | 2026-06-01 15:23 |
| 大串FB | 「背景の写真はTERASU HPみたいに縦長」「フォントとロゴの位置がズレてる、ぴったりになるように」「TERASUの文字に黒背景ついてる?黒背景つけずで」 |
| 内容 | OGP画像を再作成。背景のHP画像カードをTERASU HP素材本来の縦長比率へ変更。中央のTERASUマークと文字は実ピクセルの中心線で再合成し、位置ズレを解消。文字裏の局所的な黒背景・黒帯表現を撤去し、全体の暗色処理のみで白ロゴを見せる構成に変更。 |
| 変更ファイル | index.html / img/og-terasu-hp-v6.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v6.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 216KB / 2000px制限内 |
| preview | https://58d61ce8.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1523.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.9-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.9-ogp (preview) |
| 日時 | 2026-06-01 16:12 |
| 大串FB | 「背景を黒木テックみたいな並び方をそのまま再現して。それ以外はだいぶ良さそう」 |
| 内容 | OGP画像を再作成。中央ロゴ・Zen Kaku Gothic New・文字裏黒背景なしはver14.8のまま維持し、背景HPカードの並べ方だけ黒木テック参考に寄せた。斜めに流れるタイル列、黒い余白、段差のある配置密度を再現。 |
| 変更ファイル | index.html / img/og-terasu-hp-v7.jpg / img/og-terasu-hp-v8.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v8.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 159KB / 2000px制限内 |
| preview | https://39f86575.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1611.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.10-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.10-ogp (preview) |
| 日時 | 2026-06-01 16:21 |
| 大串FB | 「どれも微妙」「さっきのがよかった」「黒背景がなぞにたくさんある箇所とかあるの違和感」「全部いい感じにきれいに並べてほしい」 |
| 内容 | OGP画像を再作成。ver14.9の黒い穴・余白を作る方向を撤回し、ver14.8/14.9で良かった中央ロゴ周りは維持。背景HPカードは縦長同一サイズで全面に敷き、意図不明な黒余白をなくして、斜めの整列感と密度を重視したきれいな配置に変更。選定用に作った og-terasu-hp-layout-* 6案は不採用としてローカル削除。 |
| 変更ファイル | index.html / img/og-terasu-hp-v9.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v9.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 236KB / 2000px制限内 |
| preview | https://2ecbdede.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1621.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.11-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.11-ogp (preview) |
| 日時 | 2026-06-01 16:28 |
| 大串FB | 「HPの画像の間隔、全部統一して欲しい」「同じHP画像が使われているのが見えるから全部別に表示で」 |
| 内容 | OGP画像を再作成。背景HPカードを7列×5行の完全均等グリッドで配置し、カードサイズ・横間隔・縦間隔を統一。hp1.jpg〜hp35.jpg 相当の35枚を各1回だけ使用し、背景内の重複表示を排除。中央ロゴ、Zen Kaku Gothic New、文字裏黒背景なしは維持。 |
| 変更ファイル | index.html / img/og-terasu-hp-v10.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v10.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 194KB / 2000px制限内 |
| 検証 | 背景カード生成元 35 35 / duplicates: []。previewで画像HTTP 200確認。 |
| preview | https://9a4bfb5a.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1627.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
ver14.12-ogp 追記(2026-06-01)
| 項目 | 内容 |
|---|---|
| ver | ver14.12-ogp (preview) |
| 日時 | 2026-06-01 16:33 |
| 大串FB | 「いいね!それぞれの列でページ半分ずつくらい画像ずらして欲しい。その列が交互に並ぶときれいになりそう」 |
| 内容 | OGP画像を再作成。ver14.11の35枚重複なし・間隔統一は維持し、列ごとにカードピッチの半分だけ上下へずらす交互配置に変更。偶数列/奇数列で段差を作り、単調なグリッド感を緩和。 |
| 変更ファイル | index.html / img/og-terasu-hp-v11.jpg |
| OGP変更 | og:image / twitter:image / JSON-LD LocalBusiness image を https://terasu.scale-group.co.jp/img/og-terasu-hp-v11.jpg に変更 |
| 画像仕様 | 1200x630 / JPEG / 194KB / 2000px制限内 |
| 検証 | 背景カード生成元 35 35 / duplicates: []。列オフセットは半ピッチ。previewで画像HTTP 200確認。 |
| preview | https://75e108f9.scale-hp-showcase.pages.dev / alias https://preview.scale-hp-showcase.pages.dev |
| backup | scale-hp-showcase_2026-06-01_1633.tar.gz |
| 状態 | prod未反映。大串確認後に本番反映する。 |
FV確定版 (ver12) の実装サマリ
3日間 (5/25-27) で計12回のFV修正を経て確定。FV領域の白フラ/グレーフラ/画像消失問題は全て根治済。
構成要素 (全保護対象)
| ver | 役割 | 場所 |
|---|---|---|
| ver3 | fv-cover-fix - .p-top__mvBgImg 130vw/130vh で5度回転後の四隅露出を完全カバー |
<style id="fv-cover-fix"> |
| ver5 | fv-gpu-hint縮小版 - .slider__list のみ will-change:transform (contain:paint撤去で過剰GPU負荷解消) |
<style id="fv-gpu-hint"> |
| ver5 | ?v=ver5 cache bust - hp1-35.jpg src + preload 38箇所 (Cloudflare immutable回避) |
index.html内 |
| ver9 | fv-bgbody-fallback - .p-top__mvBgBody{background:#252525} (clip-path:circle内のみの見えない保険) |
<style id="fv-bgbody-fallback"> |
| ver10 | fv-structure-fix - .p-top__mvBgImg position:absolute化 + .p-top__mv.is-mvafter visibility解除 (animated clip-path親+fixed子の不安定組み合わせ解消) |
<style id="fv-structure-fix"> |
| ver11 | fv-clip-unlock CSS - .is-fvclip-unlocked時に clip-path:none + .p-top__mvBgCircle非表示 |
<style id="fv-clip-unlock"> |
| ver12 | js-clipunlock-init JS - 半径Math.min(w,h)*cs/100 + ScrollTrigger refresh/scrollEnd hook + rAF tick (1秒静止停止) + ヒステリシス80px |
<script id="js-clipunlock-init"> |
撤去履歴 (削除済・再発禁止)
- ver7の全画面保険レイヤー (
<div id="fv-safety-bg">+<style id="fv-safety">+<script id="js-fvsafety-init">) → グレーチカチカ発生のため ver9 で撤去 - ver8試行のSERVICE楕円soft化 (
#f7f7f4) → FV四隅白問題でver10前に撤去 - html/body背景色変更 (
html.is-top{#252525}等) → FV見た目に影響するため恒久禁止
退化禁止チェック (rollback時も維持)
- ver3 130vw/130vh: 四隅白対策 → 縮小すると再発
- ver10 mvBgImg absolute: コンポジット落ち対策 → fixedに戻すと白フラ再発
- ver11 clip-unlock CSS + ver12 半径式: clip-path巨大化対策 → 削除/旧半径式に戻すとチカチカ再発
- ver9 mvBgBody fallback: 見えない保険 → 削除しても見た目には影響ないが、もし将来別の構造変更でmvBgImg瞬間消失したら白フラ再発するため保持推奨
「ver◯に戻して」のロールバック手順
# 例: ver2 に戻したい場合
VER=2
BACKUP="scale-hp-showcase_2026-05-27_1035.tar.gz" # ↑表から該当ver
# Step 1: backup展開
mkdir -p /tmp/terasu_rollback_v${VER}
tar -xzf ~/scale-hp-showcase-backups/${BACKUP} -C /tmp/terasu_rollback_v${VER}/
# Step 2: ローカル正本に上書きcp
rsync -a --delete /tmp/terasu_rollback_v${VER}/scale-hp-showcase/ \
"/Users/oogushiyuuki/Library/CloudStorage/GoogleDrive-y-ogushi@scale-group.co.jp/マイドライブ/AI/scale-hp-showcase/"
# Step 3: ロック取得 → deploy
~/Obsidian/scripts/ai_session_lock.sh acquire scale-hp-showcase claude-code 60 "ver${VER} rollback"
bash ~/Obsidian/scripts/scale_deploy.sh terasu
# Step 4: 本番でver確認
curl -sS "https://terasu.scale-group.co.jp/?v=$(date +%s%N)" | grep -oE 'TERASU-VER:[^>]+'
お問い合わせフォーム ver15.x(メール通知 + Slack通知・SCALE HPと同座組)
大串FB「このページに問い合わせと同じように作って (https://scale-group.co.jp/)・メール通知&Slack通知も来るように」→「TERASUをSCALEと同じにしたい」→「Formspree無料のままでいい・SCALEと同じであれば」
座組: フォーム → Cloudflare Pages Function functions/api/contact.js → ①Formspree(メール) + ②Slack chat.postMessage。各サイトが自分専用のFormspreeフォームを使う(SCALE=お問い合わせ(株式会社SCALE) / TERASU=お問い合わせ(TERASU)=xkokjean)。
| ver | 日時 | 修正内容 | backup tar.gz |
|---|---|---|---|
| ver15.0 (prod) | 2026-06-01 23頃 | お問い合わせフォーム実装。functions/api/contact.js 新規(Formspree転送+Slack通知)。contact/index.html の CF7(Contact Form 7)系JS 4本を撤去(submit横取り→「送信中…」で固まる根治) + 自前inlineハンドラ(fetch→{ok}→「受け付けました」表示)。配信を waitUntil→await に変更(waitUntilが環境により未発火でメール/Slack来ない問題)。Slackは bot未参加で channel_not_found→大串がbotをチャンネル招待→Slack通知 動作OK確認済。⚠️初期は送信先Formspreeが xojpkzzg(=SCALE側フォーム)で誤り |
scale-hp-showcase_2026-06-02_0817.tar.gz |
| ver15.1 (prod)★現行 | 2026-06-02 08:23 | Formspree送信先を TERASU専用 xkokjean(お問い合わせ(TERASU)) に修正(ver15.0は誤って xojpkzzg=SCALE側に流れていた)。contact.js L12 FORMSPREE_URL。本番 terasu.scale-group.co.jp ver15.1 反映済。Slack(C0B6WL6CLFR terasu_問い合わせ)は全項目届く動作済 |
scale-hp-showcase_2026-06-02_0823.tar.gz |
** 残・大串の手作業1つ(メール通知が来ない真因): TERASUフォーム xkokjean の Formspree設定で Formshield(MLスパムフィルタ)がON → Cloudflare経由のサーバ送信を毎回Spam判定→Inbox入らずメール飛ばない(テスト送信がSpamタブに入ったのを確認済)。→ Formspree → お問い合わせ(TERASU) → Settings → SPAM PROTECTION → Formshield を OFF + Spamタブのテストを Mark as not spam**。これでメールも届く(無料プランは送信先=Formspreeアカウントのメール=SCALEと同仕様)。SCALE側フォームもFormshield設定を揃えると完全一致。
ver16.x 制作実績デモ追加 + SEOブロック削除(2026-06-02)
大串「下記3デモ追加でできた!更新して」(ink-pixel-studio / mio-pilates-demo / hp-branch) → 「問い合わせ送信下部のFAQ/サブスク比較、制作実績の業種別リンク/制作プロセス/オススメ事例を全部削除」 → 「ギャラリーのサムネをFV見栄え良く・見切れなしに」
| ver | 日時 | 修正内容 | backup tar.gz |
|---|---|---|---|
| ver16.0 | 2026-06-02 14:05 | /works/ 制作実績に新3デモ追加(dg__cカード5→8)。INK&PIXEL(/demos/ink-pixel-studio/)・Pilates Studio MIO 澪(/demos/mio-pilates/)=内部ホスト(wgetミラー→root絶対パスを/demos/<名>/に書換)。BRANCH=hp-branch.pages.dev 外部リンク(Gatsby製SPAでサブパス内部ホスト不可)。サムネ/img/demo-{inkpixel,mio,branch}.jpg新規 |
scale-hp-showcase_2026-06-02_0823.tar.gz系 |
| ver16.1 | 2026-06-02 14:28 | SEOキーワードブロック削除。contact: <section class="seo-block">×2(お問い合わせ前FAQ + サブスク比較)。works: <section class="industry-overview">(業種別12リンク) + <section class="seo-block">×2(制作プロセスSTEP + オススメ事例)。div均衡Δ0で構造維持・フォーム/ギャラリー保全。※contactの<meta description>等の不可視SEOメタは保持 |
同上 |
| ver16.2 | 2026-06-02 14:39 | ギャラリーサムネを縦長5:6 FVキャプチャに差替。カード枠=aspect-ratio:5/6 object-fit:cover object-position:topなのに新3枚が1100×690横長で左右見切れ(「ブランドは」→「ンドは」)発生 → 既存と同じ1100×1451縦長FVで撮り直し(headless Chrome・動くFVは見出し表示の良い時点を選択)。prod GUARD OK(demos=1419) |
scale-hp-showcase_2026-06-02_1439系 |
| ver16.3 | 2026-06-02 14:48 | /about/ PRICEブロックを本番ドメインのみ非表示(大串「デザイン微妙だから本番から一旦消してプレビューに残す→改善後に再掲予定」)。同一コードをpreview/prod両方にデプロイする構造のため、<section class="t-price">直前に location.hostname==='terasu.scale-group.co.jp' 判定で <html> に t-prod-hide クラス付与→CSS display:none!important する条件分岐を挿入(パース中実行でFOUC無し)。prod=非表示 / preview=表示 をclaude-in-chrome実機検証済(prod: display:none / preview: display:block)。ブロックはコード/DOMに残るので、改善後は挿入した2行(script+style)を外すだけで本番再掲可。t-prod-hide でgrepすれば該当箇所即特定 |
scale-hp-showcase_2026-06-02_1448系 |
| ver16.4 | 2026-06-02 15:01 | /about/ FAQ後の暗いHP画面モンタージュ削除(大串「FAQ〜contactの何も文字ないスペース、意図ないなら削除」)。正体=<div class="p-ism__bg" aria-hidden="true">内の.ismwイメージウォール(旧/ism/装飾・HP画面80枚タイル・テキスト/CTA一切無し・aria-hidden=装飾専用)。balanced-div方式で5670B除去・div均衡Δ0。※この時点ではモンタージュ下のSEOブロック3つが露出(preview段階) |
scale-hp-showcase_2026-06-02_1501系 |
| ver16.5 | 2026-06-02 15:15 | モンタージュ下にあったSEOブロック3つも全削除→FAQ→contact直結(大串選択B)。<section class="seo-block">×3(①TERASUのHP制作5つの強み ②他のHP制作サービスとの違い比較表 ③TERASU HPが「安い×高品質」を両立する3つの仕組み)を非貪欲regexで除去・div均衡Δ0・section10→7。結果: FAQ末尾=footer先頭でgap 0px・FAQ直後にCONTACTブロック(footer cm-f__mainContact→/contact/)直結。prod GUARD OK(demos=1419)・claude-in-chrome実機で空白消滅+contact直結を検証。contact/worksに続きaboutもSEOキーワードブロック一掃で統一 |
scale-hp-showcase_2026-06-02_1515系 |
| ver16.6 | 2026-06-02 16:50 | 問い合わせフォーム改修(大串指示・メール/Slack通知は動作確認済の上で項目調整)。①Slack通知に大串・細川メンション追加(MENTION='<@U08N2PK3YCQ> <@U091VN5GBRP>')②種別を5択化(HPのリニューアル/HPの新規制作/採用に関するお問い合わせ/協業・提携に関するお問い合わせ/その他)③会社欄を氏名の上に新規追加(必須)④お問い合わせ内容を必須→任意化⑤TERASUを知ったきっかけ欄削除。functions/api/contact.js: MENTION設定+validation(会社必須/本文任意・エラー文言更新)+LABELS/ORDER整理(kana/know除去)。contact/index.html: 4箇所exact置換(div均衡Δ0)。本番テスト送信で {ok:true} + 会社空422 を実証・@大串@細川メンション発火確認。prod GUARD OK(demos=1419) |
scale-hp-showcase_2026-06-02_1650系 |
| ver16.7 | 2026-06-02 16:55 | 問い合わせフォーム 会社→会社名にラベル変更(軽微・typo例外で直prod)。バックエンドLABELSは元から「会社名」で表記統一 | scale-hp-showcase_2026-06-02_1655系 |
| ver16.9 | 2026-06-02 17:00 | 問い合わせ2点(大串指示)。①種別の初期選択(HPのリニューアル)を解除→未選択開始(checked="checked"除去・惰性での初期値送信を防止・実機DOMで checked=0 確認)。②Slack通知のメンションを見出し「TERASU 新規お問い合わせ」の上(先頭)に移動(head=[MENTION, 見出し]・文章構成として最初にメンション)。本番テスト送信 {ok:true} で実証。prod GUARD OK ※ver16.8はpreview中間(①のみ) |
scale-hp-showcase_2026-06-02_1700系 |
| ver17.0 | 2026-06-03 06:41 | 納期表記を全ページ統一(速さ訴求「最短3営業日/最短3日」→「1ヶ月以内納品」)。40置換・15ファイル。guide記事も計画型に修正。demos架空予約・generator架空企業ダミーは意図的除外。※引き継ぎ(ver16.9)後に別途実施されたもの・TERASU-VERマーカーより記録。本番curl検証で公開14頁すべて「最短3営業日」0件・ローカル正本=本番バイト一致を確認 | (ver16.9系から継続・専用backup未取得) |
| ver18.0 | 2026-06-03 11:40 | ①about/表示崩れ根治+黒背景アニメ復活: app.jsが#js-ismmissionsliderをnull初期化→splide null is invalidでJS停止→全コンテンツ非表示。原因=ver16.4/16.5のモンタージュ削除でSplide初期化が致命化(昨日「意図ないスペース」と誤判断し削除したのが引き金)。ver16.3(montage完全/ismw36)から復元し黒背景モンタージュ(p-ism__bg)復活。大串FB「背景に動くアニメ・黒背景が無い、デザイン全然違う、過去分遡って探して」対応。②PRICEブロックまるっと削除(<section class="t-price">+t-prod-hide条件分岐をbalanced除去・section10→9・div均衡Δ0)。③納期1ヶ月以内(最短3営業日6+最短1週間2置換)。④ファビコン=TERASU正式ロゴ(terasu-mark黒地白抜き)実ファイル(favicon.ico/192/48/apple-touch)を全17頁設置(WP由来data URI置換・検索結果アイコン対策)。⑤TOP description刷新(サブスク型/AI/最短3営業日/「計画的に」除去→案A2)+JSON-LD desc2本同様クリーン。⑥営業デッキ(sales-deck build.js+pptx/pdf/slide×24)納期1ヶ月以内・計画型に再ビルド。claude-in-chrome実機で黒背景アニメ表示+PRICE消滅+FAQ直結+console検証→prod GUARD OK。※about/はver16.3ベースのためSplide軽微エラー残存(無害・表示正常・従来通り運用)。要根治タスク化 |
scale-hp-showcase_2026-06-03_1140.tar.gz |
| ver19.0 | 2026-06-03 16:23 | works制作実績からBRANCHデモ削除(大串FB「デモサイトから削除」=A:実績一覧から外す)。<a class="dg__c" href="https://hp-branch.pages.dev/">カード(427B)をbalanced除去・カード8→7・aタグ均衡23/23・hp-branch/demo-branch/BRANCH残存0。残7枚=TERASU/匠工房/ライフリンク不動産/LINX/TIME+/INK&PIXEL/MIO。preview7枚+claude-in-chrome確認→prod・本番curl hp-branch=0。サムネimg/demo-branch.jpgは未参照で残置(無害) |
scale-hp-showcase_2026-06-03_1623.tar.gz |
| ver20.0 | 2026-06-04 11:44 | ①ファビコン透過化(WP由来data URI/前日の黒地白抜き廃止→terasu-mark透過・黒マーク、apple-touchのみ白地。大串「黒背景なくして」FB)。②公開デモ刷新: 匠工房construction-kobo/ライフリンクrealestate-lifelink/TIME+saas-timeplus/LINXcorporate-linx-hd-v2 を各preview最新版でwgetミラー→/demos/配下に上書き(複数ページ+assets、../../sharedは本番既存12249と一致で流用)。INK&PIXELは特殊スクロール制御JS(mousewheel擬似フルスクリーン)で/demos/サブパス内部ホスト不可と判明→外部リンク化(works href+ラベルをink-pixel-preview.pages.devへ・BRANCH方式)・本体ink-pixel-studioはver16.0版に復元(大串選択A)。③運営会社(/company/)のseo-block 2section(seo-business事業領域+3事業/seo-relationSCALE関係+リンク3)削除。④aboutのseo-block 3section(seo-strengths/seo-compare/seo-quality-mechanism)削除→FAQ→contact直結・黒背景アニメ(モンタージュ ismw36/p-ism__bg2)維持。本番curl全項目検証OK(伝播後)・GUARD通過 |
scale-hp-showcase_2026-06-04_1144.tar.gz |
| ver20.1 | 2026-06-04 13:07 | OGP画像(リンクプレビュー)を最新版に確実化。大串「リンク押すと出る画像が過去verに戻ってる」FB。調査=index.htmlは既にog-terasu-hp-v12.jpg(黒背景HPタイル+TERASUロゴ・添付と一致)を指し本番ファイルも一致=本番は正しく、SNS/Googleの旧キャッシュが原因。強制再取得用にv12をコピーしたog-terasu-hp-v13.jpgへog:image/twitter:image/JSON-LD image(3箇所)を変更。本番curl=添付バイト一致確認。SNS側は各デバッガ(FB Sharing Debugger等)で再スクレイプ必要 |
scale-hp-showcase_2026-06-04_1307.tar.gz |
| ver20.2 | 2026-06-04 13:14 | ファビコン透過版をChrome強キャッシュ破棄。大串「Chromeで開くと背景黒が残る」FB(ver20.0で透過化済だが黒残存)。調査=本番favicon.ico/192/48は全てalpha(0,255)=透過済・link svg無し=本番は透過、Chromeのファビコン強キャッシュ(旧黒地白抜き版)が原因。確実な再取得のため透過版を新名favicon-c2.ico/favicon-c2-192.png/favicon-c2-48.png/apple-touch-icon-c2.pngにコピーし全18ページのlink更新(旧/favicon.ico参照0)。大串シークレットで透過確認OK |
scale-hp-showcase_2026-06-04_1314.tar.gz |
| ver20.3 | 2026-06-04 16:55 | 最低契約期間を6ヶ月→1年に変更(大串FB)。about FAQ「契約期間と解約条件は?」→「最低1年、その後3ヶ月ごとの自動更新」(JSON-LD+DOM 2箇所)・internal社内ページLTV ¥160,000→¥220,000。自動更新3ヶ月ごと・違約金なしは従来通り。Vault側も契約条件ノート13箇所(MOC/事業詳細/商談スクリプト/契約書ドラフト)+契約書確定版をv1.4化して同時更新。※プロダクト一覧L53「6ヶ月」はSCALE CRM項目のため不変。guide記事(hp-1man-yen-yasui)「最低6ヶ月が標準的オススメ」=業界一般論のため判断保留・現状維持。prod GUARD OK(demos=1410)・本番curl(ver20.3/最低1年×2/LTV¥220,000)検証OK | scale-hp-showcase_2026-06-04_1655.tar.gz |
| ver20.4 | 2026-06-11 13:15 | 問い合わせフォーム→SCALE CRM「問い合わせリスト」自動投入(大串FB超特例)。functions/api/contact.js に3つ目の配信先追加: Formspreeメール+Slack通知(既存・不変)に加え crm.scale-group.co.jp/api/inquiry へ X-Inquiry-Secret 付きPOST(サーバ→サーバ・シークレット非露出・fetchT 8s・失敗してもフォーム送信ok維持)。HTML/見た目は無変更(verマーカーのみ)。preview E2E実弾テスト成功(フォームPOST→CRM D1自動投入確認)→大串OK→prod。本番検証=TOP/contact/about 200・ver20.4配信・/api/contact 405(GET拒否=正常)。 デプロイ方式の学び: Google Drive 直の wrangler/tar はクラウド読込ハングで実質不能 → ローカルの6/6フルバックアップを /tmp/terasu-hp-deploy に展開+変更ファイル上書き→そこからデプロイ(数秒)。次回以降もこの方式 |
ver20.4-changed-files-1022(変更2ファイル)+6/6フル178MB |
| ver20.5 | 2026-06-11 13:10 | Slack問い合わせ通知に二宮メンション追加(大串FB)。functions/api/contact.js MENTION に <@U0AJFMKCPB5> 追加(大串・細川・二宮の3名へ)。HTML/見た目は無変更(verマーカーのみ)。デプロイ=ver20.4の学び通り /tmp/terasu-hp-deploy 方式(Drive直wranglerは26分ハング→kill→/tmpへ変更2ファイルcp→数秒で成功)。preview検証→大串OK(13:38)→prod反映済。本番curl検証=ver20.5配信/TOP・contact 200/api GET 405(正常)。ver20.4のCRM自動投入ブロック生存確認済 |
ver20.5-changed-files-1310(変更2ファイル) |
| ver20.6 | 2026-06-12 14:25 | 制作実績に petomo 追加(大串FB「制作実績に追加・いきなり本番デプロイでOK」=preview例外)。works/index.html に外部リンクカード追加(BRANCH/INK&PIXEL方式): https://hp-demo-petomo.pages.dev/(ペットと暮らす人のためのSNS・カテゴリ「ペットSNS」)・カード7→8・aタグ均衡24/24。サムネimg/demo-petomo.jpg新規(headless Chrome 1100×1451縦長FV・245KB)。デプロイ=/tmp/terasu-hp-deploy方式(数秒)。本番検証=TOP ver20.6/works petomoカード反映(エッジ伝播待ち後)/サムネ200 image/jpeg |
ver20.6-changed-files-1421(変更3ファイル: works/index.html + index.html + img/demo-petomo.jpg) |
| ver20.7 | 2026-06-12 14:50 | 全デモをTERASU HP配下リンク化・外部リンクカード0に(大串FB「全部のデモ、ちゃんとTERASU HP配下のデモのリンクとして載せたい」)。①petomo内部ホスト: wgetミラー78ファイル→/demos/petomo/(全相対パス・root絶対0で書換最小。クエリ付きファイル名33件正規化+href="/"27箇所→./化)。②INK&PIXEL最新版を内部ホスト再挑戦→成功: ink-pixel-preview.pages.devミラー61ファイル→/demos/ink-pixel-studio/上書き(ver16.0旧版→最新版)。ver20.0「特殊スクロールJSで内部ホスト不可」の真因=kv-line.svg手順漏れと判明(最新版もHTML/CSS全相対パス・root絶対はindex.js L43 --t-backSVG:url(/hp/img/kv-line.svg) 1箇所のみ=ver16.0と同じ箇所→同じ解決法: SVG個別取得+/demos/ink-pixel-studio/書換)。偽アセットthumb-arrow.svg×2(preview本体でも404のHTMLフォールバック)は削除=preview同一挙動。③works카드: petomo/INK&PIXEL のhref+emをterasu.scale-group.co.jp/demos/<名>/へ。ローカル実機検証(http.server+Claude Preview): 両デモconsoleエラー0・画像76/78枚broken0・kv-line動的パスOK・スクロール描画正常。pre-backup=ink-pixel-studio_ver16.0_pre-ver20.7_*.tar.gz(25.8MB・旧版復元用)。本番検証=works8カード全TERASU配下/petomo 200/ink-pixel 49110b(最新版)/kv-line 200/ver20.7 |
ver20.7-changed-files-1441(works+index.html+新demos2フォルダtar.gz 29.5MB) |
| ver20.8 | 2026-06-12 15:05 | worksリード文を「一部抜粋」表現に変更(大串FB「件数が少ないから、一部抜粋して載せてますみたいな表現入れて、全部でこれ?って思われるリスク解消」)。dg__lead: 「TERASUが手がけた制作実例です。」→「TERASUが手がけた制作実例の中から、一部を抜粋してご紹介しています。」(2行目不変)。本番検証=新リード文配信/ver20.8 |
ver20.8-changed-files-1445(works/index.html + index.html) |
| ver20.9 | 2026-06-12 15:10 | worksカード順変更(大串FB「TERASU HP・INK&PIXEL・petomoの3つが上、あとは順番なんでも良い」)。新順=TERASU/INK&PIXEL/petomo/匠工房/ライフリンク/LINX/TIME+/MIO(4位以下は従来相対順)。python並べ替え(カード集合・総バイト・a均衡24/24不変をassert)。本番検証=新順配信/ver20.9 | ver20.9-changed-files-1449(works/index.html + index.html) |
| ver20.10 | 2026-06-13 07:35 | petomoデモをTERASUオリジナルコード化版に差し替え(大串FB「オリジナルコード化忘れてたらしくて、こっちのコードに差し替え」・デモ運用ルール適用第1号=直prod)。元デモ最新版を再ミラー(78ファイル)→旧t-sys/wp-content/構造がassets//lib//media/構造に刷新・wp指紋0。href=\"/\"27箇所→./化・root絶対url() 0・偽アセット0・ローカル実機検証(console 0/画像76 broken 0/FV見た目完全同一→サムネ既存demo-petomo.jpg続投)。worksカード変更なし(href/em/サムネ不変)。pre-backup=petomo_v1_pre-ver20.10_0613_0733.tar.gz。本番検証=t-sys 0/wp指紋0/assets 103/style.css 200/ver20.10 |
ver20.10-changed-files-0734(index.html + petomo新版tar.gz) |
| ver20.11 | 2026-06-13 09:05 | 全体オリジナル化完遂(大串FB「3つ以外削除・残す3つは最新オリジナル化・本体も全チェック項目で完璧に」)。①works8→3カード(TERASU/INK&PIXEL/petomo)。②petomo 19項目: CMS痕跡全除去(wp-polyfill×3/CF7 CSS+inline/block-library/global-styles 9.8KB/classic-theme/wp-custom-css/Ad Inserterプラグイン断片ai_front×13/media→assets移動/?ver=クエリ)+命名t-化(pm-→t-pm- 1347/pt-→t-pt- 461/is_→t-is_ 28/id群/JS変数6種)+TERASUコメント。③INK&PIXEL: 元ドメイン表記2箇所→架空ink-pixel-studio.jp(同字数)+コメント。④本体23頁の指紋完全除去: yoast-schema-graph class/Site Kit generatorメタ/global-styles(--wp--変数47種)/classic-theme/wp-block-heading+paragraph inline CSS/CF7+reCAPTCHAエコシステム一式(wp-hooks/wp-i18n/swv/CF7本体+設定+translations/recaptcha api.js/wpcf7-recaptcha/SiteKitイベント/polyfill)/contactフォームwpcf7系class20種→t-系(テーマCSS17+form CSS連動)/死にwpcf7mailsentリスナー。⑤news残置6頁→TOP転送(301)。⑥無参照WPファイル物理削除(swv/hooks/i18n/polyfill/core blocks)。検証: contactピクセルパーフェクト一致(テーマCSS連動漏れでフォーム崩れ→検知→修正後完全一致)/TOP=FVスライダー位相差のみ(自己差分21.36%と同一bbox で静的部分同一を証明)/全8頁HTTP200・指紋0/works3カード/フォーム経路422検証で生存確認(FormData→API→validation)/FV保護資産ver12系全生存 | pre-ver20.11_works8-demos(29.5MB)+ver20.11-changed(29.6MB) |
| ver20.12 | 2026-06-13 09:50 | contact種別ラジオ崩れ緊急修正=CSSキャッシュバスト(大串スクショFB「お問い合わせ種別バグってる・前の見た目に直して」)。真因=ver20.11の theme/style.css 修正版はサーバ配信済みだったが、Cache-Control max-age=14400(4h) により修正前の数分間に配られた旧CSS(wpcf7セレクタ無し)がブラウザ強キャッシュ→HTML新+CSS旧の不整合でラジオ横流れ。対処=全style.css参照に?v=2012付与(11ページ+form CSS 1箇所・URL変更で全クライアント強制再取得=favicon ver20.2と同手法)。本番検証=contact v=2012参照/新URL CSS=.t-choice 5/本番実機スクショでラジオ縦5整列を確認。ユーザーは通常リロードだけで復旧(ハードリロード不要) |
ver20.11-changedに含む(HTML 11+index.html) |
| ver20.13 | 2026-06-13 10:00 | contact残存reCAPTCHA案内文を削除(大串FB「下記の文字は残していていいのかな?」)。reCAPTCHA本体はver20.11で除去済みのため「このサイトはreCAPTCHAによって保護されており〜」の案内文(pm-contactform__accept is-google pブロック+Google規約リンク2本)が虚偽表示化していた=消し漏れ。balanced削除(div均衡不変・p−1)・policies.google.com参照0。本番検証=reCAPTCHA文字列消滅/ver20.13/contact 200 |
(軽微・ver20.11系backupでカバー) |
| ver20.14 | 2026-06-13 10:30 | 問い合わせ送信ボタン根治(大串「送信ボタン押せない」)。app.js(テーマJS)の必須入力カウンタ→#js-submit disabled解除ロジックが、ver20.11 class刷新でセレクタ不一致+ミラー由来でカウンタ初期値0で数学的に解除不能の二重欠陥。disabled付与自体を解除化(e.disabled=!0→!1)+セレクタt-required化+app.js?v=2014キャッシュバスト11頁。必須チェックはバックエンド422が担保(ver16.6検証済) |
app.js変更・ver20.11系backup |
| ver20.15 | 2026-06-15 | スマホ速度最適化。FV画像fetchpriority=high 36→7適正化(eager維持=白チカ対策維持)+service-icon03@2x.png 840→254KB(880→480px・表示240px×2に適正化・透過維持)。見た目ゼロ影響。LCP主因はFVモンタージュ全体+JSで演出とのトレードオフ |
ver20.15-icons-orig |
| ver20.16 | 2026-06-15 | スマホTOP修正5点(大串スマホFB)。FV回転リング(mvBgCircle)非表示/選ばれる理由03下余白/CONTACT縦積み中央/MENU文字白/メニュー「お気軽に」削除+メールブロック削除。全@media内orスマホ専用cm-nav・PC不変 | ver20.16-pre |
| works追加(VOID) | 2026-08-16 | 制作実績に VOID architects(建築設計事務所デモ)を追加。demos/void-architects/ にデモ一式を移植(絶対パスを配下パス化・原本main.js非改変、複製版のみJSONパス2箇所書換)+サムネ /img/demo-void-architects.jpg +worksカードをTERASU直後に挿入。preview実機確認→main反映→本番実機確認済み。→ 同日 大串指示で取り消し(revert bde9250 / main 13986c5・本番から削除確認済み)。デモ原本=scale-group-jp/demo-void-architects(ver41)は存続 | git e54b67a |
| ver20.17 | 2026-06-15 | 下層ページSP最適化。about見出し改行(スマホのみ<br class=t-sp-br>)/works「サイトを見る↗」絵文字化をU+FE0Eでテキスト化(3枚)/CONTACT縦積み中央を全11頁展開。全@media内 |
- |
| ver20.18 | 2026-06-15 | スマホ追加4点(大串FB)。①メニュー再構成(HOME削除/お問合せナビ化/上部contactブロック削除)全11頁 ②CONTACT kurokitec風(左寄せ・矢印右下)全頁 ③サービス詳細montage非表示でPC同様白背景 ④about WHAT WE DO位置上げ。全@media内orスマホ専用でPC不変 | - |
| ver20.19 | 2026-06-15 15:30 | スマホ微修正3点(大串FB・直prod)。②CONTACT矢印外枠円(:before)削除で説明文被り解消 ③サービス詳細上部の出っ張り根治(真因=serviceBg背景montage・非表示化で境界平ら) ④WHAT WE DO更に上(-5em・セレクタ.p-ism__spiritsHeadTitle修正で効かせる)。本番PC(1280)で見出し1行/WHATWEDO配置/montage維持を確認・全@media内。重要学び: スマホmontageは多層(serviceBodySlider→tphf→serviceBg)で、真因はserviceBg。FV mvBgは寄り道だった |
- |
| ver20.20 | 2026-06-27 17:10 | 料金改定(2026-06-27 大串決裁)=月額1万→1.5万・スコープ線引き反映。①月額: 本体6頁(index/about/company/contact/works/lp)+コラム13本のCTA+JSON-LD price15000/priceRange¥15,000(初期10万円は据置)。⑦⑧⑤ about FAQ(HTML+JSON-LD両方): デザイン全面刷新は別途5万円/予約・EC・会員は外部サービス埋込・リンクのみ(会員ログインNO)/ロゴ新規2万・キャラIP制作2万(追加ポーズ500円)オプション。②ページ最大15・③納期(初稿1ヶ月/公開2ヶ月)・④多言語(自社オプション記載なし)は既存表記が正で維持。「5ページまで」は他社批判の例示のため維持。preview→大串OK→prod。本番curl全公開7頁で月額1.5万/price15000/旧価格0/初期100000据置を検証OK。guide記事5本(月額1万円がタイトル/URL/SEOキーワード軸)は別タスクでリライト保留 |
git: preview e5ac51b → main d2d3f77 |
| ver20.21 | 2026-06-27 17:30 | 料金改定の漏れ補完。privacy(プライバシーポリシー)のJSON-LD price(10000→15000)/priceRange(¥10,000→¥15,000)/description(月額1万→1.5万)。ver20.20で公開本体は反映済だがprivacyはJSON-LDに料金が焼かれており初回スイープで漏れていた分。internal/index.html(noindex社内ページ・PM報酬¥10,000/売上シミュ値)は顧客向け料金でないため対象外。本番curl privacy price15000/旧0 検証OK |
git: main 546a6d4 |
| ver20.22 | 2026-06-27 18:00 | コラム「飲食店のホームページ制作で集客できる7つの必須要素」追加(/column/inshokuten-hp-seisaku/)。/column-flow フロー全7Step完走。StockSun型(build_column.py)適用・約8000字・H2×9/H3×16・表3・FAQ4・JSON-LD(Article/パンくず/FAQ=1本目より強化)。月額1.5万・初期10万据置・自社モデルdisらない論調。一覧カード先頭+sitemap追記。サムネ1280×720(専用フォルダ /Downloads/TERASU コラム サムネイル/ 運用を恒久化=learning第19弾)。型ソースの旧CTA「月額1万」も1.5万へ横展開是正。本番curl: HTTP200/cm-nav/目次/JSON-LD/月額1.5万7・旧0/残骸0/サムネimage-png200/一覧カード/sitemap 全OK |
git: main 7d5c3de |
| ver20.23 | 2026-07-01 | トップmeta/og description微修正(初稿の一文削除・大串指定SERP文言=「初期10万円・月額1.5万円・修正無制限で、高品質なHPを2ヶ月以内に納品します。」)。+本番巻き戻り事故の復旧と根本封鎖: 6-27の料金改定/コラム反映後、6-29 08:37に本番トップがver20.19(改定前)へ巻き戻る事故(Cloudflare deployment trigger=ad_hoc=GitHub外の直接wrangler)。真因=scale_deploy.sh の terasu ケースが旧Drive凍結コピー(マイドライブ/AI/scale-hp-showcase)を指したまま→scale_deploy.sh terasu prod実行で古版が本番上書き。対策=①ver20.22で復旧 ②scale_deploy.sh terasu を封鎖(exit 1でGitHub手順案内)。terasuは git push origin main 一本化。本番curl: ver20.23/meta desc新文言/月額1.5万 検証OK |
git: main 8dc24fe |
| ver20.24 | 2026-07-06 | コラム(13本目)「美容室のホームページ制作で予約を増やす5つの必須要素」追加(/column/biyoushitsu-hp-seisaku/)。StockSun型(build_column.py)適用・約8200字・目次/H3×15/表2/FAQ4・JSON-LD(Article/パンくず/FAQ)・月額1.5万・自社モデルdisらない(ホットペッパー併用前提)。一覧カード先頭+sitemap追記。サムネ コラム_13.png(1280×720・専用命名)。/column-flow 第20弾=各Stepで「◯コラム目」表示+サムネはコラム番号命名 | git: main(preview→main) |
| ver20.25 | 2026-07-06 | 結論先出しの要素列挙を1行→縦並び(<br>)化(大串FB・第21弾): 「①コンセプト ②写真…」が1行だと見づらい→導入文<mark>+その下に①〜Nを1行ずつ縦並び。早見表(table)は詳細として維持。美容室(13本目)+飲食店(12本目)も横展開で同修正。本番curl: 美容室HTTP200/結論縦並び/月額1.5万7・旧0/残骸0/サムネimage-png/飲食店縦並び/一覧/sitemap/トップver20.25 全OK |
git: main e92f73f |
| ver20.26 | 2026-07-06 | コラム(14本目)「歯科・クリニックのホームページ制作で患者を増やす方法」追加(/column/shika-clinic-hp-seisaku/)。StockSun型(build_column.py)適用・本文5,722字・H2×7/H3×10/表2/FAQ4・JSON-LD(Article/パンくず/FAQ)・月額1.5万・自社モデルdisらない。差別化=2026年4月改正の医療広告ガイドライン(禁止7類型/体験談/ビフォーアフター)を集患と両立で解説。一覧カード先頭+sitemap追記。サムネ コラム_14.png(1280×720)。学び: hp-cost骨格から作ると構造化データが付かない→Step5監査で検知しld+jsonをソース注入して再ビルドで是正(learning第22弾候補)。本番curl: 記事HTTP200/title/一覧カード/サムネ200 全OK | git: main 2f0665f |
| ver20.27(→ver20.28で撤回) | 2026-07-11 | 制作実績ギャラリー(/works/)を3→60本に大幅拡充(HP制作をClaudeへ引き継ぎ後の初タスク)。※大串指示でver20.28にてロールバック撤回済(勝手な60本追加=NG。学び=Claude_学びストック2026-07-11)。空だったWORKS(TERASU/INK&PIXEL/petomoの3カードのみ)を12業種×5本=60本の制作実例で拡充+業種フィルタ13チップ(すべて/医療・歯科/美容・サロン/飲食/士業/不動産・建築/教育/IT・企業/健康・フィットネス/ペット/ブライダル・写真/旅・宿泊/暮らし・サービス)。各デモのヒーローをヘッドレスChrome(--headless=new --virtual-time-budget=9000でイントロ演出を回避し本コンテンツ取得)でスクショ→sips --resampleWidth 900でJPG最適化(img/works/60枚・各20〜128KB)。全カードは内部/demos/<名>/ホストへリンク(恒久ルール遵守=外部pages.dev非露出)。末尾に「掲載は制作サンプル・実制作は完全オーダーメイド」注記+無料相談CTA。既存.dgデザイン踏襲・PC不変。preview実機確認(60カード/フィルタ動作/画像image/jpeg配信)→main。本番curl: /works/ 200・dg__c60・画像image/jpeg 検証OK。生成物: scratchpad shoot_works.sh(スクショ) + gen_works.py(データ駆動でカード生成=追加容易) |
git: preview 96bf857 → main fdf20a1 |
| ver20.28 ★現行prod | 2026-07-11 | 制作実績(/works/)をver20.26の元の3カードにロールバック(大串指示「3カードに戻して勝手に入れないで本番からも消して」)。ver20.27で追加した60本ギャラリー+img/works/60枚を撤回・git rm。works/index.htmlはgit checkout 11d32a1 -- works/index.htmlで3カード版(TERASU/INK&PIXEL/petomo)に復元。本番curl: /works/ 200・dg__c3・フィルタ0。削除画像はオリジンから消滅(?query付きでcf-cache MISS→HTMLフォールバック)確認、ただしエッジキャッシュにimmutable旧アセットがHITで残存(ページ未参照=実害なし・不人気URLはLRUで自然消滅・即消すならCFキャッシュPurge要)。学び=実績等の対外的な新規追加は勝手に本番へ載せない(Claude_学びストック2026-07-11・memfeedback-no-autonomous-portfolio-additions) |
git: preview dd5fa9a → main dd5fa9a |
** 内部ホスト時の重要ハマりどころ(学び):
- wget --page-requisites は JS動的読込アセットを取らない → INK&PIXELの背景SVG kv-line.svg が欠落。さらに index.js が --t-backSVG: url(/hp/img/kv-line.svg) をルート絶対パスで動的設定していて/demos/配下で404 → シェイプ全消失。SVG個別取得 + index.js内のパスを/demos/ink-pixel-studio/に書換で解決(claude-in-chromeのconsoleでTypeErrorと404を実機特定)。
- pages.devは存在しないアセットに200でHTMLフォールバックを返す → 「ファイル存在」≠「本物」。fileコマンドで中身がHTMLの偽アセットを検出して除外(mio fv_sky.jpg等)。
- Gatsby/Next製SPAはサブパス内部ホスト不可**(JSバンドルに/絶対パス焼込み)→外部リンク or pathPrefix再ビルドが必要。
ver15.0 本番巻き戻り事故(2026-06-04 初発・06-06 再発 → 自動復旧化で対策済)
2026-06-04 深夜0:28〜4:28、本番が ver15.0(6/1 17:10版)へ8回 deploy で丸ごと巻き戻った事故。前セッションで ver20.2 へ復旧済。本セッションで根本原因を特定。2026-06-06 に再発 → monitor 自動復旧化で恒久対策(下記)。
真因(大串確認済)
- デモ制作者が、各デモ(匠工房/ライフリンク/TIME+/LINX/INK&PIXEL)が「TERASU傘下=
scale-hp-showcaseリポ内/demos/にホスト」されていると知らず、6/1時点の古いリポコピーで5つ別セッションを動かし、scale-hp-showcase全体を ver15.0 で直 deploy していた。 - 実測の裏付け: 巻き戻り版が 全部 ver15.0(=デモ追加 ver16.0/6/2 より前のコピー) / 深夜 8回 deploy(5セッション×複数回と一致) / 本番が 部分でなく丸ごと置換(古いリポ全体 deploy の挙動)。
対策(実施済)
- 大串がデモ制作者に「
scale-hp-showcaseは共有リポ・直 deploy 禁止」を共有 → 人的経路は閉塞・以降 新たな ver15 deploy 無し(沈静化を deploy履歴で確認)。
当初の残課題(2026-06-04 時点・大串判断「Bで」見送り)
terasu_prod_monitor.sh(launchd 10分おき) は新HPマーカー(tphf__t/いいHPは、事業を照らす)のみ判定し ver番号を見ない → ver15.0 も「新HP」なので巻き戻りを8回とも素通り。npx not found(launchd PATH) も未修整。- → 多層防御は当時 大串判断で見送り(B)。「再発時はこの monitor 欠陥で自動検知できない点に留意」と記録していた。
2026-06-06 再発 → monitor自動復旧化で恒久対策(実装済)
- 2026-06-06、再び本番が ver15.0(6/1版)へ巻き戻り。14時間前(6/5 19時頃)に何者かが ver15.0 を1回 Production deploy(犯人の心当たりは大串も「わからない」=別端末/別セッションで特定不可)。正本は ver20.3 のまま無事 →
scale_deploy.sh terasu prodで即 ver20.3 復旧。monitor は前回同様「OK 新HP正常」と素通り。 - 2回連続事故を受け、見送っていた多層防御を実装。
terasu_prod_monitor.sh改修(2026-06-06、改修前backup~/Obsidian/scripts/terasu_prod_monitor.sh.bak_20260606_0934):
1. ver番号チェック — 本番ver ≠ 正本ver なら新HPマーカーが揃っていても異常検知(LOCAL_VER/PROD_VER比較)。
2. PATH追加 + npxフルパス化 —export PATH=/opt/homebrew/bin:...+/opt/homebrew/bin/npx。前回 npx not found で自動復旧が失敗していた問題を根治。
3. 安全弁 — 正本ver ≥ 本番ver の時のみ復旧 deploy(正本が古い版に巻き戻っていた場合の誤上書きを防止)。
4. ログに ver 記録。launchd は次回実行で自動反映(reload不要・09:35実行で稼働確認済)。 - → 今後 ver15 等に巻き戻っても monitor が10分以内に検知→正本(ver20.3)で自動復旧。商談相手に壊れたHPを長時間晒すリスクを構造的に低減。
- 残: 犯人(ver15.0 を deploy する別環境)の特定は未達 → Cloudflare token 絞り等の経路遮断は今後の課題(一次防御として monitor 自動復旧を稼働)。
- 教訓: 人的経路の「共有」は再発し得る(6/4で共有→6/6再発で実証)=技術的な自動復旧の保険が要る。決定的事実をつかんだら機械的全探索の前に大串へ共有して心当たり確認が速い(6/4で実証)。
注意事項
- index.htmlだけ復元するパターン: ver番号をindex.htmlだけ書き戻したい時は
tar -xzfでscale-hp-showcase/index.htmlのみ抽出してcp。img/ 等の他ファイルは現状維持で OK な場合に使う。 - backup tar.gz は全ファイル含む: 画像も含めて 180-193MB。完全状態を復元したい時に使う。
- 新版のbackupは消さない: バージョン番号と紐づくbackupは長期保存。 90日以上経過した古いbackupだけ整理対象。
関連
- 作業記録: 2026-05-18_TERASU_HPリニューアル_テスト版_作業記録
- 全システム配置マップ: _SCALE_全システム配置マップ
- memory:
reference_terasu_hp_versions.md(バージョン管理ルール)