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.6.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.6-py3-none-any.whl (619.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tessera_contracts-0.1.6.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.6.tar.gz
Algorithm Hash digest
SHA256 a91e58df805f7dc11fb26f50b458fd8e30c03d4d6959d4dafca1b74591b1f6ba
MD5 19e749cf4a46dee49000533385efdc60
BLAKE2b-256 602b47a0620a7d974550b9fb63059de80494e1faf2c8ff3de9a2f9004d36b2f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tessera_contracts-0.1.6.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.6-py3-none-any.whl.

File metadata

File hashes

Hashes for tessera_contracts-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c08c6b03e7d703c8d227c407962c4f9daefc6968e2d9f9108f8a9f640a7b81c2
MD5 4fd661c21eed24ad6d3d208aff3cd1f4
BLAKE2b-256 fe684a5ff426cacdbed93d24146d99fd80e315080462c80f7ba508520a4dbeff

See more details on using hashes here.

Provenance

The following attestation bundles were made for tessera_contracts-0.1.6-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