UNPKG

@adonis-agora/agent

Version:

Governed, durable-backed AI agent (chat + tool-calling + governance) for AdonisJS — part of the Agora ecosystem.

24 lines • 817 B
import { dialectOf } from './sql-dialect.js'; let sqliteWriter = Promise.resolve(); /** * A synchronous SQLite driver cannot wait for another writer in this process while that writer * needs the JS event loop to finish its transaction. Queue our own transactions before opening * them; actual database locks and proposal version fences still govern other processes. */ export async function withStoreTransaction(db, callback) { if (!/sqlite/i.test(dialectOf(db))) return db.transaction(callback); const previous = sqliteWriter; let release; sqliteWriter = new Promise((resolve) => { release = resolve; }); await previous; try { return await db.transaction(callback); } finally { release(); } } //# sourceMappingURL=sqlite-transactions.js.map