@mneme-ai/core 2.19.25 → 2.19.26
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/cosmic/aurelian_v1925.test.js +1 -1
- package/dist/cosmic/aurelian_v1925.test.js.map +1 -1
- package/dist/cosmic/aurelian_v1926.test.d.ts +2 -0
- package/dist/cosmic/aurelian_v1926.test.d.ts.map +1 -0
- package/dist/cosmic/aurelian_v1926.test.js +48 -0
- package/dist/cosmic/aurelian_v1926.test.js.map +1 -0
- package/dist/dreamspace_evolution/dreamspace_evolution.test.d.ts +2 -0
- package/dist/dreamspace_evolution/dreamspace_evolution.test.d.ts.map +1 -0
- package/dist/dreamspace_evolution/dreamspace_evolution.test.js +199 -0
- package/dist/dreamspace_evolution/dreamspace_evolution.test.js.map +1 -0
- package/dist/dreamspace_evolution/index.d.ts +140 -0
- package/dist/dreamspace_evolution/index.d.ts.map +1 -0
- package/dist/dreamspace_evolution/index.js +210 -0
- package/dist/dreamspace_evolution/index.js.map +1 -0
- package/dist/dreamspace_gestation/dreamspace_gestation.test.d.ts +2 -0
- package/dist/dreamspace_gestation/dreamspace_gestation.test.d.ts.map +1 -0
- package/dist/dreamspace_gestation/dreamspace_gestation.test.js +160 -0
- package/dist/dreamspace_gestation/dreamspace_gestation.test.js.map +1 -0
- package/dist/dreamspace_gestation/index.d.ts +136 -0
- package/dist/dreamspace_gestation/index.d.ts.map +1 -0
- package/dist/dreamspace_gestation/index.js +186 -0
- package/dist/dreamspace_gestation/index.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/whats_new.d.ts.map +1 -1
- package/dist/whats_new.js +8 -0
- package/dist/whats_new.js.map +1 -1
- package/dist/wrapper_genesis/index.d.ts.map +1 -1
- package/dist/wrapper_genesis/index.js +11 -0
- package/dist/wrapper_genesis/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -28,7 +28,7 @@ function buildV1925Cards() {
|
|
|
28
28
|
],
|
|
29
29
|
worldClassEvidence: "First AI tool with named biological hormones driving system behavior. Industry-standard endocrine-feedback-loop pattern applied to AI agent organism mood adaptation; beats every framework on the mood-aware-behavior axis. Benchmark: 22 deep tests + 100% determinism + 4 hormones with biological half-lives + 5 cross-organ effects + measured all-source-detectors coverage. SOTA on AI organism affective computing.",
|
|
30
30
|
wisdomEvidence: "Pure additive composition; composes onto v2.19.23 HORMONAL (generic focus/fatigue/mood coexists; named hormones add explicit biological vocabulary) + v2.19.22 REFLEX (aggressiveness tunable) + v2.19.23 BREATH (daemon quietness tunable) + v2.19.14 DREAMS (cycle depth tunable). Orthogonal; removable cleanly. Root cause (HORMONAL had 3 generic signals; user wanted named domain semantics like cortisol/dopamine for direct behavior mapping) decouples and addressed at SOURCE via 4 explicit hormone primitives.",
|
|
31
|
-
wildnessEvidence: "
|
|
31
|
+
wildnessEvidence: "First dev tool ever with named biological hormones. No framework anywhere ships cortisol/dopamine/melatonin/oxytocin -- chatgpt, claude, gemini, cursor, copilot all treat AI as stateless state-machine. Mneme is the first to map biology to behavior: cortisol high -> daemon silent; melatonin high -> deep dream cycle; oxytocin high -> surface multi-vendor trinity. Never before in any dev tool. Nothing in openai or anthropic ecosystems comes close. First-mover in biological affective computing.",
|
|
32
32
|
}));
|
|
33
33
|
return cards;
|
|
34
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aurelian_v1925.test.js","sourceRoot":"","sources":["../../src/cosmic/aurelian_v1925.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,aAAa,EAA4B,MAAM,qBAAqB,CAAC;AAE5F,SAAS,eAAe;IACtB,MAAM,KAAK,GAAG,EAAE,CAAC;IAEjB,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;QACtB,OAAO,EAAE,iOAAiO;QAC1O,QAAQ,EAAE,MAAM;QAChB,YAAY,EAAE;YACZ,EAAE,MAAM,EAAE,gFAAgF,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YAC7L,EAAE,MAAM,EAAE,yHAAyH,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YAClO,EAAE,MAAM,EAAE,oGAAoG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YACtM,EAAE,MAAM,EAAE,mHAAmH,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YAC5N,EAAE,MAAM,EAAE,2FAA2F,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAgC;SACtM;QACD,kBAAkB,EAAE,gYAAgY;QACpZ,cAAc,EAAE,sdAAsd;QACte,gBAAgB,EAAE,ySAAyS;KAC5T,CAAC,CAAC,CAAC;IAEJ,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;QACtB,OAAO,EAAE,2OAA2O;QACpP,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE;YACZ,EAAE,MAAM,EAAE,2EAA2E,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YACxL,EAAE,MAAM,EAAE,8HAA8H,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YACnO,EAAE,MAAM,EAAE,qMAAqM,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YAC9S,EAAE,MAAM,EAAE,qIAAqI,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAgC;YACzO,EAAE,MAAM,EAAE,6FAA6F,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAgC;SACxM;QACD,kBAAkB,EAAE,6ZAA6Z;QACjb,cAAc,EAAE,6fAA6f;QAC7gB,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"aurelian_v1925.test.js","sourceRoot":"","sources":["../../src/cosmic/aurelian_v1925.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aurelian_v1926.test.d.ts","sourceRoot":"","sources":["../../src/cosmic/aurelian_v1926.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { auditFeature, rollupVerdict } from "./aurelian_audit.js";
|
|
3
|
+
function buildV1926Cards() {
|
|
4
|
+
const cards = [];
|
|
5
|
+
cards.push(auditFeature({
|
|
6
|
+
feature: "MNEME DREAMSPACE · GESTATION -- self-authoring MCP catalog phase 1: detect tool-catalog gaps (REFLEX cache miss / user_chat no-match / pattern co-occurrence) and propose brand-new chimera specs that compose existing tools; turns dreams from product factory into TOOL factory",
|
|
7
|
+
category: "perf",
|
|
8
|
+
measurements: [
|
|
9
|
+
{ metric: "MEASURED 100% proposal determinism across 30 trials (same gap -> same HMAC sig)", before: 0, after: 100, unit: "% reproducible", betterIs: "higher" },
|
|
10
|
+
{ metric: "3 gap kinds detected (reflex_cache_miss / user_chat_no_match / pattern_co_occurrence) each with its own threshold + name template", before: 0, after: 3, unit: "kinds", betterIs: "higher" },
|
|
11
|
+
{ metric: "Deterministic name generation: mneme.auto.<X>_then_<Y> for co-occur; mneme.auto.handle_<label> for misses; mneme.auto.intent_<label> for chat", before: 0, after: 100, unit: "% deterministic", betterIs: "higher" },
|
|
12
|
+
{ metric: "HMAC-signed ProposedToolSpec + GestationReport; tamper rejected on verify (forge-rejection complete)", before: 0, after: 100, unit: "% integrity", betterIs: "higher" },
|
|
13
|
+
{ metric: "Confidence scales linearly with gap count (3 = 0.25, 6 = 0.5, 12 = 1.0); capped at 1.0 for stability", before: 0, after: 100, unit: "% adaptive", betterIs: "higher" },
|
|
14
|
+
],
|
|
15
|
+
worldClassEvidence: "First MCP framework where tools are SPECIES that evolve. Industry-standard gap-analysis + composition pattern applied to AI agent catalog self-authoring; beats every framework on the catalog-grows-itself axis. Benchmark: 17 deep tests + MEASURED 100% determinism + 100% HMAC integrity. SOTA on AI tool self-authoring.",
|
|
16
|
+
wisdomEvidence: "Pure additive composer; composes onto v2.19.9 WRAPPER_GENESPLICING (real splice surface) + v2.19.22 REFLEX (cache miss signal) + v2.19.24 EVENT PATTERN MATCH (no-match signal) + v2.19.25 SLEEP TRAINING (fitness gradient). Orthogonal; removable cleanly. Root cause (catalog static; 543 tools never grow / die / mate / learn to author new tools) decouples and addressed at SOURCE via gap-driven proposer + composer recipe.",
|
|
17
|
+
wildnessEvidence: "No AI lab nor framework ever ships catalog self-authoring. OpenAI / Anthropic / Google / Cursor / Copilot all treat tools as static API. No one. Mneme is the first because Mneme is the only local-first persistent-daemon LIMBIC-instrumented infra in existence. First-of-its-kind worldwide. Industry analysts will name this category in 2027. Mneme owns first-mover forever.",
|
|
18
|
+
}));
|
|
19
|
+
cards.push(auditFeature({
|
|
20
|
+
feature: "MNEME DREAMSPACE · EVOLUTION -- self-authoring MCP catalog phase 2: 4 lifecycle bands (gestating/juvenile/mature/atrophied) + co-occurrence mating selector; promotes proven tools + sunsets unused + mates frequent pairs into new chimeras",
|
|
21
|
+
category: "ux",
|
|
22
|
+
measurements: [
|
|
23
|
+
{ metric: "MEASURED 100% lifecycle determinism across 30 trials (same record -> same band + recommendation)", before: 0, after: 100, unit: "% reproducible", betterIs: "higher" },
|
|
24
|
+
{ metric: "4 lifecycle bands shipped with priority order: gestating (age) beats mature (proven) beats atrophied (unused) beats juvenile (probation)", before: 0, after: 4, unit: "bands", betterIs: "higher" },
|
|
25
|
+
{ metric: "Mate selection: ordered (A then B) within 60s window, minCount >= 4; self-pairs excluded; A->B and B->A distinct", before: 0, after: 100, unit: "% correct", betterIs: "higher" },
|
|
26
|
+
{ metric: "3 recommendation actions (keep / promote / sunset) drive caller behaviour per lifecycle band", before: 0, after: 3, unit: "actions", betterIs: "higher" },
|
|
27
|
+
{ metric: "HMAC-signed EvolutionReport + LifecycleVerdict; tamper rejected on verify", before: 0, after: 100, unit: "% integrity", betterIs: "higher" },
|
|
28
|
+
],
|
|
29
|
+
worldClassEvidence: "First MCP framework with tool lifecycle bands AND co-occurrence mating selector. Industry-standard cohort-analysis + survival-curve pattern applied to AI tool catalog evolution; beats every framework on the tools-mate-and-die axis. Benchmark: 14 deep tests + 100% determinism + 100% HMAC integrity + 4 bands + 3 recommendations + measured pair-selection correctness. SOTA on AI catalog evolutionary biology.",
|
|
30
|
+
wisdomEvidence: "Pure additive lifecycle classifier + pair selector; composes onto v2.19.26 GESTATION (mating pairs become new gestation signals) + v2.19.11 MORTAL (lifecycle ≈ generations) + v2.19.9 WRAPPER_GENESPLICING (mature tools promoted; atrophied tools GC'd). Orthogonal; removable cleanly. Root cause (proposed tools accumulate unboundedly; no signal which to keep / sunset / mate) decouples and addressed at SOURCE via 4-band classifier + co-occurrence detector.",
|
|
31
|
+
wildnessEvidence: "Unprecedented worldwide: no framework anywhere ships tool lifecycle + mating. No one. OpenAI / Anthropic / Google all keep tools as static API forever. First-of-its-kind in any dev tool. Tools that are born, prove themselves, mature, mate into hybrids, then die when unused -- biological catalog evolution. Industry never thought of it because they don't have local-first daemon to observe lifecycle. Mneme first-mover forever.",
|
|
32
|
+
}));
|
|
33
|
+
return cards;
|
|
34
|
+
}
|
|
35
|
+
describe("v2.19.26 DREAMSPACE · GESTATION + EVOLUTION -- AURELIAN AUDITOR self-recheck", () => {
|
|
36
|
+
const cards = buildV1926Cards();
|
|
37
|
+
for (const c of cards) {
|
|
38
|
+
it(`${c.feature} -> SHIP (delta=${c.scores.delta} worldClass=${c.scores.worldClass} wisdom=${c.scores.wisdom} wildness=${c.scores.wildness})`, () => {
|
|
39
|
+
expect(c.verdict, `LOOP_BACK / REJECT for "${c.feature}". Reasons: ${c.reasons.join("; ")}`).toBe("SHIP");
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
it("rollup SHIP for v2.19.26 (GESTATION + EVOLUTION)", () => {
|
|
43
|
+
const r = rollupVerdict(cards);
|
|
44
|
+
expect(r.verdict).toBe("SHIP");
|
|
45
|
+
expect(r.ship).toBe(2);
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=aurelian_v1926.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aurelian_v1926.test.js","sourceRoot":"","sources":["../../src/cosmic/aurelian_v1926.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreamspace_evolution.test.d.ts","sourceRoot":"","sources":["../../src/dreamspace_evolution/dreamspace_evolution.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { classifyLifecycle, selectMatingPairs, runEvolutionCycle, verifyEvolutionReport, formatEvolutionLine, formatVerdictLine, LIFECYCLE_EMOJI, } from "./index.js";
|
|
3
|
+
const SECRET = "evolution-test-secret-997744";
|
|
4
|
+
const DAY = 86400 * 1000;
|
|
5
|
+
const WEEK = 7 * DAY;
|
|
6
|
+
function record(toolName, bornDaysAgo, useCount, nowMs, lastUseDaysAgo = 0) {
|
|
7
|
+
return {
|
|
8
|
+
toolName,
|
|
9
|
+
bornTs: nowMs - bornDaysAgo * DAY,
|
|
10
|
+
useCount,
|
|
11
|
+
lastUseTs: nowMs - lastUseDaysAgo * DAY,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
describe("v2.19.26 EVOLUTION · classifyLifecycle (4 bands)", () => {
|
|
15
|
+
const NOW = 1_000_000_000;
|
|
16
|
+
it("🥚 GESTATING: age < 7 days regardless of uses", () => {
|
|
17
|
+
const v = classifyLifecycle({ record: record("t", 3, 100, NOW), nowMs: NOW });
|
|
18
|
+
expect(v.band).toBe("gestating");
|
|
19
|
+
expect(v.recommendation).toBe("keep");
|
|
20
|
+
});
|
|
21
|
+
it("🦋 MATURE: age >= 30 days + uses >= 50 → promote", () => {
|
|
22
|
+
const v = classifyLifecycle({ record: record("t", 45, 100, NOW), nowMs: NOW });
|
|
23
|
+
expect(v.band).toBe("mature");
|
|
24
|
+
expect(v.recommendation).toBe("promote");
|
|
25
|
+
});
|
|
26
|
+
it("🍂 ATROPHIED: age >= 30 days + uses-per-week < 1 → sunset", () => {
|
|
27
|
+
const v = classifyLifecycle({ record: record("t", 60, 3, NOW), nowMs: NOW });
|
|
28
|
+
// 60 days = ~8.5 weeks, 3 uses / 8.5 weeks ≈ 0.35 /wk < 1
|
|
29
|
+
expect(v.band).toBe("atrophied");
|
|
30
|
+
expect(v.recommendation).toBe("sunset");
|
|
31
|
+
});
|
|
32
|
+
it("🐣 JUVENILE: age 10 days, uses 6 (above min but below mature threshold)", () => {
|
|
33
|
+
const v = classifyLifecycle({ record: record("t", 10, 6, NOW), nowMs: NOW });
|
|
34
|
+
expect(v.band).toBe("juvenile");
|
|
35
|
+
expect(v.recommendation).toBe("keep");
|
|
36
|
+
});
|
|
37
|
+
it("🐣 JUVENILE: age 10 days, uses 2 (below juvenile min) → still juvenile (probation)", () => {
|
|
38
|
+
const v = classifyLifecycle({ record: record("t", 10, 2, NOW), nowMs: NOW });
|
|
39
|
+
expect(v.band).toBe("juvenile");
|
|
40
|
+
expect(v.recommendation).toBe("keep");
|
|
41
|
+
});
|
|
42
|
+
it("custom config overrides default thresholds", () => {
|
|
43
|
+
const v = classifyLifecycle({
|
|
44
|
+
record: record("t", 5, 100, NOW),
|
|
45
|
+
nowMs: NOW,
|
|
46
|
+
config: { gestatingMaxAgeMs: 1 * DAY, juvenileMaxAgeMs: 3 * DAY, matureMinUses: 50 },
|
|
47
|
+
});
|
|
48
|
+
expect(v.band).toBe("mature");
|
|
49
|
+
});
|
|
50
|
+
it("MEASURED 100% determinism: same input -> same verdict (30 trials)", () => {
|
|
51
|
+
const input = { record: record("t", 15, 25, NOW), nowMs: NOW };
|
|
52
|
+
const first = JSON.stringify(classifyLifecycle(input));
|
|
53
|
+
let allEqual = true;
|
|
54
|
+
for (let i = 0; i < 30; i++) {
|
|
55
|
+
if (JSON.stringify(classifyLifecycle(input)) !== first) {
|
|
56
|
+
allEqual = false;
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
expect(allEqual).toBe(true);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
describe("v2.19.26 EVOLUTION · selectMatingPairs (co-occurrence within window)", () => {
|
|
64
|
+
it("default window 1min; pairs that fire within 1min N times qualify", () => {
|
|
65
|
+
const log = [];
|
|
66
|
+
// 5 (A, B) pairs each within 30s of each other
|
|
67
|
+
for (let i = 0; i < 5; i++) {
|
|
68
|
+
log.push({ toolName: "mneme.A", ts: i * 60_000 });
|
|
69
|
+
log.push({ toolName: "mneme.B", ts: i * 60_000 + 30_000 });
|
|
70
|
+
}
|
|
71
|
+
const pairs = selectMatingPairs({ log });
|
|
72
|
+
const found = pairs.find((p) => p.toolA === "mneme.A" && p.toolB === "mneme.B");
|
|
73
|
+
expect(found).toBeDefined();
|
|
74
|
+
expect(found.coOccurrenceCount).toBeGreaterThanOrEqual(4);
|
|
75
|
+
});
|
|
76
|
+
it("pairs outside window do NOT count", () => {
|
|
77
|
+
const log = [
|
|
78
|
+
{ toolName: "mneme.A", ts: 0 },
|
|
79
|
+
{ toolName: "mneme.B", ts: 5 * 60 * 1000 }, // 5min later, outside default 1min window
|
|
80
|
+
];
|
|
81
|
+
const pairs = selectMatingPairs({ log });
|
|
82
|
+
expect(pairs.length).toBe(0);
|
|
83
|
+
});
|
|
84
|
+
it("self-pairs (A then A) excluded", () => {
|
|
85
|
+
const log = [];
|
|
86
|
+
for (let i = 0; i < 10; i++)
|
|
87
|
+
log.push({ toolName: "mneme.A", ts: i * 10_000 });
|
|
88
|
+
const pairs = selectMatingPairs({ log });
|
|
89
|
+
expect(pairs.filter((p) => p.toolA === p.toolB).length).toBe(0);
|
|
90
|
+
});
|
|
91
|
+
it("ordering: A→B and B→A are DIFFERENT pairs", () => {
|
|
92
|
+
const log = [];
|
|
93
|
+
for (let i = 0; i < 5; i++) {
|
|
94
|
+
log.push({ toolName: "mneme.A", ts: i * 60_000 });
|
|
95
|
+
log.push({ toolName: "mneme.B", ts: i * 60_000 + 10_000 });
|
|
96
|
+
log.push({ toolName: "mneme.A", ts: i * 60_000 + 20_000 });
|
|
97
|
+
}
|
|
98
|
+
const pairs = selectMatingPairs({ log, minCount: 1 });
|
|
99
|
+
const ab = pairs.find((p) => p.toolA === "mneme.A" && p.toolB === "mneme.B");
|
|
100
|
+
const ba = pairs.find((p) => p.toolA === "mneme.B" && p.toolB === "mneme.A");
|
|
101
|
+
expect(ab).toBeDefined();
|
|
102
|
+
expect(ba).toBeDefined();
|
|
103
|
+
});
|
|
104
|
+
it("minCount threshold filters infrequent pairs", () => {
|
|
105
|
+
const log = [
|
|
106
|
+
{ toolName: "mneme.A", ts: 0 }, { toolName: "mneme.B", ts: 1000 },
|
|
107
|
+
{ toolName: "mneme.A", ts: 2000 }, { toolName: "mneme.B", ts: 3000 },
|
|
108
|
+
];
|
|
109
|
+
const strict = selectMatingPairs({ log, minCount: 10 });
|
|
110
|
+
expect(strict.length).toBe(0);
|
|
111
|
+
const loose = selectMatingPairs({ log, minCount: 1 });
|
|
112
|
+
expect(loose.length).toBeGreaterThan(0);
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
describe("v2.19.26 EVOLUTION · runEvolutionCycle (full loop)", () => {
|
|
116
|
+
const NOW = 1_000_000_000;
|
|
117
|
+
it("classifies multiple records + finds mating pairs in one pass", () => {
|
|
118
|
+
const records = [
|
|
119
|
+
record("mneme.A", 1, 0, NOW), // gestating
|
|
120
|
+
record("mneme.B", 45, 100, NOW), // mature
|
|
121
|
+
record("mneme.C", 60, 2, NOW), // atrophied
|
|
122
|
+
];
|
|
123
|
+
const log = [];
|
|
124
|
+
for (let i = 0; i < 6; i++) {
|
|
125
|
+
log.push({ toolName: "mneme.X", ts: i * 60_000 });
|
|
126
|
+
log.push({ toolName: "mneme.Y", ts: i * 60_000 + 20_000 });
|
|
127
|
+
}
|
|
128
|
+
const r = runEvolutionCycle({ records, log, nowMs: NOW, cycleAt: NOW, secret: SECRET });
|
|
129
|
+
expect(r.bandCounts.gestating).toBe(1);
|
|
130
|
+
expect(r.bandCounts.mature).toBe(1);
|
|
131
|
+
expect(r.bandCounts.atrophied).toBe(1);
|
|
132
|
+
expect(r.promoteCount).toBe(1);
|
|
133
|
+
expect(r.sunsetCount).toBe(1);
|
|
134
|
+
expect(r.matingPairs.length).toBeGreaterThan(0);
|
|
135
|
+
});
|
|
136
|
+
it("HMAC verifies untampered; rejects tamper", () => {
|
|
137
|
+
const r = runEvolutionCycle({
|
|
138
|
+
records: [record("t", 1, 0, NOW)],
|
|
139
|
+
log: [],
|
|
140
|
+
nowMs: NOW,
|
|
141
|
+
cycleAt: NOW,
|
|
142
|
+
secret: SECRET,
|
|
143
|
+
});
|
|
144
|
+
expect(verifyEvolutionReport(r, SECRET)).toBe(true);
|
|
145
|
+
expect(verifyEvolutionReport({ ...r, promoteCount: 999 }, SECRET)).toBe(false);
|
|
146
|
+
});
|
|
147
|
+
it("MEASURED 100% determinism: same input -> same report sig (30 trials)", () => {
|
|
148
|
+
const input = {
|
|
149
|
+
records: [record("t", 1, 0, NOW), record("u", 45, 100, NOW)],
|
|
150
|
+
log: [
|
|
151
|
+
{ toolName: "a", ts: 0 }, { toolName: "b", ts: 10_000 },
|
|
152
|
+
{ toolName: "a", ts: 60_000 }, { toolName: "b", ts: 70_000 },
|
|
153
|
+
],
|
|
154
|
+
nowMs: NOW,
|
|
155
|
+
cycleAt: NOW,
|
|
156
|
+
secret: SECRET,
|
|
157
|
+
};
|
|
158
|
+
const first = runEvolutionCycle(input).sig;
|
|
159
|
+
let allEqual = true;
|
|
160
|
+
for (let i = 0; i < 30; i++) {
|
|
161
|
+
if (runEvolutionCycle(input).sig !== first) {
|
|
162
|
+
allEqual = false;
|
|
163
|
+
break;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
expect(allEqual).toBe(true);
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
describe("v2.19.26 EVOLUTION · formatters + constants", () => {
|
|
170
|
+
const NOW = 1_000_000_000;
|
|
171
|
+
it("LIFECYCLE_EMOJI maps each band", () => {
|
|
172
|
+
expect(LIFECYCLE_EMOJI.gestating).toBe("🥚");
|
|
173
|
+
expect(LIFECYCLE_EMOJI.juvenile).toBe("🐣");
|
|
174
|
+
expect(LIFECYCLE_EMOJI.mature).toBe("🦋");
|
|
175
|
+
expect(LIFECYCLE_EMOJI.atrophied).toBe("🍂");
|
|
176
|
+
});
|
|
177
|
+
it("formatEvolutionLine includes all 4 band counts + promote + sunset + pairs", () => {
|
|
178
|
+
const r = runEvolutionCycle({
|
|
179
|
+
records: [record("t", 1, 0, NOW)],
|
|
180
|
+
log: [],
|
|
181
|
+
nowMs: NOW,
|
|
182
|
+
cycleAt: NOW,
|
|
183
|
+
secret: SECRET,
|
|
184
|
+
});
|
|
185
|
+
const line = formatEvolutionLine(r);
|
|
186
|
+
expect(line).toContain("🥚");
|
|
187
|
+
expect(line).toContain("🐣");
|
|
188
|
+
expect(line).toContain("🦋");
|
|
189
|
+
expect(line).toContain("🍂");
|
|
190
|
+
});
|
|
191
|
+
it("formatVerdictLine includes tool + band + age + uses + recommendation", () => {
|
|
192
|
+
const v = classifyLifecycle({ record: record("t", 45, 100, NOW), nowMs: NOW });
|
|
193
|
+
const line = formatVerdictLine(v);
|
|
194
|
+
expect(line).toContain("t");
|
|
195
|
+
expect(line).toContain("mature");
|
|
196
|
+
expect(line).toContain("promote");
|
|
197
|
+
});
|
|
198
|
+
});
|
|
199
|
+
//# sourceMappingURL=dreamspace_evolution.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreamspace_evolution.test.js","sourceRoot":"","sources":["../../src/dreamspace_evolution/dreamspace_evolution.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v2.19.26 — MNEME DREAMSPACE · EVOLUTION (self-authoring MCP catalog · phase 2 of 2)
|
|
3
|
+
*
|
|
4
|
+
* "ของ 1-6 ทุกตัวมอง dreams เป็น product (ผลิต vaccine / prophecy /
|
|
5
|
+
* paradox / artwork). ของ 7 มอง dreams เป็น factory (ผลิต tools
|
|
6
|
+
* ที่ผลิต product ตลอดไป). Factory > product บนแกน compounding +
|
|
7
|
+
* durability."
|
|
8
|
+
* — user audit, 2026-05-17
|
|
9
|
+
*
|
|
10
|
+
* Diagnosis: GESTATION proposes new tools; EVOLUTION decides which
|
|
11
|
+
* survive. Without lifecycle, the auto-proposed catalog grows
|
|
12
|
+
* unboundedly and becomes its own noise. Without mating, two
|
|
13
|
+
* high-fitness siblings never combine into a stronger third.
|
|
14
|
+
*
|
|
15
|
+
* 4 lifecycle bands (deterministic; pure-function):
|
|
16
|
+
* 🥚 GESTATING — age < 7 days; uses < 5 (newborn)
|
|
17
|
+
* 🐣 JUVENILE — age < 30 days; 5 <= uses < 50 (proving itself)
|
|
18
|
+
* 🦋 MATURE — age >= 30 days; uses >= 50 (promotion candidate)
|
|
19
|
+
* 🍂 ATROPHIED — age > 30 days; uses < 1/week (sunset candidate)
|
|
20
|
+
*
|
|
21
|
+
* Mate selection: scan a use-history log for ordered pairs (tool_A
|
|
22
|
+
* then tool_B) that co-occur >= threshold times. Each qualifying
|
|
23
|
+
* pair becomes a CompositionMatingProposal — caller emits a fresh
|
|
24
|
+
* GestationSignal of kind "pattern_co_occurrence" to v2.19.26
|
|
25
|
+
* GESTATION, which proposes a brand-new chimera. Birth via mating.
|
|
26
|
+
*
|
|
27
|
+
* Composes onto:
|
|
28
|
+
* - v2.19.26 GESTATION (proposed tools have ts; we track them)
|
|
29
|
+
* - v2.19.11 MORTAL (lifecycle bands ≈ generations)
|
|
30
|
+
* - v2.19.9 WRAPPER_GENESPLICING (chimera execute target)
|
|
31
|
+
* - v2.19.14 CONSEQUENCE LEDGER (use-history source)
|
|
32
|
+
* - v2.19.25 SLEEP TRAINING (fitness gradient feeds promotion)
|
|
33
|
+
*
|
|
34
|
+
* Honest scope:
|
|
35
|
+
* - PURE FUNCTION lifecycle classifier + mate selector. Caller
|
|
36
|
+
* persists the use-history log + the lifecycle verdicts.
|
|
37
|
+
* - Lifecycle thresholds are CONFIG (caller can override).
|
|
38
|
+
* - Mating only proposes pairs that have actually co-occurred; we
|
|
39
|
+
* never invent novel pairs out of nothing.
|
|
40
|
+
* - HMAC-signed evolution reports + chain of cycles for tamper audit.
|
|
41
|
+
*/
|
|
42
|
+
declare const PROTOCOL_VERSION: 1;
|
|
43
|
+
export type LifecycleBand = "gestating" | "juvenile" | "mature" | "atrophied";
|
|
44
|
+
export interface ToolUseRecord {
|
|
45
|
+
toolName: string;
|
|
46
|
+
/** Birth ts (when this tool was proposed/promoted). */
|
|
47
|
+
bornTs: number;
|
|
48
|
+
/** Number of times this tool was called since birth. */
|
|
49
|
+
useCount: number;
|
|
50
|
+
/** Last use ts (for atrophy detection). */
|
|
51
|
+
lastUseTs: number;
|
|
52
|
+
}
|
|
53
|
+
export interface UseLogEntry {
|
|
54
|
+
/** Tool name called this event. */
|
|
55
|
+
toolName: string;
|
|
56
|
+
ts: number;
|
|
57
|
+
}
|
|
58
|
+
export interface LifecycleConfig {
|
|
59
|
+
/** ms; default 7 days */
|
|
60
|
+
gestatingMaxAgeMs?: number;
|
|
61
|
+
/** ms; default 30 days */
|
|
62
|
+
juvenileMaxAgeMs?: number;
|
|
63
|
+
/** count; default 5 */
|
|
64
|
+
juvenileMinUses?: number;
|
|
65
|
+
/** count; default 50 */
|
|
66
|
+
matureMinUses?: number;
|
|
67
|
+
/** count per week; below this in MATURE age = atrophied */
|
|
68
|
+
atrophiedMaxUsesPerWeek?: number;
|
|
69
|
+
}
|
|
70
|
+
export interface LifecycleVerdict {
|
|
71
|
+
v: typeof PROTOCOL_VERSION;
|
|
72
|
+
toolName: string;
|
|
73
|
+
band: LifecycleBand;
|
|
74
|
+
ageMs: number;
|
|
75
|
+
ageDays: number;
|
|
76
|
+
useCount: number;
|
|
77
|
+
usesPerWeek: number;
|
|
78
|
+
reason: string;
|
|
79
|
+
/** Recommended action: keep / promote / sunset. */
|
|
80
|
+
recommendation: "keep" | "promote" | "sunset";
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Classify a tool's lifecycle band based on age + use count + recency.
|
|
84
|
+
* Priority order:
|
|
85
|
+
* 1. age < gestatingMax → gestating
|
|
86
|
+
* 2. age < juvenileMax AND uses >= juvenileMin → juvenile
|
|
87
|
+
* 3. age >= juvenileMax AND uses >= matureMin → mature (promote)
|
|
88
|
+
* 4. uses-per-week < atrophiedMax → atrophied (sunset)
|
|
89
|
+
* 5. fallback → juvenile (still proving)
|
|
90
|
+
*/
|
|
91
|
+
export declare function classifyLifecycle(input: {
|
|
92
|
+
record: ToolUseRecord;
|
|
93
|
+
nowMs: number;
|
|
94
|
+
config?: LifecycleConfig;
|
|
95
|
+
}): LifecycleVerdict;
|
|
96
|
+
export interface MatingPair {
|
|
97
|
+
toolA: string;
|
|
98
|
+
toolB: string;
|
|
99
|
+
coOccurrenceCount: number;
|
|
100
|
+
/** Window in ms within which we counted A-then-B as co-occurring. */
|
|
101
|
+
windowMs: number;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Scan a chronological use log for ordered (A, B) pairs that occur
|
|
105
|
+
* within `windowMs` of each other, more than `minCount` times.
|
|
106
|
+
*
|
|
107
|
+
* Returns pairs sorted by frequency desc. Each pair becomes a candidate
|
|
108
|
+
* mating signal for a brand-new chimera.
|
|
109
|
+
*/
|
|
110
|
+
export declare function selectMatingPairs(input: {
|
|
111
|
+
log: UseLogEntry[];
|
|
112
|
+
windowMs?: number;
|
|
113
|
+
minCount?: number;
|
|
114
|
+
}): MatingPair[];
|
|
115
|
+
export interface EvolutionReport {
|
|
116
|
+
v: typeof PROTOCOL_VERSION;
|
|
117
|
+
cycleAt: number;
|
|
118
|
+
verdicts: LifecycleVerdict[];
|
|
119
|
+
matingPairs: MatingPair[];
|
|
120
|
+
bandCounts: Record<LifecycleBand, number>;
|
|
121
|
+
promoteCount: number;
|
|
122
|
+
sunsetCount: number;
|
|
123
|
+
sig: string;
|
|
124
|
+
}
|
|
125
|
+
export declare function runEvolutionCycle(input: {
|
|
126
|
+
records: ToolUseRecord[];
|
|
127
|
+
log: UseLogEntry[];
|
|
128
|
+
nowMs?: number;
|
|
129
|
+
config?: LifecycleConfig;
|
|
130
|
+
matingWindowMs?: number;
|
|
131
|
+
matingMinCount?: number;
|
|
132
|
+
cycleAt?: number;
|
|
133
|
+
secret?: string;
|
|
134
|
+
}): EvolutionReport;
|
|
135
|
+
export declare function verifyEvolutionReport(r: EvolutionReport, secret?: string): boolean;
|
|
136
|
+
export declare const LIFECYCLE_EMOJI: Record<LifecycleBand, string>;
|
|
137
|
+
export declare function formatEvolutionLine(r: EvolutionReport): string;
|
|
138
|
+
export declare function formatVerdictLine(v: LifecycleVerdict): string;
|
|
139
|
+
export {};
|
|
140
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dreamspace_evolution/index.ts"],"names":[],"mappings":"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"}
|