paracosm 0.9.830 → 0.9.831
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/cli/custom-scenarios.d.ts.map +1 -1
- package/dist/cli/custom-scenarios.js +74 -2
- package/dist/cli/custom-scenarios.js.map +1 -1
- package/dist/cli/server-app.d.ts.map +1 -1
- package/dist/cli/server-app.js +9 -4
- package/dist/cli/server-app.js.map +1 -1
- package/dist/engine/data-driven-hooks/index.d.ts +65 -0
- package/dist/engine/data-driven-hooks/index.d.ts.map +1 -1
- package/dist/engine/data-driven-hooks/index.js +87 -0
- package/dist/engine/data-driven-hooks/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/engine/atlas-lab/index.d.ts +0 -21
- package/dist/engine/atlas-lab/index.d.ts.map +0 -1
- package/dist/engine/atlas-lab/index.js +0 -166
- package/dist/engine/atlas-lab/index.js.map +0 -1
- package/dist/engine/atlas-lab/scenario.json +0 -158
- package/dist/engine/dual-superintelligence-council/index.d.ts +0 -20
- package/dist/engine/dual-superintelligence-council/index.d.ts.map +0 -1
- package/dist/engine/dual-superintelligence-council/index.js +0 -177
- package/dist/engine/dual-superintelligence-council/index.js.map +0 -1
- package/dist/engine/dual-superintelligence-council/scenario.json +0 -155
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-scenarios.d.ts","sourceRoot":"","sources":["../../src/cli/custom-scenarios.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"custom-scenarios.d.ts","sourceRoot":"","sources":["../../src/cli/custom-scenarios.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAM1D,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,eAAe,CAAC;IAC1B,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAcD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAwClF;AAmDD,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CA0C7F;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAKjF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { existsSync, readdirSync, readFileSync } from 'node:fs';
|
|
2
2
|
import { resolve } from 'node:path';
|
|
3
|
+
import { buildDataDrivenHooksFromJson, } from '../engine/data-driven-hooks/index.js';
|
|
3
4
|
function isRecord(value) {
|
|
4
5
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
5
6
|
}
|
|
@@ -61,6 +62,55 @@ export function isRunnableScenarioPackage(value) {
|
|
|
61
62
|
return false;
|
|
62
63
|
return true;
|
|
63
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Lift a "draft-shaped" JSON scenario (effects-as-object, no
|
|
67
|
+
* eventRenderers, no hooks, plus a `dataDrivenHooks` field) into a
|
|
68
|
+
* fully runnable {@link ScenarioPackage}. The draft shape is what
|
|
69
|
+
* scenarios/*.json files ship with — the loader now does what the
|
|
70
|
+
* mars/lunar TypeScript wrappers do (transform effects into the
|
|
71
|
+
* array shape, compute eventRenderers from the events list) plus
|
|
72
|
+
* compiles the JSON-DSL hooks into function values via the data-
|
|
73
|
+
* driven-hooks factory. Returns null when the JSON doesn't carry
|
|
74
|
+
* the data-driven shape — the caller falls back to the existing
|
|
75
|
+
* runnable-package path or skips the file.
|
|
76
|
+
*/
|
|
77
|
+
function liftDataDrivenDraft(parsed) {
|
|
78
|
+
if (!isRecord(parsed))
|
|
79
|
+
return null;
|
|
80
|
+
const ddh = parsed.dataDrivenHooks;
|
|
81
|
+
if (!isRecord(ddh))
|
|
82
|
+
return null;
|
|
83
|
+
const events = Array.isArray(parsed.events) ? parsed.events : [];
|
|
84
|
+
const effectsRaw = parsed.effects;
|
|
85
|
+
const ui = isRecord(parsed.ui) ? parsed.ui : {};
|
|
86
|
+
const liftedEffects = isRecord(effectsRaw)
|
|
87
|
+
? [{
|
|
88
|
+
id: 'category_effects',
|
|
89
|
+
type: 'category_outcome',
|
|
90
|
+
label: 'Category Outcome Effects',
|
|
91
|
+
categoryDefaults: effectsRaw,
|
|
92
|
+
}]
|
|
93
|
+
: Array.isArray(effectsRaw) ? effectsRaw : [];
|
|
94
|
+
const liftedUi = {
|
|
95
|
+
...ui,
|
|
96
|
+
eventRenderers: isRecord(ui.eventRenderers)
|
|
97
|
+
? ui.eventRenderers
|
|
98
|
+
: Object.fromEntries(events
|
|
99
|
+
.filter((e) => isRecord(e) && typeof e.id === 'string')
|
|
100
|
+
.map((e) => [e.id, { icon: e.icon, color: e.color }])),
|
|
101
|
+
};
|
|
102
|
+
const lifted = {
|
|
103
|
+
...parsed,
|
|
104
|
+
ui: liftedUi,
|
|
105
|
+
effects: liftedEffects,
|
|
106
|
+
hooks: buildDataDrivenHooksFromJson(ddh),
|
|
107
|
+
};
|
|
108
|
+
// Strip the side-channel field so the runnable package matches the
|
|
109
|
+
// engine's expected shape — the dataDrivenHooks block has done its
|
|
110
|
+
// job at load time.
|
|
111
|
+
delete lifted.dataDrivenHooks;
|
|
112
|
+
return lifted;
|
|
113
|
+
}
|
|
64
114
|
export function loadDiskCustomScenarios(scenarioDir) {
|
|
65
115
|
const catalog = new Map();
|
|
66
116
|
if (!existsSync(scenarioDir))
|
|
@@ -71,9 +121,31 @@ export function loadDiskCustomScenarios(scenarioDir) {
|
|
|
71
121
|
const filePath = resolve(scenarioDir, entry.name);
|
|
72
122
|
try {
|
|
73
123
|
const parsed = JSON.parse(readFileSync(filePath, 'utf-8'));
|
|
74
|
-
|
|
124
|
+
// Two acceptance paths:
|
|
125
|
+
// 1. JSON already in fully runnable shape — register as-is.
|
|
126
|
+
// This is what compile-from-seed produces, what the digital-
|
|
127
|
+
// twin compiler emits, and what hand-curated drafts COULD be
|
|
128
|
+
// after a manual TS wrapper. Rare in practice; here for
|
|
129
|
+
// forward-compat.
|
|
130
|
+
// 2. JSON in draft shape with a `dataDrivenHooks` block —
|
|
131
|
+
// lift via the data-driven-hooks factory. This is the
|
|
132
|
+
// canonical path for scenarios that ship as data only
|
|
133
|
+
// (atlas-lab, dual-superintelligence-council, future AI/
|
|
134
|
+
// SaaS/governance scenarios). The loader does the same
|
|
135
|
+
// effects+eventRenderers transformation the mars/lunar TS
|
|
136
|
+
// wrappers do, plus compiles the JSON-DSL predicates.
|
|
137
|
+
if (isRunnableScenarioPackage(parsed)) {
|
|
138
|
+
catalog.set(parsed.id, { scenario: parsed, source: 'disk' });
|
|
139
|
+
continue;
|
|
140
|
+
}
|
|
141
|
+
const lifted = liftDataDrivenDraft(parsed);
|
|
142
|
+
if (lifted) {
|
|
143
|
+
catalog.set(lifted.id, { scenario: lifted, source: 'disk' });
|
|
75
144
|
continue;
|
|
76
|
-
|
|
145
|
+
}
|
|
146
|
+
// Neither path matched — skip silently. Hand-curated drafts
|
|
147
|
+
// without a `dataDrivenHooks` field stay drafts; they'd need
|
|
148
|
+
// either a TS wrapper or a dataDrivenHooks block to load.
|
|
77
149
|
}
|
|
78
150
|
catch {
|
|
79
151
|
// Ignore unreadable or invalid custom scenario files at boot.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-scenarios.js","sourceRoot":"","sources":["../../src/cli/custom-scenarios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"custom-scenarios.js","sourceRoot":"","sources":["../../src/cli/custom-scenarios.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-app.d.ts","sourceRoot":"","sources":["../../src/cli/server-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,MAAM,EAAuB,MAAM,WAAW,CAAC;AAIjG,OAAO,EAA4C,KAAK,0BAA0B,EAA+B,MAAM,iBAAiB,CAAC;AACzI,OAAO,EAA8D,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"server-app.d.ts","sourceRoot":"","sources":["../../src/cli/server-app.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/server-app.js
CHANGED
|
@@ -10,8 +10,6 @@ import { handleSimulate } from './simulate-route.js';
|
|
|
10
10
|
import { compileScenario as compileScenarioReal } from '../engine/compiler/index.js';
|
|
11
11
|
import { marsScenario } from '../engine/mars/index.js';
|
|
12
12
|
import { lunarScenario } from '../engine/lunar/index.js';
|
|
13
|
-
import { atlasLabScenario } from '../engine/atlas-lab/index.js';
|
|
14
|
-
import { dualSuperintelligenceCouncilScenario } from '../engine/dual-superintelligence-council/index.js';
|
|
15
13
|
import { hasProviderCredentials, normalizeCredential, resolveProviderFromCredentials, } from '../engine/provider-credentials.js';
|
|
16
14
|
import { describeCustomScenarioSource, isRunnableScenarioPackage, loadDiskCustomScenarios, } from './custom-scenarios.js';
|
|
17
15
|
import { deletePersistedCompiledScenario, loadPersistedCompiledDrafts, persistCompiledScenario, } from './persisted-compiled-scenarios.js';
|
|
@@ -363,10 +361,17 @@ export function createMarsServer(options = {}) {
|
|
|
363
361
|
// for specific IDs. New builtins ship by adding one more
|
|
364
362
|
// customScenarioCatalog.set(id, { scenario, source: 'builtin' }) here.
|
|
365
363
|
const customScenarioCatalog = loadDiskCustomScenarios(scenarioDir);
|
|
364
|
+
// Hand-coded TypeScript builtins. Mars + Lunar have genuine domain
|
|
365
|
+
// hooks (bone density decay, regolith exposure curves, lunar gravity
|
|
366
|
+
// multiplier) that don't fit the data-driven-hooks DSL — they stay
|
|
367
|
+
// as engine modules. Every other scenario lives in `scenarios/*.json`
|
|
368
|
+
// with a `dataDrivenHooks` block and gets lifted at boot via
|
|
369
|
+
// `loadDiskCustomScenarios` → `liftDataDrivenDraft` →
|
|
370
|
+
// `buildDataDrivenHooksFromJson`. Adding a 4th, 5th, Nth AI / SaaS
|
|
371
|
+
// / governance scenario is now just a JSON file checked into
|
|
372
|
+
// `scenarios/` — no engine module per scenario.
|
|
366
373
|
customScenarioCatalog.set(marsScenario.id, { scenario: marsScenario, source: 'builtin' });
|
|
367
374
|
customScenarioCatalog.set(lunarScenario.id, { scenario: lunarScenario, source: 'builtin' });
|
|
368
|
-
customScenarioCatalog.set(atlasLabScenario.id, { scenario: atlasLabScenario, source: 'builtin' });
|
|
369
|
-
customScenarioCatalog.set(dualSuperintelligenceCouncilScenario.id, { scenario: dualSuperintelligenceCouncilScenario, source: 'builtin' });
|
|
370
375
|
// Persistence metadata for compile-from-seed scenarios — keyed by
|
|
371
376
|
// scenario id. Carries `compiledAt` + truncated `seedText` so the
|
|
372
377
|
// /scenarios endpoint can render "compiled 3 days ago from a brief
|