⚙️ Vault運用

2026-06-23_作業ログ

最終更新 2026年06月24日 / 90_Meta/Claude作業ログ/2026-06-23_作業ログ.md

作業ログ 2026-06-23

13:49〜14:03 - TERASU CRM 大串FB一気通し9件 本番LIVE v3.0.307

対象

TERASU CRM(terasu-mgmt / crm.terasu.scale-group.co.jp / 正本 ~/株式会社SCALE/hp/terasu/)。本番 v=20260623j / アプリ v3.0.305。下の「11:21〜12:57 v3.0.298」エントリの続き。

大串FBと対応(実機確認しながら7件・全て本番LIVE・1セッション)

  1. タスクまとめモーダルに期日・担当部署の編集追加_ttTaskModal拡張・反映先PM/制作プルダウン+期日入力→task_triggers更新=大串自身が編集可・業務ガイドにも反映)
  2. 契約・請求:タブ順を 報酬/契約状況/メンバー全体報酬 に+🔒を絵文字→lock SVG(報酬自分のみ/メンバー全体管理者のみは既存)
  3. タスク管理:新規タスクに優先度(緊急/高/中/低)+期日カレンダーcolor-scheme:dark+一覧に優先度バッジ
  4. 修正依頼:優先度3→4段階(緊急/高/中/低)+制作タスク連携で優先度伝達(_revToTaskPriority・新規+更新)=本文(タスク名)/担当/締切/優先度を全項目連携
  5. フォーム回答:一覧の文字を濃く(受信日/回答数 text3→text2・ゴール text2→text)
  6. タスクまとめ:上部タブ左ズレ修正(content枠内へ)+反映先/期日列を全カード縦揃え(table-layout:fixed)
  7. 月次レポート:「社内の月次振り返り」自動表示に再設計(大串とAskUserQuestionで「まず社内振り返り」確定・案件プルダウン全体/各案件+月送り・生成ボタン廃止・全体=契約/納品/解約/MRR/修正依頼+6ヶ月推移・各案件=進捗/修正/MRR・PROJECT_PAGES除外で案件未選択でも全体表示)
  8. 業務ガイドをタスク管理のタブに統合:PM業務ガイド→タスク管理(PM)、制作業務ガイド→タスク管理(制作)の業務ガイドタブへ。独立NAV廃止(_guideBodyHtml分離・renderTaskMgmtにguideタブ・seg切替は_guideRerenderでタブUI保持・route/renderGuide休眠)。
  9. タスクまとめ期日「+-1日」修正:前日(off=-1)が「+-1日」表示→当日/+N日/-N日に統一(_ttReadRows・モーダル/業務ガイドと統一)。

編集ファイル

lib/task_triggers.js / pages.js(契約請求) / lib/task_mgmt.js(新規タスク優先度) / lib/revisions.js(優先度4段階・連携) / lib/form_inbox.js(文字色) / lib/monthly_report.js(再設計) / core.js(PROJECT_PAGES) / lib/manual.js(changelog)

デプロイ・確認

backup複数(pre-modal-contract/pre-tt-modal-fulledit/pre-guide-tabs他)。node --check全OK。本番 v=20260623k 全script反映・各機能curl確認(_ttTaskModal/_revToTaskPriority/table-layout:fixed/_mrOverallHtml/_guideBodyHtml/PROJECT_PAGES月次除外0/NAV業務ガイド0/期日当日)・/api/data 401。ver=v3.0.307実測(9件)。直接prod(社内ツール)。

設計判断・注意点

  • 月次レポート目的=「社内振り返り」を大串確認で確定。クライアント向け運用報告は後日。
  • 修正依頼優先度はtask_mgmt TK_PRIORITIESと統一(緊急1/高2/中3/低4)。
  • 旧AI月次生成(generateMonthlyReport等)・旧infra・旧PM_GUIDE_DEFAULT等は休眠保持。
  • task_triggersのtarget/off変更がモーダルから可能に(大串自身が編集)。

大串の実機確認FB待ち(7項目・特に月次レポートの中身と修正依頼→制作タスク連携)。


13:25 - SCALE CRM v11.5.97 Slack通知連携 + 基準点v83〜97をDrive競合消失から復元

対象

