paracosm 0.7.409 → 0.7.443

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/README.md +79 -14
  2. package/dist/cli/compile.d.ts +1 -1
  3. package/dist/cli/compile.js +4 -4
  4. package/dist/cli/fetch-seed-url.d.ts +48 -0
  5. package/dist/cli/fetch-seed-url.d.ts.map +1 -0
  6. package/dist/cli/fetch-seed-url.js +109 -0
  7. package/dist/cli/fetch-seed-url.js.map +1 -0
  8. package/dist/cli/fork-preconditions.d.ts +17 -0
  9. package/dist/cli/fork-preconditions.d.ts.map +1 -0
  10. package/dist/cli/fork-preconditions.js +51 -0
  11. package/dist/cli/fork-preconditions.js.map +1 -0
  12. package/dist/cli/init-templates.d.ts +43 -0
  13. package/dist/cli/init-templates.d.ts.map +1 -0
  14. package/dist/cli/init-templates.js +141 -0
  15. package/dist/cli/init-templates.js.map +1 -0
  16. package/dist/cli/init.d.ts +46 -0
  17. package/dist/cli/init.d.ts.map +1 -0
  18. package/dist/cli/init.js +207 -0
  19. package/dist/cli/init.js.map +1 -0
  20. package/dist/cli/pair-runner.d.ts +25 -2
  21. package/dist/cli/pair-runner.d.ts.map +1 -1
  22. package/dist/cli/pair-runner.js +141 -5
  23. package/dist/cli/pair-runner.js.map +1 -1
  24. package/dist/cli/quickstart-routes.d.ts +35 -0
  25. package/dist/cli/quickstart-routes.d.ts.map +1 -0
  26. package/dist/cli/quickstart-routes.js +100 -0
  27. package/dist/cli/quickstart-routes.js.map +1 -0
  28. package/dist/cli/run.js +8 -0
  29. package/dist/cli/run.js.map +1 -1
  30. package/dist/cli/server/enrich-run-record.d.ts +22 -0
  31. package/dist/cli/server/enrich-run-record.d.ts.map +1 -0
  32. package/dist/cli/server/enrich-run-record.js +27 -0
  33. package/dist/cli/server/enrich-run-record.js.map +1 -0
  34. package/dist/cli/server/routes/platform-api.d.ts +19 -3
  35. package/dist/cli/server/routes/platform-api.d.ts.map +1 -1
  36. package/dist/cli/server/routes/platform-api.js +174 -5
  37. package/dist/cli/server/routes/platform-api.js.map +1 -1
  38. package/dist/cli/server/run-history-store.d.ts +27 -1
  39. package/dist/cli/server/run-history-store.d.ts.map +1 -1
  40. package/dist/cli/server/run-history-store.js +5 -0
  41. package/dist/cli/server/run-history-store.js.map +1 -1
  42. package/dist/cli/server/run-record.d.ts +13 -0
  43. package/dist/cli/server/run-record.d.ts.map +1 -1
  44. package/dist/cli/server/run-record.js.map +1 -1
  45. package/dist/cli/server/sqlite-run-history-store.d.ts +6 -0
  46. package/dist/cli/server/sqlite-run-history-store.d.ts.map +1 -0
  47. package/dist/cli/server/sqlite-run-history-store.js +226 -0
  48. package/dist/cli/server/sqlite-run-history-store.js.map +1 -0
  49. package/dist/cli/server-app.d.ts +73 -2
  50. package/dist/cli/server-app.d.ts.map +1 -1
  51. package/dist/cli/server-app.js +409 -159
  52. package/dist/cli/server-app.js.map +1 -1
  53. package/dist/cli/session-title.js +1 -1
  54. package/dist/cli/sim-config.d.ts +13 -0
  55. package/dist/cli/sim-config.d.ts.map +1 -1
  56. package/dist/cli/sim-config.js +16 -3
  57. package/dist/cli/sim-config.js.map +1 -1
  58. package/dist/cli/simulate-route.d.ts +103 -0
  59. package/dist/cli/simulate-route.d.ts.map +1 -0
  60. package/dist/cli/simulate-route.js +95 -0
  61. package/dist/cli/simulate-route.js.map +1 -0
  62. package/dist/engine/compiler/cache.d.ts +2 -2
  63. package/dist/engine/compiler/cache.js +2 -2
  64. package/dist/engine/compiler/compile-from-seed.d.ts +78 -0
  65. package/dist/engine/compiler/compile-from-seed.d.ts.map +1 -0
  66. package/dist/engine/compiler/compile-from-seed.js +93 -0
  67. package/dist/engine/compiler/compile-from-seed.js.map +1 -0
  68. package/dist/engine/compiler/generate-fingerprint.d.ts.map +1 -1
  69. package/dist/engine/compiler/generate-fingerprint.js +3 -6
  70. package/dist/engine/compiler/generate-fingerprint.js.map +1 -1
  71. package/dist/engine/compiler/generate-politics.d.ts.map +1 -1
  72. package/dist/engine/compiler/generate-politics.js +3 -6
  73. package/dist/engine/compiler/generate-politics.js.map +1 -1
  74. package/dist/engine/compiler/generate-progression.d.ts +10 -1
  75. package/dist/engine/compiler/generate-progression.d.ts.map +1 -1
  76. package/dist/engine/compiler/generate-progression.js +15 -15
  77. package/dist/engine/compiler/generate-progression.js.map +1 -1
  78. package/dist/engine/compiler/generate-prompts.d.ts.map +1 -1
  79. package/dist/engine/compiler/generate-prompts.js +4 -7
  80. package/dist/engine/compiler/generate-prompts.js.map +1 -1
  81. package/dist/engine/compiler/generate-reactions.d.ts.map +1 -1
  82. package/dist/engine/compiler/generate-reactions.js +3 -6
  83. package/dist/engine/compiler/generate-reactions.js.map +1 -1
  84. package/dist/engine/compiler/index.d.ts +9 -6
  85. package/dist/engine/compiler/index.d.ts.map +1 -1
  86. package/dist/engine/compiler/index.js +9 -6
  87. package/dist/engine/compiler/index.js.map +1 -1
  88. package/dist/engine/compiler/sandbox-runner.d.ts +40 -0
  89. package/dist/engine/compiler/sandbox-runner.d.ts.map +1 -0
  90. package/dist/engine/compiler/sandbox-runner.js +278 -0
  91. package/dist/engine/compiler/sandbox-runner.js.map +1 -0
  92. package/dist/engine/compiler/scenario-fixture.d.ts +4 -4
  93. package/dist/engine/compiler/scenario-fixture.js +4 -4
  94. package/dist/engine/compiler/seed-ingestion.d.ts +2 -2
  95. package/dist/engine/compiler/seed-ingestion.js +2 -2
  96. package/dist/engine/compiler/state-shape-block.d.ts +1 -1
  97. package/dist/engine/compiler/state-shape-block.js +5 -5
  98. package/dist/engine/compiler/types.d.ts +2 -2
  99. package/dist/engine/compiler/types.d.ts.map +1 -1
  100. package/dist/engine/compiler/validate.js +1 -1
  101. package/dist/engine/core/kernel.d.ts +4 -4
  102. package/dist/engine/core/kernel.js +6 -6
  103. package/dist/engine/core/progression.d.ts +3 -3
  104. package/dist/engine/core/progression.js +21 -21
  105. package/dist/engine/core/state.d.ts +7 -5
  106. package/dist/engine/core/state.d.ts.map +1 -1
  107. package/dist/engine/digital-twin/index.d.ts +41 -0
  108. package/dist/engine/digital-twin/index.d.ts.map +1 -0
  109. package/dist/engine/digital-twin/index.js +40 -0
  110. package/dist/engine/digital-twin/index.js.map +1 -0
  111. package/dist/engine/index.d.ts +1 -1
  112. package/dist/engine/leader-presets.d.ts +39 -0
  113. package/dist/engine/leader-presets.d.ts.map +1 -0
  114. package/dist/engine/leader-presets.js +118 -0
  115. package/dist/engine/leader-presets.js.map +1 -0
  116. package/dist/engine/lunar/fingerprint.js +2 -2
  117. package/dist/engine/lunar/prompts.js +2 -2
  118. package/dist/engine/mars/fingerprint.js +1 -1
  119. package/dist/engine/mars/metrics.d.ts +2 -2
  120. package/dist/engine/mars/metrics.js +2 -2
  121. package/dist/engine/mars/prompts.js +3 -3
  122. package/dist/runtime/build-artifact.d.ts +2 -1
  123. package/dist/runtime/build-artifact.d.ts.map +1 -1
  124. package/dist/runtime/build-artifact.js +2 -1
  125. package/dist/runtime/build-artifact.js.map +1 -1
  126. package/dist/runtime/canonical-json.d.ts +25 -0
  127. package/dist/runtime/canonical-json.d.ts.map +1 -0
  128. package/dist/runtime/canonical-json.js +46 -0
  129. package/dist/runtime/canonical-json.js.map +1 -0
  130. package/dist/runtime/contracts.d.ts +1 -1
  131. package/dist/runtime/departments.js +1 -1
  132. package/dist/runtime/orchestrator.d.ts +44 -4
  133. package/dist/runtime/orchestrator.d.ts.map +1 -1
  134. package/dist/runtime/orchestrator.js +125 -33
  135. package/dist/runtime/orchestrator.js.map +1 -1
  136. package/dist/runtime/parsers.js +5 -5
  137. package/dist/runtime/reaction-step.js +2 -2
  138. package/dist/runtime/world-model/index.d.ts +172 -18
  139. package/dist/runtime/world-model/index.d.ts.map +1 -1
  140. package/dist/runtime/world-model/index.js +242 -4
  141. package/dist/runtime/world-model/index.js.map +1 -1
  142. package/dist/runtime/world-snapshot.d.ts +13 -0
  143. package/dist/runtime/world-snapshot.d.ts.map +1 -0
  144. package/dist/runtime/world-snapshot.js +19 -0
  145. package/dist/runtime/world-snapshot.js.map +1 -0
  146. package/package.json +19 -4
