@neuroverseos/governance 0.4.0 → 0.4.1
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/adapters/autoresearch.d.cts +2 -1
- package/dist/adapters/autoresearch.d.ts +2 -1
- package/dist/adapters/autoresearch.js +2 -2
- package/dist/adapters/deep-agents.d.cts +3 -2
- package/dist/adapters/deep-agents.d.ts +3 -2
- package/dist/adapters/deep-agents.js +2 -2
- package/dist/adapters/express.d.cts +2 -1
- package/dist/adapters/express.d.ts +2 -1
- package/dist/adapters/express.js +2 -2
- package/dist/adapters/index.cjs +66 -1
- package/dist/adapters/index.d.cts +4 -278
- package/dist/adapters/index.d.ts +4 -278
- package/dist/adapters/index.js +33 -33
- package/dist/adapters/langchain.d.cts +3 -2
- package/dist/adapters/langchain.d.ts +3 -2
- package/dist/adapters/langchain.js +2 -2
- package/dist/adapters/mentraos.cjs +2181 -0
- package/dist/adapters/mentraos.d.cts +319 -0
- package/dist/adapters/mentraos.d.ts +319 -0
- package/dist/{mentraos-YFS7FMJH.js → adapters/mentraos.js} +6 -6
- package/dist/adapters/openai.d.cts +3 -2
- package/dist/adapters/openai.d.ts +3 -2
- package/dist/adapters/openai.js +2 -2
- package/dist/adapters/openclaw.d.cts +3 -2
- package/dist/adapters/openclaw.d.ts +3 -2
- package/dist/adapters/openclaw.js +2 -2
- package/dist/{add-LYHDZ5RL.js → add-XSANI3FK.js} +1 -1
- package/dist/bootstrap-contract-DcV6t-8M.d.cts +216 -0
- package/dist/bootstrap-contract-DcV6t-8M.d.ts +216 -0
- package/dist/{build-THUEYMVT.js → build-EGBGZFIJ.js} +5 -5
- package/dist/{chunk-MFKHTE5R.js → chunk-3AYKQHYI.js} +1 -1
- package/dist/chunk-3S5AD4AB.js +421 -0
- package/dist/{chunk-V4FZHJQX.js → chunk-A7SHG75T.js} +1 -1
- package/dist/{chunk-JKGPSFGH.js → chunk-AV7XJJWK.js} +1 -1
- package/dist/{chunk-Y6WXAPKY.js → chunk-DA5MHFRR.js} +1 -1
- package/dist/{chunk-7D7PZLB7.js → chunk-FS2UUJJO.js} +3 -3
- package/dist/{chunk-TD5GKIHP.js → chunk-FVOGUCB6.js} +1 -1
- package/dist/{chunk-APU4OZIP.js → chunk-GTPV2XGO.js} +67 -2
- package/dist/{chunk-BXLTEUS4.js → chunk-I4RTIMLX.js} +2 -2
- package/dist/{chunk-5JUZ4HL7.js → chunk-J2IZBHXJ.js} +3 -3
- package/dist/{chunk-YNYCQECH.js → chunk-QMVQ6KPL.js} +1 -1
- package/dist/{chunk-25XHSTPT.js → chunk-RDA7ISWC.js} +1 -1
- package/dist/{chunk-DWHUZUEY.js → chunk-YJ34R5NB.js} +1 -1
- package/dist/{chunk-UTH7OXTM.js → chunk-ZEIT2QLM.js} +3 -3
- package/dist/cli/neuroverse.cjs +580 -28
- package/dist/cli/neuroverse.js +21 -21
- package/dist/cli/plan.js +2 -2
- package/dist/cli/run.js +2 -2
- package/dist/{demo-66MMJTEH.js → demo-6OQYWRR6.js} +3 -3
- package/dist/{derive-5LOMN7GO.js → derive-7Y7YWVLU.js} +4 -4
- package/dist/{doctor-WIO4FLA3.js → doctor-NHXI7OQW.js} +3 -2
- package/dist/engine/bootstrap-emitter.cjs +241 -0
- package/dist/engine/bootstrap-emitter.d.cts +27 -0
- package/dist/engine/bootstrap-emitter.d.ts +27 -0
- package/dist/{bootstrap-emitter-GIMOJFOC.js → engine/bootstrap-emitter.js} +2 -2
- package/dist/engine/bootstrap-parser.cjs +560 -0
- package/dist/engine/bootstrap-parser.d.cts +96 -0
- package/dist/engine/bootstrap-parser.d.ts +96 -0
- package/dist/{bootstrap-parser-LBLGVEMU.js → engine/bootstrap-parser.js} +2 -2
- package/dist/engine/guard-engine.cjs +1116 -0
- package/dist/engine/guard-engine.d.cts +60 -0
- package/dist/engine/guard-engine.d.ts +60 -0
- package/dist/{guard-engine-N7TUIUU7.js → engine/guard-engine.js} +3 -3
- package/dist/engine/simulate-engine.cjs +390 -0
- package/dist/engine/simulate-engine.d.cts +105 -0
- package/dist/engine/simulate-engine.d.ts +105 -0
- package/dist/engine/simulate-engine.js +9 -0
- package/dist/{equity-penalties-WWC7UDQD.js → equity-penalties-NVBAB5WL.js} +2 -2
- package/dist/{explain-MUSGDT67.js → explain-HDFN4ION.js} +1 -1
- package/dist/github-TIKTWOGU.js +27 -0
- package/dist/{guard-W3BMQPBJ.js → guard-6KSCWT2W.js} +2 -2
- package/dist/{guard-contract-CLBbTGK_.d.cts → guard-contract-C991HDZp.d.cts} +2 -369
- package/dist/{guard-contract-CLBbTGK_.d.ts → guard-contract-hHjTTjtR.d.ts} +2 -369
- package/dist/{improve-PJDAWW4Q.js → improve-2PWGGO5B.js} +3 -3
- package/dist/index.cjs +452 -0
- package/dist/index.d.cts +231 -492
- package/dist/index.d.ts +231 -492
- package/dist/index.js +76 -55
- package/dist/{lens-IP6GIZ2Q.js → lens-MHMUDCMQ.js} +92 -25
- package/dist/{mcp-server-OG3PPVD2.js → mcp-server-TNIWZ7B5.js} +2 -2
- package/dist/{playground-4BK2XQ47.js → playground-3FLDGBET.js} +2 -2
- package/dist/{redteam-BRZALBPP.js → redteam-HV6LMKEH.js} +2 -2
- package/dist/{session-SGRUT2UH.js → session-XZP2754M.js} +2 -2
- package/dist/{shared-BGzmYP5g.d.cts → shared-DGnn1jiS.d.cts} +1 -1
- package/dist/{shared-CwGpPheR.d.ts → shared-U405h52W.d.ts} +1 -1
- package/dist/{simulate-FGXKIH7V.js → simulate-VT437EEL.js} +2 -2
- package/dist/spatial/index.cjs +682 -0
- package/dist/spatial/index.d.cts +517 -0
- package/dist/spatial/index.d.ts +517 -0
- package/dist/spatial/index.js +633 -0
- package/dist/{test-PT44BSYG.js → test-4WTX6RKQ.js} +2 -2
- package/dist/types.cjs +18 -0
- package/dist/types.d.cts +370 -0
- package/dist/types.d.ts +370 -0
- package/dist/types.js +0 -0
- package/dist/{validate-Q5O5TGLT.js → validate-M52DX22Y.js} +1 -1
- package/dist/{world-V52ZMH26.js → world-O4HTQPDP.js} +1 -1
- package/dist/{world-loader-C4D3VPP3.js → world-loader-YTYFOP7D.js} +1 -1
- package/dist/worlds/mentraos-spatial.nv-world.md +68 -0
- package/package.json +46 -3
- package/dist/{behavioral-SPWPGYXL.js → behavioral-SLW7ALEK.js} +3 -3
- package/dist/{bootstrap-IP5QMC3Q.js → bootstrap-2OW5ZLBL.js} +3 -3
- package/dist/{chunk-7QIAF377.js → chunk-CYDMUJVZ.js} +0 -0
- package/dist/{chunk-QZ666FCV.js → chunk-FHXXD2TI.js} +6 -6
- package/dist/{configure-ai-5MP5DWTT.js → configure-ai-LL3VAPQW.js} +3 -3
package/dist/cli/neuroverse.js
CHANGED
|
@@ -100,23 +100,23 @@ async function main() {
|
|
|
100
100
|
const subArgs = args.slice(1);
|
|
101
101
|
switch (command) {
|
|
102
102
|
case "add": {
|
|
103
|
-
const { main: addMain } = await import("../add-
|
|
103
|
+
const { main: addMain } = await import("../add-XSANI3FK.js");
|
|
104
104
|
return addMain(subArgs);
|
|
105
105
|
}
|
|
106
106
|
case "build": {
|
|
107
|
-
const { main: buildMain } = await import("../build-
|
|
107
|
+
const { main: buildMain } = await import("../build-EGBGZFIJ.js");
|
|
108
108
|
return buildMain(subArgs);
|
|
109
109
|
}
|
|
110
110
|
case "explain": {
|
|
111
|
-
const { main: explainMain } = await import("../explain-
|
|
111
|
+
const { main: explainMain } = await import("../explain-HDFN4ION.js");
|
|
112
112
|
return explainMain(subArgs);
|
|
113
113
|
}
|
|
114
114
|
case "simulate": {
|
|
115
|
-
const { main: simulateMain } = await import("../simulate-
|
|
115
|
+
const { main: simulateMain } = await import("../simulate-VT437EEL.js");
|
|
116
116
|
return simulateMain(subArgs);
|
|
117
117
|
}
|
|
118
118
|
case "improve": {
|
|
119
|
-
const { main: improveMain } = await import("../improve-
|
|
119
|
+
const { main: improveMain } = await import("../improve-2PWGGO5B.js");
|
|
120
120
|
return improveMain(subArgs);
|
|
121
121
|
}
|
|
122
122
|
case "init": {
|
|
@@ -132,35 +132,35 @@ async function main() {
|
|
|
132
132
|
return inferWorldMain(subArgs);
|
|
133
133
|
}
|
|
134
134
|
case "bootstrap": {
|
|
135
|
-
const { main: bootstrapMain } = await import("../bootstrap-
|
|
135
|
+
const { main: bootstrapMain } = await import("../bootstrap-2OW5ZLBL.js");
|
|
136
136
|
return bootstrapMain(subArgs);
|
|
137
137
|
}
|
|
138
138
|
case "validate": {
|
|
139
|
-
const { main: validateMain } = await import("../validate-
|
|
139
|
+
const { main: validateMain } = await import("../validate-M52DX22Y.js");
|
|
140
140
|
return validateMain(subArgs);
|
|
141
141
|
}
|
|
142
142
|
case "guard": {
|
|
143
|
-
const { main: guardMain } = await import("../guard-
|
|
143
|
+
const { main: guardMain } = await import("../guard-6KSCWT2W.js");
|
|
144
144
|
return guardMain(subArgs);
|
|
145
145
|
}
|
|
146
146
|
case "test": {
|
|
147
|
-
const { main: testMain } = await import("../test-
|
|
147
|
+
const { main: testMain } = await import("../test-4WTX6RKQ.js");
|
|
148
148
|
return testMain(subArgs);
|
|
149
149
|
}
|
|
150
150
|
case "redteam": {
|
|
151
|
-
const { main: redteamMain } = await import("../redteam-
|
|
151
|
+
const { main: redteamMain } = await import("../redteam-HV6LMKEH.js");
|
|
152
152
|
return redteamMain(subArgs);
|
|
153
153
|
}
|
|
154
154
|
case "demo": {
|
|
155
|
-
const { main: demoMain } = await import("../demo-
|
|
155
|
+
const { main: demoMain } = await import("../demo-6OQYWRR6.js");
|
|
156
156
|
return demoMain(subArgs);
|
|
157
157
|
}
|
|
158
158
|
case "doctor": {
|
|
159
|
-
const { main: doctorMain } = await import("../doctor-
|
|
159
|
+
const { main: doctorMain } = await import("../doctor-NHXI7OQW.js");
|
|
160
160
|
return doctorMain(subArgs);
|
|
161
161
|
}
|
|
162
162
|
case "playground": {
|
|
163
|
-
const { main: playgroundMain } = await import("../playground-
|
|
163
|
+
const { main: playgroundMain } = await import("../playground-3FLDGBET.js");
|
|
164
164
|
return playgroundMain(subArgs);
|
|
165
165
|
}
|
|
166
166
|
case "plan": {
|
|
@@ -172,11 +172,11 @@ async function main() {
|
|
|
172
172
|
return runMain(subArgs);
|
|
173
173
|
}
|
|
174
174
|
case "mcp": {
|
|
175
|
-
const { startMcpServer } = await import("../mcp-server-
|
|
175
|
+
const { startMcpServer } = await import("../mcp-server-TNIWZ7B5.js");
|
|
176
176
|
return startMcpServer(subArgs);
|
|
177
177
|
}
|
|
178
178
|
case "worlds": {
|
|
179
|
-
const { main: worldMain } = await import("../world-
|
|
179
|
+
const { main: worldMain } = await import("../world-O4HTQPDP.js");
|
|
180
180
|
return worldMain(["list", ...subArgs]);
|
|
181
181
|
}
|
|
182
182
|
case "trace": {
|
|
@@ -188,15 +188,15 @@ async function main() {
|
|
|
188
188
|
return impactMain(subArgs);
|
|
189
189
|
}
|
|
190
190
|
case "behavioral": {
|
|
191
|
-
const { main: behavioralMain } = await import("../behavioral-
|
|
191
|
+
const { main: behavioralMain } = await import("../behavioral-SLW7ALEK.js");
|
|
192
192
|
return behavioralMain(subArgs);
|
|
193
193
|
}
|
|
194
194
|
case "world": {
|
|
195
|
-
const { main: worldMain } = await import("../world-
|
|
195
|
+
const { main: worldMain } = await import("../world-O4HTQPDP.js");
|
|
196
196
|
return worldMain(subArgs);
|
|
197
197
|
}
|
|
198
198
|
case "derive": {
|
|
199
|
-
const { main: deriveMain } = await import("../derive-
|
|
199
|
+
const { main: deriveMain } = await import("../derive-7Y7YWVLU.js");
|
|
200
200
|
return deriveMain(subArgs);
|
|
201
201
|
}
|
|
202
202
|
case "decision-flow": {
|
|
@@ -204,11 +204,11 @@ async function main() {
|
|
|
204
204
|
return decisionFlowMain(subArgs);
|
|
205
205
|
}
|
|
206
206
|
case "equity-penalties": {
|
|
207
|
-
const { main: equityPenaltiesMain } = await import("../equity-penalties-
|
|
207
|
+
const { main: equityPenaltiesMain } = await import("../equity-penalties-NVBAB5WL.js");
|
|
208
208
|
return equityPenaltiesMain(subArgs);
|
|
209
209
|
}
|
|
210
210
|
case "configure-ai": {
|
|
211
|
-
const { main: configureAiMain } = await import("../configure-ai-
|
|
211
|
+
const { main: configureAiMain } = await import("../configure-ai-LL3VAPQW.js");
|
|
212
212
|
return configureAiMain(subArgs);
|
|
213
213
|
}
|
|
214
214
|
case "configure-world": {
|
|
@@ -216,7 +216,7 @@ async function main() {
|
|
|
216
216
|
return configureWorldMain(subArgs);
|
|
217
217
|
}
|
|
218
218
|
case "lens": {
|
|
219
|
-
const { main: lensMain } = await import("../lens-
|
|
219
|
+
const { main: lensMain } = await import("../lens-MHMUDCMQ.js");
|
|
220
220
|
return lensMain(subArgs);
|
|
221
221
|
}
|
|
222
222
|
case "--help":
|
package/dist/cli/plan.js
CHANGED
|
@@ -100,8 +100,8 @@ async function checkCommand(args) {
|
|
|
100
100
|
}
|
|
101
101
|
const worldPath = parseArg(args, "--world");
|
|
102
102
|
if (worldPath) {
|
|
103
|
-
const { loadWorld } = await import("../world-loader-
|
|
104
|
-
const { evaluateGuard } = await import("../guard-engine
|
|
103
|
+
const { loadWorld } = await import("../world-loader-YTYFOP7D.js");
|
|
104
|
+
const { evaluateGuard } = await import("../engine/guard-engine.js");
|
|
105
105
|
const world = await loadWorld(worldPath);
|
|
106
106
|
const verdict2 = evaluateGuard(event, world, { plan });
|
|
107
107
|
process.stdout.write(JSON.stringify(verdict2, null, 2) + "\n");
|
package/dist/cli/run.js
CHANGED
|
@@ -92,7 +92,7 @@ async function main(args) {
|
|
|
92
92
|
return;
|
|
93
93
|
}
|
|
94
94
|
const { resolveProvider, ModelAdapter } = await import("../model-adapter-VXEKB4LS.js");
|
|
95
|
-
const { runInteractiveMode } = await import("../session-
|
|
95
|
+
const { runInteractiveMode } = await import("../session-XZP2754M.js");
|
|
96
96
|
const modelConfig = resolveProvider(providerName, {
|
|
97
97
|
model: parseArg(args, "--model"),
|
|
98
98
|
apiKey: parseArg(args, "--api-key")
|
|
@@ -126,7 +126,7 @@ async function main(args) {
|
|
|
126
126
|
model
|
|
127
127
|
);
|
|
128
128
|
} else if (isPipeMode) {
|
|
129
|
-
const { runPipeMode } = await import("../session-
|
|
129
|
+
const { runPipeMode } = await import("../session-XZP2754M.js");
|
|
130
130
|
await runPipeMode({
|
|
131
131
|
worldPath,
|
|
132
132
|
plan,
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
handleListPresets,
|
|
7
7
|
handleReasonRequest,
|
|
8
8
|
writeTempWorld
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-AV7XJJWK.js";
|
|
10
10
|
import {
|
|
11
11
|
adaptationFromVerdict,
|
|
12
12
|
detectBehavioralPatterns,
|
|
@@ -16,12 +16,12 @@ import {
|
|
|
16
16
|
resolveWorldPath
|
|
17
17
|
} from "./chunk-AKW5YVCE.js";
|
|
18
18
|
import "./chunk-ZAF6JH23.js";
|
|
19
|
-
import "./chunk-QLPTHTVB.js";
|
|
20
19
|
import {
|
|
21
20
|
DEFAULT_BUNDLED_WORLD,
|
|
22
21
|
loadBundledWorld,
|
|
23
22
|
loadWorld
|
|
24
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-I4RTIMLX.js";
|
|
24
|
+
import "./chunk-QLPTHTVB.js";
|
|
25
25
|
import {
|
|
26
26
|
__require
|
|
27
27
|
} from "./chunk-QWGCMQQD.js";
|
|
@@ -2,15 +2,15 @@ import {
|
|
|
2
2
|
DeriveInputError,
|
|
3
3
|
DeriveProviderError,
|
|
4
4
|
deriveWorld
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-FHXXD2TI.js";
|
|
6
6
|
import {
|
|
7
7
|
DERIVE_EXIT_CODES
|
|
8
8
|
} from "./chunk-FMSTRBBS.js";
|
|
9
|
-
import "./chunk-OT6PXH54.js";
|
|
10
9
|
import "./chunk-INWQHLPS.js";
|
|
10
|
+
import "./chunk-OT6PXH54.js";
|
|
11
11
|
import "./chunk-7P3S7MAY.js";
|
|
12
|
-
import "./chunk-3NZMMSOW.js";
|
|
13
12
|
import "./chunk-YPCVY4GS.js";
|
|
13
|
+
import "./chunk-3NZMMSOW.js";
|
|
14
14
|
import "./chunk-QWGCMQQD.js";
|
|
15
15
|
|
|
16
16
|
// src/cli/derive.ts
|
|
@@ -121,7 +121,7 @@ Normalization: ${n.fixCount} fix(es) applied
|
|
|
121
121
|
process.stderr.write(`
|
|
122
122
|
Bootstrapping to ${args.bootstrapDir}...
|
|
123
123
|
`);
|
|
124
|
-
const { main: bootstrapMain } = await import("./bootstrap-
|
|
124
|
+
const { main: bootstrapMain } = await import("./bootstrap-2OW5ZLBL.js");
|
|
125
125
|
await bootstrapMain([
|
|
126
126
|
"--input",
|
|
127
127
|
result.outputPath,
|
|
@@ -10,9 +10,10 @@ var globImport_adapters = __glob({
|
|
|
10
10
|
"../adapters/autoresearch.ts": () => import("./adapters/autoresearch.js"),
|
|
11
11
|
"../adapters/deep-agents.ts": () => import("./adapters/deep-agents.js"),
|
|
12
12
|
"../adapters/express.ts": () => import("./adapters/express.js"),
|
|
13
|
+
"../adapters/github.ts": () => import("./github-TIKTWOGU.js"),
|
|
13
14
|
"../adapters/index.ts": () => import("./adapters/index.js"),
|
|
14
15
|
"../adapters/langchain.ts": () => import("./adapters/langchain.js"),
|
|
15
|
-
"../adapters/mentraos.ts": () => import("./mentraos
|
|
16
|
+
"../adapters/mentraos.ts": () => import("./adapters/mentraos.js"),
|
|
16
17
|
"../adapters/openai.ts": () => import("./adapters/openai.js"),
|
|
17
18
|
"../adapters/openclaw.ts": () => import("./adapters/openclaw.js"),
|
|
18
19
|
"../adapters/shared.ts": () => import("./shared-7RLUHNMU.js")
|
|
@@ -104,7 +105,7 @@ async function main(argv) {
|
|
|
104
105
|
});
|
|
105
106
|
}
|
|
106
107
|
try {
|
|
107
|
-
const { evaluateGuard } = await import("./guard-engine
|
|
108
|
+
const { evaluateGuard } = await import("./engine/guard-engine.js");
|
|
108
109
|
checks.push({
|
|
109
110
|
label: "Guard engine",
|
|
110
111
|
status: typeof evaluateGuard === "function" ? "pass" : "fail",
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/engine/bootstrap-emitter.ts
|
|
21
|
+
var bootstrap_emitter_exports = {};
|
|
22
|
+
__export(bootstrap_emitter_exports, {
|
|
23
|
+
emitWorldDefinition: () => emitWorldDefinition
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(bootstrap_emitter_exports);
|
|
26
|
+
var GATE_DEFAULTS = {
|
|
27
|
+
THRIVING: { color: "#0f6b3a", icon: "\u2726" },
|
|
28
|
+
STABLE: { color: "#1856b8", icon: "\u25CF" },
|
|
29
|
+
COMPRESSED: { color: "#a16207", icon: "\u25B2" },
|
|
30
|
+
CRITICAL: { color: "#b91c1c", icon: "\u26A0" },
|
|
31
|
+
MODEL_COLLAPSES: { color: "#7f1d1d", icon: "\u2715" }
|
|
32
|
+
};
|
|
33
|
+
function emitWorldDefinition(parsed) {
|
|
34
|
+
const issues = [];
|
|
35
|
+
const fm = parsed.frontmatter;
|
|
36
|
+
const defaultProfile = fm.default_profile ?? parsed.assumptions[0]?.id ?? "baseline";
|
|
37
|
+
const altProfile = fm.alternative_profile ?? parsed.assumptions[1]?.id ?? "alternative";
|
|
38
|
+
const world = {
|
|
39
|
+
world_id: fm.world_id,
|
|
40
|
+
name: fm.name,
|
|
41
|
+
thesis: parsed.thesis,
|
|
42
|
+
version: fm.version ?? "1.0.0",
|
|
43
|
+
runtime_mode: fm.runtime_mode ?? "SIMULATION",
|
|
44
|
+
default_assumption_profile: defaultProfile,
|
|
45
|
+
default_alternative_profile: altProfile,
|
|
46
|
+
modules: parsed.rules.map((r) => r.id),
|
|
47
|
+
players: {
|
|
48
|
+
thinking_space: true,
|
|
49
|
+
experience_space: true,
|
|
50
|
+
action_space: true
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
const invariants = parsed.invariants.map((inv) => ({
|
|
54
|
+
id: inv.id,
|
|
55
|
+
label: inv.label,
|
|
56
|
+
enforcement: inv.enforcement === "prompt" ? "prompt" : "structural",
|
|
57
|
+
mutable: false
|
|
58
|
+
}));
|
|
59
|
+
const profiles = {};
|
|
60
|
+
const parameterDefinitions = {};
|
|
61
|
+
for (let i = 0; i < parsed.assumptions.length; i++) {
|
|
62
|
+
const profile = parsed.assumptions[i];
|
|
63
|
+
const params = {};
|
|
64
|
+
for (const [key, val] of Object.entries(profile.parameters)) {
|
|
65
|
+
params[key] = String(val);
|
|
66
|
+
if (!parameterDefinitions[key]) {
|
|
67
|
+
parameterDefinitions[key] = {
|
|
68
|
+
type: typeof val === "boolean" ? "boolean" : typeof val === "number" ? "number" : "enum",
|
|
69
|
+
label: key.replace(/_/g, " ").replace(/\b\w/g, (c) => c.toUpperCase()),
|
|
70
|
+
description: `Parameter: ${key}`
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
profiles[profile.id] = {
|
|
75
|
+
name: profile.name,
|
|
76
|
+
description: profile.description,
|
|
77
|
+
is_default_baseline: i === 0 || profile.id === defaultProfile,
|
|
78
|
+
is_default_alternative: i === 1 || profile.id === altProfile,
|
|
79
|
+
parameters: params
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
const assumptions = { profiles, parameter_definitions: parameterDefinitions };
|
|
83
|
+
const variables = {};
|
|
84
|
+
for (const v of parsed.stateVariables) {
|
|
85
|
+
const stateVar = {
|
|
86
|
+
type: v.type,
|
|
87
|
+
default: v.default,
|
|
88
|
+
mutable: true,
|
|
89
|
+
label: v.label,
|
|
90
|
+
description: v.description
|
|
91
|
+
};
|
|
92
|
+
if (v.type === "number") {
|
|
93
|
+
if (v.min !== void 0) stateVar.min = v.min;
|
|
94
|
+
if (v.max !== void 0) stateVar.max = v.max;
|
|
95
|
+
if (v.step !== void 0) stateVar.step = v.step;
|
|
96
|
+
}
|
|
97
|
+
if (v.type === "enum" && v.options) {
|
|
98
|
+
stateVar.options = v.options;
|
|
99
|
+
}
|
|
100
|
+
variables[v.id] = stateVar;
|
|
101
|
+
}
|
|
102
|
+
const stateSchema = { variables, presets: {} };
|
|
103
|
+
const rules = parsed.rules.map((r) => {
|
|
104
|
+
const triggers = r.triggers.map((t) => ({
|
|
105
|
+
field: t.field,
|
|
106
|
+
operator: t.operator,
|
|
107
|
+
value: t.value,
|
|
108
|
+
source: t.source
|
|
109
|
+
}));
|
|
110
|
+
const effects = r.effects.map((e) => ({
|
|
111
|
+
target: e.target,
|
|
112
|
+
operation: e.operation,
|
|
113
|
+
value: e.value
|
|
114
|
+
}));
|
|
115
|
+
let collapse_check;
|
|
116
|
+
if (r.collapse_check) {
|
|
117
|
+
collapse_check = {
|
|
118
|
+
field: r.collapse_check.field,
|
|
119
|
+
operator: r.collapse_check.operator,
|
|
120
|
+
value: r.collapse_check.value,
|
|
121
|
+
result: "MODEL_COLLAPSES"
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
const causal_translation = r.causal_translation ?? {
|
|
125
|
+
trigger_text: "",
|
|
126
|
+
rule_text: "",
|
|
127
|
+
shift_text: "",
|
|
128
|
+
effect_text: ""
|
|
129
|
+
};
|
|
130
|
+
const rule = {
|
|
131
|
+
id: r.id,
|
|
132
|
+
severity: r.severity,
|
|
133
|
+
label: r.label,
|
|
134
|
+
description: r.description ?? r.label,
|
|
135
|
+
order: r.order,
|
|
136
|
+
triggers,
|
|
137
|
+
effects: effects.length > 0 ? effects : void 0,
|
|
138
|
+
collapse_check,
|
|
139
|
+
causal_translation
|
|
140
|
+
};
|
|
141
|
+
return rule;
|
|
142
|
+
});
|
|
143
|
+
const viabilityClassification = parsed.gates.map((g) => {
|
|
144
|
+
const defaults = GATE_DEFAULTS[g.status] ?? { color: "#5c5a52", icon: "\u25CF" };
|
|
145
|
+
return {
|
|
146
|
+
status: g.status,
|
|
147
|
+
field: g.field,
|
|
148
|
+
operator: g.operator,
|
|
149
|
+
value: g.value,
|
|
150
|
+
color: defaults.color,
|
|
151
|
+
icon: defaults.icon
|
|
152
|
+
};
|
|
153
|
+
});
|
|
154
|
+
const gates = {
|
|
155
|
+
viability_classification: viabilityClassification,
|
|
156
|
+
structural_override: {
|
|
157
|
+
description: "Rules with severity=structural and triggered collapse_check force MODEL_COLLAPSES regardless of final margin.",
|
|
158
|
+
enforcement: "mandatory"
|
|
159
|
+
},
|
|
160
|
+
sustainability_threshold: 0.1,
|
|
161
|
+
collapse_visual: {
|
|
162
|
+
background: "#1c1917",
|
|
163
|
+
text: "#fef2f2",
|
|
164
|
+
border: "#b91c1c",
|
|
165
|
+
label: "Structural Failure"
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
const computedOutcomes = parsed.outcomes.map((o) => {
|
|
169
|
+
const outcome = {
|
|
170
|
+
id: o.id,
|
|
171
|
+
type: o.type,
|
|
172
|
+
label: o.label,
|
|
173
|
+
show_in_comparison: true
|
|
174
|
+
};
|
|
175
|
+
if (o.range) outcome.range = o.range;
|
|
176
|
+
if (o.display) outcome.display_as = o.display;
|
|
177
|
+
if (o.primary) outcome.primary = o.primary;
|
|
178
|
+
if (o.assignment) outcome.assignment = o.assignment;
|
|
179
|
+
return outcome;
|
|
180
|
+
});
|
|
181
|
+
const outcomes = {
|
|
182
|
+
computed_outcomes: computedOutcomes,
|
|
183
|
+
comparison_layout: {
|
|
184
|
+
primary_card: computedOutcomes.find((o) => o.primary)?.id ?? computedOutcomes[0]?.id ?? "",
|
|
185
|
+
status_badge: "viability_status",
|
|
186
|
+
structural_indicators: rules.filter((r) => r.severity === "structural").map((r) => r.id)
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
const validScopes = /* @__PURE__ */ new Set(["response_framing", "language_style", "content_filtering", "value_emphasis", "behavior_shaping"]);
|
|
190
|
+
const lensConfigs = parsed.lenses.map((pl) => {
|
|
191
|
+
const directives = pl.directives.map((d) => ({
|
|
192
|
+
id: d.id,
|
|
193
|
+
scope: validScopes.has(d.scope) ? d.scope : "behavior_shaping",
|
|
194
|
+
instruction: d.instruction
|
|
195
|
+
}));
|
|
196
|
+
return {
|
|
197
|
+
id: pl.id,
|
|
198
|
+
name: pl.name,
|
|
199
|
+
tagline: pl.tagline,
|
|
200
|
+
description: pl.description,
|
|
201
|
+
tags: pl.tags,
|
|
202
|
+
tone: {
|
|
203
|
+
formality: pl.formality || "neutral",
|
|
204
|
+
verbosity: pl.verbosity || "balanced",
|
|
205
|
+
emotion: pl.emotion || "neutral",
|
|
206
|
+
confidence: pl.confidence || "balanced"
|
|
207
|
+
},
|
|
208
|
+
directives,
|
|
209
|
+
defaultForRoles: pl.defaultForRoles,
|
|
210
|
+
priority: pl.priority,
|
|
211
|
+
stackable: pl.stackable
|
|
212
|
+
};
|
|
213
|
+
});
|
|
214
|
+
const lensesConfig = lensConfigs.length > 0 ? {
|
|
215
|
+
lenses: lensConfigs,
|
|
216
|
+
...parsed.lensPolicy ? { policy: parsed.lensPolicy } : {},
|
|
217
|
+
...parsed.lensLockPin ? { lockPin: parsed.lensLockPin } : {}
|
|
218
|
+
} : void 0;
|
|
219
|
+
const metadata = {
|
|
220
|
+
format_version: "1.0.0",
|
|
221
|
+
created_at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
222
|
+
last_modified: (/* @__PURE__ */ new Date()).toISOString(),
|
|
223
|
+
authoring_method: "manual-authoring"
|
|
224
|
+
};
|
|
225
|
+
const worldDefinition = {
|
|
226
|
+
world,
|
|
227
|
+
invariants,
|
|
228
|
+
assumptions,
|
|
229
|
+
stateSchema,
|
|
230
|
+
rules,
|
|
231
|
+
gates,
|
|
232
|
+
outcomes,
|
|
233
|
+
...lensesConfig ? { lenses: lensesConfig } : {},
|
|
234
|
+
metadata
|
|
235
|
+
};
|
|
236
|
+
return { world: worldDefinition, issues };
|
|
237
|
+
}
|
|
238
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
239
|
+
0 && (module.exports = {
|
|
240
|
+
emitWorldDefinition
|
|
241
|
+
});
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { P as ParsedWorld, a as ParseIssue } from '../bootstrap-contract-DcV6t-8M.cjs';
|
|
2
|
+
import { WorldDefinition } from '../types.cjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Bootstrap Emitter — ParsedWorld → WorldDefinition
|
|
6
|
+
*
|
|
7
|
+
* Converts the intermediate representation from the parser
|
|
8
|
+
* into a proper WorldDefinition that the guard engine, validate engine,
|
|
9
|
+
* and compileWorldToZip() all consume.
|
|
10
|
+
*
|
|
11
|
+
* Fills in sensible defaults for optional fields.
|
|
12
|
+
* Reports issues when the parsed data can't cleanly map to the target type.
|
|
13
|
+
*
|
|
14
|
+
* Deterministic. Same parsed input → same WorldDefinition output.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Convert a ParsedWorld into a WorldDefinition.
|
|
19
|
+
*
|
|
20
|
+
* Returns the world definition and any issues encountered during emission.
|
|
21
|
+
*/
|
|
22
|
+
declare function emitWorldDefinition(parsed: ParsedWorld): {
|
|
23
|
+
world: WorldDefinition;
|
|
24
|
+
issues: ParseIssue[];
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { emitWorldDefinition };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { P as ParsedWorld, a as ParseIssue } from '../bootstrap-contract-DcV6t-8M.js';
|
|
2
|
+
import { WorldDefinition } from '../types.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Bootstrap Emitter — ParsedWorld → WorldDefinition
|
|
6
|
+
*
|
|
7
|
+
* Converts the intermediate representation from the parser
|
|
8
|
+
* into a proper WorldDefinition that the guard engine, validate engine,
|
|
9
|
+
* and compileWorldToZip() all consume.
|
|
10
|
+
*
|
|
11
|
+
* Fills in sensible defaults for optional fields.
|
|
12
|
+
* Reports issues when the parsed data can't cleanly map to the target type.
|
|
13
|
+
*
|
|
14
|
+
* Deterministic. Same parsed input → same WorldDefinition output.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Convert a ParsedWorld into a WorldDefinition.
|
|
19
|
+
*
|
|
20
|
+
* Returns the world definition and any issues encountered during emission.
|
|
21
|
+
*/
|
|
22
|
+
declare function emitWorldDefinition(parsed: ParsedWorld): {
|
|
23
|
+
world: WorldDefinition;
|
|
24
|
+
issues: ParseIssue[];
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export { emitWorldDefinition };
|