SCALE List Pool — 現在状態
新セッションでこの project を扱う Claude は、まずこのノートを Read してから動く。
「いつ切り替えてもOK」原則: セッション切替時の前提共有不要。
現在のフェーズ
MVPデプロイ済 / 検証フェーズ — v9.199 で本番デプロイ完了 (2026-05-14 06:17)
| 項目 |
値 |
| バージョン |
v9.199 |
| 本番URL |
https://crm.scale-group.co.jp/ → サイドバー PM → リストプール |
| 直URL |
https://d7487262.scale-lead.pages.dev |
| 新規ファイル |
/Users/oogushiyuuki/株式会社SCALE/scale-lead/list_pool.js (約450行) |
| D1キー |
list_pool_companies (グローバル・案件IDなし) |
| バックアップ |
~/scale-lead-backups/scale-lead-2026-05-14-0617-post-deploy.tar.gz |
完了済 (v9.199 MVPデプロイ)
- 大串FB原文の整理 (2026-05-13)
- 開発依頼書作成 (SCALE_List_Pool_開発依頼書)
- スコープ定義 (MVP)
- データモデル確定 (重複判定キー: salesNowLink > phone > company / D1: list_pool_companies グローバル)
- list_pool.js 新規作成 (約450行・独立ファイル)
- NAV追加 (PMセクション「リストプール」pmOnly:true)
- CSV取込実装 (既存ヘッダマップ流用 / 重複検知)
- フィルタ実装 (7軸: フリーワード/大業界/中業界/都道府県/売上規模/従業員規模/使用状況)
- 均等抽出実装 (ラウンドロビン方式 / 5キー選択可)
- 案件分配実装 (1案件1担当者・即時D1 PUT)
- 使用状況可視化実装 (画面表示時に全案件 call_list を集計)
- deep link実装 (案件横断ジャンプ)
- PM/admin権限制御
- トレース ([LP-CSV] [LP-DIST])
- 本番デプロイ + バックアップ
検証フェーズ (大串)
- 実機での CSV取込動作確認
- 均等抽出の結果確認
- 案件分配 → 該当案件 call_list 反映確認
- 使用状況可視化の正確性確認
- deep link 動作確認
将来拡張 (v9.200+ MVP範囲外)
- CSV取込時の既プール企業 更新オプション
- 複数案件への一括分配
- リアルタイム逆同期 (現状は画面表示時集計)
- フォーム営業 / メール営業への転用
- 大量データ ページング (現状全件表示)
- 企業データの SalesNOW 定期同期
対象システム
| 項目 |
値 |
| システム名 |
SCALE List Pool |
| 親システム |
SCALE CRM (scale-lead) — 配下セクションとして実装 |
| ローカルパス |
/Users/oogushiyuuki/株式会社SCALE/scale-lead/ |
| 本番URL |
https://crm.scale-group.co.jp/list_pool (予定) |
| Cloudflare Pages |
scale-lead (同居) |
| 新規ファイル候補 |
list_pool.js |
| 既存ファイル編集 |
core.js (NAV+R) / pages.js (renderListPool) / calllist.js (CSV取込ロジック流用) / index.html (cache-bust) / service.js (changelog) |
主要機能(MVP)
| # |
機能 |
優先度 |
状態 |
| 1 |
リストプール画面 (PM/admin限定) |
P0 |
未着手 |
| 2 |
SalesNOW CSV取込 (既存ロジック流用) |
P0 |
未着手 |
| 3 |
フィルタ (業界/地域/規模/フリーワード) |
P0 |
未着手 |
| 4 |
均等抽出 (県/中業界/規模) |
P0 |
未着手 |
| 5 |
案件分配 (1案件1担当者→call_listへpush) |
P0 |
未着手 |
| 6 |
使用状況可視化 (各企業のassignmentLog表示) |
P0 |
未着手 |
| 7 |
案件横断ステータス同期 (画面表示時集計) |
P0 |
未着手 |
| 8 |
同社の他案件 call_list deep link |
P1 |
未着手 |
| 9 |
重複検知 (CSV取込時) |
P1 |
未着手 |
| 10 |
大量データのページング |
P1 |
未着手 |
| 11 |
フォーム営業転用 (将来) |
P2 |
未着手 |
| 12 |
メール営業転用 (将来) |
P2 |
未着手 |
データモデル(暫定案・要議論)
// D1グローバルキー: list_pool_companies
// (案件IDに紐付かない・全社共通プール)
{
"id": "lp_<timestamp>_<random>",
"company": "株式会社ABC",
"phone": "03-1234-5678",
"salesNowLink": "https://salesnow.jp/...",
"industry": "製造業",
"subIndustry": "機械",
"revenueScale": "10-100億",
"employeeScale": "50-200名",
"prefecture": "東京都",
"address": "東京都千代田区...",
"csvImportedAt": "2026-05-14T06:00:00Z",
"importedBy": "大串",
// 案件横断の使用履歴 (= 案件への分配ログ)
"assignmentLog": [
{
"projectId": "proj_xxx",
"clientName": "結グループ",
"callPerson": "大串",
"assignedAt": "2026-05-14T...",
"latestStatus": "アポ獲得",
"latestUpdateAt": "..."
}
]
}
// 各案件 call_list 側のエントリには `sourceListPoolId` を追加
// (call_list -> list_pool の逆引きに使う)
{
"id": "...",
"company": "...",
"sourceListPoolId": "lp_..." // 新フィールド
// ...既存フィールド
}
重要決定事項(未確定・別セッションで議論)
1. 重複判定キーの優先順位
- 候補:
salesNowLink → phone → company
- 推奨: 3段階フォールバック
2. 案件横断ステータス同期方式
- 案A: リアルタイム逆同期 (call_list更新→list_pool 更新)
- 案B: 画面表示時集計 (全案件 call_list を fetch)
- 推奨: 案B でMVP → 後でリアルタイム化検討
3. 分配先案件数
- MVP: 1案件1担当者
- 将来: 複数案件・複数担当者にバラ撒き
4. パートナーへの公開可否
- 推奨: PM/admin限定 (パートナーには非表示)
アクセス
| 項目 |
値 |
| 本番URL |
https://crm.scale-group.co.jp/list_pool (実装後) |
| 認証 |
SCALE CRM と共通 (●●●●●● / admin) |
| 権限 |
PM/admin のみ |
守るべき制約
- 既存 SCALE CRM の退化禁止 — call_list / 集計 / 通知 を壊さない
- ラリー最小化ルール厳守 — 想定原因全部リサーチ → 全保険的修正 1リリース
- 1機能1デプロイ1バックアップ — 全機能まとめてデプロイ禁止 (容量オーバーリスク)
- PM/admin限定 — パートナーから完全非公開
- CSV取込ロジック流用 — 新しい CSV パーサーは書かない (既存
_clImportCSV 流用)
次のセッション開始時の動き
- このノートを Read する
- SCALE_List_Pool_開発依頼書 を Read する
- 大串と未確定事項(4項目)を議論
- データモデル確定
- UI/UXワイヤー3案提示
- フェーズ1実装着手 (CSV取込 + プール表示 + フィルタ → 最小機能で動く状態をデプロイ)
更新履歴
| 日付 |
内容 |
| 2026-05-14 |
初版作成(企画フェーズ・依頼書作成済) |