chore(release): v0.9.5 — search recall + plugin compatibility#261
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (12)
📝 WalkthroughWalkthroughThis PR bumps the project to 0.9.5, accepts 0.9.5 export files, increases several plugin fetch timeouts, updates tests, and adds a 0.9.5 changelog plus install/docs text clarifying an iii-engine v0.11.2 pin. ChangesRelease 0.9.5 Bump
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
src/types.ts (1)
282-282: 💤 Low valueLGTM! Version discriminator updated consistently.
The
ExportData.versionunion now includes"0.9.5", aligning with the runtime version insrc/version.tsand the import validation insrc/functions/export-import.ts.Note: The version union has grown to 30+ literal types. Consider deriving this programmatically (e.g., from a version range or shared constant array) in a future refactor to reduce maintenance burden.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/types.ts` at line 282, The ExportData.version union in types (symbol: ExportData.version in src/types.ts) has been updated to include "0.9.5" to match runtime and import validation, so no functional change is required; keep the literal added but for future maintenance replace the long union with a single shared constant or derived type (e.g., export a versions array and derive the union via typeof V[number]) so you maintain a single source of truth for versions across ExportData.version, src/version.ts, and src/functions/export-import.ts.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@src/functions/export-import.ts`:
- Line 179: supportedVersions contains "0.7.7" but the TypeScript union type
ExportData.version does not, causing a type/runtime mismatch; update one side to
keep them consistent: either add "0.7.7" to the ExportData.version union in
src/types.ts (so the type includes "0.7.7") or remove "0.7.7" from the
supportedVersions Set in export-import.ts; locate the supportedVersions constant
and the ExportData.version union and make the change so both lists match
exactly.
---
Nitpick comments:
In `@src/types.ts`:
- Line 282: The ExportData.version union in types (symbol: ExportData.version in
src/types.ts) has been updated to include "0.9.5" to match runtime and import
validation, so no functional change is required; keep the literal added but for
future maintenance replace the long union with a single shared constant or
derived type (e.g., export a versions array and derive the union via typeof
V[number]) so you maintain a single source of truth for versions across
ExportData.version, src/version.ts, and src/functions/export-import.ts.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 591c2d1d-d67e-4b47-aa66-81dd4923373b
📒 Files selected for processing (9)
CHANGELOG.mdpackage.jsonplugin/.claude-plugin/plugin.jsonplugin/scripts/session-end.mjsplugin/scripts/stop.mjssrc/functions/export-import.tssrc/types.tssrc/version.tstest/export-import.test.ts
Bug-fix patch focused on search recall correctness and plugin compatibility. Pins iii-engine to v0.11.2 because v0.11.6 introduces a new sandbox-everything-via-`iii worker add` model that agentmemory hasn't been refactored for yet — pin lifts once that refactor lands. Adds a hard guard against silent vector-index corruption, fixes BM25 indexing for memories saved via memory_save, and lands four Hermes plugin fixes. Per AGENTS.md release checklist: - package.json version 0.9.4 -> 0.9.5 - src/version.ts VERSION constant - src/types.ts ExportData version union - src/functions/export-import.ts supportedVersions Set - test/export-import.test.ts assertion - plugin/.claude-plugin/plugin.json version - CHANGELOG.md detailed entries with contributor shoutouts Headlines (full detail in CHANGELOG): Fixed: - BM25 search now indexes memories saved via memory_save (#258, #257) Thanks @Nizar-BenHamida for the precise repro. - Embedding providers no longer silently corrupt the vector index when an API returns wrong-dimension vectors (#248, #247, #256) Thanks @AmmarSaleh50 for issue + fix + tests. - Hermes handle_tool_call returns JSON strings, not raw dicts (#255, #254) Thanks @KyoMio for the Anthropic-protocol repro. - Hermes status reflects real service state on systemd installs (#253, #250) Thanks @OptionalCoin for tracing it to env-source divergence. - Hermes hooks accept passthrough kwargs (#252, #249) Thanks @OptionalCoin again for the log analysis. - agentmemory demo now seeds observations correctly (#251, #229) Thanks @seishonagon for root-cause analysis. - LLM compression / summarization timeouts increased (#213) Thanks @xuli500177. - Pi / OpenClaw / Hermes integration plugin fixes (#230) Thanks @deepmroot. Changed: - iii-engine pinned to v0.11.2 across every install path (#260). v0.11.6 introduces a new `iii worker add` sandbox model that agentmemory still pre-dates; pin lifts when we refactor agentmemory to register as a sandboxed worker. Override with AGENTMEMORY_III_VERSION=<version> for users who've migrated manually. - README documents iii worker add extension surface (#242). - README iii Console install/launch commands corrected (#243). Validated: 852/852 tests pass, npm run build clean.
|
Pushed Reframing: not a regression, a sandbox-model arch shiftiii-engine v0.11.6 isn't a regression — it's a new architecture where every worker registers via Pin lifts when agentmemory refactors to register as a sandboxed worker via Updated:
Review-feedback fix on top of the reframing
Out of scope for this finding (skipped per minimal-changes rule): Validation: |
Release v0.9.5. Full notes in CHANGELOG.md.
Headlines
Fixed:
memory_save(fix(memory): index memories into BM25 + backfill on startup (closes #257) #258, closes Bug Report: BM25 Search Returns Empty Results in v0.9.4 #257). Bug existed since v0.9.0. Thanks @Nizar-BenHamida.Changed:
iii-enginepinned to v0.11.2 across every install path (fix(install): pin iii-engine to v0.11.2 across all install paths #260). v0.11.6 introduces a new sandbox-everything-via-iii worker addworker model. agentmemory still uses the olderiii-exec watch + node dist/index.mjsmodel fromiii-config.yaml, which doesn't run cleanly under the new engine. Pin lifts once we refactor agentmemory to register as a sandboxed worker — tracked separately.AGENTMEMORY_III_VERSION=<version>override lets users who've migrated manually point at a newer engine.iii worker addextension surface (docs(readme): show how to extend agentmemory with iii workers #242).Per-file version bump (per AGENTS.md)
package.json—0.9.4→0.9.5src/version.ts—VERSIONconstantsrc/types.ts—ExportData.versionunionsrc/functions/export-import.ts—supportedVersionsSettest/export-import.test.ts— version assertionplugin/.claude-plugin/plugin.json— versionCHANGELOG.md— detailed entries + per-contributor shoutoutsTest plan
npm test— 852/852 passnpm run build— cleanv0.9.5, GitHub release with CHANGELOG body, npm publish via release workflowNotes for upgrading users
iii-enginev0.11.6 and noticed search returning empty after save, this release fixes it by pinning to v0.11.2 in every install path. v0.11.6 brings a new sandbox model that agentmemory hasn't been refactored for yet — pin keeps existing users unblocked while that work happens. Runnpx @agentmemory/agentmemory upgradeto pull the pinned engine.AGENTMEMORY_DROP_STALE_INDEX=trueto discard and rebuild from live observations.Roadmap follow-up (not in this release)
Refactor agentmemory to register itself via
iii worker add agentmemoryas a sandboxed worker, replacing the currentiii-exec watchshape iniii-config.yaml. Once that lands, theiii-enginepin lifts and agentmemory runs againstiii v0.11.6+natively. This is the path Mike + Rohit aligned on for converting agentmemory's user base into iii users (per the GTM standup) — same work doubles as the v0.11.6 compat fix.Summary by CodeRabbit
New Features
Bug Fixes
Chores