Skip to main content

Data contract coordination for warehouses

Project description

Tessera

Data contract coordination for warehouses

Docs | Quick Start | Issues


Tessera coordinates breaking changes between data producers and consumers.

When a producer wants to drop a column, Tessera notifies affected consumers and blocks the change until they acknowledge. No more 3am pages from broken pipelines.

Producer: "I want to drop user_email"
    ↓
Tessera: "3 teams depend on this. Notifying them."
    ↓
Consumers: "We've migrated. Approved."
    ↓
Producer: Ships v2.0.0 safely

Quick Start

# Docker (recommended)
docker compose up -d
open http://localhost:8000

# Or from source
uv sync --all-extras
docker compose up -d db  # PostgreSQL
uv run uvicorn tessera.main:app --reload

Key Features

  • Schema contracts - JSON Schema, Avro, OpenAPI, and GraphQL support
  • Breaking change detection - Auto-detect incompatible changes
  • Consumer registration - Track who depends on what
  • Proposal workflow - Coordinate changes across teams
  • Multi-source imports - dbt manifests, OpenAPI specs, GraphQL schemas, Avro registries
  • Web UI - Visual interface for managing contracts

Global Search

Search across teams, users, assets, and contracts:

curl "http://localhost:8000/api/v1/search?q=payments&types=assets&types=contracts&limit=5"

Configuration

Webhook settings (optional):

  • WEBHOOK_URL - Destination for webhook events
  • WEBHOOK_SECRET - HMAC secret for webhook signatures
  • WEBHOOK_ALLOWED_DOMAINS - Comma-separated domain allowlist (e.g. example.com,webhooks.mycorp.com)

How It Works

  1. Producers publish contracts (schema + guarantees) for their data assets
  2. Consumers register dependencies on contracts they use
  3. Breaking changes create proposals requiring consumer acknowledgment
  4. Non-breaking changes auto-publish with version bumps

Documentation

Full documentation at ashita-ai.github.io/tessera:

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tessera_contracts-0.1.5.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tessera_contracts-0.1.5-py3-none-any.whl (619.9 kB view details)

Uploaded Python 3

File details

Details for the file tessera_contracts-0.1.5.tar.gz.

File metadata

  • Download URL: tessera_contracts-0.1.5.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tessera_contracts-0.1.5.tar.gz
Algorithm Hash digest
SHA256 31bdbecdf070c3890f5f094657a208bc281d49d903e49ceeb25e44786205f63d
MD5 67812529789d5236ac7b685ba51b9523
BLAKE2b-256 69cd8d6315fecd164b791f871c0898ff396c0893db3262ca771d988912847c67

See more details on using hashes here.

Provenance

The following attestation bundles were made for tessera_contracts-0.1.5.tar.gz:

Publisher: publish.yml on ashita-ai/tessera

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tessera_contracts-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for tessera_contracts-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 afbf90567c2918acf325843212f3f58bdbb8efcadf0742cd34cfacad0969d681
MD5 338112b1bef657b94a2afded9e60f0f6
BLAKE2b-256 fbbdf9d70f9dcccea14fa84618cfc1e2740d03be7727c7ace7ea76df93638e09

See more details on using hashes here.

Provenance

The following attestation bundles were made for tessera_contracts-0.1.5-py3-none-any.whl:

Publisher: publish.yml on ashita-ai/tessera

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page