SCALE CRM(scale-lead / crm.scale-group.co.jp / 正本 ~/株式会社SCALE/scale-lead/)。本番アプリ v11.5.97 LIVE。

v11.5.97(電話対応/問い合わせリストのSlack架電報告通知を連携)

大串FB「TERASU案件の電話対応/問い合わせリストで架電してもSlack通知が来ない・架電リストと同様に連携してほしい」。真因=_checkSlackOnStatusChange(pagecore_slack.js)の通知対象が受付ブロック/失注/育成/資料請求/メール日程調整の5種のみで、電話対応/問い合わせの新ステータス(見送り/メール回答待ち/再架電/日程調整中/検討中・保留/連絡不可)が対象外だった。対応=通知対象をlistType別化(listType phone/inquiry はアポ獲得以外を全部「架電報告」teleapo_loss へ・大串選択「アポ獲得以外を全部通知」/対象外は架電でないため除外/アポ獲得は従来通り「アポ報告」teleapo_apo)。モーダル不要ステータス(ST_REQUIRED_FIELDS=null)はインライン即保存で通知漏れ→clInlineSave!needModal限定で通知呼出を追加。文面=_slackPostCallReportToThreadに汎用else+iconMap新8種。架電リスト(アウトバウンド)は無変更=退化なし。

基準点のDrive同期競合による消失と復元(今セッションの主作業)

  • 事象: _SCALE_CRM_最新基準点.md が6/17(v11.5.82)時点までDrive同期競合で巻き戻り、phase_v11_5_83〜96(6/18〜22の14版)と作業ログ_2026-06-18〜22がまるごと消失。v97更新時のEdit失敗(frontmatterがv82のまま)で発覚。
  • 真因: 6/18〜22に基準点へ書いたphase更新が git commit される前にDrive側の旧版で上書きされ、その後 auto-sync が旧版を commit(基準点の最新git commitが6/17 de09b8e のまま)。Vault git auto-sync(5分)自体は健全に稼働中(最新 b33e271 「Auto sync 2026-06-23 13:01」)だが、commit前の編集はDrive競合の窓で消える。
  • 復元: 一次記録が残る service.js COCREATE_VERSIONS(本番v11.5.97にデプロイ済み・v80〜97の全changelog健在)から phase_v11_5_83〜97 を再構築して基準点frontmatterに復元。frontmatter上部メタもv11.5.97に更新+recovery_note_2026-06-23 を追記。
  • 再消失防止: 復元直後に git add + commit(auto-sync任せにせず明示commit)。
  • 検証: v83〜97 全15版OK・各phase行クオート整合OK・欠番なし。

教訓(恒久)

基準点ノートの重要更新は 編集後に即 git commit する。Drive auto-sync(5分)に任せると、別端末/Drive側の競合で巻き戻り→auto-syncが旧版をcommitする窓がある。今回は service.js のchangelogが一次記録として本番に残っていたため完全復元できた=コード内changelogはVault消失時の最後の砦vault-baseline-commit-immediately


11:21〜12:57 - 大串FB6件(ドメインデプロイ削除/部署タブ/HP制作フロー番号/業務ガイド連動/優先度列削除/タスク詳細モーダル)本番LIVE v3.0.298

対象

TERASU CRM(terasu-mgmt / crm.terasu.scale-group.co.jp / 正本 ~/株式会社SCALE/hp/terasu/)。本番 v=20260623e / アプリ v3.0.295。前セッションのhandoff直後、大串の実機確認FB3件を1デプロイで対応。

