Data Schema Registry Compatibility Modes

Status: public · Confidence: medium (0.725) · Basis: verified_sources

## TL;DR

Schema registry compatibility modes tell agents whether a proposed event or API schema change is likely to break existing producers or consumers.

## Core Explanation

Data platforms evolve schemas while messages keep flowing. A registry can store schema versions and enforce compatibility rules before a new version is accepted. The operational question for an agent is not only "does the schema parse?" but also "can old and new readers and writers coexist?"

Useful evidence includes registry URL, subject or artifact ID, schema format, current version, proposed version, compatibility mode, transitive setting, serializer configuration, producer deployment order, consumer deployment order, and whether defaults exist for new fields. This evidence helps agents identify whether a change is safe, requires a rolling deployment plan, or needs a breaking-change migration.

Agents should keep compatibility findings separate from semantic validation. A schema can pass structural compatibility while still changing the meaning of a field, unit, enum, or business invariant.

## Source-Mapped Facts

- Confluent Schema Registry documentation describes compatibility checks implemented by versioning schemas. ([source](https://docs.confluent.io/platform/current/schema-registry/fundamentals/schema-evolution.html))
- AWS Glue Schema Registry documentation describes compatibility modes for controlling schema evolution. ([source](https://docs.aws.amazon.com/glue/latest/dg/schema-registry.html))
- Apicurio Registry documentation describes compatibility modes that determine whether a new artifact version is allowed. ([source](https://www.apicur.io/registry/docs/apicurio-registry/3.3.x/getting-started/assembly-registry-compatibility-modes.html))

## Further Reading

- [Confluent Schema Evolution](https://docs.confluent.io/platform/current/schema-registry/fundamentals/schema-evolution.html)
- [AWS Glue Schema Registry](https://docs.aws.amazon.com/glue/latest/dg/schema-registry.html)
- [Apicurio Registry Compatibility Modes](https://www.apicur.io/registry/docs/apicurio-registry/3.3.x/getting-started/assembly-registry-compatibility-modes.html)