English

Not Your Usual Type(s): Data contracts as types across languages and engines

Databases 2026-07-14 v1

Abstract

Composable data systems promise to let developers combine languages, engines, and catalogs without sacrificing a coherent user experience. In practice, however, pipeline-node boundaries remain weakly specified: transformations exchange tables through schemas that are often checked late, enforced unevenly across languages, and disconnected from the semantics business users care about. Based on over a year of operating millions of jobs in Bauplan, we share the design principles behind our new SDK, which treats data contracts as types for a composable, multi-language lakehouse. Users, whether humans or agents, annotate input and output tables with schema objects that encode column types, constraints, documentation, and lineage; Bauplan then interprets these annotations at different points in the execution lifecycle. We show how this design addresses common production failures, and how an ''everything-as-code'' philosophy enables both deterministic and non-deterministic reasoning over data flows across languages and engines.

Keywords

Cite

@article{arxiv.2607.13339,
  title  = {Not Your Usual Type(s): Data contracts as types across languages and engines},
  author = {Aldrin Montana and Colin Marc and Luca Bigon and Jacopo Tagliabue},
  journal= {arXiv preprint arXiv:2607.13339},
  year   = {2026}
}

Comments

Pre-print of paper accepted at CDMS @ VLDB 2026 (Boston)