continuum AIDLC Docs GitHub ↗

Unit of Work Dependency — continuum

Project: continuum Phase: INCEPTION — Units Generation (Part 2) Date: 2026-05-08


1. Dependency Matrix

行: 依存元(this Unit needs...)/ 列: 依存先。 = 直接依存、~ = 間接依存、 = 依存なし。

🔄 SCOPE REVISION 2026-05-08: shared/agentcore-client は廃止(各 Lambda から AWS SDK 直呼び)。マトリクス列・行を削除。

↓ from / to → U-1 U-2 U-3 U-4 U-5 U-6 U-7 U-8 U-9 U-10 s/types
U-1 Foundation
U-2 ContactMgmt
U-3 Inbound
U-4 Outbound ~
U-5 Maturity
U-6 Dashboard
U-7 MACP-Simulator
U-8 MACP-Federated
U-9 Realtime
U-10 DemoSetPiece
shared/shared-types

1.1 依存ハイライト

  • U-1 Foundation は最上流: 他すべての Unit が依存(認証基盤)
  • U-3, U-4 は U-2 に依存: コンタクトデータが必要
  • U-3, U-4, U-7, U-8 は U-5 に依存: フェーズ判定が必要
  • U-7 (MACP Simulator) は U-4 (Outbound) からトリガー: Outbound 送信前の MACP 試行
  • U-8 (MACP Federated) は U-7 を拡張: 既存の演出ロジックを Federated 化
  • U-10 DemoSetPiece は最下流: 全 Unit を統合してデモシナリオを構築

1.2 共有パッケージ依存

  • shared/shared-types: 全 Unit が依存(型定義は基盤)
  • shared/agentcore-client: 2026-05-08 改訂で廃止。U-3 / U-4 / U-8 は AWS SDK(@aws-sdk/client-bedrock-runtime 等)を直接呼び出す

2. Dependency Graph

graph TD
    Types["shared/shared-types<br/>(共有型)"]
    %% AC["shared/agentcore-client"] — 2026-05-08 改訂で廃止

    U1["U-1 Foundation<br/>認証・PWA Shell<br/><b>Phase 2 Must</b>"]
    U2["U-2 ContactMgmt<br/>コンタクト + Mock Feed<br/><b>Phase 2 Must</b>"]
    U3["U-3 Inbound<br/>受信応答エンジン<br/><b>Phase 2 Must</b>"]
    U4["U-4 Outbound<br/>戦略的アウトリーチ<br/><b>Phase 2 Must</b>"]
    U5["U-5 Maturity<br/>フェーズ管理<br/><b>Phase 2 Must</b>"]
    U6["U-6 Dashboard<br/>分析・可視化<br/><b>Phase 2 Must</b>"]
    U7["U-7 MACP-Simulator<br/>Phase 2 簡易版<br/><b>Phase 2 Must</b>"]
    U8["U-8 MACP-Federated<br/>Phase 3 本実装<br/><b>Phase 3 Must</b>"]
    U9["U-9 Realtime<br/>WebSocket 基盤<br/><b>Phase 2 Should/3 Must</b>"]
    U10["U-10 DemoSetPiece<br/>決勝演出<br/><b>Phase 3 Must</b>"]

    %% AC --> Types — 2026-05-08 改訂で agentcore-client 廃止

    U1 --> Types
    U2 --> U1
    U2 --> Types
    U3 --> U1
    U3 --> U2
    U3 --> U5
    U3 --> Types
    %% U3 --> AC — 廃止: AWS SDK 直呼び
    U4 --> U1
    U4 --> U2
    U4 --> U5
    U4 --> U7
    U4 --> Types
    %% U4 --> AC — 廃止: AWS SDK 直呼び
    U5 --> U1
    U5 --> Types
    U6 --> U1
    U6 --> U5
    U6 --> Types
    U7 --> U1
    U7 --> U2
    U7 --> U4
    U7 --> U9
    U7 --> Types
    U8 --> U1
    U8 --> U2
    U8 --> U4
    U8 --> U7
    U8 --> U9
    U8 --> Types
    %% U8 --> AC — 廃止: AWS SDK 直呼び
    U9 --> U1
    U9 --> Types
    U10 --> U1
    U10 --> U2
    U10 --> U3
    U10 --> U4
    U10 --> U5
    U10 --> U6
    U10 --> U7
    U10 --> U8
    U10 --> U9
    U10 --> Types

    style U1 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U2 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U3 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U4 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U5 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U6 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U7 fill:#4CAF50,stroke:#1B5E20,color:#fff
    style U8 fill:#FFA726,stroke:#E65100,color:#000
    style U9 fill:#FFC107,stroke:#F57C00,color:#000
    style U10 fill:#FFA726,stroke:#E65100,color:#000
    style Types fill:#90CAF9,stroke:#1565C0,color:#000
    style AC fill:#90CAF9,stroke:#1565C0,color:#000

