Docs/Versioning and Deprecation
BEHAVIOR

Versioning and Deprecation

Change public contracts without surprising integrations.

Version durable contracts explicitly

  • Treat workflow template versions and artifact schema versions as immutable identifiers.
  • Use semantic versions for caller-defined contracts even though the API does not currently enforce semantic-version syntax.
  • Deprecate an artifact schema version instead of mutating it in place.
  • Pin a workflow contract or template version when reproducibility matters.
  • Reject artifacts whose project, invocation, run, schema, or version does not match the consumer expectation.

API compatibility policy

Additive API changes remain within the current semantic public contract version. Removing or changing a supported field, route, auth rule, or behavior requires a deprecation notice of at least 90 days and an entry in the public changelog.

CLI documentation follows released behavior

The released midfleet --help output and public CLI package are authoritative for command names and flags. Examples should state their tested CLI range and use midfleet version plus midfleet update-check before version-sensitive operations.