Title: No store migration path: engine 0.22.1 cannot serve a 0.11.2 store; 15s readiness gate aborts; memory_export capped at 15 MiB · Issue #1584 · rohitg00/agentmemory · GitHub
Open Graph Title: No store migration path: engine 0.22.1 cannot serve a 0.11.2 store; 15s readiness gate aborts; memory_export capped at 15 MiB · Issue #1584 · rohitg00/agentmemory
X Title: No store migration path: engine 0.22.1 cannot serve a 0.11.2 store; 15s readiness gate aborts; memory_export capped at 15 MiB · Issue #1584 · rohitg00/agentmemory
Description: What happened A long-running daemon (agentmemory 0.9.29 + iii-engine 0.11.2, file_based kv store) degraded into a wedge: REST worker routes stopped answering while the gateway kept accepting connections. Upgrading to 0.9.30 + the pinned ...
Open Graph Description: What happened A long-running daemon (agentmemory 0.9.29 + iii-engine 0.11.2, file_based kv store) degraded into a wedge: REST worker routes stopped answering while the gateway kept accepting connec...
X Description: What happened A long-running daemon (agentmemory 0.9.29 + iii-engine 0.11.2, file_based kv store) degraded into a wedge: REST worker routes stopped answering while the gateway kept accepting connec...
Opengraph URL: https://github.com/rohitg00/agentmemory/issues/1584
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"No store migration path: engine 0.22.1 cannot serve a 0.11.2 store; 15s readiness gate aborts; memory_export capped at 15 MiB","articleBody":"## What happened\n\nA long-running daemon (agentmemory 0.9.29 + iii-engine 0.11.2, file_based kv store) degraded into a wedge: REST worker routes stopped answering while the gateway kept accepting connections. Upgrading to 0.9.30 + the pinned engine 0.22.1 gives a healthy daemon — that cannot read the old store, so there is no way to migrate the 985 memories / 27k-node graph off it.\n\nWindows 11, native engine binaries (no Docker).\n\n## 1. The old stack wedges; symptoms are gateway-level\n\nStore `C:\\Users\\Leo\\data\\state_store.db` (348 MB, 331 shards), stack 0.9.29 + iii 0.11.2, ~60 min uptime:\n\n| probe | result |\n| --- | --- |\n| `agentmemory status` (CLI, direct kv read) | `v0.9.29 · degraded · Sessions 349 · Observations 8719 · Memories 985 · Graph 27256 nodes / 54396 edges · Heap 917 MB` |\n| `GET /agentmemory/livez` | 200 in 5.9 s |\n| `GET /agentmemory/health` | times out (>8 s, no response) |\n| `GET /agentmemory/sessions` | times out (>8 s, no response) |\n| `netstat` | ~10 sockets ESTABLISHED on 3111, never closing |\n\nConsumers time out: an extension hook that awaited `smart-search` was killed by the harness at 30 s, every prompt. Health went `degraded → critical` and heap sat at 770–917 MB within an hour of a fresh boot.\n\n## 2. Engine 0.22.1 does not surface the old store\n\n`agentmemory --data-dir C:\\Users\\Leo\\data` (0.9.30, pinned engine 0.22.1 installed to `~/.agentmemory/bin/iii.exe`):\n\n- engine boots, REST binds ~20 s\n- worker log: `Loaded persisted vector index (355 vectors)` → vector index is readable\n- then: `agentmemory worker did not become ready within 15s.` → `process.exit(1)` (hardcoded 15 s, no flag/env to raise it)\n- afterwards `status` reports `Sessions 0 · Observations 0 · Memories 0 · Graph 0 nodes, 0 edges · Provider ✗ noop (no key)` — memories/graph/bm25 keys are invisible, only the vector index loaded\n- in one run the engine grew to 1.3 GB RSS without ever serving REST\n\n## 3. No migration surface\n\n- `agentmemory --help` (0.9.30): no `export`, `backup`, `migrate`, or `restore` command.\n- MCP surface (54 tools, enumerated via `tools/list` on `agentmemory mcp`): no import/restore/bulk-write/seed tool — `memory_save` inserts one record at a time.\n- `memory_export` takes **no** arguments and refuses on a real store:\n `{\"bytes\":320615835,\"error\":\"Response is 305.8 MiB, over the ~15 MiB limit\",\"limitBytes\":15728640,\"oversized\":true,\"success\":false}`\n It also proxies over REST, so on a wedged daemon it is unreachable anyway.\n\nNet: 305.8 MiB of history is readable by the old (wedging) stack only, and there is no supported path to move it.\n\n## 4. Embeddings regressed across the upgrade\n\nSame `~/.agentmemory/.env`: 0.9.29 reports `Provider ✓ llm · Embeddings ✓ embeddings`; 0.9.30 on a fresh store reports `Provider ✓ llm · Embeddings bm25-only`. Silent recall-quality downgrade on upgrade; `status` shows it but nothing warns during `upgrade`.\n\n## Asks\n\n1. A documented store migration (0.11.x file_based kv → 0.22.x), or a `migrate --from \u003cdir>` command that reads the old shards and replays them.\n2. Make the worker readiness gate non-fatal and configurable (flag/env, default higher than 15 s). Aborting at 15 s on a 348 MB store leaves an engine running with no worker — indistinguishable from the wedge.\n3. Paginate/filter `memory_export` (`limit`, `offset`, `include: {memories, observations, graph}`) so a 300 MB store is exportable under the shim's response cap.\n4. Detect and warn on embedding-provider loss in `status`/`upgrade` output.\n\n## Workaround applied\n\nFresh store + pinned 0.22.1: healthy, 34 MB heap, `GET /agentmemory/health` 5 ms, save→recall round trip verified. History is kept as a cold archive at the old path. Separately, the consumer side was hardened: every extension request now has a bounded timeout (8 s default, 2 s health, 6 s smart-search), so a wedged daemon costs ~10 s per prompt instead of a 30 s harness timeout.\n","author":{"url":"https://github.com/leopold-dauvergne","@type":"Person","name":"leopold-dauvergne"},"datePublished":"2026-10-18T22:58:06Z","url":"https://github.com/rohitg00/agentmemory/issues/1584"}
| react-profiling | 0 |
| react-import-map | react,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf |
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:5ca4886f-d431-6cf9-d925-a5d4fe2fd382 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | B744:30C4ED:A96B7:D9FA9:6AEBDF53 |
| html-safe-nonce | 264b88b9dc043f4d67aca888c2bf3f0e4f8c7e4c2d0f8e048f9435a66d548525 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCNzQ0OjMwQzRFRDpBOTZCNzpEOUZBOTo2QUVCREY1MyIsInZpc2l0b3JfaWQiOiI4MTc5NDg5MTM2NTI4MDU2MTQ3IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 7da8a7b7980c91daefcf11a43a7802bd74b3f63270f1b524abdc8ce910133a1f |
| hovercard-subject-tag | issue:5915049300 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/rohitg00/agentmemory/1584/issue_layout |
| twitter:image | https://opengraph.githubassets.com/2a381a7d707573441bde539a5481db26af34f7c4336da58de66122fc03c934f5/rohitg00/agentmemory/issues/1584 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/2a381a7d707573441bde539a5481db26af34f7c4336da58de66122fc03c934f5/rohitg00/agentmemory/issues/1584 |
| og:image:alt | What happened A long-running daemon (agentmemory 0.9.29 + iii-engine 0.11.2, file_based kv store) degraded into a wedge: REST worker routes stopped answering while the gateway kept accepting connec... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | leopold-dauvergne |
| hostname | github.com |
| expected-hostname | github.com |
| None | 701f7e3aecc56e7594e73fa7b7e1483af74322a67f7038be453d0feb05e86e77 |
| turbo-cache-control | no-preview |
| go-import | github.com/rohitg00/agentmemory git https://github.com/rohitg00/agentmemory.git |
| octolytics-dimension-user_id | 48523873 |
| octolytics-dimension-user_login | rohitg00 |
| octolytics-dimension-repository_id | 1166408297 |
| octolytics-dimension-repository_nwo | rohitg00/agentmemory |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1166408297 |
| octolytics-dimension-repository_network_root_nwo | rohitg00/agentmemory |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 12d1048a3491dd63e4193b2937cf72f1c24a2a52 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| react-app-name | issues |
Links:
Viewport: width=device-width