大串FBと対応

  1. ドメイン・デプロイ削除: 「使うイメージ湧かない・顧客がドメイン触る・必須じゃないなら削除しちゃおう」→ infra を NAV(core.js:1420)/route(2102)/PROJECT_PAGES(2153) から除外。renderInfra/saveInfra(pages.js)は休眠保持。マニュアルのデプロイ手順から「/infra に登録」案内も除去。
  2. タスクまとめ部署タブ(全体/PM部署/制作部署): 「PM・制作など担当部署ごとに選んだらそれだけ見える・全体+他2タブで3タブ」→ renderTaskTriggers 上部にタブ(window._ttDeptTab)。target=PM/制作で絞り込み・空イベントカード非表示・編集中は全体固定。 大串は「FS部署」と書いたが TT_TARGETS=['制作','PM'] でFSタスクは存在しない(FS=受注前の商談担当でタスクまとめ対象外)→ 文頭「PM・制作など」と実態に合わせPM/制作とした。報告で明示。FSが別途必要なら追加指示待ち。
  3. HP制作フロー番号の青・丸除去: 「1〜13が青文字・色なくして・丸で囲う必要もない」→ hp_flow_guide.js の番号バッジ(青グラデ円形)を廃止しグレー(var(--text3))プレーンに。中黒(・)も青→グレー。番号は右上「Step N/13」で確認可。
  4. 業務ガイドをタスクまとめ連動に(二重管理の根治・追加FB): 「タスクまとめが制作の最新ver・制作業務ガイドは合ってる?合わせて/PM業務ガイドも最新を反映して」→ 業務ガイド(PM/制作)をtask_triggersから動的生成(_guideFromTriggers)。制作=「後で加筆」の仮テンプレ放置→タスクまとめの制作13タスク(キックオフ基準)に。PM=v3.0.289で揃え済みだが固定換算→各基準日(契約/KO/納品)+N日の正確表示に。renderGuideは読み取り専用化+「タスクまとめを編集」ボタン。前回PMを手で揃えてまた聞かれた=二重管理が真因→動的生成で根治。
  5. タスクまとめ:優先度列を削除: 「タスクに優先度はいらない・列ごと削除」→ 読み取り/編集UIから優先度列削除(3列に)。生成タスクはnormal固定。TT_PRIORITIES休眠。
  6. タスククリック→詳細+メール文面モーダル(共通): 「タスク押したらモーダルで詳細・メール文面(FMT)・タスクまとめと業務ガイドで全く同じ内容」→ 各タスク行クリックで共通モーダル_ttTaskModal。detail/mailをtask_triggersに保存=単一ソースで全画面同一。メール文面コピー有・画面外クリック無効。業務ガイドのテンプレ列はモーダルに集約。FB「同期されてる?」は前回v3.0.296で実装済みと確認・回答。

編集ファイル

core.js(infra 3箇所) / pages.js(デプロイ手順文言) / lib/task_triggers.js(部署タブ・優先度削除・タスクモーダル) / lib/hp_flow_guide.js(番号青除去) / lib/pm_projects.js(業務ガイド連動・行クリック) / lib/manual.js(changelog 6件)

デプロイ・確認

backup: 4本(pre-infra-tabs-flow/pre-guide-trigger-sync/pre-tt-priority-remove)。node --check 全OK。本番 v=20260623g 全script反映・部署タブ(_ttDeptTab=4)・_ttTaskModal/_ttTaskRowClick配信・優先度esc(pr)0・infra NAV 0・_guideFromTriggers配信・/api/data 401。ver=v3.0.298 実測(298 bullets)。業務ガイド生成はnodeで制作13/PM4フェーズの期日まで実検証。直接prod(社内ツール)。

注意点・退化リスク

  • changelog(lib/manual.js)は template literal内=バッククォート禁止(今回も不使用で node --check OK)
  • infra の renderInfra/saveInfra は pages.js に休眠保持(NAVから消えただけ・データ温存)。復活時は core.js の3箇所(NAVコメント・R-mapコメント・PROJECT_PAGES)を戻す
  • タスクまとめのタスク反映先を PM/制作 以外(例:FS)に変えると部署タブのフィルタ対象が増える。タブを増やす場合は task_triggers の TT_TARGETS も拡張が必要

大串の実機確認FB待ち(特にタスクまとめのPM/制作タブが意図通りか・ドメインデプロイ消えたか・HP制作フローの番号の見た目)。


10:48 - /handoff TERASU CRM 大量改修(v3.0.288→292・本番LIVE)

対象システム

TERASU CRM(terasu-mgmt / crm.terasu.scale-group.co.jp / 正本 ~/株式会社SCALE/hp/terasu/)。本番 v=20260623d / アプリ v3.0.292。

セッション背景

前セッション(06-22)のフォーム自動連携・タスクまとめ4イベント化・受注案件シート改修の続き。06-23 はフォーム反映漏れ対策・レポートタブ・進行状況のタスクまとめ連動一元化まで。

