Association-Native Memory Layer for RuVector (Calyx review + ADR-272 tracking)
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 4.5k
- Forks
- 603
- Avg merge
- 23h 32m
- Merged PRs (30d)
- 59
Description
Summary
Tracking issue for ADR-272: Association-Native Memory Layer (Calyx-inspired), plus a technical review of Chris Royse's Calyx white paper and reference engine and how it maps onto RuVector.
- White paper: Calyx: An Association-Native Database and Its Path to Planetary-Scale Grounded Intelligence (ResearchGate pub. 408248277).
- Reference engine: https://github.com/ChrisRoyse/Calyx (Rust, edition 2024, BSL-1.1, pre-1.0).
- Companion paper: The Calculus of Association (ResearchGate pub. 405933676) — frozen embedders as designable measurement instruments, derived-data abundance, teleological constellations.
A first, dependency-free Rust reference implementation (crates/ruvector-calyx) and ADR land in the PR linked below.
Review: what Calyx is, and why it matters to RuVector
Calyx's central claim: one input should not collapse into one flattened vector. It should become a constellation — the same object measured through many frozen lenses (semantic, lexical, code, structural/domain, temporal, sensor), each kept as a distinct typed slot, never flattened. Relationships are then derived between slots, grounded against real-world anchors, scored for signal contribution, and gated so the system fails closed instead of answering from "semantic fog".
It organizes this around four verbs — measure, count, differentiate, compose — and eleven subsystems: Aster (LSM storage), Forge (SIMD/CUDA math), Registry (content-addressed lenses), Sextant (fusion search + BM25), Loom (cross-lens associations), Assay (information bits per lens), Lodestar (grounding kernels), Ward (fail-closed guard), Ledger (hash-chained provenance), Anneal (reversible self-optimization), Oracle (grounded prediction). Three trust principles: grounding is mandatory, no flattening, fail closed.
Why it's relevant (not a competitor — a pattern to absorb)
- Validates "memory is the moat." The embedding model is replaceable; the measured association substrate + governance is the product. Same thesis as MetaHarness, pushed to the data layer.
- Composes with Darwin Mode (ADR-266/271). MetaHarness already evolves planners/routers/memory-policy. Calyx says it should also route lenses, not just models — "which lenses inspect this problem, which slots matter, which disagreements are informative, which grounding is required, which model is cheapest once the evidence set exists."
- Maps onto existing RuVector primitives. Per-lens rankings → HNSW/IVF; cross-lens graph →
ruvector-graph/ruvector-mincutassociation edges; grounding/provenance → governance story for Cognitum One. - Enterprise governance language. Grounded evidence path + model lineage + retrieval provenance + fail-closed behavior — directly applicable to manufacturing, telecom, elder-care, security, legal/finance, coding agents.
- Where we're ahead: Calyx is a pre-1.0 white-paper engine; RuVector already ships HNSW, min-cut, graph memory, Darwin, and edge/RF perception. Where it challenges us: RuVector should grow from a vector database into an association database (multi-slot records, lens manifests, cross-slot graph, anchors, signal density, guard profiles, provenance ledger, panel routing).
Concept → RuVector mapping (implemented in ruvector-calyx)
| Calyx | RuVector translation |
|---|---|
| Constellation | Constellation — one object, many typed slots, never flattened |
| Lens | LensManifest — content-addressed (name/version/kind/dims) |
Cross-term (Loom) |
loom::{min,mean}_agreement, top_dissenter (disagreement is signal) |
Signal (Assay) |
assay::signal_density — MI bits per µs of cost |
Fusion (Sextant) |
fusion::weighted_rrf — Reciprocal Rank Fusion |
Grounding (Lodestar) |
Anchor (accepted-answer/passed-test/sensor/citation/reward) |
Guard (Ward) |
ward::adjudicate → Answer/Refuse(reason) (fail closed) |
Provenance (Ledger) |
Ledger — hash-chained, replayable |
Self-opt (Anneal) |
anneal_weights — reversible SA over fusion weights (lens routing) |
Benchmark result (ADR-272 acceptance — all PASS)
Deterministic calyx-bench vs single-embedding RAG on an adversarial multi-lens corpus (semantic fog within topic; discriminating signal in minority lexical/structural lenses; unanswerable queries test abstention):
| Metric | Single-embedding | Calyx multi-lens | Target | Result |
|---|---|---|---|---|
| Grounded answer accuracy | 6.7% | 99.2% | ≥ +15 pp | +92.5 pp ✓ |
| Recall@10 (answerable) | 51.7% | 100.0% | ≥ +10 pp | +48.3 pp ✓ |
| Unsupported claims | 172 | 0 | ≥ −50% | −100% ✓ |
| Replayable provenance | n/a | 180/180 | 100% | ✓ |
| Anneal (reversible) | — | Δutility +46.2 | improves | ✓ |
Assay ranks the cheap lexical lens highest by signal density; Anneal reversibly converges weights onto it, raising accuracy to 100% while dropping the expensive semantic lens — the cost-shifting thesis in miniature.
Tracking checklist (ADR-272 follow-ups)
- ADR-272 written (
docs/adr/ADR-272-association-native-memory-layer.md) -
crates/ruvector-calyxreference implementation (dependency-free, MIT/Apache-2.0, clean-room) - Deterministic benchmark + acceptance test (
calyx-bench), 20 unit tests, clippy clean - Back
search_lenswithruvector-coreHNSW +ruvector-spannpartitions - Map the
Loomcross-lens graph ontoruvector-graph/ruvector-mincutassociation edges (agreement/disagreement searchable) - Swap FNV provenance hash for BLAKE3 + signed ledger checkpoints
- Wire lens routing into MetaHarness Darwin as an evolvable gene (ADR-266)
- Add a sensor/RF lens (RuView: Wi-Fi CSI, mmWave) for non-text constellations and cross-modal disagreement detection
- Re-validate against a real multi-lens corpus under the ADR-267 SOTA protocol
Note: Calyx's reference engine is BSL-1.1;
ruvector-calyxis an independent clean-room implementation of the published architecture pattern and does not copy Calyx source.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with docs/adr/ADR-272-association-native-memory-layer.md and the existing crates/ruvector-calyx implementation, then inspect the calyx-bench acceptance test and its 20 unit tests. This is a tracking issue with several unchecked, cross-cutting follow-ups, so confirm one specific scope with a maintainer before coding. Done means the selected checklist item is implemented and the relevant benchmark or tests remain passing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- ai, databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100