コンテンツにスキップ

Architecture: Domain Model

Language: English | 日本語 Last updated: 2026-04-30 Update history:

  • 2026-04-30: 5 ドメインモデルに拡張 — Doc Flow 追加 (#54)
  • 2026-04-25: terminology rebalance per #40 EN canonical: 2026-04-30 of wiki/en/Architecture-Domain-Model.md Audience: エージェント開発者

このページはもとの Architecture.md を 3 ページに分割したもの(#42)です。Aphelion の概念的ドメインモデル(5 ドメインモデル・セッション分離戦略・PRODUCT_TYPE 分岐)を扱います。プロトコルと運用ルールは関連ページを参照してください: プロトコル運用ルール


Aphelion はソフトウェア開発ライフサイクルを 5 つの独立したドメインに分割します:

flowchart LR
    DR["DISCOVERY_RESULT.md"]
    DLR["DELIVERY_RESULT.md"]
    OPR["OPS_RESULT.md"]
    MR["MAINTENANCE_RESULT.md\n(Major only)"]
    DCR["DOC_FLOW_RESULT.md\n+ deliverables/{slug}/*.md"]

    Discovery["Discovery Flow\n(6 agents)"] -->|generates| DR
    DR -->|input for| Delivery["Delivery Flow\n(12 agents)"]
    Delivery -->|generates| DLR
    DLR -->|input for| Ops["Operations Flow\n(4 agents)\nservice only"]
    Ops -->|generates| OPR

    Maintenance["Maintenance Flow\n(3 new agents + reuse)"] -->|Major| MR
    MR -.->|handoff| Delivery

    Doc["Doc Flow\n(1 orchestrator + 6 authors)\non demand"] -->|generates| DCR

Discovery は要件を探索・構造化し、DISCOVERY_RESULT.md を生成します。

Delivery は設計・実装・テスト・レビューを行い、DELIVERY_RESULT.md を生成します。

Operations はインフラ構築・DB運用・運用計画を行い、OPS_RESULT.md を生成します。PRODUCT_TYPE: service の場合のみ実行されます。

Maintenance(独立した第 4 のフロー) はバグ報告・CVE アラート・パフォーマンス劣化・既存プロジェクトの小規模機能追加を契機に起動します。change-classifier によって Patch / Minor / Major をトリアージします。Patch と Minor は単独で完結し、Major は MAINTENANCE_RESULT.md を生成して前処理フローとして Delivery Flow に引き渡します。詳細は Maintenance フローのトリアージ を参照してください。

Doc(独立した第 5 のフロー、オンデマンド) は既存の Aphelion 成果物から顧客向け納品ドキュメント(HLD・LLD・API リファレンス・運用マニュアル・ユーザーマニュアル・引継ぎ資料)を生成します。SPEC.md と ARCHITECTURE.md が揃ったプロジェクトライフサイクルの任意のタイミングで /doc-flow で手動起動します。他のフローからの自動連鎖はありません。詳細は Doc フローのトリアージAgents Reference: Doc Domain を参照してください。

原則説明
ドメイン分離各ドメインは独立したClaude Codeセッションで実行される
ファイルハンドオフドメイン間の接続は自動APIコールではなく .md ファイルを通じて行われる
自動チェーンなし各ドメインは前ドメインの出力をレビューした後、ユーザーが手動で起動する必要がある
トリアージ適応各 Flow Orchestrator(フローオーケストレーター)はプロジェクト規模を評価してプランティアを選択する
独立起動入力ファイルが揃っていれば、どのエージェントも単独で起動できる

各ドメインのエージェント実行順序を示します。

flowchart LR
    D["Discovery<br/>(6 agents)<br/>interviewer → ... → scope-planner"]
    DV["Delivery<br/>(12 agents)<br/>spec-designer → ... → releaser"]
    O["Operations<br/>(4 agents)<br/>infra-builder → ... → ops-planner"]
    M["Maintenance<br/>(3 agents + reuse)<br/>change-classifier → impact-analyzer → analyst → ..."]
    DC["Doc<br/>(1 orchestrator + 6 authors)<br/>doc-flow → hld-author → ... → handover-author"]
    S["Standalone<br/>analyst / codebase-analyzer / sandbox-runner"]

    D -->|DISCOVERY_RESULT.md| DV
    DV -->|DELIVERY_RESULT.md| O
    M -.->|MAINTENANCE_RESULT.md<br/>Major のみ| DV
    DC -.->|on demand<br/>no chaining| DC
    S -.optional.-> DV

ドメインごとの詳細: Discovery · Delivery · Operations · Maintenance · Doc · Standalone

Maintenance は Discovery → Delivery → Operations の主パイプラインから独立した第 4 のフローであり、/maintenance-flow により既存プロジェクトの保守タスクに対して起動されます。Patch / Minor プランは単独完結し、Major プランのみ MAINTENANCE_RESULT.md を介して Delivery に引き渡します。各エージェントの詳細は エージェントリファレンス → Maintenanceトリアージシステム → Maintenance フローのトリアージ を参照してください。

Doc は 全フローから独立した第 5 のフローであり、SPEC.md と ARCHITECTURE.md が揃ったプロジェクトライフサイクルの任意のタイミングで /doc-flow で手動起動されます。Discovery / Delivery / Operations / Maintenance フローからの自動連鎖には参加しません。各エージェントの詳細は エージェントリファレンス → Doc Domainトリアージシステム → Doc フローのトリアージ を参照してください。


各ドメインは独立したClaude Codeセッションで実行されます。これは意図的な設計上の選択です:

  • コンテキストウィンドウのオーバーフロー防止: プロジェクト全体のライフサイクルには何千行ものコンテキストが含まれる場合があります。すべてを1つのセッションで実行するとトークン制限に達するリスクがあります。
  • 専門化の実現: 各 Flow Orchestrator は自ドメインに関連するルールとエージェントのみをロードします。
  • 明示的なチェックポイントの強制: ユーザーは次のドメインを起動する前に各ドメインの出力をレビューする必要があり、品質ゲートのスキップを防ぎます。

5 つの Flow Orchestrator(discovery-flowdelivery-flowoperations-flowmaintenance-flowdoc-flow)が各セッションのエントリーポイントとなります。


Discovery フェーズで決定された PRODUCT_TYPE フィールドにより、実行されるドメインが決まります:

PRODUCT_TYPEDiscoveryDeliveryMaintenanceOperationsDoc
service実行実行実行 (必要時)実行実行 (オンデマンド)
tool実行実行実行 (必要時)スキップ実行 (user-manual / ops-manual は自動スキップ)
library実行実行実行 (必要時)スキップ実行 (user-manual / ops-manual は自動スキップ)
cli実行実行実行 (必要時)スキップ実行 (user-manual / ops-manual は自動スキップ)

インフラ・DB運用・デプロイ手順が必要なのは service プロダクトのみです。Maintenance はリリース後の変更が必要な場合、全 PRODUCT_TYPE で利用できます。Doc Flow は全 PRODUCT_TYPE でオンデマンド実行できますが、UI_SPEC.md またはインフラ成果物がない場合(tool / library / cli で典型)、user-manual-authorops-manual-author は自動スキップされます。