This release fixes issues for SREs watching stability and regressions.
✓ No known CVEs patched in this version
Topics
+14 more
Affected surfaces
ReleasePort's take
Moderate signalThe v3.7.0‑alpha.33 release fixes several memory layer bugs—including dimension mismatches, persistence issues on Windows, and incorrect search results—ensuring reliable operation of vector indexes and CLI tools.
Why it matters: Patch to v3.7.0‑alpha.33 immediately if you use memory_search, vector_indexes, or Windows memory store; the fixes resolve zero‑result returns and persistence failures that affect production workloads.
Summary
AI summaryFixed memory_search returning zero results due to dimension mismatch and CLI persistence bugs.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Verification script pins `[email protected]` to bypass 403 install error for federation plugin. Verification script pins `[email protected]` to bypass 403 install error for federation plugin. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Dependency | Medium |
All three CLI packages (claude-flow, ruflo, @claude-flow/cli) updated to version 3.7.0-alpha.33. All three CLI packages (claude-flow, ruflo, @claude-flow/cli) updated to version 3.7.0-alpha.33. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Bridge search index mismatch between 768 and imported 384 dimensions fixed. Bridge search index mismatch between 768 and imported 384 dimensions fixed. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
Windows `memory store` now persists correctly using CLAUDE_FLOW_MEMORY_PATH. Windows `memory store` now persists correctly using CLAUDE_FLOW_MEMORY_PATH. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`ruflo doctor` no longer reports "Not initialized" on valid memory DBs. `ruflo doctor` no longer reports "Not initialized" on valid memory DBs. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`memory_search` returns correct results for non-default namespaces. `memory_search` returns correct results for non-default namespaces. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`memory_bridge_status` now shows accurate total entries count. `memory_bridge_status` now shows accurate total entries count. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
Win32 `memory_import_claude` handles drive-colon and backslash correctly. Win32 `memory_import_claude` handles drive-colon and backslash correctly. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`pre-bash` hook no longer throws TypeError on Bash tool calls. `pre-bash` hook no longer throws TypeError on Bash tool calls. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
Bash, Edit, and Session hooks now work with global-install layout. Bash, Edit, and Session hooks now work with global-install layout. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
`vector_indexes` schema dim 768→384 for default model Xenova/all-MiniLM-L6-v2. `vector_indexes` schema dim 768→384 for default model Xenova/all-MiniLM-L6-v2. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
CLI `embeddings index -a build` no longer requires `-c` flag for HNSW global index. CLI `embeddings index -a build` no longer requires `-c` flag for HNSW global index. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
`hooks_pretrain` correctly reports patternsExtracted on Markdown-heavy repos. `hooks_pretrain` correctly reports patternsExtracted on Markdown-heavy repos. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Statusline now displays the correct installed RuFlo version. Statusline now displays the correct installed RuFlo version. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
`vector_indexes` schema dimension changed from 768 to 384 for default model. `vector_indexes` schema dimension changed from 768 to 384 for default model. Source: granite4.1:30b@2026-05-22-audit Confidence: low |
— |
| Refactor | Medium |
Added audit scripts to CI: `audit-vector-dim.mjs` and `audit-hook-handler-prompt.mjs`. Added audit scripts to CI: `audit-vector-dim.mjs` and `audit-hook-handler-prompt.mjs`. Source: llm_adapter@2026-05-21 Confidence: low |
— |
Full changelog
14 critical fixes since 3.7.0-alpha.27
Cumulative batch release closing out an issue-triage cycle. The prior bumps (.28→.32) shipped their fix-sets to npm immediately but had no GitHub Release writeup; this is the consolidated changelog.
Memory layer (8 fixes)
| Issue | Fix |
|---|---|
| #1947 | vector_indexes schema dim 768→384 (default model Xenova/all-MiniLM-L6-v2 is 384-dim — schema mismatch silently made every memory_search return 0). |
| #1942 | Bridge search index 768 vs imported 384-dim — same root cause as #1947, observed via the Bridge import path. |
| #1952 | Windows: memory store ok, search returns 0 — same root cause as #1947, observed on a Windows install. |
| #1945 | CLI memory store reported success but didn't persist on non-default memory paths — memory-bridge.ts::getDbPath() hard-coded <cwd>/.swarm/memory.db and ignored CLAUDE_FLOW_MEMORY_PATH / claude-flow.config.json#memory.persistPath. |
| #1946 | ruflo doctor reported DB "Not initialized" on a valid DB at data/memory/memory.db — same hard-coded-path family as #1945. |
| #1941 | memory_search returned 0 for non-default namespaces — every store path now INSERT OR IGNOREs a per-namespace vector_indexes row before the entry insert. |
| #1940 | memory_bridge_status reported totalEntries: 0 on DBs with hundreds of rows — used listEntries({}).entries.length (page-size capped at 20) instead of .total. |
| #1939 | Win32 memory_import_claude({allProjects:false}) returned 0 — slug logic only replaced forward slashes, never drive-colon / backslash / whitespace. |
| #1947 RC #2 | embeddings index -a build required -c (the HNSW index is global; the flag was always informational). Now optional. |
Hooks layer (2 fixes)
| Issue | Fix |
|---|---|
| #1944 | pre-bash printed TypeError: (hookInput.command || prompt).toLowerCase is not a function on every Bash tool call — handler fell back to the toolInput object instead of toolInput.command. |
| #1943 | Every Bash / Edit / Session hook fired MODULE_NOT_FOUND on a global-install layout — paths were anchored at ${CLAUDE_PROJECT_DIR} only. Now probes project-local first, falls back to $HOME. |
UI / statusline (2 fixes)
| Issue | Fix |
|---|---|
| #1953 | hooks_pretrain reported patternsExtracted: 0 on Markdown-heavy repos — used a separate codeFilesScanned budget, sorts readdir code-likely dirs first, widened scan window 30→80 lines, added .tsx/.jsx/.mjs/.cjs. |
| #1951 | Statusline showed hard-coded RuFlo V3.5 regardless of installed version — now probes ~/.claude/plugins/marketplaces/ruflo/package.json first. |
Verification (1 unblock)
| Issue | Fix |
|---|---|
| #1949 | Federation plugin install 403 on [email protected] (the latest published version, but blocked by registry security policy). Added scripts/verify-federation-plugin.sh that pins [email protected] at the verification harness root — both Check 2 (exports) and Check 3 (breaker wire-up) pass. Workaround until upstream pipenet → koa → cookies ships a non-blocked release. |
CI regression guards baked in
scripts/audit-vector-dim.mjs— fails the build if anyvector_indexesrow's dim ≠ 384 (#1947 guard).scripts/audit-hook-handler-prompt.mjs— fails the build if any handler / template falls back to a baretoolInput(object) instead oftoolInput.command(string) (#1944 guard).
Both wired into the existing witness-verify and hook-command-audit jobs in .github/workflows/v3-ci.yml.
Install
npx @claude-flow/cli@latest --version # 3.7.0-alpha.33
npx ruflo@latest --version # 3.7.0-alpha.33
npx claude-flow@latest --version # 3.7.0-alpha.33
All three packages on alpha, latest, and v3alpha tags (where applicable).
Still open (not in this release)
- #1948 — Win32 random temp files in repo root (
0),toastr.error(...). Vague repro; needs reporter to narrow which tool path creates them. - #1937 — Feature request: per-file exclusion for
memory_import_claude. Design work, not a bug.
PRs in this release: #1956 · #1957 · #1959 · #1960 · #1961 · #1962 · #1963 · #1964 · #1965
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Related tools
Beta — feedback welcome: [email protected]