Skip to content
Module
Module 5 of 6Lesson 1 of 2~14 min

Evolve the contract without breaking the product

An output schema evolves, but the code and teams that depend on it do not all change at the same pace. This lesson helps you recognize a risky change, prepare a migration, anticipate the effect of switching models and clarify where the PM's role ends and the engineers' begins.

Lesson objective

By the end of this lesson, you will be able to classify a schema change as additive or breaking, propose a migration plan, anticipate the effect of changing provider or model, and split roles between PM and developers.

Topics covered

  • schema versioning
  • breaking change
  • migration
  • model switch

In the glossary

Full glossary

Where it fits

Keep the contract alive

How do I evolve the schema without breaking the product, and how do I know it holds?

Lessons in this module

  1. Evolve the contract without breaking the product (this lesson)
  2. Test the contract on 20 cases chosen to break it

What you will learn in this module

This lesson is part of the course Get reliable, product-ready AI outputs (JSON, schemas, function calling)

  • Version and evolve an output contract without breaking its consumers, accounting for provider differences and the split of roles between PM and developers.
  • Build a set of 20 robustness cases and set acceptance thresholds before going to production.