Commit graph

2409 commits

Author SHA1 Message Date
github-actions[bot]
0e15b03f3c chore: Update RVF NAPI-RS binaries for all platforms
Built from commit 423908655c

Platforms: linux-x64-gnu, linux-arm64-gnu, darwin-x64, darwin-arm64, win32-x64-msvc

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-06 14:07:54 +00:00
rUv
3d7f31ce7e chore: bump @ruvector/ruvllm to 2.5.2 (stats crash fix)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-06 14:05:54 +00:00
rUv
423908655c Merge pull request #239 from ruvnet/fix/p0-critical-issues
fix: resolve 5 P0 critical issues + pre-existing compile errors
2026-03-06 09:04:27 -05:00
rUv
1b6e725b49 fix: resolve 5 P0 critical issues + 2 pre-existing compile errors
- ONNX embeddings: dynamic dimension detection + conditional token_type_ids (#237)
- rvf-node: add compression field pass-through to Rust N-API struct (#225)
- Cargo workspace: add glob excludes for nested rvf sub-packages (#214)
- ruvllm: fix stats crash (null guard + try/catch) + generate warning (#103)
- ruvllm-wasm: deprecated placeholder on npm (#238)
- Pre-existing: fix ruvector-sparse-inference-wasm API mismatch, exclude from workspace
- Pre-existing: fix ruvector-cloudrun-gpu RuvectorLayer::new() Result handling

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-06 14:03:42 +00:00
github-actions[bot]
01462a7960 chore: Update NAPI-RS binaries for all platforms
Built from commit ff8dd2d506

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-06 13:42:28 +00:00
rUv
ff8dd2d506 feat: brain training loops — background SONA + Pareto, POST /v1/train, CLI + MCP (#236)
Bridge the gap between "stores knowledge" and "learns from knowledge":

- Background training loop (tokio::spawn, 5 min interval) runs SONA
  force_learn + domain evolve_population when new data arrives
- POST /v1/train endpoint for on-demand training cycles
- `ruvector brain train` CLI command with --json support
- `brain_train` MCP tool for agent-triggered training
- Vote dedup: 24h TTL on ip_votes entries, author exemption from IP check
- ADR-082 updated, ADR-083 created

Results: Pareto frontier grew 0→24 after 3 cycles. SONA activates
after 100+ trajectory threshold (natural search/share usage).

Publish ruvector@0.2.11.
2026-03-06 08:35:50 -05:00
github-actions[bot]
67b9e8f699 chore: Update NAPI-RS binaries for all platforms
Built from commit f0df76da7f

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 22:57:05 +00:00
rUv
f0df76da7f fix: brain security hardening — PII phone/SSN/CC, IP rate limit, anti-Sybil votes (#235)
Expand PiiStripper from 12 to 15 regex rules: add phone number,
SSN, and credit card detection/redaction. Add IP-based rate limiting
(1500 writes/hr per IP) to prevent Sybil key rotation bypass. Add
per-IP vote deduplication (one vote per IP per memory) to prevent
quality score manipulation.

63 server tests + 16 PII tests pass. Deployed to Cloud Run.
2026-03-03 17:52:30 -05:00
github-actions[bot]
7c09d8b5ef chore: Update NAPI-RS binaries for all platforms
Built from commit 0c0ef48ed5

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 22:10:58 +00:00
rUv
0c0ef48ed5 feat: brain server v0.2.10 — bug fixes, GET /v1/pages, 9 MCP tools (#234)
* feat: proxy-aware fetch + brain API improvements — publish v0.2.7

Add proxyFetch() wrapper to cli.js and mcp-server.js that detects
HTTPS_PROXY/HTTP_PROXY/ALL_PROXY env vars, uses undici ProxyAgent
(Node 18+) or falls back to curl. Handles NO_PROXY patterns.
Replaced all 17 fetch() call sites with timeouts (15-30s).

Brain server API:
- Search returns similarity scores via ScoredBrainMemory
- List supports pagination (offset/limit), sorting (updated_at/quality/votes), tag filtering
- Transfer response includes warnings, source/target memory counts
- New POST /v1/verify endpoint with 4 verification methods

Co-Authored-By: claude-flow <ruv@ruv.net>

* feat: brain server bug fixes, GET /v1/pages, 9 MCP page/node tools — v0.2.10

Fix proxyFetch curl fallback to capture real HTTP status instead of
hardcoding 200, add 204 guards to brainFetch/fetchBrainEndpoint/MCP
handler, fix brain_list schema (missing offset/sort/tags), fix
brain_sync direction passthrough, add --json to share/vote/delete/sync.

Add GET /v1/pages route with pagination, status filter, sort.
Add 9 MCP tools: brain_page_list/get/create/update/delete,
brain_node_list/get/publish/revoke (previously SSE-only).

Polish: delete --json returns {deleted:true,id} not {}, page get
unwraps .memory wrapper for formatted display.

112 MCP tools, 69/69 tests pass. Published v0.2.10 to npm.

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 17:06:23 -05:00
github-actions[bot]
1878ec62e2 chore: Update NAPI-RS binaries for all platforms
Built from commit 5c511c4e88

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 19:12:42 +00:00
rUv
5c511c4e88 chore: publish ruvector v0.2.6 — remove @ruvector/pi-brain peer dep
Brain commands now use direct pi.ruv.io fetch (PR #233), so
@ruvector/pi-brain is no longer needed as a peer dependency.

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 19:08:10 +00:00
rUv
24e5babc76 feat: brain commands use direct pi.ruv.io REST API — no @ruvector/pi-brain dependency (#233)
Replace requirePiBrain() + PiBrainClient with direct fetch() calls to pi.ruv.io.
All 13 brain CLI commands and 11 brain MCP tools now work out of the box with
zero extra dependencies. Includes 30s timeout on all brain API calls.
2026-03-03 19:03:08 +00:00
rUv
e59fe52e07 fix: ADR structural cleanup — resolve duplicates, fix filenames, enable Firestore persistence (#232)
ADR file renames:
- ADR-0027 → ADR-027 (fix 4-digit numbering to standard 3-digit)
- ADR-040 filename sanitized (removed spaces, em dash, ampersand)
- ADR-017 duplicate (craftsman) → ADR-024 (temporal-tensor keeps 017)
- ADR-029 duplicate (exo-ai) → ADR-025 (rvf-canonical keeps 029)
- ADR-031 duplicate (rvcow) → ADR-026 (rvf-example keeps 031)

Cloud Run fix (pi.ruv.io):
- Added FIRESTORE_URL env var — enables persistent storage
- Fixed env var packing bug (all flags were in BRAIN_SYSTEM_KEY)
- Dashboard now shows actual data: 240 memories, 30 contributors, 1096 edges
2026-03-03 18:54:24 +00:00
github-actions[bot]
d903e803c1 chore: Update NAPI-RS binaries for all platforms
Built from commit d9ffdcd158

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 18:33:29 +00:00
rUv
d9ffdcd158 fix: correct ADR-080 audit discrepancies verified against source (#231)
- MCP entry line count: ~3,816 → 3,815 (verified with wc -l)
- Command groups: 14 → 15 (midstream group was missed)
- CLI test count: 63 → 64 active tests (verified grep -c)
- Dead code → conditionally unreachable (line 1807 runs when @ruvector/router installed)
2026-03-03 13:28:27 -05:00
github-actions[bot]
3634db6d23 chore: Update NAPI-RS binaries for all platforms
Built from commit d197223221

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 18:27:01 +00:00
rUv
d197223221 fix: ruvector-postgres v0.3.2 — 100% audit pass (HNSW + hybrid fixes) (#230)
HNSW k-NN fix:
- Search beam width (k) increased from 10 to 100 — previous value
  starved the beam search, causing 0 rows on index scan
- Added ruvector_hnsw_debug() diagnostic function for troubleshooting
- Added warning log when entry_point is InvalidBlockNumber

Hybrid search fix:
- ruvector_hybrid_search() now returns success=true with empty results
  and helpful message on unregistered collections (was success=false)

Audit script fix:
- Corrected hybrid_search argument order in sql-audit-v3.sql Section 9b
- Added HNSW debug diagnostics on 0-row failure

Results: 17 PASS / 0 PARTIAL / 0 FAIL → 100% (up from 88%)
Published: docker.io/ruvnet/ruvector-postgres:0.3.2
2026-03-03 13:21:48 -05:00
github-actions[bot]
6d35943c0e chore: Update NAPI-RS binaries for all platforms
Built from commit 946f59fab2

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 18:14:51 +00:00
github-actions[bot]
af7e7153cc chore: Update NAPI-RS binaries for all platforms
Built from commit 2e31a08a06

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 18:13:34 +00:00
rUv
946f59fab2 docs: update ADR-079 with v0.3.1 audit scorecard (88% pass rate) (#229)
Add full v0.3.1 audit scorecard showing 15 PASS / 1 PARTIAL / 1 FAIL
(up from 47% in v0.3.0). Document function count discrepancies between
audit script pg_proc detection and SQL schema registrations. Add issue
#6 for hybrid search collection setup requirement.
2026-03-03 13:07:43 -05:00
rUv
2e31a08a06 docs: add ADR-080 npx ruvector deep capability audit (#228)
Comprehensive audit of the ruvector npm package (v0.2.5):
- CLI: 179 commands across 14 groups, 4 stubs, lazy loading
- MCP server: 91+12=103 tools, stdio+SSE transports
- Security: 10 findings (Pi key logging, no fetch timeouts, 51% tools lack validation)
- Tests: core database ops (create/insert/search/stats) have zero coverage
- Prioritized fix plan: P0 security, P1 tests, P2 code quality, P3 docs
2026-03-03 13:06:05 -05:00
github-actions[bot]
54b7405f58 chore: Update NAPI-RS binaries for all platforms
Built from commit 229877fe9a

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-03-03 18:03:48 +00:00
rUv
229877fe9a fix: ruvector-postgres v0.3.1 — audit bug fixes, 46 SQL functions, Docker publish (#227)
Fixes #226
2026-03-03 12:53:10 -05:00
github-actions[bot]
150f7cd2d7 chore: Update NAPI-RS binaries for all platforms
Built from commit db67c482e3

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-02-27 16:38:40 +00:00
github-actions[bot]
13981aa111 chore: Update graph transformer NAPI-RS binaries for all platforms
Built from commit db67c482e3

Platforms updated:
- linux-x64-gnu
- linux-x64-musl
- linux-arm64-gnu
- linux-arm64-musl
- darwin-x64
- darwin-arm64
- win32-x64-msvc
- wasm

Generated by GitHub Actions
2026-02-27 16:36:04 +00:00
rUv
db67c482e3 ADR-029: Multi-paradigm integration architecture for EXO-AI
ADR-029: Multi-paradigm integration architecture for EXO-AI
2026-02-27 11:31:58 -05:00
rUv
ac52d50a77 Merge remote-tracking branch 'origin/main' into claude/exo-ai-capability-review-LjcVx
# Conflicts:
#	Cargo.toml
2026-02-27 16:27:34 +00:00
rUv
c2e021e8f1 chore: publish EXO-AI crates v0.1.1 with bug fixes and READMEs
Published to crates.io:
- exo-core v0.1.1
- exo-temporal v0.1.1
- exo-hypergraph v0.1.1
- exo-manifold v0.1.1
- exo-federation v0.1.1
- exo-exotic v0.1.1
- exo-backend-classical v0.1.1

Changes from v0.1.0:
- Fix NaN panics in all partial_cmp().unwrap() calls
- Fix domain ID mismatch (underscores → hyphens)
- Fix SystemTime unwrap → unwrap_or_default
- Add README.md for all crates
- Gate rvf feature behind feature flag in exo-backend-classical
- Convert path dependencies to crates.io version dependencies

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 16:26:40 +00:00
rUv
e7a5096205 fix: format all files, add EXO crate READMEs, convert path deps to version deps
- Run cargo fmt across entire workspace
- Create README.md files for all 9 EXO-AI crates
- Convert path dependencies to crates.io version dependencies for publishing
- Add [patch.crates-io] to exo workspace for local development

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 16:21:14 +00:00
rUv
3109710c61 docs: add ruvector-dither, thermorust, and ruvector-robotics to root README
- Add ruvector-dither to Advanced Math & Inference section
- Add thermorust to Neuromorphic & Bio-Inspired Learning section
- Add collapsed Cognitive Robotics section for ruvector-robotics

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 16:15:02 +00:00
rUv
caae1dad15 docs: add README files for ruvector-dither and thermorust crates
Required for crates.io publishing.

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 16:14:34 +00:00
rUv
b4d2b7343f fix: resolve P0 safety issues in ruvector-dither, thermorust, and exo-ai
- Replace debug_assert with assert for bits bounds in quantize functions
- Guard ChannelDither against 0 channels and invalid bits
- Handle non-finite beta/rate in Langevin/Poisson noise (return 0)
- Remove unused itertools dependency from thermorust
- Fix partial_cmp().unwrap() NaN panics across 7 exo-ai files
- Fix SystemTime unwrap() in transfer_crdt (use unwrap_or_default)
- Fix domain ID mismatch (exo_retrieval → exo-retrieval) in orchestrator
- Update tests to match corrected domain IDs

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 16:12:45 +00:00
github-actions[bot]
108c799c2c chore: Update NAPI-RS binaries for all platforms
Built from commit 418f82c42a

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-02-27 15:52:13 +00:00
rUv
418f82c42a Merge pull request #220 from ruvnet/claude/agentic-robotics-integration-VOZu2
Add ruvector-robotics: unified cognitive robotics platform
2026-02-27 10:47:09 -05:00
rUv
b5032f3eb9 chore: add crates.io metadata and version pins to ruvector-robotics
Add repository, homepage, keywords, categories for crates.io listing.
Pin optional dependency versions (ruvector-domain-expansion 2.0.4,
rvf-runtime 0.2, rvf-types 0.2) required for cargo publish.

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 15:46:40 +00:00
rUv
7b62ca90ef fix: resolve clippy warnings and P0 issues in ruvector-robotics
Clippy fixes (8 warnings → 0):
- Replace 5 manual Default impls with #[derive(Default)]
- Use .clamp() instead of .min().max() chain
- Use .is_some_and() instead of .map_or(false, ...)
- Add type alias for complex return type in scene_graph_to_adjacency

P0 correctness fixes from code review:
- Fix NaN panic: use unwrap_or(Ordering::Equal) in cognitive_core think()
- Fix integer overflow: use checked_mul in OccupancyGrid::new
- Fix potential unwrap: use map_or in domain_expansion score_avoidance

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 15:41:13 +00:00
github-actions[bot]
6e82677768 chore: Update NAPI-RS binaries for all platforms
Built from commit 522108ac5f

  Platforms updated:
  - linux-x64-gnu
  - linux-arm64-gnu
  - darwin-x64
  - darwin-arm64
  - win32-x64-msvc

  🤖 Generated by GitHub Actions
2026-02-27 15:39:28 +00:00
rUv
522108ac5f Merge pull request #219 from ruvnet/feat/rvf-federation
feat: rvf-federation crate for federated transfer learning
2026-02-27 10:33:49 -05:00
rUv
6990be7631 feat: implement rvf-federation crate for federated transfer learning
Implements ADR-057 with 7 modules (2,940 lines, 54 tests):
- types: 4 new segment types (FederatedManifest 0x33, DiffPrivacyProof 0x34,
  RedactionLog 0x35, AggregateWeights 0x36)
- pii_strip: 3-stage pipeline (detect, redact, attest) with 12 regex rules
- diff_privacy: Gaussian/Laplace noise, RDP accountant, gradient clipping
- federation: ExportBuilder + ImportMerger with version-aware conflict resolution
- aggregate: FedAvg, FedProx, Byzantine-tolerant weighted averaging
- policy: FederationPolicy for selective sharing with allow/deny lists
- error: 15 typed error variants

Also updates rvf-types with 4 new segment discriminants (0x33-0x36),
workspace Cargo.toml, and root README (crate count, segment count,
federated learning code example).

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-02-27 15:07:31 +00:00
Claude
0f45b563d0 perf: optimize hot paths across indexing, clustering, planning, and perception
SpatialIndex: replace Vec<Vec<f32>> with flat Vec<f32> buffer for cache
locality and zero per-point heap allocation; use squared Euclidean
distance in kNN/radius search (defer sqrt to final k results); fuse
cosine distance into single loop.

Clustering: add union-by-rank to union-find preventing tree
degeneration (O(α(n)) amortized); add #[inline] on hot helpers.

A* planning: add closed set (HashSet) to avoid re-expanding nodes;
reuse neighbor buffer to eliminate per-expansion Vec allocation;
pre-allocate HashMap capacity; add #[inline] on helpers.

Perception: defer sqrt in bounding_sphere (compare squared distances,
one sqrt at end); defer sqrt in scene graph edge construction (filter
on squared threshold); add #[inline] on dist_3d.

Sensor fusion: pre-allocate merged vectors from total eligible cloud
size. Anomaly detection: fuse distance + statistics into single pass
using Welford's online algorithm (eliminates one full data pass).

All 281 tests pass.

https://claude.ai/code/session_01H1GkTK5z9ppVVQDQukjBsY
2026-02-27 14:38:27 +00:00
Claude
658c762994 feat: add ruvector-dither crate and integrate thermorust+dither into exo
ruvector-dither (new crate):
- GoldenRatioDither: additive φ-sequence with best 1-D equidistribution
- PiDither: cyclic 256-entry π-byte table for deterministic weight dithering
- quantize_dithered / quantize_slice_dithered: drop-in pre-quantization offset
- quantize_to_code: integer-code variant for packed-weight use
- ChannelDither: per-channel pool seeded by (layer_id, channel_id) pairs
- DitherSource trait for generic dither composition
- 15 unit tests + 3 doctests; 4 Criterion benchmark groups

exo-backend-classical integration:
- ThermoLayer (thermo_layer.rs): Ising motif coherence gate using thermorust
  - Runs Metropolis steps on clamped activations
  - Returns ThermoSignal { lambda, magnetisation, dissipation_j, energy_after }
  - λ-signal = −ΔE/|E₀|: positive means pattern is settling toward coherence
- DitheredQuantizer (dither_quantizer.rs): wraps ruvector-dither for exo tensors
  - GoldenRatio or Pi kind, per-layer seeding, reset support
  - Supports 3/5/7/8-bit quantization with ε-LSB dither amplitude
- 8 new unit tests across both modules; all 74 existing tests still pass

https://claude.ai/code/session_019Lt11HYsW1265X7jB7haoC
2026-02-27 14:30:26 +00:00
Claude
f48e0d0165 feat(thermorust): add thermodynamic neural-motif crate
Implements energy-driven computation with Landauer dissipation and
Langevin/Metropolis noise.  Key components:

- State: activation vector + cumulative dissipated-joules counter
- EnergyModel trait + Ising (Hopfield) + SoftSpin (double-well) Hamiltonians
- Couplings: zeros, ferromagnetic ring, Hopfield memory factories
- Params: inverse temperature β, Langevin step η, Landauer cost per irreversible flip
- step_discrete: Metropolis-Hastings spin-flip with Boltzmann acceptance
- step_continuous: overdamped Langevin (central-difference gradient + FDT noise)
- anneal_discrete / anneal_continuous: traced annealing helpers
- inject_spikes: Poisson kick noise, clamp-aware
- Metrics: magnetisation, Hopfield overlap, binary entropy, free energy, Trace
- Motifs: IsingMotif (ring, fully-connected, Hopfield), SoftSpinMotif (random)
- 19 correctness tests: energy invariants, Metropolis, Langevin, Hopfield retrieval
- 4 Criterion benchmark groups: step, 10k-anneal, Langevin, energy eval
- GitHub Actions CI: fmt + clippy + test (ubuntu/macos/windows) + bench compile

https://claude.ai/code/session_019Lt11HYsW1265X7jB7haoC
2026-02-27 14:22:44 +00:00
Claude
5051499619 feat: add RVF packaging module for robotics data
New `rvf` feature flag enables the `ruvf::RoboticsRvf` wrapper that
bridges point clouds, scene graphs, trajectories, Gaussian splats, and
obstacles into the RuVector Format (.rvf) for persistence and similarity
search.

RoboticsRvf supports:
- pack_point_cloud (dim 3)
- pack_scene_objects / pack_scene_graph (dim 9)
- pack_trajectory (dim 3)
- pack_gaussians (dim 7) — converts PointCloud→GaussianSplatCloud→RVF
- pack_obstacles (dim 6)
- query_nearest (kNN via HNSW index)
- open/open_readonly/close lifecycle

9 unit tests covering create, ingest, query, reopen, dimension mismatch,
and empty data rejection. Also fixes unused import warnings in integration
tests. All 290 tests pass across default, domain-expansion, and rvf features.

https://claude.ai/code/session_01H1GkTK5z9ppVVQDQukjBsY
2026-02-27 14:08:30 +00:00
Claude
7b055d875f feat(exo): add RVF packaging, fix pattern retrieval, update README
- ExoTransferOrchestrator.package_as_rvf(): serializes all TransferPriors,
  PolicyKernels, and CostCurves into a 64-byte-aligned RVF byte stream
- ExoTransferOrchestrator.save_rvf(path): convenience write-to-file method
- Enable ruvector-domain-expansion rvf feature in exo-backend-classical
- 3 new RVF tests: empty packager, post-cycle magic verification, save-to-file
- substrate.rs: fill pattern field from returned search vector (r.vector.map(Pattern::new))
- README: document 5-phase transfer pipeline, RVF packaging, updated
  architecture diagram, 4 new Key Discoveries, 3 new Practical Applications

All 0 failures across full workspace test suite.

https://claude.ai/code/session_019Lt11HYsW1265X7jB7haoC
2026-02-27 14:05:50 +00:00
Claude
d99ff3efd4 feat(exo): resolve 5 TODOs, add cross-phase orchestrator and e2e tests
- vector.rs: convert exo_core::Filter Equal conditions to ruvector HashMap
  filter; store and round-trip _pattern_id in metadata
- substrate.rs: implement BettiNumbers, PersistentHomology, SheafConsistency
  for hypergraph_query using VectorDB stats
- anticipation.rs: implement TemporalCycle pre-fetching via sinusoidal
  phase encoding
- crdt.rs: add T: Display bound to reconcile_crdt; look up score from
  ranking_map by format!("{}", result)
- thermodynamics.rs: rust,ignore → rust,no_run
- ExoTransferOrchestrator: new cross-phase wiring module in
  exo-backend-classical that runs all 5 integration phases in a single
  run_cycle() call (bridge → manifold → timeline → CRDT → emergence)
- transfer_pipeline_test.rs: 5 end-to-end integration tests covering the
  full pipeline (single cycle, multi-cycle, emergence, manifold, CRDT)

All 0 failures across full workspace test suite.

https://claude.ai/code/session_019Lt11HYsW1265X7jB7haoC
2026-02-27 13:29:18 +00:00
Claude
6916ed2c88 feat: add Gaussian splatting, motion planning, MCP executor, sensor fusion, and benchmarks
New modules for ruvector-robotics:
- bridge/gaussian: GaussianSplat types, PointCloud→Gaussian conversion, vwm-viewer JSON export
- planning: A* pathfinding on OccupancyGrid with octile heuristic, potential field velocity commands
- mcp/executor: ToolExecutor dispatching ToolRequests to perception pipeline and spatial index
- perception/sensor_fusion: multi-sensor cloud fusion with timestamp alignment and voxel downsampling

Rewrites integration tests to use actual crate APIs instead of local reimplementations,
eliminating ~280 lines of false-positive test code. Adds 15 benchmark groups covering
all new modules (Gaussian conversion, A* planning, potential fields, sensor fusion, MCP execution).

All 270+ tests pass including domain-expansion feature.

https://claude.ai/code/session_01H1GkTK5z9ppVVQDQukjBsY
2026-02-27 13:23:53 +00:00
Claude
1cb0e69dff feat(exo): implement Phases 2-5 of ruvector-domain-expansion integration
Phase 2 — exo-manifold/src/transfer_store.rs
  TransferManifold stores (src, dst) transfer priors as 64-dim deformable
  patterns via ManifoldEngine::deform. Sinusoidal domain-ID hashing gives
  meaningful cosine distances for retrieve_similar.

Phase 3 — exo-temporal/src/transfer_timeline.rs
  TransferTimeline records transfer events in the temporal causal graph.
  Each event is linked to its predecessor so the system can trace full
  transfer trajectories. anticipate_next() returns CausalChain +
  SequentialPattern hints.

Phase 4 — exo-federation/src/transfer_crdt.rs
  TransferCrdt propagates transfer priors across the federation using
  LWW-Map (cycle = timestamp) + G-Set for domain discovery. Merges are
  idempotent and commutative. promote_via_consensus runs PBFT Byzantine
  commit before accepting a prior.

Phase 5 — exo-exotic/src/domain_transfer.rs
  StrangeLoopDomain implements the Domain trait: self-referential tasks
  whose solutions are scored by meta-cognitive keyword density.
  CollectiveDomainTransfer couples CollectiveConsciousness with
  DomainExpansionEngine — arm rewards flow into the substrate and
  collective Φ serves as the cycle quality metric.
  EmergentTransferDetector wraps EmergenceDetector to surface non-linear
  capability gains from cross-domain transfer.

All 4 crates gain the ruvector-domain-expansion path dep. 36 new tests,
all green alongside the existing suite.

https://claude.ai/code/session_019Lt11HYsW1265X7jB7haoC
2026-02-27 05:54:50 +00:00
Claude
d806b90f7d fix: address critical and high-priority issues from deep code review
- Remove unsafe pointer aliasing in BehaviorTree::tick(), use safe
  disjoint field borrowing instead (P0)
- Fix usize underflow in score_scene_graph when expected_objects < 2 (P0)
- Fix cluster ID overflow in reference_solution for PointCloudClustering (P0)
- Fix NaN handling in MaxDistEntry::cmp — NaN treated as maximally
  distant so it gets evicted from kNN heap first (P1)
- Clamp cosine_distance output to prevent negative values from
  floating-point rounding (P1)
- Change search_radius to return Ok(Vec::new()) for empty index instead
  of Err(EmptyIndex) for correct semantics (P1)
- Add debug_assert guards for empty slices in bounding_sphere and
  cluster_to_object (P1)
- Remove dead PipelineConfig.spatial_search_k field (P2)
- Use serde_json::from_value instead of to_string+from_str roundtrip
  in domain_expansion for better performance (P2)

All 257 tests pass.

https://claude.ai/code/session_01H1GkTK5z9ppVVQDQukjBsY
2026-02-27 05:42:53 +00:00
Claude
11c81e1a76 chore(exo): update Cargo.lock for ruvector-domain-expansion dependency
https://claude.ai/code/session_019Lt11HYsW1265X7jB7haoC
2026-02-27 05:33:08 +00:00