paracosm 0.8.489 → 0.8.492

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/README.md CHANGED
@@ -652,6 +652,23 @@ bun src/index.ts
652
652
  PARACOSM_OUTPUT_DIR=./artifacts/run-001 bun src/index.ts
653
653
  ```
654
654
 
655
+ ## Storage backend
656
+
657
+ Paracosm persists run history (the Library tab) and replayable session blobs (the Load menu) through [`@framers/sql-storage-adapter`](https://github.com/framersai/sql-storage-adapter), the open-source SQL abstraction maintained by Frame.dev. The same code paths run unchanged against SQLite (default), Postgres, sql.js, and IndexedDB; switching backends is one env var.
658
+
659
+ ```bash
660
+ # Default: better-sqlite3 against ./data/runs.db + ./data/sessions.db
661
+ paracosm dashboard
662
+
663
+ # Postgres in production (Library + sessions persist to your existing cluster)
664
+ STORAGE_ADAPTER=postgres DATABASE_URL=postgres://user:pass@host/db paracosm dashboard
665
+
666
+ # Pure-WASM SQLite fallback when the native module isn't available
667
+ STORAGE_ADAPTER=sqljs paracosm dashboard
668
+ ```
669
+
670
+ Run-history schema (`runs` table) and session schema (`sessions` table) are bootstrapped idempotently on first boot. Legacy v0.7 databases auto-migrate the `leader_*` columns to `actor_*` in place via `ALTER TABLE RENAME COLUMN`; no manual step needed.
671
+
655
672
  ## Seed Enrichment & Citation Flow
656
673
 
657
674
  Pass real-world source material into the compiler and Paracosm grounds the scenario in citations that flow all the way through to department reports.
package/dist/cli/init.js CHANGED
@@ -26,7 +26,7 @@ const USAGE = `paracosm init [dir] --domain <text|url> [--mode <m>] [--actors <n
26
26
  dir output directory (default: ./paracosm-app)
27
27
  --domain required: seed text describing the scenario, OR a URL
28
28
  --mode turn-loop | batch-trajectory | batch-point (default: turn-loop)
29
- --actors number of HEXACO leaders, 2-6 (default: 3)
29
+ --actors number of HEXACO actors, 2-6 (default: 3)
30
30
  --name project name, default: derived from --domain
31
31
  --force overwrite non-empty target dir
32
32
 
package/dist/cli/run.js CHANGED
File without changes
package/dist/cli/serve.js CHANGED
File without changes
@@ -1,6 +1,39 @@
1
+ /**
2
+ * SQL-backed implementation of {@link RunHistoryStore}, built on
3
+ * `@framers/sql-storage-adapter` so the same code works on SQLite,
4
+ * Postgres, sql.js, and IndexedDB without touching call sites. The
5
+ * default adapter is better-sqlite3 (or sql.js fallback when the
6
+ * native module isn't installable). Set `STORAGE_ADAPTER=postgres`
7
+ * with `DATABASE_URL` to switch backends; the resolver inside
8
+ * sql-storage-adapter handles the rest.
9
+ *
10
+ * Single `runs` table with composite per-filter indexes. Run records
11
+ * are tiny (~200 bytes); 100K rows fits in 20 MB. No retention cap;
12
+ * add `PARACOSM_RUN_HISTORY_MAX_ROWS` env var if traffic ever warrants it.
13
+ *
14
+ * @module paracosm/cli/server/sqlite-run-history-store
15
+ */
16
+ import { type DatabaseOptions } from '@framers/sql-storage-adapter';
1
17
  import type { RunHistoryStore } from './run-history-store.js';
2
18
  export interface SqliteRunHistoryStoreOptions {
19
+ /**
20
+ * SQLite database path. Used when the resolver picks better-sqlite3
21
+ * or sql.js. Ignored when STORAGE_ADAPTER selects a remote backend
22
+ * such as Postgres (DATABASE_URL takes precedence there).
23
+ */
3
24
  dbPath: string;
25
+ /**
26
+ * Optional override forwarded to `createDatabase`. Tests use this to
27
+ * pin `type: 'memory'` for hermetic isolation; production code
28
+ * leaves it undefined and lets the env-driven resolver pick.
29
+ */
30
+ databaseOptions?: DatabaseOptions;
4
31
  }
32
+ /**
33
+ * Build an SQL-backed run history store. Returns a sync handle whose
34
+ * methods are async; the underlying adapter is opened lazily on first
35
+ * call so this factory plugs into the existing sync `createMarsServer`
36
+ * boot path without forcing every caller to become async.
37
+ */
5
38
  export declare function createSqliteRunHistoryStore(options: SqliteRunHistoryStoreOptions): RunHistoryStore;
6
39
  //# sourceMappingURL=sqlite-run-history-store.d.ts.map
@@ -1 +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;AAkGD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,4BAA4B,GAAG,eAAe,CAkLlG"}
1
+ {"version":3,"file":"sqlite-run-history-store.d.ts","sourceRoot":"","sources":["../../../src/cli/server/sqlite-run-history-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAuC,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAIzG,OAAO,KAAK,EAAmB,eAAe,EAAiB,MAAM,wBAAwB,CAAC;AAE9F,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAuPD;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,4BAA4B,GAAG,eAAe,CAqGlG"}
@@ -1,15 +1,19 @@
1
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.
2
+ * SQL-backed implementation of {@link RunHistoryStore}, built on
3
+ * `@framers/sql-storage-adapter` so the same code works on SQLite,
4
+ * Postgres, sql.js, and IndexedDB without touching call sites. The
5
+ * default adapter is better-sqlite3 (or sql.js fallback when the
6
+ * native module isn't installable). Set `STORAGE_ADAPTER=postgres`
7
+ * with `DATABASE_URL` to switch backends; the resolver inside
8
+ * sql-storage-adapter handles the rest.
5
9
  *
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.
10
+ * Single `runs` table with composite per-filter indexes. Run records
11
+ * are tiny (~200 bytes); 100K rows fits in 20 MB. No retention cap;
12
+ * add `PARACOSM_RUN_HISTORY_MAX_ROWS` env var if traffic ever warrants it.
9
13
  *
10
14
  * @module paracosm/cli/server/sqlite-run-history-store
11
15
  */
12
- import Database from 'better-sqlite3';
16
+ import { createDatabase } from '@framers/sql-storage-adapter';
13
17
  import { mkdirSync } from 'node:fs';
14
18
  import { dirname } from 'node:path';
15
19
  const DEFAULT_LIMIT = 50;
@@ -64,13 +68,50 @@ function rowToRecord(row) {
64
68
  }
65
69
  return record;
66
70
  }
71
+ function isSqliteAdapter(adapter) {
72
+ return adapter.kind === 'better-sqlite3' || adapter.kind === 'sqljs';
73
+ }
74
+ /**
75
+ * v0.7 -> v0.8 in-place migration. The leader -> actor rename in 0.8.0
76
+ * renamed three columns; legacy production databases still have the
77
+ * old names and would crash boot when the adapter prepares an INSERT
78
+ * referencing actor_*. Rename each in place if the legacy column is
79
+ * present and the new column is absent. Only runs on SQLite — Postgres
80
+ * tenants spin up with the v0.8 schema directly.
81
+ */
82
+ async function migrateLeaderColumnsToActor(adapter) {
83
+ if (!isSqliteAdapter(adapter))
84
+ return;
85
+ const cols = await adapter.all(`PRAGMA table_info(runs)`);
86
+ const colNames = new Set(cols.map((c) => c.name));
87
+ const renames = [
88
+ ['leader_config_hash', 'actor_config_hash'],
89
+ ['leader_name', 'actor_name'],
90
+ ['leader_archetype', 'actor_archetype'],
91
+ ];
92
+ for (const [legacy, modern] of renames) {
93
+ if (colNames.has(legacy) && !colNames.has(modern)) {
94
+ await adapter.exec(`ALTER TABLE runs RENAME COLUMN ${legacy} TO ${modern};`);
95
+ }
96
+ }
97
+ // Drop the legacy index name if it lingered after the rename.
98
+ try {
99
+ await adapter.exec(`DROP INDEX IF EXISTS idx_runs_leader_created;`);
100
+ }
101
+ catch (err) {
102
+ void err;
103
+ }
104
+ }
67
105
  /**
68
106
  * Idempotent column-add migration. SQLite raises "duplicate column name"
69
107
  * when the column already exists; we swallow that and propagate any other
70
108
  * error. Called from the schema bootstrap on every store creation; safe
71
- * to run repeatedly.
109
+ * to run repeatedly. SQLite-only — Postgres tenants get the v0.8 columns
110
+ * inline in the CREATE TABLE.
72
111
  */
73
- function ensureRunsColumns(db) {
112
+ async function ensureRunsColumns(adapter) {
113
+ if (!isSqliteAdapter(adapter))
114
+ return;
74
115
  const newCols = [
75
116
  ['artifact_path', 'TEXT'],
76
117
  ['cost_usd', 'REAL'],
@@ -85,7 +126,7 @@ function ensureRunsColumns(db) {
85
126
  ];
86
127
  for (const [name, type] of newCols) {
87
128
  try {
88
- db.exec(`ALTER TABLE runs ADD COLUMN ${name} ${type};`);
129
+ await adapter.exec(`ALTER TABLE runs ADD COLUMN ${name} ${type};`);
89
130
  }
90
131
  catch (err) {
91
132
  const msg = String(err.message ?? err);
@@ -94,153 +135,186 @@ function ensureRunsColumns(db) {
94
135
  }
95
136
  }
96
137
  }
97
- export function createSqliteRunHistoryStore(options) {
98
- const { dbPath } = options;
99
- if (dbPath !== ':memory:')
100
- mkdirSync(dirname(dbPath), { recursive: true });
101
- const db = new Database(dbPath);
102
- db.pragma('journal_mode = WAL');
103
- db.exec(`
138
+ async function bootstrapSchema(adapter) {
139
+ await adapter.exec(`
104
140
  CREATE TABLE IF NOT EXISTS runs (
105
141
  run_id TEXT PRIMARY KEY NOT NULL,
106
142
  created_at TEXT NOT NULL,
107
143
  scenario_id TEXT NOT NULL,
108
144
  scenario_version TEXT NOT NULL,
109
- actor_config_hash TEXT NOT NULL,
145
+ actor_config_hash TEXT NOT NULL,
110
146
  economics_profile TEXT NOT NULL,
111
147
  source_mode TEXT NOT NULL,
112
- created_by TEXT NOT NULL
148
+ created_by TEXT NOT NULL,
149
+ artifact_path TEXT,
150
+ cost_usd REAL,
151
+ duration_ms INTEGER,
152
+ mode TEXT,
153
+ actor_name TEXT,
154
+ actor_archetype TEXT,
155
+ replay_attempts INTEGER DEFAULT 0,
156
+ replay_matches INTEGER DEFAULT 0,
157
+ bundle_id TEXT,
158
+ summary_trajectory TEXT
113
159
  );
114
- CREATE INDEX IF NOT EXISTS idx_runs_created_at ON runs (created_at DESC);
115
- CREATE INDEX IF NOT EXISTS idx_runs_scenario_created ON runs (scenario_id, created_at DESC);
116
- CREATE INDEX IF NOT EXISTS idx_runs_actor_created ON runs (actor_config_hash, created_at DESC);
117
- CREATE INDEX IF NOT EXISTS idx_runs_mode_created ON runs (source_mode, created_at DESC);
118
160
  `);
119
- ensureRunsColumns(db);
120
- // Index for filtering by simulation mode (Library tab).
121
- try {
122
- db.exec(`CREATE INDEX IF NOT EXISTS idx_runs_sim_mode_created ON runs (mode, created_at DESC);`);
161
+ await adapter.exec(`CREATE INDEX IF NOT EXISTS idx_runs_created_at ON runs (created_at DESC);`);
162
+ await adapter.exec(`CREATE INDEX IF NOT EXISTS idx_runs_scenario_created ON runs (scenario_id, created_at DESC);`);
163
+ await adapter.exec(`CREATE INDEX IF NOT EXISTS idx_runs_mode_created ON runs (source_mode, created_at DESC);`);
164
+ // Run column-rename migration (0.7 -> 0.8) before the actor_*
165
+ // indexes so SQLite legacy databases get their columns present
166
+ // when the indexes are created.
167
+ await migrateLeaderColumnsToActor(adapter);
168
+ await ensureRunsColumns(adapter);
169
+ for (const indexSql of [
170
+ `CREATE INDEX IF NOT EXISTS idx_runs_actor_created ON runs (actor_config_hash, created_at DESC);`,
171
+ `CREATE INDEX IF NOT EXISTS idx_runs_sim_mode_created ON runs (mode, created_at DESC);`,
172
+ `CREATE INDEX IF NOT EXISTS idx_runs_bundle_created ON runs (bundle_id, created_at ASC);`,
173
+ ]) {
174
+ try {
175
+ await adapter.exec(indexSql);
176
+ }
177
+ catch (err) {
178
+ console.warn('[run-history-store] index skipped:', err);
179
+ }
123
180
  }
124
- catch (err) {
125
- // Index creation may fail if mode column was just added; ignore.
126
- void err;
181
+ }
182
+ function buildInsertParams(run) {
183
+ return {
184
+ runId: run.runId,
185
+ createdAt: run.createdAt,
186
+ scenarioId: run.scenarioId,
187
+ scenarioVersion: run.scenarioVersion,
188
+ actorConfigHash: run.actorConfigHash,
189
+ economicsProfile: run.economicsProfile,
190
+ sourceMode: run.sourceMode,
191
+ createdBy: run.createdBy,
192
+ artifactPath: run.artifactPath ?? null,
193
+ costUSD: run.costUSD ?? null,
194
+ durationMs: run.durationMs ?? null,
195
+ mode: run.mode ?? null,
196
+ actorName: run.actorName ?? null,
197
+ actorArchetype: run.actorArchetype ?? null,
198
+ bundleId: run.bundleId ?? null,
199
+ summaryTrajectory: run.summaryTrajectory ? JSON.stringify(run.summaryTrajectory) : null,
200
+ };
201
+ }
202
+ const INSERT_RUN_SQL = `
203
+ INSERT OR IGNORE INTO runs
204
+ (run_id, created_at, scenario_id, scenario_version, actor_config_hash,
205
+ economics_profile, source_mode, created_by,
206
+ artifact_path, cost_usd, duration_ms, mode, actor_name, actor_archetype,
207
+ bundle_id, summary_trajectory)
208
+ VALUES
209
+ (@runId, @createdAt, @scenarioId, @scenarioVersion, @actorConfigHash,
210
+ @economicsProfile, @sourceMode, @createdBy,
211
+ @artifactPath, @costUSD, @durationMs, @mode, @actorName, @actorArchetype,
212
+ @bundleId, @summaryTrajectory)
213
+ `;
214
+ function buildWhere(filters) {
215
+ const clauses = [];
216
+ const params = {};
217
+ if (filters?.mode) {
218
+ clauses.push('mode = @mode');
219
+ params.mode = filters.mode;
127
220
  }
128
- // Index for the Compare view's bundle lookup.
129
- try {
130
- db.exec(`CREATE INDEX IF NOT EXISTS idx_runs_bundle_created ON runs (bundle_id, created_at ASC);`);
221
+ if (filters?.sourceMode) {
222
+ clauses.push('source_mode = @sourceMode');
223
+ params.sourceMode = filters.sourceMode;
131
224
  }
132
- catch (err) {
133
- void err;
225
+ if (filters?.scenarioId) {
226
+ clauses.push('scenario_id = @scenarioId');
227
+ params.scenarioId = filters.scenarioId;
134
228
  }
135
- const insertStmt = db.prepare(`
136
- INSERT OR IGNORE INTO runs
137
- (run_id, created_at, scenario_id, scenario_version, actor_config_hash,
138
- economics_profile, source_mode, created_by,
139
- artifact_path, cost_usd, duration_ms, mode, actor_name, actor_archetype,
140
- bundle_id, summary_trajectory)
141
- VALUES
142
- (@runId, @createdAt, @scenarioId, @scenarioVersion, @actorConfigHash,
143
- @economicsProfile, @sourceMode, @createdBy,
144
- @artifactPath, @costUSD, @durationMs, @mode, @actorName, @actorArchetype,
145
- @bundleId, @summaryTrajectory)
146
- `);
147
- function insertRowParams(run) {
148
- return {
149
- runId: run.runId,
150
- createdAt: run.createdAt,
151
- scenarioId: run.scenarioId,
152
- scenarioVersion: run.scenarioVersion,
153
- actorConfigHash: run.actorConfigHash,
154
- economicsProfile: run.economicsProfile,
155
- sourceMode: run.sourceMode,
156
- createdBy: run.createdBy,
157
- artifactPath: run.artifactPath ?? null,
158
- costUSD: run.costUSD ?? null,
159
- durationMs: run.durationMs ?? null,
160
- mode: run.mode ?? null,
161
- actorName: run.actorName ?? null,
162
- actorArchetype: run.actorArchetype ?? null,
163
- bundleId: run.bundleId ?? null,
164
- summaryTrajectory: run.summaryTrajectory ? JSON.stringify(run.summaryTrajectory) : null,
165
- };
229
+ if (filters?.actorConfigHash) {
230
+ clauses.push('actor_config_hash = @actorConfigHash');
231
+ params.actorConfigHash = filters.actorConfigHash;
166
232
  }
167
- const getStmt = db.prepare(`SELECT * FROM runs WHERE run_id = ?`);
168
- function buildWhere(filters) {
169
- const clauses = [];
170
- const params = {};
171
- // Simulation mode filter (artifact.metadata.mode column).
172
- if (filters?.mode) {
173
- clauses.push('mode = @mode');
174
- params.mode = filters.mode;
175
- }
176
- // Server source mode filter (source_mode column). Distinct from above.
177
- if (filters?.sourceMode) {
178
- clauses.push('source_mode = @sourceMode');
179
- params.sourceMode = filters.sourceMode;
180
- }
181
- if (filters?.scenarioId) {
182
- clauses.push('scenario_id = @scenarioId');
183
- params.scenarioId = filters.scenarioId;
184
- }
185
- if (filters?.actorConfigHash) {
186
- clauses.push('actor_config_hash = @actorConfigHash');
187
- params.actorConfigHash = filters.actorConfigHash;
233
+ if (filters?.q) {
234
+ clauses.push('(scenario_id LIKE @q OR actor_name LIKE @q OR actor_archetype LIKE @q)');
235
+ params.q = `%${filters.q}%`;
236
+ }
237
+ if (filters?.bundleId) {
238
+ clauses.push('bundle_id = @bundleId');
239
+ params.bundleId = filters.bundleId;
240
+ }
241
+ return {
242
+ where: clauses.length > 0 ? `WHERE ${clauses.join(' AND ')}` : '',
243
+ params,
244
+ };
245
+ }
246
+ /**
247
+ * Build an SQL-backed run history store. Returns a sync handle whose
248
+ * methods are async; the underlying adapter is opened lazily on first
249
+ * call so this factory plugs into the existing sync `createMarsServer`
250
+ * boot path without forcing every caller to become async.
251
+ */
252
+ export function createSqliteRunHistoryStore(options) {
253
+ const { dbPath, databaseOptions } = options;
254
+ if (dbPath !== ':memory:' && !databaseOptions?.type && dbPath) {
255
+ // Pre-create the parent directory for SQLite paths so the first
256
+ // adapter open doesn't crash on a missing folder.
257
+ try {
258
+ mkdirSync(dirname(dbPath), { recursive: true });
188
259
  }
189
- if (filters?.q) {
190
- clauses.push('(scenario_id LIKE @q OR actor_name LIKE @q OR actor_archetype LIKE @q)');
191
- params.q = `%${filters.q}%`;
260
+ catch (err) {
261
+ void err;
192
262
  }
193
- if (filters?.bundleId) {
194
- clauses.push('bundle_id = @bundleId');
195
- params.bundleId = filters.bundleId;
263
+ }
264
+ let adapterPromise = null;
265
+ function getAdapter() {
266
+ if (!adapterPromise) {
267
+ adapterPromise = (async () => {
268
+ const adapter = await createDatabase(databaseOptions ?? { file: dbPath });
269
+ await bootstrapSchema(adapter);
270
+ return adapter;
271
+ })();
196
272
  }
197
- return {
198
- where: clauses.length > 0 ? `WHERE ${clauses.join(' AND ')}` : '',
199
- params,
200
- };
273
+ return adapterPromise;
201
274
  }
202
275
  return {
203
276
  async insertRun(run) {
204
- insertStmt.run(insertRowParams(run));
277
+ const adapter = await getAdapter();
278
+ await adapter.run(INSERT_RUN_SQL, buildInsertParams(run));
205
279
  },
206
280
  async listRuns(filters) {
281
+ const adapter = await getAdapter();
207
282
  const { where, params } = buildWhere(filters);
208
283
  const limit = clampLimit(filters?.limit);
209
284
  const offset = clampOffset(filters?.offset);
210
285
  const sql = `SELECT * FROM runs ${where} ORDER BY created_at DESC LIMIT @__limit OFFSET @__offset`;
211
- const rows = db
212
- .prepare(sql)
213
- .all({ ...params, __limit: limit, __offset: offset });
286
+ const rows = await adapter.all(sql, { ...params, __limit: limit, __offset: offset });
214
287
  return rows.map(rowToRecord);
215
288
  },
216
289
  async getRun(runId) {
217
- const row = getStmt.get(runId);
290
+ const adapter = await getAdapter();
291
+ const row = await adapter.get(`SELECT * FROM runs WHERE run_id = ?`, [runId]);
218
292
  return row ? rowToRecord(row) : null;
219
293
  },
220
294
  async listRunsByBundleId(bundleId) {
221
- const rows = db
222
- .prepare(`SELECT * FROM runs WHERE bundle_id = ? ORDER BY created_at ASC`)
223
- .all(bundleId);
295
+ const adapter = await getAdapter();
296
+ const rows = await adapter.all(`SELECT * FROM runs WHERE bundle_id = ? ORDER BY created_at ASC`, [bundleId]);
224
297
  return rows.map(rowToRecord);
225
298
  },
226
299
  async countRuns(filters) {
300
+ const adapter = await getAdapter();
227
301
  const { where, params } = buildWhere(filters);
228
- const sql = `SELECT COUNT(*) AS n FROM runs ${where}`;
229
- const row = db.prepare(sql).get(params);
302
+ const row = await adapter.get(`SELECT COUNT(*) AS n FROM runs ${where}`, params);
230
303
  return row?.n ?? 0;
231
304
  },
232
305
  async aggregateStats(filters) {
306
+ const adapter = await getAdapter();
233
307
  const { where, params } = buildWhere(filters);
234
308
  const sql = `
235
309
  SELECT
236
- COUNT(*) AS total_runs,
237
- COALESCE(SUM(cost_usd), 0) AS total_cost_usd,
238
- COALESCE(SUM(duration_ms), 0) AS total_duration_ms,
310
+ COUNT(*) AS total_runs,
311
+ COALESCE(SUM(cost_usd), 0) AS total_cost_usd,
312
+ COALESCE(SUM(duration_ms), 0) AS total_duration_ms,
239
313
  COALESCE(SUM(replay_attempts), 0) AS replays_attempted,
240
314
  COALESCE(SUM(replay_matches), 0) AS replays_matched
241
315
  FROM runs ${where}
242
316
  `;
243
- const row = db.prepare(sql).get(params);
317
+ const row = await adapter.get(sql, params);
244
318
  return {
245
319
  totalRuns: Number(row?.total_runs ?? 0),
246
320
  totalCostUSD: Number(row?.total_cost_usd ?? 0),
@@ -250,12 +324,11 @@ export function createSqliteRunHistoryStore(options) {
250
324
  };
251
325
  },
252
326
  async recordReplayResult(runId, matches) {
253
- db.prepare(`
254
- UPDATE runs
255
- SET replay_attempts = COALESCE(replay_attempts, 0) + 1,
256
- replay_matches = COALESCE(replay_matches, 0) + ?
257
- WHERE run_id = ?
258
- `).run(matches ? 1 : 0, runId);
327
+ const adapter = await getAdapter();
328
+ await adapter.run(`UPDATE runs
329
+ SET replay_attempts = COALESCE(replay_attempts, 0) + 1,
330
+ replay_matches = COALESCE(replay_matches, 0) + ?
331
+ WHERE run_id = ?`, [matches ? 1 : 0, runId]);
259
332
  },
260
333
  };
261
334
  }
@@ -1 +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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"}
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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server-app.d.ts","sourceRoot":"","sources":["../../src/cli/server-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-app.d.ts","sourceRoot":"","sources":["../../src/cli/server-app.ts"],"names":[],"mappings":"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"}