release: v3.3.3 — restore install integrity#1144
Merged
Conversation
Restore-integrity release. Unbreaks fresh `pip install mempalace` from v3.3.2 by re-tagging current develop, which carries both the plugin.json consumer (shipped in 3.3.2) and the matching mempalace-mcp entry point in pyproject.toml (added on develop ~10h after the 3.3.2 tag via #340 by @messelink). #1093 diagnosed by @jphein. Bumps (all 5 sources agree per Version Guard / CLAUDE.md): - mempalace/version.py 3.3.2 → 3.3.3 - pyproject.toml 3.3.2 → 3.3.3 - .claude-plugin/plugin.json 3.3.2 → 3.3.3 - .claude-plugin/marketplace.json 3.3.2 → 3.3.3 - .codex-plugin/plugin.json 3.3.2 → 3.3.3 - CHANGELOG.md new [3.3.3] entry No code changes. The fix for #1093 is already on develop via merged PRs #340, #1021, #851, #942, #833, #673, #661, #659, #1097, #1051, #1001, #945. Branch name intentionally outside the `release/*` ruleset so follow-up CI-fix commits aren't gated behind a nested PR. (Supersedes #1143 — closed for exactly that reason after it missed 3 of 5 version files.) Smoke-tested locally from a fresh develop clone: grep mempalace-mcp pyproject.toml .claude-plugin/plugin.json # both ✓ python -m build --wheel # ✓ pip install …-py3-none-any.whl # ✓ which mempalace-mcp # ✓ mempalace-mcp --help # ✓
test_readme_badge_matches_version_py compares the version in the README badge URL against version.py. Missed it in the initial bump.
gut-puncture
pushed a commit
to gut-puncture/mempalace
that referenced
this pull request
Apr 24, 2026
Two follow-up fixes from the v3.3.3 smoke test get folded into 3.3.3 before the tag is cut. Also syncs uv.lock with the 3.3.3 version bump merged via MemPalace#1144.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft — queued for @igorls review + approval before tagging. Supersedes #1143.
Summary
Version bump for v3.3.3, a restore-integrity release. Unbreaks fresh `pip install mempalace` from v3.3.2.
Six-file touch; no code changes:
All 5 version sources now agree per the Version Guard workflow. The #1093 fix is already on `develop` via merged #340 (messelink, ~10h after we tagged 3.3.2).
Why
v3.3.2 shipped a `.claude-plugin/plugin.json` referencing a `mempalace-mcp` binary that the same release's `pyproject.toml` never declared. Every fresh `pip install mempalace==3.3.2` produces a Claude Code plugin config pointing at a binary that isn't installed → MCP server fails to launch. Diagnosed by @jphein in #1093.
Why not `release/3.3.3` as the branch name
The `release/` ruleset requires all updates go through a PR with no force-push, which meant I couldn't fix my own CI break on #1143 (missed 3 of 5 version files). A `chore/`-prefixed branch dodges the ruleset so follow-up CI fixes stay cheap. If you prefer the `release/` convention for release-shaped PRs, easy to rename the head branch before tagging — or leave as-is, the tag is what matters.
What ships with 3.3.3 (all already on `develop`)
Bug fixes
mempalace-mcpentry point missing frompyproject.tomldespiteplugin.jsonrequiring it — MCP server fails to start on fresh install #1093 fix)Improvements
Added
Deferred to 3.3.4
Smoke test — passed locally on develop @ HEAD
```bash
$ grep mempalace-mcp pyproject.toml .claude-plugin/plugin.json
pyproject.toml:mempalace-mcp = "mempalace.mcp_server:main"
.claude-plugin/plugin.json: "command": "mempalace-mcp"
$ python -m build --wheel
Successfully built mempalace-3.3.2-py3-none-any.whl
$ python -m venv /tmp/v333 && source /tmp/v333/bin/activate
$ pip install dist/mempalace-3.3.2-py3-none-any.whl
$ which mempalace-mcp
/tmp/v333/bin/mempalace-mcp
$ mempalace-mcp --help
usage: mempalace-mcp [-h] [--palace PATH]
MemPalace MCP Server
```
All four invariants pass. Full brief with decisions + proposed release notes: go-team-mempalace/proposals/v3-3-3-igor-brief.html.
Review checklist for @igorls
Tag sequence (after merge)
```bash
git checkout develop && git pull
git tag -a v3.3.3 -m "v3.3.3 — restore install integrity"
git push origin v3.3.3
```
CI publishes to PyPI; marketplace refresh picks up `plugin.json`.
Ready for your review. Mark as ready-for-review + merge (or redirect) when you're happy with the shape.