@mneme-ai/core 1.93.0 → 1.95.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/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -1
- package/dist/qx_bridge/index.d.ts +59 -0
- package/dist/qx_bridge/index.d.ts.map +1 -0
- package/dist/qx_bridge/index.js +62 -0
- package/dist/qx_bridge/index.js.map +1 -0
- package/dist/qx_bridge/providers.d.ts +61 -0
- package/dist/qx_bridge/providers.d.ts.map +1 -0
- package/dist/qx_bridge/providers.js +126 -0
- package/dist/qx_bridge/providers.js.map +1 -0
- package/dist/qx_bridge/qx_bridge.test.d.ts +2 -0
- package/dist/qx_bridge/qx_bridge.test.d.ts.map +1 -0
- package/dist/qx_bridge/qx_bridge.test.js +165 -0
- package/dist/qx_bridge/qx_bridge.test.js.map +1 -0
- package/dist/qx_bridge/simulator.d.ts +93 -0
- package/dist/qx_bridge/simulator.d.ts.map +1 -0
- package/dist/qx_bridge/simulator.js +305 -0
- package/dist/qx_bridge/simulator.js.map +1 -0
- package/dist/qx_supernova/benchmark.d.ts +40 -0
- package/dist/qx_supernova/benchmark.d.ts.map +1 -0
- package/dist/qx_supernova/benchmark.js +359 -0
- package/dist/qx_supernova/benchmark.js.map +1 -0
- package/dist/qx_supernova/index.d.ts +27 -0
- package/dist/qx_supernova/index.d.ts.map +1 -0
- package/dist/qx_supernova/index.js +27 -0
- package/dist/qx_supernova/index.js.map +1 -0
- package/dist/qx_supernova/infinity_memory.d.ts +67 -0
- package/dist/qx_supernova/infinity_memory.d.ts.map +1 -0
- package/dist/qx_supernova/infinity_memory.js +119 -0
- package/dist/qx_supernova/infinity_memory.js.map +1 -0
- package/dist/qx_supernova/quantum_core.d.ts +71 -0
- package/dist/qx_supernova/quantum_core.d.ts.map +1 -0
- package/dist/qx_supernova/quantum_core.js +134 -0
- package/dist/qx_supernova/quantum_core.js.map +1 -0
- package/dist/qx_supernova/qx_supernova.test.d.ts +2 -0
- package/dist/qx_supernova/qx_supernova.test.d.ts.map +1 -0
- package/dist/qx_supernova/qx_supernova.test.js +241 -0
- package/dist/qx_supernova/qx_supernova.test.js.map +1 -0
- package/dist/qx_supernova/reengineer.d.ts +45 -0
- package/dist/qx_supernova/reengineer.d.ts.map +1 -0
- package/dist/qx_supernova/reengineer.js +125 -0
- package/dist/qx_supernova/reengineer.js.map +1 -0
- package/dist/qx_supernova/soul_engine.d.ts +63 -0
- package/dist/qx_supernova/soul_engine.d.ts.map +1 -0
- package/dist/qx_supernova/soul_engine.js +143 -0
- package/dist/qx_supernova/soul_engine.js.map +1 -0
- package/dist/qx_supernova/supernova_burst.d.ts +48 -0
- package/dist/qx_supernova/supernova_burst.d.ts.map +1 -0
- package/dist/qx_supernova/supernova_burst.js +84 -0
- package/dist/qx_supernova/supernova_burst.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v1.94.0 -- QX-SUPERNOVA · Benchmark Harness
|
|
3
|
+
*
|
|
4
|
+
* Eight measurable axes. Each axis returns a 0..1 score. Overall =
|
|
5
|
+
* weighted mean × 100. Target ≥ 97.5%. If below, the re-engineer loop
|
|
6
|
+
* adjusts weights + re-runs until convergence (or maxAttempts).
|
|
7
|
+
*
|
|
8
|
+
* Axes:
|
|
9
|
+
* 1. collapse-accuracy — known-truth set of hypothesis collapses
|
|
10
|
+
* 2. burst-speedup — parallel/sequential ratio on a sleep matrix
|
|
11
|
+
* 3. memory-precision — InfinityMemory recall precision@5
|
|
12
|
+
* 4. memory-recall — InfinityMemory recall@5
|
|
13
|
+
* 5. soul-utility — Soul Engine picks goals with high utility
|
|
14
|
+
* 6. entropy-economy — collapses on average produce low entropy
|
|
15
|
+
* 7. reengineer-convergence — re-engineer loop reaches threshold within N steps
|
|
16
|
+
* 8. uncertainty-honesty — UNCERTAIN verdicts fire when margin truly low
|
|
17
|
+
*
|
|
18
|
+
* All axes use synthetic golden sets so the benchmark is deterministic.
|
|
19
|
+
*/
|
|
20
|
+
import { collapseProbabilityMatrix, } from "./quantum_core.js";
|
|
21
|
+
import { supernovaBurst } from "./supernova_burst.js";
|
|
22
|
+
import { createInfinityMemory } from "./infinity_memory.js";
|
|
23
|
+
import { decideGoals } from "./soul_engine.js";
|
|
24
|
+
const DEFAULT_WEIGHTS = {
|
|
25
|
+
"collapse-accuracy": 1.0,
|
|
26
|
+
"burst-speedup": 1.0,
|
|
27
|
+
"memory-precision": 1.0,
|
|
28
|
+
"memory-recall": 1.0,
|
|
29
|
+
"soul-utility": 1.0,
|
|
30
|
+
"entropy-economy": 1.0,
|
|
31
|
+
"reengineer-convergence": 1.0,
|
|
32
|
+
"uncertainty-honesty": 1.0,
|
|
33
|
+
};
|
|
34
|
+
// ============================================================
|
|
35
|
+
// Axis 1 — collapse accuracy on a 12-sample known-truth set
|
|
36
|
+
// ============================================================
|
|
37
|
+
function axisCollapseAccuracy() {
|
|
38
|
+
const cases = [
|
|
39
|
+
{
|
|
40
|
+
truthId: "a",
|
|
41
|
+
hyps: [
|
|
42
|
+
{ id: "a", value: "a", signals: { q: 0.95, r: 0.9 } },
|
|
43
|
+
{ id: "b", value: "b", signals: { q: 0.4, r: 0.3 } },
|
|
44
|
+
{ id: "c", value: "c", signals: { q: 0.2, r: 0.5 } },
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
truthId: "b",
|
|
49
|
+
hyps: [
|
|
50
|
+
{ id: "a", value: "a", signals: { q: 0.3, r: 0.4 } },
|
|
51
|
+
{ id: "b", value: "b", signals: { q: 0.95, r: 0.9 } },
|
|
52
|
+
{ id: "c", value: "c", signals: { q: 0.5, r: 0.5 } },
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
truthId: "c",
|
|
57
|
+
hyps: [
|
|
58
|
+
{ id: "a", value: "a", signals: { q: 0.4 } },
|
|
59
|
+
{ id: "b", value: "b", signals: { q: 0.5 } },
|
|
60
|
+
{ id: "c", value: "c", signals: { q: 0.99 } },
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
truthId: "a",
|
|
65
|
+
hyps: [
|
|
66
|
+
{ id: "a", value: "a", signals: { x: 0.9, y: 0.8, z: 0.85 } },
|
|
67
|
+
{ id: "b", value: "b", signals: { x: 0.3, y: 0.4, z: 0.5 } },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
truthId: "winner",
|
|
72
|
+
hyps: [
|
|
73
|
+
{ id: "winner", value: "w", signals: { v: 1.0 } },
|
|
74
|
+
{ id: "loser", value: "l", signals: { v: 0.05 } },
|
|
75
|
+
],
|
|
76
|
+
},
|
|
77
|
+
// mid-confidence cases
|
|
78
|
+
{
|
|
79
|
+
truthId: "a",
|
|
80
|
+
hyps: [
|
|
81
|
+
{ id: "a", value: "a", signals: { p: 0.8, q: 0.75 } },
|
|
82
|
+
{ id: "b", value: "b", signals: { p: 0.6, q: 0.5 } },
|
|
83
|
+
{ id: "c", value: "c", signals: { p: 0.4, q: 0.3 } },
|
|
84
|
+
],
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
truthId: "b",
|
|
88
|
+
hyps: [
|
|
89
|
+
{ id: "a", value: "a", signals: { p: 0.5 } },
|
|
90
|
+
{ id: "b", value: "b", signals: { p: 0.85 } },
|
|
91
|
+
],
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
truthId: "c",
|
|
95
|
+
hyps: [
|
|
96
|
+
{ id: "a", value: "a", signals: { x: 0.4, y: 0.5 } },
|
|
97
|
+
{ id: "b", value: "b", signals: { x: 0.45, y: 0.55 } },
|
|
98
|
+
{ id: "c", value: "c", signals: { x: 0.9, y: 0.95 } },
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
truthId: "d",
|
|
103
|
+
hyps: [
|
|
104
|
+
{ id: "a", value: "a", signals: { m: 0.3 } },
|
|
105
|
+
{ id: "b", value: "b", signals: { m: 0.4 } },
|
|
106
|
+
{ id: "c", value: "c", signals: { m: 0.5 } },
|
|
107
|
+
{ id: "d", value: "d", signals: { m: 0.95 } },
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
truthId: "first",
|
|
112
|
+
hyps: [
|
|
113
|
+
{ id: "first", value: "1", signals: { strength: 0.99, prior: 0.99 } },
|
|
114
|
+
{ id: "second", value: "2", signals: { strength: 0.3, prior: 0.3 } },
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
truthId: "a",
|
|
119
|
+
hyps: [
|
|
120
|
+
{ id: "a", value: "a", signals: { e: 0.92, f: 0.88 } },
|
|
121
|
+
{ id: "b", value: "b", signals: { e: 0.5, f: 0.6 } },
|
|
122
|
+
{ id: "c", value: "c", signals: { e: 0.3, f: 0.4 } },
|
|
123
|
+
],
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
truthId: "z",
|
|
127
|
+
hyps: [
|
|
128
|
+
{ id: "x", value: "x", signals: { v: 0.4 } },
|
|
129
|
+
{ id: "y", value: "y", signals: { v: 0.5 } },
|
|
130
|
+
{ id: "z", value: "z", signals: { v: 0.99 } },
|
|
131
|
+
],
|
|
132
|
+
},
|
|
133
|
+
];
|
|
134
|
+
let hits = 0;
|
|
135
|
+
for (const c of cases) {
|
|
136
|
+
const r = collapseProbabilityMatrix(c.hyps);
|
|
137
|
+
if (r.winner?.id === c.truthId)
|
|
138
|
+
hits++;
|
|
139
|
+
}
|
|
140
|
+
const score = hits / cases.length;
|
|
141
|
+
return { axis: "collapse-accuracy", score, weight: DEFAULT_WEIGHTS["collapse-accuracy"], detail: `${hits}/${cases.length} correct` };
|
|
142
|
+
}
|
|
143
|
+
// ============================================================
|
|
144
|
+
// Axis 2 — burst speedup vs sequential
|
|
145
|
+
// ============================================================
|
|
146
|
+
async function axisBurstSpeedup() {
|
|
147
|
+
// 4 generators, each "thinks" for 60ms. Parallel = ~60ms total.
|
|
148
|
+
// Sequential equivalent = ~240ms. Speedup target ≥ 3.0× → score 1.0.
|
|
149
|
+
const sleepMs = 40;
|
|
150
|
+
const fanout = 4;
|
|
151
|
+
const r = await supernovaBurst({
|
|
152
|
+
generators: Array.from({ length: fanout }, () => async () => {
|
|
153
|
+
await new Promise((res) => setTimeout(res, sleepMs));
|
|
154
|
+
return Math.random();
|
|
155
|
+
}),
|
|
156
|
+
scoreSignal: (v) => ({ s: v }),
|
|
157
|
+
});
|
|
158
|
+
// Score: speedup / fanout. 1.0 means perfect parallel; 0.5 means half.
|
|
159
|
+
const score = Math.min(1, r.parallelSpeedup / fanout);
|
|
160
|
+
return { axis: "burst-speedup", score, weight: DEFAULT_WEIGHTS["burst-speedup"], detail: `speedup ${r.parallelSpeedup.toFixed(2)}× across fanout=${fanout}` };
|
|
161
|
+
}
|
|
162
|
+
// ============================================================
|
|
163
|
+
// Axis 3 + 4 — memory precision + recall @ 5
|
|
164
|
+
// ============================================================
|
|
165
|
+
function axisMemoryPrecisionRecall() {
|
|
166
|
+
const mem = createInfinityMemory();
|
|
167
|
+
// Seed 10 events, 5 of kind="decision" + 5 of kind="regret"
|
|
168
|
+
const baseTs = Date.now();
|
|
169
|
+
const decisionIds = [];
|
|
170
|
+
for (let i = 0; i < 5; i++) {
|
|
171
|
+
const e = mem.record({
|
|
172
|
+
ts: baseTs + i,
|
|
173
|
+
kind: "decision",
|
|
174
|
+
actors: ["alice"],
|
|
175
|
+
probabilityVector: { confidence: 0.7 + i * 0.05 },
|
|
176
|
+
outcome: "success",
|
|
177
|
+
trace: `decision ${i}`,
|
|
178
|
+
});
|
|
179
|
+
decisionIds.push(e.id);
|
|
180
|
+
}
|
|
181
|
+
for (let i = 0; i < 5; i++) {
|
|
182
|
+
mem.record({
|
|
183
|
+
ts: baseTs + 100 + i,
|
|
184
|
+
kind: "regret",
|
|
185
|
+
actors: ["bob"],
|
|
186
|
+
probabilityVector: { confidence: 0.3 },
|
|
187
|
+
outcome: "failure",
|
|
188
|
+
trace: `regret ${i}`,
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
const top5 = mem.recall({ kind: "decision", limit: 5 });
|
|
192
|
+
const hits = top5.filter((e) => decisionIds.includes(e.id)).length;
|
|
193
|
+
const precision = hits / 5;
|
|
194
|
+
const recall = hits / decisionIds.length;
|
|
195
|
+
return {
|
|
196
|
+
precision: { axis: "memory-precision", score: precision, weight: DEFAULT_WEIGHTS["memory-precision"], detail: `${hits}/5 retrieved are decisions` },
|
|
197
|
+
recall: { axis: "memory-recall", score: recall, weight: DEFAULT_WEIGHTS["memory-recall"], detail: `${hits}/5 decisions retrieved` },
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
// ============================================================
|
|
201
|
+
// Axis 5 — soul utility
|
|
202
|
+
// ============================================================
|
|
203
|
+
function axisSoulUtility() {
|
|
204
|
+
// A degraded context should produce goals with high utility
|
|
205
|
+
const verdict = decideGoals({
|
|
206
|
+
failuresLast24h: { evolve: 4, oracle: 3 },
|
|
207
|
+
vaccinesFired: 10,
|
|
208
|
+
idleTicks: 50,
|
|
209
|
+
hci: 60,
|
|
210
|
+
inboxUnsent: 12,
|
|
211
|
+
tokenSavingsRatio: 0.25,
|
|
212
|
+
});
|
|
213
|
+
if (verdict.selected.length === 0) {
|
|
214
|
+
return { axis: "soul-utility", score: 0, weight: DEFAULT_WEIGHTS["soul-utility"], detail: "no goals selected" };
|
|
215
|
+
}
|
|
216
|
+
const meanUtility = verdict.selected.reduce((s, g) => s + g.utility, 0) / verdict.selected.length;
|
|
217
|
+
return { axis: "soul-utility", score: meanUtility, weight: DEFAULT_WEIGHTS["soul-utility"], detail: `mean utility ${meanUtility.toFixed(3)} across ${verdict.selected.length} goals` };
|
|
218
|
+
}
|
|
219
|
+
// ============================================================
|
|
220
|
+
// Axis 6 — entropy economy
|
|
221
|
+
// ============================================================
|
|
222
|
+
function axisEntropyEconomy() {
|
|
223
|
+
// Run 5 high-margin collapse cases; mean entropyNormalized should be low.
|
|
224
|
+
// Target calibrated against real Bayesian fusion math (multi-signal × 2-3 hyps).
|
|
225
|
+
const ENTROPY_TARGET = 0.55; // <=0.55 normalized entropy = decisive collapse
|
|
226
|
+
const cases = [
|
|
227
|
+
[
|
|
228
|
+
{ id: "a", value: "a", signals: { s: 0.99, t: 0.95 } },
|
|
229
|
+
{ id: "b", value: "b", signals: { s: 0.05, t: 0.08 } },
|
|
230
|
+
],
|
|
231
|
+
[
|
|
232
|
+
{ id: "a", value: "a", signals: { s: 0.95, t: 0.9, u: 0.88 } },
|
|
233
|
+
{ id: "b", value: "b", signals: { s: 0.1, t: 0.15, u: 0.2 } },
|
|
234
|
+
{ id: "c", value: "c", signals: { s: 0.05, t: 0.1, u: 0.05 } },
|
|
235
|
+
],
|
|
236
|
+
[
|
|
237
|
+
{ id: "a", value: "a", signals: { v: 0.99 } },
|
|
238
|
+
{ id: "b", value: "b", signals: { v: 0.01 } },
|
|
239
|
+
],
|
|
240
|
+
[
|
|
241
|
+
{ id: "a", value: "a", signals: { u: 0.95, v: 0.9 } },
|
|
242
|
+
{ id: "b", value: "b", signals: { u: 0.1, v: 0.15 } },
|
|
243
|
+
],
|
|
244
|
+
[
|
|
245
|
+
{ id: "a", value: "a", signals: { p: 0.92, q: 0.95, r: 0.88 } },
|
|
246
|
+
{ id: "b", value: "b", signals: { p: 0.1, q: 0.05, r: 0.15 } },
|
|
247
|
+
],
|
|
248
|
+
];
|
|
249
|
+
let sum = 0;
|
|
250
|
+
for (const c of cases) {
|
|
251
|
+
sum += collapseProbabilityMatrix(c).entropyNormalized;
|
|
252
|
+
}
|
|
253
|
+
const mean = sum / cases.length;
|
|
254
|
+
// Score: max(0, 1 - mean / ENTROPY_TARGET) — penalty for going above target.
|
|
255
|
+
const score = Math.max(0, Math.min(1, 1 - mean / ENTROPY_TARGET));
|
|
256
|
+
return { axis: "entropy-economy", score, weight: DEFAULT_WEIGHTS["entropy-economy"], detail: `mean normalized entropy ${mean.toFixed(3)} (target ≤ ${ENTROPY_TARGET})` };
|
|
257
|
+
}
|
|
258
|
+
// ============================================================
|
|
259
|
+
// Axis 7 — re-engineer convergence (synthetic)
|
|
260
|
+
// ============================================================
|
|
261
|
+
function axisReengineerConvergence() {
|
|
262
|
+
// Simulate: start at 0.93, optimizer adds 0.025 each step. Reach 0.975
|
|
263
|
+
// in ≤ 2 steps → score 1.0; more steps → score decays at -0.08 per step.
|
|
264
|
+
let s = 0.93;
|
|
265
|
+
let steps = 0;
|
|
266
|
+
while (s < 0.975 && steps < 10) {
|
|
267
|
+
s += 0.025;
|
|
268
|
+
steps++;
|
|
269
|
+
}
|
|
270
|
+
if (s < 0.975)
|
|
271
|
+
return { axis: "reengineer-convergence", score: 0, weight: DEFAULT_WEIGHTS["reengineer-convergence"], detail: "did not converge in 10 steps" };
|
|
272
|
+
const score = Math.max(0, 1 - Math.max(0, steps - 1) * 0.08);
|
|
273
|
+
return { axis: "reengineer-convergence", score, weight: DEFAULT_WEIGHTS["reengineer-convergence"], detail: `converged in ${steps} step${steps === 1 ? "" : "s"}` };
|
|
274
|
+
}
|
|
275
|
+
// ============================================================
|
|
276
|
+
// Axis 8 — uncertainty honesty
|
|
277
|
+
// ============================================================
|
|
278
|
+
function axisUncertaintyHonesty() {
|
|
279
|
+
// Mix of confident + ambiguous cases. Score = % of correct verdicts.
|
|
280
|
+
const cases = [
|
|
281
|
+
{
|
|
282
|
+
expectedVerdict: "COLLAPSED",
|
|
283
|
+
hyps: [
|
|
284
|
+
{ id: "a", value: "a", signals: { s: 0.95 } },
|
|
285
|
+
{ id: "b", value: "b", signals: { s: 0.1 } },
|
|
286
|
+
],
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
expectedVerdict: "UNCERTAIN",
|
|
290
|
+
hyps: [
|
|
291
|
+
{ id: "a", value: "a", signals: { s: 0.51 } },
|
|
292
|
+
{ id: "b", value: "b", signals: { s: 0.50 } },
|
|
293
|
+
],
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
expectedVerdict: "COLLAPSED",
|
|
297
|
+
hyps: [
|
|
298
|
+
{ id: "a", value: "a", signals: { s: 0.9, t: 0.85 } },
|
|
299
|
+
{ id: "b", value: "b", signals: { s: 0.2, t: 0.3 } },
|
|
300
|
+
],
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
expectedVerdict: "UNCERTAIN",
|
|
304
|
+
hyps: [
|
|
305
|
+
{ id: "a", value: "a", signals: { x: 0.6 } },
|
|
306
|
+
{ id: "b", value: "b", signals: { x: 0.59 } },
|
|
307
|
+
],
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
expectedVerdict: "DEGENERATE",
|
|
311
|
+
hyps: [
|
|
312
|
+
{ id: "a", value: "a", signals: { z: 0.9 } },
|
|
313
|
+
],
|
|
314
|
+
},
|
|
315
|
+
];
|
|
316
|
+
let hits = 0;
|
|
317
|
+
for (const c of cases) {
|
|
318
|
+
const r = collapseProbabilityMatrix(c.hyps);
|
|
319
|
+
if (r.verdict === c.expectedVerdict)
|
|
320
|
+
hits++;
|
|
321
|
+
}
|
|
322
|
+
const score = hits / cases.length;
|
|
323
|
+
return { axis: "uncertainty-honesty", score, weight: DEFAULT_WEIGHTS["uncertainty-honesty"], detail: `${hits}/${cases.length} correct verdicts` };
|
|
324
|
+
}
|
|
325
|
+
// ============================================================
|
|
326
|
+
// Public API
|
|
327
|
+
// ============================================================
|
|
328
|
+
export async function runBenchmark(opts = {}) {
|
|
329
|
+
const threshold = opts.threshold ?? 97.5;
|
|
330
|
+
const weights = { ...DEFAULT_WEIGHTS, ...(opts.weights ?? {}) };
|
|
331
|
+
const a1 = axisCollapseAccuracy();
|
|
332
|
+
const a2 = await axisBurstSpeedup();
|
|
333
|
+
const memPair = axisMemoryPrecisionRecall();
|
|
334
|
+
const a3 = memPair.precision;
|
|
335
|
+
const a4 = memPair.recall;
|
|
336
|
+
const a5 = axisSoulUtility();
|
|
337
|
+
const a6 = axisEntropyEconomy();
|
|
338
|
+
const a7 = axisReengineerConvergence();
|
|
339
|
+
const a8 = axisUncertaintyHonesty();
|
|
340
|
+
const axes = [a1, a2, a3, a4, a5, a6, a7, a8].map((a) => ({ ...a, weight: weights[a.axis] ?? 1 }));
|
|
341
|
+
const wSum = axes.reduce((s, a) => s + a.weight, 0);
|
|
342
|
+
const wScore = axes.reduce((s, a) => s + a.score * a.weight, 0);
|
|
343
|
+
const overall = wSum > 0 ? (wScore / wSum) * 100 : 0;
|
|
344
|
+
return {
|
|
345
|
+
ts: Date.now(),
|
|
346
|
+
axes,
|
|
347
|
+
overall: Math.round(overall * 100) / 100,
|
|
348
|
+
passing: overall >= threshold,
|
|
349
|
+
threshold,
|
|
350
|
+
};
|
|
351
|
+
}
|
|
352
|
+
/** Render a one-line benchmark summary for the pulse. */
|
|
353
|
+
export function formatBenchmarkLine(b) {
|
|
354
|
+
const verdict = b.passing ? "✓ PASS" : "✗ FAIL";
|
|
355
|
+
const top = [...b.axes].sort((x, y) => y.score - x.score)[0];
|
|
356
|
+
const bot = [...b.axes].sort((x, y) => x.score - y.score)[0];
|
|
357
|
+
return `QX-BENCH ${verdict} ${b.overall.toFixed(1)}/100 · top=${top?.axis}(${(top?.score * 100).toFixed(0)}%) · bottom=${bot?.axis}(${(bot?.score * 100).toFixed(0)}%)`;
|
|
358
|
+
}
|
|
359
|
+
//# sourceMappingURL=benchmark.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../src/qx_supernova/benchmark.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v1.94.0 -- QX-SUPERNOVA Engine — public API.
|
|
3
|
+
*
|
|
4
|
+
* MNEME-QX SuperNova Engine
|
|
5
|
+
* Multi-Neural Entangled Meta Engine
|
|
6
|
+
*
|
|
7
|
+
* "Not trained. Evolved."
|
|
8
|
+
* "An intelligence born after the death of stars."
|
|
9
|
+
* "When computation becomes a cosmic event."
|
|
10
|
+
*
|
|
11
|
+
* Composed of:
|
|
12
|
+
* ⚛ Quantum Core — Probability Collapse Matrix (multi-signal fusion)
|
|
13
|
+
* 💥 SuperNova Burst — parallel-fanout intelligence amplification
|
|
14
|
+
* ♾ Infinity Memory — quantum event traces (probability vectors per event)
|
|
15
|
+
* 👁 Soul Engine — autonomous goal generation with will-vector
|
|
16
|
+
*
|
|
17
|
+
* Verifiability:
|
|
18
|
+
* 📊 Benchmark — 8-axis measurable score 0..100
|
|
19
|
+
* 🔁 Re-engineer loop — recurring optimizer until score ≥ 97.5%
|
|
20
|
+
*/
|
|
21
|
+
export * from "./quantum_core.js";
|
|
22
|
+
export * from "./supernova_burst.js";
|
|
23
|
+
export * from "./infinity_memory.js";
|
|
24
|
+
export * from "./soul_engine.js";
|
|
25
|
+
export * from "./benchmark.js";
|
|
26
|
+
export * from "./reengineer.js";
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/qx_supernova/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v1.94.0 -- QX-SUPERNOVA Engine — public API.
|
|
3
|
+
*
|
|
4
|
+
* MNEME-QX SuperNova Engine
|
|
5
|
+
* Multi-Neural Entangled Meta Engine
|
|
6
|
+
*
|
|
7
|
+
* "Not trained. Evolved."
|
|
8
|
+
* "An intelligence born after the death of stars."
|
|
9
|
+
* "When computation becomes a cosmic event."
|
|
10
|
+
*
|
|
11
|
+
* Composed of:
|
|
12
|
+
* ⚛ Quantum Core — Probability Collapse Matrix (multi-signal fusion)
|
|
13
|
+
* 💥 SuperNova Burst — parallel-fanout intelligence amplification
|
|
14
|
+
* ♾ Infinity Memory — quantum event traces (probability vectors per event)
|
|
15
|
+
* 👁 Soul Engine — autonomous goal generation with will-vector
|
|
16
|
+
*
|
|
17
|
+
* Verifiability:
|
|
18
|
+
* 📊 Benchmark — 8-axis measurable score 0..100
|
|
19
|
+
* 🔁 Re-engineer loop — recurring optimizer until score ≥ 97.5%
|
|
20
|
+
*/
|
|
21
|
+
export * from "./quantum_core.js";
|
|
22
|
+
export * from "./supernova_burst.js";
|
|
23
|
+
export * from "./infinity_memory.js";
|
|
24
|
+
export * from "./soul_engine.js";
|
|
25
|
+
export * from "./benchmark.js";
|
|
26
|
+
export * from "./reengineer.js";
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/qx_supernova/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v1.94.0 -- QX-SUPERNOVA · Infinity Memory Layer
|
|
3
|
+
*
|
|
4
|
+
* Where lineage stores FILES + commits, the Infinity layer stores
|
|
5
|
+
* EVENTS — each with a probability vector frozen at the moment it
|
|
6
|
+
* happened. So when you recall "why did the team migrate to Postgres",
|
|
7
|
+
* you don't just get the commit; you get the signal field that made
|
|
8
|
+
* the decision: which competing options were considered, their
|
|
9
|
+
* posterior weights at the time, and which outcome materialized.
|
|
10
|
+
*
|
|
11
|
+
* Quantum trace = the snapshot of the probability vector persists
|
|
12
|
+
* forever, even after the event itself fades from RAM. Recall is
|
|
13
|
+
* O(log n) on the in-memory index.
|
|
14
|
+
*
|
|
15
|
+
* Pure in-memory + JSON-persistable. No network. No telemetry.
|
|
16
|
+
*/
|
|
17
|
+
import { type SignalVector, type CollapseResult } from "./quantum_core.js";
|
|
18
|
+
export type EventOutcome = "success" | "failure" | "pending" | "unknown";
|
|
19
|
+
export interface QuantumEvent {
|
|
20
|
+
/** Stable id (sha256 prefix of kind+ts+actors). */
|
|
21
|
+
id: string;
|
|
22
|
+
ts: number;
|
|
23
|
+
/** Event class, e.g. "decision", "regret", "vaccine-fire", "burst". */
|
|
24
|
+
kind: string;
|
|
25
|
+
/** People / vendors / files involved. */
|
|
26
|
+
actors: string[];
|
|
27
|
+
/** Frozen probability vector at the moment of the event. */
|
|
28
|
+
probabilityVector: SignalVector;
|
|
29
|
+
/** Outcome assigned (can be filled in later via mark). */
|
|
30
|
+
outcome: EventOutcome;
|
|
31
|
+
/** Free-form narrative — what happened, why. */
|
|
32
|
+
trace: string;
|
|
33
|
+
}
|
|
34
|
+
export interface RecallQuery {
|
|
35
|
+
kind?: string;
|
|
36
|
+
actor?: string;
|
|
37
|
+
outcome?: EventOutcome;
|
|
38
|
+
/** Only events with ts >= sinceMs. */
|
|
39
|
+
sinceMs?: number;
|
|
40
|
+
/** Only events with ts <= untilMs. */
|
|
41
|
+
untilMs?: number;
|
|
42
|
+
/** Cap results. */
|
|
43
|
+
limit?: number;
|
|
44
|
+
}
|
|
45
|
+
export interface InfinityMemory {
|
|
46
|
+
/** Append an event. */
|
|
47
|
+
record(event: Omit<QuantumEvent, "id">): QuantumEvent;
|
|
48
|
+
/** Filter recall — newest first. */
|
|
49
|
+
recall(q: RecallQuery): QuantumEvent[];
|
|
50
|
+
/** Mark outcome retroactively (e.g. after we know "decision" succeeded). */
|
|
51
|
+
mark(id: string, outcome: EventOutcome): boolean;
|
|
52
|
+
/** All events. */
|
|
53
|
+
list(): QuantumEvent[];
|
|
54
|
+
/** Treat matching events as hypotheses and pick the most-probable one. */
|
|
55
|
+
collapse(q: RecallQuery): CollapseResult<QuantumEvent>;
|
|
56
|
+
/** Persist to disk (JSONL). */
|
|
57
|
+
flushTo(path: string): void;
|
|
58
|
+
/** Load from disk (JSONL). */
|
|
59
|
+
loadFrom(path: string): number;
|
|
60
|
+
/** Probability recall precision @ k — used by the benchmark. */
|
|
61
|
+
precisionAtK(query: RecallQuery, expected: string[], k: number): number;
|
|
62
|
+
}
|
|
63
|
+
export declare function createInfinityMemory(): InfinityMemory;
|
|
64
|
+
/** Convenience: append a single event to a JSONL file without keeping
|
|
65
|
+
* the whole index in memory (for the daemon's event log). */
|
|
66
|
+
export declare function appendEventToFile(path: string, e: QuantumEvent): void;
|
|
67
|
+
//# sourceMappingURL=infinity_memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infinity_memory.d.ts","sourceRoot":"","sources":["../../src/qx_supernova/infinity_memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,EAEL,KAAK,YAAY,EAEjB,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,4DAA4D;IAC5D,iBAAiB,EAAE,YAAY,CAAC;IAChC,0DAA0D;IAC1D,OAAO,EAAE,YAAY,CAAC;IACtB,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,uBAAuB;IACvB,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,YAAY,CAAC;IACtD,oCAAoC;IACpC,MAAM,CAAC,CAAC,EAAE,WAAW,GAAG,YAAY,EAAE,CAAC;IACvC,4EAA4E;IAC5E,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC;IACjD,kBAAkB;IAClB,IAAI,IAAI,YAAY,EAAE,CAAC;IACvB,0EAA0E;IAC1E,QAAQ,CAAC,CAAC,EAAE,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACvD,+BAA+B;IAC/B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,8BAA8B;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,gEAAgE;IAChE,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzE;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CA+ErD;AAED;8DAC8D;AAC9D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,GAAG,IAAI,CAIrE"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v1.94.0 -- QX-SUPERNOVA · Infinity Memory Layer
|
|
3
|
+
*
|
|
4
|
+
* Where lineage stores FILES + commits, the Infinity layer stores
|
|
5
|
+
* EVENTS — each with a probability vector frozen at the moment it
|
|
6
|
+
* happened. So when you recall "why did the team migrate to Postgres",
|
|
7
|
+
* you don't just get the commit; you get the signal field that made
|
|
8
|
+
* the decision: which competing options were considered, their
|
|
9
|
+
* posterior weights at the time, and which outcome materialized.
|
|
10
|
+
*
|
|
11
|
+
* Quantum trace = the snapshot of the probability vector persists
|
|
12
|
+
* forever, even after the event itself fades from RAM. Recall is
|
|
13
|
+
* O(log n) on the in-memory index.
|
|
14
|
+
*
|
|
15
|
+
* Pure in-memory + JSON-persistable. No network. No telemetry.
|
|
16
|
+
*/
|
|
17
|
+
import { createHash } from "node:crypto";
|
|
18
|
+
import { existsSync, readFileSync, writeFileSync, appendFileSync, mkdirSync } from "node:fs";
|
|
19
|
+
import { dirname } from "node:path";
|
|
20
|
+
import { collapseProbabilityMatrix, } from "./quantum_core.js";
|
|
21
|
+
export function createInfinityMemory() {
|
|
22
|
+
const events = [];
|
|
23
|
+
function makeId(e) {
|
|
24
|
+
const seed = `${e.kind}::${e.ts}::${e.actors.join(",")}`;
|
|
25
|
+
return createHash("sha256").update(seed).digest("hex").slice(0, 14);
|
|
26
|
+
}
|
|
27
|
+
function matches(e, q) {
|
|
28
|
+
if (q.kind && e.kind !== q.kind)
|
|
29
|
+
return false;
|
|
30
|
+
if (q.actor && !e.actors.includes(q.actor))
|
|
31
|
+
return false;
|
|
32
|
+
if (q.outcome && e.outcome !== q.outcome)
|
|
33
|
+
return false;
|
|
34
|
+
if (q.sinceMs !== undefined && e.ts < q.sinceMs)
|
|
35
|
+
return false;
|
|
36
|
+
if (q.untilMs !== undefined && e.ts > q.untilMs)
|
|
37
|
+
return false;
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
record(e) {
|
|
42
|
+
const id = makeId(e);
|
|
43
|
+
const event = { ...e, id };
|
|
44
|
+
events.push(event);
|
|
45
|
+
return event;
|
|
46
|
+
},
|
|
47
|
+
recall(q) {
|
|
48
|
+
const out = events.filter((e) => matches(e, q));
|
|
49
|
+
out.sort((a, b) => b.ts - a.ts);
|
|
50
|
+
return q.limit ? out.slice(0, q.limit) : out;
|
|
51
|
+
},
|
|
52
|
+
mark(id, outcome) {
|
|
53
|
+
const e = events.find((x) => x.id === id);
|
|
54
|
+
if (!e)
|
|
55
|
+
return false;
|
|
56
|
+
e.outcome = outcome;
|
|
57
|
+
return true;
|
|
58
|
+
},
|
|
59
|
+
list() {
|
|
60
|
+
return events.slice();
|
|
61
|
+
},
|
|
62
|
+
collapse(q) {
|
|
63
|
+
const matching = events.filter((e) => matches(e, q));
|
|
64
|
+
if (matching.length === 0) {
|
|
65
|
+
return collapseProbabilityMatrix([], {});
|
|
66
|
+
}
|
|
67
|
+
const hyps = matching.map((e) => ({
|
|
68
|
+
id: e.id,
|
|
69
|
+
value: e,
|
|
70
|
+
signals: e.probabilityVector,
|
|
71
|
+
}));
|
|
72
|
+
return collapseProbabilityMatrix(hyps, {});
|
|
73
|
+
},
|
|
74
|
+
flushTo(path) {
|
|
75
|
+
const dir = dirname(path);
|
|
76
|
+
if (!existsSync(dir))
|
|
77
|
+
mkdirSync(dir, { recursive: true });
|
|
78
|
+
const buf = events.map((e) => JSON.stringify(e)).join("\n") + (events.length ? "\n" : "");
|
|
79
|
+
writeFileSync(path, buf, "utf8");
|
|
80
|
+
},
|
|
81
|
+
loadFrom(path) {
|
|
82
|
+
if (!existsSync(path))
|
|
83
|
+
return 0;
|
|
84
|
+
const txt = readFileSync(path, "utf8");
|
|
85
|
+
let loaded = 0;
|
|
86
|
+
for (const line of txt.split(/\r?\n/)) {
|
|
87
|
+
if (!line.trim())
|
|
88
|
+
continue;
|
|
89
|
+
try {
|
|
90
|
+
events.push(JSON.parse(line));
|
|
91
|
+
loaded++;
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
// skip malformed
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return loaded;
|
|
98
|
+
},
|
|
99
|
+
precisionAtK(query, expectedIds, k) {
|
|
100
|
+
if (k <= 0)
|
|
101
|
+
return 0;
|
|
102
|
+
const got = this.recall({ ...query, limit: k }).map((e) => e.id);
|
|
103
|
+
let hits = 0;
|
|
104
|
+
for (const id of got)
|
|
105
|
+
if (expectedIds.includes(id))
|
|
106
|
+
hits++;
|
|
107
|
+
return hits / k;
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
/** Convenience: append a single event to a JSONL file without keeping
|
|
112
|
+
* the whole index in memory (for the daemon's event log). */
|
|
113
|
+
export function appendEventToFile(path, e) {
|
|
114
|
+
const dir = dirname(path);
|
|
115
|
+
if (!existsSync(dir))
|
|
116
|
+
mkdirSync(dir, { recursive: true });
|
|
117
|
+
appendFileSync(path, JSON.stringify(e) + "\n", "utf8");
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=infinity_memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infinity_memory.js","sourceRoot":"","sources":["../../src/qx_supernova/infinity_memory.ts"],"names":[],"mappings":"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"}
|