タスク機能 概要
タスク管理システムの全体像・機能依存関係・実装順序
作成日: 2026-05-27
仕様書は機能グループ単位に分割されている。各ファイルが 1 PR に対応する。
機能一覧と仕様書リンク
依存関係図
[1 コア] ──────────────────────────────────────────┐
│ │
├──[2 作業時間追跡] │
│ │
├──[3 スプリント] │
│ │
├──[4 コメント・アクティビティ]──[5 通知・ウォッチャー]
│ │
├──[6 カスタムフィールド] │
│ │
├──[7 検索・バルク・ビュー・添付] │
│ ↓
├──[8 自動化] ←──────────────────────[4, 5]
│ │
│ └──[9b GitHub↔タスク連携] ←──[8, 9a]
│
├──[9a GitHub App 基盤](並行可)
│
└──[10 Webhook](並行可)
実装順序ルール
- バックエンド完全完了後にフロントエンドへ移行する(並行実装禁止)
- 各 PR は依存 PR がマージ済みであることを前提とする
- 依存関係のない PR(2・3・6・9a・10)は並行して進めてよい
- フロントエンドは全バックエンド PR がマージされてから
pnpm openapiで型を再生成して着手
共通仕様
スコープ(全 PR 共通)
pub enum Scope {
ReadTask, WriteTask,
ReadMilestone, WriteMilestone,
ManageWebhook,
ManageAutomation,
ManageGitHub,
}
URL 規則
- プロジェクトスコープのリソース:
/v1/tenants/{tenant_id}/projects/{project_id}/... - ユーザースコープのリソース:
/v1/users/me/... - システムエンドポイント(GitHub Webhook 受信など):
/v1/...
優先順位 enum
タスク連番 ID
プロジェクト内で ENG-1, ENG-2, ... の連番を振る(KEY はプロジェクトキー)。project_task_counters テーブルで SELECT ... FOR UPDATE によりアトミックに採番。API の GET /tasks/{id} は UUID と KEY-N どちらでも受け付ける。GitHub の #N(Issue 番号)と区別するためこの形式を採用。