💻 システム開発
SCALE_Base_設計書
最終更新 2026年05月04日 / 31_システム開発部/_SCALE_Base_設計書.md
SCALE Base 設計書
SCALE 社の統合オペレーションシステム。全社の業務ハブ。
このノートはシステム編集の都度更新する(_SCALE_全システム実装ルール#3 システム設計書を最新に保つ 参照)。
基本情報
| 項目 | 値 |
|---|---|
| 本番URL | https://scale-base.pages.dev/home/ |
| ローカルパス | /Users/oogushiyuuki/Library/CloudStorage/GoogleDrive-y-ogushi@scale-group.co.jp/マイドライブ/AI/scale-base/ |
| Cloudflare Pages プロジェクト名 | scale-base |
| フレームワーク | Next.js 16 App Router (AGENTS.md 参照: 旧 Next.js と仕様が違う) |
| 言語 | TypeScript strict |
| データ層 | Cloudflare KV (https://scale-task-cron.y-ogushi.workers.dev) |
| デプロイ | bash scripts/deploy.sh(pre/post スナップショット自動取得) |
| バックアップ保存先 | ~/scale-base-backups/(local)+ AI/scale-base-backups/(Drive) |
サイドバー構成(systems.ts)
全体(モノリス内に統合)
| システム | サブナビ数 | 内部URL |
|---|---|---|
| AIアシスタント | 4 | /assistant |
| Task | 5(変更禁止) | /tasks/work-log |
| サイト一覧 | 1 | /sites |
| Design Studio | 5 | /design |
| Writing | 4 | /writing |
| Docs | 5 | /docs |
| 管理 | 1 | /admin |
| 更新履歴 | 1 | /changelog |
| PW管理 | 1 | /pass●●●●●● |
| 日程調整 | 1 | /scheduling |
| AI Ops | 1 | /ai-ops |
| Data Lake | 1 | /datalake |
各部署(内部リンク・サブナビ復元済み)
| システム | サブナビ数 | 部署 |
|---|---|---|
| X | 30 | マーケティング |
| SEO | 14 | マーケティング |
| HP管理 | 13 | マーケティング |
| Command Center | 6 | 事業戦略 |
| Recruit (id=hr) | 14 | 人事 |
| Finance (id=accounting) | 17 | コーポレート |
| サービス管理 | 7 | システム開発 |
| SCALE CRM | 10 | FS/PM/品質管理 |
| Brand & PR | 8 | ブランド・PR |
| R&D Lab | 8 | R&D |
| Partners & Academy | 7 | 人事 |
| Contracts | 1(page.tsx 単体) | コーポレート |
外部リンク(独立 SaaS として完成済み・externalUrl 経由)
| システム | 飛び先 |
|---|---|
| FS | https://scale-fs.pages.dev/login/ |
| PM | https://scale-pm.pages.dev/ |
| SCALE CRM | https://crm.scale-group.co.jp/base/ |
Task システム(最重要・変更禁止)
5項目ナビ構成(絶対固定)
作業報告 → /tasks/work-log
タスク管理 → /tasks/list(サブナビで タスクシート/今日やる/マイタスク/定例タスク/事業ゴール/業務ワークフロー/更新履歴 を横断)
レポート → /tasks(サブナビで ダッシュボード/稼働レポート)
カレンダー → /tasks/calendar
設定 → /tasks/settings(/tasks/members にリダイレクト、サブナビで メンバー管理/Slack連携/連携ツール)
絶対に旧構成(目標管理・今日のフォーカス・カンバン・設定)に戻さないこと。
サブナビ実装
components/tasks/SubNav.tsxapp/(dashboard)/tasks/layout.tsxが全 tasks 配下に適用
データ層
lib/tasks-data.tsは 廃止済み・使用禁止lib/tasks-api.tsxのTasksProvider+useTasks()経由で Cloudflare KV から取得app/(dashboard)/layout.tsxにTasksProviderのラップ必須(削除禁止)
主要機能(最新)
- 作業報告ダッシュボード(朝日報・作業開始・作業中ボード・作業終了・夜日報の連続フロー)
- 長期タスクの累計時間集計(複数セッション跨ぎ)
- 超過警告(推定 vs 実測の乖離を「+30分超過」として赤色表示)
- 朝日報の chip 機能:
- 「記載なし」クリックでその場に EstimateMinutesPicker
- 残時間ベース集計+超過は別欄警告
- 作業中ボード(ActiveBoard):
- 通常タスク / 定例タスク(PJT別)/ マイタスク(朝日報未選択)の3セクション
- 累計時間表示(過去セッション + 現セッション)
- ドラッグ&ドロップ並び替え + 複数選択
- タスク追加直後に詳細モーダル自動オープン
- 定例タスク:
- 複数担当(assignees)対応
- インライン編集(担当者・スケジュール・最終実施・目安時間・メモ)
- ドラッグハンドルで並び替え(PJT内のみ)
- 月最終営業日(dayOfMonth=-2)対応
- Slack 通知:
- 朝日報・作業開始・作業終了・夜日報を Bot Token 経由で送信
- 各タスクに残/累計/超過の suffix 付加
名前表記ルール
- プルダウン・サンプルデータは「大串」「細川」に統一(フル表記は SNS 表示名・法人代表者名のみ)
- 柴田(脱退)はプルダウン・サンプルから除外
認証システム
構成
lib/auth-context.tsx: AuthProvider + useAuthsessionStorageで user 情報を保持(key:sb_user)- demo ユーザー(大串 / 細川 / その他 AI エージェント名義)はコード内定義
クロスドメイン認証ブリッジ
lib/external-auth.tsのwithAuthQuery(url, user)で URL に?auth=<base64>を付加- 受信側(旧分離システム)の
lib/auth-context.tsxで URLSearchParams から復元 - パスワードは送らない(id / name / email / allowedSystems のみ)
- 現在は SCALE Base 内部統合で使用頻度低下、外部 SaaS(FS / PM / SCALE CRM)への遷移時に有効
権限制御
lib/always-allowed-systems.tsのisSystemAccessible()で判定- ALWAYS_ALLOWED_SYSTEMS(changelog 等)は全員可視
- それ以外は
user.allowedSystemsに含まれる場合のみ表示
バックアップ・復元システム
スナップショット
bash scripts/snapshot.shで取得bash scripts/snapshot.sh --label=<作業名>でラベル付き- 保存先(二重化):
- Primary:
AI/scale-base-backups/(Drive) - Local:
~/scale-base-backups/ - tar.gz 形式・最新30世代まで保持・~1.5MB/世代
deploy.sh
- pre-deploy snapshot 自動取得
- /tmp 経由でビルド(日本語パス対策)
- Cloudflare Pages にデプロイ
- post-deploy snapshot 自動取得
復元
bash scripts/snapshot.sh --list # 一覧
bash scripts/snapshot.sh --restore=<タイムスタンプ> # 展開
復元時は systems.ts と changelog.ts はファイル単位で内容確認してから上書き(_SCALE_全システム実装ルール#事故 2 参照)
Cloudflare Pages デプロイ履歴
本番表示の巻き戻しはダッシュボードから可能:
https://dash.cloudflare.com → Pages → scale-base → Deployments → "Rollback to this deployment"
ドキュメント運用
changelog.ts(更新履歴)
lib/changelog.tsのCHANGELOG配列最上段に毎回エントリ追加- 編集時は 配列全置換禁止・append のみ(事故 1 参照)
- 末尾のユーティリティ関数(getCategoryLabel / getCategoryColor)は触らない
- 閲覧URL:
/changelog
Vault連携
- システムアップグレードのたび、このノートと _SCALE_全システム配置マップ を更新する
- 大きな変更は日付付きノート
2026-XX-XX_SCALE_Base_xxx.mdを31_システム開発部/に作成
統合済み機能(時系列・直近)
| 日付 | 機能 | スコープ |
|---|---|---|
| 2026-04-29〜30 | 各システム分離プロジェクト(X / Finance / Recruit / Services / HP-Admin / CRM / Partners / Command / Brand / R&D / Contracts) | 全体 |
| 2026-04-30 | 認証ブリッジ実装(externalUrl + ?auth= |
全体 / auth |
| 2026-04-30 | 朝日報の chip 機能(残時間 / 超過 / 記載なしクリック→Picker) | tasks / morning |
| 2026-04-30 | 累計時間集計(複数セッション跨ぎ・超過警告) | tasks / work-log |
| 2026-04-30 | 定例タスク 月最終営業日対応・複数担当 | tasks / routines |
| 2026-04-30 | autoRegisterMemoTasks に bottomTasks 渡し(重複生成防止) | tasks |
| 2026-04-30 | 作業中ボード: タスク追加直後に詳細モーダル自動オープン | tasks / active |
| 2026-05-01 | 朝日報「記載なし」chip クリックでその場時間入力 | tasks / morning |
| 2026-05-01 | 定例タスク複数担当・インライン編集 | tasks / routines |
| 2026-05-01 | 分離撤回(X / Command / Recruit / Finance 等を SCALE Base 内部に統合) | systems |
| 2026-05-01 | サブナビ全システム復元(11 システムに sections 定義) | systems |
| 2026-05-01 | 作業中ボードに「マイタスク(朝日報未選択)」セクション追加 | tasks / active |
| 2026-05-04 | 作業開始報告の「前回セッション進行中タスク」セクション削除 | tasks / start |
| 2026-05-04 | 目安作業時間の自由入力を「時間+分」2フィールドに変更 | tasks / EstimateMinutesPicker |
| 2026-05-04 | タスクリマインド全停止(scale-task-cron の cron トリガー = []) | tasks / cron |
最新の詳細は lib/changelog.ts 参照(3049+ 行)
_SCALE_Base_最新基準点 を必ず参照 — 最新スナップショットのラベルと復元コマンドあり。
保護資産(絶対に消さない・触らない)
コード
lib/tasks-api.tsxのTasksProvider+useTasks()app/(dashboard)/layout.tsxのTasksProviderラップcomponents/tasks/SubNav.tsx(Task 5項目ナビ)lib/changelog.tsの末尾ユーティリティ関数(getCategoryLabel/getCategoryColor)
ルール
- Task ナビ構成(5項目・#Task システム(最重要・変更禁止) 参照)
- 名前表記(大串 / 細川)
- KV API エンドポイント(
https://scale-task-cron.y-ogushi.workers.dev)
関連ノート
- _SCALE_全システム実装ルール — 退化禁止・事故防止ルール
- _SCALE_全システム配置マップ — 全システム配置・パス
- _SCALE_全プロダクト一覧 — プロダクト一覧
- _SCALE_全システム標準モジュール — 標準モジュール
/Users/oogushiyuuki/Library/CloudStorage/GoogleDrive-y-ogushi@scale-group.co.jp/マイドライブ/AI/scale-base/CLAUDE.md— Project CLAUDE.md/Users/oogushiyuuki/Library/CloudStorage/GoogleDrive-y-ogushi@scale-group.co.jp/マイドライブ/AI/scale-base/AGENTS.md— Next.js 16 ルール
設計書 更新履歴
| 日付 | 内容 |
|---|---|
| 2026-05-01 | 初版作成(5項目Task構成・分離撤回後の状態を記録・直近の機能アップデート反映) |