@seanhogg/builderforce-memory 2026.6.35 → 2026.7.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +4 -3
  2. package/dist/cognition/EvermindCognition.d.ts.map +1 -1
  3. package/dist/cognition/EvermindCognition.js +17 -7
  4. package/dist/cognition/EvermindCognition.js.map +1 -1
  5. package/dist/diagnostics/stack-diagnostic.d.ts +9 -0
  6. package/dist/diagnostics/stack-diagnostic.d.ts.map +1 -1
  7. package/dist/diagnostics/stack-diagnostic.js +27 -1
  8. package/dist/diagnostics/stack-diagnostic.js.map +1 -1
  9. package/dist/distillation/DistillationEngine.d.ts +6 -0
  10. package/dist/distillation/DistillationEngine.d.ts.map +1 -1
  11. package/dist/distillation/DistillationEngine.js +10 -4
  12. package/dist/distillation/DistillationEngine.js.map +1 -1
  13. package/dist/index.d.ts +2 -2
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/limbic/LimbicSession.d.ts +31 -1
  18. package/dist/limbic/LimbicSession.d.ts.map +1 -1
  19. package/dist/limbic/LimbicSession.js +47 -3
  20. package/dist/limbic/LimbicSession.js.map +1 -1
  21. package/dist/memory/MemoryStore.d.ts +10 -0
  22. package/dist/memory/MemoryStore.d.ts.map +1 -1
  23. package/dist/memory/MemoryStore.js +13 -2
  24. package/dist/memory/MemoryStore.js.map +1 -1
  25. package/dist/session/session.d.ts +22 -0
  26. package/dist/session/session.d.ts.map +1 -1
  27. package/dist/session/session.js +45 -2
  28. package/dist/session/session.js.map +1 -1
  29. package/dist/workflow/code-eval.d.ts +54 -0
  30. package/dist/workflow/code-eval.d.ts.map +1 -0
  31. package/dist/workflow/code-eval.js +135 -0
  32. package/dist/workflow/code-eval.js.map +1 -0
  33. package/dist/workflow/index.d.ts +3 -2
  34. package/dist/workflow/index.d.ts.map +1 -1
  35. package/dist/workflow/index.js +3 -2
  36. package/dist/workflow/index.js.map +1 -1
  37. package/dist/workflow/steps.d.ts +20 -0
  38. package/dist/workflow/steps.d.ts.map +1 -1
  39. package/dist/workflow/steps.js +522 -7
  40. package/dist/workflow/steps.js.map +1 -1
  41. package/dist/workflow/templates.d.ts +15 -0
  42. package/dist/workflow/templates.d.ts.map +1 -1
  43. package/dist/workflow/templates.js +64 -1
  44. package/dist/workflow/templates.js.map +1 -1
  45. package/package.json +8 -4
  46. package/src/cognition/EvermindCognition.ts +24 -7
  47. package/src/diagnostics/stack-diagnostic.ts +37 -1
  48. package/src/distillation/DistillationEngine.ts +17 -4
  49. package/src/index.ts +6 -0
  50. package/src/limbic/LimbicSession.ts +61 -1
  51. package/src/memory/MemoryStore.ts +14 -2
  52. package/src/session/session.ts +72 -2
  53. package/src/workflow/code-eval.ts +143 -0
  54. package/src/workflow/index.ts +9 -1
  55. package/src/workflow/steps.ts +605 -6
  56. package/src/workflow/templates.ts +67 -1
