MigrationCoverageMissing see history edit this page

Talks about: , , , and

Symptom

READY=False, REASON=MigrationCoverageMissing. The Message names the boundary (e.g. 1.4.0 → 2.0.0). status.version is not advanced.

Cause

spec.version.requireMigrationCoverage is set, and the version transition crosses a major-version boundary (the major component increased) with no migration selected for it. A major bump usually implies breaking changes that need a migration, so rather than advance silently the controller fails closed and asks for an explicit decision.

Minor and patch transitions are never gated by this — only a major boundary.

Remediation

Either add a migration that covers the boundary:

spec:
  migrations:
    - name: upgrade-to-2
      to: "2.0.0"            # covers the 1.x → 2.0.0 major boundary
      from: ">=1.0.0"
      stage: app
      actions: [ ... ]

…or, if the major bump genuinely needs no migration, drop spec.version.requireMigrationCoverage (or correct the version if the bump was unintended). The condition clears on the next reconcile once a covering migration exists or the flag is removed.