@@ -3,6 +3,11 @@ export function createNoopRunHistoryStore() {
3
3
  async insertRun() { },
4
4
  async listRuns() { return []; },
5
5
  async getRun() { return null; },
6
+ async countRuns() { return 0; },
7
+ async aggregateStats() {
8
+ return { totalRuns: 0, totalCostUSD: 0, totalDurationMs: 0, replaysAttempted: 0, replaysMatched: 0 };
9
+ },
10
+ async recordReplayResult() { },
6
11
  };
7
12
  }
8
13
  //# sourceMappingURL=run-history-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-history-store.js","sourceRoot":"","sources":["../../../src/cli/server/run-history-store.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,KAAK,CAAC,SAAS,KAAI,CAAC;QACpB,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/B,KAAK,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;KAChC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"run-history-store.js","sourceRoot":"","sources":["../../../src/cli/server/run-history-store.ts"],"names":[],"mappings":"AAoCA,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,KAAK,CAAC,SAAS,KAAI,CAAC;QACpB,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/B,KAAK,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;QAC/B,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,KAAK,CAAC,cAAc;YAClB,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;QACvG,CAAC;QACD,KAAK,CAAC,kBAAkB,KAAI,CAAC;KAC9B,CAAC;AACJ,CAAC"}
@@ -8,6 +8,19 @@ export interface RunRecord {
8
8
  economicsProfile: string;
9
9
  sourceMode: ParacosmServerMode;
10
10
  createdBy: 'anonymous' | 'user' | 'service';
11
+ /** Absolute path to the on-disk RunArtifact JSON. Undefined for legacy
12
+ * runs whose path was not preserved. New runs always populate this. */
13
+ artifactPath?: string;
14
+ /** Total cost in USD captured from artifact.cost.totalUSD at insert time. */
15
+ costUSD?: number;
16
+ /** Wall-clock duration of the run in milliseconds. */
17
+ durationMs?: number;
18
+ /** Simulation mode captured from artifact.metadata.mode. */
19
+ mode?: 'turn-loop' | 'batch-trajectory' | 'batch-point';
20
+ /** Captured leader display name for the gallery card. */
21
+ leaderName?: string;
22
+ /** Captured leader archetype for the gallery card. */
23
+ leaderArchetype?: string;
11
24
  }