完了タスク(v3.0.288→292・主要)

  • フォーム反映漏れ対策=あいまいマッチ: KO_FORM_MAPの質問文とGoogleフォームの質問文が完全一致でなくても拾えるよう _koNormQ(括弧と中身/空白/コロン除去)で正規化マッチ。_koApplyFormRow を normRow ベースに。production_policy ラベル「HP制作の進め方(先方の希望)」→「HP制作の進め方」(括弧外し)。sel_text プルダウン幅 max-width:220px→none/flex:1/min-width:240px(見切れ解消)。手動入力でも項目チェック自動ON(_koOnChange で data-kochk 更新)+チェック色をグレー(#94a3b8)に統一。
  • フォーム回答セクション右上に「フォーム編集」「回答ページ」外部リンクボタン追加。
  • ダッシュボード数値修正: renderDashboard を pm_excluded(取り消し案件=YYaaa等)・deleted_at 除外=常に最新の真実(誤タップ分が残らない)。
  • フォーム回答に「レポート」タブ追加(v3.0.290): 回答一覧/レポートの2タブ。レポート=総回答数/反映状況サマリ+主要選択式項目を選択肢別に件数/%バーで集計(_friReportInner/FRI_REPORT_FIELDS・あいまいマッチ)。
  • 進行ガイドを最新タスクまとめに同期(v3.0.289)。
  • 受注案件シート進行状況をタスクまとめ連動で一元化(v3.0.291): 「チェック」「進行(ガイド)」2列→「進行状況」1列(PM ●/N・制作 ●/M)。クリックで進行モーダル(task_triggers全タスクをPM群/制作群・チェック・期日・次タスクハイライト)。flow_checks(key=event|name)にD1保存=リアルタイム同期。源はタスクまとめ。品質チェック26項目は制作「公開前レビュー」配下のサブチェック(qa|)に統合(A案)・納品ゲートも _pmFlowQACount で判定。
  • PMダッシュボード「最終チェック待ち」も _pmFlowQACount に統一(v3.0.292)=全画面で品質チェック参照を一本化。

編集ファイル

  • kickoff.js — _koNormQ/_koApplyFormRow あいまいマッチ・production_policyラベル・sel_text幅・_koField data-kochk+グレー色・_koOnChange手動チェック自動ON
  • lib/form_inbox.js — フォーム編集/回答ボタン・レポートタブ(_friReportInner/FRI_REPORT_FIELDS/_friAnsOf)
  • core.js — renderDashboard pm_excluded/deleted_at 除外
  • lib/pm_projects.js — 進行状況一元化(_pmFlowTasks/_pmFlowProgress/_pmFlowModal/_pmFlowQACount/_pmFlowToggle/_pmFlowQAModal)・最終チェック待ちQA統一
  • lib/manual.js — changelog

デプロイ・バックアップ

  • 本番 v=20260623d / アプリ v3.0.292 / 全デプロイ済・本番?v実測確認
  • backup: terasu-mgmt_2026-06-23_*(formreport-tab / flow-unify / dash-qa-unify 等)
  • 直接prod(社内ツール)・node --check 全OK

ユーザーFB(重要・恒久)

  • 集計・KPIは常に最新の真実を反映(pm_excluded/deleted_at除外)。誤タップで間違いデータが残り続ける設計はNG(memory feedback_always_latest_truth
  • フォームの質問文が多少違っても反映されるように(あいまいマッチ)
  • 進行チェックはタスクまとめ連動で一元化・PM/制作それぞれ全何ステップ・今どこか・リアルタイム同期

注意ポイント・退化リスク

  • changelog(lib/manual.js)は template literal内=本文にバッククォート禁止(node --checkで構文エラー・このセッションで2回やらかし)
  • 旧 PM_GUIDE_DEFAULT / _pmpCheckCount(p.checks) / _pmGuideRunModal / _pmChecklistModal は休眠保持。進行は flow_checks が正
  • task_triggers のタスク名を変えると flow_checks のキー(event|name)が変わる→既存チェックが外れる。タスク名変更は慎重に
  • Apps Scriptトリガーはフォームにコンテナバインド済(terasu.scale@gmail所有・getActiveForm使用)。openByドは別アカウント権限で不可

次のセッションで取り得る選択肢(実機確認が最優先)

  1. 受注案件シートでキックオフ日入力→キックオフMTG準備(前日)/実施タスクが自動生成されるか/日付変更→期日スライドするか
  2. 進行状況モーダル(PM/制作の全ステップ・次タスク)・レポートタブの実機FB対応
  3. 案件切替プルダウン(.ko-projsel・220px)も会社名が長いと見切れる→必要なら広げる

引き継ぎファイル

/tmp/handoff_20260623_104810.txt


07:16 - /handoff 実行(HackCamp HubSpotマニュアル制作)

対象システム

HackCamp HubSpotマニュアル(新規)/ hackcamp-hubspot-manual

セッション背景

HackCamp案件のFS(IS)新規メンバー向けに、HubSpotの使い方マニュアルを制作。トンマナ・サイト形式はterasu-pm-manual(TERASU PMマニュアル)と同一にする指示。

完了タスク(詳細)

  • terasu-pm-manualの仕組み(source.html→gen.py分割生成方式・style.css/common.js)を読み込み把握
  • サイト名 hackcamp-hubspot-manual に確定(大串OK)
  • 想定読者=HackCI案件のFS専用と確定
  • 第1版(6ページ)を生成・ローカル動作確認(クリーンURL含め200)
  • HubSpotとは(index)/ ①コンタクト / ②会社 / ③取引 / よく使う操作 / Q&A
  • ネット情報反映:HubSpot公式の3オブジェクト定義、HackCamp会社情報(共創ナビivan/実績企業ダスキン・三菱電機等)
  • 取引ページにパイプライン3種の使い分けを追加(大串の最新指示反映)
  • 共創ナビivan_セールスパイプライン=ISがほぼここ使用
  • 共創ナビivan_ユーザー管理=受注後
  • イベント事業_セールスパイプライン=ハッカソン等・ほぼ菊地さん対応
  • ステージ正確化:未商談/IS対応中/アポ獲得/提案中/担当者合意/決裁者合意

編集ファイル

  • ~/dev/hackcamp-hubspot-manual-source.html - 全セクション本体(超詳細テキスト+スクショプレースホルダー)
  • ~/dev/hackcamp-hubspot-manual-gen.py - ページ分割生成(terasu-pm-manual-gen.pyベース・PAGES差し替え)
  • ~/dev/hackcamp-hubspot-manual/ - style.css・common.js流用、生成6ページ、img/(空)

デプロイ・バックアップ

  • 未デプロイ:Cloudflare Pagesプロジェクト上限(100)に到達し新規作成不可(既知の制約)
  • 大串判断:「まずローカルで完成させる」→ デプロイは枠を空けてから後回し
  • ローカル確認:wrangler pages dev(nohup・ポート8788)でクリーンURL配信中

試したこと・学び

  • python http.serverはクリーンURL(/contact)非対応で404 → wrangler pages devに切替で本番同様確認可
  • preview_start(MCP)は別のlaunch.jsonを参照していて使えず → Bash nohup起動で対応
  • Cloudflare Pages上限100到達でwrangler pages project create失敗(code 8000027)

ユーザーFB(重要)

  • トンマナ・サイト形式はterasu-pm-manualと同じで(CSS流用OK)
  • 構成指示:HubSpotとは→3オブジェクト(コンタクト/会社/取引)各解説→見方→スクショと手順→ネット情報も
  • 超詳細に記載したい
  • 取引のパイプラインは商材・フェーズで3種類に分かれる(重要情報を後から追加)
  • メールルール(このセッション以前から蓄積):件名3案・貴社(御社NG)・宛名=会社名+苗字様

注意ポイント・退化リスク

  • 編集は必ず source.html を直す → gen.py 実行(各HTMLを直接編集しない=上書きされる)
  • スクショはチャット添付では保存不可 → 大串が img/ に置く必要。プレースホルダー(📷 ここにスクショ)が各所にある
  • デプロイは枠問題が未解決(削除 or for SaaS or 既存相乗りの判断待ち)

次のセッションで取り得る選択肢

  1. スクショを img/ に配置 → 各プレースホルダーを実画像に差し替え(gen.pyの該当箇所or source.html)
  2. 残りページ(コンタクト/会社/操作)の中身をさらに深掘り
  3. Cloudflare Pages枠を空けて hackcamp-hubspot-manual をデプロイ(社内向け=直接prod OK)

ローカルプレビュー

http://localhost:8788/ (wrangler pages dev・nohup起動中)