@monoes/memory 1.0.2 → 1.0.4
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/README.md +1 -7
- package/dist/controller-registry.d.ts +1 -1
- package/dist/controller-registry.d.ts.map +1 -1
- package/dist/controller-registry.js +3 -3
- package/dist/controller-registry.js.map +1 -1
- package/dist/database-provider.d.ts +1 -2
- package/dist/database-provider.d.ts.map +1 -1
- package/dist/database-provider.js +0 -25
- package/dist/database-provider.js.map +1 -1
- package/dist/index.d.ts +0 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -8
- package/dist/index.js.map +1 -1
- package/dist/lancedb-backend.d.ts +6 -0
- package/dist/lancedb-backend.d.ts.map +1 -1
- package/dist/lancedb-backend.js +53 -12
- package/dist/lancedb-backend.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +9 -10
- package/dist/hnsw-lite.d.ts +0 -29
- package/dist/hnsw-lite.d.ts.map +0 -1
- package/dist/hnsw-lite.js +0 -240
- package/dist/hnsw-lite.js.map +0 -1
- package/dist/hybrid-backend.d.ts +0 -297
- package/dist/hybrid-backend.d.ts.map +0 -1
- package/dist/hybrid-backend.js +0 -805
- package/dist/hybrid-backend.js.map +0 -1
- package/dist/persistent-sona.d.ts +0 -144
- package/dist/persistent-sona.d.ts.map +0 -1
- package/dist/persistent-sona.js +0 -311
- package/dist/persistent-sona.js.map +0 -1
- package/dist/procedural/procedure-extractor-worker.d.ts +0 -27
- package/dist/procedural/procedure-extractor-worker.d.ts.map +0 -1
- package/dist/procedural/procedure-extractor-worker.js +0 -39
- package/dist/procedural/procedure-extractor-worker.js.map +0 -1
- package/dist/rvf-backend.d.ts +0 -53
- package/dist/rvf-backend.d.ts.map +0 -1
- package/dist/rvf-backend.js +0 -507
- package/dist/rvf-backend.js.map +0 -1
- package/dist/rvf-learning-store.d.ts +0 -141
- package/dist/rvf-learning-store.d.ts.map +0 -1
- package/dist/rvf-learning-store.js +0 -344
- package/dist/rvf-learning-store.js.map +0 -1
- package/dist/rvf-migration.d.ts +0 -45
- package/dist/rvf-migration.d.ts.map +0 -1
- package/dist/rvf-migration.js +0 -254
- package/dist/rvf-migration.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid-backend.js","sourceRoot":"","sources":["../src/hybrid-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PersistentSonaCoordinator - SONA learning with RVF persistence
|
|
3
|
-
*
|
|
4
|
-
* Wraps RvfLearningStore to provide an in-memory pattern bank with
|
|
5
|
-
* brute-force cosine similarity, trajectory buffering, EWC tracking,
|
|
6
|
-
* and automatic periodic persistence to disk.
|
|
7
|
-
*
|
|
8
|
-
* This is intentionally decoupled from the monovector SONA classes:
|
|
9
|
-
* it defines its own compatible types and delegates persistence to
|
|
10
|
-
* RvfLearningStore.
|
|
11
|
-
*
|
|
12
|
-
* @module @monomind/memory/persistent-sona
|
|
13
|
-
*/
|
|
14
|
-
import type { PatternRecord, TrajectoryRecord } from './rvf-learning-store.js';
|
|
15
|
-
export interface PersistentSonaConfig {
|
|
16
|
-
/** Path to the RVF learning store file */
|
|
17
|
-
storePath: string;
|
|
18
|
-
/** Cosine similarity threshold for pattern matching (default: 0.85) */
|
|
19
|
-
patternThreshold?: number;
|
|
20
|
-
/** Maximum buffered trajectories before oldest are evicted (default: 1000) */
|
|
21
|
-
maxTrajectoryBuffer?: number;
|
|
22
|
-
/** Auto-persist interval in ms (default: 30000) */
|
|
23
|
-
autoPersistInterval?: number;
|
|
24
|
-
/** Enable verbose logging (default: false) */
|
|
25
|
-
verbose?: boolean;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Coordinates SONA learning with persistent storage.
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* ```typescript
|
|
32
|
-
* const sona = new PersistentSonaCoordinator({
|
|
33
|
-
* storePath: './data/sona-learning.rvls',
|
|
34
|
-
* });
|
|
35
|
-
* await sona.initialize();
|
|
36
|
-
*
|
|
37
|
-
* // Store a pattern
|
|
38
|
-
* const id = sona.storePattern('query_response', embedding);
|
|
39
|
-
*
|
|
40
|
-
* // Find similar patterns
|
|
41
|
-
* const matches = sona.findSimilarPatterns(queryEmbedding, 5);
|
|
42
|
-
*
|
|
43
|
-
* // Record a trajectory
|
|
44
|
-
* sona.recordTrajectory({ id: 'traj-1', steps: [...], outcome: 'success', ... });
|
|
45
|
-
*
|
|
46
|
-
* // Periodic background learning
|
|
47
|
-
* const result = sona.runBackgroundLoop();
|
|
48
|
-
*
|
|
49
|
-
* await sona.shutdown();
|
|
50
|
-
* ```
|
|
51
|
-
*/
|
|
52
|
-
export declare class PersistentSonaCoordinator {
|
|
53
|
-
private store;
|
|
54
|
-
private patterns;
|
|
55
|
-
private trajectoryBuffer;
|
|
56
|
-
private ewcState;
|
|
57
|
-
private patternThreshold;
|
|
58
|
-
private maxTrajectoryBuffer;
|
|
59
|
-
private verbose;
|
|
60
|
-
private initialized;
|
|
61
|
-
constructor(config: PersistentSonaConfig);
|
|
62
|
-
/**
|
|
63
|
-
* Initialize by loading persisted state from the RVF store.
|
|
64
|
-
*/
|
|
65
|
-
initialize(): Promise<void>;
|
|
66
|
-
/**
|
|
67
|
-
* Store a new pattern and return its ID.
|
|
68
|
-
*
|
|
69
|
-
* @param type - Pattern type (e.g. 'query_response', 'routing')
|
|
70
|
-
* @param embedding - The pattern embedding vector
|
|
71
|
-
* @param metadata - Optional extra metadata (currently unused, reserved)
|
|
72
|
-
* @returns The generated pattern ID
|
|
73
|
-
*/
|
|
74
|
-
storePattern(type: string, embedding: number[], metadata?: Record<string, unknown>): string;
|
|
75
|
-
/**
|
|
76
|
-
* Find the k most similar patterns above the configured threshold.
|
|
77
|
-
* Uses brute-force cosine similarity (suitable for small pattern sets).
|
|
78
|
-
*/
|
|
79
|
-
findSimilarPatterns(embedding: number[], k?: number): PatternRecord[];
|
|
80
|
-
/**
|
|
81
|
-
* Record a pattern usage outcome. Updates the success rate using an
|
|
82
|
-
* exponential moving average (alpha = 0.1).
|
|
83
|
-
*/
|
|
84
|
-
recordPatternUsage(patternId: string, success: boolean): void;
|
|
85
|
-
/**
|
|
86
|
-
* Remove patterns that have low success rates after sufficient usage.
|
|
87
|
-
*
|
|
88
|
-
* @returns The number of patterns pruned
|
|
89
|
-
*/
|
|
90
|
-
prunePatterns(minSuccessRate?: number, minUseCount?: number): number;
|
|
91
|
-
/**
|
|
92
|
-
* Buffer a completed trajectory for later processing.
|
|
93
|
-
* When the buffer exceeds maxTrajectoryBuffer, the oldest entries
|
|
94
|
-
* are evicted.
|
|
95
|
-
*/
|
|
96
|
-
recordTrajectory(trajectory: TrajectoryRecord): void;
|
|
97
|
-
/**
|
|
98
|
-
* Process buffered trajectories to extract new patterns.
|
|
99
|
-
* Successful and partial trajectories are mined for high-confidence
|
|
100
|
-
* steps; new patterns are stored if they are sufficiently different
|
|
101
|
-
* from existing ones.
|
|
102
|
-
*
|
|
103
|
-
* After processing, the trajectory buffer is cleared and low-performing
|
|
104
|
-
* patterns are pruned.
|
|
105
|
-
*
|
|
106
|
-
* @returns Summary of the learning pass
|
|
107
|
-
*/
|
|
108
|
-
runBackgroundLoop(): {
|
|
109
|
-
patternsLearned: number;
|
|
110
|
-
trajectoriesProcessed: number;
|
|
111
|
-
};
|
|
112
|
-
/**
|
|
113
|
-
* Flush current in-memory state to the RVF store on disk.
|
|
114
|
-
*/
|
|
115
|
-
persist(): Promise<void>;
|
|
116
|
-
/**
|
|
117
|
-
* Persist state and shut down the store.
|
|
118
|
-
*/
|
|
119
|
-
shutdown(): Promise<void>;
|
|
120
|
-
/**
|
|
121
|
-
* Return a summary of the coordinator's current state.
|
|
122
|
-
*/
|
|
123
|
-
getStats(): {
|
|
124
|
-
patterns: number;
|
|
125
|
-
avgSuccessRate: number;
|
|
126
|
-
trajectoriesBuffered: number;
|
|
127
|
-
ewcTasksLearned: number;
|
|
128
|
-
};
|
|
129
|
-
/**
|
|
130
|
-
* Extract patterns from a trajectory's high-confidence steps.
|
|
131
|
-
* A step produces a new pattern only if no sufficiently similar
|
|
132
|
-
* pattern already exists.
|
|
133
|
-
*/
|
|
134
|
-
private extractPatternsFromTrajectory;
|
|
135
|
-
/**
|
|
136
|
-
* Deterministic hash-based embedding for pattern extraction.
|
|
137
|
-
* This is a lightweight stand-in for a real embedding model,
|
|
138
|
-
* matching the approach used in SonaCoordinator.
|
|
139
|
-
*/
|
|
140
|
-
private createHashEmbedding;
|
|
141
|
-
private ensureInitialized;
|
|
142
|
-
private log;
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=persistent-sona.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"persistent-sona.d.ts","sourceRoot":"","sources":["../src/persistent-sona.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,OAAO,KAAK,EAEV,aAAa,EAEb,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAIjC,MAAM,WAAW,oBAAoB;IACnC,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mDAAmD;IACnD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAkBD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAyC;IACzD,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,WAAW,CAAS;gBAEhB,MAAM,EAAE,oBAAoB;IAcxC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BjC;;;;;;;OAOG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,MAAM;IAqBT;;;OAGG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,GAAE,MAAU,GAAG,aAAa,EAAE;IAkBxE;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAc7D;;;;OAIG;IACH,aAAa,CAAC,cAAc,GAAE,MAAY,EAAE,WAAW,GAAE,MAAU,GAAG,MAAM;IAsB5E;;;;OAIG;IACH,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAgBpD;;;;;;;;;;OAUG;IACH,iBAAiB,IAAI;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,qBAAqB,EAAE,MAAM,CAAC;KAC/B;IAyBD;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAW/B;;OAEG;IACH,QAAQ,IAAI;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,eAAe,EAAE,MAAM,CAAC;KACzB;IAkBD;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;IAkBrC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,GAAG;CAMZ"}
|
package/dist/persistent-sona.js
DELETED
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PersistentSonaCoordinator - SONA learning with RVF persistence
|
|
3
|
-
*
|
|
4
|
-
* Wraps RvfLearningStore to provide an in-memory pattern bank with
|
|
5
|
-
* brute-force cosine similarity, trajectory buffering, EWC tracking,
|
|
6
|
-
* and automatic periodic persistence to disk.
|
|
7
|
-
*
|
|
8
|
-
* This is intentionally decoupled from the monovector SONA classes:
|
|
9
|
-
* it defines its own compatible types and delegates persistence to
|
|
10
|
-
* RvfLearningStore.
|
|
11
|
-
*
|
|
12
|
-
* @module @monomind/memory/persistent-sona
|
|
13
|
-
*/
|
|
14
|
-
import { RvfLearningStore, } from './rvf-learning-store.js';
|
|
15
|
-
import { cosineSimilarity } from './math-utils.js';
|
|
16
|
-
// ===== Constants =====
|
|
17
|
-
const DEFAULT_PATTERN_THRESHOLD = 0.85;
|
|
18
|
-
const DEFAULT_MAX_TRAJECTORY_BUFFER = 1000;
|
|
19
|
-
const DEFAULT_AUTO_PERSIST_MS = 30_000;
|
|
20
|
-
// ===== Helpers =====
|
|
21
|
-
// cosineSimilarity imported from math-utils.ts — single source of truth
|
|
22
|
-
function generateId(prefix) {
|
|
23
|
-
return `${prefix}-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
24
|
-
}
|
|
25
|
-
// ===== PersistentSonaCoordinator =====
|
|
26
|
-
/**
|
|
27
|
-
* Coordinates SONA learning with persistent storage.
|
|
28
|
-
*
|
|
29
|
-
* @example
|
|
30
|
-
* ```typescript
|
|
31
|
-
* const sona = new PersistentSonaCoordinator({
|
|
32
|
-
* storePath: './data/sona-learning.rvls',
|
|
33
|
-
* });
|
|
34
|
-
* await sona.initialize();
|
|
35
|
-
*
|
|
36
|
-
* // Store a pattern
|
|
37
|
-
* const id = sona.storePattern('query_response', embedding);
|
|
38
|
-
*
|
|
39
|
-
* // Find similar patterns
|
|
40
|
-
* const matches = sona.findSimilarPatterns(queryEmbedding, 5);
|
|
41
|
-
*
|
|
42
|
-
* // Record a trajectory
|
|
43
|
-
* sona.recordTrajectory({ id: 'traj-1', steps: [...], outcome: 'success', ... });
|
|
44
|
-
*
|
|
45
|
-
* // Periodic background learning
|
|
46
|
-
* const result = sona.runBackgroundLoop();
|
|
47
|
-
*
|
|
48
|
-
* await sona.shutdown();
|
|
49
|
-
* ```
|
|
50
|
-
*/
|
|
51
|
-
export class PersistentSonaCoordinator {
|
|
52
|
-
store;
|
|
53
|
-
patterns = new Map();
|
|
54
|
-
trajectoryBuffer = [];
|
|
55
|
-
ewcState = null;
|
|
56
|
-
patternThreshold;
|
|
57
|
-
maxTrajectoryBuffer;
|
|
58
|
-
verbose;
|
|
59
|
-
initialized = false;
|
|
60
|
-
constructor(config) {
|
|
61
|
-
this.patternThreshold = config.patternThreshold ?? DEFAULT_PATTERN_THRESHOLD;
|
|
62
|
-
this.maxTrajectoryBuffer = config.maxTrajectoryBuffer ?? DEFAULT_MAX_TRAJECTORY_BUFFER;
|
|
63
|
-
this.verbose = config.verbose ?? false;
|
|
64
|
-
const storeConfig = {
|
|
65
|
-
storePath: config.storePath,
|
|
66
|
-
autoPersistInterval: config.autoPersistInterval ?? DEFAULT_AUTO_PERSIST_MS,
|
|
67
|
-
verbose: config.verbose,
|
|
68
|
-
};
|
|
69
|
-
this.store = new RvfLearningStore(storeConfig);
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Initialize by loading persisted state from the RVF store.
|
|
73
|
-
*/
|
|
74
|
-
async initialize() {
|
|
75
|
-
if (this.initialized)
|
|
76
|
-
return;
|
|
77
|
-
await this.store.initialize();
|
|
78
|
-
// Rebuild in-memory state from store
|
|
79
|
-
const patterns = await this.store.loadPatterns();
|
|
80
|
-
for (const p of patterns) {
|
|
81
|
-
this.patterns.set(p.id, p);
|
|
82
|
-
}
|
|
83
|
-
const ewc = await this.store.loadEwcState();
|
|
84
|
-
this.ewcState = ewc;
|
|
85
|
-
const trajectories = await this.store.getTrajectories();
|
|
86
|
-
// getTrajectories returns newest-first, reverse for chronological buffer
|
|
87
|
-
this.trajectoryBuffer = trajectories.reverse();
|
|
88
|
-
this.initialized = true;
|
|
89
|
-
this.log(`Initialized: ${this.patterns.size} patterns, ` +
|
|
90
|
-
`${this.trajectoryBuffer.length} trajectories, ` +
|
|
91
|
-
`EWC: ${this.ewcState ? 'yes' : 'no'}`);
|
|
92
|
-
}
|
|
93
|
-
// ===== Pattern operations =====
|
|
94
|
-
/**
|
|
95
|
-
* Store a new pattern and return its ID.
|
|
96
|
-
*
|
|
97
|
-
* @param type - Pattern type (e.g. 'query_response', 'routing')
|
|
98
|
-
* @param embedding - The pattern embedding vector
|
|
99
|
-
* @param metadata - Optional extra metadata (currently unused, reserved)
|
|
100
|
-
* @returns The generated pattern ID
|
|
101
|
-
*/
|
|
102
|
-
storePattern(type, embedding, metadata) {
|
|
103
|
-
this.ensureInitialized();
|
|
104
|
-
const id = generateId('pat');
|
|
105
|
-
const record = {
|
|
106
|
-
id,
|
|
107
|
-
type,
|
|
108
|
-
embedding: [...embedding],
|
|
109
|
-
successRate: 1.0,
|
|
110
|
-
useCount: 0,
|
|
111
|
-
lastUsed: new Date().toISOString(),
|
|
112
|
-
};
|
|
113
|
-
this.patterns.set(id, record);
|
|
114
|
-
// M4: surface persist errors to logs rather than swallowing silently
|
|
115
|
-
void this.store.savePatterns([record]).catch(err => console.warn('[PersistentSona] Pattern persist failed:', err));
|
|
116
|
-
return id;
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Find the k most similar patterns above the configured threshold.
|
|
120
|
-
* Uses brute-force cosine similarity (suitable for small pattern sets).
|
|
121
|
-
*/
|
|
122
|
-
findSimilarPatterns(embedding, k = 5) {
|
|
123
|
-
this.ensureInitialized();
|
|
124
|
-
const results = [];
|
|
125
|
-
for (const record of this.patterns.values()) {
|
|
126
|
-
const score = cosineSimilarity(embedding, record.embedding);
|
|
127
|
-
if (score >= this.patternThreshold) {
|
|
128
|
-
results.push({ record, score });
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
// Sort descending by score and take top-k
|
|
132
|
-
results.sort((a, b) => b.score - a.score);
|
|
133
|
-
return results.slice(0, k).map((r) => r.record);
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* Record a pattern usage outcome. Updates the success rate using an
|
|
137
|
-
* exponential moving average (alpha = 0.1).
|
|
138
|
-
*/
|
|
139
|
-
recordPatternUsage(patternId, success) {
|
|
140
|
-
this.ensureInitialized();
|
|
141
|
-
const pattern = this.patterns.get(patternId);
|
|
142
|
-
if (!pattern)
|
|
143
|
-
return;
|
|
144
|
-
pattern.useCount++;
|
|
145
|
-
pattern.lastUsed = new Date().toISOString();
|
|
146
|
-
const alpha = 0.1;
|
|
147
|
-
const outcome = success ? 1.0 : 0.0;
|
|
148
|
-
pattern.successRate = alpha * outcome + (1 - alpha) * pattern.successRate;
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* Remove patterns that have low success rates after sufficient usage.
|
|
152
|
-
*
|
|
153
|
-
* @returns The number of patterns pruned
|
|
154
|
-
*/
|
|
155
|
-
prunePatterns(minSuccessRate = 0.3, minUseCount = 5) {
|
|
156
|
-
this.ensureInitialized();
|
|
157
|
-
const prunedIds = [];
|
|
158
|
-
for (const [id, pattern] of this.patterns) {
|
|
159
|
-
if (pattern.useCount >= minUseCount && pattern.successRate < minSuccessRate) {
|
|
160
|
-
this.patterns.delete(id);
|
|
161
|
-
prunedIds.push(id);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
if (prunedIds.length > 0) {
|
|
165
|
-
this.log(`Pruned ${prunedIds.length} low-performing patterns`);
|
|
166
|
-
// Persist the deletion so pruned patterns don't reload on next initialize()
|
|
167
|
-
void this.store.deletePatterns(prunedIds).catch(() => { });
|
|
168
|
-
}
|
|
169
|
-
return prunedIds.length;
|
|
170
|
-
}
|
|
171
|
-
// ===== Trajectory tracking =====
|
|
172
|
-
/**
|
|
173
|
-
* Buffer a completed trajectory for later processing.
|
|
174
|
-
* When the buffer exceeds maxTrajectoryBuffer, the oldest entries
|
|
175
|
-
* are evicted.
|
|
176
|
-
*/
|
|
177
|
-
recordTrajectory(trajectory) {
|
|
178
|
-
this.ensureInitialized();
|
|
179
|
-
const copy = { ...trajectory };
|
|
180
|
-
this.trajectoryBuffer.push(copy);
|
|
181
|
-
// Persist to store immediately so evicted entries are not lost
|
|
182
|
-
void this.store.appendTrajectory(copy).catch(() => { });
|
|
183
|
-
while (this.trajectoryBuffer.length > this.maxTrajectoryBuffer) {
|
|
184
|
-
this.trajectoryBuffer.shift();
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
// ===== Learning loop =====
|
|
188
|
-
/**
|
|
189
|
-
* Process buffered trajectories to extract new patterns.
|
|
190
|
-
* Successful and partial trajectories are mined for high-confidence
|
|
191
|
-
* steps; new patterns are stored if they are sufficiently different
|
|
192
|
-
* from existing ones.
|
|
193
|
-
*
|
|
194
|
-
* After processing, the trajectory buffer is cleared and low-performing
|
|
195
|
-
* patterns are pruned.
|
|
196
|
-
*
|
|
197
|
-
* @returns Summary of the learning pass
|
|
198
|
-
*/
|
|
199
|
-
runBackgroundLoop() {
|
|
200
|
-
this.ensureInitialized();
|
|
201
|
-
let patternsLearned = 0;
|
|
202
|
-
const trajectoriesProcessed = this.trajectoryBuffer.length;
|
|
203
|
-
for (const traj of this.trajectoryBuffer) {
|
|
204
|
-
if (traj.outcome === 'success' || traj.outcome === 'partial') {
|
|
205
|
-
patternsLearned += this.extractPatternsFromTrajectory(traj);
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
this.prunePatterns();
|
|
209
|
-
this.trajectoryBuffer = [];
|
|
210
|
-
this.log(`Background loop: ${patternsLearned} patterns learned, ` +
|
|
211
|
-
`${trajectoriesProcessed} trajectories processed`);
|
|
212
|
-
return { patternsLearned, trajectoriesProcessed };
|
|
213
|
-
}
|
|
214
|
-
// ===== Persistence =====
|
|
215
|
-
/**
|
|
216
|
-
* Flush current in-memory state to the RVF store on disk.
|
|
217
|
-
*/
|
|
218
|
-
async persist() {
|
|
219
|
-
const allPatterns = Array.from(this.patterns.values());
|
|
220
|
-
await this.store.savePatterns(allPatterns);
|
|
221
|
-
if (this.ewcState) {
|
|
222
|
-
await this.store.saveEwcState(this.ewcState);
|
|
223
|
-
}
|
|
224
|
-
// Note: trajectories are appended to the store immediately in recordTrajectory(),
|
|
225
|
-
// so DO NOT re-append here — doing so would write each trajectory twice and
|
|
226
|
-
// produce duplicate records in the sidecar after reload.
|
|
227
|
-
await this.store.persist();
|
|
228
|
-
}
|
|
229
|
-
/**
|
|
230
|
-
* Persist state and shut down the store.
|
|
231
|
-
*/
|
|
232
|
-
async shutdown() {
|
|
233
|
-
if (!this.initialized)
|
|
234
|
-
return;
|
|
235
|
-
await this.persist();
|
|
236
|
-
await this.store.close();
|
|
237
|
-
this.initialized = false;
|
|
238
|
-
this.log('Shutdown complete');
|
|
239
|
-
}
|
|
240
|
-
// ===== Stats =====
|
|
241
|
-
/**
|
|
242
|
-
* Return a summary of the coordinator's current state.
|
|
243
|
-
*/
|
|
244
|
-
getStats() {
|
|
245
|
-
let totalSuccessRate = 0;
|
|
246
|
-
let count = 0;
|
|
247
|
-
for (const p of this.patterns.values()) {
|
|
248
|
-
totalSuccessRate += p.successRate;
|
|
249
|
-
count++;
|
|
250
|
-
}
|
|
251
|
-
return {
|
|
252
|
-
patterns: this.patterns.size,
|
|
253
|
-
avgSuccessRate: count > 0 ? totalSuccessRate / count : 0,
|
|
254
|
-
trajectoriesBuffered: this.trajectoryBuffer.length,
|
|
255
|
-
ewcTasksLearned: this.ewcState?.tasksLearned ?? 0,
|
|
256
|
-
};
|
|
257
|
-
}
|
|
258
|
-
// ===== Private =====
|
|
259
|
-
/**
|
|
260
|
-
* Extract patterns from a trajectory's high-confidence steps.
|
|
261
|
-
* A step produces a new pattern only if no sufficiently similar
|
|
262
|
-
* pattern already exists.
|
|
263
|
-
*/
|
|
264
|
-
extractPatternsFromTrajectory(trajectory) {
|
|
265
|
-
let extracted = 0;
|
|
266
|
-
for (const step of trajectory.steps) {
|
|
267
|
-
if (step.confidence < this.patternThreshold)
|
|
268
|
-
continue;
|
|
269
|
-
const embedding = this.createHashEmbedding(step.input + step.output);
|
|
270
|
-
const similar = this.findSimilarPatterns(embedding, 1);
|
|
271
|
-
if (similar.length === 0) {
|
|
272
|
-
this.storePattern(step.type, embedding);
|
|
273
|
-
extracted++;
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
return extracted;
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* Deterministic hash-based embedding for pattern extraction.
|
|
280
|
-
* This is a lightweight stand-in for a real embedding model,
|
|
281
|
-
* matching the approach used in SonaCoordinator.
|
|
282
|
-
*/
|
|
283
|
-
createHashEmbedding(text, dim = 64) {
|
|
284
|
-
const embedding = new Array(dim).fill(0);
|
|
285
|
-
for (let i = 0; i < text.length; i++) {
|
|
286
|
-
const idx = (text.charCodeAt(i) * (i + 1)) % dim;
|
|
287
|
-
embedding[idx] += 0.1;
|
|
288
|
-
}
|
|
289
|
-
let norm = 0;
|
|
290
|
-
for (let i = 0; i < dim; i++) {
|
|
291
|
-
norm += embedding[i] * embedding[i];
|
|
292
|
-
}
|
|
293
|
-
norm = Math.sqrt(norm) || 1;
|
|
294
|
-
for (let i = 0; i < dim; i++) {
|
|
295
|
-
embedding[i] /= norm;
|
|
296
|
-
}
|
|
297
|
-
return embedding;
|
|
298
|
-
}
|
|
299
|
-
ensureInitialized() {
|
|
300
|
-
if (!this.initialized) {
|
|
301
|
-
throw new Error('PersistentSonaCoordinator has not been initialized. Call initialize() first.');
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
log(message) {
|
|
305
|
-
if (this.verbose) {
|
|
306
|
-
// eslint-disable-next-line no-console
|
|
307
|
-
console.log(`[PersistentSona] ${message}`);
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
//# sourceMappingURL=persistent-sona.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"persistent-sona.js","sourceRoot":"","sources":["../src/persistent-sona.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ProcedureExtractorWorker — Background worker that extracts action
|
|
3
|
-
* sequences from successful agent runs and stores them as learned
|
|
4
|
-
* skills in procedural memory (Task 45).
|
|
5
|
-
*
|
|
6
|
-
* Delegates to ActionSequenceExtractor for grouping and fingerprinting.
|
|
7
|
-
*
|
|
8
|
-
* @module v1/memory/procedural/procedure-extractor-worker
|
|
9
|
-
*/
|
|
10
|
-
import type { ActionRecord } from './types.js';
|
|
11
|
-
export interface ProcedureExtractionContext {
|
|
12
|
-
records: ActionRecord[];
|
|
13
|
-
minOccurrences?: number;
|
|
14
|
-
minSuccessRate?: number;
|
|
15
|
-
}
|
|
16
|
-
export interface ProcedureExtractionResult {
|
|
17
|
-
extracted: boolean;
|
|
18
|
-
skillsFound: number;
|
|
19
|
-
skillsStored: number;
|
|
20
|
-
durationMs: number;
|
|
21
|
-
}
|
|
22
|
-
export declare class ProcedureExtractorWorker {
|
|
23
|
-
readonly name: "procedure-extractor";
|
|
24
|
-
readonly priority: "low";
|
|
25
|
-
execute(context: ProcedureExtractionContext): Promise<ProcedureExtractionResult>;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=procedure-extractor-worker.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"procedure-extractor-worker.d.ts","sourceRoot":"","sources":["../../src/procedural/procedure-extractor-worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,wBAAwB;IACnC,QAAQ,CAAC,IAAI,EAAG,qBAAqB,CAAU;IAC/C,QAAQ,CAAC,QAAQ,EAAG,KAAK,CAAU;IAE7B,OAAO,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,yBAAyB,CAAC;CA4BvF"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ProcedureExtractorWorker — Background worker that extracts action
|
|
3
|
-
* sequences from successful agent runs and stores them as learned
|
|
4
|
-
* skills in procedural memory (Task 45).
|
|
5
|
-
*
|
|
6
|
-
* Delegates to ActionSequenceExtractor for grouping and fingerprinting.
|
|
7
|
-
*
|
|
8
|
-
* @module v1/memory/procedural/procedure-extractor-worker
|
|
9
|
-
*/
|
|
10
|
-
export class ProcedureExtractorWorker {
|
|
11
|
-
name = 'procedure-extractor';
|
|
12
|
-
priority = 'low';
|
|
13
|
-
async execute(context) {
|
|
14
|
-
const start = Date.now();
|
|
15
|
-
try {
|
|
16
|
-
const { ActionSequenceExtractor } = await import('./action-sequence-extractor.js');
|
|
17
|
-
const extractor = new ActionSequenceExtractor({
|
|
18
|
-
minSuccessCount: context.minOccurrences,
|
|
19
|
-
minAvgQualityScore: context.minSuccessRate,
|
|
20
|
-
});
|
|
21
|
-
const groups = extractor.extract(context.records);
|
|
22
|
-
return {
|
|
23
|
-
extracted: true,
|
|
24
|
-
skillsFound: groups.length,
|
|
25
|
-
skillsStored: groups.length,
|
|
26
|
-
durationMs: Date.now() - start,
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
catch {
|
|
30
|
-
return {
|
|
31
|
-
extracted: false,
|
|
32
|
-
skillsFound: 0,
|
|
33
|
-
skillsStored: 0,
|
|
34
|
-
durationMs: Date.now() - start,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=procedure-extractor-worker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"procedure-extractor-worker.js","sourceRoot":"","sources":["../../src/procedural/procedure-extractor-worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAiBH,MAAM,OAAO,wBAAwB;IAC1B,IAAI,GAAG,qBAA8B,CAAC;IACtC,QAAQ,GAAG,KAAc,CAAC;IAEnC,KAAK,CAAC,OAAO,CAAC,OAAmC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;YAEnF,MAAM,SAAS,GAAG,IAAI,uBAAuB,CAAC;gBAC5C,eAAe,EAAE,OAAO,CAAC,cAAc;gBACvC,kBAAkB,EAAE,OAAO,CAAC,cAAc;aAC3C,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAElD,OAAO;gBACL,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,MAAM,CAAC,MAAM;gBAC1B,YAAY,EAAE,MAAM,CAAC,MAAM;gBAC3B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAC/B,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,SAAS,EAAE,KAAK;gBAChB,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC;gBACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAC/B,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|
package/dist/rvf-backend.d.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import type { IMemoryBackend, MemoryEntry, MemoryEntryUpdate, MemoryQuery, SearchOptions, SearchResult, BackendStats, HealthCheckResult } from './types.js';
|
|
2
|
-
export interface RvfBackendConfig {
|
|
3
|
-
databasePath: string;
|
|
4
|
-
dimensions?: number;
|
|
5
|
-
metric?: 'cosine' | 'euclidean' | 'dot';
|
|
6
|
-
quantization?: 'fp32' | 'fp16' | 'int8';
|
|
7
|
-
hnswM?: number;
|
|
8
|
-
hnswEfConstruction?: number;
|
|
9
|
-
maxElements?: number;
|
|
10
|
-
verbose?: boolean;
|
|
11
|
-
defaultNamespace?: string;
|
|
12
|
-
autoPersistInterval?: number;
|
|
13
|
-
}
|
|
14
|
-
export declare class RvfBackend implements IMemoryBackend {
|
|
15
|
-
private entries;
|
|
16
|
-
private keyIndex;
|
|
17
|
-
private hnswIndex;
|
|
18
|
-
private nativeDb;
|
|
19
|
-
private config;
|
|
20
|
-
private initialized;
|
|
21
|
-
private dirty;
|
|
22
|
-
private persisting;
|
|
23
|
-
private persistTimer;
|
|
24
|
-
private queryTimes;
|
|
25
|
-
private searchTimes;
|
|
26
|
-
constructor(config: RvfBackendConfig);
|
|
27
|
-
/** Lazily create the HNSW index with the given dimension (auto-detected from first embedding). */
|
|
28
|
-
private ensureHnsw;
|
|
29
|
-
initialize(): Promise<void>;
|
|
30
|
-
shutdown(): Promise<void>;
|
|
31
|
-
store(entry: MemoryEntry): Promise<void>;
|
|
32
|
-
get(id: string): Promise<MemoryEntry | null>;
|
|
33
|
-
getByKey(namespace: string, key: string): Promise<MemoryEntry | null>;
|
|
34
|
-
update(id: string, updateData: MemoryEntryUpdate): Promise<MemoryEntry | null>;
|
|
35
|
-
delete(id: string): Promise<boolean>;
|
|
36
|
-
query(q: MemoryQuery): Promise<MemoryEntry[]>;
|
|
37
|
-
search(embedding: Float32Array, options: SearchOptions): Promise<SearchResult[]>;
|
|
38
|
-
bulkInsert(entries: MemoryEntry[]): Promise<void>;
|
|
39
|
-
bulkDelete(ids: string[]): Promise<number>;
|
|
40
|
-
count(namespace?: string): Promise<number>;
|
|
41
|
-
listNamespaces(): Promise<string[]>;
|
|
42
|
-
clearNamespace(namespace: string): Promise<number>;
|
|
43
|
-
getStats(): Promise<BackendStats>;
|
|
44
|
-
healthCheck(): Promise<HealthCheckResult>;
|
|
45
|
-
private tryNativeInit;
|
|
46
|
-
private compositeKey;
|
|
47
|
-
private bruteForceSearch;
|
|
48
|
-
private recordTiming;
|
|
49
|
-
private avg;
|
|
50
|
-
private loadFromDisk;
|
|
51
|
-
private persistToDisk;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=rvf-backend.d.ts.map
|