2.1 Text Alternative

依存階層(上から下へ依存方向):

Layer 0(基盤):
- shared/shared-types
- ~~shared/agentcore-client~~ — 2026-05-08 改訂で廃止(AWS SDK 直呼び)

Layer 1(最上流 Unit):
- U-1 Foundation
- U-9 Realtime(U-1 のみに依存)

Layer 2(U-1 の上に構築):
- U-2 ContactMgmt
- U-5 Maturity

Layer 3(U-2 / U-5 を利用):
- U-3 Inbound(U-1, U-2, U-5)
- U-6 Dashboard(U-1, U-5)

Layer 4(U-7 を経由):
- U-7 MACP-Simulator(U-1, U-2, U-4, U-9)
- U-4 Outbound(U-1, U-2, U-5, U-7)  ※循環: U-4 ↔ U-7

Layer 5(Phase 3):
- U-8 MACP-Federated(U-1, U-2, U-4, U-7, U-9)

Layer 6(最下流):
- U-10 DemoSetPiece(全 Unit)

2.2 循環依存の解消(U-4 ↔ U-7)

問題: U-4 Outbound は MACP 試行で U-7 を呼び出し、U-7 は完了時に U-4 のキューに反映 → 双方向依存

解消策:

  • U-7 MACPCoordinator のインターフェースを shared/shared-types に定義
  • U-4 OutboundOrchestrator は インターフェース経由で U-7 を呼ぶ(実装は依存しない)
  • U-7 が完了通知を行う際は EventBridge イベント経由(直接 U-4 を呼ばない)
  • これによりコンパイル時の循環依存を排除し、ランタイムは EventBridge で疎結合

3. Parallelization Analysis(Phase 2 並列最大化 / Q8=B)

3.1 開発順序(最適並列スケジュール)

[Day 1-2] Phase 2 Sprint 0 - 基盤先行
─────────────────────────────────────
- shared/shared-types     ← 全 Unit のブロッカー、最優先
- U-1 Foundation          ← 全 Unit のブロッカー
- infrastructure/single-stack ← Cognito + IAM + DynamoDB(Phase 2 は Single Stack)
- (shared/agentcore-client は 2026-05-08 改訂で廃止 — AWS SDK 直呼び)

[Day 3-7] Phase 2 Sprint 1 - 並列着手(最大 5 並列)
─────────────────────────────────────
- U-2 ContactMgmt          ← 並列実装可
- U-5 Maturity             ← 並列実装可
- U-9 Realtime(基盤のみ)  ← 並列実装可
- infrastructure/data-stack    ← 並列
- infrastructure/application-stack(基本部分)  ← 並列

[Day 8-12] Phase 2 Sprint 2 - 機能 Unit 並列(最大 4 並列)
─────────────────────────────────────
- U-3 Inbound              ← U-2, U-5 完了後
- U-4 Outbound             ← U-2, U-5 完了後
- U-6 Dashboard            ← U-5 完了後
- U-7 MACP-Simulator       ← U-2, U-4, U-9 完了後

[Day 13-15] Phase 2 Sprint 3 - 統合・予選会準備
─────────────────────────────────────
- 統合テスト(全 Unit ハッピーパス)
- デモシナリオ準備
- プレゼン資料作成
- バグ修正・UX 調整

3.2 並列度の上限

  • Sprint 0: 4 並列(基盤)
  • Sprint 1: 5 並列(U-2, U-5, U-9, data-stack, app-stack)
  • Sprint 2: 4 並列(U-3, U-4, U-6, U-7)
  • Sprint 3: 統合フェーズ

AI フル実装(Q12=C)の利点を最大化するには、各 Sprint 内で並列タスクとして AI に委譲する形が望ましい。

3.3 Phase 3 開発順序(5/31〜6/26 約4週間)

[Week 1: 5/31-6/6] AWS デプロイ + Federated 実装着手
─────────────────────────────────────
- AWS Production 環境への完全デプロイ
- U-8 MACP-Federated 実装開始(AgentCore Identity/Gateway/Memory 統合)
- Phase 2 Should の取りこぼし対応(U-3 US-3.5, U-4 US-4.6, U-5 US-5.6, U-6 US-6.2)

[Week 2: 6/7-6/13] Phase 3 Must 中核実装
─────────────────────────────────────
- U-4 Phase 3 Must(US-4.4 Conflict Detection, US-4.5 Plausibility Engineering)
- U-5 US-5.5(Lv5 Nirvana Auto-Detection)
- U-6 US-6.3(Outbound Metrics)
- U-2 US-2.3(Critical タグ)

[Week 3: 6/14-6/20] Demo Set Piece + 統合演出
─────────────────────────────────────
- U-10 DemoSetPiece 実装(DS-1〜DS-4)
- Phase 3 Stretch(U-3 US-3.6, U-4 US-4.3 Heartbeat, U-6 US-6.4, U-8 US-7.5)

