Skip to content

Contracts Registry — CEO ⇄ ACS ⇄ HCS

A single place to keep minimal, versioned contracts. Values are examples; keep JSON strictly valid.

CEO → ACS (v0)

  • version: "v0"
  • id: string (UUID)
  • intent: string
  • budgets: '{ tokens_max, time_ms }'
  • risk_profile: '{ level: low|medium|high }'
  • privacy_mode: allow|redact|block
  • request_id: string

Example:

json
{
  "version": "v0",
  "id": "c9b1a0f8-6d8d-4c3b-9a7c-2b2e4d7f9123",
  "intent": "triage_login_bug",
  "budgets": { "tokens_max": 5000, "time_ms": 800 },
  "risk_profile": { "level": "medium" },
  "privacy_mode": "allow",
  "request_id": "req-20250826-001"
}

CEO → HCS (future; not used in v0)

  • id: string (UUID)
  • pacing: progressive|burst|drip|guarded
  • channel: sse|ws
  • correlation: { request_id }
json
{
  "id": "2a2d77f4-6c41-4e2f-9c7a-98b3aa1a0a0e",
  "pacing": "progressive",
  "channel": "sse",
  "correlation": { "request_id": "req-20250826-001" }
}

ACS → HCS (future stream events; not used in v0)

Common envelope:

json
{
  "seq": 1,
  "type": "bootstrap|fragment|delta|done|error",
  "request_id": "req-20250826-001",
  "ts": "2025-08-26T10:00:00Z"
}

Fragment payload:

json
{
  "seq": 2,
  "type": "fragment",
  "request_id": "req-20250826-001",
  "ts": "2025-08-26T10:00:01Z",
  "fragment": {
    "id": "frag-001",
    "text": "User reports login fails on mobile; 2FA loop",
    "entities": ["login", "2FA", "mobile"],
    "benefit": 0.62,
    "cost_tokens": 85
  }
}

Versioning and compatibility

  • Use semver in this registry.
  • Producers may add optional fields; consumers must ignore unknowns.
  • Breaking changes require a new version block (v2) and links from specs.

Note (v0): Streaming is disabled; CEO→ACS contract above is the only active path for orchestration v0.

Correlation and observability

  • Always include request_id.
  • For logs, add agent_id, user_id when available.
  • Avoid raw sensitive data in fragments.