@@ -1 +1 @@
1
- {"version":3,"file":"steps.js","sourceRoot":"","sources":["../../src/workflow/steps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"steps.js","sourceRoot":"","sources":["../../src/workflow/steps.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,21 @@ export declare const AGENTIC_SEVEN_LAYER: WorkflowConfig;
17
17
  * regenerates identical output). Pass your own text via the `corpus` param.
18
18
  */
19
19
  export declare const TRAIN_LLM: WorkflowConfig;
20
+ /**
21
+ * Teach Evermind to Code — the foundation pipeline for the coding skill.
22
+ *
23
+ * Distil a PANEL of teacher coders — Opus as the authority plus any cheaper
24
+ * models (gateway/OpenRouter/local) — into an execution-verified (prompt → code)
25
+ * corpus (best-of-N: only completions that pass their tests survive), learn a
26
+ * code tokenizer (train fresh by default; set `hfTokenizerUrl` on the tokenizer
27
+ * step to import merges from a proven code tokenizer instead), train the model,
28
+ * and gate it with the standard convergence/benchmark checks PLUS code-specific
29
+ * ones: structural/parse validity and an execution-grounded test reward.
30
+ *
31
+ * The code gates ship report-only (no thresholds) so the template completes and
32
+ * surfaces metrics; a real run sets `minScore` / `minPassRate` to enforce them.
33
+ */
34
+ export declare const TEACH_CODE: WorkflowConfig;
20
35
  export declare const WORKFLOW_TEMPLATES: WorkflowConfig[];
21
36
  export declare function getTemplate(id: string): WorkflowConfig | undefined;
22
37
  /** Deep-clone a template so a user can edit it as a custom workflow. */
@@ -1 +1 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/workflow/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,EAAE,cAcjC,CAAC;AAqBF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,cAevB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAAc,EAAqC,CAAC;AAErF,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAElE;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc,GAAG,SAAS,CAU7G"}
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/workflow/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,EAAE,cAcjC,CAAC;AAqBF;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,cAevB,CAAC;AAyBF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,UAAU,EAAE,cA2BxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAAc,EAAiD,CAAC;AAEjG,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAElE;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc,GAAG,SAAS,CAU7G"}
@@ -62,7 +62,70 @@ export const TRAIN_LLM = {
62
62
  { id: "export", type: "export", params: { format: "huggingface", name: "my-llm", version: "1.0.0" } },
63
63
  ],
64
64
  };
