You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 5226436
Browse filesBrowse the repository at this point in the historyBrowse files
* fix(ruvector): MCP RCE/path-traversal/SSRF hardening and self-learning correctness (0.3.4)
Security (all reproduced end to end over MCP stdio, now regression-tested):
- Command injection via hooks_init.build_agents and hooks_diff_{analyze,classify}.commit:
shell-string execSync replaced with argv execFileSync; focus enum and git-ref validation.
Same fix for parallel-workers git blame/log, decompiler cargo fallback, git-churn,
edge dashboard opener, and runAgenticFlow (no shell on POSIX).
- validateRvfPath now confines to cwd (+ RUVECTOR_MCP_ROOTS) instead of a denylist that
allowed ~/.ssh, ~/.npmrc etc.
- Prototype pollution via "__proto__|x" pattern keys (repo-committed intelligence.json or
hooks_import) and hooks_coedit_record / hooks_error_record keys.
- decompile_url SSRF: private/link-local/loopback addresses refused, redirects re-checked,
size cap. decompile_search queries are literal (ReDoS).
- hooks_init and hooks_doctor --fix over MCP require RUVECTOR_MCP_ALLOW_INIT=1 since they
rewrite .claude/settings.json permissions.
- agentic-flow pinned to 3.0.0-alpha.2 instead of the floating @Alpha tag.
Self-learning:
- Cross-process lock on the intelligence store: concurrent hooks no longer lose updates
(20/20 kept, was 7-11/20).
- hooks learn and MCP trajectory/learn outcomes now reach hooks route; MCP learning state
is persisted (intel.data.learning); MCP quality 0 no longer becomes 0.8.
- Unseen agents use a neutral 0.5 prior so failing agents do not beat the default.
- Double-Q acts on Q1+Q2; decision-transformer no longer rewards failures; recommendations
are greedy; algorithm/rate config validated; non-finite rewards rejected.
- save() merges engine patterns instead of replacing them; all commands share one store path.
- pretrain writes routable, idempotent "state|agent" priors and no longer duplicates memories.
- MCP server reloads the store when CLI hooks change it on disk.
Packaging: build no longer copies stray .db/.rvf/.lock files into dist.
Co-Authored-By: claude-flow <ruv@ruv.net>
* perf(ruvector): no stray ruvector.db from hooks, fix MoE/EdgeFeatured wrappers, unref timer
- IntelligenceEngine only builds a native VectorDb when storagePath is configured;
otherwise recall uses in-memory cosine. The index was rebuilt every hook process
anyway and the native default dropped ./ruvector.db (3.6-17 MB) into user projects.
- MoEAttention / EdgeFeaturedAttention passed the wrong config shape to the native
module and threw on construction.
- TensorCompress auto-compress timer is unref'd so library users' processes exit.
- `ruvector info` printed "Core Version: [object Object]".
- verify-dist fails the publish if .db/.rvf/.lock files or .claude/ dirs would ship.
- package.json description/keywords no longer advertise features with no code in this
package (Graph RAG, hybrid search, ColBERT, TurboQuant, Mamba, "50+ attention").
Co-Authored-By: claude-flow <ruv@ruv.net>
0 commit comments