Problem
A schema or metric can be syntactically valid and still break a consumer, alter a business definition, or leave a backfill in an ambiguous state. The implementation treats change as a reviewable lifecycle with evidence at each boundary, not as a file replacement followed by hope.
Constraints
- Consumers may update on different schedules, so a producer cannot assume coordinated deployment.
- Review evidence must remain deterministic and versionable in Git and CI.
- Readiness, semantic compatibility, and metric meaning are separate checks and must remain visible as separate results.
- The public demonstrations must stay inspectable without private infrastructure or credentials.
Architecture
- Proposed data changeCapture the intended shape or meaning change before enforcement begins.
- Versioned declarationSEIP records the change, affected resources, lifecycle state, and stable fingerprint in Git.
- Consumer and policy reviewConsumer responses and policy evaluation make incomplete coverage and rejected transitions explicit.
- Readiness validationdataproduct-kit checks contracts, freshness, quality expectations, ownership, and release evidence.
- Metric regression checksMetricSpec compares expected and actual query results so a number cannot silently change meaning.
- Controlled apply and backfillThe streaming demonstration models deduplication, backpressure, exactly-once apply, buffering, and backfill cutover.
- CI evidenceMachine-readable diagnostics, SARIF, and repeatable fixtures keep the decision visible after review.
Decisions
Model change as a lifecycle
ChoiceA declaration moves through explicit proposal, response, acceptance, enforcement, completion, amendment, rejection, and withdrawal states.
Trade-offThe extra state is more work than a schema diff, but it preserves who has agreed to what and prevents an invalid transition from looking complete.
Keep semantic checks separate
ChoiceData-product readiness, structural compatibility, and metric-result comparison report independently.
Trade-offThere is no single reassuring score. Reviewers must inspect multiple signals, which is slower but avoids hiding a semantic failure behind an aggregate result.
Make backfill behavior observable
ChoiceThe browser demonstration exposes buffering, replay, deduplication, apply counts, and cutover state while load and faults are introduced.
Trade-offIt is a bounded model rather than a production benchmark. Its value is that failure semantics can be inspected and tested directly.
Verification
Open the implementation or run the bounded behavior directly.
Limitations
- The repositories and demonstrations are independent public work, not evidence of deployment inside a named organization.
- The streaming model is deliberately bounded and does not claim production throughput, availability, or cost results.
- Consumer review is demonstrated through explicit protocol state; it does not prove adoption by external teams.