fix(agentdb): String ID mapping for RuVectorBackend — silent data loss#115
Open
fix(agentdb): String ID mapping for RuVectorBackend — silent data loss#115
Conversation
…ent data loss The @ruvector/core N-API layer converts IDs via Number(), causing non-numeric string IDs (UUIDs, hex hashes, prefixed IDs) to become NaN and be silently dropped. Added bidirectional idToLabel/labelToId mapping in the AgentDB layer as defense-in-depth alongside the upstream fix in @ruvector/rvf@0.2.0. - insert(): Maps string IDs to sequential numeric labels before N-API call - search(): Maps numeric labels back to original string IDs in results - remove(): Resolves string ID to numeric label before N-API call - save()/load(): Persists ID mappings in .meta.json sidecar (backward-compatible) - Updated ruvector dependency to ^0.1.99 - Bumped version to 2.0.0-alpha.2.12 Closes #114 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
8a9bb2e to
df558bf
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
chunk_0) withRuVectorBackendidToLabel/labelToIdmapping as defense-in-depth alongside the upstream fix in@ruvector/rvf@0.2.0ruvectordependency to^0.1.99, bumped agentdb to2.0.0-alpha.2.12What changed
insert()Number("uuid")→NaN→ silent dropsearch()remove()Number(id)→NaN→ silent no-opsave()/load().meta.json(backward-compatible)Test plan
.meta.jsonformat loads without errorCloses #114
🤖 Generated with Claude Code