agentic-qe 2.8.0 → 2.8.1
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/CHANGELOG.md +105 -0
- package/README.md +1 -1
- package/dist/agents/BaseAgent.d.ts +128 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +256 -0
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/cli/commands/supabase/index.d.ts +20 -0
- package/dist/cli/commands/supabase/index.d.ts.map +1 -0
- package/dist/cli/commands/supabase/index.js +632 -0
- package/dist/cli/commands/supabase/index.js.map +1 -0
- package/dist/cli/index.js +3 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/mcp/handlers/NewDomainToolsHandler.d.ts +8 -8
- package/dist/mcp/handlers/NewDomainToolsHandler.d.ts.map +1 -1
- package/dist/mcp/handlers/NewDomainToolsHandler.js.map +1 -1
- package/dist/mcp/handlers/ruvector/RuVectorHandler.d.ts +54 -0
- package/dist/mcp/handlers/ruvector/RuVectorHandler.d.ts.map +1 -0
- package/dist/mcp/handlers/ruvector/RuVectorHandler.js +325 -0
- package/dist/mcp/handlers/ruvector/RuVectorHandler.js.map +1 -0
- package/dist/mcp/handlers/ruvector/index.d.ts +5 -0
- package/dist/mcp/handlers/ruvector/index.d.ts.map +1 -0
- package/dist/mcp/handlers/ruvector/index.js +9 -0
- package/dist/mcp/handlers/ruvector/index.js.map +1 -0
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +100 -22
- package/dist/mcp/server.js.map +1 -1
- package/dist/nervous-system/adapters/BTSPAdapter.d.ts +342 -0
- package/dist/nervous-system/adapters/BTSPAdapter.d.ts.map +1 -0
- package/dist/nervous-system/adapters/BTSPAdapter.js +494 -0
- package/dist/nervous-system/adapters/BTSPAdapter.js.map +1 -0
- package/dist/nervous-system/adapters/CircadianController.d.ts +560 -0
- package/dist/nervous-system/adapters/CircadianController.d.ts.map +1 -0
- package/dist/nervous-system/adapters/CircadianController.js +882 -0
- package/dist/nervous-system/adapters/CircadianController.js.map +1 -0
- package/dist/nervous-system/adapters/GlobalWorkspaceAdapter.d.ts +337 -0
- package/dist/nervous-system/adapters/GlobalWorkspaceAdapter.d.ts.map +1 -0
- package/dist/nervous-system/adapters/GlobalWorkspaceAdapter.js +532 -0
- package/dist/nervous-system/adapters/GlobalWorkspaceAdapter.js.map +1 -0
- package/dist/nervous-system/adapters/HdcMemoryAdapter.d.ts +444 -0
- package/dist/nervous-system/adapters/HdcMemoryAdapter.d.ts.map +1 -0
- package/dist/nervous-system/adapters/HdcMemoryAdapter.js +715 -0
- package/dist/nervous-system/adapters/HdcMemoryAdapter.js.map +1 -0
- package/dist/nervous-system/adapters/ReflexLayer.d.ts +231 -0
- package/dist/nervous-system/adapters/ReflexLayer.d.ts.map +1 -0
- package/dist/nervous-system/adapters/ReflexLayer.js +309 -0
- package/dist/nervous-system/adapters/ReflexLayer.js.map +1 -0
- package/dist/nervous-system/index.d.ts +25 -0
- package/dist/nervous-system/index.d.ts.map +1 -0
- package/dist/nervous-system/index.js +80 -0
- package/dist/nervous-system/index.js.map +1 -0
- package/dist/nervous-system/integration/BTSPLearningEngine.d.ts +266 -0
- package/dist/nervous-system/integration/BTSPLearningEngine.d.ts.map +1 -0
- package/dist/nervous-system/integration/BTSPLearningEngine.js +587 -0
- package/dist/nervous-system/integration/BTSPLearningEngine.js.map +1 -0
- package/dist/nervous-system/integration/CircadianAgent.d.ts +389 -0
- package/dist/nervous-system/integration/CircadianAgent.d.ts.map +1 -0
- package/dist/nervous-system/integration/CircadianAgent.js +696 -0
- package/dist/nervous-system/integration/CircadianAgent.js.map +1 -0
- package/dist/nervous-system/integration/HybridPatternStore.d.ts +244 -0
- package/dist/nervous-system/integration/HybridPatternStore.d.ts.map +1 -0
- package/dist/nervous-system/integration/HybridPatternStore.js +622 -0
- package/dist/nervous-system/integration/HybridPatternStore.js.map +1 -0
- package/dist/nervous-system/integration/NervousSystemEnhancement.d.ts +459 -0
- package/dist/nervous-system/integration/NervousSystemEnhancement.d.ts.map +1 -0
- package/dist/nervous-system/integration/NervousSystemEnhancement.js +921 -0
- package/dist/nervous-system/integration/NervousSystemEnhancement.js.map +1 -0
- package/dist/nervous-system/integration/WorkspaceAgent.d.ts +398 -0
- package/dist/nervous-system/integration/WorkspaceAgent.d.ts.map +1 -0
- package/dist/nervous-system/integration/WorkspaceAgent.js +722 -0
- package/dist/nervous-system/integration/WorkspaceAgent.js.map +1 -0
- package/dist/nervous-system/integration/index.d.ts +22 -0
- package/dist/nervous-system/integration/index.d.ts.map +1 -0
- package/dist/nervous-system/integration/index.js +44 -0
- package/dist/nervous-system/integration/index.js.map +1 -0
- package/dist/nervous-system/persistence/BTSPSerializer.d.ts +96 -0
- package/dist/nervous-system/persistence/BTSPSerializer.d.ts.map +1 -0
- package/dist/nervous-system/persistence/BTSPSerializer.js +223 -0
- package/dist/nervous-system/persistence/BTSPSerializer.js.map +1 -0
- package/dist/nervous-system/persistence/CircadianSerializer.d.ts +90 -0
- package/dist/nervous-system/persistence/CircadianSerializer.d.ts.map +1 -0
- package/dist/nervous-system/persistence/CircadianSerializer.js +239 -0
- package/dist/nervous-system/persistence/CircadianSerializer.js.map +1 -0
- package/dist/nervous-system/persistence/HdcSerializer.d.ts +100 -0
- package/dist/nervous-system/persistence/HdcSerializer.d.ts.map +1 -0
- package/dist/nervous-system/persistence/HdcSerializer.js +259 -0
- package/dist/nervous-system/persistence/HdcSerializer.js.map +1 -0
- package/dist/nervous-system/persistence/INervousSystemStore.d.ts +208 -0
- package/dist/nervous-system/persistence/INervousSystemStore.d.ts.map +1 -0
- package/dist/nervous-system/persistence/INervousSystemStore.js +11 -0
- package/dist/nervous-system/persistence/INervousSystemStore.js.map +1 -0
- package/dist/nervous-system/persistence/NervousSystemPersistenceManager.d.ts +187 -0
- package/dist/nervous-system/persistence/NervousSystemPersistenceManager.d.ts.map +1 -0
- package/dist/nervous-system/persistence/NervousSystemPersistenceManager.js +411 -0
- package/dist/nervous-system/persistence/NervousSystemPersistenceManager.js.map +1 -0
- package/dist/nervous-system/persistence/SQLiteNervousSystemStore.d.ts +98 -0
- package/dist/nervous-system/persistence/SQLiteNervousSystemStore.d.ts.map +1 -0
- package/dist/nervous-system/persistence/SQLiteNervousSystemStore.js +510 -0
- package/dist/nervous-system/persistence/SQLiteNervousSystemStore.js.map +1 -0
- package/dist/nervous-system/persistence/index.d.ts +22 -0
- package/dist/nervous-system/persistence/index.d.ts.map +1 -0
- package/dist/nervous-system/persistence/index.js +45 -0
- package/dist/nervous-system/persistence/index.js.map +1 -0
- package/dist/nervous-system/wasm-loader.d.ts +52 -0
- package/dist/nervous-system/wasm-loader.d.ts.map +1 -0
- package/dist/nervous-system/wasm-loader.js +188 -0
- package/dist/nervous-system/wasm-loader.js.map +1 -0
- package/dist/persistence/HybridPersistenceProvider.d.ts +184 -0
- package/dist/persistence/HybridPersistenceProvider.d.ts.map +1 -0
- package/dist/persistence/HybridPersistenceProvider.js +1086 -0
- package/dist/persistence/HybridPersistenceProvider.js.map +1 -0
- package/dist/persistence/IPersistenceProvider.d.ts +657 -0
- package/dist/persistence/IPersistenceProvider.d.ts.map +1 -0
- package/dist/persistence/IPersistenceProvider.js +11 -0
- package/dist/persistence/IPersistenceProvider.js.map +1 -0
- package/dist/persistence/SupabaseConfig.d.ts +176 -0
- package/dist/persistence/SupabaseConfig.d.ts.map +1 -0
- package/dist/persistence/SupabaseConfig.js +277 -0
- package/dist/persistence/SupabaseConfig.js.map +1 -0
- package/dist/persistence/SupabasePersistenceProvider.d.ts +143 -0
- package/dist/persistence/SupabasePersistenceProvider.d.ts.map +1 -0
- package/dist/persistence/SupabasePersistenceProvider.js +955 -0
- package/dist/persistence/SupabasePersistenceProvider.js.map +1 -0
- package/dist/persistence/adapters/CodeIntelligenceSyncAdapter.d.ts +213 -0
- package/dist/persistence/adapters/CodeIntelligenceSyncAdapter.d.ts.map +1 -0
- package/dist/persistence/adapters/CodeIntelligenceSyncAdapter.js +468 -0
- package/dist/persistence/adapters/CodeIntelligenceSyncAdapter.js.map +1 -0
- package/dist/persistence/adapters/MemorySyncAdapter.d.ts +115 -0
- package/dist/persistence/adapters/MemorySyncAdapter.d.ts.map +1 -0
- package/dist/persistence/adapters/MemorySyncAdapter.js +291 -0
- package/dist/persistence/adapters/MemorySyncAdapter.js.map +1 -0
- package/dist/persistence/adapters/index.d.ts +11 -0
- package/dist/persistence/adapters/index.d.ts.map +1 -0
- package/dist/persistence/adapters/index.js +20 -0
- package/dist/persistence/adapters/index.js.map +1 -0
- package/dist/persistence/index.d.ts +14 -0
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +36 -1
- package/dist/persistence/index.js.map +1 -1
- package/package.json +3 -1
|
@@ -0,0 +1,510 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* SQLite Nervous System Store
|
|
4
|
+
*
|
|
5
|
+
* Persists nervous system component state to SQLite database.
|
|
6
|
+
* Uses the existing SwarmMemoryManager's database connection.
|
|
7
|
+
*
|
|
8
|
+
* @module nervous-system/persistence/SQLiteNervousSystemStore
|
|
9
|
+
*/
|
|
10
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
13
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
14
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
15
|
+
}
|
|
16
|
+
Object.defineProperty(o, k2, desc);
|
|
17
|
+
}) : (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
o[k2] = m[k];
|
|
20
|
+
}));
|
|
21
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
22
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
23
|
+
}) : function(o, v) {
|
|
24
|
+
o["default"] = v;
|
|
25
|
+
});
|
|
26
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
27
|
+
var ownKeys = function(o) {
|
|
28
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
29
|
+
var ar = [];
|
|
30
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
31
|
+
return ar;
|
|
32
|
+
};
|
|
33
|
+
return ownKeys(o);
|
|
34
|
+
};
|
|
35
|
+
return function (mod) {
|
|
36
|
+
if (mod && mod.__esModule) return mod;
|
|
37
|
+
var result = {};
|
|
38
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
39
|
+
__setModuleDefault(result, mod);
|
|
40
|
+
return result;
|
|
41
|
+
};
|
|
42
|
+
})();
|
|
43
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
+
exports.SQLiteNervousSystemStore = void 0;
|
|
45
|
+
exports.createSQLiteNervousSystemStore = createSQLiteNervousSystemStore;
|
|
46
|
+
const Logger_js_1 = require("../../utils/Logger.js");
|
|
47
|
+
/**
|
|
48
|
+
* SQLite implementation of nervous system state storage
|
|
49
|
+
*/
|
|
50
|
+
class SQLiteNervousSystemStore {
|
|
51
|
+
constructor(config = {}) {
|
|
52
|
+
this.db = null;
|
|
53
|
+
this.initialized = false;
|
|
54
|
+
// Prepared statements for performance
|
|
55
|
+
this.stmtSaveState = null;
|
|
56
|
+
this.stmtLoadState = null;
|
|
57
|
+
this.stmtDeleteState = null;
|
|
58
|
+
this.stmtDeleteAllState = null;
|
|
59
|
+
this.stmtListAgents = null;
|
|
60
|
+
this.stmtGetMetadata = null;
|
|
61
|
+
this.logger = Logger_js_1.Logger.getInstance();
|
|
62
|
+
this.config = {
|
|
63
|
+
db: config.db ?? null,
|
|
64
|
+
dbPath: config.dbPath ?? '.agentic-qe/memory.db',
|
|
65
|
+
tablePrefix: config.tablePrefix ?? 'nervous_system',
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Initialize the store - create tables if needed
|
|
70
|
+
*/
|
|
71
|
+
async initialize() {
|
|
72
|
+
if (this.initialized)
|
|
73
|
+
return;
|
|
74
|
+
try {
|
|
75
|
+
// Get database connection
|
|
76
|
+
if (this.config.db) {
|
|
77
|
+
this.db = this.config.db;
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
// Dynamic import to avoid issues if better-sqlite3 not available
|
|
81
|
+
const BetterSqlite3 = (await Promise.resolve().then(() => __importStar(require('better-sqlite3')))).default;
|
|
82
|
+
this.db = new BetterSqlite3(this.config.dbPath);
|
|
83
|
+
}
|
|
84
|
+
// Create table
|
|
85
|
+
this.createTables();
|
|
86
|
+
// Prepare statements
|
|
87
|
+
this.prepareStatements();
|
|
88
|
+
this.initialized = true;
|
|
89
|
+
this.logger.info('SQLiteNervousSystemStore initialized', {
|
|
90
|
+
dbPath: this.config.dbPath,
|
|
91
|
+
tablePrefix: this.config.tablePrefix,
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
this.logger.error('Failed to initialize SQLiteNervousSystemStore:', error);
|
|
96
|
+
throw new Error(`SQLiteNervousSystemStore initialization failed: ${error}`);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Create required tables
|
|
101
|
+
*/
|
|
102
|
+
createTables() {
|
|
103
|
+
const tableName = `${this.config.tablePrefix}_state`;
|
|
104
|
+
this.db.exec(`
|
|
105
|
+
CREATE TABLE IF NOT EXISTS ${tableName} (
|
|
106
|
+
agent_id TEXT NOT NULL,
|
|
107
|
+
component TEXT NOT NULL,
|
|
108
|
+
state_data BLOB,
|
|
109
|
+
state_json TEXT,
|
|
110
|
+
version INTEGER DEFAULT 1,
|
|
111
|
+
size_bytes INTEGER DEFAULT 0,
|
|
112
|
+
created_at INTEGER DEFAULT (strftime('%s', 'now') * 1000),
|
|
113
|
+
updated_at INTEGER DEFAULT (strftime('%s', 'now') * 1000),
|
|
114
|
+
PRIMARY KEY (agent_id, component)
|
|
115
|
+
);
|
|
116
|
+
|
|
117
|
+
CREATE INDEX IF NOT EXISTS idx_${this.config.tablePrefix}_agent
|
|
118
|
+
ON ${tableName}(agent_id);
|
|
119
|
+
|
|
120
|
+
CREATE INDEX IF NOT EXISTS idx_${this.config.tablePrefix}_component
|
|
121
|
+
ON ${tableName}(component);
|
|
122
|
+
|
|
123
|
+
CREATE INDEX IF NOT EXISTS idx_${this.config.tablePrefix}_updated
|
|
124
|
+
ON ${tableName}(updated_at);
|
|
125
|
+
`);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Prepare SQL statements for reuse
|
|
129
|
+
*/
|
|
130
|
+
prepareStatements() {
|
|
131
|
+
const tableName = `${this.config.tablePrefix}_state`;
|
|
132
|
+
this.stmtSaveState = this.db.prepare(`
|
|
133
|
+
INSERT INTO ${tableName} (agent_id, component, state_data, state_json, version, size_bytes, updated_at)
|
|
134
|
+
VALUES (?, ?, ?, ?, ?, ?, ?)
|
|
135
|
+
ON CONFLICT(agent_id, component) DO UPDATE SET
|
|
136
|
+
state_data = excluded.state_data,
|
|
137
|
+
state_json = excluded.state_json,
|
|
138
|
+
version = excluded.version,
|
|
139
|
+
size_bytes = excluded.size_bytes,
|
|
140
|
+
updated_at = excluded.updated_at
|
|
141
|
+
`);
|
|
142
|
+
this.stmtLoadState = this.db.prepare(`
|
|
143
|
+
SELECT state_data, state_json, version, size_bytes, created_at, updated_at
|
|
144
|
+
FROM ${tableName}
|
|
145
|
+
WHERE agent_id = ? AND component = ?
|
|
146
|
+
`);
|
|
147
|
+
this.stmtDeleteState = this.db.prepare(`
|
|
148
|
+
DELETE FROM ${tableName}
|
|
149
|
+
WHERE agent_id = ? AND component = ?
|
|
150
|
+
`);
|
|
151
|
+
this.stmtDeleteAllState = this.db.prepare(`
|
|
152
|
+
DELETE FROM ${tableName}
|
|
153
|
+
WHERE agent_id = ?
|
|
154
|
+
`);
|
|
155
|
+
this.stmtListAgents = this.db.prepare(`
|
|
156
|
+
SELECT DISTINCT agent_id FROM ${tableName}
|
|
157
|
+
`);
|
|
158
|
+
this.stmtGetMetadata = this.db.prepare(`
|
|
159
|
+
SELECT agent_id, component, version, size_bytes, created_at, updated_at
|
|
160
|
+
FROM ${tableName}
|
|
161
|
+
WHERE agent_id = ?
|
|
162
|
+
`);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Ensure store is initialized
|
|
166
|
+
*/
|
|
167
|
+
ensureInitialized() {
|
|
168
|
+
if (!this.initialized || !this.db) {
|
|
169
|
+
throw new Error('SQLiteNervousSystemStore not initialized. Call initialize() first.');
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Shutdown the store
|
|
174
|
+
*/
|
|
175
|
+
async shutdown() {
|
|
176
|
+
if (!this.initialized)
|
|
177
|
+
return;
|
|
178
|
+
try {
|
|
179
|
+
// Don't close db if it was passed in externally
|
|
180
|
+
if (!this.config.db && this.db) {
|
|
181
|
+
this.db.close();
|
|
182
|
+
}
|
|
183
|
+
this.db = null;
|
|
184
|
+
this.stmtSaveState = null;
|
|
185
|
+
this.stmtLoadState = null;
|
|
186
|
+
this.stmtDeleteState = null;
|
|
187
|
+
this.stmtDeleteAllState = null;
|
|
188
|
+
this.stmtListAgents = null;
|
|
189
|
+
this.stmtGetMetadata = null;
|
|
190
|
+
this.initialized = false;
|
|
191
|
+
this.logger.info('SQLiteNervousSystemStore shutdown complete');
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
this.logger.error('Error during SQLiteNervousSystemStore shutdown:', error);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
// ============================================
|
|
198
|
+
// HDC State Operations
|
|
199
|
+
// ============================================
|
|
200
|
+
async saveHdcState(agentId, state) {
|
|
201
|
+
this.ensureInitialized();
|
|
202
|
+
try {
|
|
203
|
+
// Serialize state to binary (for patterns) and JSON (for metadata)
|
|
204
|
+
const stateJson = JSON.stringify({
|
|
205
|
+
version: state.version,
|
|
206
|
+
dimension: state.dimension,
|
|
207
|
+
serializedAt: state.serializedAt,
|
|
208
|
+
patternCount: state.patterns.length,
|
|
209
|
+
codebookSizes: {
|
|
210
|
+
type: state.codebooks.type.length,
|
|
211
|
+
domain: state.codebooks.domain.length,
|
|
212
|
+
framework: state.codebooks.framework.length,
|
|
213
|
+
},
|
|
214
|
+
});
|
|
215
|
+
// Pack binary data (codebooks, role vectors, patterns)
|
|
216
|
+
const stateData = this.packHdcBinaryData(state);
|
|
217
|
+
this.stmtSaveState.run(agentId, 'hdc', stateData, stateJson, state.version, stateData.length, Date.now());
|
|
218
|
+
this.logger.debug('Saved HDC state', { agentId, size: stateData.length });
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
this.logger.error('Failed to save HDC state:', error);
|
|
222
|
+
throw error;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
async loadHdcState(agentId) {
|
|
226
|
+
this.ensureInitialized();
|
|
227
|
+
try {
|
|
228
|
+
const row = this.stmtLoadState.get(agentId, 'hdc');
|
|
229
|
+
if (!row || !row.state_data) {
|
|
230
|
+
return null;
|
|
231
|
+
}
|
|
232
|
+
// Unpack binary data
|
|
233
|
+
const state = this.unpackHdcBinaryData(row.state_data, JSON.parse(row.state_json || '{}'));
|
|
234
|
+
this.logger.debug('Loaded HDC state', { agentId, patterns: state.patterns.length });
|
|
235
|
+
return state;
|
|
236
|
+
}
|
|
237
|
+
catch (error) {
|
|
238
|
+
this.logger.error('Failed to load HDC state:', error);
|
|
239
|
+
throw error;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
async deleteHdcState(agentId) {
|
|
243
|
+
this.ensureInitialized();
|
|
244
|
+
this.stmtDeleteState.run(agentId, 'hdc');
|
|
245
|
+
this.logger.debug('Deleted HDC state', { agentId });
|
|
246
|
+
}
|
|
247
|
+
// ============================================
|
|
248
|
+
// BTSP State Operations
|
|
249
|
+
// ============================================
|
|
250
|
+
async saveBtspState(agentId, state) {
|
|
251
|
+
this.ensureInitialized();
|
|
252
|
+
try {
|
|
253
|
+
// Store as JSON since all data is numeric arrays
|
|
254
|
+
const stateJson = JSON.stringify(state);
|
|
255
|
+
const sizeBytes = stateJson.length;
|
|
256
|
+
this.stmtSaveState.run(agentId, 'btsp', null, // No binary data needed
|
|
257
|
+
stateJson, state.version, sizeBytes, Date.now());
|
|
258
|
+
this.logger.debug('Saved BTSP state', { agentId, size: sizeBytes });
|
|
259
|
+
}
|
|
260
|
+
catch (error) {
|
|
261
|
+
this.logger.error('Failed to save BTSP state:', error);
|
|
262
|
+
throw error;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
async loadBtspState(agentId) {
|
|
266
|
+
this.ensureInitialized();
|
|
267
|
+
try {
|
|
268
|
+
const row = this.stmtLoadState.get(agentId, 'btsp');
|
|
269
|
+
if (!row || !row.state_json) {
|
|
270
|
+
return null;
|
|
271
|
+
}
|
|
272
|
+
const state = JSON.parse(row.state_json);
|
|
273
|
+
this.logger.debug('Loaded BTSP state', { agentId, associations: state.associationCount });
|
|
274
|
+
return state;
|
|
275
|
+
}
|
|
276
|
+
catch (error) {
|
|
277
|
+
this.logger.error('Failed to load BTSP state:', error);
|
|
278
|
+
throw error;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
async deleteBtspState(agentId) {
|
|
282
|
+
this.ensureInitialized();
|
|
283
|
+
this.stmtDeleteState.run(agentId, 'btsp');
|
|
284
|
+
this.logger.debug('Deleted BTSP state', { agentId });
|
|
285
|
+
}
|
|
286
|
+
// ============================================
|
|
287
|
+
// Circadian State Operations
|
|
288
|
+
// ============================================
|
|
289
|
+
async saveCircadianState(agentId, state) {
|
|
290
|
+
this.ensureInitialized();
|
|
291
|
+
try {
|
|
292
|
+
const stateJson = JSON.stringify(state);
|
|
293
|
+
const sizeBytes = stateJson.length;
|
|
294
|
+
this.stmtSaveState.run(agentId, 'circadian', null, stateJson, state.version, sizeBytes, Date.now());
|
|
295
|
+
this.logger.debug('Saved Circadian state', {
|
|
296
|
+
agentId,
|
|
297
|
+
phase: state.state.phase,
|
|
298
|
+
size: sizeBytes,
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
catch (error) {
|
|
302
|
+
this.logger.error('Failed to save Circadian state:', error);
|
|
303
|
+
throw error;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
async loadCircadianState(agentId) {
|
|
307
|
+
this.ensureInitialized();
|
|
308
|
+
try {
|
|
309
|
+
const row = this.stmtLoadState.get(agentId, 'circadian');
|
|
310
|
+
if (!row || !row.state_json) {
|
|
311
|
+
return null;
|
|
312
|
+
}
|
|
313
|
+
const state = JSON.parse(row.state_json);
|
|
314
|
+
this.logger.debug('Loaded Circadian state', { agentId, phase: state.state.phase });
|
|
315
|
+
return state;
|
|
316
|
+
}
|
|
317
|
+
catch (error) {
|
|
318
|
+
this.logger.error('Failed to load Circadian state:', error);
|
|
319
|
+
throw error;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
async deleteCircadianState(agentId) {
|
|
323
|
+
this.ensureInitialized();
|
|
324
|
+
this.stmtDeleteState.run(agentId, 'circadian');
|
|
325
|
+
this.logger.debug('Deleted Circadian state', { agentId });
|
|
326
|
+
}
|
|
327
|
+
// ============================================
|
|
328
|
+
// Bulk Operations
|
|
329
|
+
// ============================================
|
|
330
|
+
async deleteAllState(agentId) {
|
|
331
|
+
this.ensureInitialized();
|
|
332
|
+
this.stmtDeleteAllState.run(agentId);
|
|
333
|
+
this.logger.info('Deleted all state', { agentId });
|
|
334
|
+
}
|
|
335
|
+
async listAgents() {
|
|
336
|
+
this.ensureInitialized();
|
|
337
|
+
const rows = this.stmtListAgents.all();
|
|
338
|
+
return rows.map((r) => r.agent_id);
|
|
339
|
+
}
|
|
340
|
+
async getStateMetadata(agentId, component) {
|
|
341
|
+
this.ensureInitialized();
|
|
342
|
+
let rows;
|
|
343
|
+
if (component) {
|
|
344
|
+
rows = [this.stmtLoadState.get(agentId, component)].filter(Boolean);
|
|
345
|
+
}
|
|
346
|
+
else {
|
|
347
|
+
rows = this.stmtGetMetadata.all(agentId);
|
|
348
|
+
}
|
|
349
|
+
return rows.map((row) => ({
|
|
350
|
+
agentId: row.agent_id,
|
|
351
|
+
component: row.component,
|
|
352
|
+
version: row.version,
|
|
353
|
+
sizeBytes: row.size_bytes,
|
|
354
|
+
storedAt: new Date(row.created_at),
|
|
355
|
+
updatedAt: new Date(row.updated_at),
|
|
356
|
+
}));
|
|
357
|
+
}
|
|
358
|
+
// ============================================
|
|
359
|
+
// Store Information
|
|
360
|
+
// ============================================
|
|
361
|
+
getStoreInfo() {
|
|
362
|
+
return {
|
|
363
|
+
type: 'sqlite',
|
|
364
|
+
version: '1.0.0',
|
|
365
|
+
location: this.config.dbPath,
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
// ============================================
|
|
369
|
+
// Binary Packing Utilities
|
|
370
|
+
// ============================================
|
|
371
|
+
/**
|
|
372
|
+
* Pack HDC state into a single binary buffer
|
|
373
|
+
* Format:
|
|
374
|
+
* [4 bytes: dimension]
|
|
375
|
+
* [4 bytes: num type codebook entries]
|
|
376
|
+
* [... type codebook entries: key length (2) + key + vector (1250)]
|
|
377
|
+
* [4 bytes: num domain codebook entries]
|
|
378
|
+
* [... domain codebook entries]
|
|
379
|
+
* [4 bytes: num framework codebook entries]
|
|
380
|
+
* [... framework codebook entries]
|
|
381
|
+
* [4 × 1250 bytes: role vectors]
|
|
382
|
+
* [4 bytes: num patterns]
|
|
383
|
+
* [... patterns: key length (2) + key + vector (1250)]
|
|
384
|
+
*/
|
|
385
|
+
packHdcBinaryData(state) {
|
|
386
|
+
const chunks = [];
|
|
387
|
+
// Helper to write codebook
|
|
388
|
+
const writeCodebook = (entries) => {
|
|
389
|
+
const countBuf = Buffer.alloc(4);
|
|
390
|
+
countBuf.writeUInt32LE(entries.length);
|
|
391
|
+
chunks.push(countBuf);
|
|
392
|
+
for (const [key, vector] of entries) {
|
|
393
|
+
const keyBuf = Buffer.from(key, 'utf8');
|
|
394
|
+
const keyLenBuf = Buffer.alloc(2);
|
|
395
|
+
keyLenBuf.writeUInt16LE(keyBuf.length);
|
|
396
|
+
chunks.push(keyLenBuf);
|
|
397
|
+
chunks.push(keyBuf);
|
|
398
|
+
chunks.push(Buffer.from(vector));
|
|
399
|
+
}
|
|
400
|
+
};
|
|
401
|
+
// Dimension
|
|
402
|
+
const dimBuf = Buffer.alloc(4);
|
|
403
|
+
dimBuf.writeUInt32LE(state.dimension);
|
|
404
|
+
chunks.push(dimBuf);
|
|
405
|
+
// Codebooks
|
|
406
|
+
writeCodebook(state.codebooks.type);
|
|
407
|
+
writeCodebook(state.codebooks.domain);
|
|
408
|
+
writeCodebook(state.codebooks.framework);
|
|
409
|
+
// Role vectors
|
|
410
|
+
chunks.push(Buffer.from(state.roleVectors.type));
|
|
411
|
+
chunks.push(Buffer.from(state.roleVectors.domain));
|
|
412
|
+
chunks.push(Buffer.from(state.roleVectors.content));
|
|
413
|
+
chunks.push(Buffer.from(state.roleVectors.framework));
|
|
414
|
+
// Patterns
|
|
415
|
+
const patternCountBuf = Buffer.alloc(4);
|
|
416
|
+
patternCountBuf.writeUInt32LE(state.patterns.length);
|
|
417
|
+
chunks.push(patternCountBuf);
|
|
418
|
+
for (const pattern of state.patterns) {
|
|
419
|
+
const keyBuf = Buffer.from(pattern.key, 'utf8');
|
|
420
|
+
const keyLenBuf = Buffer.alloc(2);
|
|
421
|
+
keyLenBuf.writeUInt16LE(keyBuf.length);
|
|
422
|
+
chunks.push(keyLenBuf);
|
|
423
|
+
chunks.push(keyBuf);
|
|
424
|
+
chunks.push(Buffer.from(pattern.vector));
|
|
425
|
+
// Note: metadata is stored in JSON, not binary
|
|
426
|
+
}
|
|
427
|
+
return Buffer.concat(chunks);
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* Unpack HDC state from binary buffer
|
|
431
|
+
*/
|
|
432
|
+
unpackHdcBinaryData(data, metadata) {
|
|
433
|
+
let offset = 0;
|
|
434
|
+
const readUInt32 = () => {
|
|
435
|
+
const val = data.readUInt32LE(offset);
|
|
436
|
+
offset += 4;
|
|
437
|
+
return val;
|
|
438
|
+
};
|
|
439
|
+
const readUInt16 = () => {
|
|
440
|
+
const val = data.readUInt16LE(offset);
|
|
441
|
+
offset += 2;
|
|
442
|
+
return val;
|
|
443
|
+
};
|
|
444
|
+
const readBytes = (len) => {
|
|
445
|
+
const buf = data.slice(offset, offset + len);
|
|
446
|
+
offset += len;
|
|
447
|
+
return new Uint8Array(buf);
|
|
448
|
+
};
|
|
449
|
+
const readString = (len) => {
|
|
450
|
+
const buf = data.slice(offset, offset + len);
|
|
451
|
+
offset += len;
|
|
452
|
+
return buf.toString('utf8');
|
|
453
|
+
};
|
|
454
|
+
// Helper to read codebook
|
|
455
|
+
const readCodebook = (vectorSize) => {
|
|
456
|
+
const count = readUInt32();
|
|
457
|
+
const entries = [];
|
|
458
|
+
for (let i = 0; i < count; i++) {
|
|
459
|
+
const keyLen = readUInt16();
|
|
460
|
+
const key = readString(keyLen);
|
|
461
|
+
const vector = readBytes(vectorSize);
|
|
462
|
+
entries.push([key, vector]);
|
|
463
|
+
}
|
|
464
|
+
return entries;
|
|
465
|
+
};
|
|
466
|
+
// Dimension
|
|
467
|
+
const dimension = readUInt32();
|
|
468
|
+
const vectorSize = dimension / 8;
|
|
469
|
+
// Codebooks
|
|
470
|
+
const typeCodebook = readCodebook(vectorSize);
|
|
471
|
+
const domainCodebook = readCodebook(vectorSize);
|
|
472
|
+
const frameworkCodebook = readCodebook(vectorSize);
|
|
473
|
+
// Role vectors
|
|
474
|
+
const roleVectors = {
|
|
475
|
+
type: readBytes(vectorSize),
|
|
476
|
+
domain: readBytes(vectorSize),
|
|
477
|
+
content: readBytes(vectorSize),
|
|
478
|
+
framework: readBytes(vectorSize),
|
|
479
|
+
};
|
|
480
|
+
// Patterns
|
|
481
|
+
const patternCount = readUInt32();
|
|
482
|
+
const patterns = [];
|
|
483
|
+
for (let i = 0; i < patternCount; i++) {
|
|
484
|
+
const keyLen = readUInt16();
|
|
485
|
+
const key = readString(keyLen);
|
|
486
|
+
const vector = readBytes(vectorSize);
|
|
487
|
+
patterns.push({ key, vector });
|
|
488
|
+
}
|
|
489
|
+
return {
|
|
490
|
+
version: 1,
|
|
491
|
+
dimension,
|
|
492
|
+
codebooks: {
|
|
493
|
+
type: typeCodebook,
|
|
494
|
+
domain: domainCodebook,
|
|
495
|
+
framework: frameworkCodebook,
|
|
496
|
+
},
|
|
497
|
+
roleVectors,
|
|
498
|
+
patterns,
|
|
499
|
+
serializedAt: Date.now(),
|
|
500
|
+
};
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
exports.SQLiteNervousSystemStore = SQLiteNervousSystemStore;
|
|
504
|
+
/**
|
|
505
|
+
* Factory function to create SQLite store
|
|
506
|
+
*/
|
|
507
|
+
function createSQLiteNervousSystemStore(config) {
|
|
508
|
+
return new SQLiteNervousSystemStore(config);
|
|
509
|
+
}
|
|
510
|
+
//# sourceMappingURL=SQLiteNervousSystemStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SQLiteNervousSystemStore.js","sourceRoot":"","sources":["../../../src/nervous-system/persistence/SQLiteNervousSystemStore.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqmBH,wEAIC;AA9lBD,qDAA+C;AAc/C;;GAEG;AACH,MAAa,wBAAwB;IAcnC,YAAY,SAAyC,EAAE;QAZ/C,OAAE,GAA6B,IAAI,CAAC;QAEpC,gBAAW,GAAG,KAAK,CAAC;QAE5B,sCAAsC;QAC9B,kBAAa,GAA8B,IAAI,CAAC;QAChD,kBAAa,GAA8B,IAAI,CAAC;QAChD,oBAAe,GAA8B,IAAI,CAAC;QAClD,uBAAkB,GAA8B,IAAI,CAAC;QACrD,mBAAc,GAA8B,IAAI,CAAC;QACjD,oBAAe,GAA8B,IAAI,CAAC;QAGxD,IAAI,CAAC,MAAM,GAAG,kBAAM,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG;YACZ,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,IAAoC;YACrD,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,uBAAuB;YAChD,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,gBAAgB;SACpD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAE7B,IAAI,CAAC;YACH,0BAA0B;YAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACnB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,iEAAiE;gBACjE,MAAM,aAAa,GAAG,CAAC,wDAAa,gBAAgB,GAAC,CAAC,CAAC,OAAO,CAAC;gBAC/D,IAAI,CAAC,EAAE,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAClD,CAAC;YAED,eAAe;YACf,IAAI,CAAC,YAAY,EAAE,CAAC;YAEpB,qBAAqB;YACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE;gBACvD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC1B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;aACrC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,mDAAmD,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;OAEG;IACK,YAAY;QAClB,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,QAAQ,CAAC;QAErD,IAAI,CAAC,EAAG,CAAC,IAAI,CAAC;mCACiB,SAAS;;;;;;;;;;;;uCAYL,IAAI,CAAC,MAAM,CAAC,WAAW;aACjD,SAAS;;uCAEiB,IAAI,CAAC,MAAM,CAAC,WAAW;aACjD,SAAS;;uCAEiB,IAAI,CAAC,MAAM,CAAC,WAAW;aACjD,SAAS;KACjB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,QAAQ,CAAC;QAErD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC;oBACtB,SAAS;;;;;;;;KAQxB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC;;aAE7B,SAAS;;KAEjB,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC;oBACxB,SAAS;;KAExB,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC;oBAC3B,SAAS;;KAExB,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC;sCACL,SAAS;KAC1C,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,EAAG,CAAC,OAAO,CAAC;;aAE/B,SAAS;;KAEjB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAE9B,IAAI,CAAC;YACH,gDAAgD;YAChD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBAC/B,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAClB,CAAC;YAED,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;YACf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAEzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,+CAA+C;IAC/C,uBAAuB;IACvB,+CAA+C;IAE/C,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,KAAyB;QAC3D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,mEAAmE;YACnE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;gBACnC,aAAa,EAAE;oBACb,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM;oBACjC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM;oBACrC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM;iBAC5C;aACF,CAAC,CAAC;YAEH,uDAAuD;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAEhD,IAAI,CAAC,aAAc,CAAC,GAAG,CACrB,OAAO,EACP,KAAK,EACL,SAAS,EACT,SAAS,EACT,KAAK,CAAC,OAAO,EACb,SAAS,CAAC,MAAM,EAChB,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,aAAc,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAIrC,CAAC;YAEd,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,qBAAqB;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CACpC,GAAG,CAAC,UAAU,EACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,CACnC,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACpF,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,eAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,+CAA+C;IAC/C,wBAAwB;IACxB,+CAA+C;IAE/C,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,KAA0B;QAC7D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,iDAAiD;YACjD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;YAEnC,IAAI,CAAC,aAAc,CAAC,GAAG,CACrB,OAAO,EACP,MAAM,EACN,IAAI,EAAG,wBAAwB;YAC/B,SAAS,EACT,KAAK,CAAC,OAAO,EACb,SAAS,EACT,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAe;QACjC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,aAAc,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAEtC,CAAC;YAEd,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAwB,CAAC;YAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;YAC1F,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAe;QACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,eAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,+CAA+C;IAC/C,6BAA6B;IAC7B,+CAA+C;IAE/C,KAAK,CAAC,kBAAkB,CAAC,OAAe,EAAE,KAA+B;QACvE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;YAEnC,IAAI,CAAC,aAAc,CAAC,GAAG,CACrB,OAAO,EACP,WAAW,EACX,IAAI,EACJ,SAAS,EACT,KAAK,CAAC,OAAO,EACb,SAAS,EACT,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACzC,OAAO;gBACP,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK;gBACxB,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAAe;QACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,aAAc,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAE3C,CAAC;YAEd,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAA6B,CAAC;YACrE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACnF,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,OAAe;QACxC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,eAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,+CAA+C;IAC/C,kBAAkB;IAClB,+CAA+C;IAE/C,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,kBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAe,CAAC,GAAG,EAAiC,CAAC;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,OAAe,EACf,SAAkC;QAElC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,IAOF,CAAC;QAEH,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,GAAG,CAAC,IAAI,CAAC,aAAc,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,eAAgB,CAAC,GAAG,CAAC,OAAO,CAAQ,CAAC;QACnD,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxB,OAAO,EAAE,GAAG,CAAC,QAAQ;YACrB,SAAS,EAAE,GAAG,CAAC,SAAmC;YAClD,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,QAAQ,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAClC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;SACpC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,+CAA+C;IAC/C,oBAAoB;IACpB,+CAA+C;IAE/C,YAAY;QAKV,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SAC7B,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,2BAA2B;IAC3B,+CAA+C;IAE/C;;;;;;;;;;;;;OAaG;IACK,iBAAiB,CAAC,KAAyB;QACjD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,2BAA2B;QAC3B,MAAM,aAAa,GAAG,CAAC,OAAoC,EAAE,EAAE;YAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEtB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACpC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBACxC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC;QAEF,YAAY;QACZ,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEpB,YAAY;QACZ,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACpC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACtC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAEzC,eAAe;QACf,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;QAEtD,WAAW;QACX,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxC,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAE7B,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACzC,+CAA+C;QACjD,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,IAAY,EACZ,QAAuD;QAEvD,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,MAAM,UAAU,GAAG,GAAW,EAAE;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,IAAI,CAAC,CAAC;YACZ,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,GAAW,EAAE;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,IAAI,CAAC,CAAC;YACZ,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,CAAC,GAAW,EAAc,EAAE;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,CAAC;YACd,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAU,EAAE;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,CAAC;YACd,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEF,0BAA0B;QAC1B,MAAM,YAAY,GAAG,CAAC,UAAkB,EAA+B,EAAE;YACvE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAgC,EAAE,CAAC;YAEhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC;QAEF,YAAY;QACZ,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC;QAEjC,YAAY;QACZ,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,cAAc,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,iBAAiB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QAEnD,eAAe;QACf,MAAM,WAAW,GAAG;YAClB,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC;YAC3B,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC;YAC7B,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC;YAC9B,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC;SACjC,CAAC;QAEF,WAAW;QACX,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAmC,EAAE,CAAC;QAEpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,CAAC;YACV,SAAS;YACT,SAAS,EAAE;gBACT,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,iBAAiB;aAC7B;YACD,WAAW;YACX,QAAQ;YACR,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;SACzB,CAAC;IACJ,CAAC;CACF;AApkBD,4DAokBC;AAED;;GAEG;AACH,SAAgB,8BAA8B,CAC5C,MAAuC;IAEvC,OAAO,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Nervous System Persistence Module
|
|
3
|
+
*
|
|
4
|
+
* Provides persistence capabilities for nervous system components:
|
|
5
|
+
* - HDC Memory (hypervector patterns)
|
|
6
|
+
* - BTSP Learning (one-shot associations)
|
|
7
|
+
* - Circadian Controller (phase state and metrics)
|
|
8
|
+
*
|
|
9
|
+
* @module nervous-system/persistence
|
|
10
|
+
*/
|
|
11
|
+
export type { INervousSystemStore, NervousSystemComponent, HdcSerializedState, BTSPSerializedState, CircadianSerializedState, StoredStateMetadata, NervousSystemStoreFactory, } from './INervousSystemStore.js';
|
|
12
|
+
export { serializeHypervector, deserializeHypervector, serializeHdcMemory, deserializeHdcMemory, calculateStateSize as calculateHdcStateSize, validateHdcState, } from './HdcSerializer.js';
|
|
13
|
+
export type { HdcSerializerOptions } from './HdcSerializer.js';
|
|
14
|
+
export { serializeBTSP, deserializeBTSP, calculateStateSize as calculateBtspStateSize, validateBTSPState, createEmptyBTSPState, } from './BTSPSerializer.js';
|
|
15
|
+
export type { BTSPSerializerOptions, SerializableBTSPAdapter, RestorableBTSPAdapter, } from './BTSPSerializer.js';
|
|
16
|
+
export { serializeCircadian, deserializeCircadian, calculateStateSize as calculateCircadianStateSize, validateCircadianState, createDefaultCircadianState, calculateEnergySavings, } from './CircadianSerializer.js';
|
|
17
|
+
export type { CircadianSerializerOptions, SerializableCircadianController, RestorableCircadianController, } from './CircadianSerializer.js';
|
|
18
|
+
export { SQLiteNervousSystemStore, createSQLiteNervousSystemStore, } from './SQLiteNervousSystemStore.js';
|
|
19
|
+
export type { SQLiteNervousSystemStoreConfig } from './SQLiteNervousSystemStore.js';
|
|
20
|
+
export { NervousSystemPersistenceManager, createNervousSystemPersistenceManager, getSharedPersistenceManager, resetSharedPersistenceManager, } from './NervousSystemPersistenceManager.js';
|
|
21
|
+
export type { NervousSystemPersistenceManagerConfig, PersistenceManagerEvents, } from './NervousSystemPersistenceManager.js';
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/nervous-system/persistence/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,IAAI,qBAAqB,EAC3C,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EACL,aAAa,EACb,eAAe,EACf,kBAAkB,IAAI,sBAAsB,EAC5C,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,IAAI,2BAA2B,EACjD,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,+BAA+B,CAAC;AACvC,YAAY,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAGpF,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,qCAAqC,EACrC,wBAAwB,GACzB,MAAM,sCAAsC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Nervous System Persistence Module
|
|
4
|
+
*
|
|
5
|
+
* Provides persistence capabilities for nervous system components:
|
|
6
|
+
* - HDC Memory (hypervector patterns)
|
|
7
|
+
* - BTSP Learning (one-shot associations)
|
|
8
|
+
* - Circadian Controller (phase state and metrics)
|
|
9
|
+
*
|
|
10
|
+
* @module nervous-system/persistence
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.resetSharedPersistenceManager = exports.getSharedPersistenceManager = exports.createNervousSystemPersistenceManager = exports.NervousSystemPersistenceManager = exports.createSQLiteNervousSystemStore = exports.SQLiteNervousSystemStore = exports.calculateEnergySavings = exports.createDefaultCircadianState = exports.validateCircadianState = exports.calculateCircadianStateSize = exports.deserializeCircadian = exports.serializeCircadian = exports.createEmptyBTSPState = exports.validateBTSPState = exports.calculateBtspStateSize = exports.deserializeBTSP = exports.serializeBTSP = exports.validateHdcState = exports.calculateHdcStateSize = exports.deserializeHdcMemory = exports.serializeHdcMemory = exports.deserializeHypervector = exports.serializeHypervector = void 0;
|
|
14
|
+
// Serializers
|
|
15
|
+
var HdcSerializer_js_1 = require("./HdcSerializer.js");
|
|
16
|
+
Object.defineProperty(exports, "serializeHypervector", { enumerable: true, get: function () { return HdcSerializer_js_1.serializeHypervector; } });
|
|
17
|
+
Object.defineProperty(exports, "deserializeHypervector", { enumerable: true, get: function () { return HdcSerializer_js_1.deserializeHypervector; } });
|
|
18
|
+
Object.defineProperty(exports, "serializeHdcMemory", { enumerable: true, get: function () { return HdcSerializer_js_1.serializeHdcMemory; } });
|
|
19
|
+
Object.defineProperty(exports, "deserializeHdcMemory", { enumerable: true, get: function () { return HdcSerializer_js_1.deserializeHdcMemory; } });
|
|
20
|
+
Object.defineProperty(exports, "calculateHdcStateSize", { enumerable: true, get: function () { return HdcSerializer_js_1.calculateStateSize; } });
|
|
21
|
+
Object.defineProperty(exports, "validateHdcState", { enumerable: true, get: function () { return HdcSerializer_js_1.validateHdcState; } });
|
|
22
|
+
var BTSPSerializer_js_1 = require("./BTSPSerializer.js");
|
|
23
|
+
Object.defineProperty(exports, "serializeBTSP", { enumerable: true, get: function () { return BTSPSerializer_js_1.serializeBTSP; } });
|
|
24
|
+
Object.defineProperty(exports, "deserializeBTSP", { enumerable: true, get: function () { return BTSPSerializer_js_1.deserializeBTSP; } });
|
|
25
|
+
Object.defineProperty(exports, "calculateBtspStateSize", { enumerable: true, get: function () { return BTSPSerializer_js_1.calculateStateSize; } });
|
|
26
|
+
Object.defineProperty(exports, "validateBTSPState", { enumerable: true, get: function () { return BTSPSerializer_js_1.validateBTSPState; } });
|
|
27
|
+
Object.defineProperty(exports, "createEmptyBTSPState", { enumerable: true, get: function () { return BTSPSerializer_js_1.createEmptyBTSPState; } });
|
|
28
|
+
var CircadianSerializer_js_1 = require("./CircadianSerializer.js");
|
|
29
|
+
Object.defineProperty(exports, "serializeCircadian", { enumerable: true, get: function () { return CircadianSerializer_js_1.serializeCircadian; } });
|
|
30
|
+
Object.defineProperty(exports, "deserializeCircadian", { enumerable: true, get: function () { return CircadianSerializer_js_1.deserializeCircadian; } });
|
|
31
|
+
Object.defineProperty(exports, "calculateCircadianStateSize", { enumerable: true, get: function () { return CircadianSerializer_js_1.calculateStateSize; } });
|
|
32
|
+
Object.defineProperty(exports, "validateCircadianState", { enumerable: true, get: function () { return CircadianSerializer_js_1.validateCircadianState; } });
|
|
33
|
+
Object.defineProperty(exports, "createDefaultCircadianState", { enumerable: true, get: function () { return CircadianSerializer_js_1.createDefaultCircadianState; } });
|
|
34
|
+
Object.defineProperty(exports, "calculateEnergySavings", { enumerable: true, get: function () { return CircadianSerializer_js_1.calculateEnergySavings; } });
|
|
35
|
+
// SQLite Store
|
|
36
|
+
var SQLiteNervousSystemStore_js_1 = require("./SQLiteNervousSystemStore.js");
|
|
37
|
+
Object.defineProperty(exports, "SQLiteNervousSystemStore", { enumerable: true, get: function () { return SQLiteNervousSystemStore_js_1.SQLiteNervousSystemStore; } });
|
|
38
|
+
Object.defineProperty(exports, "createSQLiteNervousSystemStore", { enumerable: true, get: function () { return SQLiteNervousSystemStore_js_1.createSQLiteNervousSystemStore; } });
|
|
39
|
+
// Persistence Manager
|
|
40
|
+
var NervousSystemPersistenceManager_js_1 = require("./NervousSystemPersistenceManager.js");
|
|
41
|
+
Object.defineProperty(exports, "NervousSystemPersistenceManager", { enumerable: true, get: function () { return NervousSystemPersistenceManager_js_1.NervousSystemPersistenceManager; } });
|
|
42
|
+
Object.defineProperty(exports, "createNervousSystemPersistenceManager", { enumerable: true, get: function () { return NervousSystemPersistenceManager_js_1.createNervousSystemPersistenceManager; } });
|
|
43
|
+
Object.defineProperty(exports, "getSharedPersistenceManager", { enumerable: true, get: function () { return NervousSystemPersistenceManager_js_1.getSharedPersistenceManager; } });
|
|
44
|
+
Object.defineProperty(exports, "resetSharedPersistenceManager", { enumerable: true, get: function () { return NervousSystemPersistenceManager_js_1.resetSharedPersistenceManager; } });
|
|
45
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nervous-system/persistence/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAaH,cAAc;AACd,uDAO4B;AAN1B,wHAAA,oBAAoB,OAAA;AACpB,0HAAA,sBAAsB,OAAA;AACtB,sHAAA,kBAAkB,OAAA;AAClB,wHAAA,oBAAoB,OAAA;AACpB,yHAAA,kBAAkB,OAAyB;AAC3C,oHAAA,gBAAgB,OAAA;AAIlB,yDAM6B;AAL3B,kHAAA,aAAa,OAAA;AACb,oHAAA,eAAe,OAAA;AACf,2HAAA,kBAAkB,OAA0B;AAC5C,sHAAA,iBAAiB,OAAA;AACjB,yHAAA,oBAAoB,OAAA;AAQtB,mEAOkC;AANhC,4HAAA,kBAAkB,OAAA;AAClB,8HAAA,oBAAoB,OAAA;AACpB,qIAAA,kBAAkB,OAA+B;AACjD,gIAAA,sBAAsB,OAAA;AACtB,qIAAA,2BAA2B,OAAA;AAC3B,gIAAA,sBAAsB,OAAA;AAQxB,eAAe;AACf,6EAGuC;AAFrC,uIAAA,wBAAwB,OAAA;AACxB,6IAAA,8BAA8B,OAAA;AAIhC,sBAAsB;AACtB,2FAK8C;AAJ5C,qJAAA,+BAA+B,OAAA;AAC/B,2JAAA,qCAAqC,OAAA;AACrC,iJAAA,2BAA2B,OAAA;AAC3B,mJAAA,6BAA6B,OAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WASM Loader for RuVector Nervous System
|
|
3
|
+
*
|
|
4
|
+
* Provides Node.js-compatible WASM initialization for the nervous system module.
|
|
5
|
+
* The default WASM loader uses fetch() which isn't available in Node.js,
|
|
6
|
+
* so we load the .wasm file directly from the filesystem.
|
|
7
|
+
*
|
|
8
|
+
* @module nervous-system/wasm-loader
|
|
9
|
+
*/
|
|
10
|
+
export { BTSPLayer, BTSPAssociativeMemory, BTSPSynapse, Hypervector, HdcMemory, WTALayer, KWTALayer, GlobalWorkspace, WorkspaceItem, version, available_mechanisms, performance_targets, biological_references, } from '@ruvector/nervous-system-wasm';
|
|
11
|
+
/**
|
|
12
|
+
* Initialize the WASM module for Node.js
|
|
13
|
+
*
|
|
14
|
+
* This function is idempotent - calling it multiple times is safe.
|
|
15
|
+
* All subsequent calls will return immediately if already initialized,
|
|
16
|
+
* or wait for the pending initialization to complete.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* import { initNervousSystem, Hypervector } from './wasm-loader.js';
|
|
21
|
+
*
|
|
22
|
+
* await initNervousSystem();
|
|
23
|
+
* const v = Hypervector.random();
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function initNervousSystem(): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Check if WASM is initialized
|
|
29
|
+
*/
|
|
30
|
+
export declare function isWasmInitialized(): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Ensure WASM is initialized before running a function
|
|
33
|
+
*
|
|
34
|
+
* Decorator pattern for automatic initialization.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* const createVector = ensureInitialized(() => Hypervector.random());
|
|
39
|
+
* const v = await createVector(); // Auto-initializes if needed
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare function ensureInitialized<T>(fn: () => T): () => Promise<T>;
|
|
43
|
+
/**
|
|
44
|
+
* Get WASM module info
|
|
45
|
+
*/
|
|
46
|
+
export declare function getWasmInfo(): Promise<{
|
|
47
|
+
version: string;
|
|
48
|
+
mechanisms: Array<[string, string]>;
|
|
49
|
+
targets: Array<[string, string]>;
|
|
50
|
+
initialized: boolean;
|
|
51
|
+
}>;
|
|
52
|
+
//# sourceMappingURL=wasm-loader.d.ts.map
|