@neverinfamous/postgres-mcp 2.1.0 → 2.2.0
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/README.md +58 -52
- package/dist/__tests__/benchmarks/codemode.bench.js +3 -3
- package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -1
- package/dist/__tests__/benchmarks/connection-pool.bench.js +3 -3
- package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -1
- package/dist/__tests__/benchmarks/introspection-migration.bench.d.ts +11 -0
- package/dist/__tests__/benchmarks/introspection-migration.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/introspection-migration.bench.js +143 -0
- package/dist/__tests__/benchmarks/introspection-migration.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/resource-prompts.bench.js +0 -64
- package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -1
- package/dist/__tests__/benchmarks/schema-parsing.bench.js +4 -4
- package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -1
- package/dist/__tests__/benchmarks/tool-filtering.bench.js +17 -8
- package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -1
- package/dist/adapters/DatabaseAdapter.d.ts +0 -4
- package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
- package/dist/adapters/DatabaseAdapter.js +0 -13
- package/dist/adapters/DatabaseAdapter.js.map +1 -1
- package/dist/adapters/postgresql/PostgresAdapter.d.ts +0 -4
- package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
- package/dist/adapters/postgresql/PostgresAdapter.js +3 -6
- package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
- package/dist/adapters/postgresql/schemas/core/queries.d.ts +4 -4
- package/dist/adapters/postgresql/schemas/introspection.d.ts +14 -37
- package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/introspection.js +71 -29
- package/dist/adapters/postgresql/schemas/introspection.js.map +1 -1
- package/dist/adapters/postgresql/schemas/vector.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/vector.js +2 -4
- package/dist/adapters/postgresql/schemas/vector.js.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/analysis.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/analysis.js +158 -127
- package/dist/adapters/postgresql/tools/introspection/analysis.js.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/graph.d.ts +1 -1
- package/dist/adapters/postgresql/tools/introspection/graph.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/graph.js +12 -29
- package/dist/adapters/postgresql/tools/introspection/graph.js.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/index.d.ts +9 -7
- package/dist/adapters/postgresql/tools/introspection/index.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/index.js +9 -14
- package/dist/adapters/postgresql/tools/introspection/index.js.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/migration.d.ts +1 -1
- package/dist/adapters/postgresql/tools/introspection/migration.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/introspection/migration.js +62 -86
- package/dist/adapters/postgresql/tools/introspection/migration.js.map +1 -1
- package/dist/adapters/postgresql/tools/migration/index.d.ts +15 -0
- package/dist/adapters/postgresql/tools/migration/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/migration/index.js +23 -0
- package/dist/adapters/postgresql/tools/migration/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/anomaly-detection.d.ts +18 -0
- package/dist/adapters/postgresql/tools/performance/anomaly-detection.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/anomaly-detection.js +533 -0
- package/dist/adapters/postgresql/tools/performance/anomaly-detection.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/diagnostics.d.ts +11 -0
- package/dist/adapters/postgresql/tools/performance/diagnostics.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/diagnostics.js +332 -0
- package/dist/adapters/postgresql/tools/performance/diagnostics.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/index.d.ts +1 -1
- package/dist/adapters/postgresql/tools/performance/index.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/performance/index.js +7 -1
- package/dist/adapters/postgresql/tools/performance/index.js.map +1 -1
- package/dist/auth/scopes.d.ts.map +1 -1
- package/dist/auth/scopes.js +2 -0
- package/dist/auth/scopes.js.map +1 -1
- package/dist/cli.js +6 -0
- package/dist/cli.js.map +1 -1
- package/dist/codemode/api/index.d.ts +1 -0
- package/dist/codemode/api/index.d.ts.map +1 -1
- package/dist/codemode/api/index.js +3 -0
- package/dist/codemode/api/index.js.map +1 -1
- package/dist/codemode/api/maps.d.ts.map +1 -1
- package/dist/codemode/api/maps.js +18 -12
- package/dist/codemode/api/maps.js.map +1 -1
- package/dist/filtering/ToolConstants.d.ts +11 -11
- package/dist/filtering/ToolConstants.d.ts.map +1 -1
- package/dist/filtering/ToolConstants.js +28 -15
- package/dist/filtering/ToolConstants.js.map +1 -1
- package/dist/filtering/ToolFilter.d.ts +0 -32
- package/dist/filtering/ToolFilter.d.ts.map +1 -1
- package/dist/filtering/ToolFilter.js +0 -43
- package/dist/filtering/ToolFilter.js.map +1 -1
- package/dist/transports/http.d.ts +12 -0
- package/dist/transports/http.d.ts.map +1 -1
- package/dist/transports/http.js +19 -1
- package/dist/transports/http.js.map +1 -1
- package/dist/types/filtering.d.ts +1 -1
- package/dist/types/filtering.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/mcp.d.ts +0 -21
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/schema.d.ts +0 -79
- package/dist/types/schema.d.ts.map +1 -1
- package/dist/utils/fts-config.d.ts +0 -6
- package/dist/utils/fts-config.d.ts.map +1 -1
- package/dist/utils/fts-config.js +1 -1
- package/dist/utils/fts-config.js.map +1 -1
- package/dist/utils/icons.d.ts.map +1 -1
- package/dist/utils/icons.js +5 -0
- package/dist/utils/icons.js.map +1 -1
- package/dist/utils/identifiers.d.ts.map +1 -1
- package/dist/utils/identifiers.js +6 -6
- package/dist/utils/identifiers.js.map +1 -1
- package/dist/utils/progress-utils.d.ts +1 -12
- package/dist/utils/progress-utils.d.ts.map +1 -1
- package/dist/utils/progress-utils.js +0 -18
- package/dist/utils/progress-utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/utils/promptGenerator.d.ts +0 -20
- package/dist/utils/promptGenerator.d.ts.map +0 -1
- package/dist/utils/promptGenerator.js +0 -81
- package/dist/utils/promptGenerator.js.map +0 -1
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* PostgreSQL Introspection Tools
|
|
3
3
|
*
|
|
4
|
-
* Agent-optimized database analysis tools for dependency graphs,
|
|
5
|
-
* cascade simulation, schema snapshots,
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* Agent-optimized read-only database analysis tools for dependency graphs,
|
|
5
|
+
* cascade simulation, schema snapshots, constraint analysis, and
|
|
6
|
+
* DDL migration risk analysis (pg_migration_risks).
|
|
7
|
+
* 6 tools total.
|
|
8
|
+
*
|
|
9
|
+
* Note: Migration *tracking* tools (init, record, apply, rollback, history,
|
|
10
|
+
* status) are in the separate "migration" group — see ./migration.ts.
|
|
8
11
|
*/
|
|
9
12
|
import type { PostgresAdapter } from "../../PostgresAdapter.js";
|
|
10
13
|
import type { ToolDefinition } from "../../../../types/index.js";
|
|
11
14
|
import { createDependencyGraphTool, createTopologicalSortTool, createCascadeSimulatorTool } from "./graph.js";
|
|
12
15
|
import { createSchemaSnapshotTool, createConstraintAnalysisTool, createMigrationRisksTool } from "./analysis.js";
|
|
13
|
-
import { createMigrationInitTool, createMigrationRecordTool, createMigrationApplyTool, createMigrationRollbackTool, createMigrationHistoryTool, createMigrationStatusTool } from "./migration.js";
|
|
14
16
|
/**
|
|
15
|
-
* Get all introspection tools
|
|
17
|
+
* Get all introspection tools (read-only analysis)
|
|
16
18
|
*/
|
|
17
19
|
export declare function getIntrospectionTools(adapter: PostgresAdapter): ToolDefinition[];
|
|
18
|
-
export { createDependencyGraphTool, createTopologicalSortTool, createCascadeSimulatorTool, createSchemaSnapshotTool, createConstraintAnalysisTool, createMigrationRisksTool,
|
|
20
|
+
export { createDependencyGraphTool, createTopologicalSortTool, createCascadeSimulatorTool, createSchemaSnapshotTool, createConstraintAnalysisTool, createMigrationRisksTool, };
|
|
19
21
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACzB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,eAAe,GACvB,cAAc,EAAE,CASlB;AAGD,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,GACzB,CAAC"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* PostgreSQL Introspection Tools
|
|
3
3
|
*
|
|
4
|
-
* Agent-optimized database analysis tools for dependency graphs,
|
|
5
|
-
* cascade simulation, schema snapshots,
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* Agent-optimized read-only database analysis tools for dependency graphs,
|
|
5
|
+
* cascade simulation, schema snapshots, constraint analysis, and
|
|
6
|
+
* DDL migration risk analysis (pg_migration_risks).
|
|
7
|
+
* 6 tools total.
|
|
8
|
+
*
|
|
9
|
+
* Note: Migration *tracking* tools (init, record, apply, rollback, history,
|
|
10
|
+
* status) are in the separate "migration" group — see ./migration.ts.
|
|
8
11
|
*/
|
|
9
12
|
// Graph analysis tools
|
|
10
13
|
import { createDependencyGraphTool, createTopologicalSortTool, createCascadeSimulatorTool, } from "./graph.js";
|
|
11
14
|
// Schema analysis tools
|
|
12
15
|
import { createSchemaSnapshotTool, createConstraintAnalysisTool, createMigrationRisksTool, } from "./analysis.js";
|
|
13
|
-
// Migration tracking tools
|
|
14
|
-
import { createMigrationInitTool, createMigrationRecordTool, createMigrationApplyTool, createMigrationRollbackTool, createMigrationHistoryTool, createMigrationStatusTool, } from "./migration.js";
|
|
15
16
|
/**
|
|
16
|
-
* Get all introspection tools
|
|
17
|
+
* Get all introspection tools (read-only analysis)
|
|
17
18
|
*/
|
|
18
19
|
export function getIntrospectionTools(adapter) {
|
|
19
20
|
return [
|
|
@@ -23,14 +24,8 @@ export function getIntrospectionTools(adapter) {
|
|
|
23
24
|
createSchemaSnapshotTool(adapter),
|
|
24
25
|
createConstraintAnalysisTool(adapter),
|
|
25
26
|
createMigrationRisksTool(adapter),
|
|
26
|
-
createMigrationInitTool(adapter),
|
|
27
|
-
createMigrationRecordTool(adapter),
|
|
28
|
-
createMigrationApplyTool(adapter),
|
|
29
|
-
createMigrationRollbackTool(adapter),
|
|
30
|
-
createMigrationHistoryTool(adapter),
|
|
31
|
-
createMigrationStatusTool(adapter),
|
|
32
27
|
];
|
|
33
28
|
}
|
|
34
29
|
// Re-export individual tool creators for direct imports
|
|
35
|
-
export { createDependencyGraphTool, createTopologicalSortTool, createCascadeSimulatorTool, createSchemaSnapshotTool, createConstraintAnalysisTool, createMigrationRisksTool,
|
|
30
|
+
export { createDependencyGraphTool, createTopologicalSortTool, createCascadeSimulatorTool, createSchemaSnapshotTool, createConstraintAnalysisTool, createMigrationRisksTool, };
|
|
36
31
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,uBAAuB;AACvB,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAEpB,wBAAwB;AACxB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAwB;IAExB,OAAO;QACL,yBAAyB,CAAC,OAAO,CAAC;QAClC,yBAAyB,CAAC,OAAO,CAAC;QAClC,0BAA0B,CAAC,OAAO,CAAC;QACnC,wBAAwB,CAAC,OAAO,CAAC;QACjC,4BAA4B,CAAC,OAAO,CAAC;QACrC,wBAAwB,CAAC,OAAO,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,wDAAwD;AACxD,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,GACzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/migration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/migration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AAqJpC,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,eAAe,GACvB,cAAc,CAgEhB;AAMD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CA8DhB;AAMD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,GACvB,cAAc,CAyGhB;AAMD,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,GACvB,cAAc,CA+HhB;AAMD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,eAAe,GACvB,cAAc,CAgFhB;AAMD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CA2GhB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* PostgreSQL
|
|
2
|
+
* PostgreSQL Migration Tools — Schema Version Tracking
|
|
3
3
|
*
|
|
4
4
|
* Migration init, record, apply, rollback, history, and status tools.
|
|
5
5
|
* 6 tools total.
|
|
@@ -8,6 +8,7 @@ import { createHash } from "node:crypto";
|
|
|
8
8
|
import { readOnly, write, destructive } from "../../../../utils/annotations.js";
|
|
9
9
|
import { getToolIcons } from "../../../../utils/icons.js";
|
|
10
10
|
import { formatPostgresError } from "../core/error-helpers.js";
|
|
11
|
+
import { sanitizeIdentifier } from "../../../../utils/identifiers.js";
|
|
11
12
|
import { MigrationInitSchemaBase, MigrationInitSchema, MigrationRecordSchemaBase, MigrationRecordSchema, MigrationApplySchemaBase, MigrationApplySchema, MigrationRollbackSchemaBase, MigrationRollbackSchema, MigrationHistorySchemaBase, MigrationHistorySchema, MigrationStatusSchemaBase, MigrationStatusSchema,
|
|
12
13
|
// Output schemas
|
|
13
14
|
MigrationInitOutputSchema, MigrationRecordOutputSchema, MigrationApplyOutputSchema, MigrationRollbackOutputSchema, MigrationHistoryOutputSchema, MigrationStatusOutputSchema, } from "../../schemas/index.js";
|
|
@@ -15,8 +16,15 @@ MigrationInitOutputSchema, MigrationRecordOutputSchema, MigrationApplyOutputSche
|
|
|
15
16
|
// Migration tracking — shared helpers
|
|
16
17
|
// =============================================================================
|
|
17
18
|
const TRACKING_TABLE = "_mcp_schema_versions";
|
|
18
|
-
|
|
19
|
-
CREATE TABLE
|
|
19
|
+
/**
|
|
20
|
+
* Build the CREATE TABLE DDL for the tracking table.
|
|
21
|
+
* Accepts a pre-computed qualified table name (e.g. `_mcp_schema_versions`
|
|
22
|
+
* or `"custom_schema"."_mcp_schema_versions"`) so the caller controls
|
|
23
|
+
* schema qualification without fragile string replacement.
|
|
24
|
+
*/
|
|
25
|
+
function buildCreateTrackingTableSql(qualifiedTable) {
|
|
26
|
+
return `
|
|
27
|
+
CREATE TABLE IF NOT EXISTS ${qualifiedTable} (
|
|
20
28
|
id SERIAL PRIMARY KEY,
|
|
21
29
|
version VARCHAR(50) NOT NULL,
|
|
22
30
|
description TEXT,
|
|
@@ -29,8 +37,9 @@ CREATE TABLE IF NOT EXISTS ${TRACKING_TABLE} (
|
|
|
29
37
|
status VARCHAR(20) NOT NULL DEFAULT 'applied',
|
|
30
38
|
CONSTRAINT valid_status CHECK (status IN ('applied', 'rolled_back', 'failed'))
|
|
31
39
|
)`;
|
|
40
|
+
}
|
|
32
41
|
/**
|
|
33
|
-
* Ensure the _mcp_schema_versions table exists.
|
|
42
|
+
* Ensure the _mcp_schema_versions table exists in the public schema.
|
|
34
43
|
* Returns true if the table was newly created, false if it already existed.
|
|
35
44
|
*/
|
|
36
45
|
async function ensureTrackingTable(adapter) {
|
|
@@ -41,13 +50,37 @@ async function ensureTrackingTable(adapter) {
|
|
|
41
50
|
const firstRow = (check.rows ?? [])[0];
|
|
42
51
|
const existed = firstRow?.["table_exists"] === true;
|
|
43
52
|
if (!existed) {
|
|
44
|
-
await adapter.executeQuery(
|
|
53
|
+
await adapter.executeQuery(buildCreateTrackingTableSql(TRACKING_TABLE));
|
|
45
54
|
}
|
|
46
55
|
return !existed;
|
|
47
56
|
}
|
|
48
57
|
function hashMigrationSql(sql) {
|
|
49
58
|
return createHash("sha256").update(sql).digest("hex");
|
|
50
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Check for an already-applied migration with the same SQL hash.
|
|
62
|
+
* Returns an error result object if duplicate found, or null if clear.
|
|
63
|
+
*/
|
|
64
|
+
async function checkDuplicateHash(adapter, migrationSql) {
|
|
65
|
+
const migrationHash = hashMigrationSql(migrationSql);
|
|
66
|
+
const dupCheck = await adapter.executeQuery(`SELECT id, version, status FROM ${TRACKING_TABLE}
|
|
67
|
+
WHERE migration_hash = $1 AND status = 'applied'`, [migrationHash]);
|
|
68
|
+
const dupRows = dupCheck.rows ?? [];
|
|
69
|
+
if (dupRows.length > 0) {
|
|
70
|
+
const dup = dupRows[0] ?? {};
|
|
71
|
+
const dupId = dup["id"];
|
|
72
|
+
const dupVersion = dup["version"];
|
|
73
|
+
return {
|
|
74
|
+
migrationHash,
|
|
75
|
+
duplicateError: {
|
|
76
|
+
success: false,
|
|
77
|
+
error: `Duplicate migration detected: version "${dupVersion}" (id: ${String(dupId)}) has the same SQL hash. ` +
|
|
78
|
+
`Use a different migration SQL or roll back the existing one first.`,
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
return { migrationHash, duplicateError: null };
|
|
83
|
+
}
|
|
51
84
|
function formatRecord(row) {
|
|
52
85
|
const appliedAt = row["applied_at"];
|
|
53
86
|
const appliedAtStr = appliedAt instanceof Date
|
|
@@ -73,7 +106,7 @@ export function createMigrationInitTool(adapter) {
|
|
|
73
106
|
name: "pg_migration_init",
|
|
74
107
|
description: "Initialize or verify the schema version tracking table (_mcp_schema_versions). " +
|
|
75
108
|
"Idempotent — safe to call repeatedly. Returns current tracking state.",
|
|
76
|
-
group: "
|
|
109
|
+
group: "migration",
|
|
77
110
|
inputSchema: MigrationInitSchemaBase,
|
|
78
111
|
outputSchema: MigrationInitOutputSchema,
|
|
79
112
|
annotations,
|
|
@@ -82,10 +115,12 @@ export function createMigrationInitTool(adapter) {
|
|
|
82
115
|
try {
|
|
83
116
|
const parsed = MigrationInitSchema.parse(params);
|
|
84
117
|
const targetSchema = parsed.schema ?? "public";
|
|
85
|
-
//
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
118
|
+
// Sanitize schema to prevent SQL injection via identifier interpolation
|
|
119
|
+
const sanitizedSchema = sanitizeIdentifier(targetSchema);
|
|
120
|
+
// Compute qualified table name once, reuse for DDL and queries
|
|
121
|
+
const qualifiedTable = targetSchema === "public"
|
|
122
|
+
? TRACKING_TABLE
|
|
123
|
+
: `${sanitizedSchema}."${TRACKING_TABLE}"`;
|
|
89
124
|
const check = await adapter.executeQuery(`SELECT EXISTS (
|
|
90
125
|
SELECT 1 FROM pg_tables
|
|
91
126
|
WHERE schemaname = $1 AND tablename = $2
|
|
@@ -93,11 +128,8 @@ export function createMigrationInitTool(adapter) {
|
|
|
93
128
|
const firstRow = (check.rows ?? [])[0];
|
|
94
129
|
const existed = firstRow?.["table_exists"] === true;
|
|
95
130
|
if (!existed) {
|
|
96
|
-
await adapter.executeQuery(
|
|
131
|
+
await adapter.executeQuery(buildCreateTrackingTableSql(qualifiedTable));
|
|
97
132
|
}
|
|
98
|
-
const qualifiedTable = targetSchema === "public"
|
|
99
|
-
? TRACKING_TABLE
|
|
100
|
-
: `${targetSchema}.${TRACKING_TABLE}`;
|
|
101
133
|
const countResult = await adapter.executeQuery(`SELECT COUNT(*)::int AS count FROM ${qualifiedTable}`);
|
|
102
134
|
const countRow = (countResult.rows ?? [])[0];
|
|
103
135
|
const existingRecords = countRow?.["count"] ?? 0;
|
|
@@ -129,47 +161,18 @@ export function createMigrationRecordTool(adapter) {
|
|
|
129
161
|
description: "Record a migration in the schema version tracking table. " +
|
|
130
162
|
"Auto-provisions the tracking table on first use. " +
|
|
131
163
|
"Computes SHA-256 hash for idempotency detection.",
|
|
132
|
-
group: "
|
|
164
|
+
group: "migration",
|
|
133
165
|
inputSchema: MigrationRecordSchemaBase,
|
|
134
166
|
outputSchema: MigrationRecordOutputSchema,
|
|
135
167
|
annotations,
|
|
136
168
|
icons: getToolIcons("introspection", annotations),
|
|
137
169
|
handler: async (params, _context) => {
|
|
138
170
|
try {
|
|
139
|
-
|
|
140
|
-
try {
|
|
141
|
-
parsed = MigrationRecordSchema.parse(params);
|
|
142
|
-
}
|
|
143
|
-
catch (error) {
|
|
144
|
-
if (error !== null &&
|
|
145
|
-
typeof error === "object" &&
|
|
146
|
-
"issues" in error &&
|
|
147
|
-
Array.isArray(error.issues)) {
|
|
148
|
-
const issues = error.issues;
|
|
149
|
-
const messages = issues.map((i) => i.message).join("; ");
|
|
150
|
-
return {
|
|
151
|
-
success: false,
|
|
152
|
-
error: `Validation error: ${messages}`,
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
|
-
throw error;
|
|
156
|
-
}
|
|
171
|
+
const parsed = MigrationRecordSchema.parse(params);
|
|
157
172
|
await ensureTrackingTable(adapter);
|
|
158
|
-
const migrationHash =
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
WHERE migration_hash = $1 AND status = 'applied'`, [migrationHash]);
|
|
162
|
-
const dupRows = dupCheck.rows ?? [];
|
|
163
|
-
if (dupRows.length > 0) {
|
|
164
|
-
const dup = dupRows[0] ?? {};
|
|
165
|
-
const dupId = dup["id"];
|
|
166
|
-
const dupVersion = dup["version"];
|
|
167
|
-
return {
|
|
168
|
-
success: false,
|
|
169
|
-
error: `Duplicate migration detected: version "${dupVersion}" (id: ${String(dupId)}) has the same SQL hash. ` +
|
|
170
|
-
`Use a different migration SQL or roll back the existing one first.`,
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
+
const { migrationHash, duplicateError } = await checkDuplicateHash(adapter, parsed.migrationSql);
|
|
174
|
+
if (duplicateError)
|
|
175
|
+
return duplicateError;
|
|
173
176
|
const result = await adapter.executeQuery(`INSERT INTO ${TRACKING_TABLE}
|
|
174
177
|
(version, description, applied_by, migration_hash, migration_sql, source_system, rollback_sql)
|
|
175
178
|
VALUES ($1, $2, $3, $4, $5, $6, $7)
|
|
@@ -217,47 +220,18 @@ export function createMigrationApplyTool(adapter) {
|
|
|
217
220
|
"Auto-provisions the tracking table on first use. " +
|
|
218
221
|
"On failure, rolls back and records a 'failed' entry. " +
|
|
219
222
|
"Use pg_migration_record instead if you only need to log an already-applied migration.",
|
|
220
|
-
group: "
|
|
223
|
+
group: "migration",
|
|
221
224
|
inputSchema: MigrationApplySchemaBase,
|
|
222
225
|
outputSchema: MigrationApplyOutputSchema,
|
|
223
226
|
annotations,
|
|
224
227
|
icons: getToolIcons("introspection", annotations),
|
|
225
228
|
handler: async (params, _context) => {
|
|
226
229
|
try {
|
|
227
|
-
|
|
228
|
-
try {
|
|
229
|
-
parsed = MigrationApplySchema.parse(params);
|
|
230
|
-
}
|
|
231
|
-
catch (error) {
|
|
232
|
-
if (error !== null &&
|
|
233
|
-
typeof error === "object" &&
|
|
234
|
-
"issues" in error &&
|
|
235
|
-
Array.isArray(error.issues)) {
|
|
236
|
-
const issues = error.issues;
|
|
237
|
-
const messages = issues.map((i) => i.message).join("; ");
|
|
238
|
-
return {
|
|
239
|
-
success: false,
|
|
240
|
-
error: `Validation error: ${messages}`,
|
|
241
|
-
};
|
|
242
|
-
}
|
|
243
|
-
throw error;
|
|
244
|
-
}
|
|
230
|
+
const parsed = MigrationApplySchema.parse(params);
|
|
245
231
|
await ensureTrackingTable(adapter);
|
|
246
|
-
const migrationHash =
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
WHERE migration_hash = $1 AND status = 'applied'`, [migrationHash]);
|
|
250
|
-
const dupRows = dupCheck.rows ?? [];
|
|
251
|
-
if (dupRows.length > 0) {
|
|
252
|
-
const dup = dupRows[0] ?? {};
|
|
253
|
-
const dupId = dup["id"];
|
|
254
|
-
const dupVersion = dup["version"];
|
|
255
|
-
return {
|
|
256
|
-
success: false,
|
|
257
|
-
error: `Duplicate migration detected: version "${dupVersion}" (id: ${String(dupId)}) has the same SQL hash. ` +
|
|
258
|
-
`Use a different migration SQL or roll back the existing one first.`,
|
|
259
|
-
};
|
|
260
|
-
}
|
|
232
|
+
const { migrationHash, duplicateError } = await checkDuplicateHash(adapter, parsed.migrationSql);
|
|
233
|
+
if (duplicateError)
|
|
234
|
+
return duplicateError;
|
|
261
235
|
// Execute migration SQL and record atomically
|
|
262
236
|
try {
|
|
263
237
|
await adapter.executeQuery("BEGIN");
|
|
@@ -338,7 +312,7 @@ export function createMigrationRollbackTool(adapter) {
|
|
|
338
312
|
description: "Roll back a specific migration by ID or version. " +
|
|
339
313
|
"Executes the stored rollback_sql in a transaction and updates status to 'rolled_back'. " +
|
|
340
314
|
"Use dryRun: true to preview the rollback SQL without executing.",
|
|
341
|
-
group: "
|
|
315
|
+
group: "migration",
|
|
342
316
|
inputSchema: MigrationRollbackSchemaBase,
|
|
343
317
|
outputSchema: MigrationRollbackOutputSchema,
|
|
344
318
|
annotations,
|
|
@@ -449,7 +423,7 @@ export function createMigrationHistoryTool(adapter) {
|
|
|
449
423
|
name: "pg_migration_history",
|
|
450
424
|
description: "Query migration history with optional filtering by status and source system. " +
|
|
451
425
|
"Returns paginated results ordered by applied_at descending.",
|
|
452
|
-
group: "
|
|
426
|
+
group: "migration",
|
|
453
427
|
inputSchema: MigrationHistorySchemaBase,
|
|
454
428
|
outputSchema: MigrationHistoryOutputSchema,
|
|
455
429
|
annotations,
|
|
@@ -518,7 +492,7 @@ export function createMigrationStatusTool(adapter) {
|
|
|
518
492
|
name: "pg_migration_status",
|
|
519
493
|
description: "Get current migration tracking status: latest version, counts by status, " +
|
|
520
494
|
"and list of source systems. Returns initialized: false if tracking table doesn't exist.",
|
|
521
|
-
group: "
|
|
495
|
+
group: "migration",
|
|
522
496
|
inputSchema: MigrationStatusSchemaBase,
|
|
523
497
|
outputSchema: MigrationStatusOutputSchema,
|
|
524
498
|
annotations,
|
|
@@ -527,6 +501,8 @@ export function createMigrationStatusTool(adapter) {
|
|
|
527
501
|
try {
|
|
528
502
|
const parsed = MigrationStatusSchema.parse(params);
|
|
529
503
|
const targetSchema = parsed.schema ?? "public";
|
|
504
|
+
// Sanitize schema to prevent SQL injection via identifier interpolation
|
|
505
|
+
const sanitizedSchema = sanitizeIdentifier(targetSchema);
|
|
530
506
|
// Check if tracking table exists
|
|
531
507
|
const check = await adapter.executeQuery(`SELECT EXISTS (
|
|
532
508
|
SELECT 1 FROM pg_tables
|
|
@@ -545,7 +521,7 @@ export function createMigrationStatusTool(adapter) {
|
|
|
545
521
|
}
|
|
546
522
|
const qualifiedTable = targetSchema === "public"
|
|
547
523
|
? TRACKING_TABLE
|
|
548
|
-
: `${
|
|
524
|
+
: `${sanitizedSchema}."${TRACKING_TABLE}"`;
|
|
549
525
|
// Get aggregate status
|
|
550
526
|
const statsResult = await adapter.executeQuery(`SELECT
|
|
551
527
|
COUNT(*)::int AS total,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/migration.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/introspection/migration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PostgreSQL Migration Tools
|
|
3
|
+
*
|
|
4
|
+
* Schema migration tracking and management tools.
|
|
5
|
+
* 6 tools total.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostgresAdapter } from "../../PostgresAdapter.js";
|
|
8
|
+
import type { ToolDefinition } from "../../../../types/index.js";
|
|
9
|
+
import { createMigrationInitTool, createMigrationRecordTool, createMigrationApplyTool, createMigrationRollbackTool, createMigrationHistoryTool, createMigrationStatusTool } from "../introspection/migration.js";
|
|
10
|
+
/**
|
|
11
|
+
* Get all migration tools
|
|
12
|
+
*/
|
|
13
|
+
export declare function getMigrationTools(adapter: PostgresAdapter): ToolDefinition[];
|
|
14
|
+
export { createMigrationInitTool, createMigrationRecordTool, createMigrationApplyTool, createMigrationRollbackTool, createMigrationHistoryTool, createMigrationStatusTool, };
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/migration/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AAEvC;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,EAAE,CAS5E;AAGD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,GAC1B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PostgreSQL Migration Tools
|
|
3
|
+
*
|
|
4
|
+
* Schema migration tracking and management tools.
|
|
5
|
+
* 6 tools total.
|
|
6
|
+
*/
|
|
7
|
+
import { createMigrationInitTool, createMigrationRecordTool, createMigrationApplyTool, createMigrationRollbackTool, createMigrationHistoryTool, createMigrationStatusTool, } from "../introspection/migration.js";
|
|
8
|
+
/**
|
|
9
|
+
* Get all migration tools
|
|
10
|
+
*/
|
|
11
|
+
export function getMigrationTools(adapter) {
|
|
12
|
+
return [
|
|
13
|
+
createMigrationInitTool(adapter),
|
|
14
|
+
createMigrationRecordTool(adapter),
|
|
15
|
+
createMigrationApplyTool(adapter),
|
|
16
|
+
createMigrationRollbackTool(adapter),
|
|
17
|
+
createMigrationHistoryTool(adapter),
|
|
18
|
+
createMigrationStatusTool(adapter),
|
|
19
|
+
];
|
|
20
|
+
}
|
|
21
|
+
// Re-export individual tool creators for direct imports
|
|
22
|
+
export { createMigrationInitTool, createMigrationRecordTool, createMigrationApplyTool, createMigrationRollbackTool, createMigrationHistoryTool, createMigrationStatusTool, };
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/migration/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAwB;IACxD,OAAO;QACL,uBAAuB,CAAC,OAAO,CAAC;QAChC,yBAAyB,CAAC,OAAO,CAAC;QAClC,wBAAwB,CAAC,OAAO,CAAC;QACjC,2BAA2B,CAAC,OAAO,CAAC;QACpC,0BAA0B,CAAC,OAAO,CAAC;QACnC,yBAAyB,CAAC,OAAO,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,wDAAwD;AACxD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,GAC1B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PostgreSQL Performance Tools - Anomaly Detection
|
|
3
|
+
*
|
|
4
|
+
* Lightweight anomaly detectors that compare current state against
|
|
5
|
+
* historical baselines using PostgreSQL system views. Returns risk
|
|
6
|
+
* scores, trend analysis, and actionable recommendations.
|
|
7
|
+
*
|
|
8
|
+
* Tools:
|
|
9
|
+
* - pg_detect_query_anomalies: z-score analysis via pg_stat_statements
|
|
10
|
+
* - pg_detect_bloat_risk: multi-factor bloat risk scoring
|
|
11
|
+
* - pg_detect_connection_spike: connection concentration detection
|
|
12
|
+
*/
|
|
13
|
+
import type { PostgresAdapter } from "../../PostgresAdapter.js";
|
|
14
|
+
import type { ToolDefinition } from "../../../../types/index.js";
|
|
15
|
+
export declare function createDetectQueryAnomaliesTool(adapter: PostgresAdapter): ToolDefinition;
|
|
16
|
+
export declare function createDetectBloatRiskTool(adapter: PostgresAdapter): ToolDefinition;
|
|
17
|
+
export declare function createDetectConnectionSpikeTool(adapter: PostgresAdapter): ToolDefinition;
|
|
18
|
+
//# sourceMappingURL=anomaly-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anomaly-detection.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/performance/anomaly-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AA+CpC,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,eAAe,GACvB,cAAc,CAwHhB;AAsBD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CAkMhB;AA2BD,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,eAAe,GACvB,cAAc,CA8MhB"}
|