MiHCM

Versioning And Stability

The design system uses semver through Changesets.

Package Stability

StatusMeaning
stableProduction API. Breaking changes require migration notes.
betaUsable, but API can change in a minor release before 1.0.
experimentalTrial surface. Do not build critical flows on it without owner approval.
deprecatedStill present, but migration is expected.

Semver Rules

ChangeBump
New componentminor before 1.0, minor after 1.0
New prop with backward-compatible defaultminor
Bug fix with same APIpatch
Visual fix preserving documented behaviorpatch
Token value change with visible impactminor before 1.0; major after 1.0 if breaking
Removed/renamed propminor before 1.0; major after 1.0
AI-UI descriptor schema changeminor before 1.0; major after 1.0 if breaking
MCP new toolminor before 1.0; minor after 1.0
MCP request/response contract changeminor before 1.0; major after 1.0
Agent skill behavior changedocs change unless packaged; version if distributed as package

Changeset Required

Add a changeset when changing any publishable package:

  • @mihcm/ui
  • @mihcm/theme
  • @mihcm/tokens
  • @mihcm/icons
  • @mihcm/ai-ui
  • @mihcm/cli
  • @mihcm/mcp
  • @mihcm/eslint-config

No changeset is required for docs-only changes unless they ship in a package.

Deprecation Policy

When deprecating:

  1. mark the docs page;
  2. add migration guidance;
  3. keep the old API for at least one minor release before 1.0 when practical;
  4. add tests for the migration path when code behavior changes.

Release Notes

Every release should answer:

  • what changed;
  • who is affected;
  • whether migration is needed;
  • whether security posture changed;
  • whether MCP, skills, or AI-UI descriptors changed.