Skip to content

Detect unmarked breaking changes before a release #1900

Open

Description

@joshunrau

Follow-up to #1870. A breaking change has to be marked ! today, and increment-version.ts makes the next release a major once one is in range. Nothing yet catches a breaking change that was not marked. Each check below compares against the last v* tag and fails CI on a change that breaks a promise in Versioning and Support when the range has no breaking commit.

  • HTTP API: diff /spec.json against the last tag. Additions pass; a removed or changed path, parameter or schema fails.
  • Deployment config: diff .env.template and docker-compose.yaml against the last tag. A removed or renamed variable, a variable that loses its default, or a removed service, volume or port fails.
  • Export formats: snapshot the column and field names of each export format, so a rename shows up as a snapshot diff.
  • Upgrade test: boot the previous release's images against fresh data, upgrade to the new images, and check that every record still reads and exports. It covers releases made after Release and support policy: what a version promises, which lines get fixes, and how images and npm map onto it #1870's release workflow lands; older releases are out of scope.

Activity

  1. added
    EnhancementType: an improvement to an existing feature, including performance
    Difficulty: HighMore than a day, or touches several workspaces
    Area: InfrastructureDeployment, Docker, CI, logging, CLIs, build and test tooling
    on Nov 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area: InfrastructureDeployment, Docker, CI, logging, CLIs, build and test toolingDifficulty: HighMore than a day, or touches several workspacesEnhancementType: an improvement to an existing feature, including performancePriority: MediumReal value; schedule normally

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions