agentdb 3.0.0-alpha.11 → 3.0.0-alpha.13

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.
Files changed (107) hide show
  1. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts +54 -0
  2. package/dist/src/backends/graph/GraphDatabaseAdapter.d.ts.map +1 -1
  3. package/dist/src/backends/graph/GraphDatabaseAdapter.js +125 -0
  4. package/dist/src/backends/graph/GraphDatabaseAdapter.js.map +1 -1
  5. package/dist/src/cli/agentdb-cli.js +0 -0
  6. package/dist/src/controllers/ReflexionMemory.d.ts +50 -0
  7. package/dist/src/controllers/ReflexionMemory.d.ts.map +1 -1
  8. package/dist/src/controllers/ReflexionMemory.js +258 -0
  9. package/dist/src/controllers/ReflexionMemory.js.map +1 -1
  10. package/dist/src/controllers/index.d.ts +2 -0
  11. package/dist/src/controllers/index.d.ts.map +1 -1
  12. package/dist/src/controllers/index.js +2 -0
  13. package/dist/src/controllers/index.js.map +1 -1
  14. package/dist/src/controllers/prerequisites.d.ts +76 -0
  15. package/dist/src/controllers/prerequisites.d.ts.map +1 -0
  16. package/dist/src/controllers/prerequisites.js +235 -0
  17. package/dist/src/controllers/prerequisites.js.map +1 -0
  18. package/dist/src/db-fallback.d.ts.map +1 -1
  19. package/dist/src/db-fallback.js +55 -45
  20. package/dist/src/db-fallback.js.map +1 -1
  21. package/package.json +1 -1
  22. package/dist/schemas/frontier-schema.sql +0 -378
  23. package/dist/schemas/schema.sql +0 -382
  24. package/dist/src/backends/index.cjs +0 -6
  25. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts +0 -93
  26. package/dist/src/backends/ruvector/GuardedVectorBackend.d.ts.map +0 -1
  27. package/dist/src/backends/ruvector/GuardedVectorBackend.js +0 -182
  28. package/dist/src/backends/ruvector/GuardedVectorBackend.js.map +0 -1
  29. package/dist/src/consensus/RaftConsensus.d.ts +0 -220
  30. package/dist/src/consensus/RaftConsensus.d.ts.map +0 -1
  31. package/dist/src/consensus/RaftConsensus.js +0 -762
  32. package/dist/src/consensus/RaftConsensus.js.map +0 -1
  33. package/dist/src/controllers/HierarchicalMemory.d.ts +0 -197
  34. package/dist/src/controllers/HierarchicalMemory.d.ts.map +0 -1
  35. package/dist/src/controllers/HierarchicalMemory.js +0 -519
  36. package/dist/src/controllers/HierarchicalMemory.js.map +0 -1
  37. package/dist/src/controllers/MemoryConsolidation.d.ts +0 -142
  38. package/dist/src/controllers/MemoryConsolidation.d.ts.map +0 -1
  39. package/dist/src/controllers/MemoryConsolidation.js +0 -479
  40. package/dist/src/controllers/MemoryConsolidation.js.map +0 -1
  41. package/dist/src/controllers/QUICConnection.d.ts +0 -122
  42. package/dist/src/controllers/QUICConnection.d.ts.map +0 -1
  43. package/dist/src/controllers/QUICConnection.js +0 -329
  44. package/dist/src/controllers/QUICConnection.js.map +0 -1
  45. package/dist/src/controllers/QUICConnectionPool.d.ts +0 -83
  46. package/dist/src/controllers/QUICConnectionPool.d.ts.map +0 -1
  47. package/dist/src/controllers/QUICConnectionPool.js +0 -256
  48. package/dist/src/controllers/QUICConnectionPool.js.map +0 -1
  49. package/dist/src/controllers/QUICStreamManager.d.ts +0 -114
  50. package/dist/src/controllers/QUICStreamManager.d.ts.map +0 -1
  51. package/dist/src/controllers/QUICStreamManager.js +0 -267
  52. package/dist/src/controllers/QUICStreamManager.js.map +0 -1
  53. package/dist/src/controllers/StreamingEmbeddingService.d.ts +0 -82
  54. package/dist/src/controllers/StreamingEmbeddingService.d.ts.map +0 -1
  55. package/dist/src/controllers/StreamingEmbeddingService.js +0 -243
  56. package/dist/src/controllers/StreamingEmbeddingService.js.map +0 -1
  57. package/dist/src/controllers/index.cjs +0 -6
  58. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts +0 -348
  59. package/dist/src/coordination/MultiDatabaseCoordinator.d.ts.map +0 -1
  60. package/dist/src/coordination/MultiDatabaseCoordinator.js +0 -803
  61. package/dist/src/coordination/MultiDatabaseCoordinator.js.map +0 -1
  62. package/dist/src/coordination/index.d.ts +0 -10
  63. package/dist/src/coordination/index.d.ts.map +0 -1
  64. package/dist/src/coordination/index.js +0 -10
  65. package/dist/src/coordination/index.js.map +0 -1
  66. package/dist/src/index.cjs +0 -6
  67. package/dist/src/optimizations/RVFOptimizer.d.ts +0 -226
  68. package/dist/src/optimizations/RVFOptimizer.d.ts.map +0 -1
  69. package/dist/src/optimizations/RVFOptimizer.js +0 -541
  70. package/dist/src/optimizations/RVFOptimizer.js.map +0 -1
  71. package/dist/src/security/AttestationLog.d.ts +0 -70
  72. package/dist/src/security/AttestationLog.d.ts.map +0 -1
  73. package/dist/src/security/AttestationLog.js +0 -174
  74. package/dist/src/security/AttestationLog.js.map +0 -1
  75. package/dist/src/security/MutationGuard.d.ts +0 -83
  76. package/dist/src/security/MutationGuard.d.ts.map +0 -1
  77. package/dist/src/security/MutationGuard.js +0 -364
  78. package/dist/src/security/MutationGuard.js.map +0 -1
  79. package/dist/src/security/index.cjs +0 -6
  80. package/dist/src/security/index.d.ts +0 -15
  81. package/dist/src/security/index.d.ts.map +0 -1
  82. package/dist/src/security/index.js +0 -18
  83. package/dist/src/security/index.js.map +0 -1
  84. package/dist/src/services/GNNService.d.ts +0 -173
  85. package/dist/src/services/GNNService.d.ts.map +0 -1
  86. package/dist/src/services/GNNService.js +0 -639
  87. package/dist/src/services/GNNService.js.map +0 -1
  88. package/dist/src/services/GraphTransformerService.d.ts +0 -80
  89. package/dist/src/services/GraphTransformerService.d.ts.map +0 -1
  90. package/dist/src/services/GraphTransformerService.js +0 -369
  91. package/dist/src/services/GraphTransformerService.js.map +0 -1
  92. package/dist/src/services/SemanticRouter.d.ts +0 -83
  93. package/dist/src/services/SemanticRouter.d.ts.map +0 -1
  94. package/dist/src/services/SemanticRouter.js +0 -160
  95. package/dist/src/services/SemanticRouter.js.map +0 -1
  96. package/dist/src/services/SonaTrajectoryService.d.ts +0 -224
  97. package/dist/src/services/SonaTrajectoryService.d.ts.map +0 -1
  98. package/dist/src/services/SonaTrajectoryService.js +0 -539
  99. package/dist/src/services/SonaTrajectoryService.js.map +0 -1
  100. package/dist/src/utils/LegacyAttentionAdapter.d.ts +0 -93
  101. package/dist/src/utils/LegacyAttentionAdapter.d.ts.map +0 -1
  102. package/dist/src/utils/LegacyAttentionAdapter.js +0 -241
  103. package/dist/src/utils/LegacyAttentionAdapter.js.map +0 -1
  104. package/dist/src/utils/vector-math.d.ts +0 -29
  105. package/dist/src/utils/vector-math.d.ts.map +0 -1
  106. package/dist/src/utils/vector-math.js +0 -66
  107. package/dist/src/utils/vector-math.js.map +0 -1
