Skip to content

docs: point CLI compatibility manifest to CLI repo#333

Open
pkosiec wants to merge 9 commits intomainfrom
pkosiec/appkit-version-pinning
Open

docs: point CLI compatibility manifest to CLI repo#333
pkosiec wants to merge 9 commits intomainfrom
pkosiec/appkit-version-pinning

Conversation

@pkosiec
Copy link
Copy Markdown
Member

@pkosiec pkosiec commented Apr 30, 2026

Summary

Points CONTRIBUTING.md to the CLI compatibility manifest in the CLI repository and removes the local copy (manifest, validator, tests, CI step, bump skill).

Companion PR: databricks/cli#5139

@pkosiec pkosiec force-pushed the pkosiec/appkit-version-pinning branch 2 times, most recently from 2a3fd34 to 8d8dc43 Compare April 30, 2026 15:20
pkosiec added 7 commits April 30, 2026 18:12
Add cli-compat.json that maps CLI versions to compatible AppKit template
and Agent Skills versions. This enables decoupling template delivery from
CLI release cycles — older CLI versions automatically receive a compatible
template version.

Also add tools/check-cli-compat.ts validation script and CI step to
prevent malformed manifests from being merged.

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
- Validate that "next" appkit/skills versions are >= all versioned
  entries to prevent accidental downgrades for newest CLIs
- Add check-cli-compat.ts to CLAUDE.md tools listing

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
- Reject prerelease suffixes in SEMVER regex (compareSemver
  produces NaN for them, silently bypassing next>=max check)
- Check appkit and skills fields independently in next>=max
  validation (previously a missing appkit skipped skills too)
- Require at least one versioned CLI entry besides "next"

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
- Add "Updating the CLI compatibility manifest" section to CONTRIBUTING.md
- Reduce cli-compat.json to two initial entries (next + 0.299.0)

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
- Bail out of cross-entry comparison when structure validation fails,
  preventing NaN-based semver comparisons on invalid entries
- Reject unexpected fields in manifest entries
- Validate versioned keys are in ascending semver order
- Extract validateCliCompat() for testability
- Add 20 unit tests covering all validation branches

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
- Rewrite "When to update" section in CONTRIBUTING.md to match design doc
  (evals step, "last 3 CLI versions" detail, future automation note)
- Add bump-cli-compat Claude Code skill for updating the manifest

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
@pkosiec pkosiec force-pushed the pkosiec/appkit-version-pinning branch from 8d8dc43 to 9b43085 Compare April 30, 2026 16:12
@pkosiec pkosiec marked this pull request as ready for review April 30, 2026 16:12
@pkosiec pkosiec requested a review from a team as a code owner May 5, 2026 12:36
@pkosiec pkosiec requested a review from calvarjorge May 5, 2026 12:36
@pkosiec pkosiec changed the title feat: add CLI compatibility manifest for template version pinning feat: add CLI compatibility manifest for version pinning May 5, 2026
The cli-compat.json manifest, validator, tests, CI step, and bump
skill have been moved to the CLI repository (databricks/cli). This
simplifies the architecture by colocating the manifest with its
consumer.

CONTRIBUTING.md retains a brief pointer to the CLI repo.

Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
@pkosiec pkosiec force-pushed the pkosiec/appkit-version-pinning branch from 05c899d to f42b850 Compare May 5, 2026 12:42
@pkosiec pkosiec changed the title feat: add CLI compatibility manifest for version pinning docs: point CLI compatibility manifest to CLI repo May 5, 2026
Signed-off-by: Pawel Kosiec <pawel.kosiec@databricks.com>
@MarioCadenas
Copy link
Copy Markdown
Collaborator

we should wait to merge this until the CLI pr is merged just in case something changes

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