@timmeck/brain-core 2.36.66 → 2.36.68

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.
@@ -2,3 +2,7 @@ export { StrategyForge, runStrategyForgeMigration } from './strategy-forge.js';
2
2
  export type { Strategy, StrategyRule, StrategyPerformance, BacktestResult, StrategyForgeConfig, StrategyForgeStatus, } from './strategy-forge.js';
3
3
  export { StrategyMutator } from './strategy-mutator.js';
4
4
  export type { MutationConfig, MutationResult } from './strategy-mutator.js';
5
+ export { StrategyExporter } from './strategy-exporter.js';
6
+ export type { StrategyExportFormat } from './strategy-exporter.js';
7
+ export { StrategyImporter } from './strategy-importer.js';
8
+ export type { ImportResult } from './strategy-importer.js';
@@ -1,3 +1,5 @@
1
1
  export { StrategyForge, runStrategyForgeMigration } from './strategy-forge.js';
2
2
  export { StrategyMutator } from './strategy-mutator.js';
3
+ export { StrategyExporter } from './strategy-exporter.js';
4
+ export { StrategyImporter } from './strategy-importer.js';
3
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/strategy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAM/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/strategy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAM/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { StrategyForge, Strategy } from './strategy-forge.js';
2
+ export interface StrategyExportFormat {
3
+ version: string;
4
+ exportedAt: string;
5
+ source: string;
6
+ strategy: {
7
+ name: string;
8
+ type: Strategy['type'];
9
+ description: string;
10
+ rules: Strategy['rules'];
11
+ performance: Strategy['performance'];
12
+ lineage: {
13
+ parentId: number | null;
14
+ generation: number;
15
+ };
16
+ };
17
+ }
18
+ export declare class StrategyExporter {
19
+ private forge;
20
+ constructor(forge: StrategyForge);
21
+ /** Export a strategy to a portable JSON string. */
22
+ export(strategyId: number): string;
23
+ /** Export as parsed object. */
24
+ exportObject(strategyId: number): StrategyExportFormat;
25
+ private countGenerations;
26
+ }
@@ -0,0 +1,47 @@
1
+ // ── Exporter ───────────────────────────────────────────
2
+ export class StrategyExporter {
3
+ forge;
4
+ constructor(forge) {
5
+ this.forge = forge;
6
+ }
7
+ /** Export a strategy to a portable JSON string. */
8
+ export(strategyId) {
9
+ const strategy = this.forge.getStrategy(strategyId);
10
+ if (!strategy)
11
+ throw new Error(`Strategy #${strategyId} not found`);
12
+ const exportData = {
13
+ version: '1.0.0',
14
+ exportedAt: new Date().toISOString(),
15
+ source: strategy.brainName,
16
+ strategy: {
17
+ name: strategy.name,
18
+ type: strategy.type,
19
+ description: strategy.description,
20
+ rules: strategy.rules,
21
+ performance: strategy.performance,
22
+ lineage: {
23
+ parentId: strategy.parentId ?? null,
24
+ generation: this.countGenerations(strategy),
25
+ },
26
+ },
27
+ };
28
+ return JSON.stringify(exportData, null, 2);
29
+ }
30
+ /** Export as parsed object. */
31
+ exportObject(strategyId) {
32
+ return JSON.parse(this.export(strategyId));
33
+ }
34
+ countGenerations(strategy) {
35
+ let gen = 0;
36
+ let current = strategy;
37
+ while (current.parentId) {
38
+ const parent = this.forge.getStrategy(current.parentId);
39
+ if (!parent)
40
+ break;
41
+ gen++;
42
+ current = parent;
43
+ }
44
+ return gen;
45
+ }
46
+ }
47
+ //# sourceMappingURL=strategy-exporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategy-exporter.js","sourceRoot":"","sources":["../../src/strategy/strategy-exporter.ts"],"names":[],"mappings":"AAkBA,0DAA0D;AAE1D,MAAM,OAAO,gBAAgB;IACP;IAApB,YAAoB,KAAoB;QAApB,UAAK,GAAL,KAAK,CAAe;IAAG,CAAC;IAE5C,mDAAmD;IACnD,MAAM,CAAC,UAAkB;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,YAAY,CAAC,CAAC;QAEpE,MAAM,UAAU,GAAyB;YACvC,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,MAAM,EAAE,QAAQ,CAAC,SAAS;YAC1B,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,OAAO,EAAE;oBACP,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,IAAI;oBACnC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;iBAC5C;aACF;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,+BAA+B;IAC/B,YAAY,CAAC,UAAkB;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7C,CAAC;IAEO,gBAAgB,CAAC,QAAkB;QACzC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,OAAO,GAAG,QAAQ,CAAC;QACvB,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM;gBAAE,MAAM;YACnB,GAAG,EAAE,CAAC;YACN,OAAO,GAAG,MAAM,CAAC;QACnB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
@@ -106,6 +106,8 @@ export declare class StrategyForge {
106
106
  getAll(limit?: number): Strategy[];
107
107
  /** Get status overview */
108
108
  getStatus(): StrategyForgeStatus;
109
+ /** Import a strategy from external data (used by StrategyImporter). */
110
+ importStrategy(type: Strategy['type'], name: string, description: string, rules: StrategyRule[]): Strategy;
109
111
  private storeStrategy;
110
112
  private domainToType;
111
113
  private inferAction;
@@ -243,6 +243,10 @@ export class StrategyForge {
243
243
  topStrategy,
244
244
  };
245
245
  }
