Skip to content

Commit 962776c

Browse files
committed
sync: merge main into develop after v3.3.0 release
Bring back the main-only content that develop has been missing: - pyproject.toml chromadb upper-bound removal (MemPalace#690) - CHANGELOG [3.2.0] Packaging subsection (MemPalace#690, MemPalace#761) - CONTRIBUTING.md fork-first clone instructions - mempalace/hooks_cli.py richer block-reason strings (from MemPalace#666, still used by the Python hook invocation path) - integrations/openclaw/SKILL.md version bump to 3.3.0 Plus the v3.3.0 release commit itself (4aa7e1e) and the legacy main-only commits (MemPalace#666, MemPalace#690, v3.2.0 finalization) for history. Resolves the main → develop drift that caused PR MemPalace#838's conflicts. Going forward, back-merging main to develop after each release will prevent the same pattern. Single conflict in CHANGELOG.md resolved by taking main's version (the Packaging subsection under [3.2.0]).
2 parents 045023f + 4aa7e1e commit 962776c

5 files changed

Lines changed: 29 additions & 12 deletions

File tree

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,22 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
5454

5555
## [3.2.0] — 2026-04-12
5656

57+
### Packaging
58+
- Remove `chromadb<0.7` upper bound — unblocks installs against chromadb 1.x palaces (#690)
59+
- Bump version to 3.2.0 across `pyproject.toml`, `mempalace/version.py`, README badge, and OpenClaw SKILL (#761)
60+
5761
### Security
5862
- Harden palace deletion, WAL redaction, and MCP search input handling (#739)
5963
- Consistent input validation, argument whitelisting, concurrency safety, and WAL fixes (#647)
6064
- Remove hardcoded credential paths from benchmark runners (#177)
6165
- Remove global SSL verification bypass in convomem_bench (#176)
6266

6367
### Bug Fixes
68+
- Parse Claude.ai privacy export with `messages` key and sender field (#685, #677)
69+
- Detect mtime changes in `_get_client` to prevent stale HNSW index (#757)
70+
- Hash full content in `tool_add_drawer` drawer ID — stable re-mines (#716)
71+
- Remove 10k drawer cap from status display (#707, #603)
72+
- Correct typo in entity_detector interactive classification prompt (#755)
6473
- Prevent convo_miner from re-processing 0-chunk files on every run (#732, #654)
6574
- Remove silent 8-line AI response truncation in convo_miner (#708, #692)
6675
- Store full AI response in convo_miner exchange chunking (#695)
@@ -103,6 +112,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
103112
- Add VitePress documentation site (#439)
104113
- Add warning about fake MemPalace websites (#598)
105114
- Fix stale org URLs and PR branch target in contributor docs (#679)
115+
- Fix misaligned architecture diagram (#734, #733)
106116
- Add ROADMAP.md — v3.1.1 stability patch and v4.0.0-alpha plan
107117

108118
### Internal

CONTRIBUTING.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,11 @@ Thanks for wanting to help. MemPalace is open source and we welcome contribution
55
## Getting Started
66

77
```bash
8-
git clone https://github.com/MemPalace/mempalace.git
8+
# Fork the repo on GitHub first, then clone your fork
9+
git clone https://github.com/<your-username>/mempalace.git
910
cd mempalace
11+
git remote add upstream https://github.com/MemPalace/mempalace.git
12+
1013
pip install -e ".[dev]" # installs with dev dependencies (pytest, build, twine)
1114
```
1215

integrations/openclaw/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
name: mempalace
33
description: "MemPalace — Local AI memory with 96.6% recall. Semantic search, temporal knowledge graph, palace architecture (wings/rooms/drawers). Free, no cloud, no API keys."
4-
version: 3.1.0
4+
version: 3.3.0
55
homepage: https://github.com/MemPalace/mempalace
66
user-invocable: true
77
metadata:

mempalace/hooks_cli.py

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,22 @@
1818
STATE_DIR = Path.home() / ".mempalace" / "hook_state"
1919

2020
STOP_BLOCK_REASON = (
21-
"AUTO-SAVE checkpoint. Save key topics, decisions, quotes, and code "
22-
"from this session to your memory system. Organize into appropriate "
23-
"categories. Use verbatim quotes where possible. Continue conversation "
24-
"after saving."
21+
"AUTO-SAVE checkpoint (MemPalace). Save this session's key content:\n"
22+
"1. mempalace_diary_write — AAAK-compressed session summary\n"
23+
"2. mempalace_add_drawer — verbatim quotes, decisions, code snippets\n"
24+
"3. mempalace_kg_add — entity relationships (optional)\n"
25+
"Do NOT write to Claude Code's native auto-memory (.md files). "
26+
"Continue conversation after saving."
2527
)
2628

2729
PRECOMPACT_BLOCK_REASON = (
28-
"COMPACTION IMMINENT. Save ALL topics, decisions, quotes, code, and "
29-
"important context from this session to your memory system. Be thorough "
30-
"\u2014 after compaction, detailed context will be lost. Organize into "
31-
"appropriate categories. Use verbatim quotes where possible. Save "
32-
"everything, then allow compaction to proceed."
30+
"COMPACTION IMMINENT (MemPalace). Save ALL session content before context is lost:\n"
31+
"1. mempalace_diary_write — thorough AAAK-compressed session summary\n"
32+
"2. mempalace_add_drawer — ALL verbatim quotes, decisions, code, context\n"
33+
"3. mempalace_kg_add — entity relationships (optional)\n"
34+
"Be thorough \u2014 after compaction, detailed context will be lost. "
35+
"Do NOT write to Claude Code's native auto-memory (.md files). "
36+
"Save everything to MemPalace, then allow compaction to proceed."
3337
)
3438

3539

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ classifiers = [
2525
"Topic :: Utilities",
2626
]
2727
dependencies = [
28-
"chromadb>=0.5.0,<0.7",
28+
"chromadb>=0.5.0",
2929
"pyyaml>=6.0,<7",
3030
]
3131

0 commit comments

Comments
 (0)