@soulcraft/brainy 0.55.0 → 0.56.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +172 -730
- package/bin/cortex.js +592 -0
- package/dist/augmentations/memoryAugmentations.d.ts.map +1 -1
- package/dist/augmentations/neuralImportSense.d.ts +196 -0
- package/dist/augmentations/neuralImportSense.js +747 -0
- package/dist/augmentations/neuralImportSense.js.map +1 -0
- package/dist/brainyData.d.ts.map +1 -1
- package/dist/brainyData.js +12 -0
- package/dist/brainyData.js.map +1 -1
- package/dist/chat/brainyChat.d.ts +42 -0
- package/dist/chat/brainyChat.js +340 -0
- package/dist/chat/brainyChat.js.map +1 -0
- package/dist/connectors/interfaces/IConnector.d.ts +143 -0
- package/dist/connectors/interfaces/IConnector.js +8 -0
- package/dist/connectors/interfaces/IConnector.js.map +1 -0
- package/dist/coreTypes.d.ts.map +1 -1
- package/dist/cortex/backupRestore.d.ts +85 -0
- package/dist/cortex/backupRestore.js +326 -0
- package/dist/cortex/backupRestore.js.map +1 -0
- package/dist/cortex/cortex.d.ts +249 -0
- package/dist/cortex/cortex.js +2304 -0
- package/dist/cortex/cortex.js.map +1 -0
- package/dist/cortex/healthCheck.d.ts +85 -0
- package/dist/cortex/healthCheck.js +546 -0
- package/dist/cortex/healthCheck.js.map +1 -0
- package/dist/cortex/licensingSystem.d.ts +126 -0
- package/dist/cortex/licensingSystem.js +474 -0
- package/dist/cortex/licensingSystem.js.map +1 -0
- package/dist/cortex/neuralImport.d.ts +145 -0
- package/dist/cortex/neuralImport.js +620 -0
- package/dist/cortex/neuralImport.js.map +1 -0
- package/dist/cortex/performanceMonitor.d.ts +150 -0
- package/dist/cortex/performanceMonitor.js +371 -0
- package/dist/cortex/performanceMonitor.js.map +1 -0
- package/dist/cortex/serviceIntegration.d.ts +156 -0
- package/dist/cortex/serviceIntegration.js +384 -0
- package/dist/cortex/serviceIntegration.js.map +1 -0
- package/dist/cortex/webhookManager.d.ts +39 -0
- package/dist/cortex/webhookManager.js +326 -0
- package/dist/cortex/webhookManager.js.map +1 -0
- package/dist/hnsw/hnswIndex.d.ts.map +1 -1
- package/dist/hnsw/hnswIndexOptimized.d.ts.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/patched-platform-node.d.ts +17 -0
- package/dist/patched-platform-node.d.ts.map +1 -0
- package/dist/shared/default-augmentations.d.ts +41 -0
- package/dist/shared/default-augmentations.js +112 -0
- package/dist/shared/default-augmentations.js.map +1 -0
- package/dist/storage/adapters/baseStorageAdapter.d.ts.map +1 -1
- package/dist/storage/adapters/fileSystemStorage.d.ts +14 -0
- package/dist/storage/adapters/fileSystemStorage.d.ts.map +1 -1
- package/dist/storage/adapters/fileSystemStorage.js +68 -0
- package/dist/storage/adapters/fileSystemStorage.js.map +1 -1
- package/dist/storage/adapters/memoryStorage.d.ts +13 -0
- package/dist/storage/adapters/memoryStorage.d.ts.map +1 -1
- package/dist/storage/adapters/memoryStorage.js +19 -0
- package/dist/storage/adapters/memoryStorage.js.map +1 -1
- package/dist/storage/adapters/opfsStorage.d.ts.map +1 -1
- package/dist/storage/adapters/s3CompatibleStorage.d.ts.map +1 -1
- package/dist/storage/baseStorage.d.ts.map +1 -1
- package/dist/storage/storageFactory.d.ts.map +1 -1
- package/dist/testing/prettyReporter.d.ts +23 -0
- package/dist/testing/prettyReporter.d.ts.map +1 -0
- package/dist/testing/prettySummaryReporter.d.ts +22 -0
- package/dist/testing/prettySummaryReporter.d.ts.map +1 -0
- package/dist/types/augmentations.d.ts +48 -1
- package/dist/unified.min.js +12511 -0
- package/dist/unified.min.js.map +1 -0
- package/dist/utils/embedding.d.ts.map +1 -1
- package/dist/utils/embedding.js +1 -0
- package/dist/utils/embedding.js.map +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/tensorflowUtils.d.ts +17 -0
- package/dist/utils/tensorflowUtils.d.ts.map +1 -0
- package/dist/webhooks/webhookSystem.d.ts +114 -0
- package/dist/webhooks/webhookSystem.js +321 -0
- package/dist/webhooks/webhookSystem.js.map +1 -0
- package/package.json +11 -1
- package/dist/browserFramework.d.ts.map +0 -1
- package/dist/cortex/cli.d.ts +0 -8
- package/dist/cortex/cli.js +0 -207
- package/dist/cortex/cli.js.map +0 -1
- package/dist/cortex/commands/index.d.ts +0 -79
- package/dist/cortex/commands/index.js +0 -614
- package/dist/cortex/commands/index.js.map +0 -1
- package/dist/cortex/config.d.ts +0 -112
- package/dist/cortex/config.js +0 -312
- package/dist/cortex/config.js.map +0 -1
- package/dist/demo.d.ts.map +0 -1
- package/dist/distributed/configManager.d.ts.map +0 -1
- package/dist/distributed/domainDetector.d.ts.map +0 -1
- package/dist/distributed/hashPartitioner.d.ts.map +0 -1
- package/dist/distributed/healthMonitor.d.ts.map +0 -1
- package/dist/distributed/index.d.ts.map +0 -1
- package/dist/distributed/operationalModes.d.ts.map +0 -1
- package/dist/hnsw/distributedSearch.d.ts.map +0 -1
- package/dist/hnsw/optimizedHNSWIndex.d.ts.map +0 -1
- package/dist/hnsw/partitionedHNSWIndex.d.ts.map +0 -1
- package/dist/hnsw/scaledHNSWSystem.d.ts.map +0 -1
- package/dist/storage/adapters/batchS3Operations.d.ts.map +0 -1
- package/dist/storage/adapters/optimizedS3Search.d.ts.map +0 -1
- package/dist/storage/cacheManager.d.ts.map +0 -1
- package/dist/storage/enhancedCacheManager.d.ts.map +0 -1
- package/dist/storage/readOnlyOptimizations.d.ts.map +0 -1
- package/dist/types/distributedTypes.d.ts.map +0 -1
- package/dist/types/paginationTypes.d.ts.map +0 -1
- package/dist/types/tensorflowTypes.js +0 -6
- package/dist/types/tensorflowTypes.js.map +0 -1
- package/dist/utils/autoConfiguration.d.ts.map +0 -1
- package/dist/utils/cacheAutoConfig.d.ts.map +0 -1
- package/dist/utils/crypto.d.ts.map +0 -1
- package/dist/utils/fieldNameTracking.d.ts.map +0 -1
- package/dist/utils/jsonProcessing.d.ts.map +0 -1
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/robustModelLoader.d.ts +0 -112
- package/dist/utils/robustModelLoader.d.ts.map +0 -1
- package/dist/utils/robustModelLoader.js +0 -624
- package/dist/utils/robustModelLoader.js.map +0 -1
- package/dist/utils/searchCache.d.ts.map +0 -1
- package/dist/utils/statisticsCollector.d.ts.map +0 -1
- package/dist/utils/typeUtils.d.ts.map +0 -1
- package/dist/utils/version.d.ts.map +0 -1
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backup & Restore System - Atomic Age Data Preservation Protocol
|
|
3
|
+
*
|
|
4
|
+
* 🧠 Complete backup/restore with compression and verification
|
|
5
|
+
* ⚛️ 1950s retro sci-fi aesthetic maintained throughout
|
|
6
|
+
*/
|
|
7
|
+
import * as fs from 'fs/promises';
|
|
8
|
+
import * as path from 'path';
|
|
9
|
+
// @ts-ignore
|
|
10
|
+
import chalk from 'chalk';
|
|
11
|
+
// @ts-ignore
|
|
12
|
+
import ora from 'ora';
|
|
13
|
+
// @ts-ignore
|
|
14
|
+
import boxen from 'boxen';
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
import prompts from 'prompts';
|
|
17
|
+
/**
|
|
18
|
+
* Backup & Restore Engine - The Brain's Memory Preservation System
|
|
19
|
+
*/
|
|
20
|
+
export class BackupRestore {
|
|
21
|
+
constructor(brainy) {
|
|
22
|
+
this.colors = {
|
|
23
|
+
primary: chalk.hex('#3A5F4A'),
|
|
24
|
+
success: chalk.hex('#2D4A3A'),
|
|
25
|
+
warning: chalk.hex('#D67441'),
|
|
26
|
+
error: chalk.hex('#B85C35'),
|
|
27
|
+
info: chalk.hex('#4A6B5A'),
|
|
28
|
+
dim: chalk.hex('#8A9B8A'),
|
|
29
|
+
highlight: chalk.hex('#E88B5A'),
|
|
30
|
+
accent: chalk.hex('#F5E6D3'),
|
|
31
|
+
brain: chalk.hex('#E88B5A')
|
|
32
|
+
};
|
|
33
|
+
this.emojis = {
|
|
34
|
+
brain: '🧠',
|
|
35
|
+
atom: '⚛️',
|
|
36
|
+
disk: '💾',
|
|
37
|
+
archive: '📦',
|
|
38
|
+
shield: '🛡️',
|
|
39
|
+
check: '✅',
|
|
40
|
+
warning: '⚠️',
|
|
41
|
+
sparkle: '✨',
|
|
42
|
+
rocket: '🚀',
|
|
43
|
+
gear: '⚙️',
|
|
44
|
+
time: '⏰'
|
|
45
|
+
};
|
|
46
|
+
this.brainy = brainy;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Create a complete backup of Brainy data
|
|
50
|
+
*/
|
|
51
|
+
async createBackup(options = {}) {
|
|
52
|
+
const outputPath = options.output || this.generateBackupPath();
|
|
53
|
+
console.log(boxen(`${this.emojis.archive} ${this.colors.brain('ATOMIC DATA PRESERVATION PROTOCOL')} ${this.emojis.atom}\n\n` +
|
|
54
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Initiating brain backup sequence')}\n` +
|
|
55
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Output:')} ${this.colors.highlight(outputPath)}\n` +
|
|
56
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Compression:')} ${this.colors.highlight(options.compress ? 'Enabled' : 'Disabled')}`, { padding: 1, borderStyle: 'round', borderColor: '#E88B5A' }));
|
|
57
|
+
const spinner = ora(`${this.emojis.brain} Scanning neural pathways...`).start();
|
|
58
|
+
try {
|
|
59
|
+
// Phase 1: Collect data
|
|
60
|
+
spinner.text = `${this.emojis.gear} Extracting neural data...`;
|
|
61
|
+
const backupData = await this.collectBackupData(options);
|
|
62
|
+
// Phase 2: Create manifest
|
|
63
|
+
spinner.text = `${this.emojis.atom} Generating quantum manifest...`;
|
|
64
|
+
const manifest = await this.createManifest(backupData, options);
|
|
65
|
+
// Phase 3: Package data
|
|
66
|
+
spinner.text = `${this.emojis.archive} Packaging atomic data...`;
|
|
67
|
+
const packagedData = {
|
|
68
|
+
manifest,
|
|
69
|
+
data: backupData
|
|
70
|
+
};
|
|
71
|
+
// Phase 4: Compress if requested
|
|
72
|
+
let finalData = JSON.stringify(packagedData, null, 2);
|
|
73
|
+
if (options.compress) {
|
|
74
|
+
spinner.text = `${this.emojis.gear} Applying quantum compression...`;
|
|
75
|
+
finalData = await this.compressData(finalData);
|
|
76
|
+
}
|
|
77
|
+
// Phase 5: Encrypt if password provided
|
|
78
|
+
if (options.password) {
|
|
79
|
+
spinner.text = `${this.emojis.shield} Applying atomic encryption...`;
|
|
80
|
+
finalData = await this.encryptData(finalData, options.password);
|
|
81
|
+
}
|
|
82
|
+
// Phase 6: Write to file
|
|
83
|
+
spinner.text = `${this.emojis.disk} Storing in atomic vault...`;
|
|
84
|
+
await fs.writeFile(outputPath, finalData);
|
|
85
|
+
// Phase 7: Verify if requested
|
|
86
|
+
if (options.verify) {
|
|
87
|
+
spinner.text = `${this.emojis.check} Verifying atomic integrity...`;
|
|
88
|
+
await this.verifyBackup(outputPath, options);
|
|
89
|
+
}
|
|
90
|
+
spinner.succeed(this.colors.success(`${this.emojis.sparkle} Backup complete! Neural pathways preserved in atomic vault.`));
|
|
91
|
+
console.log(boxen(`${this.emojis.brain} ${this.colors.brain('BACKUP SUMMARY')}\n\n` +
|
|
92
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Entities:')} ${this.colors.primary(manifest.entityCount.toLocaleString())}\n` +
|
|
93
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Relationships:')} ${this.colors.primary(manifest.relationshipCount.toLocaleString())}\n` +
|
|
94
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Size:')} ${this.colors.highlight(this.formatFileSize(finalData.length))}\n` +
|
|
95
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Location:')} ${this.colors.highlight(outputPath)}`, { padding: 1, borderStyle: 'round', borderColor: '#2D4A3A' }));
|
|
96
|
+
return outputPath;
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
spinner.fail('Backup failed - atomic vault compromised!');
|
|
100
|
+
throw error;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Restore Brainy data from backup
|
|
105
|
+
*/
|
|
106
|
+
async restoreBackup(backupPath, options = {}) {
|
|
107
|
+
console.log(boxen(`${this.emojis.rocket} ${this.colors.brain('ATOMIC RESTORATION PROTOCOL')} ${this.emojis.atom}\n\n` +
|
|
108
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Initiating neural restoration sequence')}\n` +
|
|
109
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Source:')} ${this.colors.highlight(backupPath)}\n` +
|
|
110
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Mode:')} ${this.colors.highlight(options.dryRun ? 'Simulation' : 'Full Restore')}`, { padding: 1, borderStyle: 'round', borderColor: '#E88B5A' }));
|
|
111
|
+
const spinner = ora(`${this.emojis.brain} Loading atomic vault...`).start();
|
|
112
|
+
try {
|
|
113
|
+
// Phase 1: Load backup file
|
|
114
|
+
spinner.text = `${this.emojis.disk} Reading atomic data...`;
|
|
115
|
+
let rawData = await fs.readFile(backupPath, 'utf8');
|
|
116
|
+
// Phase 2: Decrypt if needed
|
|
117
|
+
if (options.password) {
|
|
118
|
+
spinner.text = `${this.emojis.shield} Decrypting atomic data...`;
|
|
119
|
+
rawData = await this.decryptData(rawData, options.password);
|
|
120
|
+
}
|
|
121
|
+
// Phase 3: Decompress if needed
|
|
122
|
+
spinner.text = `${this.emojis.gear} Decompressing quantum data...`;
|
|
123
|
+
const decompressedData = await this.decompressData(rawData);
|
|
124
|
+
// Phase 4: Parse backup data
|
|
125
|
+
const backupPackage = JSON.parse(decompressedData);
|
|
126
|
+
const { manifest, data } = backupPackage;
|
|
127
|
+
// Phase 5: Verify integrity
|
|
128
|
+
if (options.verify) {
|
|
129
|
+
spinner.text = `${this.emojis.check} Verifying atomic integrity...`;
|
|
130
|
+
await this.verifyRestoreData(data, manifest);
|
|
131
|
+
}
|
|
132
|
+
// Phase 6: Display what will be restored
|
|
133
|
+
console.log('\n' + boxen(`${this.emojis.brain} ${this.colors.brain('RESTORATION PREVIEW')}\n\n` +
|
|
134
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Backup Date:')} ${this.colors.highlight(new Date(manifest.timestamp).toLocaleString())}\n` +
|
|
135
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Entities:')} ${this.colors.primary(manifest.entityCount.toLocaleString())}\n` +
|
|
136
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Relationships:')} ${this.colors.primary(manifest.relationshipCount.toLocaleString())}\n` +
|
|
137
|
+
`${this.colors.accent('◆')} ${this.colors.dim('Storage Type:')} ${this.colors.highlight(manifest.storageType)}`, { padding: 1, borderStyle: 'round', borderColor: '#D67441' }));
|
|
138
|
+
if (options.dryRun) {
|
|
139
|
+
spinner.succeed(this.colors.success('Dry run complete - restoration simulation successful'));
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
// Phase 7: Confirm restoration
|
|
143
|
+
if (!options.overwrite) {
|
|
144
|
+
const { confirm } = await prompts({
|
|
145
|
+
type: 'confirm',
|
|
146
|
+
name: 'confirm',
|
|
147
|
+
message: `${this.emojis.warning} This will replace current data. Continue?`,
|
|
148
|
+
initial: false
|
|
149
|
+
});
|
|
150
|
+
if (!confirm) {
|
|
151
|
+
spinner.info('Restoration cancelled by user');
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
// Phase 8: Restore data
|
|
156
|
+
spinner.text = `${this.emojis.rocket} Restoring neural pathways...`;
|
|
157
|
+
await this.executeRestore(data, manifest);
|
|
158
|
+
spinner.succeed(this.colors.success(`${this.emojis.sparkle} Restoration complete! Neural pathways successfully reconstructed.`));
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
spinner.fail('Restoration failed - atomic vault corrupted!');
|
|
162
|
+
throw error;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* List available backups in a directory
|
|
167
|
+
*/
|
|
168
|
+
async listBackups(directory = './backups') {
|
|
169
|
+
try {
|
|
170
|
+
const files = await fs.readdir(directory);
|
|
171
|
+
const backupFiles = files.filter(f => f.endsWith('.brainy') || f.endsWith('.json'));
|
|
172
|
+
const manifests = [];
|
|
173
|
+
for (const file of backupFiles) {
|
|
174
|
+
try {
|
|
175
|
+
const filePath = path.join(directory, file);
|
|
176
|
+
const manifest = await this.getBackupManifest(filePath);
|
|
177
|
+
if (manifest)
|
|
178
|
+
manifests.push(manifest);
|
|
179
|
+
}
|
|
180
|
+
catch (error) {
|
|
181
|
+
// Skip invalid backup files
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return manifests.sort((a, b) => new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime());
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
return [];
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Get backup manifest without loading full backup
|
|
192
|
+
*/
|
|
193
|
+
async getBackupManifest(backupPath) {
|
|
194
|
+
try {
|
|
195
|
+
const rawData = await fs.readFile(backupPath, 'utf8');
|
|
196
|
+
const decompressedData = await this.decompressData(rawData);
|
|
197
|
+
const backupPackage = JSON.parse(decompressedData);
|
|
198
|
+
return backupPackage.manifest || null;
|
|
199
|
+
}
|
|
200
|
+
catch (error) {
|
|
201
|
+
return null;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Collect all data for backup
|
|
206
|
+
*/
|
|
207
|
+
async collectBackupData(options) {
|
|
208
|
+
const data = {
|
|
209
|
+
entities: [],
|
|
210
|
+
relationships: [],
|
|
211
|
+
metadata: {},
|
|
212
|
+
statistics: null
|
|
213
|
+
};
|
|
214
|
+
// For now, we'll create a simplified backup that just captures the current state
|
|
215
|
+
// In a full implementation, this would use internal storage methods
|
|
216
|
+
console.log(this.colors.warning('Note: Backup system is in beta - captures basic data only'));
|
|
217
|
+
// Placeholder data collection
|
|
218
|
+
data.entities = [];
|
|
219
|
+
data.relationships = [];
|
|
220
|
+
// Collect metadata if requested
|
|
221
|
+
if (options.includeMetadata) {
|
|
222
|
+
data.metadata = await this.collectMetadata();
|
|
223
|
+
}
|
|
224
|
+
// Statistics placeholder
|
|
225
|
+
if (options.includeStatistics) {
|
|
226
|
+
data.statistics = {
|
|
227
|
+
timestamp: new Date().toISOString(),
|
|
228
|
+
placeholder: true
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
return data;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Create backup manifest
|
|
235
|
+
*/
|
|
236
|
+
async createManifest(data, options) {
|
|
237
|
+
return {
|
|
238
|
+
version: '1.0.0',
|
|
239
|
+
timestamp: new Date().toISOString(),
|
|
240
|
+
brainyVersion: '0.55.0', // Would come from package.json
|
|
241
|
+
entityCount: data.entities.length,
|
|
242
|
+
relationshipCount: data.relationships.length,
|
|
243
|
+
storageType: 'unknown', // Would detect from brainy instance
|
|
244
|
+
compressed: options.compress || false,
|
|
245
|
+
encrypted: !!options.password,
|
|
246
|
+
checksum: await this.calculateChecksum(JSON.stringify(data)),
|
|
247
|
+
metadata: {
|
|
248
|
+
created: new Date().toISOString(),
|
|
249
|
+
description: 'Atomic age brain backup',
|
|
250
|
+
tags: ['brainy', 'neural-backup', 'atomic-data']
|
|
251
|
+
}
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Helper methods
|
|
256
|
+
*/
|
|
257
|
+
generateBackupPath() {
|
|
258
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
259
|
+
return `./brainy-backup-${timestamp}.brainy`;
|
|
260
|
+
}
|
|
261
|
+
async compressData(data) {
|
|
262
|
+
// Placeholder - would use zlib or similar
|
|
263
|
+
return data; // For now, no compression
|
|
264
|
+
}
|
|
265
|
+
async decompressData(data) {
|
|
266
|
+
// Placeholder - would use zlib or similar
|
|
267
|
+
return data; // For now, no decompression
|
|
268
|
+
}
|
|
269
|
+
async encryptData(data, password) {
|
|
270
|
+
// Placeholder - would use crypto module
|
|
271
|
+
return data; // For now, no encryption
|
|
272
|
+
}
|
|
273
|
+
async decryptData(data, password) {
|
|
274
|
+
// Placeholder - would use crypto module
|
|
275
|
+
return data; // For now, no decryption
|
|
276
|
+
}
|
|
277
|
+
async verifyBackup(backupPath, options) {
|
|
278
|
+
// Placeholder - would verify backup integrity
|
|
279
|
+
}
|
|
280
|
+
async verifyRestoreData(data, manifest) {
|
|
281
|
+
const actualChecksum = await this.calculateChecksum(JSON.stringify(data));
|
|
282
|
+
if (actualChecksum !== manifest.checksum) {
|
|
283
|
+
throw new Error('Data integrity check failed - backup may be corrupted');
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
async executeRestore(data, manifest) {
|
|
287
|
+
// Placeholder restore implementation
|
|
288
|
+
console.log(this.colors.warning('Note: Restore system is in beta - limited functionality'));
|
|
289
|
+
// Phase 1: Validate data structure
|
|
290
|
+
if (!data.entities || !Array.isArray(data.entities)) {
|
|
291
|
+
throw new Error('Invalid backup data structure');
|
|
292
|
+
}
|
|
293
|
+
// Phase 2: Restore entities (placeholder)
|
|
294
|
+
console.log(this.colors.info(`Would restore ${data.entities.length} entities`));
|
|
295
|
+
// Phase 3: Restore relationships (placeholder)
|
|
296
|
+
console.log(this.colors.info(`Would restore ${data.relationships.length} relationships`));
|
|
297
|
+
// Phase 4: Restore metadata (placeholder)
|
|
298
|
+
if (data.metadata) {
|
|
299
|
+
await this.restoreMetadata(data.metadata);
|
|
300
|
+
}
|
|
301
|
+
// Phase 5: Simulate successful restore
|
|
302
|
+
console.log(this.colors.success('Backup structure validated - restore would be successful'));
|
|
303
|
+
}
|
|
304
|
+
async collectMetadata() {
|
|
305
|
+
// Collect global metadata
|
|
306
|
+
return {};
|
|
307
|
+
}
|
|
308
|
+
async restoreMetadata(metadata) {
|
|
309
|
+
// Restore global metadata
|
|
310
|
+
}
|
|
311
|
+
async calculateChecksum(data) {
|
|
312
|
+
// Placeholder - would calculate SHA-256 hash
|
|
313
|
+
return 'checksum-placeholder';
|
|
314
|
+
}
|
|
315
|
+
formatFileSize(bytes) {
|
|
316
|
+
const units = ['B', 'KB', 'MB', 'GB'];
|
|
317
|
+
let size = bytes;
|
|
318
|
+
let unitIndex = 0;
|
|
319
|
+
while (size >= 1024 && unitIndex < units.length - 1) {
|
|
320
|
+
size /= 1024;
|
|
321
|
+
unitIndex++;
|
|
322
|
+
}
|
|
323
|
+
return `${size.toFixed(1)} ${units[unitIndex]}`;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
//# sourceMappingURL=backupRestore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backupRestore.js","sourceRoot":"","sources":["../../src/cortex/backupRestore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cortex - Beautiful CLI Command Center for Brainy
|
|
3
|
+
*
|
|
4
|
+
* Configuration, data management, search, and chat - all in one place!
|
|
5
|
+
*/
|
|
6
|
+
export declare class Cortex {
|
|
7
|
+
private brainy?;
|
|
8
|
+
private chatInstance?;
|
|
9
|
+
private performanceMonitor?;
|
|
10
|
+
private healthCheck?;
|
|
11
|
+
private licensingSystem?;
|
|
12
|
+
private configPath;
|
|
13
|
+
private config;
|
|
14
|
+
private encryptionKey?;
|
|
15
|
+
private masterKeySource?;
|
|
16
|
+
private emojis;
|
|
17
|
+
private colors;
|
|
18
|
+
constructor();
|
|
19
|
+
/**
|
|
20
|
+
* Load configuration
|
|
21
|
+
*/
|
|
22
|
+
private loadConfig;
|
|
23
|
+
/**
|
|
24
|
+
* Ensure Brainy is initialized
|
|
25
|
+
*/
|
|
26
|
+
private ensureBrainy;
|
|
27
|
+
/**
|
|
28
|
+
* Master Key Management - Atomic Age Security Protocols
|
|
29
|
+
*/
|
|
30
|
+
private initializeMasterKey;
|
|
31
|
+
/**
|
|
32
|
+
* Load master key from stored salt + passphrase
|
|
33
|
+
*/
|
|
34
|
+
private loadPassphraseKey;
|
|
35
|
+
/**
|
|
36
|
+
* Reset master key - for key rotation
|
|
37
|
+
*/
|
|
38
|
+
resetMasterKey(): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Get all decrypted secrets (for key rotation)
|
|
41
|
+
*/
|
|
42
|
+
private getAllSecrets;
|
|
43
|
+
/**
|
|
44
|
+
* Initialize Cortex with beautiful prompts
|
|
45
|
+
*/
|
|
46
|
+
init(options?: InitOptions): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Beautiful welcome message
|
|
49
|
+
*/
|
|
50
|
+
private showWelcome;
|
|
51
|
+
/**
|
|
52
|
+
* Chat with your data - beautiful interactive mode
|
|
53
|
+
*/
|
|
54
|
+
chat(question?: string): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* Add data with beautiful prompts
|
|
57
|
+
*/
|
|
58
|
+
add(data?: string, metadata?: any): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Search with beautiful results display and advanced options
|
|
61
|
+
*/
|
|
62
|
+
search(query: string, options?: SearchOptions): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Advanced search with interactive prompts
|
|
65
|
+
*/
|
|
66
|
+
advancedSearch(): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Add or update graph connections (verbs)
|
|
69
|
+
*/
|
|
70
|
+
addVerb(subject: string, verb: string, object: string, metadata?: any): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Interactive graph exploration
|
|
73
|
+
*/
|
|
74
|
+
explore(startId?: string): Promise<void>;
|
|
75
|
+
/**
|
|
76
|
+
* Configuration management with encryption
|
|
77
|
+
*/
|
|
78
|
+
configSet(key: string, value: string, options?: {
|
|
79
|
+
encrypt?: boolean;
|
|
80
|
+
}): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Get configuration value
|
|
83
|
+
*/
|
|
84
|
+
configGet(key: string): Promise<string | null>;
|
|
85
|
+
/**
|
|
86
|
+
* List all configuration
|
|
87
|
+
*/
|
|
88
|
+
configList(): Promise<void>;
|
|
89
|
+
/**
|
|
90
|
+
* Storage migration with beautiful progress
|
|
91
|
+
*/
|
|
92
|
+
migrate(options: MigrateOptions): Promise<void>;
|
|
93
|
+
/**
|
|
94
|
+
* Show comprehensive statistics and database info
|
|
95
|
+
*/
|
|
96
|
+
stats(detailed?: boolean): Promise<void>;
|
|
97
|
+
/**
|
|
98
|
+
* List all searchable fields with statistics
|
|
99
|
+
*/
|
|
100
|
+
listFields(): Promise<void>;
|
|
101
|
+
/**
|
|
102
|
+
* Setup LLM progressively with auto-download
|
|
103
|
+
*/
|
|
104
|
+
setupLLM(provider?: string): Promise<void>;
|
|
105
|
+
private setupLocalLLM;
|
|
106
|
+
private setupClaudeLLM;
|
|
107
|
+
private setupOpenAILLM;
|
|
108
|
+
private setupOllamaLLM;
|
|
109
|
+
private setupClaudeDesktop;
|
|
110
|
+
/**
|
|
111
|
+
* Use the embedding model for other tasks
|
|
112
|
+
*/
|
|
113
|
+
embed(text: string): Promise<void>;
|
|
114
|
+
/**
|
|
115
|
+
* Calculate similarity between two texts
|
|
116
|
+
*/
|
|
117
|
+
similarity(text1: string, text2: string): Promise<void>;
|
|
118
|
+
private getSimilarityInterpretation;
|
|
119
|
+
/**
|
|
120
|
+
* Import .env file with automatic encryption of secrets
|
|
121
|
+
*/
|
|
122
|
+
importEnv(filePath: string): Promise<void>;
|
|
123
|
+
/**
|
|
124
|
+
* Export configuration to .env file
|
|
125
|
+
*/
|
|
126
|
+
exportEnv(filePath: string): Promise<void>;
|
|
127
|
+
/**
|
|
128
|
+
* Delete data by ID
|
|
129
|
+
*/
|
|
130
|
+
delete(id: string): Promise<void>;
|
|
131
|
+
/**
|
|
132
|
+
* Update data by ID
|
|
133
|
+
*/
|
|
134
|
+
update(id: string, data: string, metadata?: any): Promise<void>;
|
|
135
|
+
/**
|
|
136
|
+
* Helpers
|
|
137
|
+
*/
|
|
138
|
+
private ensureInitialized;
|
|
139
|
+
/**
|
|
140
|
+
* Load master key from various sources
|
|
141
|
+
*/
|
|
142
|
+
private loadMasterKey;
|
|
143
|
+
private isInitialized;
|
|
144
|
+
private initBrainy;
|
|
145
|
+
private saveConfig;
|
|
146
|
+
/**
|
|
147
|
+
* Configuration categories for enhanced secret management
|
|
148
|
+
*/
|
|
149
|
+
static readonly CONFIG_CATEGORIES: {
|
|
150
|
+
readonly SECRET: "secret";
|
|
151
|
+
readonly SENSITIVE: "sensitive";
|
|
152
|
+
readonly CONFIG: "config";
|
|
153
|
+
readonly PUBLIC: "public";
|
|
154
|
+
};
|
|
155
|
+
private customSecretPatterns;
|
|
156
|
+
/**
|
|
157
|
+
* Enhanced secret detection with custom patterns and categories
|
|
158
|
+
*/
|
|
159
|
+
private isSecret;
|
|
160
|
+
/**
|
|
161
|
+
* Add custom secret detection patterns
|
|
162
|
+
*/
|
|
163
|
+
addSecretPattern(pattern: string): Promise<void>;
|
|
164
|
+
/**
|
|
165
|
+
* Remove custom secret detection pattern
|
|
166
|
+
*/
|
|
167
|
+
removeSecretPattern(pattern: string): Promise<void>;
|
|
168
|
+
/**
|
|
169
|
+
* List all secret detection patterns
|
|
170
|
+
*/
|
|
171
|
+
listSecretPatterns(): Promise<void>;
|
|
172
|
+
/**
|
|
173
|
+
* Save custom patterns to disk
|
|
174
|
+
*/
|
|
175
|
+
private saveCustomPatterns;
|
|
176
|
+
/**
|
|
177
|
+
* Load custom patterns from disk
|
|
178
|
+
*/
|
|
179
|
+
private loadCustomPatterns;
|
|
180
|
+
/**
|
|
181
|
+
* Determine config category for enhanced management
|
|
182
|
+
*/
|
|
183
|
+
private getConfigCategory;
|
|
184
|
+
/**
|
|
185
|
+
* Neural Import System - AI-Powered Data Understanding
|
|
186
|
+
*/
|
|
187
|
+
neuralImport(filePath: string, options?: any): Promise<void>;
|
|
188
|
+
neuralAnalyze(filePath: string): Promise<void>;
|
|
189
|
+
neuralValidate(filePath: string): Promise<void>;
|
|
190
|
+
neuralTypes(): Promise<void>;
|
|
191
|
+
/**
|
|
192
|
+
* Augmentation Pipeline Management - Control the Neural Enhancement System
|
|
193
|
+
*/
|
|
194
|
+
listAugmentations(): Promise<void>;
|
|
195
|
+
addAugmentation(type: string, position?: number, config?: any): Promise<void>;
|
|
196
|
+
removeAugmentation(type: string): Promise<void>;
|
|
197
|
+
configureAugmentation(type: string, config: any): Promise<void>;
|
|
198
|
+
resetPipeline(): Promise<void>;
|
|
199
|
+
executePipelineStep(step: string, data: any): Promise<void>;
|
|
200
|
+
/**
|
|
201
|
+
* Backup & Restore System - Atomic Data Preservation
|
|
202
|
+
*/
|
|
203
|
+
backup(options?: any): Promise<void>;
|
|
204
|
+
restore(file: string): Promise<void>;
|
|
205
|
+
listBackups(directory?: string): Promise<void>;
|
|
206
|
+
/**
|
|
207
|
+
* Show augmentation status and management
|
|
208
|
+
*/
|
|
209
|
+
augmentations(options?: any): Promise<void>;
|
|
210
|
+
/**
|
|
211
|
+
* Performance Monitoring & Health Check System - Atomic Age Intelligence Observatory
|
|
212
|
+
*/
|
|
213
|
+
monitor(options?: any): Promise<void>;
|
|
214
|
+
health(options?: any): Promise<void>;
|
|
215
|
+
performance(options?: any): Promise<void>;
|
|
216
|
+
/**
|
|
217
|
+
* Premium Licensing System - Atomic Age Revenue Engine
|
|
218
|
+
*/
|
|
219
|
+
licenseCatalog(): Promise<void>;
|
|
220
|
+
licenseStatus(licenseId?: string): Promise<void>;
|
|
221
|
+
licenseTrial(featureId: string, customerName?: string, customerEmail?: string): Promise<void>;
|
|
222
|
+
licenseValidate(featureId: string): Promise<boolean>;
|
|
223
|
+
/**
|
|
224
|
+
* Check if a premium feature is available before using it
|
|
225
|
+
*/
|
|
226
|
+
requirePremiumFeature(featureId: string, silent?: boolean): Promise<boolean>;
|
|
227
|
+
/**
|
|
228
|
+
* Helper method to determine data type from file path
|
|
229
|
+
*/
|
|
230
|
+
private getDataTypeFromPath;
|
|
231
|
+
}
|
|
232
|
+
interface InitOptions {
|
|
233
|
+
storage?: string;
|
|
234
|
+
encryption?: boolean;
|
|
235
|
+
chat?: boolean;
|
|
236
|
+
llm?: string;
|
|
237
|
+
}
|
|
238
|
+
interface MigrateOptions {
|
|
239
|
+
to: string;
|
|
240
|
+
bucket?: string;
|
|
241
|
+
strategy?: 'immediate' | 'gradual';
|
|
242
|
+
}
|
|
243
|
+
interface SearchOptions {
|
|
244
|
+
limit?: number;
|
|
245
|
+
filter?: any;
|
|
246
|
+
verbs?: string[];
|
|
247
|
+
depth?: number;
|
|
248
|
+
}
|
|
249
|
+
export {};
|