65
- export const WORKFLOW_TEMPLATES = [AGENTIC_SEVEN_LAYER, TRAIN_LLM];
65
+ /**
66
+ * Out-of-the-box (prompt → code) exemplars so "Teach Evermind to Code" runs with
67
+ * no network. Each carries execution `cases` so the same best-of-N / exec-filter
68
+ * path a live run uses is exercised offline (an exemplar whose code fails its
69
+ * cases is dropped, never trained on).
70
+ *
71
+ * A real run instead sets a teacher PANEL on the `distill-corpus` step —
72
+ * `teachers: [{provider:"anthropic", model:"claude-opus-4-8", apiKey},
73
+ * {provider:"openai", baseUrl:<gateway>, model:<coder>, apiKey}]`
74
+ * (strongest first) — plus `tasks: [{prompt, cases}]`. Per task every teacher is
75
+ * queried, only completions that PASS the cases survive, and the strongest
76
+ * correct answer is kept: Opus is the authority, cheaper models contribute only
77
+ * where they are verifiably right.
78
+ */
79
+ const CODE_DISTILL_PAIRS = [
80
+ { prompt: "Write a JS function add(a, b) that returns their sum.", completion: "function add(a, b) {\n return a + b;\n}", cases: [{ call: "add(2, 3)", expect: 5 }] },
81
+ { prompt: "Write a JS function isEven(n) that returns true when n is even.", completion: "function isEven(n) {\n return n % 2 === 0;\n}", cases: [{ call: "isEven(4)", expect: true }, { call: "isEven(7)", expect: false }] },
82
+ { prompt: "Write a JS function max(a, b) returning the larger value.", completion: "function max(a, b) {\n return a > b ? a : b;\n}", cases: [{ call: "max(2, 9)", expect: 9 }] },
83
+ { prompt: "Write a JS function reverse(s) that reverses a string.", completion: "function reverse(s) {\n return s.split('').reverse().join('');\n}", cases: [{ call: "reverse('abc')", expect: "cba" }] },
84
+ { prompt: "Write a JS function clamp(x, lo, hi) bounding x to [lo, hi].", completion: "function clamp(x, lo, hi) {\n return Math.min(hi, Math.max(lo, x));\n}", cases: [{ call: "clamp(12, 0, 10)", expect: 10 }] },
85
+ { prompt: "Write a JS function sum(xs) that adds an array of numbers.", completion: "function sum(xs) {\n return xs.reduce((a, b) => a + b, 0);\n}", cases: [{ call: "sum([1, 2, 3])", expect: 6 }] },
86
+ ];
87
+ /**
88
+ * Teach Evermind to Code — the foundation pipeline for the coding skill.
89
+ *
90
+ * Distil a PANEL of teacher coders — Opus as the authority plus any cheaper
91
+ * models (gateway/OpenRouter/local) — into an execution-verified (prompt → code)
92
+ * corpus (best-of-N: only completions that pass their tests survive), learn a
93
+ * code tokenizer (train fresh by default; set `hfTokenizerUrl` on the tokenizer
94
+ * step to import merges from a proven code tokenizer instead), train the model,
95
+ * and gate it with the standard convergence/benchmark checks PLUS code-specific
96
+ * ones: structural/parse validity and an execution-grounded test reward.
97
+ *
98
+ * The code gates ship report-only (no thresholds) so the template completes and
99
+ * surfaces metrics; a real run sets `minScore` / `minPassRate` to enforce them.
100
+ */
101
+ export const TEACH_CODE = {
102
+ id: "teach-code",
103
+ name: "Teach Evermind to Code",
104
+ description: "Distil a teacher coder into a (prompt → code) corpus, train an EvermindLM on it, and validate with code-aware gates: structural parse + an execution test reward. Tokenizer supports both train-fresh and import-merges.",
105
+ steps: [
106
+ { id: "distill", type: "distill-corpus", params: { pairs: CODE_DISTILL_PAIRS } },
107
+ { id: "tok", type: "train-tokenizer", params: { numMerges: 200 } },
108
+ { id: "data", type: "dataset-quality", params: { minSequences: 3, minWords: 20 } },
109
+ { id: "model", type: "train-model", params: { epochs: 60, dModel: 24, numLayers: 2, hiddenDim: 32 } },
110
+ { id: "converge", type: "convergence" },
111
+ { id: "eval", type: "evaluate", params: { prompt: "function" } },
112
+ { id: "gen", type: "generate-check", params: { prompt: "function" } },
113
+ { id: "parse", type: "code-parse-check", params: { language: "js" } },
114
+ { id: "reward", type: "code-eval", params: { cases: [{ call: "add(2, 3)", expect: 5 }] } },
115
+ { id: "bench", type: "benchmark" },
116
+ // Held-out pass@1 — measures whether the student can GENERATE passing code on
117
+ // unseen prompts (symmetric with `bench`'s held-out perplexity). Ungated here
118
+ // (a demo-scale model won't pass) so it reports the metric without failing the
119
+ // pipeline; real corpora set `minPass1` to enforce a student-quality floor.
120
+ { id: "codebench", type: "code-benchmark", params: { tasks: [
121
+ { prompt: "function subtract", cases: [{ call: "subtract(5, 2)", expect: 3 }] },
122
+ { prompt: "function isEven", cases: [{ call: "isEven(4)", expect: true }, { call: "isEven(3)", expect: false }] },
123
+ ] } },
124
+ { id: "pkg", type: "roundtrip", params: { name: "evermind-coder" } },
125
+ { id: "export", type: "export", params: { format: "huggingface", name: "evermind-coder", version: "1.0.0" } },
126
+ ],
127
+ };
128
+ export const WORKFLOW_TEMPLATES = [AGENTIC_SEVEN_LAYER, TRAIN_LLM, TEACH_CODE];
66
129
  export function getTemplate(id) {
67
130
  return WORKFLOW_TEMPLATES.find((t) => t.id === id);
68
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/workflow/templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/workflow/templates.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seanhogg/builderforce-memory",
3
- "version": "2026.6.35",
3
+ "version": "2026.7.11",
4
4
  "description": "BuilderForce Agent Memory — runtime layer. SSM execution, Transformer orchestration, online distillation, hybrid RAG retrieval, and persistent agent memory for BuilderForce.ai agents.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -53,7 +53,7 @@
53
53
  },
54
54
  "homepage": "https://github.com/SeanHogg/builderforce-memory/tree/main/packages/memory#readme",
55
55
  "peerDependencies": {
56
- "@seanhogg/builderforce-memory-engine": "^2026.6.35"
56
+ "@seanhogg/builderforce-memory-engine": "^2026.7.11"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@jest/globals": "^29.7.0",
@@ -67,7 +67,7 @@
67
67
  "ts-jest": "^29.2.0",
68
68
  "typescript": "^6.0.3",
69
69
  "@typescript/native-preview": "7.0.0-dev.20260627.2",
70
- "@seanhogg/builderforce-memory-engine": "2026.6.35"
70
+ "@seanhogg/builderforce-memory-engine": "2026.7.11"
71
71
  },
