@rudderhq/db 0.7.1 → 0.7.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/backup-lib.d.ts.map +1 -1
- package/dist/backup-lib.js +11 -3
- package/dist/backup-lib.js.map +1 -1
- package/dist/client.d.ts +25 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +304 -20
- package/dist/client.js.map +1 -1
- package/dist/client.test.js +217 -29
- package/dist/client.test.js.map +1 -1
- package/dist/embedded-postgres-recovery.d.ts +11 -0
- package/dist/embedded-postgres-recovery.d.ts.map +1 -1
- package/dist/embedded-postgres-recovery.js +50 -11
- package/dist/embedded-postgres-recovery.js.map +1 -1
- package/dist/embedded-postgres-recovery.test.js +50 -2
- package/dist/embedded-postgres-recovery.test.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/local-postgres-provider.d.ts +3 -0
- package/dist/local-postgres-provider.d.ts.map +1 -1
- package/dist/local-postgres-provider.js +92 -10
- package/dist/local-postgres-provider.js.map +1 -1
- package/dist/local-postgres-provider.test.js +24 -1
- package/dist/local-postgres-provider.test.js.map +1 -1
- package/dist/migration-manifest.d.ts +41 -0
- package/dist/migration-manifest.d.ts.map +1 -0
- package/dist/migration-manifest.js +186 -0
- package/dist/migration-manifest.js.map +1 -0
- package/dist/migration-manifest.test.d.ts +2 -0
- package/dist/migration-manifest.test.d.ts.map +1 -0
- package/dist/migration-manifest.test.js +88 -0
- package/dist/migration-manifest.test.js.map +1 -0
- package/dist/migration-runtime.d.ts.map +1 -1
- package/dist/migration-runtime.js +18 -33
- package/dist/migration-runtime.js.map +1 -1
- package/dist/migrations/0143_goal_contract.sql +97 -0
- package/dist/migrations/0144_eminent_umar.sql +16 -0
- package/dist/migrations/0145_public_nehzno.sql +96 -0
- package/dist/migrations/0146_medical_roulette.sql +1 -0
- package/dist/migrations/0147_github_mcp_provider.sql +4 -0
- package/dist/migrations/0148_chat_message_transcript_entries.sql +20 -0
- package/dist/migrations/chat-transcript-storage.test.ts +211 -0
- package/dist/migrations/github-mcp-provider.test.ts +20 -0
- package/dist/migrations/meta/0143_snapshot.json +25318 -0
- package/dist/migrations/meta/0144_snapshot.json +25336 -0
- package/dist/migrations/meta/0145_snapshot.json +27010 -0
- package/dist/migrations/meta/0146_snapshot.json +27016 -0
- package/dist/migrations/meta/0147_snapshot.json +27016 -0
- package/dist/migrations/meta/_journal.json +42 -0
- package/dist/schema/chat_message_transcript_entries.d.ts +82 -0
- package/dist/schema/chat_message_transcript_entries.d.ts.map +1 -0
- package/dist/schema/chat_message_transcript_entries.js +20 -0
- package/dist/schema/chat_message_transcript_entries.js.map +1 -0
- package/dist/schema/goals.d.ts +2110 -0
- package/dist/schema/goals.d.ts.map +1 -1
- package/dist/schema/goals.js +169 -1
- package/dist/schema/goals.js.map +1 -1
- package/dist/schema/index.d.ts +2 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +2 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/mcp_connections.js +2 -2
- package/dist/schema/mcp_connections.js.map +1 -1
- package/package.json +2 -2
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.test.js
CHANGED
|
@@ -7,13 +7,11 @@ import os from "node:os";
|
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import postgres from "postgres";
|
|
9
9
|
import { afterEach, describe, expect, it } from "vitest";
|
|
10
|
-
import { applyPendingMigrations, ensurePostgresDatabase, ensurePostgresRolePassword, inspectMigrations, reconcilePendingMigrationHistory, } from "./client.js";
|
|
10
|
+
import { applyPendingMigrations, ensurePostgresDatabase, ensurePostgresRolePassword, inspectMigrations, listLegacyColumnRenames, MIGRATION_ADVISORY_LOCK_NAME, normalizeLegacyColumnNames, reconcilePendingMigrationHistory, validatePostMigrationInvariants, } from "./client.js";
|
|
11
|
+
import { createLocalPostgresInstance } from "./local-postgres-provider.js";
|
|
11
12
|
const tempPaths = [];
|
|
12
13
|
const runningInstances = [];
|
|
13
|
-
|
|
14
|
-
const mod = await import("embedded-postgres");
|
|
15
|
-
return mod.default;
|
|
16
|
-
}
|
|
14
|
+
const migrationTestTimeout = (timeoutMs) => process.platform === "win32" ? timeoutMs * 4 : timeoutMs;
|
|
17
15
|
async function getAvailablePort() {
|
|
18
16
|
return await new Promise((resolve, reject) => {
|
|
19
17
|
const server = net.createServer();
|
|
@@ -42,8 +40,7 @@ async function createTempDatabaseWithPassword(password) {
|
|
|
42
40
|
const dataDir = fs.mkdtempSync(path.join(os.tmpdir(), "rudder-db-client-"));
|
|
43
41
|
tempPaths.push(dataDir);
|
|
44
42
|
const port = await getAvailablePort();
|
|
45
|
-
const
|
|
46
|
-
const instance = new EmbeddedPostgres({
|
|
43
|
+
const selection = await createLocalPostgresInstance({
|
|
47
44
|
databaseDir: dataDir,
|
|
48
45
|
user: "rudder",
|
|
49
46
|
password,
|
|
@@ -53,6 +50,7 @@ async function createTempDatabaseWithPassword(password) {
|
|
|
53
50
|
onLog: () => { },
|
|
54
51
|
onError: () => { },
|
|
55
52
|
});
|
|
53
|
+
const instance = selection.instance;
|
|
56
54
|
await instance.initialise();
|
|
57
55
|
await instance.start();
|
|
58
56
|
runningInstances.push(instance);
|
|
@@ -152,20 +150,137 @@ function createCurrentMigrationsFolderThrough(maxIdx) {
|
|
|
152
150
|
return migrationsFolder;
|
|
153
151
|
}
|
|
154
152
|
afterEach(async () => {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
153
|
+
const instances = runningInstances.splice(0).reverse();
|
|
154
|
+
const results = await Promise.allSettled(instances.map((instance) => instance.stop()));
|
|
155
|
+
const failures = results.filter((result) => result.status === "rejected");
|
|
156
|
+
if (failures.length > 0) {
|
|
157
|
+
throw new AggregateError(failures.map((failure) => failure.reason), `Failed to stop ${failures.length} embedded PostgreSQL test instance(s)`);
|
|
160
158
|
}
|
|
161
159
|
while (tempPaths.length > 0) {
|
|
162
160
|
const tempPath = tempPaths.pop();
|
|
163
161
|
if (!tempPath)
|
|
164
162
|
continue;
|
|
165
|
-
fs.
|
|
163
|
+
await fs.promises.rm(tempPath, {
|
|
164
|
+
recursive: true,
|
|
165
|
+
force: true,
|
|
166
|
+
maxRetries: 20,
|
|
167
|
+
retryDelay: 250,
|
|
168
|
+
});
|
|
166
169
|
}
|
|
167
|
-
});
|
|
170
|
+
}, migrationTestTimeout(10_000));
|
|
168
171
|
describe("applyPendingMigrations", () => {
|
|
172
|
+
it("serializes migration attempts with a database advisory lock", async () => {
|
|
173
|
+
const connectionString = await createTempDatabase();
|
|
174
|
+
const blocker = postgres(connectionString, { max: 1, onnotice: () => { } });
|
|
175
|
+
let lockReleased = false;
|
|
176
|
+
try {
|
|
177
|
+
await blocker `
|
|
178
|
+
SELECT pg_advisory_lock(
|
|
179
|
+
hashtext(current_database()),
|
|
180
|
+
hashtext(${MIGRATION_ADVISORY_LOCK_NAME})
|
|
181
|
+
)
|
|
182
|
+
`;
|
|
183
|
+
const migration = applyPendingMigrations(connectionString);
|
|
184
|
+
const initialOutcome = await Promise.race([
|
|
185
|
+
migration.then(() => "completed"),
|
|
186
|
+
new Promise((resolve) => setTimeout(() => resolve("waiting"), 150)),
|
|
187
|
+
]);
|
|
188
|
+
expect(initialOutcome).toBe("waiting");
|
|
189
|
+
await blocker `
|
|
190
|
+
SELECT pg_advisory_unlock(
|
|
191
|
+
hashtext(current_database()),
|
|
192
|
+
hashtext(${MIGRATION_ADVISORY_LOCK_NAME})
|
|
193
|
+
)
|
|
194
|
+
`;
|
|
195
|
+
lockReleased = true;
|
|
196
|
+
await migration;
|
|
197
|
+
}
|
|
198
|
+
finally {
|
|
199
|
+
if (!lockReleased) {
|
|
200
|
+
await blocker `
|
|
201
|
+
SELECT pg_advisory_unlock(
|
|
202
|
+
hashtext(current_database()),
|
|
203
|
+
hashtext(${MIGRATION_ADVISORY_LOCK_NAME})
|
|
204
|
+
)
|
|
205
|
+
`;
|
|
206
|
+
}
|
|
207
|
+
await blocker.end();
|
|
208
|
+
}
|
|
209
|
+
}, migrationTestTimeout(30_000));
|
|
210
|
+
it("reports journal, core table, foreign key, and index invariants after migration", async () => {
|
|
211
|
+
const connectionString = await createTempDatabase();
|
|
212
|
+
await applyPendingMigrations(connectionString);
|
|
213
|
+
const report = await validatePostMigrationInvariants(connectionString);
|
|
214
|
+
expect(report).toMatchObject({
|
|
215
|
+
valid: true,
|
|
216
|
+
migrationJournalSchema: "drizzle",
|
|
217
|
+
organizationsTablePresent: true,
|
|
218
|
+
organizationsPrimaryKeyValid: true,
|
|
219
|
+
unvalidatedForeignKeys: [],
|
|
220
|
+
invalidIndexes: [],
|
|
221
|
+
issues: [],
|
|
222
|
+
});
|
|
223
|
+
expect(report.manifestFingerprint).toMatch(/^[0-9a-f]{64}$/);
|
|
224
|
+
expect(report.expectedMigrationCount).toBeGreaterThan(0);
|
|
225
|
+
expect(report.migrationJournalEntryCount).toBeGreaterThan(0);
|
|
226
|
+
expect(report.foreignKeyCount).toBeGreaterThan(0);
|
|
227
|
+
const journalTamperSql = postgres(connectionString, { max: 1, onnotice: () => { } });
|
|
228
|
+
try {
|
|
229
|
+
await journalTamperSql.unsafe(`
|
|
230
|
+
UPDATE "drizzle"."__drizzle_migrations"
|
|
231
|
+
SET "hash" = repeat('0', 64)
|
|
232
|
+
WHERE "id" = (SELECT min("id") FROM "drizzle"."__drizzle_migrations")
|
|
233
|
+
`);
|
|
234
|
+
}
|
|
235
|
+
finally {
|
|
236
|
+
await journalTamperSql.end();
|
|
237
|
+
}
|
|
238
|
+
const tamperedReport = await validatePostMigrationInvariants(connectionString);
|
|
239
|
+
expect(tamperedReport.valid).toBe(false);
|
|
240
|
+
expect(tamperedReport.issues).toContainEqual(expect.objectContaining({
|
|
241
|
+
code: "migration_journal_invalid",
|
|
242
|
+
}));
|
|
243
|
+
const unknownLegacyConnectionString = await createTempDatabase();
|
|
244
|
+
await applyPendingMigrations(unknownLegacyConnectionString);
|
|
245
|
+
const legacyJournalTamperSql = postgres(unknownLegacyConnectionString, { max: 1, onnotice: () => { } });
|
|
246
|
+
try {
|
|
247
|
+
await legacyJournalTamperSql.unsafe(`
|
|
248
|
+
INSERT INTO "drizzle"."__drizzle_migrations" ("hash", "created_at")
|
|
249
|
+
SELECT 'legacy-corrupt', COALESCE(MAX("created_at"), 0) + 1
|
|
250
|
+
FROM "drizzle"."__drizzle_migrations"
|
|
251
|
+
`);
|
|
252
|
+
}
|
|
253
|
+
finally {
|
|
254
|
+
await legacyJournalTamperSql.end();
|
|
255
|
+
}
|
|
256
|
+
const unknownLegacyReport = await validatePostMigrationInvariants(unknownLegacyConnectionString);
|
|
257
|
+
expect(unknownLegacyReport.valid).toBe(false);
|
|
258
|
+
expect(unknownLegacyReport.issues).toContainEqual(expect.objectContaining({
|
|
259
|
+
code: "migration_journal_invalid",
|
|
260
|
+
message: expect.stringContaining("does not match any current migration manifest entry"),
|
|
261
|
+
}));
|
|
262
|
+
const sql = postgres(connectionString, { max: 1, onnotice: () => { } });
|
|
263
|
+
try {
|
|
264
|
+
await sql.unsafe(`CREATE TABLE "migration_invariant_parent" ("id" integer PRIMARY KEY)`);
|
|
265
|
+
await sql.unsafe(`CREATE TABLE "migration_invariant_child" ("parent_id" integer)`);
|
|
266
|
+
await sql.unsafe(`
|
|
267
|
+
ALTER TABLE "migration_invariant_child"
|
|
268
|
+
ADD CONSTRAINT "migration_invariant_child_parent_fk"
|
|
269
|
+
FOREIGN KEY ("parent_id") REFERENCES "migration_invariant_parent"("id") NOT VALID
|
|
270
|
+
`);
|
|
271
|
+
}
|
|
272
|
+
finally {
|
|
273
|
+
await sql.end();
|
|
274
|
+
}
|
|
275
|
+
const invalidReport = await validatePostMigrationInvariants(connectionString);
|
|
276
|
+
expect(invalidReport.valid).toBe(false);
|
|
277
|
+
expect(invalidReport.unvalidatedForeignKeys).toEqual([
|
|
278
|
+
"migration_invariant_child.migration_invariant_child_parent_fk",
|
|
279
|
+
]);
|
|
280
|
+
expect(invalidReport.issues).toContainEqual(expect.objectContaining({
|
|
281
|
+
code: "foreign_keys_not_validated",
|
|
282
|
+
}));
|
|
283
|
+
}, migrationTestTimeout(30_000));
|
|
169
284
|
it("normalizes legacy embedded cluster passwords back to rudder", async () => {
|
|
170
285
|
const legacyConnectionString = await createTempDatabaseWithPassword("password");
|
|
171
286
|
const legacyUrl = new URL(legacyConnectionString);
|
|
@@ -190,7 +305,7 @@ describe("applyPendingMigrations", () => {
|
|
|
190
305
|
finally {
|
|
191
306
|
await sql.end();
|
|
192
307
|
}
|
|
193
|
-
}, 20_000);
|
|
308
|
+
}, migrationTestTimeout(20_000));
|
|
194
309
|
it("rebuilds schema when migration journal exists but core tables are missing", async () => {
|
|
195
310
|
const connectionString = await createTempDatabase();
|
|
196
311
|
await applyPendingMigrations(connectionString);
|
|
@@ -223,7 +338,7 @@ describe("applyPendingMigrations", () => {
|
|
|
223
338
|
finally {
|
|
224
339
|
await verifySql.end();
|
|
225
340
|
}
|
|
226
|
-
}, 20_000);
|
|
341
|
+
}, migrationTestTimeout(20_000));
|
|
227
342
|
it("applies the organization schema on a fresh database", async () => {
|
|
228
343
|
const connectionString = await createTempDatabase();
|
|
229
344
|
await applyPendingMigrations(connectionString);
|
|
@@ -246,7 +361,7 @@ describe("applyPendingMigrations", () => {
|
|
|
246
361
|
finally {
|
|
247
362
|
await verifySql.end();
|
|
248
363
|
}
|
|
249
|
-
}, 20_000);
|
|
364
|
+
}, migrationTestTimeout(20_000));
|
|
250
365
|
it("completes migration 0100 when an older version already created the alias table", async () => {
|
|
251
366
|
const connectionString = await createTempDatabase();
|
|
252
367
|
await applyPendingMigrations(connectionString);
|
|
@@ -333,7 +448,7 @@ describe("applyPendingMigrations", () => {
|
|
|
333
448
|
finally {
|
|
334
449
|
await verifySql.end();
|
|
335
450
|
}
|
|
336
|
-
}, 20_000);
|
|
451
|
+
}, migrationTestTimeout(20_000));
|
|
337
452
|
it("reapplies consolidated migration 0102 over the legacy 0102-0104 feature shape", async () => {
|
|
338
453
|
const connectionString = await createTempDatabase();
|
|
339
454
|
const { manifest, migrationsFolder } = createLegacyTerminalMigrationsFolder();
|
|
@@ -429,6 +544,12 @@ describe("applyPendingMigrations", () => {
|
|
|
429
544
|
"0140_faulty_kitty_pryde.sql",
|
|
430
545
|
"0141_product_analytics_revision_origin.sql",
|
|
431
546
|
"0142_product_analytics_quality_counters.sql",
|
|
547
|
+
"0143_goal_contract.sql",
|
|
548
|
+
"0144_eminent_umar.sql",
|
|
549
|
+
"0145_public_nehzno.sql",
|
|
550
|
+
"0146_medical_roulette.sql",
|
|
551
|
+
"0147_github_mcp_provider.sql",
|
|
552
|
+
"0148_chat_message_transcript_entries.sql",
|
|
432
553
|
],
|
|
433
554
|
reason: "pending-migrations",
|
|
434
555
|
});
|
|
@@ -488,7 +609,7 @@ describe("applyPendingMigrations", () => {
|
|
|
488
609
|
finally {
|
|
489
610
|
await verifySql.end();
|
|
490
611
|
}
|
|
491
|
-
},
|
|
612
|
+
}, migrationTestTimeout(40_000));
|
|
492
613
|
it("upgrades databases that applied the legacy 0102 chat runtime controls migration", async () => {
|
|
493
614
|
const connectionString = await createTempDatabase();
|
|
494
615
|
const { historicalHash, migrationsFolder } = createLegacyChatRuntimeControlsMigrationsFolder();
|
|
@@ -586,6 +707,12 @@ describe("applyPendingMigrations", () => {
|
|
|
586
707
|
"0140_faulty_kitty_pryde.sql",
|
|
587
708
|
"0141_product_analytics_revision_origin.sql",
|
|
588
709
|
"0142_product_analytics_quality_counters.sql",
|
|
710
|
+
"0143_goal_contract.sql",
|
|
711
|
+
"0144_eminent_umar.sql",
|
|
712
|
+
"0145_public_nehzno.sql",
|
|
713
|
+
"0146_medical_roulette.sql",
|
|
714
|
+
"0147_github_mcp_provider.sql",
|
|
715
|
+
"0148_chat_message_transcript_entries.sql",
|
|
589
716
|
],
|
|
590
717
|
reason: "pending-migrations",
|
|
591
718
|
});
|
|
@@ -620,7 +747,7 @@ describe("applyPendingMigrations", () => {
|
|
|
620
747
|
finally {
|
|
621
748
|
await verifySql.end();
|
|
622
749
|
}
|
|
623
|
-
},
|
|
750
|
+
}, migrationTestTimeout(40_000));
|
|
624
751
|
it("upgrades 0102 heartbeat runs with durable session lineage columns", async () => {
|
|
625
752
|
const connectionString = await createTempDatabase();
|
|
626
753
|
const migrationsThrough0102 = createCurrentMigrationsFolderThrough(102);
|
|
@@ -683,7 +810,7 @@ describe("applyPendingMigrations", () => {
|
|
|
683
810
|
finally {
|
|
684
811
|
await verifySql.end();
|
|
685
812
|
}
|
|
686
|
-
},
|
|
813
|
+
}, migrationTestTimeout(40_000));
|
|
687
814
|
it("reconciles legacy chat control states before creating active-generation constraints", async () => {
|
|
688
815
|
const connectionString = await createTempDatabase();
|
|
689
816
|
const migrationsThrough0103 = createCurrentMigrationsFolderThrough(103);
|
|
@@ -947,7 +1074,7 @@ describe("applyPendingMigrations", () => {
|
|
|
947
1074
|
finally {
|
|
948
1075
|
await verifySql.end();
|
|
949
1076
|
}
|
|
950
|
-
}, 20_000);
|
|
1077
|
+
}, migrationTestTimeout(20_000));
|
|
951
1078
|
it("rolls back migration 0100 when a legacy alias conflicts with another organization route", async () => {
|
|
952
1079
|
const connectionString = await createTempDatabase();
|
|
953
1080
|
await applyPendingMigrations(connectionString);
|
|
@@ -1021,7 +1148,7 @@ describe("applyPendingMigrations", () => {
|
|
|
1021
1148
|
finally {
|
|
1022
1149
|
await verifySql.end();
|
|
1023
1150
|
}
|
|
1024
|
-
}, 20_000);
|
|
1151
|
+
}, migrationTestTimeout(20_000));
|
|
1025
1152
|
it("replays migration 0044 safely when its schema changes already exist", async () => {
|
|
1026
1153
|
const connectionString = await createTempDatabase();
|
|
1027
1154
|
await applyPendingMigrations(connectionString);
|
|
@@ -1050,7 +1177,7 @@ describe("applyPendingMigrations", () => {
|
|
|
1050
1177
|
await applyPendingMigrations(connectionString);
|
|
1051
1178
|
const finalState = await inspectMigrations(connectionString);
|
|
1052
1179
|
expect(finalState.status).toBe("upToDate");
|
|
1053
|
-
}, 20_000);
|
|
1180
|
+
}, migrationTestTimeout(20_000));
|
|
1054
1181
|
it("replays migration 0063 safely when the experimental settings column is already absent", async () => {
|
|
1055
1182
|
const connectionString = await createTempDatabase();
|
|
1056
1183
|
await applyPendingMigrations(connectionString);
|
|
@@ -1079,7 +1206,7 @@ describe("applyPendingMigrations", () => {
|
|
|
1079
1206
|
await applyPendingMigrations(connectionString);
|
|
1080
1207
|
const finalState = await inspectMigrations(connectionString);
|
|
1081
1208
|
expect(finalState.status).toBe("upToDate");
|
|
1082
|
-
}, 20_000);
|
|
1209
|
+
}, migrationTestTimeout(20_000));
|
|
1083
1210
|
it("repairs missing migration history when the schema changes are still directly verifiable", async () => {
|
|
1084
1211
|
const connectionString = await createTempDatabase();
|
|
1085
1212
|
await applyPendingMigrations(connectionString);
|
|
@@ -1113,7 +1240,7 @@ describe("applyPendingMigrations", () => {
|
|
|
1113
1240
|
await applyPendingMigrations(connectionString);
|
|
1114
1241
|
const finalState = await inspectMigrations(connectionString);
|
|
1115
1242
|
expect(finalState.status).toBe("upToDate");
|
|
1116
|
-
}, 20_000);
|
|
1243
|
+
}, migrationTestTimeout(20_000));
|
|
1117
1244
|
it("normalizes legacy adapter column names before using an up-to-date migration journal", async () => {
|
|
1118
1245
|
const connectionString = await createTempDatabase();
|
|
1119
1246
|
await applyPendingMigrations(connectionString);
|
|
@@ -1132,6 +1259,15 @@ describe("applyPendingMigrations", () => {
|
|
|
1132
1259
|
}
|
|
1133
1260
|
const driftedState = await inspectMigrations(connectionString);
|
|
1134
1261
|
expect(driftedState.status).toBe("upToDate");
|
|
1262
|
+
await expect(listLegacyColumnRenames(connectionString)).resolves.toEqual([
|
|
1263
|
+
"agents.adapter_type->agent_runtime_type",
|
|
1264
|
+
"agents.adapter_config->agent_runtime_config",
|
|
1265
|
+
"agent_runtime_state.adapter_type->agent_runtime_type",
|
|
1266
|
+
"agent_task_sessions.adapter_type->agent_runtime_type",
|
|
1267
|
+
"join_requests.adapter_type->agent_runtime_type",
|
|
1268
|
+
"finance_events.execution_adapter_type->execution_agent_runtime_type",
|
|
1269
|
+
"issues.assignee_adapter_overrides->assignee_agent_runtime_overrides",
|
|
1270
|
+
]);
|
|
1135
1271
|
await applyPendingMigrations(connectionString);
|
|
1136
1272
|
const verifySql = postgres(connectionString, { max: 1, onnotice: () => { } });
|
|
1137
1273
|
try {
|
|
@@ -1164,7 +1300,7 @@ describe("applyPendingMigrations", () => {
|
|
|
1164
1300
|
finally {
|
|
1165
1301
|
await verifySql.end();
|
|
1166
1302
|
}
|
|
1167
|
-
}, 20_000);
|
|
1303
|
+
}, migrationTestTimeout(20_000));
|
|
1168
1304
|
it("keeps a missing migration pending until the schema change really exists", async () => {
|
|
1169
1305
|
const connectionString = await createTempDatabase();
|
|
1170
1306
|
await applyPendingMigrations(connectionString);
|
|
@@ -1209,7 +1345,59 @@ describe("applyPendingMigrations", () => {
|
|
|
1209
1345
|
finally {
|
|
1210
1346
|
await verifySql.end();
|
|
1211
1347
|
}
|
|
1212
|
-
}, 20_000);
|
|
1348
|
+
}, migrationTestTimeout(20_000));
|
|
1349
|
+
it("rolls back every legacy column rename when a later rename fails", async () => {
|
|
1350
|
+
const connectionString = await createTempDatabase();
|
|
1351
|
+
await applyPendingMigrations(connectionString);
|
|
1352
|
+
const sql = postgres(connectionString, { max: 1, onnotice: () => { } });
|
|
1353
|
+
try {
|
|
1354
|
+
await sql.unsafe(`ALTER TABLE "agents" RENAME COLUMN "agent_runtime_type" TO "adapter_type"`);
|
|
1355
|
+
await sql.unsafe(`ALTER TABLE "agents" RENAME COLUMN "agent_runtime_config" TO "adapter_config"`);
|
|
1356
|
+
await sql.unsafe(`ALTER TABLE "agent_runtime_state" RENAME COLUMN "agent_runtime_type" TO "adapter_type"`);
|
|
1357
|
+
await sql.unsafe(`
|
|
1358
|
+
CREATE FUNCTION fail_legacy_column_rename() RETURNS event_trigger
|
|
1359
|
+
LANGUAGE plpgsql AS $$
|
|
1360
|
+
BEGIN
|
|
1361
|
+
IF current_query() LIKE '%"agent_runtime_state"%' THEN
|
|
1362
|
+
RAISE EXCEPTION 'intentional legacy rename failure';
|
|
1363
|
+
END IF;
|
|
1364
|
+
END;
|
|
1365
|
+
$$
|
|
1366
|
+
`);
|
|
1367
|
+
await sql.unsafe(`
|
|
1368
|
+
CREATE EVENT TRIGGER fail_legacy_column_rename_trigger
|
|
1369
|
+
ON ddl_command_start
|
|
1370
|
+
EXECUTE FUNCTION fail_legacy_column_rename()
|
|
1371
|
+
`);
|
|
1372
|
+
}
|
|
1373
|
+
finally {
|
|
1374
|
+
await sql.end();
|
|
1375
|
+
}
|
|
1376
|
+
await expect(normalizeLegacyColumnNames(connectionString)).rejects.toThrow("intentional legacy rename failure");
|
|
1377
|
+
const cleanupSql = postgres(connectionString, { max: 1, onnotice: () => { } });
|
|
1378
|
+
try {
|
|
1379
|
+
await cleanupSql.unsafe(`DROP EVENT TRIGGER fail_legacy_column_rename_trigger`);
|
|
1380
|
+
await cleanupSql.unsafe(`DROP FUNCTION fail_legacy_column_rename()`);
|
|
1381
|
+
const columns = await cleanupSql.unsafe(`
|
|
1382
|
+
SELECT table_name, column_name
|
|
1383
|
+
FROM information_schema.columns
|
|
1384
|
+
WHERE table_schema = 'public'
|
|
1385
|
+
AND table_name IN ('agents', 'agent_runtime_state')
|
|
1386
|
+
AND column_name IN (
|
|
1387
|
+
'agent_runtime_type', 'agent_runtime_config', 'adapter_type', 'adapter_config'
|
|
1388
|
+
)
|
|
1389
|
+
ORDER BY table_name, column_name
|
|
1390
|
+
`);
|
|
1391
|
+
expect(columns).toEqual([
|
|
1392
|
+
{ table_name: "agent_runtime_state", column_name: "adapter_type" },
|
|
1393
|
+
{ table_name: "agents", column_name: "adapter_config" },
|
|
1394
|
+
{ table_name: "agents", column_name: "adapter_type" },
|
|
1395
|
+
]);
|
|
1396
|
+
}
|
|
1397
|
+
finally {
|
|
1398
|
+
await cleanupSql.end();
|
|
1399
|
+
}
|
|
1400
|
+
}, migrationTestTimeout(20_000));
|
|
1213
1401
|
it("enforces a unique board_api_keys.key_hash after migration 0044", async () => {
|
|
1214
1402
|
const connectionString = await createTempDatabase();
|
|
1215
1403
|
await applyPendingMigrations(connectionString);
|
|
@@ -1231,6 +1419,6 @@ describe("applyPendingMigrations", () => {
|
|
|
1231
1419
|
finally {
|
|
1232
1420
|
await sql.end();
|
|
1233
1421
|
}
|
|
1234
|
-
}, 20_000);
|
|
1422
|
+
}, migrationTestTimeout(20_000));
|
|
1235
1423
|
});
|
|
1236
1424
|
//# sourceMappingURL=client.test.js.map
|