@proletariat/cli 0.3.90 → 0.3.91
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/dist/commands/agent/auth.js +2 -2
- package/dist/commands/agent/auth.js.map +1 -1
- package/dist/commands/agent/shell.js +3 -3
- package/dist/commands/agent/shell.js.map +1 -1
- package/dist/commands/branch/create.js +2 -2
- package/dist/commands/branch/create.js.map +1 -1
- package/dist/commands/claude/index.js +3 -3
- package/dist/commands/claude/index.js.map +1 -1
- package/dist/commands/claude/open.js +2 -2
- package/dist/commands/claude/open.js.map +1 -1
- package/dist/commands/config/index.js +2 -2
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/db/repair.js +4 -4
- package/dist/commands/db/repair.js.map +1 -1
- package/dist/commands/docker/clean.js +2 -2
- package/dist/commands/docker/clean.js.map +1 -1
- package/dist/commands/docker/index.js +2 -2
- package/dist/commands/docker/index.js.map +1 -1
- package/dist/commands/docker/list.js +2 -2
- package/dist/commands/docker/list.js.map +1 -1
- package/dist/commands/docker/logs.js +2 -2
- package/dist/commands/docker/logs.js.map +1 -1
- package/dist/commands/docker/restart.js +2 -2
- package/dist/commands/docker/restart.js.map +1 -1
- package/dist/commands/docker/shell.js +2 -2
- package/dist/commands/docker/shell.js.map +1 -1
- package/dist/commands/docker/start.js +2 -2
- package/dist/commands/docker/start.js.map +1 -1
- package/dist/commands/docker/stop.js +2 -2
- package/dist/commands/docker/stop.js.map +1 -1
- package/dist/commands/docker/sync.js +2 -2
- package/dist/commands/docker/sync.js.map +1 -1
- package/dist/commands/execution/config.js.map +1 -1
- package/dist/commands/execution/list.js +2 -2
- package/dist/commands/execution/list.js.map +1 -1
- package/dist/commands/execution/logs.js +2 -2
- package/dist/commands/execution/logs.js.map +1 -1
- package/dist/commands/execution/stop.js +2 -2
- package/dist/commands/execution/stop.js.map +1 -1
- package/dist/commands/execution/view.js +2 -2
- package/dist/commands/execution/view.js.map +1 -1
- package/dist/commands/linear/connect.js.map +1 -1
- package/dist/commands/mcp-server.js +2 -2
- package/dist/commands/mcp-server.js.map +1 -1
- package/dist/commands/orchestrator/attach.js +2 -2
- package/dist/commands/orchestrator/attach.js.map +1 -1
- package/dist/commands/orchestrator/start.js +3 -3
- package/dist/commands/orchestrator/start.js.map +1 -1
- package/dist/commands/orchestrator/stop.js +2 -2
- package/dist/commands/orchestrator/stop.js.map +1 -1
- package/dist/commands/qa/index.js +3 -3
- package/dist/commands/qa/index.js.map +1 -1
- package/dist/commands/session/attach.js +3 -3
- package/dist/commands/session/attach.js.map +1 -1
- package/dist/commands/session/cleanup.js +2 -2
- package/dist/commands/session/cleanup.js.map +1 -1
- package/dist/commands/session/exec.js +2 -2
- package/dist/commands/session/exec.js.map +1 -1
- package/dist/commands/session/health.js +2 -2
- package/dist/commands/session/health.js.map +1 -1
- package/dist/commands/session/inspect.js +2 -2
- package/dist/commands/session/inspect.js.map +1 -1
- package/dist/commands/session/list.js +2 -2
- package/dist/commands/session/list.js.map +1 -1
- package/dist/commands/session/peek.js +3 -3
- package/dist/commands/session/peek.js.map +1 -1
- package/dist/commands/session/poke.js +2 -2
- package/dist/commands/session/poke.js.map +1 -1
- package/dist/commands/session/prune.js +2 -2
- package/dist/commands/session/prune.js.map +1 -1
- package/dist/commands/session/report.js +2 -2
- package/dist/commands/session/report.js.map +1 -1
- package/dist/commands/session/restart.js +2 -2
- package/dist/commands/session/restart.js.map +1 -1
- package/dist/commands/shortcut/connect.js.map +1 -1
- package/dist/commands/trello/configure.js.map +1 -1
- package/dist/commands/work/complete.js +2 -2
- package/dist/commands/work/complete.js.map +1 -1
- package/dist/commands/work/hooks/add.js +2 -2
- package/dist/commands/work/hooks/add.js.map +1 -1
- package/dist/commands/work/hooks/list.js +2 -2
- package/dist/commands/work/hooks/list.js.map +1 -1
- package/dist/commands/work/hooks/remove.js +2 -2
- package/dist/commands/work/hooks/remove.js.map +1 -1
- package/dist/commands/work/hooks/toggle.js +2 -2
- package/dist/commands/work/hooks/toggle.js.map +1 -1
- package/dist/commands/work/index.js +4 -0
- package/dist/commands/work/index.js.map +1 -1
- package/dist/commands/work/ready.js +2 -2
- package/dist/commands/work/ready.js.map +1 -1
- package/dist/commands/work/ship.d.ts +43 -0
- package/dist/commands/work/ship.js +587 -0
- package/dist/commands/work/ship.js.map +1 -0
- package/dist/commands/work/spawn.js +2 -2
- package/dist/commands/work/spawn.js.map +1 -1
- package/dist/commands/work/start.d.ts +1 -0
- package/dist/commands/work/start.js +13 -3
- package/dist/commands/work/start.js.map +1 -1
- package/dist/commands/work/stop.js +2 -2
- package/dist/commands/work/stop.js.map +1 -1
- package/dist/commands/work/watch.js +2 -2
- package/dist/commands/work/watch.js.map +1 -1
- package/dist/hooks/init.js +6 -15
- package/dist/hooks/init.js.map +1 -1
- package/dist/lib/asana/config.d.ts +8 -8
- package/dist/lib/asana/config.js.map +1 -1
- package/dist/lib/asana/mapper.d.ts +2 -2
- package/dist/lib/asana/mapper.js.map +1 -1
- package/dist/lib/database/agents.js +4 -2
- package/dist/lib/database/agents.js.map +1 -1
- package/dist/lib/database/db-safety.d.ts +4 -4
- package/dist/lib/database/db-safety.js +6 -6
- package/dist/lib/database/db-safety.js.map +1 -1
- package/dist/lib/database/driver.d.ts +19 -21
- package/dist/lib/database/driver.js +20 -21
- package/dist/lib/database/driver.js.map +1 -1
- package/dist/lib/database/drizzle.d.ts +9 -9
- package/dist/lib/database/drizzle.js +9 -17
- package/dist/lib/database/drizzle.js.map +1 -1
- package/dist/lib/database/migrations/0001_baseline.js.map +1 -1
- package/dist/lib/database/migrations/0002_work_hooks.js.map +1 -1
- package/dist/lib/database/migrations/0003_actions_redesign.js.map +1 -1
- package/dist/lib/database/migrations/0004_workflow_rules.js.map +1 -1
- package/dist/lib/database/migrations/0005_provider_status_mapping.js.map +1 -1
- package/dist/lib/database/migrations/0006_drop_theme_names_used.js.map +1 -1
- package/dist/lib/database/migrations/0007_add_worktree_columns.js.map +1 -1
- package/dist/lib/database/migrations/0008_add_agent_mount_mode.js.map +1 -1
- package/dist/lib/database/migrations/0009_create_media_items.js.map +1 -1
- package/dist/lib/database/migrations/0010_add_ticket_position.js.map +1 -1
- package/dist/lib/database/migrations/0011_add_review_gate.js.map +1 -1
- package/dist/lib/database/migrations/0012_add_action_network_allowlist.js.map +1 -1
- package/dist/lib/database/migrator.d.ts +3 -3
- package/dist/lib/database/migrator.js.map +1 -1
- package/dist/lib/database/pmo-bootstrap.d.ts +2 -2
- package/dist/lib/database/pmo-bootstrap.js +4 -26
- package/dist/lib/database/pmo-bootstrap.js.map +1 -1
- package/dist/lib/database/repositories.js +1 -1
- package/dist/lib/database/repositories.js.map +1 -1
- package/dist/lib/database/settings-store.d.ts +3 -3
- package/dist/lib/database/settings-store.js +2 -2
- package/dist/lib/database/settings-store.js.map +1 -1
- package/dist/lib/database/sqlite.d.ts +155 -0
- package/dist/lib/database/sqlite.js +358 -0
- package/dist/lib/database/sqlite.js.map +1 -0
- package/dist/lib/database/themes.js +3 -3
- package/dist/lib/database/themes.js.map +1 -1
- package/dist/lib/database/workspace.d.ts +4 -4
- package/dist/lib/database/workspace.js +4 -25
- package/dist/lib/database/workspace.js.map +1 -1
- package/dist/lib/execution/config.d.ts +33 -33
- package/dist/lib/execution/config.js.map +1 -1
- package/dist/lib/execution/context.d.ts +20 -0
- package/dist/lib/execution/context.js +88 -0
- package/dist/lib/execution/context.js.map +1 -1
- package/dist/lib/execution/devcontainer.d.ts +7 -1
- package/dist/lib/execution/devcontainer.js +52 -38
- package/dist/lib/execution/devcontainer.js.map +1 -1
- package/dist/lib/execution/runners/devcontainer.js +11 -0
- package/dist/lib/execution/runners/devcontainer.js.map +1 -1
- package/dist/lib/execution/runners/docker-management.js +1 -1
- package/dist/lib/execution/runners/docker-management.js.map +1 -1
- package/dist/lib/execution/runners/orchestrator.js +6 -3
- package/dist/lib/execution/runners/orchestrator.js.map +1 -1
- package/dist/lib/execution/runners/prompt-builder.js +31 -0
- package/dist/lib/execution/runners/prompt-builder.js.map +1 -1
- package/dist/lib/execution/runners/shared.d.ts +2 -2
- package/dist/lib/execution/runners/shared.js +2 -2
- package/dist/lib/execution/runners/shared.js.map +1 -1
- package/dist/lib/execution/spawner.d.ts +3 -3
- package/dist/lib/execution/spawner.js.map +1 -1
- package/dist/lib/execution/storage.d.ts +3 -3
- package/dist/lib/execution/storage.js.map +1 -1
- package/dist/lib/execution/types.d.ts +23 -0
- package/dist/lib/execution/types.js.map +1 -1
- package/dist/lib/external-issues/mapping-store.d.ts +2 -2
- package/dist/lib/external-issues/mapping-store.js.map +1 -1
- package/dist/lib/external-issues/outbound-sync.d.ts +3 -3
- package/dist/lib/external-issues/outbound-sync.js.map +1 -1
- package/dist/lib/jira/config.d.ts +5 -5
- package/dist/lib/jira/config.js.map +1 -1
- package/dist/lib/linear/config.d.ts +8 -8
- package/dist/lib/linear/config.js.map +1 -1
- package/dist/lib/linear/mapper.d.ts +2 -2
- package/dist/lib/linear/mapper.js.map +1 -1
- package/dist/lib/mcp/types.d.ts +2 -2
- package/dist/lib/monday/config.d.ts +9 -9
- package/dist/lib/monday/config.js.map +1 -1
- package/dist/lib/monday/mapper.d.ts +2 -2
- package/dist/lib/monday/mapper.js.map +1 -1
- package/dist/lib/pmo/diet.d.ts +3 -3
- package/dist/lib/pmo/diet.js.map +1 -1
- package/dist/lib/pmo/find-pmo.js +1 -5
- package/dist/lib/pmo/find-pmo.js.map +1 -1
- package/dist/lib/pmo/index.js +6 -7
- package/dist/lib/pmo/index.js.map +1 -1
- package/dist/lib/pmo/storage/base.d.ts +15 -15
- package/dist/lib/pmo/storage/base.js.map +1 -1
- package/dist/lib/pmo/storage/dependencies.js.map +1 -1
- package/dist/lib/pmo/storage/helpers.js.map +1 -1
- package/dist/lib/pmo/storage/index.d.ts +8 -2
- package/dist/lib/pmo/storage/index.js +10 -2
- package/dist/lib/pmo/storage/index.js.map +1 -1
- package/dist/lib/pmo/storage/projects.js.map +1 -1
- package/dist/lib/pmo/storage/roadmaps.js +4 -4
- package/dist/lib/pmo/storage/roadmaps.js.map +1 -1
- package/dist/lib/pmo/storage/specs.js.map +1 -1
- package/dist/lib/pmo/storage/statuses.js +1 -1
- package/dist/lib/pmo/storage/statuses.js.map +1 -1
- package/dist/lib/pmo/storage/tickets.js +1 -1
- package/dist/lib/pmo/storage/tickets.js.map +1 -1
- package/dist/lib/pmo/storage/types.d.ts +2 -2
- package/dist/lib/pmo/storage/views.js.map +1 -1
- package/dist/lib/providers/index.d.ts +2 -0
- package/dist/lib/providers/index.js +2 -0
- package/dist/lib/providers/index.js.map +1 -1
- package/dist/lib/providers/linear-provider.d.ts +2 -2
- package/dist/lib/providers/linear-provider.js.map +1 -1
- package/dist/lib/providers/resolver.d.ts +3 -3
- package/dist/lib/providers/resolver.js.map +1 -1
- package/dist/lib/providers/state-intents.d.ts +44 -0
- package/dist/lib/providers/state-intents.js +101 -0
- package/dist/lib/providers/state-intents.js.map +1 -0
- package/dist/lib/providers/state-resolution.d.ts +137 -0
- package/dist/lib/providers/state-resolution.js +302 -0
- package/dist/lib/providers/state-resolution.js.map +1 -0
- package/dist/lib/providers/status-mapping.d.ts +2 -2
- package/dist/lib/providers/status-mapping.js.map +1 -1
- package/dist/lib/providers/trigger-config.d.ts +4 -4
- package/dist/lib/providers/trigger-config.js.map +1 -1
- package/dist/lib/providers/types.d.ts +2 -1
- package/dist/lib/registry/index.js +4 -11
- package/dist/lib/registry/index.js.map +1 -1
- package/dist/lib/shortcut/config.d.ts +8 -8
- package/dist/lib/shortcut/config.js.map +1 -1
- package/dist/lib/trello/config.d.ts +10 -10
- package/dist/lib/trello/config.js.map +1 -1
- package/dist/lib/trello/mapper.d.ts +2 -2
- package/dist/lib/trello/mapper.js.map +1 -1
- package/dist/lib/work-lifecycle/action-chaining.d.ts +3 -3
- package/dist/lib/work-lifecycle/action-chaining.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/manager.d.ts +3 -3
- package/dist/lib/work-lifecycle/hooks/manager.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/storage.d.ts +3 -3
- package/dist/lib/work-lifecycle/hooks/storage.js.map +1 -1
- package/dist/lib/work-lifecycle/post-execution.d.ts +2 -2
- package/dist/lib/work-lifecycle/post-execution.js +47 -28
- package/dist/lib/work-lifecycle/post-execution.js.map +1 -1
- package/dist/lib/work-lifecycle/rule-evaluator.d.ts +3 -3
- package/dist/lib/work-lifecycle/rule-evaluator.js.map +1 -1
- package/dist/lib/work-source/config.d.ts +6 -6
- package/dist/lib/work-source/config.js.map +1 -1
- package/dist/lib/work-source/provider-sources.d.ts +12 -12
- package/dist/lib/work-source/provider-sources.js.map +1 -1
- package/oclif.manifest.json +2202 -2088
- package/package.json +3 -4
- package/bin/validate-better-sqlite3.cjs +0 -129
- package/dist/lib/database/native-validation.d.ts +0 -40
- package/dist/lib/database/native-validation.js +0 -123
- package/dist/lib/database/native-validation.js.map +0 -1
package/dist/hooks/init.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { initSqlite } from '../lib/database/sqlite.js';
|
|
2
2
|
import { readMachineConfig } from '../lib/machine-config.js';
|
|
3
3
|
import { findHQRoot } from '../lib/workspace.js';
|
|
4
4
|
import { getCachedUpdateInfo, triggerBackgroundCheck } from '../lib/update-check.js';
|
|
@@ -30,6 +30,11 @@ const hook = async function ({ id, argv, config }) {
|
|
|
30
30
|
if (process.env.OCLIF_COMPILATION || process.argv[1]?.includes('oclif')) {
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
|
+
// Initialize sql.js WASM module — must happen before any database access.
|
|
34
|
+
// This runs before all other early returns because commands may still
|
|
35
|
+
// access the database even when init redirect is skipped (e.g., tests,
|
|
36
|
+
// agent containers, --help on commands that load DB config).
|
|
37
|
+
await initSqlite();
|
|
33
38
|
// Skip when in test environments that provide their own HQ
|
|
34
39
|
if (process.env.PRLT_HQ_PATH && process.env.PRLT_TEST_ENV) {
|
|
35
40
|
return;
|
|
@@ -84,9 +89,6 @@ const hook = async function ({ id, argv, config }) {
|
|
|
84
89
|
});
|
|
85
90
|
});
|
|
86
91
|
}
|
|
87
|
-
if (shouldValidateNativeModules(id)) {
|
|
88
|
-
await validateBetterSqlite3NativeBinding({ context: `command "${id}"` });
|
|
89
|
-
}
|
|
90
92
|
// ── Update check ────────────────────────────────────────────────────
|
|
91
93
|
// Show the interactive update prompt (uses cached data only, never blocks on network).
|
|
92
94
|
// Then trigger a background fetch so the cache is fresh for the next startup.
|
|
@@ -127,17 +129,6 @@ const hook = async function ({ id, argv, config }) {
|
|
|
127
129
|
return;
|
|
128
130
|
}
|
|
129
131
|
};
|
|
130
|
-
function shouldValidateNativeModules(id) {
|
|
131
|
-
if (!id) {
|
|
132
|
-
return false;
|
|
133
|
-
}
|
|
134
|
-
return !(id === 'help' ||
|
|
135
|
-
id.startsWith('help:') ||
|
|
136
|
-
id === 'plugins' ||
|
|
137
|
-
id.startsWith('plugins:') ||
|
|
138
|
-
id === 'autocomplete' ||
|
|
139
|
-
id.startsWith('autocomplete:'));
|
|
140
|
-
}
|
|
141
132
|
/**
|
|
142
133
|
* Check if this is a first-time user (no headquarters configured anywhere)
|
|
143
134
|
*/
|
package/dist/hooks/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/hooks/init.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/hooks/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { SqliteDatabase } from '../database/sqlite.js';
|
|
2
2
|
import type { AsanaConfig } from './types.js';
|
|
3
|
-
export declare function isAsanaConfigured(db:
|
|
4
|
-
export declare function loadAsanaConfig(db:
|
|
5
|
-
export declare function saveAsanaAccessToken(db:
|
|
6
|
-
export declare function saveAsanaWorkspace(db:
|
|
7
|
-
export declare function saveAsanaProject(db:
|
|
8
|
-
export declare function clearAsanaConfig(db:
|
|
9
|
-
export declare function getAsanaAccessToken(db:
|
|
3
|
+
export declare function isAsanaConfigured(db: SqliteDatabase): boolean;
|
|
4
|
+
export declare function loadAsanaConfig(db: SqliteDatabase): AsanaConfig | null;
|
|
5
|
+
export declare function saveAsanaAccessToken(db: SqliteDatabase, accessToken: string): void;
|
|
6
|
+
export declare function saveAsanaWorkspace(db: SqliteDatabase, workspaceGid: string, workspaceName: string): void;
|
|
7
|
+
export declare function saveAsanaProject(db: SqliteDatabase, projectGid: string, projectName: string): void;
|
|
8
|
+
export declare function clearAsanaConfig(db: SqliteDatabase): void;
|
|
9
|
+
export declare function getAsanaAccessToken(db: SqliteDatabase): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/asana/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAE7D,MAAM,iBAAiB,GAAG;IACxB,WAAW,EAAE,oBAAoB;IACjC,YAAY,EAAE,qBAAqB;IACnC,aAAa,EAAE,sBAAsB;IACrC,UAAU,EAAE,mBAAmB;IAC/B,WAAW,EAAE,oBAAoB;CACzB,CAAA;AAEV,MAAM,UAAU,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/asana/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { SqliteDatabase } from '../database/sqlite.js';
|
|
2
2
|
import type { AsanaTaskMap } from './types.js';
|
|
3
3
|
import { type DatabaseDriver } from '../database/driver.js';
|
|
4
4
|
export declare class AsanaMapper {
|
|
5
5
|
private driver;
|
|
6
|
-
constructor(dbOrDriver: DatabaseDriver |
|
|
6
|
+
constructor(dbOrDriver: DatabaseDriver | SqliteDatabase);
|
|
7
7
|
private ensureTable;
|
|
8
8
|
createOrUpdateMapping(pmoTicketId: string, asanaTaskGid: string, asanaProjectGid?: string): void;
|
|
9
9
|
getByTicketId(ticketId: string): AsanaTaskMap | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/lib/asana/mapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAuB,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzE,SAAS,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/lib/asana/mapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAuB,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEzE,SAAS,QAAQ,CAAC,UAA2C;IAC3D,IAAI,SAAS,IAAI,UAAU,IAAI,QAAQ,IAAI,UAAU,IAAI,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC;QAChF,OAAO,YAAY,CAAC,UAA4B,CAAC,CAAA;IACnD,CAAC;IACD,OAAO,UAA4B,CAAA;AACrC,CAAC;AAED,MAAM,OAAO,WAAW;IACd,MAAM,CAAgB;IAE9B,YAAY,UAA2C;QACrD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;QAClC,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;mCACc,UAAU,CAAC,cAAc;iDACX,UAAU,CAAC,OAAO;;;;;;;;KAQ9D,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;;aAER,UAAU,CAAC,cAAc;KACjC,CAAC,CAAA;IACJ,CAAC;IAED,qBAAqB,CAAC,WAAmB,EAAE,YAAoB,EAAE,eAAwB;QACvF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;oBACJ,UAAU,CAAC,cAAc;;;;;;;KAOxC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,IAAI,IAAI,CAAC,CAAA;IAC5D,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAA0B;sBACvC,UAAU,CAAC,cAAc;KAC1C,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAEhB,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACxC,CAAC;IAED,YAAY,CAAC,YAAoB;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAA0B;sBACvC,UAAU,CAAC,cAAc;KAC1C,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QAEpB,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACxC,CAAC;IAED,YAAY;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAA0B;sBACxC,UAAU,CAAC,cAAc;KAC1C,CAAC,CAAC,GAAG,EAAE,CAAA;QAER,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9C,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAClC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;eACT,UAAU,CAAC,cAAc;;;KAGnC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC;IAEO,QAAQ,CAAC,GAA4B;QAC3C,OAAO;YACL,WAAW,EAAE,GAAG,CAAC,aAAuB;YACxC,YAAY,EAAE,GAAG,CAAC,cAAwB;YAC1C,eAAe,EAAG,GAAG,CAAC,iBAAmC,IAAI,SAAS;YACtE,YAAY,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,cAAwB,CAAC,CAAC,CAAC,CAAC,SAAS;YACrF,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAoB,CAAC;SAC9C,CAAA;IACH,CAAC;CACF"}
|
|
@@ -132,8 +132,10 @@ export function tryAddEphemeralAgentToDatabase(workspacePath, agentName, baseNam
|
|
|
132
132
|
return toAgent(agent);
|
|
133
133
|
}
|
|
134
134
|
catch (err) {
|
|
135
|
+
// sql.js throws plain Error with constraint message (no .code property like better-sqlite3)
|
|
135
136
|
const sqliteErr = err;
|
|
136
|
-
if (sqliteErr.code === 'SQLITE_CONSTRAINT_PRIMARYKEY' || sqliteErr.code === 'SQLITE_CONSTRAINT_UNIQUE'
|
|
137
|
+
if (sqliteErr.code === 'SQLITE_CONSTRAINT_PRIMARYKEY' || sqliteErr.code === 'SQLITE_CONSTRAINT_UNIQUE' ||
|
|
138
|
+
(sqliteErr.message && sqliteErr.message.includes('UNIQUE constraint failed'))) {
|
|
137
139
|
return null;
|
|
138
140
|
}
|
|
139
141
|
throw err;
|
|
@@ -151,7 +153,7 @@ export function getEphemeralAgentNames(workspacePath) {
|
|
|
151
153
|
.from(agentsTable)
|
|
152
154
|
.where(eq(agentsTable.type, 'ephemeral'))
|
|
153
155
|
.all();
|
|
154
|
-
return new Set(rows.map(a => a.name.toLowerCase()));
|
|
156
|
+
return new Set(rows.map((a) => a.name.toLowerCase()));
|
|
155
157
|
});
|
|
156
158
|
}
|
|
157
159
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../src/lib/database/agents.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../src/lib/database/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,13 +9,13 @@
|
|
|
9
9
|
*
|
|
10
10
|
* See: PRLT-1081
|
|
11
11
|
*/
|
|
12
|
-
import
|
|
12
|
+
import { SqliteDatabase } from './sqlite.js';
|
|
13
13
|
/**
|
|
14
14
|
* Enable WAL journal mode on a database connection.
|
|
15
15
|
* WAL allows concurrent readers with one writer and is significantly
|
|
16
16
|
* more resistant to corruption than the default journal_mode=delete.
|
|
17
17
|
*/
|
|
18
|
-
export declare function enableWALMode(db:
|
|
18
|
+
export declare function enableWALMode(db: SqliteDatabase): void;
|
|
19
19
|
/**
|
|
20
20
|
* Get the backup path for a given database path and backup number.
|
|
21
21
|
*/
|
|
@@ -36,12 +36,12 @@ export interface IntegrityCheckResult {
|
|
|
36
36
|
* Run PRAGMA integrity_check on a database.
|
|
37
37
|
* Returns { ok: true } if the database is healthy, or { ok: false, errors } with details.
|
|
38
38
|
*/
|
|
39
|
-
export declare function checkIntegrity(db:
|
|
39
|
+
export declare function checkIntegrity(db: SqliteDatabase): IntegrityCheckResult;
|
|
40
40
|
/**
|
|
41
41
|
* Quick integrity check using PRAGMA quick_check (faster than full integrity_check).
|
|
42
42
|
* Skips checking that the contents of table rows match the indexes.
|
|
43
43
|
*/
|
|
44
|
-
export declare function quickCheckIntegrity(db:
|
|
44
|
+
export declare function quickCheckIntegrity(db: SqliteDatabase): IntegrityCheckResult;
|
|
45
45
|
export interface RepairResult {
|
|
46
46
|
success: boolean;
|
|
47
47
|
method: 'dump-reimport' | 'backup-restore' | 'none';
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*
|
|
10
10
|
* See: PRLT-1081
|
|
11
11
|
*/
|
|
12
|
-
import
|
|
12
|
+
import { SqliteDatabase } from './sqlite.js';
|
|
13
13
|
import * as fs from 'node:fs';
|
|
14
14
|
import * as path from 'node:path';
|
|
15
15
|
const MAX_BACKUPS = 5;
|
|
@@ -144,14 +144,14 @@ function attemptDumpReimport(dbPath) {
|
|
|
144
144
|
const tempPath = `${dbPath}.repair-temp`;
|
|
145
145
|
try {
|
|
146
146
|
// Open corrupt database — may partially work
|
|
147
|
-
corruptDb = new
|
|
147
|
+
corruptDb = new SqliteDatabase(dbPath, { readonly: true });
|
|
148
148
|
// Dump all recoverable SQL
|
|
149
149
|
const tables = corruptDb.prepare("SELECT sql FROM sqlite_master WHERE sql IS NOT NULL ORDER BY CASE type WHEN 'table' THEN 1 WHEN 'index' THEN 2 ELSE 3 END").all();
|
|
150
150
|
if (tables.length === 0) {
|
|
151
151
|
return { success: false, method: 'dump-reimport', message: 'No tables found in corrupt database' };
|
|
152
152
|
}
|
|
153
153
|
// Create new database with recovered schema
|
|
154
|
-
newDb = new
|
|
154
|
+
newDb = new SqliteDatabase(tempPath);
|
|
155
155
|
newDb.pragma('journal_mode = WAL');
|
|
156
156
|
for (const { sql } of tables) {
|
|
157
157
|
try {
|
|
@@ -173,11 +173,11 @@ function attemptDumpReimport(dbPath) {
|
|
|
173
173
|
const placeholders = columns.map(() => '?').join(', ');
|
|
174
174
|
const insertSql = `INSERT OR IGNORE INTO "${name}" (${columns.map(c => `"${c}"`).join(', ')}) VALUES (${placeholders})`;
|
|
175
175
|
const insertStmt = newDb.prepare(insertSql);
|
|
176
|
-
const insertAll = newDb.transaction((data) => {
|
|
176
|
+
const insertAll = newDb.transaction(((data) => {
|
|
177
177
|
for (const row of data) {
|
|
178
178
|
insertStmt.run(...columns.map(c => row[c]));
|
|
179
179
|
}
|
|
180
|
-
});
|
|
180
|
+
}));
|
|
181
181
|
insertAll(rows);
|
|
182
182
|
rowsRecovered += rows.length;
|
|
183
183
|
}
|
|
@@ -249,7 +249,7 @@ function attemptBackupRestore(dbPath) {
|
|
|
249
249
|
// Validate the backup
|
|
250
250
|
let backupDb = null;
|
|
251
251
|
try {
|
|
252
|
-
backupDb = new
|
|
252
|
+
backupDb = new SqliteDatabase(backupPath, { readonly: true });
|
|
253
253
|
const check = checkIntegrity(backupDb);
|
|
254
254
|
backupDb.close();
|
|
255
255
|
backupDb = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-safety.js","sourceRoot":"","sources":["../../../src/lib/database/db-safety.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"db-safety.js","sourceRoot":"","sources":["../../../src/lib/database/db-safety.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
* Database Driver Abstraction Layer
|
|
3
3
|
*
|
|
4
4
|
* Defines a driver-agnostic interface for SQLite database access.
|
|
5
|
-
*
|
|
6
|
-
* without changing consumer code.
|
|
5
|
+
* Uses SqliteDatabase (sql.js/WASM) as the underlying implementation.
|
|
7
6
|
*
|
|
8
7
|
* All database access in the codebase should go through this interface
|
|
9
|
-
* rather than
|
|
8
|
+
* rather than using raw sql.js directly.
|
|
10
9
|
*/
|
|
11
|
-
import
|
|
10
|
+
import { SqliteDatabase } from './sqlite.js';
|
|
12
11
|
/**
|
|
13
12
|
* Result of executing a statement that modifies data.
|
|
14
13
|
*/
|
|
@@ -33,7 +32,7 @@ export interface PreparedStatement<T = Record<string, unknown>> {
|
|
|
33
32
|
* Database driver interface that abstracts over the underlying SQLite implementation.
|
|
34
33
|
*
|
|
35
34
|
* This is the single interface through which all database access should flow.
|
|
36
|
-
*
|
|
35
|
+
* Backed by sql.js (pure JS/WASM SQLite, zero native dependencies).
|
|
37
36
|
*
|
|
38
37
|
* Usage:
|
|
39
38
|
* ```typescript
|
|
@@ -70,14 +69,14 @@ export interface DatabaseDriver {
|
|
|
70
69
|
readonly raw: unknown;
|
|
71
70
|
}
|
|
72
71
|
/**
|
|
73
|
-
* DatabaseDriver implementation backed by
|
|
72
|
+
* DatabaseDriver implementation backed by sql.js (WASM SQLite).
|
|
74
73
|
*
|
|
75
|
-
* This is the primary driver used in production. It wraps a
|
|
76
|
-
*
|
|
74
|
+
* This is the primary driver used in production. It wraps a SqliteDatabase
|
|
75
|
+
* instance behind the DatabaseDriver interface.
|
|
77
76
|
*/
|
|
78
|
-
export declare class
|
|
77
|
+
export declare class SqlJsDriver implements DatabaseDriver {
|
|
79
78
|
private db;
|
|
80
|
-
constructor(db:
|
|
79
|
+
constructor(db: SqliteDatabase);
|
|
81
80
|
prepare<T = Record<string, unknown>>(sql: string): PreparedStatement<T>;
|
|
82
81
|
exec(sql: string): void;
|
|
83
82
|
pragma(source: string, options?: {
|
|
@@ -87,19 +86,19 @@ export declare class BetterSqlite3Driver implements DatabaseDriver {
|
|
|
87
86
|
close(): void;
|
|
88
87
|
get open(): boolean;
|
|
89
88
|
/**
|
|
90
|
-
* Access the underlying
|
|
89
|
+
* Access the underlying SqliteDatabase instance.
|
|
91
90
|
* @internal Use for Drizzle ORM interop only.
|
|
92
91
|
*/
|
|
93
|
-
get raw():
|
|
92
|
+
get raw(): SqliteDatabase;
|
|
94
93
|
}
|
|
94
|
+
export { SqlJsDriver as BetterSqlite3Driver };
|
|
95
95
|
/**
|
|
96
|
-
* Create a DatabaseDriver from an existing
|
|
97
|
-
* Useful when migrating existing code that already has a Database object.
|
|
96
|
+
* Create a DatabaseDriver from an existing SqliteDatabase instance.
|
|
98
97
|
*/
|
|
99
|
-
export declare function wrapDatabase(db:
|
|
98
|
+
export declare function wrapDatabase(db: SqliteDatabase): DatabaseDriver;
|
|
100
99
|
/**
|
|
101
|
-
* Create a DatabaseDriver by opening a new
|
|
102
|
-
* Configures standard pragmas (
|
|
100
|
+
* Create a DatabaseDriver by opening a new sql.js connection.
|
|
101
|
+
* Configures standard pragmas (foreign keys, busy timeout).
|
|
103
102
|
*/
|
|
104
103
|
export declare function openDriver(dbPath: string, options?: {
|
|
105
104
|
foreignKeys?: boolean;
|
|
@@ -107,10 +106,9 @@ export declare function openDriver(dbPath: string, options?: {
|
|
|
107
106
|
readonly?: boolean;
|
|
108
107
|
}): DatabaseDriver;
|
|
109
108
|
/**
|
|
110
|
-
* Extract the raw
|
|
111
|
-
* Throws if the driver is not a BetterSqlite3Driver.
|
|
109
|
+
* Extract the raw SqliteDatabase from a driver.
|
|
112
110
|
*
|
|
113
111
|
* Use this for interop with code that still requires the raw connection
|
|
114
|
-
* (e.g., Drizzle ORM
|
|
112
|
+
* (e.g., Drizzle ORM).
|
|
115
113
|
*/
|
|
116
|
-
export declare function getRawDatabase(driver: DatabaseDriver):
|
|
114
|
+
export declare function getRawDatabase(driver: DatabaseDriver): SqliteDatabase;
|
|
@@ -2,23 +2,22 @@
|
|
|
2
2
|
* Database Driver Abstraction Layer
|
|
3
3
|
*
|
|
4
4
|
* Defines a driver-agnostic interface for SQLite database access.
|
|
5
|
-
*
|
|
6
|
-
* without changing consumer code.
|
|
5
|
+
* Uses SqliteDatabase (sql.js/WASM) as the underlying implementation.
|
|
7
6
|
*
|
|
8
7
|
* All database access in the codebase should go through this interface
|
|
9
|
-
* rather than
|
|
8
|
+
* rather than using raw sql.js directly.
|
|
10
9
|
*/
|
|
11
|
-
import
|
|
10
|
+
import { SqliteDatabase } from './sqlite.js';
|
|
12
11
|
// =============================================================================
|
|
13
|
-
//
|
|
12
|
+
// SqliteDatabase Driver Implementation
|
|
14
13
|
// =============================================================================
|
|
15
14
|
/**
|
|
16
|
-
* DatabaseDriver implementation backed by
|
|
15
|
+
* DatabaseDriver implementation backed by sql.js (WASM SQLite).
|
|
17
16
|
*
|
|
18
|
-
* This is the primary driver used in production. It wraps a
|
|
19
|
-
*
|
|
17
|
+
* This is the primary driver used in production. It wraps a SqliteDatabase
|
|
18
|
+
* instance behind the DatabaseDriver interface.
|
|
20
19
|
*/
|
|
21
|
-
export class
|
|
20
|
+
export class SqlJsDriver {
|
|
22
21
|
db;
|
|
23
22
|
constructor(db) {
|
|
24
23
|
this.db = db;
|
|
@@ -54,30 +53,31 @@ export class BetterSqlite3Driver {
|
|
|
54
53
|
return this.db.open;
|
|
55
54
|
}
|
|
56
55
|
/**
|
|
57
|
-
* Access the underlying
|
|
56
|
+
* Access the underlying SqliteDatabase instance.
|
|
58
57
|
* @internal Use for Drizzle ORM interop only.
|
|
59
58
|
*/
|
|
60
59
|
get raw() {
|
|
61
60
|
return this.db;
|
|
62
61
|
}
|
|
63
62
|
}
|
|
63
|
+
// Keep the old name as an alias for backward compatibility during migration
|
|
64
|
+
export { SqlJsDriver as BetterSqlite3Driver };
|
|
64
65
|
// =============================================================================
|
|
65
66
|
// Factory Functions
|
|
66
67
|
// =============================================================================
|
|
67
68
|
/**
|
|
68
|
-
* Create a DatabaseDriver from an existing
|
|
69
|
-
* Useful when migrating existing code that already has a Database object.
|
|
69
|
+
* Create a DatabaseDriver from an existing SqliteDatabase instance.
|
|
70
70
|
*/
|
|
71
71
|
export function wrapDatabase(db) {
|
|
72
|
-
return new
|
|
72
|
+
return new SqlJsDriver(db);
|
|
73
73
|
}
|
|
74
74
|
/**
|
|
75
|
-
* Create a DatabaseDriver by opening a new
|
|
76
|
-
* Configures standard pragmas (
|
|
75
|
+
* Create a DatabaseDriver by opening a new sql.js connection.
|
|
76
|
+
* Configures standard pragmas (foreign keys, busy timeout).
|
|
77
77
|
*/
|
|
78
78
|
export function openDriver(dbPath, options) {
|
|
79
79
|
const readOnly = options?.readonly ?? false;
|
|
80
|
-
const db = new
|
|
80
|
+
const db = new SqliteDatabase(dbPath, readOnly ? { readonly: true } : undefined);
|
|
81
81
|
if (!readOnly) {
|
|
82
82
|
db.pragma('journal_mode = WAL');
|
|
83
83
|
}
|
|
@@ -90,17 +90,16 @@ export function openDriver(dbPath, options) {
|
|
|
90
90
|
else {
|
|
91
91
|
db.pragma('busy_timeout = 5000');
|
|
92
92
|
}
|
|
93
|
-
return new
|
|
93
|
+
return new SqlJsDriver(db);
|
|
94
94
|
}
|
|
95
95
|
/**
|
|
96
|
-
* Extract the raw
|
|
97
|
-
* Throws if the driver is not a BetterSqlite3Driver.
|
|
96
|
+
* Extract the raw SqliteDatabase from a driver.
|
|
98
97
|
*
|
|
99
98
|
* Use this for interop with code that still requires the raw connection
|
|
100
|
-
* (e.g., Drizzle ORM
|
|
99
|
+
* (e.g., Drizzle ORM).
|
|
101
100
|
*/
|
|
102
101
|
export function getRawDatabase(driver) {
|
|
103
|
-
if (driver instanceof
|
|
102
|
+
if (driver instanceof SqlJsDriver) {
|
|
104
103
|
return driver.raw;
|
|
105
104
|
}
|
|
106
105
|
// For other driver implementations, check the raw property
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../src/lib/database/driver.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../src/lib/database/driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,28 +2,28 @@
|
|
|
2
2
|
* Drizzle ORM Database Connection
|
|
3
3
|
*
|
|
4
4
|
* This module provides type-safe database connections using Drizzle ORM
|
|
5
|
-
* with
|
|
5
|
+
* with sql.js as the underlying driver.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
7
|
+
import type { SQLJsDatabase as DrizzleSqlJsDatabase } from 'drizzle-orm/sql-js';
|
|
8
|
+
import { SqliteDatabase } from './sqlite.js';
|
|
9
9
|
import * as schema from './drizzle-schema.js';
|
|
10
|
-
export type DrizzleDB =
|
|
10
|
+
export type DrizzleDB = DrizzleSqlJsDatabase<typeof schema>;
|
|
11
11
|
/**
|
|
12
|
-
* Create a Drizzle database connection from an existing
|
|
12
|
+
* Create a Drizzle database connection from an existing SqliteDatabase.
|
|
13
13
|
* This allows gradual migration by wrapping existing database connections.
|
|
14
14
|
*/
|
|
15
|
-
export declare function createDrizzleConnection(db:
|
|
15
|
+
export declare function createDrizzleConnection(db: SqliteDatabase): DrizzleDB;
|
|
16
16
|
/**
|
|
17
17
|
* Create a new Drizzle database connection from a file path.
|
|
18
18
|
* Configures pragmas for optimal performance and reliability.
|
|
19
19
|
*/
|
|
20
20
|
export declare function openDrizzleDatabase(dbPath: string): {
|
|
21
21
|
db: DrizzleDB;
|
|
22
|
-
sqliteDb:
|
|
22
|
+
sqliteDb: SqliteDatabase;
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
25
25
|
* Close a Drizzle database connection.
|
|
26
|
-
*
|
|
26
|
+
* Closes the underlying SqliteDatabase, which also saves changes to disk.
|
|
27
27
|
*/
|
|
28
|
-
export declare function closeDrizzleDatabase(sqliteDb:
|
|
28
|
+
export declare function closeDrizzleDatabase(sqliteDb: SqliteDatabase): void;
|
|
29
29
|
export * from './drizzle-schema.js';
|
|
@@ -2,41 +2,33 @@
|
|
|
2
2
|
* Drizzle ORM Database Connection
|
|
3
3
|
*
|
|
4
4
|
* This module provides type-safe database connections using Drizzle ORM
|
|
5
|
-
* with
|
|
5
|
+
* with sql.js as the underlying driver.
|
|
6
6
|
*/
|
|
7
|
-
import { drizzle } from 'drizzle-orm/
|
|
8
|
-
import
|
|
7
|
+
import { drizzle } from 'drizzle-orm/sql-js';
|
|
8
|
+
import { SqliteDatabase } from './sqlite.js';
|
|
9
9
|
import * as schema from './drizzle-schema.js';
|
|
10
|
-
import { throwIfNativeBindingError } from './native-validation.js';
|
|
11
10
|
/**
|
|
12
|
-
* Create a Drizzle database connection from an existing
|
|
11
|
+
* Create a Drizzle database connection from an existing SqliteDatabase.
|
|
13
12
|
* This allows gradual migration by wrapping existing database connections.
|
|
14
13
|
*/
|
|
15
14
|
export function createDrizzleConnection(db) {
|
|
16
|
-
return drizzle(db, { schema });
|
|
15
|
+
return drizzle(db.rawDatabase, { schema });
|
|
17
16
|
}
|
|
18
17
|
/**
|
|
19
18
|
* Create a new Drizzle database connection from a file path.
|
|
20
19
|
* Configures pragmas for optimal performance and reliability.
|
|
21
20
|
*/
|
|
22
21
|
export function openDrizzleDatabase(dbPath) {
|
|
23
|
-
|
|
24
|
-
try {
|
|
25
|
-
sqliteDb = new Database(dbPath);
|
|
26
|
-
}
|
|
27
|
-
catch (error) {
|
|
28
|
-
throwIfNativeBindingError(error, 'openDrizzleDatabase');
|
|
29
|
-
throw error;
|
|
30
|
-
}
|
|
22
|
+
const sqliteDb = new SqliteDatabase(dbPath);
|
|
31
23
|
// Configure pragmas
|
|
32
24
|
sqliteDb.pragma('foreign_keys = ON');
|
|
33
|
-
sqliteDb.pragma('busy_timeout = 5000');
|
|
34
|
-
const db = drizzle(sqliteDb, { schema });
|
|
25
|
+
sqliteDb.pragma('busy_timeout = 5000');
|
|
26
|
+
const db = drizzle(sqliteDb.rawDatabase, { schema });
|
|
35
27
|
return { db, sqliteDb };
|
|
36
28
|
}
|
|
37
29
|
/**
|
|
38
30
|
* Close a Drizzle database connection.
|
|
39
|
-
*
|
|
31
|
+
* Closes the underlying SqliteDatabase, which also saves changes to disk.
|
|
40
32
|
*/
|
|
41
33
|
export function closeDrizzleDatabase(sqliteDb) {
|
|
42
34
|
sqliteDb.close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle.js","sourceRoot":"","sources":["../../../src/lib/database/drizzle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"drizzle.js","sourceRoot":"","sources":["../../../src/lib/database/drizzle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAI7C;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,EAAkB;IACxD,OAAO,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;IAE3C,oBAAoB;IACpB,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;IACpC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;IAEtC,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IAEpD,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAA;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAwB;IAC3D,QAAQ,CAAC,KAAK,EAAE,CAAA;AAClB,CAAC;AAED,mCAAmC;AACnC,cAAc,qBAAqB,CAAA"}
|