Promote AgentCompany-New to the repository root and retire the old app
The legacy application - its src, tests, landing site, promo assets, docs, release tooling, CI workflows, and root configs - leaves the tree; it stays reachable in history. Everything under AgentCompany-New moves up unchanged: same package name, so the production userData/database path is untouched, and e2e/build scripts already resolved paths relative to the project. The developer cred.txt stays gitignored at its new location. Full verify:ci passes from the new root.
This commit is contained in:
1 parent
2350f744e3
commit
07d0b4587d
1904 files changed
+1133
-282075
No files matched your search
@@ -0,0 +1,32 @@
|
||||
import { mkdirSync } from "node:fs";
|
||||
import { dirname } from "node:path";
|
||||
import { DatabaseSync } from "node:sqlite";
|
||||
import { installSchema } from "./schema";
|
||||
|
||||
export class DatabaseConnection {
|
||||
readonly db: DatabaseSync;
|
||||
|
||||
constructor(dbPath: string) {
|
||||
mkdirSync(dirname(dbPath), { recursive: true });
|
||||
this.db = new DatabaseSync(dbPath);
|
||||
this.db.exec("pragma journal_mode = WAL");
|
||||
this.db.exec("pragma foreign_keys = ON");
|
||||
installSchema(this.db);
|
||||
}
|
||||
|
||||
transaction<T>(operation: () => T): T {
|
||||
this.db.exec("begin immediate");
|
||||
try {
|
||||
const result = operation();
|
||||
this.db.exec("commit");
|
||||
return result;
|
||||
} catch (error) {
|
||||
this.db.exec("rollback");
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
|
||||
close(): void {
|
||||
this.db.close();
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user