246
+ /** Import a strategy from external data (used by StrategyImporter). */
247
+ importStrategy(type, name, description, rules) {
248
+ return this.storeStrategy(type, name, description, rules);
249
+ }
246
250
  // ── Private ──────────────────────────────────────────────
247
251
  storeStrategy(type, name, description, rules, parentId) {
248
252
  const perf = { executions: 0, successes: 0, avgReturn: 0 };
@@ -1 +1 @@
1
- {"version":3,"file":"strategy-forge.js","sourceRoot":"","sources":["../../src/strategy/strategy-forge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategy-forge.js","sourceRoot":"","sources":["../../src/strategy/strategy-forge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { StrategyForge } from './strategy-forge.js';
2
+ export interface ImportResult {
3
+ success: boolean;
4
+ strategyId?: number;
5
+ strategyName?: string;
6
+ error?: string;
7
+ }
8
+ export declare class StrategyImporter {
9
+ private forge;
10
+ constructor(forge: StrategyForge);
11
+ /** Import a strategy from JSON string. Returns the created strategy or error. */
12
+ import(json: string): ImportResult;
13
+ /** Validate the export format schema. */
14
+ private validate;
15
+ }
@@ -0,0 +1,69 @@
1
+ // ── Importer ───────────────────────────────────────────
2
+ export class StrategyImporter {
3
+ forge;
4
+ constructor(forge) {
5
+ this.forge = forge;
6
+ }
7
+ /** Import a strategy from JSON string. Returns the created strategy or error. */
8
+ import(json) {
9
+ let data;
10
+ try {
11
+ data = JSON.parse(json);
12
+ }
13
+ catch {
14
+ return { success: false, error: 'Invalid JSON' };
15
+ }
16
+ // Schema validation
17
+ const validation = this.validate(data);
18
+ if (!validation.valid) {
19
+ return { success: false, error: validation.error };
20
+ }
21
+ // Check for duplicate name
22
+ const existing = this.forge.getAll(1000);
23
+ if (existing.some(s => s.name === data.strategy.name)) {
24
+ return { success: false, error: `Strategy name "${data.strategy.name}" already exists` };
25
+ }
26
+ // Validate rule format
27
+ for (const rule of data.strategy.rules) {
28
+ if (!rule.condition || !rule.action) {
29
+ return { success: false, error: 'Each rule must have a condition and action' };
30
+ }
31
+ }
32
+ // Create as draft
33
+ const strategy = this.forge.importStrategy(data.strategy.type, data.strategy.name, data.strategy.description, data.strategy.rules);
34
+ return {
35
+ success: true,
36
+ strategyId: strategy.id,
37
+ strategyName: strategy.name,
38
+ };
39
+ }
40
+ /** Validate the export format schema. */
41
+ validate(data) {
42
+ if (!data || typeof data !== 'object') {
43
+ return { valid: false, error: 'Data must be an object' };
44
+ }
45
+ const d = data;
46
+ if (!d.version || typeof d.version !== 'string') {
47
+ return { valid: false, error: 'Missing or invalid version field' };
48
+ }
49
+ if (!d.strategy || typeof d.strategy !== 'object') {
50
+ return { valid: false, error: 'Missing strategy field' };
51
+ }
52
+ const s = d.strategy;
53
+ if (!s.name || typeof s.name !== 'string') {
54
+ return { valid: false, error: 'Missing or invalid strategy.name' };
55
+ }
56
+ if (!s.type || typeof s.type !== 'string') {
57
+ return { valid: false, error: 'Missing or invalid strategy.type' };
58
+ }
59
+ const validTypes = ['trade', 'campaign', 'research', 'optimization'];
60
+ if (!validTypes.includes(s.type)) {
61
+ return { valid: false, error: `Invalid strategy.type: ${s.type}. Must be one of: ${validTypes.join(', ')}` };
62
+ }
63
+ if (!Array.isArray(s.rules)) {
64
+ return { valid: false, error: 'strategy.rules must be an array' };
65
+ }
66
+ return { valid: true };
67
+ }
68
+ }
69
+ //# sourceMappingURL=strategy-importer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategy-importer.js","sourceRoot":"","sources":["../../src/strategy/strategy-importer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timmeck/brain-core",
3
- "version": "2.36.66",
3
+ "version": "2.36.68",
4
4
  "description": "Shared core infrastructure for the Brain ecosystem — IPC, MCP, CLI, DB connection, and utilities",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",