trellis
Version:
Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications
36 lines (33 loc) • 925 B
JavaScript
import {
__require
} from "./chunk-2ESYSVXG.js";
// src/core/persist/factory.ts
async function createKernelBackend(dbPath, opts = {}) {
const choice = opts.backend ?? detectBackend();
if (choice === "better-sqlite") {
const { BetterSqliteKernelBackend } = await import("./better-sqlite-backend-XKRJLRNM.js");
const backend2 = new BetterSqliteKernelBackend(dbPath);
backend2.init();
return backend2;
}
const { SqlJsKernelBackend } = await import("./core/persist/sqljs-backend.js");
const backend = await SqlJsKernelBackend.create({
dbPath,
autoFlushEvery: opts.sqljs?.autoFlushEvery
});
backend.init();
return backend;
}
function detectBackend() {
try {
const { createRequire } = __require("module");
const req = createRequire(import.meta.url);
req("better-sqlite3");
return "better-sqlite";
} catch {
return "sqljs";
}
}
export {
createKernelBackend
};