@grackle-ai/server 0.52.1 → 0.52.2
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/db.d.ts +38 -6
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +227 -244
- package/dist/db.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
package/dist/db.d.ts
CHANGED
|
@@ -1,11 +1,43 @@
|
|
|
1
1
|
import Database from "better-sqlite3";
|
|
2
|
-
import * as schema from "./schema.js";
|
|
3
|
-
/** Initialize all database tables and run migrations. Call once at startup. */
|
|
4
|
-
export declare function initDatabase(): void;
|
|
5
|
-
/** Drizzle ORM instance wrapping the SQLite database. */
|
|
6
2
|
import type { BetterSQLite3Database } from "drizzle-orm/better-sqlite3";
|
|
7
|
-
|
|
3
|
+
import * as schema from "./schema.js";
|
|
4
|
+
/** Error collected from a migration step that uses try-catch for idempotency. */
|
|
5
|
+
export interface MigrationError {
|
|
6
|
+
name: string;
|
|
7
|
+
error: unknown;
|
|
8
|
+
}
|
|
9
|
+
/** Result returned by {@link initDatabase}. */
|
|
10
|
+
export interface InitDatabaseResult {
|
|
11
|
+
migrationErrors: MigrationError[];
|
|
12
|
+
}
|
|
13
|
+
/** Raw better-sqlite3 instance. Available after {@link openDatabase} has been called. */
|
|
14
|
+
declare let sqlite: InstanceType<typeof Database> | undefined;
|
|
15
|
+
/**
|
|
16
|
+
* Drizzle ORM instance wrapping the SQLite database.
|
|
17
|
+
* Available after {@link openDatabase} has been called.
|
|
18
|
+
* Exported as the default export via ESM live binding so that store modules
|
|
19
|
+
* that do `import db from "./db.js"` see the initialized value after startup.
|
|
20
|
+
*/
|
|
21
|
+
declare let db: BetterSQLite3Database<typeof schema> & {
|
|
8
22
|
$client: InstanceType<typeof Database>;
|
|
9
23
|
};
|
|
10
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Open the SQLite database and initialize the Drizzle ORM instance.
|
|
26
|
+
* Call once at startup before using `db` or `sqlite`.
|
|
27
|
+
* If already initialized, returns silently.
|
|
28
|
+
*
|
|
29
|
+
* @param dbPath - Optional path to the database file. Defaults to `~/.grackle/grackle.db`.
|
|
30
|
+
*/
|
|
31
|
+
export declare function openDatabase(dbPath?: string): void;
|
|
32
|
+
/**
|
|
33
|
+
* Initialize all database tables and run migrations.
|
|
34
|
+
* Call once at startup after {@link openDatabase}, or pass an in-memory
|
|
35
|
+
* SQLite instance for testing.
|
|
36
|
+
*
|
|
37
|
+
* @param sqliteOverride - Optional SQLite instance to use instead of the module-level one.
|
|
38
|
+
* @returns Collected migration errors from idempotent try-catch steps.
|
|
39
|
+
*/
|
|
40
|
+
export declare function initDatabase(sqliteOverride?: InstanceType<typeof Database>): InitDatabaseResult;
|
|
41
|
+
export { sqlite };
|
|
42
|
+
export { db as default };
|
|
11
43
|
//# sourceMappingURL=db.d.ts.map
|
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAKxE,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,iFAAiF;AACjF,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,+CAA+C;AAC/C,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,yFAAyF;AACzF,QAAA,IAAI,MAAM,EAAE,YAAY,CAAC,OAAO,QAAQ,CAAC,GAAG,SAAS,CAAC;AAEtD;;;;;GAKG;AACH,QAAA,IAAI,EAAE,EAAG,qBAAqB,CAAC,OAAO,MAAM,CAAC,GAAG;IAC9C,OAAO,EAAE,YAAY,CAAC,OAAO,QAAQ,CAAC,CAAC;CACxC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAsElD;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC,OAAO,QAAQ,CAAC,GAAG,kBAAkB,CAqlB/F;AAED,OAAO,EAAE,MAAM,EAAE,CAAC;AAClB,OAAO,EAAE,EAAE,IAAI,OAAO,EAAE,CAAC"}
|
package/dist/db.js
CHANGED
|
@@ -5,99 +5,146 @@ import { mkdirSync } from "node:fs";
|
|
|
5
5
|
import { DB_FILENAME, SYSTEM_PERSONA_ID, ROOT_TASK_ID } from "@grackle-ai/common";
|
|
6
6
|
import { grackleHome } from "./paths.js";
|
|
7
7
|
import * as schema from "./schema.js";
|
|
8
|
-
|
|
9
|
-
const dbPath = join(grackleHome, DB_FILENAME);
|
|
8
|
+
/** Raw better-sqlite3 instance. Available after {@link openDatabase} has been called. */
|
|
10
9
|
let sqlite;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"",
|
|
35
|
-
].join("\n"));
|
|
36
|
-
process.exit(1);
|
|
10
|
+
/**
|
|
11
|
+
* Drizzle ORM instance wrapping the SQLite database.
|
|
12
|
+
* Available after {@link openDatabase} has been called.
|
|
13
|
+
* Exported as the default export via ESM live binding so that store modules
|
|
14
|
+
* that do `import db from "./db.js"` see the initialized value after startup.
|
|
15
|
+
*/
|
|
16
|
+
let db;
|
|
17
|
+
/**
|
|
18
|
+
* Open the SQLite database and initialize the Drizzle ORM instance.
|
|
19
|
+
* Call once at startup before using `db` or `sqlite`.
|
|
20
|
+
* If already initialized, returns silently.
|
|
21
|
+
*
|
|
22
|
+
* @param dbPath - Optional path to the database file. Defaults to `~/.grackle/grackle.db`.
|
|
23
|
+
*/
|
|
24
|
+
export function openDatabase(dbPath) {
|
|
25
|
+
if (sqlite) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const resolvedPath = dbPath ?? join(grackleHome, DB_FILENAME);
|
|
29
|
+
// Ensure the grackle home directory exists (skip when a custom path is provided,
|
|
30
|
+
// e.g. tests that point at an in-memory or temp-dir database).
|
|
31
|
+
if (!dbPath) {
|
|
32
|
+
mkdirSync(grackleHome, { recursive: true });
|
|
37
33
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
34
|
+
try {
|
|
35
|
+
sqlite = new Database(resolvedPath);
|
|
36
|
+
}
|
|
37
|
+
catch (err) {
|
|
38
|
+
if (err instanceof Error && err.message.includes("Could not locate the bindings file")) {
|
|
39
|
+
process.stderr.write([
|
|
40
|
+
"",
|
|
41
|
+
"ERROR: better-sqlite3 native binding not found.",
|
|
42
|
+
"",
|
|
43
|
+
"The install script for better-sqlite3 was skipped, so the required native",
|
|
44
|
+
"module was never built. This commonly happens with pnpm v8+, which blocks",
|
|
45
|
+
"package install scripts by default.",
|
|
46
|
+
"",
|
|
47
|
+
"To fix this, run one of the following:",
|
|
48
|
+
"",
|
|
49
|
+
" Option 1 — approve builds interactively:",
|
|
50
|
+
" pnpm approve-builds",
|
|
51
|
+
"",
|
|
52
|
+
" Option 2 — add to your project's package.json, then reinstall:",
|
|
53
|
+
' { "pnpm": { "onlyBuiltDependencies": ["better-sqlite3"] } }',
|
|
54
|
+
" pnpm install",
|
|
55
|
+
"",
|
|
56
|
+
"After fixing, restart grackle.",
|
|
57
|
+
"",
|
|
58
|
+
].join("\n"));
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
if (err instanceof Error && err.message.includes("NODE_MODULE_VERSION")) {
|
|
62
|
+
process.stderr.write([
|
|
63
|
+
"",
|
|
64
|
+
"ERROR: better-sqlite3 was compiled for a different Node.js version.",
|
|
65
|
+
`(Current NODE_MODULE_VERSION: ${process.versions.modules})`,
|
|
66
|
+
"",
|
|
67
|
+
"This usually means grackle was installed with one Node version but is",
|
|
68
|
+
"being run with another. Grackle requires Node >= 22.",
|
|
69
|
+
"",
|
|
70
|
+
"To fix: reinstall grackle with your current Node version:",
|
|
71
|
+
" npm install -g @grackle-ai/cli",
|
|
72
|
+
"",
|
|
73
|
+
`Original error: ${err.message}`,
|
|
74
|
+
"",
|
|
75
|
+
].join("\n"));
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
throw err;
|
|
54
79
|
}
|
|
55
|
-
|
|
80
|
+
// Enable WAL mode for better concurrent read performance
|
|
81
|
+
sqlite.pragma("journal_mode = WAL");
|
|
82
|
+
// Enable foreign key enforcement (off by default in SQLite)
|
|
83
|
+
sqlite.pragma("foreign_keys = ON");
|
|
84
|
+
db = drizzle(sqlite, { schema });
|
|
56
85
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
86
|
+
/**
|
|
87
|
+
* Initialize all database tables and run migrations.
|
|
88
|
+
* Call once at startup after {@link openDatabase}, or pass an in-memory
|
|
89
|
+
* SQLite instance for testing.
|
|
90
|
+
*
|
|
91
|
+
* @param sqliteOverride - Optional SQLite instance to use instead of the module-level one.
|
|
92
|
+
* @returns Collected migration errors from idempotent try-catch steps.
|
|
93
|
+
*/
|
|
94
|
+
export function initDatabase(sqliteOverride) {
|
|
95
|
+
const conn = sqliteOverride ?? sqlite;
|
|
96
|
+
if (!conn) {
|
|
97
|
+
throw new Error("Database not initialized. Call openDatabase() first or provide a sqliteOverride.");
|
|
98
|
+
}
|
|
99
|
+
const migrationErrors = [];
|
|
100
|
+
/** Check whether an error is an expected idempotent migration failure. */
|
|
101
|
+
const isExpectedIdempotencyError = (err) => {
|
|
102
|
+
if (!(err instanceof Error)) {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
const msg = err.message.toLowerCase();
|
|
106
|
+
return (msg.includes("already exists") ||
|
|
107
|
+
msg.includes("duplicate column name") ||
|
|
108
|
+
msg.includes("no such table") ||
|
|
109
|
+
msg.includes("no such column"));
|
|
110
|
+
};
|
|
111
|
+
/** Run a migration step, collecting expected idempotency errors. */
|
|
112
|
+
const tryMigration = (name, fn) => {
|
|
113
|
+
try {
|
|
114
|
+
fn();
|
|
115
|
+
}
|
|
116
|
+
catch (error) {
|
|
117
|
+
if (isExpectedIdempotencyError(error)) {
|
|
118
|
+
migrationErrors.push({ name, error });
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
throw error;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
};
|
|
63
125
|
// Migration: rename projects table to workspaces
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
catch {
|
|
68
|
-
/* table already renamed or never existed */
|
|
69
|
-
}
|
|
126
|
+
tryMigration("rename-projects-to-workspaces", () => {
|
|
127
|
+
conn.exec("ALTER TABLE projects RENAME TO workspaces");
|
|
128
|
+
});
|
|
70
129
|
// Migration: rename project_id column to workspace_id on tasks
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
catch {
|
|
75
|
-
/* column already renamed or never existed */
|
|
76
|
-
}
|
|
130
|
+
tryMigration("rename-tasks-project-id", () => {
|
|
131
|
+
conn.exec("ALTER TABLE tasks RENAME COLUMN project_id TO workspace_id");
|
|
132
|
+
});
|
|
77
133
|
// Migration: rename project_id column to workspace_id on findings
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
catch {
|
|
82
|
-
/* column already renamed or never existed */
|
|
83
|
-
}
|
|
134
|
+
tryMigration("rename-findings-project-id", () => {
|
|
135
|
+
conn.exec("ALTER TABLE findings RENAME COLUMN project_id TO workspace_id");
|
|
136
|
+
});
|
|
84
137
|
// Migration: drop old findings index after column rename
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
88
|
-
catch {
|
|
89
|
-
/* index already dropped or never existed */
|
|
90
|
-
}
|
|
138
|
+
tryMigration("drop-idx-findings-project", () => {
|
|
139
|
+
conn.exec("DROP INDEX IF EXISTS idx_findings_project");
|
|
140
|
+
});
|
|
91
141
|
// Migration: rename default_env_id → environment_id on workspaces
|
|
92
142
|
// Must run BEFORE the backfill block below which references environment_id.
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
catch {
|
|
97
|
-
/* column already renamed or never existed */
|
|
98
|
-
}
|
|
143
|
+
tryMigration("rename-workspaces-default-env-id", () => {
|
|
144
|
+
conn.exec("ALTER TABLE workspaces RENAME COLUMN default_env_id TO environment_id");
|
|
145
|
+
});
|
|
99
146
|
// Create tables — idempotent, safe to run every startup
|
|
100
|
-
|
|
147
|
+
conn.exec(`
|
|
101
148
|
CREATE TABLE IF NOT EXISTS environments (
|
|
102
149
|
id TEXT PRIMARY KEY,
|
|
103
150
|
display_name TEXT NOT NULL,
|
|
@@ -210,21 +257,15 @@ export function initDatabase() {
|
|
|
210
257
|
CREATE INDEX IF NOT EXISTS idx_domain_events_timestamp ON domain_events(timestamp);
|
|
211
258
|
`);
|
|
212
259
|
// Migration: add powerline_token column if missing (older databases)
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
}
|
|
216
|
-
catch {
|
|
217
|
-
/* column already exists */
|
|
218
|
-
}
|
|
260
|
+
tryMigration("add-environments-powerline-token", () => {
|
|
261
|
+
conn.exec("ALTER TABLE environments ADD COLUMN powerline_token TEXT NOT NULL DEFAULT ''");
|
|
262
|
+
});
|
|
219
263
|
// Migration: rename sidecar_token → powerline_token (from older databases)
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
}
|
|
223
|
-
catch {
|
|
224
|
-
/* column already renamed or doesn't exist */
|
|
225
|
-
}
|
|
264
|
+
tryMigration("rename-environments-sidecar-token", () => {
|
|
265
|
+
conn.exec("ALTER TABLE environments RENAME COLUMN sidecar_token TO powerline_token");
|
|
266
|
+
});
|
|
226
267
|
// Migration: backfill NULLs in stage-2 tables from older schemas that lacked NOT NULL
|
|
227
|
-
|
|
268
|
+
conn.exec(`
|
|
228
269
|
UPDATE workspaces SET description = '' WHERE description IS NULL;
|
|
229
270
|
UPDATE workspaces SET repo_url = '' WHERE repo_url IS NULL;
|
|
230
271
|
UPDATE workspaces SET environment_id = COALESCE(
|
|
@@ -249,23 +290,17 @@ export function initDatabase() {
|
|
|
249
290
|
UPDATE findings SET created_at = datetime('now') WHERE created_at IS NULL;
|
|
250
291
|
`);
|
|
251
292
|
// Migration: add parent_task_id and depth columns if missing (older databases)
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
}
|
|
258
|
-
try {
|
|
259
|
-
sqlite.exec("ALTER TABLE tasks ADD COLUMN depth INTEGER NOT NULL DEFAULT 0");
|
|
260
|
-
}
|
|
261
|
-
catch {
|
|
262
|
-
/* column already exists */
|
|
263
|
-
}
|
|
293
|
+
tryMigration("add-tasks-parent-task-id", () => {
|
|
294
|
+
conn.exec("ALTER TABLE tasks ADD COLUMN parent_task_id TEXT NOT NULL DEFAULT ''");
|
|
295
|
+
});
|
|
296
|
+
tryMigration("add-tasks-depth", () => {
|
|
297
|
+
conn.exec("ALTER TABLE tasks ADD COLUMN depth INTEGER NOT NULL DEFAULT 0");
|
|
298
|
+
});
|
|
264
299
|
// Migration: add can_decompose column if missing (older databases)
|
|
265
|
-
|
|
266
|
-
|
|
300
|
+
tryMigration("add-tasks-can-decompose", () => {
|
|
301
|
+
conn.exec("ALTER TABLE tasks ADD COLUMN can_decompose INTEGER NOT NULL DEFAULT 0");
|
|
267
302
|
// Backfill: mark root tasks and tasks with existing children as decomposable
|
|
268
|
-
|
|
303
|
+
conn.exec(`
|
|
269
304
|
UPDATE tasks
|
|
270
305
|
SET can_decompose = 1
|
|
271
306
|
WHERE parent_task_id IS NULL OR parent_task_id = ''
|
|
@@ -275,157 +310,106 @@ export function initDatabase() {
|
|
|
275
310
|
WHERE parent_task_id IS NOT NULL AND parent_task_id <> ''
|
|
276
311
|
)
|
|
277
312
|
`);
|
|
278
|
-
}
|
|
279
|
-
catch {
|
|
280
|
-
/* column already exists */
|
|
281
|
-
}
|
|
313
|
+
});
|
|
282
314
|
// Migration: add persona_id column to tasks if missing
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
}
|
|
286
|
-
catch {
|
|
287
|
-
/* column already exists */
|
|
288
|
-
}
|
|
315
|
+
tryMigration("add-tasks-persona-id", () => {
|
|
316
|
+
conn.exec("ALTER TABLE tasks ADD COLUMN persona_id TEXT NOT NULL DEFAULT ''");
|
|
317
|
+
});
|
|
289
318
|
// Migration: add task_id column to sessions if missing
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
}
|
|
293
|
-
catch {
|
|
294
|
-
/* column already exists */
|
|
295
|
-
}
|
|
319
|
+
tryMigration("add-sessions-task-id", () => {
|
|
320
|
+
conn.exec("ALTER TABLE sessions ADD COLUMN task_id TEXT NOT NULL DEFAULT ''");
|
|
321
|
+
});
|
|
296
322
|
// Migration: add use_worktrees column to workspaces if missing (older databases)
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
}
|
|
300
|
-
catch {
|
|
301
|
-
/* column already exists */
|
|
302
|
-
}
|
|
323
|
+
tryMigration("add-workspaces-use-worktrees", () => {
|
|
324
|
+
conn.exec("ALTER TABLE workspaces ADD COLUMN use_worktrees INTEGER NOT NULL DEFAULT 1");
|
|
325
|
+
});
|
|
303
326
|
// Migration: add worktree_base_path column to workspaces if missing (older databases)
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
}
|
|
307
|
-
catch {
|
|
308
|
-
/* column already exists */
|
|
309
|
-
}
|
|
327
|
+
tryMigration("add-workspaces-worktree-base-path", () => {
|
|
328
|
+
conn.exec("ALTER TABLE workspaces ADD COLUMN worktree_base_path TEXT NOT NULL DEFAULT ''");
|
|
329
|
+
});
|
|
310
330
|
// Migration: backfill task_id on existing sessions from tasks.session_id.
|
|
311
331
|
// Guard with try/catch since session_id column may have been dropped already.
|
|
312
|
-
|
|
313
|
-
|
|
332
|
+
tryMigration("backfill-sessions-task-id", () => {
|
|
333
|
+
conn.exec(`
|
|
314
334
|
UPDATE sessions SET task_id = (
|
|
315
335
|
SELECT id FROM tasks WHERE tasks.session_id = sessions.id LIMIT 1
|
|
316
336
|
) WHERE task_id = '' AND EXISTS (
|
|
317
337
|
SELECT 1 FROM tasks WHERE tasks.session_id = sessions.id
|
|
318
338
|
)
|
|
319
339
|
`);
|
|
320
|
-
}
|
|
321
|
-
catch {
|
|
322
|
-
/* tasks.session_id column already dropped */
|
|
323
|
-
}
|
|
340
|
+
});
|
|
324
341
|
// Migration: add persona_id column to sessions if missing
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
}
|
|
328
|
-
catch {
|
|
329
|
-
/* column already exists */
|
|
330
|
-
}
|
|
342
|
+
tryMigration("add-sessions-persona-id", () => {
|
|
343
|
+
conn.exec("ALTER TABLE sessions ADD COLUMN persona_id TEXT NOT NULL DEFAULT ''");
|
|
344
|
+
});
|
|
331
345
|
// Migration: copy persona_id from tasks to sessions before dropping
|
|
332
|
-
|
|
333
|
-
|
|
346
|
+
tryMigration("copy-persona-id-tasks-to-sessions", () => {
|
|
347
|
+
conn.exec(`
|
|
334
348
|
UPDATE sessions SET persona_id = (
|
|
335
349
|
SELECT persona_id FROM tasks WHERE tasks.session_id = sessions.id LIMIT 1
|
|
336
350
|
) WHERE persona_id = '' AND task_id != ''
|
|
337
351
|
`);
|
|
338
|
-
}
|
|
339
|
-
catch {
|
|
340
|
-
/* tasks.session_id or tasks.persona_id column may not exist */
|
|
341
|
-
}
|
|
352
|
+
});
|
|
342
353
|
// Migration: drop columns that moved off the tasks table
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
}
|
|
352
|
-
catch {
|
|
353
|
-
/* column already dropped or never existed */
|
|
354
|
-
}
|
|
355
|
-
try {
|
|
356
|
-
sqlite.exec("ALTER TABLE tasks DROP COLUMN persona_id");
|
|
357
|
-
}
|
|
358
|
-
catch {
|
|
359
|
-
/* column already dropped or never existed */
|
|
360
|
-
}
|
|
354
|
+
tryMigration("drop-tasks-session-id", () => {
|
|
355
|
+
conn.exec("ALTER TABLE tasks DROP COLUMN session_id");
|
|
356
|
+
});
|
|
357
|
+
tryMigration("drop-tasks-env-id", () => {
|
|
358
|
+
conn.exec("ALTER TABLE tasks DROP COLUMN env_id");
|
|
359
|
+
});
|
|
360
|
+
tryMigration("drop-tasks-persona-id", () => {
|
|
361
|
+
conn.exec("ALTER TABLE tasks DROP COLUMN persona_id");
|
|
362
|
+
});
|
|
361
363
|
// Migration: normalize existing started_at values from SQLite datetime('now')
|
|
362
364
|
// format (YYYY-MM-DD HH:MM:SS) to ISO 8601 (YYYY-MM-DDTHH:MM:SS.000Z) so
|
|
363
365
|
// ordering is consistent with newly inserted rows.
|
|
364
|
-
|
|
366
|
+
conn.exec(`
|
|
365
367
|
UPDATE sessions
|
|
366
368
|
SET started_at = replace(started_at, ' ', 'T') || '.000Z'
|
|
367
369
|
WHERE started_at NOT LIKE '%T%'
|
|
368
370
|
`);
|
|
369
371
|
// Migration: normalize task statuses to simplified model
|
|
370
|
-
|
|
372
|
+
conn.exec(`
|
|
371
373
|
UPDATE tasks SET status = 'not_started' WHERE status IN ('pending', 'assigned');
|
|
372
374
|
UPDATE tasks SET status = 'complete' WHERE status = 'done';
|
|
373
375
|
UPDATE tasks SET status = 'not_started' WHERE status IN ('in_progress', 'waiting_input', 'review');
|
|
374
376
|
`);
|
|
375
377
|
// Migration: normalize session statuses
|
|
376
|
-
|
|
378
|
+
conn.exec(`
|
|
377
379
|
UPDATE sessions SET status = 'idle' WHERE status = 'waiting_input';
|
|
378
380
|
UPDATE sessions SET status = 'interrupted' WHERE status = 'killed';
|
|
379
381
|
`);
|
|
380
382
|
// Migration: drop stale columns from tasks
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
}
|
|
387
|
-
try {
|
|
388
|
-
sqlite.exec("ALTER TABLE tasks DROP COLUMN review_notes");
|
|
389
|
-
}
|
|
390
|
-
catch {
|
|
391
|
-
/* column already dropped or never existed */
|
|
392
|
-
}
|
|
383
|
+
tryMigration("drop-tasks-assigned-at", () => {
|
|
384
|
+
conn.exec("ALTER TABLE tasks DROP COLUMN assigned_at");
|
|
385
|
+
});
|
|
386
|
+
tryMigration("drop-tasks-review-notes", () => {
|
|
387
|
+
conn.exec("ALTER TABLE tasks DROP COLUMN review_notes");
|
|
388
|
+
});
|
|
393
389
|
// Index for efficient session-by-task lookups
|
|
394
|
-
|
|
390
|
+
conn.exec("CREATE INDEX IF NOT EXISTS idx_sessions_task_id ON sessions(task_id)");
|
|
395
391
|
// Migration: add default_persona_id to workspaces and tasks
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
}
|
|
402
|
-
try {
|
|
403
|
-
sqlite.exec("ALTER TABLE tasks ADD COLUMN default_persona_id TEXT NOT NULL DEFAULT ''");
|
|
404
|
-
}
|
|
405
|
-
catch {
|
|
406
|
-
/* column already exists */
|
|
407
|
-
}
|
|
392
|
+
tryMigration("add-workspaces-default-persona-id", () => {
|
|
393
|
+
conn.exec("ALTER TABLE workspaces ADD COLUMN default_persona_id TEXT NOT NULL DEFAULT ''");
|
|
394
|
+
});
|
|
395
|
+
tryMigration("add-tasks-default-persona-id", () => {
|
|
396
|
+
conn.exec("ALTER TABLE tasks ADD COLUMN default_persona_id TEXT NOT NULL DEFAULT ''");
|
|
397
|
+
});
|
|
408
398
|
// Migration: add type and script columns to personas if missing
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
}
|
|
415
|
-
try {
|
|
416
|
-
sqlite.exec("ALTER TABLE personas ADD COLUMN script TEXT NOT NULL DEFAULT ''");
|
|
417
|
-
}
|
|
418
|
-
catch {
|
|
419
|
-
/* column already exists */
|
|
420
|
-
}
|
|
399
|
+
tryMigration("add-personas-type", () => {
|
|
400
|
+
conn.exec("ALTER TABLE personas ADD COLUMN type TEXT NOT NULL DEFAULT 'agent'");
|
|
401
|
+
});
|
|
402
|
+
tryMigration("add-personas-script", () => {
|
|
403
|
+
conn.exec("ALTER TABLE personas ADD COLUMN script TEXT NOT NULL DEFAULT ''");
|
|
404
|
+
});
|
|
421
405
|
// Migration: make workspace_id nullable on tasks.
|
|
422
406
|
// SQLite doesn't support ALTER COLUMN, so we recreate the table.
|
|
423
407
|
// Guard: only run if the column currently has NOT NULL.
|
|
424
408
|
{
|
|
425
|
-
const tableInfo =
|
|
409
|
+
const tableInfo = conn.prepare("PRAGMA table_info(tasks)").all();
|
|
426
410
|
const workspaceIdCol = tableInfo.find((c) => c.name === "workspace_id");
|
|
427
411
|
if (workspaceIdCol?.notnull === 1) {
|
|
428
|
-
|
|
412
|
+
conn.exec(`
|
|
429
413
|
BEGIN;
|
|
430
414
|
CREATE TABLE tasks_new (
|
|
431
415
|
id TEXT PRIMARY KEY,
|
|
@@ -457,13 +441,13 @@ export function initDatabase() {
|
|
|
457
441
|
}
|
|
458
442
|
}
|
|
459
443
|
// Migration: add index on workspaces.environment_id for efficient lookup
|
|
460
|
-
|
|
444
|
+
conn.exec("CREATE INDEX IF NOT EXISTS idx_workspaces_environment_id ON workspaces(environment_id)");
|
|
461
445
|
// Seed: create default "Claude Code" persona if no personas exist
|
|
462
|
-
const personaCount =
|
|
446
|
+
const personaCount = conn
|
|
463
447
|
.prepare("SELECT COUNT(*) as cnt FROM personas")
|
|
464
448
|
.get();
|
|
465
449
|
if (personaCount.cnt === 0) {
|
|
466
|
-
|
|
450
|
+
conn.exec(`
|
|
467
451
|
INSERT INTO personas (id, name, description, system_prompt, runtime, model, max_turns)
|
|
468
452
|
VALUES (
|
|
469
453
|
'claude-code',
|
|
@@ -475,7 +459,7 @@ export function initDatabase() {
|
|
|
475
459
|
0
|
|
476
460
|
)
|
|
477
461
|
`);
|
|
478
|
-
|
|
462
|
+
conn.exec(`
|
|
479
463
|
INSERT OR IGNORE INTO settings (key, value)
|
|
480
464
|
VALUES ('default_persona_id', 'claude-code')
|
|
481
465
|
`);
|
|
@@ -483,7 +467,7 @@ export function initDatabase() {
|
|
|
483
467
|
// Migration: update the seed persona with the completion checklist and clearer name.
|
|
484
468
|
// Guards: only run when the system_prompt is still empty and name is still "Claude Code"
|
|
485
469
|
// so we don't overwrite user customizations.
|
|
486
|
-
|
|
470
|
+
conn.exec(`
|
|
487
471
|
UPDATE personas SET system_prompt = 'When you have finished implementing the task, you MUST complete ALL steps below in order. Do NOT stop early or go to "waiting for input" until every step is done.
|
|
488
472
|
|
|
489
473
|
### Phase 1: Implement & Test
|
|
@@ -511,7 +495,7 @@ After creating the PR, you must ensure it is ready to merge.
|
|
|
511
495
|
IMPORTANT: The PR is the deliverable, but a PR with failing CI or unresolved review comments is NOT done. You MUST complete Phase 3. Do NOT go to "waiting for input" until CI is green AND all review threads are resolved.'
|
|
512
496
|
WHERE id = 'claude-code' AND system_prompt = '' AND name = 'Claude Code'
|
|
513
497
|
`);
|
|
514
|
-
|
|
498
|
+
conn.exec(`
|
|
515
499
|
UPDATE personas
|
|
516
500
|
SET name = 'Software Engineer',
|
|
517
501
|
description = 'Default agent persona for software engineering tasks'
|
|
@@ -528,32 +512,32 @@ IMPORTANT: The PR is the deliverable, but a PR with failing CI or unresolved rev
|
|
|
528
512
|
// Handles name collisions: if a user-created persona named "System" already
|
|
529
513
|
// exists under a different id, reassign it to SYSTEM_PERSONA_ID.
|
|
530
514
|
{
|
|
531
|
-
const existingSystemById =
|
|
515
|
+
const existingSystemById = conn
|
|
532
516
|
.prepare("SELECT id FROM personas WHERE id = ?")
|
|
533
517
|
.get(SYSTEM_PERSONA_ID);
|
|
534
518
|
if (!existingSystemById) {
|
|
535
|
-
const seedRow =
|
|
519
|
+
const seedRow = conn
|
|
536
520
|
.prepare("SELECT runtime, model FROM personas WHERE id = 'claude-code'")
|
|
537
521
|
.get();
|
|
538
522
|
const systemRuntime = seedRow?.runtime || "claude-code";
|
|
539
523
|
const systemModel = seedRow?.model || "sonnet";
|
|
540
|
-
const existingSystemByName =
|
|
524
|
+
const existingSystemByName = conn
|
|
541
525
|
.prepare("SELECT id FROM personas WHERE name = 'System'")
|
|
542
526
|
.get();
|
|
543
527
|
if (existingSystemByName && existingSystemByName.id !== SYSTEM_PERSONA_ID) {
|
|
544
528
|
// Reassign existing "System" persona to the canonical id and update
|
|
545
529
|
// all stored references atomically so a crash can't leave dangling refs.
|
|
546
|
-
const reassignSystemPersona =
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
530
|
+
const reassignSystemPersona = conn.transaction((oldId) => {
|
|
531
|
+
conn.prepare("UPDATE personas SET id = ? WHERE id = ?").run(SYSTEM_PERSONA_ID, oldId);
|
|
532
|
+
conn.prepare("UPDATE settings SET value = ? WHERE key = 'default_persona_id' AND value = ?").run(SYSTEM_PERSONA_ID, oldId);
|
|
533
|
+
conn.prepare("UPDATE sessions SET persona_id = ? WHERE persona_id = ?").run(SYSTEM_PERSONA_ID, oldId);
|
|
534
|
+
conn.prepare("UPDATE tasks SET default_persona_id = ? WHERE default_persona_id = ?").run(SYSTEM_PERSONA_ID, oldId);
|
|
535
|
+
conn.prepare("UPDATE workspaces SET default_persona_id = ? WHERE default_persona_id = ?").run(SYSTEM_PERSONA_ID, oldId);
|
|
552
536
|
});
|
|
553
537
|
reassignSystemPersona(existingSystemByName.id);
|
|
554
538
|
}
|
|
555
539
|
else if (!existingSystemByName) {
|
|
556
|
-
|
|
540
|
+
conn
|
|
557
541
|
.prepare(`
|
|
558
542
|
INSERT INTO personas (id, name, description, system_prompt, runtime, model, max_turns, type)
|
|
559
543
|
VALUES (?, 'System', 'Central orchestrator persona', ?, ?, ?, 0, 'agent')
|
|
@@ -583,7 +567,7 @@ IMPORTANT: The PR is the deliverable, but a PR with failing CI or unresolved rev
|
|
|
583
567
|
}
|
|
584
568
|
}
|
|
585
569
|
// Seed: create root task (well-known "system" task) if it doesn't exist.
|
|
586
|
-
|
|
570
|
+
conn
|
|
587
571
|
.prepare(`
|
|
588
572
|
INSERT OR IGNORE INTO tasks (id, workspace_id, title, description, status, branch, parent_task_id, depth, can_decompose, default_persona_id)
|
|
589
573
|
VALUES (?, NULL, 'System', '', 'not_started', 'system', '', 0, 1, ?)
|
|
@@ -592,16 +576,16 @@ IMPORTANT: The PR is the deliverable, but a PR with failing CI or unresolved rev
|
|
|
592
576
|
// Backfill: ensure default_persona_id setting exists for upgrades.
|
|
593
577
|
// Existing installations may have personas but no default_persona_id setting,
|
|
594
578
|
// which would cause resolvePersona() to fail when no persona is explicitly specified.
|
|
595
|
-
const existingDefault =
|
|
579
|
+
const existingDefault = conn
|
|
596
580
|
.prepare("SELECT value FROM settings WHERE key = 'default_persona_id'")
|
|
597
581
|
.get();
|
|
598
582
|
if (!existingDefault) {
|
|
599
583
|
// Prefer the seed persona 'claude-code' if it exists; otherwise fall back
|
|
600
584
|
// to the first persona alphabetically.
|
|
601
|
-
const fallback = (
|
|
602
|
-
|
|
585
|
+
const fallback = (conn.prepare("SELECT id FROM personas WHERE id = 'claude-code'").get() ??
|
|
586
|
+
conn.prepare("SELECT id FROM personas ORDER BY name LIMIT 1").get());
|
|
603
587
|
if (fallback) {
|
|
604
|
-
|
|
588
|
+
conn
|
|
605
589
|
.prepare("INSERT OR IGNORE INTO settings (key, value) VALUES ('default_persona_id', ?)")
|
|
606
590
|
.run(fallback.id);
|
|
607
591
|
}
|
|
@@ -610,21 +594,20 @@ IMPORTANT: The PR is the deliverable, but a PR with failing CI or unresolved rev
|
|
|
610
594
|
// Fresh installs (no pre-existing environments or personas) get "false" to trigger
|
|
611
595
|
// the setup wizard. Upgrades (pre-existing data) get "true" to skip it.
|
|
612
596
|
// personaCount was captured before the seed insert, so it reflects user-created personas.
|
|
613
|
-
const existingOnboarding =
|
|
597
|
+
const existingOnboarding = conn
|
|
614
598
|
.prepare("SELECT value FROM settings WHERE key = 'onboarding_completed'")
|
|
615
599
|
.get();
|
|
616
600
|
if (!existingOnboarding) {
|
|
617
|
-
const environmentCount =
|
|
601
|
+
const environmentCount = conn
|
|
618
602
|
.prepare("SELECT COUNT(*) as cnt FROM environments")
|
|
619
603
|
.get();
|
|
620
604
|
const isFreshInstall = environmentCount.cnt === 0 && personaCount.cnt === 0;
|
|
621
|
-
|
|
605
|
+
conn
|
|
622
606
|
.prepare("INSERT OR IGNORE INTO settings (key, value) VALUES ('onboarding_completed', ?)")
|
|
623
607
|
.run(isFreshInstall ? "false" : "true");
|
|
624
608
|
}
|
|
609
|
+
return { migrationErrors };
|
|
625
610
|
}
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
const db = drizzle(sqlite, { schema });
|
|
629
|
-
export default db;
|
|
611
|
+
export { sqlite };
|
|
612
|
+
export { db as default };
|
|
630
613
|
//# sourceMappingURL=db.js.map
|
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
CHANGED
|
@@ -32,8 +32,7 @@ import { createOAuthAccessToken, OAUTH_ACCESS_TOKEN_TTL_MS } from "@grackle-ai/m
|
|
|
32
32
|
import { logger } from "./logger.js";
|
|
33
33
|
import { exec } from "./utils/exec.js";
|
|
34
34
|
import { detectLanIp } from "./utils/network.js";
|
|
35
|
-
|
|
36
|
-
import "./db.js";
|
|
35
|
+
import { openDatabase, initDatabase } from "./db.js";
|
|
37
36
|
const MIME_TYPES = {
|
|
38
37
|
".html": "text/html",
|
|
39
38
|
".js": "application/javascript",
|
|
@@ -522,6 +521,12 @@ function isWildcardAddress(host) {
|
|
|
522
521
|
/** Handle for the auto-started local PowerLine child process. */
|
|
523
522
|
let localPowerLineHandle;
|
|
524
523
|
async function main() {
|
|
524
|
+
// Open the database and run migrations before anything else
|
|
525
|
+
openDatabase();
|
|
526
|
+
const { migrationErrors } = initDatabase();
|
|
527
|
+
if (migrationErrors.length > 0) {
|
|
528
|
+
logger.warn({ migrationNames: migrationErrors.map((m) => m.name), count: migrationErrors.length }, "Database migrations completed with %d idempotent issue(s)", migrationErrors.length);
|
|
529
|
+
}
|
|
525
530
|
// Reset all environment statuses on startup — in-memory connections are lost
|
|
526
531
|
resetAllStatuses();
|
|
527
532
|
// Load (or generate) the API key on startup
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grackle-ai/server",
|
|
3
|
-
"version": "0.52.
|
|
3
|
+
"version": "0.52.2",
|
|
4
4
|
"description": "Central gRPC server with SQLite storage and WebSocket bridge for Grackle",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -35,11 +35,11 @@
|
|
|
35
35
|
"ulid": "^2.3.0",
|
|
36
36
|
"uuid": "^11.0.0",
|
|
37
37
|
"ws": "^8.0.0",
|
|
38
|
-
"@grackle-ai/adapter-sdk": "0.52.
|
|
39
|
-
"@grackle-ai/common": "0.52.
|
|
40
|
-
"@grackle-ai/powerline": "0.52.
|
|
41
|
-
"@grackle-ai/
|
|
42
|
-
"@grackle-ai/
|
|
38
|
+
"@grackle-ai/adapter-sdk": "0.52.2",
|
|
39
|
+
"@grackle-ai/common": "0.52.2",
|
|
40
|
+
"@grackle-ai/powerline": "0.52.2",
|
|
41
|
+
"@grackle-ai/mcp": "0.52.2",
|
|
42
|
+
"@grackle-ai/web": "0.52.2"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@rushstack/heft": "1.2.4",
|