Skip to content
This repository was archived by the owner on May 19, 2026. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

dataraum-api

OpenAPI contract for the DataRaum engine REST surface. The single source of truth for the routes that the Python engine (dataraum-context) publishes and the TanStack Start cockpit (dataraum-cockpit) consumes.

What lives here

Path Purpose
openapi.yaml The current OpenAPI 3.1 spec for /api/* engine routes, generated from FastAPI in dataraum-context
Future: proto/*.proto gRPC protos when the executor split happens (Platform Contract #2)

That's it. No code. Just spec.

How it flows

dataraum-context (Python engine + FastAPI)
        │
        │  CI step: regenerate openapi.yaml from FastAPI app;
        │           if diff, open PR / push to dataraum-api main
        ▼
   dataraum-api    ◀── single source of truth, versioned via git tags / SHAs
        │
        │  consumed by:
        ▼
dataraum-cockpit (TanStack Start)
        │
        │  build step: openapi-typescript reads openapi.yaml,
        │              regenerates src/api/types.ts
        ▼
   typed fetch in TS — no drift between engine and cockpit

The Python side publishes to this repo on diff. The TS side mounts this repo (submodule / pnpm workspace / CI fetch — final mechanism decided at implementation time) and regenerates types at build.

Why a separate repo

  • No "who owns the contract" fight between the Python repo and the TS repo when an end-state Python split happens (dataraum-engine + dataraum-rest, etc.). Everyone consumes from here.
  • Symmetric ownership. Neither consumer "owns" the contract; both pull from a third repo.
  • Versioning via git tags / SHAs — consumers pin to a specific version, bumps are deliberate.
  • Future cross-cutting artifacts (gRPC protos, JSON schemas) have a natural home.

Status

Bootstrapped 2026-05-19. No spec checked in yet — first openapi.yaml lands when DAT-334 ships the first FastAPI route in dataraum-context with a publish-on-diff CI step.

References

About

OpenAPI contract for the DataRaum engine REST surface. Single source of truth consumed by dataraum-context (publisher) and dataraum-cockpit (consumer).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors