@neverinfamous/postgres-mcp 1.3.0 → 2.0.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 +177 -129
- package/dist/__tests__/benchmarks/codemode.bench.d.ts +10 -0
- package/dist/__tests__/benchmarks/codemode.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/codemode.bench.js +159 -0
- package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/connection-pool.bench.d.ts +10 -0
- package/dist/__tests__/benchmarks/connection-pool.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/connection-pool.bench.js +123 -0
- package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts +11 -0
- package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/handler-dispatch.bench.js +199 -0
- package/dist/__tests__/benchmarks/handler-dispatch.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts +15 -0
- package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/logger-sanitization.bench.js +155 -0
- package/dist/__tests__/benchmarks/logger-sanitization.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts +10 -0
- package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/resource-prompts.bench.js +181 -0
- package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts +11 -0
- package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/schema-parsing.bench.js +209 -0
- package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts +9 -0
- package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/tool-filtering.bench.js +83 -0
- package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/transport-auth.bench.d.ts +10 -0
- package/dist/__tests__/benchmarks/transport-auth.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/transport-auth.bench.js +128 -0
- package/dist/__tests__/benchmarks/transport-auth.bench.js.map +1 -0
- package/dist/__tests__/benchmarks/utilities.bench.d.ts +10 -0
- package/dist/__tests__/benchmarks/utilities.bench.d.ts.map +1 -0
- package/dist/__tests__/benchmarks/utilities.bench.js +164 -0
- package/dist/__tests__/benchmarks/utilities.bench.js.map +1 -0
- package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
- package/dist/adapters/DatabaseAdapter.js +12 -0
- package/dist/adapters/DatabaseAdapter.js.map +1 -1
- package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
- package/dist/adapters/postgresql/PostgresAdapter.js +3 -0
- package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
- package/dist/adapters/postgresql/schemas/backup.d.ts +37 -23
- package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/backup.js +53 -22
- package/dist/adapters/postgresql/schemas/backup.js.map +1 -1
- package/dist/adapters/postgresql/schemas/extensions.d.ts +56 -37
- package/dist/adapters/postgresql/schemas/extensions.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/extensions.js +68 -36
- package/dist/adapters/postgresql/schemas/extensions.js.map +1 -1
- package/dist/adapters/postgresql/schemas/index.d.ts +3 -2
- package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/index.js +8 -2
- package/dist/adapters/postgresql/schemas/index.js.map +1 -1
- package/dist/adapters/postgresql/schemas/introspection.d.ts +445 -0
- package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/introspection.js +478 -0
- package/dist/adapters/postgresql/schemas/introspection.js.map +1 -0
- package/dist/adapters/postgresql/schemas/jsonb.d.ts +8 -0
- package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/jsonb.js +26 -2
- package/dist/adapters/postgresql/schemas/jsonb.js.map +1 -1
- package/dist/adapters/postgresql/schemas/monitoring.d.ts +41 -25
- package/dist/adapters/postgresql/schemas/monitoring.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/monitoring.js +49 -16
- package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -1
- package/dist/adapters/postgresql/schemas/partitioning.d.ts +16 -20
- package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/partitioning.js +21 -10
- package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
- package/dist/adapters/postgresql/schemas/partman.d.ts +69 -0
- package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/partman.js +46 -33
- package/dist/adapters/postgresql/schemas/partman.js.map +1 -1
- package/dist/adapters/postgresql/schemas/performance.d.ts +37 -19
- package/dist/adapters/postgresql/schemas/performance.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/performance.js +54 -12
- package/dist/adapters/postgresql/schemas/performance.js.map +1 -1
- package/dist/adapters/postgresql/schemas/postgis.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/postgis.js +20 -0
- package/dist/adapters/postgresql/schemas/postgis.js.map +1 -1
- package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +15 -7
- package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/schema-mgmt.js +36 -7
- package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
- package/dist/adapters/postgresql/schemas/text-search.d.ts +26 -14
- package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/text-search.js +41 -9
- package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
- package/dist/adapters/postgresql/tools/admin.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/admin.js +82 -67
- package/dist/adapters/postgresql/tools/admin.js.map +1 -1
- package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/backup/dump.js +27 -24
- package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
- package/dist/adapters/postgresql/tools/citext.js +114 -82
- package/dist/adapters/postgresql/tools/citext.js.map +1 -1
- package/dist/adapters/postgresql/tools/codemode/index.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/codemode/index.js +2 -11
- package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/convenience.js +23 -8
- package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/indexes.js +3 -2
- package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/tables.js +4 -4
- package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
- package/dist/adapters/postgresql/tools/cron.js +59 -27
- package/dist/adapters/postgresql/tools/cron.js.map +1 -1
- package/dist/adapters/postgresql/tools/introspection.d.ts +15 -0
- package/dist/adapters/postgresql/tools/introspection.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/introspection.js +1682 -0
- package/dist/adapters/postgresql/tools/introspection.js.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/jsonb/advanced.js +26 -17
- package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +1 -1
- package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/jsonb/basic.js +92 -23
- package/dist/adapters/postgresql/tools/jsonb/basic.js.map +1 -1
- package/dist/adapters/postgresql/tools/ltree.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/ltree.js +17 -4
- package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
- package/dist/adapters/postgresql/tools/monitoring.js +32 -21
- package/dist/adapters/postgresql/tools/monitoring.js.map +1 -1
- package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/partman/management.js +32 -52
- package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
- package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/partman/operations.js +5 -5
- package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
- package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/performance/analysis.js +15 -8
- package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -1
- package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/performance/monitoring.js +10 -7
- package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -1
- package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/performance/stats.js +62 -28
- package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
- package/dist/adapters/postgresql/tools/pgcrypto.js +31 -11
- package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/advanced.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/advanced.js +30 -25
- package/dist/adapters/postgresql/tools/postgis/advanced.js.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/basic.js +24 -15
- package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
- package/dist/adapters/postgresql/tools/schema.js +79 -5
- package/dist/adapters/postgresql/tools/schema.js.map +1 -1
- package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/stats/advanced.js +61 -39
- package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -1
- package/dist/adapters/postgresql/tools/stats/basic.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/stats/basic.js +45 -30
- package/dist/adapters/postgresql/tools/stats/basic.js.map +1 -1
- package/dist/adapters/postgresql/tools/text.js +327 -148
- package/dist/adapters/postgresql/tools/text.js.map +1 -1
- package/dist/auth/auth-context.d.ts +28 -0
- package/dist/auth/auth-context.d.ts.map +1 -0
- package/dist/auth/auth-context.js +37 -0
- package/dist/auth/auth-context.js.map +1 -0
- package/dist/auth/scope-map.d.ts +20 -0
- package/dist/auth/scope-map.d.ts.map +1 -0
- package/dist/auth/scope-map.js +40 -0
- package/dist/auth/scope-map.js.map +1 -0
- 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 +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/codemode/api.d.ts +1 -0
- package/dist/codemode/api.d.ts.map +1 -1
- package/dist/codemode/api.js +34 -0
- package/dist/codemode/api.js.map +1 -1
- package/dist/codemode/index.d.ts +0 -2
- package/dist/codemode/index.d.ts.map +1 -1
- package/dist/codemode/index.js +0 -4
- package/dist/codemode/index.js.map +1 -1
- package/dist/codemode/sandbox.d.ts +14 -1
- package/dist/codemode/sandbox.d.ts.map +1 -1
- package/dist/codemode/sandbox.js +58 -19
- package/dist/codemode/sandbox.js.map +1 -1
- package/dist/codemode/types.d.ts.map +1 -1
- package/dist/codemode/types.js +3 -0
- package/dist/codemode/types.js.map +1 -1
- package/dist/constants/ServerInstructions.d.ts +5 -1
- package/dist/constants/ServerInstructions.d.ts.map +1 -1
- package/dist/constants/ServerInstructions.js +91 -43
- package/dist/constants/ServerInstructions.js.map +1 -1
- package/dist/filtering/ToolConstants.d.ts +22 -19
- package/dist/filtering/ToolConstants.d.ts.map +1 -1
- package/dist/filtering/ToolConstants.js +48 -37
- package/dist/filtering/ToolConstants.js.map +1 -1
- package/dist/filtering/ToolFilter.d.ts.map +1 -1
- package/dist/filtering/ToolFilter.js +10 -13
- package/dist/filtering/ToolFilter.js.map +1 -1
- package/dist/pool/ConnectionPool.js +1 -1
- package/dist/pool/ConnectionPool.js.map +1 -1
- package/dist/transports/http.d.ts +1 -0
- package/dist/transports/http.d.ts.map +1 -1
- package/dist/transports/http.js +75 -21
- package/dist/transports/http.js.map +1 -1
- package/dist/types/filtering.d.ts +2 -2
- package/dist/types/filtering.d.ts.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/where-clause.d.ts.map +1 -1
- package/dist/utils/where-clause.js +24 -0
- package/dist/utils/where-clause.js.map +1 -1
- package/package.json +15 -12
- package/dist/codemode/sandbox-factory.d.ts +0 -72
- package/dist/codemode/sandbox-factory.d.ts.map +0 -1
- package/dist/codemode/sandbox-factory.js +0 -88
- package/dist/codemode/sandbox-factory.js.map +0 -1
- package/dist/codemode/worker-sandbox.d.ts +0 -82
- package/dist/codemode/worker-sandbox.d.ts.map +0 -1
- package/dist/codemode/worker-sandbox.js +0 -244
- package/dist/codemode/worker-sandbox.js.map +0 -1
- package/dist/codemode/worker-script.d.ts +0 -8
- package/dist/codemode/worker-script.d.ts.map +0 -1
- package/dist/codemode/worker-script.js +0 -113
- package/dist/codemode/worker-script.js.map +0 -1
|
@@ -0,0 +1,478 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* postgres-mcp - Introspection Tool Schemas
|
|
3
|
+
*
|
|
4
|
+
* Input/output validation schemas for agent-optimized introspection tools.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
// =============================================================================
|
|
8
|
+
// Input Schemas
|
|
9
|
+
// =============================================================================
|
|
10
|
+
/**
|
|
11
|
+
* pg_dependency_graph input
|
|
12
|
+
*/
|
|
13
|
+
export const DependencyGraphSchemaBase = z.object({
|
|
14
|
+
schema: z
|
|
15
|
+
.string()
|
|
16
|
+
.optional()
|
|
17
|
+
.describe("Schema to analyze (default: all user schemas)"),
|
|
18
|
+
includeRowCounts: z
|
|
19
|
+
.boolean()
|
|
20
|
+
.optional()
|
|
21
|
+
.describe("Include estimated row counts (default: true)"),
|
|
22
|
+
excludeExtensionSchemas: z
|
|
23
|
+
.boolean()
|
|
24
|
+
.optional()
|
|
25
|
+
.describe("Exclude known extension schemas (cron, topology, tiger, tiger_data) from graph (default: true)"),
|
|
26
|
+
});
|
|
27
|
+
export const DependencyGraphSchema = DependencyGraphSchemaBase.default({});
|
|
28
|
+
/**
|
|
29
|
+
* pg_topological_sort input
|
|
30
|
+
*/
|
|
31
|
+
export const TopologicalSortSchemaBase = z.object({
|
|
32
|
+
schema: z
|
|
33
|
+
.string()
|
|
34
|
+
.optional()
|
|
35
|
+
.describe("Schema to analyze (default: all user schemas)"),
|
|
36
|
+
direction: z
|
|
37
|
+
.enum(["create", "drop"])
|
|
38
|
+
.optional()
|
|
39
|
+
.describe("Sort direction: 'create' = dependencies first, 'drop' = dependents first (default: create)"),
|
|
40
|
+
excludeExtensionSchemas: z
|
|
41
|
+
.boolean()
|
|
42
|
+
.optional()
|
|
43
|
+
.describe("Exclude known extension schemas (cron, topology, tiger, tiger_data) from sort (default: true)"),
|
|
44
|
+
});
|
|
45
|
+
export const TopologicalSortSchema = TopologicalSortSchemaBase.default({});
|
|
46
|
+
/**
|
|
47
|
+
* pg_cascade_simulator input
|
|
48
|
+
*/
|
|
49
|
+
export const CascadeSimulatorSchemaBase = z.object({
|
|
50
|
+
table: z
|
|
51
|
+
.string()
|
|
52
|
+
.describe("Table name to simulate deletion from (supports schema.table)"),
|
|
53
|
+
schema: z.string().optional().describe("Schema name (default: public)"),
|
|
54
|
+
operation: z
|
|
55
|
+
.enum(["DELETE", "DROP", "TRUNCATE"])
|
|
56
|
+
.optional()
|
|
57
|
+
.describe("Operation to simulate (default: DELETE)"),
|
|
58
|
+
});
|
|
59
|
+
export const CascadeSimulatorSchema = z.preprocess((input) => {
|
|
60
|
+
if (typeof input === "string")
|
|
61
|
+
return { table: input };
|
|
62
|
+
if (typeof input === "object" && input !== null) {
|
|
63
|
+
const obj = input;
|
|
64
|
+
// Parse schema.table format
|
|
65
|
+
if (typeof obj["table"] === "string" &&
|
|
66
|
+
obj["table"].includes(".") &&
|
|
67
|
+
typeof obj["schema"] === "undefined") {
|
|
68
|
+
const parts = obj["table"].split(".");
|
|
69
|
+
if (parts.length === 2 && parts[0] && parts[1]) {
|
|
70
|
+
return { ...obj, schema: parts[0], table: parts[1] };
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return input;
|
|
75
|
+
}, CascadeSimulatorSchemaBase);
|
|
76
|
+
/**
|
|
77
|
+
* pg_schema_snapshot input
|
|
78
|
+
*/
|
|
79
|
+
export const SchemaSnapshotSchemaBase = z.object({
|
|
80
|
+
schema: z
|
|
81
|
+
.string()
|
|
82
|
+
.optional()
|
|
83
|
+
.describe("Schema to snapshot (default: all user schemas)"),
|
|
84
|
+
includeSystem: z
|
|
85
|
+
.boolean()
|
|
86
|
+
.optional()
|
|
87
|
+
.describe("Include system schemas like pg_catalog (default: false)"),
|
|
88
|
+
excludeExtensionSchemas: z
|
|
89
|
+
.boolean()
|
|
90
|
+
.optional()
|
|
91
|
+
.describe("Exclude known extension schemas (cron, topology, tiger, tiger_data) from snapshot (default: true)"),
|
|
92
|
+
sections: z
|
|
93
|
+
.array(z.enum([
|
|
94
|
+
"tables",
|
|
95
|
+
"views",
|
|
96
|
+
"indexes",
|
|
97
|
+
"constraints",
|
|
98
|
+
"functions",
|
|
99
|
+
"triggers",
|
|
100
|
+
"sequences",
|
|
101
|
+
"types",
|
|
102
|
+
"extensions",
|
|
103
|
+
]))
|
|
104
|
+
.optional()
|
|
105
|
+
.describe("Specific sections to include (default: all)"),
|
|
106
|
+
compact: z
|
|
107
|
+
.boolean()
|
|
108
|
+
.optional()
|
|
109
|
+
.describe("Omit column details from tables section for reduced payload size (default: false). Use pg_describe_table to drill into specific tables"),
|
|
110
|
+
});
|
|
111
|
+
export const SchemaSnapshotSchema = SchemaSnapshotSchemaBase.default({});
|
|
112
|
+
/**
|
|
113
|
+
* pg_constraint_analysis input
|
|
114
|
+
*/
|
|
115
|
+
export const ConstraintAnalysisSchemaBase = z.object({
|
|
116
|
+
schema: z
|
|
117
|
+
.string()
|
|
118
|
+
.optional()
|
|
119
|
+
.describe("Schema to analyze (default: all user schemas)"),
|
|
120
|
+
table: z
|
|
121
|
+
.string()
|
|
122
|
+
.optional()
|
|
123
|
+
.describe("Analyze constraints for a specific table only"),
|
|
124
|
+
checks: z
|
|
125
|
+
.array(z.enum([
|
|
126
|
+
"redundant",
|
|
127
|
+
"missing_fk",
|
|
128
|
+
"missing_not_null",
|
|
129
|
+
"missing_pk",
|
|
130
|
+
"unindexed_fk",
|
|
131
|
+
]))
|
|
132
|
+
.optional()
|
|
133
|
+
.describe("Specific checks to run (default: all)"),
|
|
134
|
+
excludeExtensionSchemas: z
|
|
135
|
+
.boolean()
|
|
136
|
+
.optional()
|
|
137
|
+
.describe("Exclude known extension schemas (cron, topology, tiger, tiger_data) from analysis (default: true)"),
|
|
138
|
+
});
|
|
139
|
+
export const ConstraintAnalysisSchema = z.preprocess((input) => {
|
|
140
|
+
if (typeof input === "string")
|
|
141
|
+
return { table: input };
|
|
142
|
+
if (typeof input === "object" && input !== null) {
|
|
143
|
+
const obj = input;
|
|
144
|
+
if (typeof obj["table"] === "string" &&
|
|
145
|
+
obj["table"].includes(".") &&
|
|
146
|
+
typeof obj["schema"] === "undefined") {
|
|
147
|
+
const parts = obj["table"].split(".");
|
|
148
|
+
if (parts.length === 2 && parts[0] && parts[1]) {
|
|
149
|
+
return { ...obj, schema: parts[0], table: parts[1] };
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return input;
|
|
154
|
+
}, ConstraintAnalysisSchemaBase.default({}));
|
|
155
|
+
/**
|
|
156
|
+
* pg_migration_risks input
|
|
157
|
+
*/
|
|
158
|
+
export const MigrationRisksSchemaBase = z.object({
|
|
159
|
+
statements: z
|
|
160
|
+
.array(z.string())
|
|
161
|
+
.describe("Array of DDL statements to analyze for risks"),
|
|
162
|
+
schema: z
|
|
163
|
+
.string()
|
|
164
|
+
.optional()
|
|
165
|
+
.describe("Target schema context (default: public)"),
|
|
166
|
+
});
|
|
167
|
+
export const MigrationRisksSchema = MigrationRisksSchemaBase;
|
|
168
|
+
// =============================================================================
|
|
169
|
+
// Migration Tracking Input Schemas (Phase 2: Schema Version Tracking)
|
|
170
|
+
// =============================================================================
|
|
171
|
+
/**
|
|
172
|
+
* pg_migration_init input
|
|
173
|
+
*/
|
|
174
|
+
export const MigrationInitSchemaBase = z.object({
|
|
175
|
+
schema: z
|
|
176
|
+
.string()
|
|
177
|
+
.optional()
|
|
178
|
+
.describe("Schema to create the tracking table in (default: public)"),
|
|
179
|
+
});
|
|
180
|
+
export const MigrationInitSchema = MigrationInitSchemaBase.default({});
|
|
181
|
+
/**
|
|
182
|
+
* pg_migration_record input
|
|
183
|
+
*/
|
|
184
|
+
export const MigrationRecordSchemaBase = z.object({
|
|
185
|
+
version: z
|
|
186
|
+
.string()
|
|
187
|
+
.optional()
|
|
188
|
+
.describe("Version identifier (e.g., '1.0.0', '2024-01-15-add-users')"),
|
|
189
|
+
description: z
|
|
190
|
+
.string()
|
|
191
|
+
.optional()
|
|
192
|
+
.describe("Human-readable description of the migration"),
|
|
193
|
+
migrationSql: z
|
|
194
|
+
.string()
|
|
195
|
+
.optional()
|
|
196
|
+
.describe("The DDL/SQL statements applied"),
|
|
197
|
+
rollbackSql: z.string().optional().describe("SQL to reverse this migration"),
|
|
198
|
+
sourceSystem: z
|
|
199
|
+
.string()
|
|
200
|
+
.optional()
|
|
201
|
+
.describe("Origin system (e.g., 'mysql', 'sqlite', 'manual', 'agent')"),
|
|
202
|
+
appliedBy: z
|
|
203
|
+
.string()
|
|
204
|
+
.optional()
|
|
205
|
+
.describe("Who/what applied this migration (e.g., agent name, user)"),
|
|
206
|
+
});
|
|
207
|
+
// Internal parse schema — version and migrationSql are required
|
|
208
|
+
const MigrationRecordParseSchema = z.object({
|
|
209
|
+
version: z
|
|
210
|
+
.string()
|
|
211
|
+
.describe("Version identifier (e.g., '1.0.0', '2024-01-15-add-users')"),
|
|
212
|
+
description: z
|
|
213
|
+
.string()
|
|
214
|
+
.optional()
|
|
215
|
+
.describe("Human-readable description of the migration"),
|
|
216
|
+
migrationSql: z.string().describe("The DDL/SQL statements applied"),
|
|
217
|
+
rollbackSql: z.string().optional().describe("SQL to reverse this migration"),
|
|
218
|
+
sourceSystem: z
|
|
219
|
+
.string()
|
|
220
|
+
.optional()
|
|
221
|
+
.describe("Origin system (e.g., 'mysql', 'sqlite', 'manual', 'agent')"),
|
|
222
|
+
appliedBy: z
|
|
223
|
+
.string()
|
|
224
|
+
.optional()
|
|
225
|
+
.describe("Who/what applied this migration (e.g., agent name, user)"),
|
|
226
|
+
});
|
|
227
|
+
export const MigrationRecordSchema = MigrationRecordParseSchema;
|
|
228
|
+
/**
|
|
229
|
+
* pg_migration_apply input
|
|
230
|
+
* Same fields as pg_migration_record — version and migrationSql required.
|
|
231
|
+
*/
|
|
232
|
+
export const MigrationApplySchemaBase = MigrationRecordSchemaBase;
|
|
233
|
+
// Internal parse schema — version and migrationSql are required
|
|
234
|
+
export const MigrationApplySchema = MigrationRecordParseSchema;
|
|
235
|
+
/**
|
|
236
|
+
* pg_migration_rollback input
|
|
237
|
+
*/
|
|
238
|
+
export const MigrationRollbackSchemaBase = z.object({
|
|
239
|
+
id: z.number().optional().describe("Migration ID to roll back"),
|
|
240
|
+
version: z
|
|
241
|
+
.string()
|
|
242
|
+
.optional()
|
|
243
|
+
.describe("Migration version to roll back (alternative to id)"),
|
|
244
|
+
dryRun: z
|
|
245
|
+
.boolean()
|
|
246
|
+
.optional()
|
|
247
|
+
.describe("If true, return the rollback SQL without executing (default: false)"),
|
|
248
|
+
});
|
|
249
|
+
export const MigrationRollbackSchema = MigrationRollbackSchemaBase;
|
|
250
|
+
/**
|
|
251
|
+
* pg_migration_history input
|
|
252
|
+
*/
|
|
253
|
+
export const MigrationHistorySchemaBase = z.object({
|
|
254
|
+
status: z
|
|
255
|
+
.enum(["applied", "rolled_back", "failed"])
|
|
256
|
+
.optional()
|
|
257
|
+
.describe("Filter by status"),
|
|
258
|
+
sourceSystem: z.string().optional().describe("Filter by source system"),
|
|
259
|
+
limit: z
|
|
260
|
+
.number()
|
|
261
|
+
.optional()
|
|
262
|
+
.describe("Maximum records to return (default: 50)"),
|
|
263
|
+
offset: z.number().optional().describe("Offset for pagination (default: 0)"),
|
|
264
|
+
});
|
|
265
|
+
export const MigrationHistorySchema = MigrationHistorySchemaBase.default({});
|
|
266
|
+
/**
|
|
267
|
+
* pg_migration_status input
|
|
268
|
+
*/
|
|
269
|
+
export const MigrationStatusSchemaBase = z.object({
|
|
270
|
+
schema: z
|
|
271
|
+
.string()
|
|
272
|
+
.optional()
|
|
273
|
+
.describe("Schema where the tracking table lives (default: public)"),
|
|
274
|
+
});
|
|
275
|
+
export const MigrationStatusSchema = MigrationStatusSchemaBase.default({});
|
|
276
|
+
// =============================================================================
|
|
277
|
+
// Output Schemas
|
|
278
|
+
// =============================================================================
|
|
279
|
+
const DependencyNodeSchema = z.object({
|
|
280
|
+
table: z.string(),
|
|
281
|
+
schema: z.string(),
|
|
282
|
+
rowCount: z.number().optional(),
|
|
283
|
+
sizeBytes: z.number().optional(),
|
|
284
|
+
});
|
|
285
|
+
const DependencyEdgeSchema = z.object({
|
|
286
|
+
from: z.string(),
|
|
287
|
+
to: z.string(),
|
|
288
|
+
constraint: z.string(),
|
|
289
|
+
columns: z.array(z.object({ from: z.string(), to: z.string() })),
|
|
290
|
+
onDelete: z.string(),
|
|
291
|
+
onUpdate: z.string(),
|
|
292
|
+
});
|
|
293
|
+
export const DependencyGraphOutputSchema = z.object({
|
|
294
|
+
nodes: z.array(DependencyNodeSchema).optional(),
|
|
295
|
+
edges: z.array(DependencyEdgeSchema).optional(),
|
|
296
|
+
circularDependencies: z.array(z.array(z.string())).optional(),
|
|
297
|
+
stats: z
|
|
298
|
+
.object({
|
|
299
|
+
totalTables: z.number(),
|
|
300
|
+
totalRelationships: z.number(),
|
|
301
|
+
maxDepth: z.number(),
|
|
302
|
+
rootTables: z.array(z.string()),
|
|
303
|
+
leafTables: z.array(z.string()),
|
|
304
|
+
})
|
|
305
|
+
.optional(),
|
|
306
|
+
hint: z.string().optional(),
|
|
307
|
+
success: z.boolean().optional(),
|
|
308
|
+
error: z.string().optional(),
|
|
309
|
+
});
|
|
310
|
+
export const TopologicalSortOutputSchema = z.object({
|
|
311
|
+
order: z
|
|
312
|
+
.array(z.object({
|
|
313
|
+
table: z.string(),
|
|
314
|
+
schema: z.string(),
|
|
315
|
+
level: z.number(),
|
|
316
|
+
dependencies: z.array(z.string()),
|
|
317
|
+
}))
|
|
318
|
+
.optional(),
|
|
319
|
+
direction: z.string().optional(),
|
|
320
|
+
hasCycles: z.boolean().optional(),
|
|
321
|
+
cycles: z.array(z.array(z.string())).optional(),
|
|
322
|
+
hint: z.string().optional(),
|
|
323
|
+
success: z.boolean().optional(),
|
|
324
|
+
error: z.string().optional(),
|
|
325
|
+
});
|
|
326
|
+
export const CascadeSimulatorOutputSchema = z.object({
|
|
327
|
+
sourceTable: z.string().optional(),
|
|
328
|
+
operation: z.string().optional(),
|
|
329
|
+
affectedTables: z
|
|
330
|
+
.array(z.object({
|
|
331
|
+
table: z.string(),
|
|
332
|
+
schema: z.string(),
|
|
333
|
+
action: z.string(),
|
|
334
|
+
estimatedRows: z.number().optional(),
|
|
335
|
+
path: z.array(z.string()),
|
|
336
|
+
depth: z.number(),
|
|
337
|
+
}))
|
|
338
|
+
.optional(),
|
|
339
|
+
severity: z.enum(["low", "medium", "high", "critical"]).optional(),
|
|
340
|
+
stats: z
|
|
341
|
+
.object({
|
|
342
|
+
totalTablesAffected: z.number(),
|
|
343
|
+
cascadeActions: z.number(),
|
|
344
|
+
blockingActions: z.number(),
|
|
345
|
+
setNullActions: z.number(),
|
|
346
|
+
maxDepth: z.number(),
|
|
347
|
+
})
|
|
348
|
+
.optional(),
|
|
349
|
+
success: z.boolean().optional(),
|
|
350
|
+
error: z.string().optional(),
|
|
351
|
+
});
|
|
352
|
+
export const SchemaSnapshotOutputSchema = z.object({
|
|
353
|
+
snapshot: z.record(z.string(), z.unknown()).optional(),
|
|
354
|
+
stats: z
|
|
355
|
+
.object({
|
|
356
|
+
tables: z.number(),
|
|
357
|
+
views: z.number(),
|
|
358
|
+
indexes: z.number(),
|
|
359
|
+
constraints: z.number(),
|
|
360
|
+
functions: z.number(),
|
|
361
|
+
triggers: z.number(),
|
|
362
|
+
sequences: z.number(),
|
|
363
|
+
customTypes: z.number(),
|
|
364
|
+
extensions: z.number(),
|
|
365
|
+
})
|
|
366
|
+
.optional(),
|
|
367
|
+
generatedAt: z.string().optional(),
|
|
368
|
+
compact: z.boolean().optional(),
|
|
369
|
+
hint: z.string().optional(),
|
|
370
|
+
success: z.boolean().optional(),
|
|
371
|
+
error: z.string().optional(),
|
|
372
|
+
});
|
|
373
|
+
export const ConstraintAnalysisOutputSchema = z.object({
|
|
374
|
+
findings: z
|
|
375
|
+
.array(z.object({
|
|
376
|
+
type: z.string(),
|
|
377
|
+
severity: z.enum(["info", "warning", "error"]),
|
|
378
|
+
table: z.string(),
|
|
379
|
+
description: z.string(),
|
|
380
|
+
suggestion: z.string().optional(),
|
|
381
|
+
}))
|
|
382
|
+
.optional(),
|
|
383
|
+
summary: z
|
|
384
|
+
.object({
|
|
385
|
+
totalFindings: z.number(),
|
|
386
|
+
byType: z.record(z.string(), z.number()),
|
|
387
|
+
bySeverity: z.record(z.string(), z.number()),
|
|
388
|
+
})
|
|
389
|
+
.optional(),
|
|
390
|
+
hint: z.string().optional(),
|
|
391
|
+
success: z.boolean().optional(),
|
|
392
|
+
error: z.string().optional(),
|
|
393
|
+
});
|
|
394
|
+
export const MigrationRisksOutputSchema = z.object({
|
|
395
|
+
risks: z
|
|
396
|
+
.array(z.object({
|
|
397
|
+
statement: z.string(),
|
|
398
|
+
statementIndex: z.number(),
|
|
399
|
+
riskLevel: z.enum(["low", "medium", "high", "critical"]),
|
|
400
|
+
category: z.string(),
|
|
401
|
+
description: z.string(),
|
|
402
|
+
mitigation: z.string().optional(),
|
|
403
|
+
}))
|
|
404
|
+
.optional(),
|
|
405
|
+
summary: z
|
|
406
|
+
.object({
|
|
407
|
+
totalStatements: z.number(),
|
|
408
|
+
totalRisks: z.number(),
|
|
409
|
+
highestRisk: z.string(),
|
|
410
|
+
requiresDowntime: z.boolean(),
|
|
411
|
+
estimatedLockImpact: z.string(),
|
|
412
|
+
})
|
|
413
|
+
.optional(),
|
|
414
|
+
success: z.boolean().optional(),
|
|
415
|
+
error: z.string().optional(),
|
|
416
|
+
});
|
|
417
|
+
// =============================================================================
|
|
418
|
+
// Migration Tracking Output Schemas
|
|
419
|
+
// =============================================================================
|
|
420
|
+
const MigrationRecordOutputEntry = z.object({
|
|
421
|
+
id: z.number(),
|
|
422
|
+
version: z.string(),
|
|
423
|
+
description: z.string().nullable(),
|
|
424
|
+
appliedAt: z.string(),
|
|
425
|
+
appliedBy: z.string().nullable(),
|
|
426
|
+
migrationHash: z.string(),
|
|
427
|
+
sourceSystem: z.string().nullable(),
|
|
428
|
+
status: z.string(),
|
|
429
|
+
});
|
|
430
|
+
export const MigrationInitOutputSchema = z.object({
|
|
431
|
+
success: z.boolean().optional(),
|
|
432
|
+
tableCreated: z.boolean().optional(),
|
|
433
|
+
tableName: z.string().optional(),
|
|
434
|
+
existingRecords: z.number().optional(),
|
|
435
|
+
error: z.string().optional(),
|
|
436
|
+
});
|
|
437
|
+
export const MigrationRecordOutputSchema = z.object({
|
|
438
|
+
success: z.boolean(),
|
|
439
|
+
record: MigrationRecordOutputEntry.optional(),
|
|
440
|
+
error: z.string().optional(),
|
|
441
|
+
});
|
|
442
|
+
export const MigrationApplyOutputSchema = z.object({
|
|
443
|
+
success: z.boolean(),
|
|
444
|
+
record: MigrationRecordOutputEntry.optional(),
|
|
445
|
+
error: z.string().optional(),
|
|
446
|
+
});
|
|
447
|
+
export const MigrationRollbackOutputSchema = z.object({
|
|
448
|
+
success: z.boolean(),
|
|
449
|
+
dryRun: z.boolean().optional(),
|
|
450
|
+
rollbackSql: z.string().nullable().optional(),
|
|
451
|
+
record: MigrationRecordOutputEntry.optional(),
|
|
452
|
+
error: z.string().optional(),
|
|
453
|
+
});
|
|
454
|
+
export const MigrationHistoryOutputSchema = z.object({
|
|
455
|
+
records: z.array(MigrationRecordOutputEntry).optional(),
|
|
456
|
+
total: z.number().optional(),
|
|
457
|
+
limit: z.number().optional(),
|
|
458
|
+
offset: z.number().optional(),
|
|
459
|
+
success: z.boolean().optional(),
|
|
460
|
+
error: z.string().optional(),
|
|
461
|
+
});
|
|
462
|
+
export const MigrationStatusOutputSchema = z.object({
|
|
463
|
+
initialized: z.boolean().optional(),
|
|
464
|
+
latestVersion: z.string().nullable().optional(),
|
|
465
|
+
latestAppliedAt: z.string().nullable().optional(),
|
|
466
|
+
counts: z
|
|
467
|
+
.object({
|
|
468
|
+
total: z.number(),
|
|
469
|
+
applied: z.number(),
|
|
470
|
+
rolledBack: z.number(),
|
|
471
|
+
failed: z.number(),
|
|
472
|
+
})
|
|
473
|
+
.optional(),
|
|
474
|
+
sourceSystems: z.array(z.string()).optional(),
|
|
475
|
+
success: z.boolean().optional(),
|
|
476
|
+
error: z.string().optional(),
|
|
477
|
+
});
|
|
478
|
+
//# sourceMappingURL=introspection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspection.js","sourceRoot":"","sources":["../../../../src/adapters/postgresql/schemas/introspection.ts"],"names":[],"mappings":"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"}
|
|
@@ -115,6 +115,7 @@ export declare const JsonbContainsSchemaBase: z.ZodObject<{
|
|
|
115
115
|
select: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
116
116
|
where: z.ZodOptional<z.ZodString>;
|
|
117
117
|
filter: z.ZodOptional<z.ZodString>;
|
|
118
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
118
119
|
schema: z.ZodOptional<z.ZodString>;
|
|
119
120
|
}, z.core.$strip>;
|
|
120
121
|
export declare const JsonbContainsSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
|
|
@@ -126,6 +127,7 @@ export declare const JsonbContainsSchema: z.ZodPipe<z.ZodTransform<unknown, unkn
|
|
|
126
127
|
select: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
127
128
|
where: z.ZodOptional<z.ZodString>;
|
|
128
129
|
filter: z.ZodOptional<z.ZodString>;
|
|
130
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
129
131
|
schema: z.ZodOptional<z.ZodString>;
|
|
130
132
|
}, z.core.$strip>>;
|
|
131
133
|
export declare const JsonbPathQuerySchemaBase: z.ZodObject<{
|
|
@@ -137,6 +139,7 @@ export declare const JsonbPathQuerySchemaBase: z.ZodObject<{
|
|
|
137
139
|
vars: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
138
140
|
where: z.ZodOptional<z.ZodString>;
|
|
139
141
|
filter: z.ZodOptional<z.ZodString>;
|
|
142
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
140
143
|
schema: z.ZodOptional<z.ZodString>;
|
|
141
144
|
}, z.core.$strip>;
|
|
142
145
|
export declare const JsonbPathQuerySchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
|
|
@@ -148,6 +151,7 @@ export declare const JsonbPathQuerySchema: z.ZodPipe<z.ZodTransform<unknown, unk
|
|
|
148
151
|
vars: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
149
152
|
where: z.ZodOptional<z.ZodString>;
|
|
150
153
|
filter: z.ZodOptional<z.ZodString>;
|
|
154
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
151
155
|
schema: z.ZodOptional<z.ZodString>;
|
|
152
156
|
}, z.core.$strip>>;
|
|
153
157
|
export declare const JsonbInsertSchemaBase: z.ZodObject<{
|
|
@@ -395,6 +399,8 @@ export declare const JsonbDeleteOutputSchema: z.ZodObject<{
|
|
|
395
399
|
export declare const JsonbContainsOutputSchema: z.ZodObject<{
|
|
396
400
|
rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
397
401
|
count: z.ZodOptional<z.ZodNumber>;
|
|
402
|
+
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
403
|
+
totalCount: z.ZodOptional<z.ZodNumber>;
|
|
398
404
|
warning: z.ZodOptional<z.ZodString>;
|
|
399
405
|
success: z.ZodOptional<z.ZodBoolean>;
|
|
400
406
|
error: z.ZodOptional<z.ZodString>;
|
|
@@ -402,6 +408,8 @@ export declare const JsonbContainsOutputSchema: z.ZodObject<{
|
|
|
402
408
|
export declare const JsonbPathQueryOutputSchema: z.ZodObject<{
|
|
403
409
|
results: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
|
|
404
410
|
count: z.ZodOptional<z.ZodNumber>;
|
|
411
|
+
truncated: z.ZodOptional<z.ZodBoolean>;
|
|
412
|
+
totalCount: z.ZodOptional<z.ZodNumber>;
|
|
405
413
|
success: z.ZodOptional<z.ZodBoolean>;
|
|
406
414
|
error: z.ZodOptional<z.ZodString>;
|
|
407
415
|
}, z.core.$strip>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonb.d.ts","sourceRoot":"","sources":["../../../../src/adapters/postgresql/schemas/jsonb.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAYxD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GACjC,MAAM,EAAE,CAMV;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAC1C,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAcrB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GACjC,MAAM,CAKR;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAoC7D;AAID,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAgC/B,CAAC;AAGL,eAAO,MAAM,kBAAkB;;;;;;;;;;;kBAG9B,CAAC;AAIF,eAAO,MAAM,kBAAkB;;;;;;;;;;;iBAwC3B,CAAC;AAGL,eAAO,MAAM,cAAc;;;;;;;;;;;kBAG1B,CAAC;AAIF,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"jsonb.d.ts","sourceRoot":"","sources":["../../../../src/adapters/postgresql/schemas/jsonb.ts"],"names":[],"mappings":"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"}
|
|
@@ -229,6 +229,10 @@ export const JsonbContainsSchemaBase = z
|
|
|
229
229
|
.describe("Columns to select in result"),
|
|
230
230
|
where: z.string().optional().describe("Additional WHERE clause filter"),
|
|
231
231
|
filter: z.string().optional().describe("WHERE clause (alias for where)"),
|
|
232
|
+
limit: z
|
|
233
|
+
.number()
|
|
234
|
+
.optional()
|
|
235
|
+
.describe("Maximum number of rows to return (default: 100). Use 0 for all rows."),
|
|
232
236
|
schema: z.string().optional().describe("Schema name (default: public)"),
|
|
233
237
|
})
|
|
234
238
|
.refine((data) => data.table !== undefined || data.tableName !== undefined, {
|
|
@@ -256,6 +260,10 @@ export const JsonbPathQuerySchemaBase = z
|
|
|
256
260
|
.describe("Variables for JSONPath (access with $var_name)"),
|
|
257
261
|
where: z.string().optional().describe("WHERE clause"),
|
|
258
262
|
filter: z.string().optional().describe("WHERE clause (alias for where)"),
|
|
263
|
+
limit: z
|
|
264
|
+
.number()
|
|
265
|
+
.optional()
|
|
266
|
+
.describe("Maximum number of results to return (default: 100). Use 0 for all results."),
|
|
259
267
|
schema: z.string().optional().describe("Schema name (default: public)"),
|
|
260
268
|
})
|
|
261
269
|
.refine((data) => data.table !== undefined || data.tableName !== undefined, {
|
|
@@ -576,7 +584,15 @@ export const JsonbContainsOutputSchema = z.object({
|
|
|
576
584
|
.array(z.record(z.string(), z.unknown()))
|
|
577
585
|
.optional()
|
|
578
586
|
.describe("Matching rows"),
|
|
579
|
-
count: z.number().optional().describe("Number of matching rows"),
|
|
587
|
+
count: z.number().optional().describe("Number of matching rows returned"),
|
|
588
|
+
truncated: z
|
|
589
|
+
.boolean()
|
|
590
|
+
.optional()
|
|
591
|
+
.describe("Whether results were truncated by the limit"),
|
|
592
|
+
totalCount: z
|
|
593
|
+
.number()
|
|
594
|
+
.optional()
|
|
595
|
+
.describe("Total matching rows before limit (present when truncated)"),
|
|
580
596
|
warning: z
|
|
581
597
|
.string()
|
|
582
598
|
.optional()
|
|
@@ -587,7 +603,15 @@ export const JsonbContainsOutputSchema = z.object({
|
|
|
587
603
|
// Output schema for pg_jsonb_path_query
|
|
588
604
|
export const JsonbPathQueryOutputSchema = z.object({
|
|
589
605
|
results: z.array(z.unknown()).optional().describe("Query results"),
|
|
590
|
-
count: z.number().optional().describe("Number of results"),
|
|
606
|
+
count: z.number().optional().describe("Number of results returned"),
|
|
607
|
+
truncated: z
|
|
608
|
+
.boolean()
|
|
609
|
+
.optional()
|
|
610
|
+
.describe("Whether results were truncated by the limit"),
|
|
611
|
+
totalCount: z
|
|
612
|
+
.number()
|
|
613
|
+
.optional()
|
|
614
|
+
.describe("Total results before limit (present when truncated)"),
|
|
591
615
|
success: z.boolean().optional().describe("False on error"),
|
|
592
616
|
error: z.string().optional().describe("Error message"),
|
|
593
617
|
});
|