@@ -1,241 +0,0 @@
1
- /**
2
- * LegacyAttentionAdapter - Compatibility layer for deprecated services/AttentionService
3
- *
4
- * This module re-exports the legacy config types and provides a backward-compatible
5
- * AttentionService class that delegates to the production controllers/AttentionService.
6
- *
7
- * Created as part of ADR-056: consolidation of services/AttentionService into controllers.
8
- *
9
- * @module LegacyAttentionAdapter
10
- */
11
- import { AttentionService as ControllersAttentionService } from '../controllers/AttentionService.js';
12
- // ========================================================================
13
- // Legacy AttentionService Adapter
14
- // ========================================================================
15
- /**
16
- * Backward-compatible AttentionService that delegates to the production
17
- * controllers/AttentionService while maintaining the legacy constructor
18
- * and method signatures used by ExplainableRecall, NightlyLearner, and
19
- * CausalMemoryGraph.
20
- */
21
- export class AttentionService {
22
- delegate;
23
- hyperbolicConfig;
24
- flashConfig;
25
- graphRoPEConfig;
26
- constructor(_db, configs) {
27
- this.hyperbolicConfig = {
28
- enabled: false,
29
- curvature: 1.0,
30
- dimension: 384,
31
- temperature: 1.0,
32
- ...configs?.hyperbolic,
33
- };
34
- this.flashConfig = {
35
- enabled: false,
36
- blockSize: 256,
37
- useSIMD: true,
38
- maxSeqLen: 4096,
39
- ...configs?.flash,
40
- };
41
- this.graphRoPEConfig = {
42
- enabled: false,
43
- maxHops: 10,
44
- rotaryDim: 64,
45
- baseFreq: 10000,
46
- ...configs?.graphRoPE,
47
- };
48
- const dim = this.hyperbolicConfig.dimension ?? 384;
49
- this.delegate = new ControllersAttentionService({
50
- numHeads: 1,
51
- headDim: dim,
52
- embedDim: dim,
53
- useFlash: this.flashConfig.enabled,
54
- useHyperbolic: this.hyperbolicConfig.enabled,
55
- });
56
- }
57
- async hyperbolicAttention(queries, keys, values, hierarchyLevels) {
58
- const startTime = Date.now();
59
- const dim = this.hyperbolicConfig.dimension ?? 384;
60
- const numKeys = keys.length / dim;
61
- try {
62
- const result = await this.delegate.hyperbolicAttention(queries, keys, values, this.hyperbolicConfig.curvature ?? 1.0);
63
- const weights = result.weights ?? new Float32Array(numKeys);
64
- const distances = hierarchyLevels.slice(0, numKeys);
65
- return {
66
- attended: result.output,
67
- weights,
68
- distances,
69
- metrics: {
70
- computeTimeMs: result.executionTimeMs ?? (Date.now() - startTime),
71
- memoryUsedMB: (result.output.byteLength + weights.byteLength) / (1024 * 1024),
72
- },
73
- };
74
- }
75
- catch {
76
- // Fallback: simple hierarchical attention
77
- return this.fallbackHyperbolicAttention(queries, keys, values, hierarchyLevels, startTime);
78
- }
79
- }
80
- async flashAttention(queries, keys, values) {
81
- const startTime = Date.now();
82
- try {
83
- const result = await this.delegate.flashAttention(queries, keys, values);
84
- return {
85
- output: result.output,
86
- metrics: {
87
- computeTimeMs: result.executionTimeMs ?? (Date.now() - startTime),
88
- peakMemoryMB: result.output.byteLength / (1024 * 1024),
89
- blocksProcessed: 1,
90
- },
91
- };
92
- }
93
- catch {
94
- // Fallback: chunked attention
95
- return this.fallbackFlashAttention(queries, keys, values, startTime);
96
- }
97
- }
98
- async graphRoPE(queries, keys, hopDistances) {
99
- const startTime = Date.now();
100
- // GraphRoPE is not in the controllers version; use fallback
101
- return this.fallbackGraphRoPE(queries, keys, hopDistances, startTime);
102
- }
103
- // ========================================================================
104
- // Fallback implementations (preserved from deprecated services version)
105
- // ========================================================================
106
- fallbackHyperbolicAttention(queries, keys, values, hierarchyLevels, startTime) {
107
- const dim = this.hyperbolicConfig.dimension;
108
- const numQueries = queries.length / dim;
109
- const numKeys = keys.length / dim;
110
- const scores = new Float32Array(numQueries * numKeys);
111
- const distances = [];
112
- for (let i = 0; i < numQueries; i++) {
113
- for (let j = 0; j < numKeys; j++) {
114
- let score = 0;
115
- for (let d = 0; d < dim; d++) {
116
- score += queries[i * dim + d] * keys[j * dim + d];
117
- }
118
- const hierarchyScale = Math.exp(-hierarchyLevels[j] * 0.5);
119
- score *= hierarchyScale;
120
- scores[i * numKeys + j] = score;
121
- distances.push(hierarchyLevels[j]);
122
- }
123
- }
124
- const weights = this.softmax(scores, numQueries, numKeys);
125
- const attended = new Float32Array(numQueries * dim);
126
- for (let i = 0; i < numQueries; i++) {
127
- for (let j = 0; j < numKeys; j++) {
128
- const weight = weights[i * numKeys + j];
129
- for (let d = 0; d < dim; d++) {
130
- attended[i * dim + d] += weight * values[j * dim + d];
131
- }
132
- }
133
- }
134
- return {
135
- attended,
136
- weights,
137
- distances,
138
- metrics: {
139
- computeTimeMs: Date.now() - startTime,
140
- memoryUsedMB: (attended.byteLength + weights.byteLength) / (1024 * 1024),
141
- },
142
- };
143
- }
144
- fallbackFlashAttention(queries, keys, values, startTime) {
145
- const dim = 384;
146
- const numQueries = queries.length / dim;
147
- const numKeys = keys.length / dim;
148
- const blockSize = this.flashConfig.blockSize;
149
- const output = new Float32Array(numQueries * dim);
150
- let blocksProcessed = 0;
151
- let peakMemory = 0;
152
- for (let qStart = 0; qStart < numQueries; qStart += blockSize) {
153
- const qEnd = Math.min(qStart + blockSize, numQueries);
154
- for (let kStart = 0; kStart < numKeys; kStart += blockSize) {
155
- const kEnd = Math.min(kStart + blockSize, numKeys);
156
- const blockScores = new Float32Array((qEnd - qStart) * (kEnd - kStart));
157
- for (let i = qStart; i < qEnd; i++) {
158
- for (let j = kStart; j < kEnd; j++) {
159
- let score = 0;
160
- for (let d = 0; d < dim; d++) {
161
- score += queries[i * dim + d] * keys[j * dim + d];
162
- }
163
- blockScores[(i - qStart) * (kEnd - kStart) + (j - kStart)] = score;
164
- }
165
- }
166
- const blockWeights = this.softmax(blockScores, qEnd - qStart, kEnd - kStart);
167
- for (let i = qStart; i < qEnd; i++) {
168
- for (let j = kStart; j < kEnd; j++) {
169
- const weight = blockWeights[(i - qStart) * (kEnd - kStart) + (j - kStart)];
170
- for (let d = 0; d < dim; d++) {
171
- output[i * dim + d] += weight * values[j * dim + d];
172
- }
173
- }
174
- }
175
- peakMemory = Math.max(peakMemory, blockScores.byteLength + blockWeights.byteLength);
176
- blocksProcessed++;
177
- }
178
- }
179
- return {
180
- output,
181
- metrics: {
182
- computeTimeMs: Date.now() - startTime,
183
- peakMemoryMB: peakMemory / (1024 * 1024),
184
- blocksProcessed,
185
- },
186
- };
187
- }
188
- fallbackGraphRoPE(queries, keys, hopDistances, startTime) {
189
- const dim = 384;
190
- const numQueries = queries.length / dim;
191
- const numKeys = keys.length / dim;
192
- const encodedQueries = new Float32Array(queries);
193
- const encodedKeys = new Float32Array(keys);
194
- const hopEncodings = new Float32Array(numQueries * numKeys);
195
- for (let i = 0; i < numQueries; i++) {
196
- for (let j = 0; j < numKeys; j++) {
197
- const distance = hopDistances[i]?.[j] || 0;
198
- const scale = 1.0 / (1.0 + distance);
199
- hopEncodings[i * numKeys + j] = scale;
200
- for (let d = 0; d < dim; d++) {
201
- encodedQueries[i * dim + d] *= Math.sqrt(scale);
202
- encodedKeys[j * dim + d] *= Math.sqrt(scale);
203
- }
204
- }
205
- }
206
- return {
207
- queries: encodedQueries,
208
- keys: encodedKeys,
209
- hopEncodings,
210
- metrics: {
211
- computeTimeMs: Date.now() - startTime,
212
- },
213
- };
214
- }
215
- softmax(scores, rows, cols) {
216
- const result = new Float32Array(scores.length);
217
- for (let i = 0; i < rows; i++) {
218
- let max = -Infinity;
219
- for (let j = 0; j < cols; j++) {
220
- max = Math.max(max, scores[i * cols + j]);
221
- }
222
- let sum = 0;
223
- for (let j = 0; j < cols; j++) {
224
- result[i * cols + j] = Math.exp(scores[i * cols + j] - max);
225
- sum += result[i * cols + j];
226
- }
227
- for (let j = 0; j < cols; j++) {
228
- result[i * cols + j] /= sum;
229
- }
230
- }
231
- return result;
232
- }
233
- getConfig() {
234
- return {
235
- hyperbolic: this.hyperbolicConfig,
236
- flash: this.flashConfig,
237
- graphRoPE: this.graphRoPEConfig,
238
- };
239
- }
240
- }
241
- //# sourceMappingURL=LegacyAttentionAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LegacyAttentionAdapter.js","sourceRoot":"","sources":["../../../src/utils/LegacyAttentionAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Shared Vector Math Utilities
3
- *
4
- * Eliminates 8+ duplicate cosineSimilarity implementations across controllers.
5
- * Uses 4x loop unrolling from WASMVectorSearch for best JS performance.
6
- * Future: WASM SIMD acceleration via P2.2.
7
- */
8
- /**
9
- * Cosine similarity with 4x loop unrolling for optimal JS performance.
10
- * Handles both number[] and Float32Array inputs.
11
- */
12
- export declare function cosineSimilarity(a: ArrayLike<number>, b: ArrayLike<number>): number;
13
- /**
14
- * Batch cosine similarity: compute similarity of query against multiple vectors.
15
- */
16
- export declare function batchCosineSimilarity(query: ArrayLike<number>, corpus: ArrayLike<number>[]): number[];
17
- /**
18
- * Convert distance metric to similarity score (0-1).
19
- */
20
- export declare function distanceToSimilarity(distance: number, metric?: 'cosine' | 'l2' | 'ip'): number;
21
- /**
22
- * Serialize embedding to Buffer for storage.
23
- */
24
- export declare function serializeEmbedding(embedding: Float32Array): Buffer;
25
- /**
26
- * Deserialize embedding from Buffer.
27
- */
28
- export declare function deserializeEmbedding(buffer: Buffer): Float32Array;
29
- //# sourceMappingURL=vector-math.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vector-math.d.ts","sourceRoot":"","sources":["../../../src/utils/vector-math.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAsBnF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,CAErG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,QAAQ,GAAG,IAAI,GAAG,IAAe,GAAG,MAAM,CAOxG;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,YAAY,GAAG,MAAM,CAElE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAKjE"}
@@ -1,66 +0,0 @@
1
- /**
2
- * Shared Vector Math Utilities
3
- *
4
- * Eliminates 8+ duplicate cosineSimilarity implementations across controllers.
5
- * Uses 4x loop unrolling from WASMVectorSearch for best JS performance.
6
- * Future: WASM SIMD acceleration via P2.2.
7
- */
8
- /**
9
- * Cosine similarity with 4x loop unrolling for optimal JS performance.
10
- * Handles both number[] and Float32Array inputs.
11
- */
12
- export function cosineSimilarity(a, b) {
13
- const len = Math.min(a.length, b.length);
14
- if (len === 0)
15
- return 0;
16
- let dot = 0, magA = 0, magB = 0;
17
- // 4x loop unrolling
18
- const unrolled = len - (len % 4);
19
- for (let i = 0; i < unrolled; i += 4) {
20
- dot += a[i] * b[i] + a[i + 1] * b[i + 1] + a[i + 2] * b[i + 2] + a[i + 3] * b[i + 3];
21
- magA += a[i] * a[i] + a[i + 1] * a[i + 1] + a[i + 2] * a[i + 2] + a[i + 3] * a[i + 3];
22
- magB += b[i] * b[i] + b[i + 1] * b[i + 1] + b[i + 2] * b[i + 2] + b[i + 3] * b[i + 3];
23
- }
24
- // Handle remainder
25
- for (let i = unrolled; i < len; i++) {
26
- dot += a[i] * b[i];
27
- magA += a[i] * a[i];
28
- magB += b[i] * b[i];
29
- }
30
- const denom = Math.sqrt(magA) * Math.sqrt(magB);
31
- return denom === 0 ? 0 : dot / denom;
32
- }
33
- /**
34
- * Batch cosine similarity: compute similarity of query against multiple vectors.
35
- */
36
- export function batchCosineSimilarity(query, corpus) {
37
- return corpus.map(vec => cosineSimilarity(query, vec));
38
- }
39
- /**
40
- * Convert distance metric to similarity score (0-1).
41
- */
42
- export function distanceToSimilarity(distance, metric = 'cosine') {
43
- switch (metric) {
44
- case 'cosine': return 1 - distance;
45
- case 'l2': return 1 / (1 + distance);
46
- case 'ip': return distance; // inner product is already a similarity
47
- default: return 1 - distance;
48
- }
49
- }
50
- /**
51
- * Serialize embedding to Buffer for storage.
52
- */
53
- export function serializeEmbedding(embedding) {
54
- return Buffer.from(embedding.buffer, embedding.byteOffset, embedding.byteLength);
55
- }
56
- /**
57
- * Deserialize embedding from Buffer.
58
- */
59
- export function deserializeEmbedding(buffer) {
60
- const ab = new ArrayBuffer(buffer.length);
61
- const view = new Uint8Array(ab);
62
- for (let i = 0; i < buffer.length; i++)
63
- view[i] = buffer[i];
64
- return new Float32Array(ab);
65
- }
66
- //# sourceMappingURL=vector-math.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vector-math.js","sourceRoot":"","sources":["../../../src/utils/vector-math.ts"],"names":[],"mappings":"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"}