72
72
  "jest": {
73
73
  "preset": "ts-jest/presets/default-esm",
@@ -85,6 +85,8 @@
85
85
  "strict": false,
86
86
  "esModuleInterop": true,
87
87
  "skipLibCheck": true,
88
+ "isolatedModules": true,
89
+ "rootDir": "..",
88
90
  "types": [
89
91
  "@webgpu/types",
90
92
  "jest"
@@ -94,12 +96,14 @@
94
96
  ]
95
97
  },
96
98
  "moduleNameMapper": {
99
+ "^@seanhogg/builderforce-memory-engine$": "<rootDir>/../memory-engine/src/index.ts",
97
100
  "^(\\.{1,2}/.*)\\.js$": "$1"
98
101
  },
99
102
  "collectCoverageFrom": [
100
103
  "src/**/*.ts",
101
104
  "!src/**/index.ts",
102
- "!src/session/**"
105
+ "!src/session/**",
106
+ "!src/limbic/LimbicSession.ts"
103
107
  ],
104
108
  "coverageThreshold": {
105
109
  "global": {
@@ -62,10 +62,19 @@ interface SimilarityCapableStore {
62
62
  recallSimilar(query: string, topK: number, runtime?: unknown): Promise<StoreRecallEntry[]>;
63
63
  }
64
64
 
65
+ /** A store that also exposes each hit's TRUE 0..1 similarity score (preferred). */
66
+ interface ScoredSimilarityStore {
67
+ recallSimilarScored(query: string, topK: number, runtime?: unknown): Promise<Array<{ entry: StoreRecallEntry; score: number }>>;
68
+ }
69
+
65
70
  function hasRecallSimilar(store: unknown): store is SimilarityCapableStore {
66
71
  return typeof (store as SimilarityCapableStore).recallSimilar === 'function';
67
72
  }
68
73
 
74
+ function hasRecallSimilarScored(store: unknown): store is ScoredSimilarityStore {
75
+ return typeof (store as ScoredSimilarityStore).recallSimilarScored === 'function';
76
+ }
77
+
69
78
  export class EvermindCognition {
70
79
  private readonly _store: CognitionFactStore;
71
80
  private readonly _defaultGather?: EvidenceGatherer;
@@ -185,18 +194,26 @@ export class EvermindCognition {
185
194
  const cached = this._recallCache.get(cacheKey);
186
195
  if (cached) return cached;
187
196
 
188
- const raw: StoreRecallEntry[] = hasRecallSimilar(this._store)
189
- ? await this._store.recallSimilar(query, topK, this._runtime)
190
- : [];
197
+ // Prefer the scored recall so ranking uses the TRUE similarity of each hit;
198
+ // fall back to the positional proxy (1/(idx+1)) only for a store that can't
199
+ // report scores. `raw` carries the real 0..1 similarity when available.
200
+ const raw: Array<{ entry: StoreRecallEntry; score: number | null }> =
201
+ hasRecallSimilarScored(this._store)
202
+ ? (await this._store.recallSimilarScored(query, topK, this._runtime))
203
+ .map((s) => ({ entry: s.entry, score: s.score }))
204
+ : hasRecallSimilar(this._store)
205
+ ? (await this._store.recallSimilar(query, topK, this._runtime)).map((entry) => ({ entry, score: null }))
206
+ : [];
191
207
 
192
208
  const now = this._now();
193
209
  const ranked = raw
194
- .map((entry, idx) => {
210
+ .map(({ entry, score }, idx) => {
195
211
  const { content, flagged } = sanitizeRecalledFact(entry.content);
196
212
  const trust = trustScore({ importance: entry.importance, timestamp: entry.timestamp }, now);
197
- // Keep similarity primary (1/(idx+1)) and let trust modulate it,
198
- // so a high-trust fact rises but an irrelevant one can't dominate.
199
- const rankScore = (1 / (idx + 1)) * (0.5 + 0.5 * trust);
213
+ // Similarity primary, trust modulates: use the real score when the store
214
+ // reported one, else the positional proxy (1/(idx+1)) for the same shape.
215
+ const similarity = score != null ? score : 1 / (idx + 1);
216
+ const rankScore = similarity * (0.5 + 0.5 * trust);
200
217
  return { content, trust, flagged, rankScore };
201
218
  })
202
219
  .sort((a, b) => b.rankScore - a.rankScore)
@@ -66,9 +66,45 @@ export interface StackDiagnosticResult {
66
66
  firstFailure?: StackStepResult;
67
67
  /** Outputs produced by the run (e.g. `artifacts.evermind` for a build workflow). */
68
68
  artifacts: Record<string, unknown>;
69
+ /**
70
+ * Curated STRUCTURED metrics the run computed (loss curve, perplexity/top-1,
71
+ * dataset quality, pass@1, convergence, codec MSE) — the numbers steps previously
72
+ * left buried in `ctx.bag` and only echoed into a human `detail` string, forcing a
73
+ * UI to regex-parse them. A UI can now chart/gauge these directly. Only the
74
+ * allow-listed metric keys are included; heavy scratch (model blob, tokenizer,
75
+ * corpus, candidate list) is deliberately excluded.
76
+ */
77
+ metrics: Record<string, unknown>;
69
78
  totalMs: number;
70
79
  }
71
80
 
81
+ /**
82
+ * `ctx.bag` keys that are genuine metrics/reports worth surfacing on the result.
83
+ * Everything else in the bag is scratch (large objects / model instances) and is
84
+ * kept out so the metrics payload stays small and serializable.
85
+ */
86
+ const METRIC_BAG_KEYS = [
87
+ 'trainingHistory', // per-epoch loss curve (train-model / video-train)
88
+ 'datasetMetrics', // { words, sequences, avgSeqLen, duplicateRatio }
89
+ 'benchmark', // BenchmarkReport: perplexity, bitsPerToken, top1/topK, tok/s
90
+ 'converged', // convergence verdict + loss-drop numbers
91
+ 'codeBenchmark', // { pass1, passedTasks, totalTasks, perTask[] }
92
+ 'codeParse', // code-parse check result
93
+ 'codeEval', // code-eval check result
94
+ 'videoReconMSE', // video-roundtrip reconstruction error
95
+ 'videoTrainingHistory', // per-epoch loss curve for the video model
96
+ 'sample', // generate-check sample output
97
+ ] as const;
98
+
99
+ /** Pick the present metric keys out of the bag (skips absent + undefined values). */
100
+ function collectMetrics(bag: Record<string, unknown>): Record<string, unknown> {
101
+ const out: Record<string, unknown> = {};
102
+ for (const key of METRIC_BAG_KEYS) {
103
+ if (bag[key] !== undefined) out[key] = bag[key];
104
+ }
105
+ return out;
106
+ }
107
+
72
108
  /**
73
109
  * Run the steps in order, capturing each result. Never throws — a step that
74
110
  * throws becomes a `fail` row, and the run continues so the caller sees the full
@@ -99,5 +135,5 @@ export async function runStackDiagnostic(
99
135
  opts.onStep?.(result);
100
136
  }
101
137
 
102
- return { ok: !firstFailure, steps: results, ...(firstFailure ? { firstFailure } : {}), artifacts: ctx.artifacts, totalMs: now() - start };
138
+ return { ok: !firstFailure, steps: results, ...(firstFailure ? { firstFailure } : {}), artifacts: ctx.artifacts, metrics: collectMetrics(ctx.bag), totalMs: now() - start };
103
139
  }
@@ -82,6 +82,10 @@ export interface DistillResult {
82
82
  skipReason? : string;
83
83
  /** Number of past exemplars rehearsed alongside this one (EVM-5). */
84
84
  rehearsed? : number;
85
+ /** Student's pre-adapt perplexity on the teacher output, when the quality gate
86
+ * measured it — a "how novel was this exemplar" signal. Kept even when the
87
+ * exemplar was NOT skipped (previously discarded on the trained path). */
88
+ gatePerplexity?: number;
85
89
  }
86
90
 
87
91
  export interface DistillBatchResult {
@@ -100,6 +104,8 @@ export interface DistillationLog {
100
104
  skipReason? : string;
101
105
  finalLoss? : number;
102
106
  epochs : number;
107
+ /** Pre-adapt perplexity on the teacher output (when the quality gate measured it). */
108
+ gatePerplexity? : number;
103
109
  }
104
110
 
105
111
  /** Maximum number of distillation log entries to retain in memory. */
@@ -194,6 +200,11 @@ export class DistillationEngine {
194
200
 
195
201
  // ── Quality gate ──────────────────────────────────────────────────────
196
202
 
203
+ // Pre-adapt novelty of this exemplar (student perplexity on the teacher output).
204
+ // Measured by the gate below; hoisted so it survives to the TRAINED path instead
205
+ // of being dropped for exactly the exemplars we go on to learn from.
206
+ let gatePerplexity: number | undefined;
207
+
197
208
  if (opts.qualityGate) {
198
209
  const gate = opts.qualityGate;
199
210
 
@@ -216,19 +227,19 @@ export class DistillationEngine {
216
227
  }
217
228
 
218
229
  if (gate.maxPerplexity != null) {
219
- let perplexity: number | undefined;
220
230
  try {
221
- perplexity = await this._runtime.evaluate(teacherOutput);
231
+ gatePerplexity = await this._runtime.evaluate(teacherOutput);
222
232
  } catch {
223
233
  // Evaluation failure is non-fatal — proceed with adaptation
224
234
  }
225
- if (perplexity != null && perplexity < gate.maxPerplexity) {
235
+ if (gatePerplexity != null && gatePerplexity < gate.maxPerplexity) {
226
236
  const result: DistillResult = {
227
237
  input,
228
238
  teacherOutput,
229
239
  adaptResult : { losses: [], epochCount: 0, durationMs: 0 },
230
240
  skipped : true,
231
241
  skipReason : 'already_learned',
242
+ gatePerplexity,
232
243
  };
233
244
  this._appendLog({
234
245
  input,
@@ -236,6 +247,7 @@ export class DistillationEngine {
236
247
  skipped : true,
237
248
  skipReason : 'already_learned',
238
249
  epochs : 0,
250
+ gatePerplexity,
239
251
  });
240
252
  return result;
241
253
  }
@@ -270,9 +282,10 @@ export class DistillationEngine {
270
282
  skipped : false,
271
283
  finalLoss : adaptResult.losses.at(-1),
272
284
  epochs : adaptResult.epochCount,
285
+ gatePerplexity,
273
286
  });
274
287
 
275
- return { input, teacherOutput, adaptResult, skipped: false, rehearsed: rehearsed.length };
288
+ return { input, teacherOutput, adaptResult, skipped: false, rehearsed: rehearsed.length, gatePerplexity };
276
289
  }
277
290
 
278
291
  /**
package/src/index.ts CHANGED
@@ -217,9 +217,12 @@ export {
217
217
  BUILTIN_STEPS,
218
218
  AGENTIC_SEVEN_LAYER,
219
219
  TRAIN_LLM,
220
+ TEACH_CODE,
220
221
  WORKFLOW_TEMPLATES,
221
222
  getTemplate,
222
223
  cloneTemplate,
224
+ analyzeCode,
225
+ runJsCases,
223
226
  } from './workflow/index.js';
224
227
  export type {
225
228
  WorkflowConfig,
@@ -228,6 +231,9 @@ export type {
228
231
  StepFactory,
229
232
  WorkflowValidationError,
230
233
  RunWorkflowOptions,
234
+ CodeAnalysis,
235
+ CodeCase,
236
+ CodeEvalResult,
231
237
  } from './workflow/index.js';
232
238
 
233
239
  // ── Publish (ship an engine model export to HF / local folder) ──────────────────
@@ -24,10 +24,15 @@ import {
24
24
  createBindGroup,
25
25
  dispatchKernel,
26
26
  readBuffer,
27
+ personalitySetpoint,
28
+ clampState,
29
+ neutralState,
30
+ LIMBIC_STATE_DIM,
27
31
  type LimbicModelConfig,
28
32
  type LimbicForward,
29
33
  type LimbicSample,
30
34
  type LimbicTrainOptions,
35
+ type PersonalityTraits,
31
36
  } from "@seanhogg/builderforce-memory-engine";
32
37
 
33
38
  import { saveToIndexedDB, loadFromIndexedDB } from "../session/persistence.js";
@@ -49,6 +54,18 @@ export interface LimbicSessionOptions {
49
54
  modelConfig?: Partial<LimbicModelConfig>;
50
55
  /** Deterministic init seed. */
51
56
  seed?: number;
57
+ /**
58
+ * The agent's static personality traits (0..100). Mapped to the resting affective
59
+ * SETPOINT the learned dynamics ride on top of, so training + relaxation happen
60
+ * around the personality baseline instead of neutral ("personality = setpoints,
61
+ * limbic = dynamics"). Ignored when {@link personalitySetpoint} is given.
62
+ */
63
+ personalityTraits?: PersonalityTraits;
64
+ /**
65
+ * An explicit 8-dim resting setpoint (e.g. one already derived by the runtime's
66
+ * `deriveLimbicSetpoints`). Overrides {@link personalityTraits}. Clamped to bounds.
67
+ */
68
+ personalitySetpoint?: ArrayLike<number>;
52
69
  }
53
70
 
54
71
  interface StepBuffers {
@@ -64,6 +81,11 @@ export class LimbicSession {
64
81
  readonly trainer: LimbicTrainer;
65
82
  readonly device: GPUDevice | null;
66
83
  readonly gpuMode: LimbicGpuMode;
84
+ /** The personality-conditioned resting setpoint (8-dim). NEUTRAL when no
85
+ * personality was supplied. The homeostatic baseline the learned dynamics
86
+ * settle toward — see {@link baselineState}. Mutable via {@link setSetpoint} so a
87
+ * long-lived service can re-point it when the active personas change. */
88
+ setpoint: Float32Array;
67
89
  private readonly _name: string;
68
90
  private readonly _idbFactory: IDBFactory | undefined;
69
91
 
@@ -80,6 +102,7 @@ export class LimbicSession {
80
102
  gpuMode: LimbicGpuMode,
81
103
  name: string,
82
104
  idbFactory: IDBFactory | undefined,
105
+ setpoint: Float32Array,
83
106
  ) {
84
107
  this.model = model;
85
108
  this.trainer = trainer;
@@ -87,6 +110,32 @@ export class LimbicSession {
87
110
  this.gpuMode = gpuMode;
88
111
  this._name = name;
89
112
  this._idbFactory = idbFactory;
113
+ this.setpoint = setpoint;
114
+ }
115
+
116
+ /**
117
+ * A fresh copy of the personality-conditioned resting state. Seed training-sample
118
+ * states and initial affect from this so the learned dynamics move AROUND the
119
+ * agent's personality baseline rather than a fixed neutral. NEUTRAL when the
120
+ * session was created with no personality.
121
+ */
122
+ baselineState(): Float32Array {
123
+ return Float32Array.from(this.setpoint);
124
+ }
125
+
126
+ /**
127
+ * Re-point the resting setpoint after construction — e.g. a long-lived service
128
+ * recomputing it when the active personas change. An explicit 8-dim vector wins;
129
+ * else the traits are mapped; else neutral. Clamped to bounds.
130
+ */
131
+ setSetpoint(traits?: PersonalityTraits, explicit?: ArrayLike<number>): void {
132
+ if (explicit && explicit.length >= LIMBIC_STATE_DIM) {
133
+ this.setpoint = clampState(Float32Array.from(explicit));
134
+ } else if (traits) {
135
+ this.setpoint = personalitySetpoint(traits);
136
+ } else {
137
+ this.setpoint = neutralState();
138
+ }
90
139
  }
91
140
 
92
141
  static async create(options: LimbicSessionOptions = {}): Promise<LimbicSession> {
@@ -129,7 +178,18 @@ export class LimbicSession {
129
178
  model.loadWeights(options.checkpointBuffer);
130
179
  }
131
180
  const trainer = new LimbicTrainer(model, device);
132
- return new LimbicSession(model, trainer, device, gpuMode, options.name ?? "limbic-default", options.idbFactory);
181
+ // Resolve the resting setpoint: an explicit 8-dim vector wins; else map the
182
+ // personality traits; else neutral. This is where the STATIC personality enters
183
+ // the (dynamic, trainable) limbic system.
184
+ let setpoint: Float32Array;
185
+ if (options.personalitySetpoint && options.personalitySetpoint.length >= LIMBIC_STATE_DIM) {
186
+ setpoint = clampState(Float32Array.from(options.personalitySetpoint));
187
+ } else if (options.personalityTraits) {
188
+ setpoint = personalitySetpoint(options.personalityTraits);
189
+ } else {
190
+ setpoint = neutralState();
191
+ }
192
+ return new LimbicSession(model, trainer, device, gpuMode, options.name ?? "limbic-default", options.idbFactory, setpoint);
133
193
  }
134
194
 
135
195
  /** One affect step. Uses the GPU kernel when a device is available, else CPU. */