Skip to content

chore(release): prepare 0.88.0 — renumber, changelog, and a version-report fix - #638

Merged
padak merged 2 commits into
mainfrom
claude/keboola-cli-0-88-0-release-900256
Aug 22, 2026
Merged

chore(release): prepare 0.88.0 — renumber, changelog, and a version-report fix#638
padak merged 2 commits into
mainfrom
claude/keboola-cli-0-88-0-release-900256

Conversation

@padak

@padak padak commented Aug 22, 2026

Copy link
Copy Markdown
Member

Why

Nothing merged between v0.87.0 and today has been published. Two PRs bumped
the version independently along the way — #629 took pyproject.toml to
0.88.0, #633 took it to 0.89.0 — so main currently carries 0.89.0 and
changelog.py carries two separate unreleased blocks.

Publishing that as-is would retroactively ship two releases nobody could ever
have installed. This collapses the whole span into one 0.88.0.

What

  • changelog: the 0.89.0 bullets merge into 0.88.0 and the key is gone.
    Bullets are reordered so the storage describe-column writes column descriptions where the MCP server never reads them #624 column-description fix leads — it is the
    largest user-visible change of the span, and the first bullet is what
    kbagent changelog renders as the one-line summary. The internal
    prompt-budget note moves to the end.
  • version: pyproject.toml 0.89.0 -> 0.88.0, propagated to
    plugin.json, marketplace.json and uv.lock by make version-sync.
  • version gates: every 0.89.0+ / (since v0.89.0) marker rewritten in
    CLAUDE.md, plugins/kbagent/agents/keboola-expert.md,
    commands-reference.md, gotchas.md, commands/context.py, docs/sdk.md
    and two test comments. Leaving these stale is the silent failure that matters:
    the agent would refuse token list --with-last-used or search --scope on a
    user who actually has them, because the gate claims a version that will never
    exist.

No behaviour change — this is purely release bookkeeping.

Release span covered by 0.88.0

PR Issue Change
#629 #621 storage table-detail returns the table definition (BigQuery partitioning)
#631 #624 column descriptions written where the UI, MCP and warehouse read them + describe-migrate
#633 #622 token list --with-last-used / --columns
#632 five keboola-mcp-server parity flags
#634 keboola-expert prompt trimmed to ~47.8 KB
#635 E2E envelope unwrap fix

Verification

make check green: lint, format, changelog-check, sentinel guards,
version-check, 5831 passed / 12 skipped.

$ kbagent changelog --limit 2
v0.88.0
  • Fix (#624): column descriptions are now written where the Keboola UI and the
    MCP server actually read them.  (+19 more)
v0.87.0
  • New (#626): data-app create gains --workspace / --no-workspace ...

Open in Devin Review

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

@padak padak changed the title chore(release): renumber the unreleased 0.89.0 work into a single 0.88.0 chore(release): prepare 0.88.0 — renumber, changelog, and a version-report fix Aug 22, 2026
padak added 2 commits August 22, 2026 17:07
Nothing between v0.87.0 and today was ever published: #629 bumped
pyproject to 0.88.0, #633 bumped it again to 0.89.0, and both changelog
blocks sat unreleased. Ship the whole span as one release instead of
publishing two versions retroactively.

- changelog: merge the 0.89.0 bullets into 0.88.0. Reordered so the
  #624 column-description fix leads -- it is the largest user-visible
  change of the span, and the first bullet is what `kbagent changelog`
  renders as the one-line summary. The internal prompt-budget note moves
  to the end.
- pyproject 0.89.0 -> 0.88.0, propagated to plugin.json,
  marketplace.json and uv.lock via `make version-sync`.
- rewrite every `0.89.0+` / `(since v0.89.0)` version gate in CLAUDE.md,
  the keboola-expert prompt, commands-reference.md, gotchas.md,
  context.py, docs/sdk.md and two test comments. A stale gate would make
  the agent refuse flags that do exist on the user's installed version.
…rade to

`upgrade_command` in `kbagent version --json` is documented as a string a
consumer may shell out to verbatim, but `get_kbagent_version_info()` built
it unconditionally. Both non-False states of `up_to_date` therefore handed
out an actively wrong command:

* `true` (local >= latest). A caller on a pre-release compares ahead of the
  stable release a non-`--beta` fetch returns (`0.44.0b1` >= `0.43.3`), so it
  read `up_to_date: true` beside a `--force --reinstall` command pinned to the
  OLDER stable wheel. Running it is a silent downgrade off the beta -- the
  exact foot-gun the beta channel's three gates exist to prevent.
* `null` (release feed unreachable). `resolve_kbagent_wheel_url(None)` yields
  no asset, so it fell through to the unpinned `git+` source install, resolving
  whatever the default branch happens to be -- on the one code path reached
  precisely because kbagent could not establish what the current release is.

`prepare_kbagent_update_plan()` already gated on `up_to_date is False`, so
`kbagent update` itself was never affected; only the reported string was. The
frozen (PyInstaller) channel branch is untouched -- `brew upgrade` and friends
are no-ops when current, not downgrades, and `install_channel` consumers rely
on that shape.

Two tests added; both fail on the parent commit.

Also in this commit, for the 0.88.0 release span:

- changelog: `(#issue)` decorations on all 24 bullets. The `SDK:` prefix is not
  in `_PREFIX_RE`, so that bullet rendered uncoloured -- it becomes `New (#622):`
  with the SDK context kept in the sentence.
- changelog: entries for #636 and #637, which carried no version bump and so
  arrived with no changelog at all.
- four first sentences shortened under the 160-char headline budget that
  `test_changelog_render.py` enforces -- two of them were pushed over by the
  decorations added here.
@padak
padak force-pushed the claude/keboola-cli-0-88-0-release-900256 branch from d88f8e2 to 9f6336b Compare August 22, 2026 15:09
@padak
padak merged commit e101349 into main Aug 22, 2026
4 checks passed
@padak
padak deleted the claude/keboola-cli-0-88-0-release-900256 branch August 22, 2026 15:20
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.

1 participant