RFC-0005: Portfolios

Group related intents with dependency DAGs and aggregate status.

Abstract

Portfolios group related intents together, enabling dependency management and aggregate status tracking.

Portfolio Structure

{
  "id": "uuid",
  "title": "Q1 Research Project",
  "description": "Multi-phase research initiative",
  "status": "active",
  "budget_cents": 50000,
  "aggregate_status": {
    "total_intents": 5,
    "completed": 2,
    "in_progress": 2,
    "pending": 1,
    "completion_percentage": 40
  }
}

Membership & Dependencies

Intents can be added to portfolios with roles and dependencies:

{
  "intent_id": "uuid",
  "portfolio_id": "uuid",
  "role": "research",
  "priority": 1,
  "depends_on": ["other-intent-id"]
}

Aggregate Tracking

Portfolio status automatically updates based on member intent statuses.