Event data quality

The contract between agents producing and consuming your event data.

Inferred from what actually landed in your warehouse, served over MCP, verified daily. Never written to your repository.

Inferred from landed rowsServed over MCP
Snowflake
checkout_started
active · v3
user_idstring
required
cart_valuenumber
required
currencystring
required · USD · EUR · GBP
coupon_codestring
optional
consumers ·stg_checkoutfct_ordersRevenue dashboard
owner · growth-eng / checkout-webverified daily · read-only
How it works

Landed data is the truth.

01

Detect

One contract per event, inferred from what landed. Nobody types a schema.

required · null rate under 1% over 30 days
02

Enforce

Agents read the active contract over MCP before they write tracking.

get_contract · check_payload · propose_change
03

Monitor

Landed rows are diffed against the contract daily. Each difference is one proposal.

property absent for a day · type changed · new event
04

Resolve

Accept, reject or snooze. Accepting versions the contract and tells every consumer.

accept · reject · snooze for seven days
Over MCP

What your agents read.

suky calls no model of its own. It serves facts; your agents do the reasoning.

Writing trackingsuky-producer/SKILL.md
get_contractactive version, owner, consumers
list_contractsnames, versions, consumer counts
check_payloadviolations in a payload, before commit
who_consumesevery model and dashboard that reads it
propose_changea diff and a rationale, for a human to accept
Modelling the eventsuky-consumer/SKILL.md
get_contractthe same active version
get_lineagesource tables and downstream consumers
register_consumerrecords the model the agent just built
changes_sinceaccepted proposals since a timestamp

What you can hold suky to

The warehouse is the judge.

What landed is the truth. Your CDP's schema is an input.

Nobody authors a contract.

Inferred first, then confirmed and versioned by people and agents.

Read-only and published.

Every query is committed verbatim. suky keeps schema-level stats, never a row.

Never writes to your repository.

No commits, no pull requests. Your agents make the code change.

Contract

Ready to put your event data under contract?