Skip to content

handle versions better - #56

Merged
alxnddr merged 26 commits into
mainfrom
versioning
Sep 18, 2026
Merged

alxnddr merged 26 commits into
mainfrom
versioning

Conversation

@alxnddr

@alxnddr alxnddr commented Sep 16, 2026 •

Copy link
Copy Markdown
Member

Move version gating into the client

  • The client owns the version model: KNOWN_RANGE names the supported majors, FEATURE_RULES names every version- or token-dependent behaviour, and only features.ts compares a major.
  • Every resource method declares its features in METHOD_REQUIREMENTS and opens with transport.require(), so a refusal happens before any request, and a guard test checks each command's requires against the calls in its body.
  • Domain schemas are the newest server's shape; an older generation gets a private wire schema and a lossless converter, so transform, transform-job and library print the same JSON on every major.
  • A newer or unparseable server runs as head with one stderr notice, an older one is labelled older-than-known, and an error under a stale cached probe earns one re-probe that rewrites the profile.
  • Skills declare requires: in frontmatter and <!-- requires --> fences that mb skills resolves against the cached probe, the e2e matrix pins majors 58 through 63 plus head, and the gate fails on a constant rule, a missing lane, or a guessed requirement.

Comment thread packages/cli/src/core/skills.ts Fixed
@github-actions

Copy link
Copy Markdown

Published @metabase/cli@0.3.1-alpha.versioning.9ac5f50 with dist-tag alpha-versioning.

Install: npm install -g @metabase/cli@alpha-versioning

@alxnddr
alxnddr requested a review from ranquild September 18, 2026 21:29
@alxnddr
alxnddr marked this pull request as ready for review September 18, 2026 21:29
@alxnddr
alxnddr merged commit 613caf1 into main Sep 18, 2026
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants