@soulcraft/brainy 0.39.0 → 0.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/brainyData.d.ts +5 -0
- package/dist/coreTypes.d.ts +48 -0
- package/dist/hnsw/hnswIndex.d.ts +9 -0
- package/dist/hnsw/hnswIndex.d.ts.map +1 -1
- package/dist/hnsw/hnswIndexOptimized.d.ts.map +1 -1
- package/dist/storage/adapters/fileSystemStorage.d.ts.map +1 -1
- package/dist/storage/adapters/memoryStorage.d.ts.map +1 -1
- package/dist/storage/adapters/opfsStorage.d.ts.map +1 -1
- package/dist/storage/adapters/s3CompatibleStorage.d.ts.map +1 -1
- package/dist/storage/cacheManager.d.ts +2 -2
- package/dist/storage/cacheManager.d.ts.map +1 -1
- package/dist/unified.js +417 -30
- package/dist/unified.min.js +990 -990
- package/dist/utils/statisticsCollector.d.ts +55 -0
- package/dist/utils/statisticsCollector.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lightweight statistics collector for Brainy
|
|
3
|
+
* Designed to have minimal performance impact even with millions of entries
|
|
4
|
+
*/
|
|
5
|
+
import { StatisticsData } from '../coreTypes.js';
|
|
6
|
+
export declare class StatisticsCollector {
|
|
7
|
+
private contentTypes;
|
|
8
|
+
private oldestTimestamp;
|
|
9
|
+
private newestTimestamp;
|
|
10
|
+
private updateTimestamps;
|
|
11
|
+
private searchMetrics;
|
|
12
|
+
private verbTypes;
|
|
13
|
+
private storageSizeCache;
|
|
14
|
+
private readonly MAX_TIMESTAMPS;
|
|
15
|
+
private readonly MAX_SEARCH_TERMS;
|
|
16
|
+
private readonly SIZE_UPDATE_INTERVAL;
|
|
17
|
+
/**
|
|
18
|
+
* Track content type (very lightweight)
|
|
19
|
+
*/
|
|
20
|
+
trackContentType(type: string): void;
|
|
21
|
+
/**
|
|
22
|
+
* Track data update timestamp (lightweight)
|
|
23
|
+
*/
|
|
24
|
+
trackUpdate(timestamp?: number): void;
|
|
25
|
+
/**
|
|
26
|
+
* Track search performance (lightweight)
|
|
27
|
+
*/
|
|
28
|
+
trackSearch(searchTerm: string, durationMs: number): void;
|
|
29
|
+
/**
|
|
30
|
+
* Track verb type (lightweight)
|
|
31
|
+
*/
|
|
32
|
+
trackVerbType(type: string): void;
|
|
33
|
+
/**
|
|
34
|
+
* Update storage size estimates (called periodically, not on every operation)
|
|
35
|
+
*/
|
|
36
|
+
updateStorageSizes(sizes: {
|
|
37
|
+
nouns: number;
|
|
38
|
+
verbs: number;
|
|
39
|
+
metadata: number;
|
|
40
|
+
index: number;
|
|
41
|
+
}): void;
|
|
42
|
+
/**
|
|
43
|
+
* Get comprehensive statistics
|
|
44
|
+
*/
|
|
45
|
+
getStatistics(): Partial<StatisticsData>;
|
|
46
|
+
/**
|
|
47
|
+
* Merge statistics from storage (for distributed systems)
|
|
48
|
+
*/
|
|
49
|
+
mergeFromStorage(stored: Partial<StatisticsData>): void;
|
|
50
|
+
/**
|
|
51
|
+
* Reset statistics (for testing)
|
|
52
|
+
*/
|
|
53
|
+
reset(): void;
|
|
54
|
+
private pruneSearchTerms;
|
|
55
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statisticsCollector.d.ts","sourceRoot":"","sources":["../../src/utils/statisticsCollector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAOhD,qBAAa,mBAAmB;IAE9B,OAAO,CAAC,YAAY,CAAiC;IAGrD,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,gBAAgB,CAAuB;IAG/C,OAAO,CAAC,aAAa,CAKpB;IAGD,OAAO,CAAC,SAAS,CAAiC;IAGlD,OAAO,CAAC,gBAAgB,CAQvB;IAED,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAO;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IACvC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;IAE7C;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIpC;;OAEG;IACH,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAgBrC;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAyBzD;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE;QACxB,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;KACd,GAAG,IAAI;IAOR;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,cAAc,CAAC;IAmFxC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IA4BvD;;OAEG;IACH,KAAK,IAAI,IAAI;IAcb,OAAO,CAAC,gBAAgB;CAWzB"}
|
package/package.json
CHANGED