Target Architecture (Canonical)¶
Status: Active reference Last updated: 2026-05-28
This document is the single source of truth for what we are building at a high level.
North Star¶
Build a local-first, policy-safe agent runtime where capability contracts remain canonical, execution is durable, promotion is governed, and external developer experience is productized.
Why this shape matters:
- It keeps the runtime easy to run locally while still behaving like a production system.
- It turns governance into an auditable contract, not a loose convention.
- It lets us improve durability, policy, and DX independently without changing capability IDs.
- It favors optional adapters over lock-in, so the core stays portable and maintainable.
Strategic Stance (OSS-first)¶
ORCA remains open source and production-capable on its own.
Default interpretation of the target stack is:
- Adopt the best architectural patterns from leading platforms.
- Keep ORCA core self-sufficient for deployment and DX.
- Provide integrations as optional adapters, never as mandatory dependencies.
This means we are primarily taking what works (durability semantics, policy model, developer-product ergonomics), not forcing users to adopt specific vendors.
Strategic target stack:
- Temporal for durability.
- dbt/Dagster for contracts, artifacts, and promotion workflows.
- Kubernetes/OPA for policy enforcement and tenancy.
- Stripe/Vercel for developer experience and distribution.
- LangGraph as optional integration target, not runtime foundation.
Architecture Boundaries¶
agent-skill-registryis the source of truth for contracts and catalog artifacts.agent-skillsis the execution runtime and integration layer.- Capability contracts are stable canonical interfaces and are not changed by runtime integration work unless explicitly approved.
- Real execution validation must run from each local
agent-skillsinstance where the package is deployed. - ORCA core must not require paid SaaS platforms to run in production.
Design Invariants (Non-Negotiable)¶
These invariants must stay true across all migrations.
- Contract stability: capability IDs and contract semantics remain canonical-first.
- Local-first viability: full baseline execution path works without hosted control planes.
- Deterministic governance: promotion and catalog generation remain reproducible and CI-verifiable.
- Safety continuity: no migration may reduce current trust/gate/confirmation guarantees.
- Adapter isolation: third-party integrations are optional and isolated behind adapter boundaries.
- Observability continuity: traceability and auditability must remain end-to-end during transitions.
Current Alignment Snapshot¶
Implemented¶
- Local-first runtime execution with deterministic fallbacks and broad capability coverage.
- Checkpoint/run persistence primitives and resume/replay APIs.
- Promotion and governance tooling with CI verification and artifact generation.
- Kubernetes baseline deployment via Helm.
- LangGraph/LangChain adapter support as integration surface.
Partial¶
- Durability: implemented via internal checkpoint + run-store model, not via Temporal workflows yet.
- Policy/tenancy: runtime policy and JWT tenant isolation exist, but OPA is not integrated as the policy decision point.
- Contracts/artifacts/promotion: operationally mature with custom tooling, but not orchestrated by Dagster/dbt.
Not Started¶
- Temporal-native workflow orchestration.
- Dagster/dbt-based contract and promotion pipelines.
- Stripe/Vercel developer-experience platform layer.
These are future platform alignments, not blockers for the current architecture. The present stack already delivers the core advantages we care about: stable contracts, local-first execution, reproducible governance, and clear promotion evidence.
Decision Rules¶
- Do not treat LangGraph as mandatory runtime substrate.
- Prefer composable adapters over framework lock-in.
- Keep governance and catalog generation CI-enforced.
- Prioritize migration paths that preserve existing capability IDs and behavior.
Sequencing (Execution Order)¶
- Foundation migration: durability and policy substrate (Temporal + OPA integration plan).
- Delivery migration: Dagster/dbt orchestration for contracts, artifacts, and promotion.
- Product layer: Stripe/Vercel DX and external distribution surfaces.
Platform Value We Intend To Reuse¶
This section clarifies intent: we are adopting platform patterns and operational qualities, not blindly importing vendor architecture.
Adoption Modes¶
Every platform mention must be classified into one of these modes:
- Pattern transfer: ORCA implements equivalent behavior in its own core.
- Optional adapter: ORCA provides interoperability, but users can ignore it.
- Operational substrate: ORCA supports a deployment/runtime substrate without core lock-in.
Default target by platform:
- Temporal: pattern transfer first, optional adapter second.
- Dagster/dbt: operational substrate for delivery pipelines, not runtime core dependency.
- Kubernetes/OPA: operational substrate for production policy/tenancy.
- Stripe/Vercel: pattern transfer for DX/distribution.
- LangGraph: optional adapter.
Temporal¶
What we recover as value:
- Durable workflow execution semantics (history, retries, timers, resume safety).
- Deterministic orchestration guarantees for long-running skill execution.
- Failure recovery model with explicit workflow state transitions.
Why this is better than a brittle ad hoc runner:
- Retries and recovery become deliberate, not accidental.
- Long-running work can be resumed without losing provenance.
- The execution model stays inspectable enough to support governance.
What we are not doing:
- Replacing ORCA contracts/skills model with vendor-specific workflow definitions.
- Coupling capability identity or registry governance to Temporal primitives.
Dagster / dbt¶
What we recover as value:
- Orchestrated delivery pipelines for contract validation, catalog regeneration, and promotion.
- Asset lineage and materialization mindset for reproducible artifacts.
- Declarative data/contract checks as enforceable gates.
Why this matters for ORCA today:
- It makes release evidence materialize from the same source that defines the contracts.
- It reduces duplication between CI checks, reports, and promotion inputs.
- It gives maintainers a clean line between source, artifact, and decision.
What we are not doing:
- Moving runtime skill execution into data-pipeline engines.
- Making dbt a runtime dependency for local execution of capabilities.
Kubernetes / OPA¶
What we recover as value:
- Multi-tenant operational control plane for deployment and isolation.
- Externalized policy decision model (OPA) for auditable authorization/safety constraints.
- Standardized runtime packaging and environment promotion through Kubernetes primitives.
What we are not doing:
- Replacing all in-runtime policy checks immediately; migration is staged.
- Forcing centralized hosted execution when local-instance validation is required.
Stripe-like DX / Vercel-like distribution¶
What we recover as value:
- Stripe-like DX means fast onboarding, predictable API ergonomics, excellent docs, and copy/paste quickstarts with trustworthy examples.
- Vercel-like experience means low-friction deployment and preview/promote flows with clear environment boundaries.
- Developer productization: clear lifecycle from local run to production-ready integration.
What we are not doing:
- Stripe-like DX does not imply we must integrate Stripe billing APIs in the core runtime.
- Vercel-like deployment UX does not imply ORCA must run only on Vercel.
- ORCA OSS production path must remain complete without Stripe/Vercel accounts.
LangGraph¶
What we recover as value:
- Ecosystem interoperability surface for teams already using LangChain/LangGraph.
- Optional adapter-level compatibility for tool invocation.
What we are not doing:
- Making LangGraph the mandatory execution substrate for ORCA runtime.
Proposed Implementation Architecture¶
Layer A: Canonical Contract Plane (source of truth)¶
- Repository:
agent-skill-registry. - Responsibilities: capability/skill contracts, vocabulary, governance, catalog artifacts.
- Rule: contracts remain stable and canonical; runtime migrations cannot mutate semantics by default.
Layer B: Runtime Execution Plane (local-first)¶
- Repository:
agent-skills. - Responsibilities: workflow execution, bindings, checkpointing, traceability, customer-facing adapters.
- Near-term evolution: migrate durability internals toward Temporal-backed orchestration without breaking skill contracts.
Layer C: Delivery and Promotion Plane¶
- Purpose: deterministic validation, artifact generation, and registry promotion workflows.
- Near-term evolution: introduce Dagster/dbt as orchestrators around existing governance checks and catalog generation.
- Rule: preserve CI-equivalent validation sequence and catalog freshness guarantees.
Layer D: Policy and Tenancy Plane¶
- Purpose: centralized policy evaluation and multi-tenant controls.
- Near-term evolution: integrate OPA decision points while preserving existing runtime safety gates during transition.
- Deployment context: Kubernetes as default production control surface, Helm baseline first.
Layer E: Developer Experience Plane¶
- Purpose: Stripe-like API/docs/onboarding quality and Vercel-like deployment ergonomics.
- Components: fast starters, API parity examples, environment promotion UX, high-signal diagnostics.
- Non-goal: billing/provider coupling in runtime core.
Definition of Done by Strategic Pillar¶
Durability (Temporal-inspired)¶
Done when:
- Long-running skills survive process restart without semantic drift.
- Retry/timer/resume behavior is explicit and test-covered.
- Existing checkpoint/replay APIs preserve backward compatibility.
Contracts, Artifacts, Promotion (Dagster/dbt-inspired)¶
Done when:
- Registry validation and catalog generation run as orchestrated, reproducible pipeline stages.
- Promotion flow emits traceable lineage from source change to generated artifacts.
- CI and local execution produce equivalent pass/fail outcomes for governance gates.
Policy and Tenancy (Kubernetes/OPA-inspired)¶
Done when:
- Policy decisions are externally explainable and auditable.
- Tenant isolation guarantees are enforced consistently across runtime surfaces.
- Existing in-runtime safety controls remain active during migration.
Developer Experience and Distribution (Stripe-like/Vercel-like)¶
Done when:
- Time to first successful execution from clean setup is explicitly measured and improved.
- API docs, quickstarts, and examples are parity-validated against real runtime behavior.
- Environment promotion flow (dev/preview/prod) is documented and reproducible.
- None of the above requires paid SaaS accounts for baseline OSS production path.
Non-Goals (Explicit)¶
- Rewriting ORCA runtime around any single external framework.
- Replacing canonical contract governance with vendor-native contract stores.
- Requiring Stripe, Vercel, Temporal Cloud, or managed services for baseline production readiness.
- Treating LangGraph compatibility as a prerequisite for ORCA execution.
Scope Guardrails (To Prevent Drift)¶
- If a proposal changes capability contract semantics, it must be explicit and separately approved.
- If a proposal introduces vendor lock-in at runtime core, reject or isolate behind adapter boundaries.
- If a proposal claims "Stripe-like DX", it must specify concrete UX metrics (time-to-first-success, docs parity, integration steps).
- If a proposal claims "Vercel-like", it must define deployment promotion flow and preview behavior, not only hosting target.
- Any new integration with third-party platforms must satisfy "optional adapter" policy: ORCA runtime + governance + local deployment flow continue to function without it.
Architecture Change Checklist (Anti-Surprise)¶
Any architecture PR/RFC should include, at minimum:
- Scope classification: pattern transfer, optional adapter, or operational substrate.
- Impact statement on invariants (contract stability, local-first viability, safety, observability).
- Backward-compatibility plan for capability contracts and runtime APIs.
- Rollback strategy if migration stage fails.
- Validation evidence plan: local instance checks plus CI gate alignment.
- Explicit statement of what is out of scope for that change.
Decision Test (Quick Check)¶
For every roadmap item, ask:
- Does this improve ORCA's own production readiness and DX even if no external platform is used?
- Is this a pattern transfer into ORCA core, or a user-facing optional integration?
- If integration exists, can users ignore it and still get full baseline value from ORCA?
If answer to (1) is no, item is out of scope for core architecture.
Pointers¶
- ORCA foundation:
ORCA.md - Cross-repo responsibilities:
docs/CROSS_REPO_ARCHITECTURE.md - Runtime status snapshot:
docs/PROJECT_STATUS.md - OpenAPI construction baseline:
docs/OPENAPI_CONSTRUCTION_PACKAGES.md