12
25
  export declare function createRunRecord(input: Omit<RunRecord, 'runId' | 'createdAt'>): RunRecord;
13
26
  export declare function hashLeaderConfig(input: unknown): string;
@@ -1 +1 @@
1
- {"version":3,"file":"run-record.d.ts","sourceRoot":"","sources":["../../../src/cli/server/run-record.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;CAC7C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,CAAC,GAAG,SAAS,CAMxF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEvD"}
1
+ {"version":3,"file":"run-record.d.ts","sourceRoot":"","sources":["../../../src/cli/server/run-record.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C;4EACwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,WAAW,GAAG,kBAAkB,GAAG,aAAa,CAAC;IACxD,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,CAAC,GAAG,SAAS,CAMxF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEvD"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-record.js","sourceRoot":"","sources":["../../../src/cli/server/run-record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAcrD,MAAM,UAAU,eAAe,CAAC,KAA6C;IAC3E,OAAO;QACL,KAAK,EAAE,OAAO,UAAU,EAAE,EAAE;QAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,GAAG,KAAK;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,WAAW,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACpG,CAAC"}
1
+ {"version":3,"file":"run-record.js","sourceRoot":"","sources":["../../../src/cli/server/run-record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA2BrD,MAAM,UAAU,eAAe,CAAC,KAA6C;IAC3E,OAAO;QACL,KAAK,EAAE,OAAO,UAAU,EAAE,EAAE;QAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,GAAG,KAAK;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,WAAW,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACpG,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { RunHistoryStore } from './run-history-store.js';
2
+ export interface SqliteRunHistoryStoreOptions {
3
+ dbPath: string;
4
+ }
5
+ export declare function createSqliteRunHistoryStore(options: SqliteRunHistoryStoreOptions): RunHistoryStore;
6
+ //# sourceMappingURL=sqlite-run-history-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-run-history-store.d.ts","sourceRoot":"","sources":["../../../src/cli/server/sqlite-run-history-store.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAmB,eAAe,EAAiB,MAAM,wBAAwB,CAAC;AAE9F,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,MAAM,CAAC;CAChB;AAmFD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,4BAA4B,GAAG,eAAe,CA6JlG"}
@@ -0,0 +1,226 @@
1
+ /**
2
+ * SQLite-backed implementation of {@link RunHistoryStore}. Mirrors the
3
+ * session-store pattern: better-sqlite3, WAL mode, prepared statements,
4
+ * `:memory:` path support for clean test isolation.
5
+ *
6
+ * Single `runs` table with composite per-filter indexes. Run records are
7
+ * tiny (~200 bytes); 100K rows fits in 20 MB. No retention cap; add
8
+ * `PARACOSM_RUN_HISTORY_MAX_ROWS` env var if traffic ever warrants it.
9
+ *
10
+ * @module paracosm/cli/server/sqlite-run-history-store
11
+ */
12
+ import Database from 'better-sqlite3';
13
+ import { mkdirSync } from 'node:fs';
14
+ import { dirname } from 'node:path';
15
+ const DEFAULT_LIMIT = 50;
16
+ const MAX_LIMIT = 500;
17
+ function clampLimit(raw) {
18
+ if (raw === undefined || !Number.isFinite(raw) || raw <= 0)
19
+ return DEFAULT_LIMIT;
20
+ return Math.min(MAX_LIMIT, Math.floor(raw));
21
+ }
22
+ function clampOffset(raw) {
23
+ if (raw === undefined || !Number.isFinite(raw) || raw < 0)
24
+ return 0;
25
+ return Math.floor(raw);
26
+ }
27
+ function rowToRecord(row) {
28
+ // Omit undefined optional fields so deepEqual against records constructed
29
+ // without those fields succeeds. Spread only when value is non-null.
30
+ const record = {
31
+ runId: row.run_id,
32
+ createdAt: row.created_at,
33
+ scenarioId: row.scenario_id,
34
+ scenarioVersion: row.scenario_version,
35
+ leaderConfigHash: row.leader_config_hash,
36
+ economicsProfile: row.economics_profile,
37
+ sourceMode: row.source_mode,
38
+ createdBy: row.created_by,
39
+ };
40
+ if (row.artifact_path !== null)
41
+ record.artifactPath = row.artifact_path;
42
+ if (row.cost_usd !== null)
43
+ record.costUSD = row.cost_usd;
44
+ if (row.duration_ms !== null)
45
+ record.durationMs = row.duration_ms;
46
+ if (row.mode !== null)
47
+ record.mode = row.mode;
48
+ if (row.leader_name !== null)
49
+ record.leaderName = row.leader_name;
50
+ if (row.leader_archetype !== null)
51
+ record.leaderArchetype = row.leader_archetype;
52
+ return record;
53
+ }
54
+ /**
55
+ * Idempotent column-add migration. SQLite raises "duplicate column name"
56
+ * when the column already exists; we swallow that and propagate any other
57
+ * error. Called from the schema bootstrap on every store creation; safe
58
+ * to run repeatedly.
59
+ */
60
+ function ensureRunsColumns(db) {
61
+ const newCols = [
62
+ ['artifact_path', 'TEXT'],
63
+ ['cost_usd', 'REAL'],
64
+ ['duration_ms', 'INTEGER'],
65
+ ['mode', 'TEXT'],
66
+ ['leader_name', 'TEXT'],
67
+ ['leader_archetype', 'TEXT'],
68
+ ['replay_attempts', 'INTEGER DEFAULT 0'],
69
+ ['replay_matches', 'INTEGER DEFAULT 0'],
70
+ ];
71
+ for (const [name, type] of newCols) {
72
+ try {
73
+ db.exec(`ALTER TABLE runs ADD COLUMN ${name} ${type};`);
74
+ }
75
+ catch (err) {
76
+ const msg = String(err.message ?? err);
77
+ if (!msg.includes('duplicate column name'))
78
+ throw err;
79
+ }
80
+ }
81
+ }
82
+ export function createSqliteRunHistoryStore(options) {
83
+ const { dbPath } = options;
84
+ if (dbPath !== ':memory:')
85
+ mkdirSync(dirname(dbPath), { recursive: true });
86
+ const db = new Database(dbPath);
87
+ db.pragma('journal_mode = WAL');
88
+ db.exec(`
89
+ CREATE TABLE IF NOT EXISTS runs (
90
+ run_id TEXT PRIMARY KEY NOT NULL,
91
+ created_at TEXT NOT NULL,
92
+ scenario_id TEXT NOT NULL,
93
+ scenario_version TEXT NOT NULL,
94
+ leader_config_hash TEXT NOT NULL,
95
+ economics_profile TEXT NOT NULL,
96
+ source_mode TEXT NOT NULL,
97
+ created_by TEXT NOT NULL
98
+ );
99
+ CREATE INDEX IF NOT EXISTS idx_runs_created_at ON runs (created_at DESC);
100
+ CREATE INDEX IF NOT EXISTS idx_runs_scenario_created ON runs (scenario_id, created_at DESC);
101
+ CREATE INDEX IF NOT EXISTS idx_runs_leader_created ON runs (leader_config_hash, created_at DESC);
102
+ CREATE INDEX IF NOT EXISTS idx_runs_mode_created ON runs (source_mode, created_at DESC);
103
+ `);
104
+ ensureRunsColumns(db);
105
+ // Index for filtering by simulation mode (Library tab).
106
+ try {
107
+ db.exec(`CREATE INDEX IF NOT EXISTS idx_runs_sim_mode_created ON runs (mode, created_at DESC);`);
108
+ }
109
+ catch (err) {
110
+ // Index creation may fail if mode column was just added; ignore.
111
+ void err;
112
+ }
113
+ const insertStmt = db.prepare(`
114
+ INSERT OR IGNORE INTO runs
115
+ (run_id, created_at, scenario_id, scenario_version, leader_config_hash,
116
+ economics_profile, source_mode, created_by,
117
+ artifact_path, cost_usd, duration_ms, mode, leader_name, leader_archetype)
118
+ VALUES
119
+ (@runId, @createdAt, @scenarioId, @scenarioVersion, @leaderConfigHash,
120
+ @economicsProfile, @sourceMode, @createdBy,
121
+ @artifactPath, @costUSD, @durationMs, @mode, @leaderName, @leaderArchetype)
122
+ `);
123
+ function insertRowParams(run) {
124
+ return {
125
+ runId: run.runId,
126
+ createdAt: run.createdAt,
127
+ scenarioId: run.scenarioId,
128
+ scenarioVersion: run.scenarioVersion,
129
+ leaderConfigHash: run.leaderConfigHash,
130
+ economicsProfile: run.economicsProfile,
131
+ sourceMode: run.sourceMode,
132
+ createdBy: run.createdBy,
133
+ artifactPath: run.artifactPath ?? null,
134
+ costUSD: run.costUSD ?? null,
135
+ durationMs: run.durationMs ?? null,
136
+ mode: run.mode ?? null,
137
+ leaderName: run.leaderName ?? null,
138
+ leaderArchetype: run.leaderArchetype ?? null,
139
+ };
140
+ }
141
+ const getStmt = db.prepare(`SELECT * FROM runs WHERE run_id = ?`);
142
+ function buildWhere(filters) {
143
+ const clauses = [];
144
+ const params = {};
145
+ // Simulation mode filter (artifact.metadata.mode column).
146
+ if (filters?.mode) {
147
+ clauses.push('mode = @mode');
148
+ params.mode = filters.mode;
149
+ }
150
+ // Server source mode filter (source_mode column). Distinct from above.
151
+ if (filters?.sourceMode) {
152
+ clauses.push('source_mode = @sourceMode');
153
+ params.sourceMode = filters.sourceMode;
154
+ }
155
+ if (filters?.scenarioId) {
156
+ clauses.push('scenario_id = @scenarioId');
157
+ params.scenarioId = filters.scenarioId;
158
+ }
159
+ if (filters?.leaderConfigHash) {
160
+ clauses.push('leader_config_hash = @leaderConfigHash');
161
+ params.leaderConfigHash = filters.leaderConfigHash;
162
+ }
163
+ if (filters?.q) {
164
+ clauses.push('(scenario_id LIKE @q OR leader_name LIKE @q OR leader_archetype LIKE @q)');
165
+ params.q = `%${filters.q}%`;
166
+ }
167
+ return {
168
+ where: clauses.length > 0 ? `WHERE ${clauses.join(' AND ')}` : '',
169
+ params,
170
+ };
171
+ }
172
+ return {
173
+ async insertRun(run) {
174
+ insertStmt.run(insertRowParams(run));
175
+ },
176
+ async listRuns(filters) {
177
+ const { where, params } = buildWhere(filters);
178
+ const limit = clampLimit(filters?.limit);
179
+ const offset = clampOffset(filters?.offset);
180
+ const sql = `SELECT * FROM runs ${where} ORDER BY created_at DESC LIMIT @__limit OFFSET @__offset`;
181
+ const rows = db
182
+ .prepare(sql)
183
+ .all({ ...params, __limit: limit, __offset: offset });
184
+ return rows.map(rowToRecord);
185
+ },
186
+ async getRun(runId) {
187
+ const row = getStmt.get(runId);
188
+ return row ? rowToRecord(row) : null;
189
+ },
190
+ async countRuns(filters) {
191
+ const { where, params } = buildWhere(filters);
192
+ const sql = `SELECT COUNT(*) AS n FROM runs ${where}`;
193
+ const row = db.prepare(sql).get(params);
194
+ return row?.n ?? 0;
195
+ },
196
+ async aggregateStats(filters) {
197
+ const { where, params } = buildWhere(filters);
198
+ const sql = `
199
+ SELECT
200
+ COUNT(*) AS total_runs,
201
+ COALESCE(SUM(cost_usd), 0) AS total_cost_usd,
202
+ COALESCE(SUM(duration_ms), 0) AS total_duration_ms,
203
+ COALESCE(SUM(replay_attempts), 0) AS replays_attempted,
204
+ COALESCE(SUM(replay_matches), 0) AS replays_matched
205
+ FROM runs ${where}
206
+ `;
207
+ const row = db.prepare(sql).get(params);
208
+ return {
209
+ totalRuns: Number(row?.total_runs ?? 0),
210
+ totalCostUSD: Number(row?.total_cost_usd ?? 0),
211
+ totalDurationMs: Number(row?.total_duration_ms ?? 0),
212
+ replaysAttempted: Number(row?.replays_attempted ?? 0),
213
+ replaysMatched: Number(row?.replays_matched ?? 0),
214
+ };
215
+ },
216
+ async recordReplayResult(runId, matches) {
217
+ db.prepare(`
218
+ UPDATE runs
219
+ SET replay_attempts = COALESCE(replay_attempts, 0) + 1,
220
+ replay_matches = COALESCE(replay_matches, 0) + ?
221
+ WHERE run_id = ?
222
+ `).run(matches ? 1 : 0, runId);
223
+ },
224
+ };
225
+ }
226
+ //# sourceMappingURL=sqlite-run-history-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-run-history-store.js","sourceRoot":"","sources":["../../../src/cli/server/sqlite-run-history-store.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { type SessionStore } from './session-store.js';
6
6
  import { type RunHistoryStore } from './server/run-history-store.js';
7
7
  export interface CreateMarsServerOptions {
8
8
  env?: NodeJS.ProcessEnv;
9
- runPairSimulations?: (config: NormalizedSimulationConfig, broadcast: BroadcastFn, signal?: AbortSignal, scenario?: ScenarioPackage) => Promise<void>;
9
+ runPairSimulations?: (config: NormalizedSimulationConfig, broadcast: BroadcastFn, signal?: AbortSignal, scenario?: ScenarioPackage, onArtifact?: (artifact: import('../engine/schema/index.js').RunArtifact, leader: import('../runtime/orchestrator.js').LeaderConfig) => void | Promise<void>) => Promise<void>;
10
10
  generateText?: (args: {
11
11
  provider: string;
12
12
  model: string;
@@ -38,9 +38,80 @@ export interface CreateMarsServerOptions {
38
38
  */
39
39
  sessionStore?: SessionStore;
40
40
  runHistoryStore?: RunHistoryStore;
41
+ /** Maximum accepted HTTP request body size. Defaults to 5 MiB. */
42
+ maxRequestBodyBytes?: number;
43
+ }
44
+ /**
45
+ * Optional hooks the /setup handler can pass to startWithConfig so that
46
+ * per-artifact post-flight work (Library-tab record persistence, future
47
+ * webhook notifications, etc.) can run with /setup-handler scope (which
48
+ * is where hasUserKeys, the runRecord base, and the active scenario
49
+ * already live).
50
+ */
51
+ export interface StartConfigHooks {
52
+ /**
53
+ * Fired once per completed leader artifact. Failures inside the hook
54
+ * are caught and logged by the runner; they do not abort the run.
55
+ */
56
+ onArtifact?: (artifact: import('../engine/schema/index.js').RunArtifact, leader: import('../runtime/orchestrator.js').LeaderConfig) => void | Promise<void>;
41
57
  }
42
58
  export interface MarsServer extends Server {
43
- startWithConfig: (config: NormalizedSimulationConfig) => Promise<void>;
59
+ startWithConfig: (config: NormalizedSimulationConfig, hooks?: StartConfigHooks) => Promise<void>;
44
60
  }
61
+ export declare function buildResultsPayloadFromEventBuffer(eventBuffer: readonly string[]): {
62
+ results: any[];
63
+ verdict: any;
64
+ isComplete: boolean;
65
+ turnsCompleted: number;
66
+ totalEvents: number;
67
+ leaders: {
68
+ events: Array<{
69
+ turn?: number;
70
+ time?: number;
71
+ eventIndex?: number;
72
+ title?: string;
73
+ category?: string;
74
+ description?: string;
75
+ emergent?: boolean;
76
+ }>;
77
+ decisions: Array<{
78
+ turn?: number;
79
+ time?: number;
80
+ eventIndex?: number;
81
+ decision?: string;
82
+ rationale?: string;
83
+ selectedPolicies?: unknown[];
84
+ outcome?: string;
85
+ }>;
86
+ forges: Array<Record<string, unknown>>;
87
+ citations: Array<{
88
+ text?: string;
89
+ url?: string;
90
+ doi?: string;
91
+ department?: string;
92
+ turn?: number;
93
+ }>;
94
+ deptReports: Array<{
95
+ turn?: number;
96
+ time?: number;
97
+ eventIndex?: number;
98
+ department?: string;
99
+ summary?: string;
100
+ risks?: unknown[];
101
+ recommendedActions?: unknown[];
102
+ citations?: number;
103
+ toolCount?: number;
104
+ }>;
105
+ agentReactions: Array<{
106
+ turn?: number;
107
+ time?: number;
108
+ reactions?: unknown[];
109
+ totalReactions?: number;
110
+ }>;
111
+ promotions: Array<Record<string, unknown>>;
112
+ systemsSnapshots: Array<Record<string, unknown>>;
113
+ name: string;
114
+ }[];
115
+ };
45
116
  export declare function createMarsServer(options?: CreateMarsServerOptions): MarsServer;
46
117
  //# sourceMappingURL=server-app.d.ts.map
@@ -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,EAAE,MAAM,iBAAiB,CAAC;AAC5G,OAAO,EAAyC,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG3F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAkB1D,OAAO,EAAoB,KAAK,YAAY,EAAyB,MAAM,oBAAoB,CAAC;AAIhG,OAAO,EAA6B,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAwDhG,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,0BAA0B,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrJ,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxG,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACxH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6FAA6F;IAC7F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,WAAW,UAAW,SAAQ,MAAM;IACxC,eAAe,EAAE,CAAC,MAAM,EAAE,0BAA0B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,UAAU,CA0yDlF"}
1
+ {"version":3,"file":"server-app.d.ts","sourceRoot":"","sources":["../../src/cli/server-app.ts"],"names":[],"mappings":"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"}