Integrate xinference embeddings for semantic search and fix critical bugs#1
Merged
Integrate xinference embeddings for semantic search and fix critical bugs#1
Conversation
- ruvector-mcp.cjs v2.3.0: calls xinference /v1/embeddings (bge-small-en-v1.5, 384-dim) for real semantic search via HNSW instead of the PG stub (generate_text_embedding returns zeros — model not compiled in) - memSearch: generates query vector via xinference, uses <=> cosine distance against existing 2M+ embeddings in ruvector-postgres HNSW index - memStore: generates embedding via xinference on insert - ILIKE fallback: prominent WARN log + degraded flag in response so callers know semantic search is disabled - Entrypoint: passes XINFERENCE_ENDPOINT and EMBEDDING_MODEL via .mcp.json env - flake.nix: adds XINFERENCE_ENDPOINT and EMBEDDING_MODEL to compose env - New test: tests/integration/test-mcp-infra.sh validates full stack (containers, PG, xinference, pg module, .mcp.json, end-to-end MCP) Co-Authored-By: claude-flow <ruv@ruv.net>
Co-Authored-By: claude-flow <ruv@ruv.net>
…igration Two CRITICAL bugs fixed in scripts/sovereign-bootstrap.py: C2 (lines 81-130): BIP-340 x-only npub - BEFORE: bech32-encoded the 64-byte uncompressed SEC1 pubkey as `npub`. NIP-19 npub MUST encode the 32-byte BIP-340 x-only form (per BIP-340 §3 and NIP-19 spec). Standards-compliant decoders reject the 64-byte form. - AFTER: new _x_only_pubkey_with_even_y helper applies BIP-340 lift_x parity (force even-y by negating private key when public.y is odd). npub bech32-encodes the 32-byte x-only buffer; nsec encodes the 32-byte scalar. - IN-PLACE MIGRATION block: existing /var/lib/agentbox/identities/<id>.json files are detected (presence of 64-byte legacy npub); private_key_hex preserved; npub re-derived with corrected algorithm; pod filesystem symlink updated to point at the new pods/<correct_npub>/ path. C3c (line 208): verificationMethod.type - BEFORE: "SchnorrSecp256k1VerificationKey2022" (a non-existent W3C suite) - AFTER: "SchnorrSecp256k1VerificationKey2019" (the registered cryptosuite) - publicKeyHex source switched from x_only_pubkey_hex (correct) — already correct in the file; no functional change beyond the type string. Cross-references: ADR-074 D1+D2 (canonical hex), ADR-074 D9 (kind-30033 service-list), Q1 §F3.1+F3.2+F3.3, Q3 §I12 federation key cardinality. Co-Authored-By: claude-flow <ruv@ruv.net>
… suite)
management-api/middleware/linked-data/surfaces/s04-did.js — DID Document
emitter for the agentbox JS-side linked-data S4 surface (per ADR-012).
BEFORE (line 71): emitted "SchnorrSecp256k1VerificationKey2025" as
verificationMethod.type. This was a fourth distinct identifier appearing
in the DreamLab ecosystem (alongside the three C3 sites: forum 2019,
solid-pod-rs-nostr 2024, agentbox-bootstrap 2022). 2025 is a non-existent
W3C cryptosuite; any standards-compliant verifier rejects it.
AFTER: SchnorrSecp256k1VerificationKey2019 + SECP_CONTEXT
("https://w3id.org/security/suites/secp256k1-2019/v1") added to @context.
This unifies agentbox internally (Python sovereign-bootstrap and JS S4
surface now emit byte-equal DID Documents for the same agent) and aligns
with the ecosystem-wide canonical identifier per ADR-074 D2.
Cross-references: ADR-074 D2 canonical DID Document shape, Q1 §F3.8 (the
fourth-site discovery), qe-fleet/Q3 §E4 "fourth-type-string drift".
Co-Authored-By: claude-flow <ruv@ruv.net>
scripts/sync-fixtures.sh pulls master fixtures from VisionClaw monorepo's docs/specs/fixtures/ + verifies SHA-256 checksums for ADR-082 D4a hard gate enforcement. Idempotent. --verify mode for CI gate. Falls back to VISIONCLAW_FIXTURES_PATH env override for offline / dev environments. Co-Authored-By: claude-flow <ruv@ruv.net>
Add Ecosystem section to README with Mermaid diagram and 5-substrate table. Create docs/developer/ecosystem.md with federation sequence diagram. Index ADR-014 and ADR-015 in docs hub. Fix 5 stale doc paths in CLAUDE.md. Co-Authored-By: claude-flow <ruv@ruv.net>
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.
No description provided.