[Week 4: 6/21-6/26] 仕上げ + リハーサル
─────────────────────────────────────
- 統合テスト + パフォーマンス調整
- X-Ray 統合(Q9=D Phase 3)
- 決勝プレゼン資料 + デモ動画作成
- リハーサル

4. Critical Path Analysis

4.1 Phase 2 Critical Path

最長のクリティカルパス:

shared/shared-types
  → U-1 Foundation
    → U-2 ContactMgmt + U-5 Maturity (並列)
      → U-7 MACP-Simulator (U-2 + U-4 + U-9 完了後)
        → 統合テスト

所要日数概算:

  • shared/shared-types: 0.5日
  • U-1 Foundation: 1.5日
  • U-2 + U-5 並列: 2日
  • U-3 + U-4 + U-6 並列: 3日(U-4 が Signal Extraction で重い)
  • U-7 MACP-Simulator: 2日
  • 統合: 2日

合計: 約 11 日(5/16〜5/26)→ 5/30 予選会まで余裕 4日

4.2 Phase 3 Critical Path

U-8 MACP-Federated(AgentCore 学習 + 実装)
  → U-10 DemoSetPiece 統合
    → 統合テスト + リハーサル

所要日数概算:

  • AWS 環境準備: 3日
  • U-8 MACP-Federated: 7日
  • U-10 DemoSetPiece: 5日
  • Phase 3 Must その他: 5日(並列)
  • 統合 + リハーサル: 5日

合計: 約 25 日(5/31〜6/24)→ 決勝 6/26 まで余裕 2日

4.3 リスク識別

Unit リスク 緩和策
U-3 Inbound Bedrock 応答 5秒以内達成 早期にスループットテスト、プロンプト最適化
U-4 Outbound (Signal Extractor) Mock Feed 解析の品質 早期に多様なシナリオでテスト
U-7 MACP-Simulator デモ演出の自然さ デモシナリオを早期に実機確認
U-8 MACP-Federated AgentCore Gateway 学習コスト Phase 3 早期着手、AWS ドキュメント参照
U-10 DemoSetPiece Split-Screen UI の演出品質 UX レビューを2回以上実施

5. Cross-Unit Coordination Points

並列開発中の同期が必要な箇所:

5.1 Sprint 0 完了時

  • shared/shared-types の API(型定義)が確定
  • U-1 Foundation の認証フローが動作
  • → 全 Unit が依存できる状態に

5.2 Sprint 1 完了時

  • U-2 ContactHandler の API が確定
  • U-5 MaturityPhaseManager の shouldReviewInbound/Outbound API が確定
  • → U-3, U-4, U-7 が並行開始可能

5.3 Sprint 2 完了時

  • 全機能 Unit の Backend API が動作
  • Frontend View が組み込み完了
  • → 統合テストフェーズ

5.4 Phase 2 → Phase 3 移行時

  • U-7 MACP-Simulator の挙動を保ちつつ U-8 MACP-Federated に拡張
  • U-7 と U-8 で共通する Theatrical Performance ロジックは shared/shared-types に抽出

6. Deployment Coordination

6.1 CDK Stack デプロイ順序(Q7=C Layered Stacks)

1. FoundationStack
   └─ Cognito User Pool, IAM Roles, ACM, Route 53

2. DataStack  ← FoundationStack 後
   └─ DynamoDB Single-Table, Connection Table, Secrets Manager

3. ApplicationStack  ← DataStack 後
   └─ Lambda × 10, API Gateway (REST + WS), EventBridge, CloudFront, S3

依存関係:

  • ApplicationStack の Lambda は DataStack の DynamoDB ARN を参照
  • ApplicationStack の API Gateway Authorizer は FoundationStack の Cognito User Pool ID を参照

6.2 Phase 別デプロイ戦略

  • Phase 2: ローカル開発主体、必要に応じて AWS(Cognito + DynamoDB)の最小構成
  • Phase 3: 完全 AWS デプロイ、CloudFront + Route 53 + ACM 含む

7. Inter-Unit API Contract

7.1 Maturity → Inbound/Outbound

// MaturityPhaseManager → InboundResponseEngine / OutboundOrchestrator
interface MaturityGuard {
  shouldReviewInbound(userId: string, message: InboxMessage, contact: Contact): Promise<boolean>;
  shouldReviewOutbound(userId: string, candidate: OutboundCandidate): Promise<boolean>;
  getCurrentPhase(userId: string): Promise<Phase>;
}

7.2 Outbound → MACP

// OutboundOrchestrator → MACPCoordinator
interface MACPInitiator {
  attemptMACP(candidate: OutboundCandidate): Promise<MACPSession | null>;
}

7.3 Realtime API

// WebSocketBroker(U-9)の利用 API
interface RealtimePublisher {
  pushToUser(userId: string, event: WebSocketEvent): Promise<void>;
  broadcastDemo(event: WebSocketEvent): Promise<void>;
}