• v3.0.1 4c208ef78d

    dpsifr released this 2025-09-15 20:11:52 +02:00 | 959 commits to main since this release

    Downloads
  • v2.15.0 a00d24e146

    v2.15.0 Stable

    dpsifr released this 2025-09-03 01:38:12 +02:00 | 973 commits to main since this release

    Downloads
  • v2.14.3 455689f8fd

    dpsifr released this 2025-09-03 00:18:44 +02:00 | 975 commits to main since this release

    Critical Bug Fix

    This release fixes the verb retrieval bug that was causing brain.getVerbs() to return empty arrays even after successfully adding verbs.

    The Problem

    Verbs are stored as two separate pieces:

    1. HNSWVerb (id, vector, connections) in /verbs/ directory
    2. Metadata (source, target, type, etc.) in /verb-metadata/ directory

    The getVerbsWithPagination() method wasn't properly reconstructing the complete GraphVerb object from these two pieces.

    The Fix

    • Now properly includes the vector field from HNSWVerb
    • Correctly merges HNSWVerb data with metadata
    • Skips verbs without metadata instead of returning incomplete objects
    • Properly maps sourceId/targetId and source/target fields
    • Handles connections Map deserialization correctly
    • Fixed filter logic to check correct fields

    Impact

    This fixes the issue reported by brain-cloud Explorer where relationships couldn't be retrieved after import, requiring workarounds to maintain local copies of edges.

    Technical Details

    The storage architecture splits verbs for performance:

    • Lightweight HNSW data for vector operations
    • Rich metadata for graph operations

    The retrieval must properly reconstruct both parts, which this fix now does correctly.

    For brain-cloud Explorer

    After updating to v2.14.3, the Explorer project can remove its workaround (lines 2215-2230 in server.ts) and directly use brain.getVerbs() to retrieve relationships.

    Downloads
  • v2.14.2 37026b1e4e

    dpsifr released this 2025-09-03 00:02:56 +02:00 | 977 commits to main since this release

    Safety Fix

    Removed

    • Removed dangerous countNouns() and countVerbs() methods from interface
    • These methods would be unsafe with millions of entries

    Architecture Clarification

    Brainy already has a scalable incremental statistics system:

    • Counts are maintained via incrementStatistic() when items are added
    • Counts are decremented via decrementStatistic() when items are deleted
    • Statistics are cached in memory and batched to storage
    • Access counts via getStatistics() - no iteration needed
    • Safe for millions of entries

    Why This Matters

    • The removed count methods would iterate through ALL items
    • With millions of entries, this causes memory/performance issues
    • The existing statistics system tracks counts incrementally
    • Much more scalable approach that's already built-in

    This is a safety improvement that prevents dangerous implementations while the proper scalable counting system is already in place.

    Downloads
  • v2.14.1 7c46879334

    dpsifr released this 2025-09-02 23:56:16 +02:00 | 979 commits to main since this release

    Bug Fix

    Fixed

    • Implemented missing getVerbsWithPagination() method in FileSystemStorage adapter
    • Verbs can now be correctly retrieved after being added when using FileSystemStorage
    • Added safety warnings for large datasets (>100k entries)
    • Enhanced interface documentation with performance considerations

    Technical Details

    • The FileSystemStorage adapter was missing the pagination method required by BaseStorage
    • Added proper filtering support for sourceId, targetId, verbType, and service
    • Includes metadata retrieval for each verb
    • Implements cursor-based pagination for efficient data retrieval

    Safety Improvements

    • Added warnings when detecting large datasets (>100,000 verbs)
    • Documented performance considerations for count methods
    • Note: For millions of entries, consider using S3 or database storage adapters

    This patch fixes the issue reported where brain.getVerbs() would return an empty array even after successfully adding verbs with the FileSystemStorage adapter.

    Downloads
  • v2.14.0 62c6491872

    dpsifr released this 2025-09-02 19:01:48 +02:00 | 981 commits to main since this release

    Downloads
  • v2.12.0 3227ad907c

    v2.12.0 Stable

    dpsifr released this 2025-09-02 00:38:15 +02:00 | 983 commits to main since this release

    Downloads
  • v2.11.0 6c62bc4e9d

    v2.11.0 Stable

    dpsifr released this 2025-09-01 18:37:36 +02:00 | 985 commits to main since this release

    Downloads
  • v2.10.1 65cc7cd58b

    v2.10.1 Stable

    dpsifr released this 2025-08-30 00:41:20 +02:00 | 987 commits to main since this release

    Downloads
  • v2.10.0 5f862bad98

    v2.10.0 Stable

    dpsifr released this 2025-08-30 00:39:07 +02:00 | 989 commits to main since this release

    Downloads