@enfyra/mcp-server 0.1.97 → 0.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 +6 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/cleanup.d.ts +12 -0
- package/dist/lib/cleanup.js +9 -0
- package/dist/lib/cleanup.js.map +1 -0
- package/dist/lib/discovery-tools.js +9 -0
- package/dist/lib/discovery-tools.js.map +1 -1
- package/dist/lib/mcp-example-extensions.js +1 -1
- package/dist/lib/mcp-example-extensions.js.map +1 -1
- package/dist/lib/mcp-example-flows.js +25 -0
- package/dist/lib/mcp-example-flows.js.map +1 -1
- package/dist/lib/mcp-example-queries-deep.js +23 -0
- package/dist/lib/mcp-example-queries-deep.js.map +1 -1
- package/dist/lib/mcp-usage-telemetry.d.ts +4 -0
- package/dist/lib/mcp-usage-telemetry.js +12 -0
- package/dist/lib/mcp-usage-telemetry.js.map +1 -1
- package/dist/lib/method-tools.js +47 -9
- package/dist/lib/method-tools.js.map +1 -1
- package/dist/lib/mutation-guards.d.ts +20 -0
- package/dist/lib/mutation-guards.js +17 -4
- package/dist/lib/mutation-guards.js.map +1 -1
- package/dist/lib/platform-endpoint-workflow.d.ts +17 -0
- package/dist/lib/platform-endpoint-workflow.js +11 -0
- package/dist/lib/platform-endpoint-workflow.js.map +1 -1
- package/dist/lib/platform-extension-source.d.ts +55 -22
- package/dist/lib/platform-extension-source.js +72 -22
- package/dist/lib/platform-extension-source.js.map +1 -1
- package/dist/lib/platform-extension-tools.js +80 -16
- package/dist/lib/platform-extension-tools.js.map +1 -1
- package/dist/lib/platform-extension-workflow.d.ts +7 -0
- package/dist/lib/platform-extension-workflow.js +19 -3
- package/dist/lib/platform-extension-workflow.js.map +1 -1
- package/dist/lib/platform-flow-operations.d.ts +24 -11
- package/dist/lib/platform-flow-operations.js +28 -8
- package/dist/lib/platform-flow-operations.js.map +1 -1
- package/dist/lib/platform-flow-tools.js +10 -4
- package/dist/lib/platform-flow-tools.js.map +1 -1
- package/dist/lib/platform-resource-operations.d.ts +17 -1
- package/dist/lib/platform-resource-operations.js +15 -4
- package/dist/lib/platform-resource-operations.js.map +1 -1
- package/dist/lib/platform-resource-tools.js +12 -6
- package/dist/lib/platform-resource-tools.js.map +1 -1
- package/dist/lib/platform-route-tools.js +10 -3
- package/dist/lib/platform-route-tools.js.map +1 -1
- package/dist/lib/platform-websocket-tools.js +21 -12
- package/dist/lib/platform-websocket-tools.js.map +1 -1
- package/dist/lib/record-tools.js +2 -2
- package/dist/lib/record-tools.js.map +1 -1
- package/dist/lib/required-knowledge.js +8 -4
- package/dist/lib/required-knowledge.js.map +1 -1
- package/dist/lib/route-definition-tools.js +22 -6
- package/dist/lib/route-definition-tools.js.map +1 -1
- package/dist/lib/schema-table-tools.js +6 -0
- package/dist/lib/schema-table-tools.js.map +1 -1
- package/dist/lib/script-tools.js +73 -15
- package/dist/lib/script-tools.js.map +1 -1
- package/dist/lib/source-artifacts.d.ts +29 -0
- package/dist/lib/source-artifacts.js +37 -4
- package/dist/lib/source-artifacts.js.map +1 -1
- package/dist/lib/tool-record-operations.d.ts +17 -0
- package/dist/lib/tool-record-operations.js +10 -1
- package/dist/lib/tool-record-operations.js.map +1 -1
- package/dist/lib/workflow-definitions.js +4 -4
- package/dist/lib/workflow-definitions.js.map +1 -1
- package/dist/lib/workflow-planner.d.ts +1 -1
- package/package.json +1 -1
|
@@ -9,6 +9,7 @@ import { fetchAPI } from './fetch.js';
|
|
|
9
9
|
import { validateScriptSourceIfPresent } from './mutation-guards.js';
|
|
10
10
|
import { assertDynamicCodeKnowledgeAck, assertGlobalRulesAck, dynamicCodeKnowledgeAckParam, globalRulesAckParam } from './required-knowledge.js';
|
|
11
11
|
import { validateMainTableRoutePath } from './route-guards.js';
|
|
12
|
+
import { materializeSourceInput } from './source-artifacts.js';
|
|
12
13
|
export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
13
14
|
server.tool('get_all_routes', 'List route definitions with minimal fields. Complete route lists must pass either limit or all=true. If search is provided without limit, the tool returns a bounded lookup window of 10 matches. Call inspect_route for handlers/hooks/permissions detail.', {
|
|
14
15
|
includeDisabled: z.boolean().optional().default(false).describe('Include disabled routes'),
|
|
@@ -125,15 +126,19 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
125
126
|
.describe('Single enfyra_method.name to create. Prefer this for one handler.'),
|
|
126
127
|
methods: z.array(z.string()).optional()
|
|
127
128
|
.describe('Batch create multiple handlers. Use only when the same sourceCode applies to every method.'),
|
|
128
|
-
sourceCode: z.string().describe('Handler JavaScript sourceCode.
|
|
129
|
+
sourceCode: z.string().optional().describe('Handler JavaScript sourceCode. Prefer sourceFile/sourceResourceUri when the reviewed source already exists as an MCP artifact.'),
|
|
130
|
+
sourceFile: z.string().optional().describe('Previously returned route handler source artifact tmpFile.'),
|
|
131
|
+
sourceResourceUri: z.string().optional().describe('Previously returned enfyra-source artifact URI for the route handler.'),
|
|
129
132
|
scriptLanguage: z.enum(['javascript', 'typescript']).optional().default('javascript').describe('Script language for compiler. Default javascript.'),
|
|
130
133
|
timeout: z.number().optional().describe('Timeout in ms for each route+method handler row (not a route-level setting; default system timeout is usually 30000).'),
|
|
131
134
|
globalRulesAckKey: globalRulesAckParam(z),
|
|
132
135
|
knowledgeAckKey: dynamicCodeKnowledgeAckParam(z),
|
|
133
136
|
allowCanonicalRoute: z.boolean().optional().default(false).describe('Explicit acknowledgement for adding a new handler to a canonical main-table route. Use only when the new method intentionally belongs to the shared eApp/admin CRUD surface; third-party endpoint-specific behavior must use a separate custom route.'),
|
|
134
|
-
}, async ({ routeId, method, methods, sourceCode, scriptLanguage, timeout, globalRulesAckKey, knowledgeAckKey, allowCanonicalRoute }) => {
|
|
137
|
+
}, async ({ routeId, method, methods, sourceCode, sourceFile, sourceResourceUri, scriptLanguage, timeout, globalRulesAckKey, knowledgeAckKey, allowCanonicalRoute }) => {
|
|
135
138
|
assertGlobalRulesAck(globalRulesAckKey);
|
|
136
139
|
assertDynamicCodeKnowledgeAck(knowledgeAckKey);
|
|
140
|
+
const materialized = materializeSourceInput({ source: sourceCode, sourceFile, sourceResourceUri, fieldName: 'sourceCode', tableName: 'enfyra_route_handler', id: routeId });
|
|
141
|
+
sourceCode = materialized.source;
|
|
137
142
|
const routeQuery = new URLSearchParams({
|
|
138
143
|
filter: JSON.stringify({ id: { _eq: routeId } }),
|
|
139
144
|
fields: 'id,path,mainTable.id,mainTable.name',
|
|
@@ -179,6 +184,7 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
179
184
|
handlers: results,
|
|
180
185
|
canonicalRouteAcknowledged: Boolean(targetRoute?.mainTable && allowCanonicalRoute),
|
|
181
186
|
scriptValidation,
|
|
187
|
+
sourceArtifact: materialized.sourceArtifact,
|
|
182
188
|
routeReload,
|
|
183
189
|
detailHint: 'Use inspect_route with the same routeId/path to inspect saved handlers.',
|
|
184
190
|
}, null, 2) }] };
|
|
@@ -192,7 +198,9 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
192
198
|
].join(' '), {
|
|
193
199
|
routeId: z.union([z.string(), z.number()]).describe('Route definition ID'),
|
|
194
200
|
name: z.string().describe('Hook name (unique per route)'),
|
|
195
|
-
code: z.string().describe('Hook JavaScript sourceCode.
|
|
201
|
+
code: z.string().optional().describe('Hook JavaScript sourceCode. Prefer sourceFile/sourceResourceUri when the reviewed source already exists as an MCP artifact.'),
|
|
202
|
+
sourceFile: z.string().optional().describe('Previously returned hook source artifact tmpFile.'),
|
|
203
|
+
sourceResourceUri: z.string().optional().describe('Previously returned enfyra-source artifact URI for the hook.'),
|
|
196
204
|
scriptLanguage: z.enum(['javascript', 'typescript']).optional().default('javascript').describe('Script language for compiler. Default javascript.'),
|
|
197
205
|
methods: z.array(z.string()).optional()
|
|
198
206
|
.describe('Method names this hook applies to. Default: built-in REST methods GET, POST, PATCH, DELETE.'),
|
|
@@ -200,9 +208,11 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
200
208
|
isEnabled: z.boolean().optional().default(true).describe('Enable hook immediately'),
|
|
201
209
|
globalRulesAckKey: globalRulesAckParam(z),
|
|
202
210
|
knowledgeAckKey: dynamicCodeKnowledgeAckParam(z),
|
|
203
|
-
}, async ({ routeId, name, code, scriptLanguage, methods, priority, isEnabled, globalRulesAckKey, knowledgeAckKey }) => {
|
|
211
|
+
}, async ({ routeId, name, code, sourceFile, sourceResourceUri, scriptLanguage, methods, priority, isEnabled, globalRulesAckKey, knowledgeAckKey }) => {
|
|
204
212
|
assertGlobalRulesAck(globalRulesAckKey);
|
|
205
213
|
assertDynamicCodeKnowledgeAck(knowledgeAckKey);
|
|
214
|
+
const materialized = materializeSourceInput({ source: code, sourceFile, sourceResourceUri, fieldName: 'sourceCode', tableName: 'enfyra_pre_hook', id: routeId });
|
|
215
|
+
code = materialized.source;
|
|
206
216
|
const methodMap = await getMethodMap();
|
|
207
217
|
const methodNames = methods || ['GET', 'POST', 'PATCH', 'DELETE'];
|
|
208
218
|
const scriptValidation = await validateScriptSourceIfPresent(fetchAPI, ENFYRA_API_URL, 'enfyra_pre_hook', {
|
|
@@ -230,6 +240,7 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
230
240
|
name,
|
|
231
241
|
routeId,
|
|
232
242
|
scriptValidation,
|
|
243
|
+
sourceArtifact: materialized.sourceArtifact,
|
|
233
244
|
routeReload,
|
|
234
245
|
}, null, 2) }] };
|
|
235
246
|
});
|
|
@@ -241,7 +252,9 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
241
252
|
].join(' '), {
|
|
242
253
|
routeId: z.union([z.string(), z.number()]).describe('Route definition ID'),
|
|
243
254
|
name: z.string().describe('Hook name (unique per route)'),
|
|
244
|
-
code: z.string().describe('Hook JavaScript sourceCode.
|
|
255
|
+
code: z.string().optional().describe('Hook JavaScript sourceCode. Prefer sourceFile/sourceResourceUri when the reviewed source already exists as an MCP artifact.'),
|
|
256
|
+
sourceFile: z.string().optional().describe('Previously returned hook source artifact tmpFile.'),
|
|
257
|
+
sourceResourceUri: z.string().optional().describe('Previously returned enfyra-source artifact URI for the hook.'),
|
|
245
258
|
scriptLanguage: z.enum(['javascript', 'typescript']).optional().default('javascript').describe('Script language for compiler. Default javascript.'),
|
|
246
259
|
methods: z.array(z.string()).optional()
|
|
247
260
|
.describe('Method names this hook applies to. Default: built-in REST methods GET, POST, PATCH, DELETE.'),
|
|
@@ -249,9 +262,11 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
249
262
|
isEnabled: z.boolean().optional().default(true).describe('Enable hook immediately'),
|
|
250
263
|
globalRulesAckKey: globalRulesAckParam(z),
|
|
251
264
|
knowledgeAckKey: dynamicCodeKnowledgeAckParam(z),
|
|
252
|
-
}, async ({ routeId, name, code, scriptLanguage, methods, priority, isEnabled, globalRulesAckKey, knowledgeAckKey }) => {
|
|
265
|
+
}, async ({ routeId, name, code, sourceFile, sourceResourceUri, scriptLanguage, methods, priority, isEnabled, globalRulesAckKey, knowledgeAckKey }) => {
|
|
253
266
|
assertGlobalRulesAck(globalRulesAckKey);
|
|
254
267
|
assertDynamicCodeKnowledgeAck(knowledgeAckKey);
|
|
268
|
+
const materialized = materializeSourceInput({ source: code, sourceFile, sourceResourceUri, fieldName: 'sourceCode', tableName: 'enfyra_post_hook', id: routeId });
|
|
269
|
+
code = materialized.source;
|
|
255
270
|
const methodMap = await getMethodMap();
|
|
256
271
|
const methodNames = methods || ['GET', 'POST', 'PATCH', 'DELETE'];
|
|
257
272
|
const scriptValidation = await validateScriptSourceIfPresent(fetchAPI, ENFYRA_API_URL, 'enfyra_post_hook', {
|
|
@@ -279,6 +294,7 @@ export function registerRouteDefinitionTools(server, ENFYRA_API_URL) {
|
|
|
279
294
|
name,
|
|
280
295
|
routeId,
|
|
281
296
|
scriptValidation,
|
|
297
|
+
sourceArtifact: materialized.sourceArtifact,
|
|
282
298
|
routeReload,
|
|
283
299
|
}, null, 2) }] };
|
|
284
300
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route-definition-tools.js","sourceRoot":"","sources":["../../src/lib/route-definition-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"route-definition-tools.js","sourceRoot":"","sources":["../../src/lib/route-definition-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -98,6 +98,12 @@ export function registerSchemaTableTools(server, ENFYRA_API_URL, options = {}) {
|
|
|
98
98
|
? 'create_tables auto-includes _id/ObjectId; do not include your own primary key.'
|
|
99
99
|
: 'create_tables auto-includes id/int; do not include your own primary key.',
|
|
100
100
|
reservedColumnRule: 'Do not declare id, _id, createdAt, or updatedAt in create_tables/create_columns. create_tables strips them before save and reports skippedAutoColumns; create_columns rejects them.',
|
|
101
|
+
timestampSemantics: {
|
|
102
|
+
createdAt: 'System-managed insert timestamp. It is assigned when the record is created and is not a domain-specific creation event.',
|
|
103
|
+
updatedAt: 'System-managed last persisted-write timestamp. Enfyra refreshes it on record updates; use it for generic last-mutation or changed-since logic.',
|
|
104
|
+
domainTimestampRule: 'Only add a separate timestamp when it represents a distinct business event, such as lastProcessedAt, lastSyncedAt, lastSuccessfulRunAt, publishedAt, or completedAt. Do not add lastUpdated/lastModified as aliases for updatedAt.',
|
|
105
|
+
scheduledFlowRule: 'A flow that runs every few minutes uses a schedule trigger config.cron. A timestamp column is not the scheduler.',
|
|
106
|
+
},
|
|
101
107
|
},
|
|
102
108
|
columnDefinitionInput: {
|
|
103
109
|
allowedFields: ['name', 'type', 'isNullable', 'isUnique', 'isPublished', 'isUpdatable', 'isEncrypted', 'defaultValue', 'description', 'options', 'placeholder', 'metadata'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-table-tools.js","sourceRoot":"","sources":["../../src/lib/schema-table-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema-table-tools.js","sourceRoot":"","sources":["../../src/lib/schema-table-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAEL,uBAAuB,EACvB,eAAe,EACf,oBAAoB,EACpB,wBAAwB,EACxB,KAAK,EACL,mCAAmC,EACnC,mBAAmB,EACnB,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACrB,mBAAmB,EACnB,+BAA+B,EAC/B,kCAAkC,EAClC,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,UAAU,wBAAwB,CAAC,MAAM,EAAE,cAAc,EAAE,UAAgC,EAAE;IACjG,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC;IAC5C,MAAM,EACJ,qBAAqB,EACrB,wBAAwB,EACxB,cAAc,EACd,cAAc,EACd,cAAc,GACf,GAAG,0BAA0B,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACxD,eAAe;IAEb,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,uLAAuL,EACvL;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uFAAuF,CAAC;QAC/I,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC;QACnH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;KACvG,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/B,IAAI,CAAC,GAAG,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,0HAA0H,CAAC,CAAC;QAC9I,CAAC;QACD,IAAI,GAAG,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,OAAO;aACnB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;YACxB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI;YAC1B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACtC,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,IAAI;YAC5C,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;aACF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC;iBAChD,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QACL,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QACtE,OAAO,WAAW,CAAC;YACjB,MAAM,EAAE,gBAAgB;YACxB,eAAe,EAAE,OAAO,CAAC,MAAM;YAC/B,iBAAiB,EAAE,MAAM,CAAC,MAAM;YAChC,kBAAkB,EAAE,cAAc,CAAC,MAAM;YACxC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;YACjB,mBAAmB,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YAC3E,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc;YACrC,MAAM,EAAE,MAAM,IAAI,IAAI;YACtB,MAAM,EAAE,cAAc;YACtB,UAAU,EAAE,iHAAiH;SAC9H,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEJ,MAAM,CAAC,IAAI,CACP,2BAA2B,EAC3B;QACE,0DAA0D;QAC1D,gEAAgE;QAChE,6LAA6L;KAC9L,CAAC,IAAI,CAAC,GAAG,CAAC,EACX,EAAE,EACF,KAAK,IAAI,EAAE;QACT,MAAM,CAAC,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC3F,oBAAoB,CAAC,cAAc,CAAC;YACpC,kBAAkB,CAAC,cAAc,EAAE,cAAc,CAAC;YAClD,kBAAkB,CAAC,cAAc,EAAE,eAAe,CAAC;YACnD,kBAAkB,CAAC,cAAc,EAAE,iBAAiB,CAAC;SACtD,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,mCAAmC,CAAC,cAAc,CAAC,CAAC;QAC5E,MAAM,aAAa,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;QACzF,MAAM,eAAe,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAC/F,MAAM,eAAe,GAAG,mBAAmB,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAC3E,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;QAC9E,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;QACpF,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACjF,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAEvF,OAAO,WAAW,CAAC;YACjB,MAAM,EAAE,uBAAuB;YAC/B,QAAQ,EAAE,wIAAwI;YAClJ,eAAe;YACf,iBAAiB,EAAE;gBACjB,0BAA0B,EAAE,kBAAkB;gBAC9C,0BAA0B,EAAE,kBAAkB;gBAC9C,kBAAkB,EAAE,eAAe,CAAC,MAAM,KAAK,SAAS;oBACtD,CAAC,CAAC,iEAAiE;oBACnE,CAAC,CAAC,yDAAyD;aAC9D;YACD,gBAAgB,EAAE;gBAChB,YAAY,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,gBAAgB,CAAC;gBACvD,aAAa,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;gBACvC,gBAAgB,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gBACxC,mBAAmB,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC;gBAChD,kBAAkB,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC;gBACpD,QAAQ,EAAE,eAAe,CAAC,MAAM,KAAK,SAAS;oBAC5C,CAAC,CAAC,gFAAgF;oBAClF,CAAC,CAAC,0EAA0E;gBAC9E,kBAAkB,EAAE,qLAAqL;gBACzM,kBAAkB,EAAE;oBAClB,SAAS,EAAE,yHAAyH;oBACpI,SAAS,EAAE,gJAAgJ;oBAC3J,mBAAmB,EAAE,oOAAoO;oBACzP,iBAAiB,EAAE,kHAAkH;iBACtI;aACF;YACD,qBAAqB,EAAE;gBACrB,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,CAAC;gBAC3K,SAAS,EAAE,eAAe;gBAC1B,aAAa,EAAE;oBACb,qDAAqD;oBACrD,4BAA4B;oBAC5B,uGAAuG;oBACvG,mDAAmD;oBACnD,4BAA4B;oBAC5B,2CAA2C;oBAC3C,6DAA6D;oBAC7D,oFAAoF;oBACpF,2BAA2B;iBAC5B;gBACD,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC5G,kBAAkB,EAAE,wIAAwI;gBAC5J,gBAAgB,EAAE;oBAChB,WAAW,EAAE,UAAU;oBACvB,YAAY,EAAE,mDAAmD;oBACjE,aAAa,EAAE,yQAAyQ;oBACxR,UAAU,EAAE,mLAAmL;oBAC/L,UAAU,EAAE,8IAA8I;iBAC3J;gBACD,aAAa,EAAE,wJAAwJ;aACxK;YACD,uBAAuB,EAAE;gBACvB,aAAa,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,qBAAqB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,CAAC;gBACnJ,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC;gBAClH,eAAe,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC;gBAC/F,uBAAuB,EAAE,uBAAuB;gBAChD,IAAI,EAAE,0LAA0L;gBAChM,aAAa,EAAE,6LAA6L;gBAC5M,iBAAiB,EAAE,qSAAqS;aACzT;YACD,WAAW,EAAE;gBACX,OAAO,EAAE,yHAAyH;gBAClI,OAAO,EAAE,uEAAuE;gBAChF,eAAe,EAAE,qNAAqN;gBACtO,qBAAqB,EAAE,mMAAmM;gBAC1N,oBAAoB,EAAE,4MAA4M;aACnO;YACD,mBAAmB,EAAE;gBACnB,sHAAsH;gBACtH,0EAA0E;gBAC1E,iGAAiG;gBACjG,8GAA8G;gBAC9G,uJAAuJ;gBACvJ,8IAA8I;gBAC9I,iGAAiG;gBACjG,8FAA8F;aAC/F;YACD,sBAAsB,EAAE;gBACtB,YAAY,EAAE,eAAe;gBAC7B,aAAa,EAAE,gBAAgB;gBAC/B,eAAe,EAAE,kBAAkB;aACpC;SACF,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEJ,0BAA0B;IAExB,MAAM,CAAC,IAAI,CACT,eAAe,EACf;QACE,+GAA+G;QAC/G,uMAAuM;QACvM,wKAAwK;QACxK,yNAAyN;QACzN,4HAA4H;QAC5H,wMAAwM;QACxM,oIAAoI;QACpI,+IAA+I;QAC/I,4JAA4J;KAC7J,CAAC,IAAI,CAAC,GAAG,CAAC,EACX;QACE,KAAK,EAAE,oBAAoB,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0FAA0F,CAAC;QACnK,MAAM,EAAE,oBAAoB,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0GAA0G,CAAC;QACpL,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,yFAAyF,CAAC;QACtK,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;KAC1C,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE,EAAE;QACvD,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;QACxC,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC3H,MAAM,WAAW,GAAG,+BAA+B,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC;QACnG,eAAe,CAAC,eAAe,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACxD,+BAA+B,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAClE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAClH,IAAI,eAAe,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;gBAChD,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,gFAAgF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtH,CAAC;QACA,MAAM,OAAO,GAAgB,EAAE,CAAC;QACjC,MAAM,iBAAiB,GAAgB,EAAE,CAAC;QAC1C,MAAM,mBAAmB,GAAgB,EAAE,CAAC;QAC5C,MAAM,eAAe,GAAG,IAAI,GAAG,EAA2B,CAAC;QAE3D,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;YACnG,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YACrD,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9F,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC;gBACrD,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC;oBAChD,aAAa,EAAE,OAAO;oBACtB,aAAa,EAAE,OAAO;oBACtB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,YAAY,EAAE,QAAQ,CAAC,YAAY;oBACnC,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;oBACjD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,iBAAiB;iBAClB,CAAC,CAAC,CAAC;YACN,CAAC;YACD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAAC;gBACtD,iBAAiB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC7G,mBAAmB,CAAC,IAAI,CAAC;oBACvB,KAAK;oBACL,OAAO;oBACP,GAAG,MAAM,CAAC,mBAAmB;iBAC9B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAEA,MAAM,gBAAgB,GAAgB,EAAE,CAAC;QACzC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACrC,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClF,OAAO,YAAY,GAAG,aAAa,CAAC;QACtC,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,OAAO,QAAQ,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAChH,MAAM,gBAAgB,GAAG,CAAC,UAAU,IAAI,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;YAClI,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;gBACjD,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,aAAa,EAAE,gBAAgB;gBAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;gBACjD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,iBAAiB;aAClB,CAAC,CAAC;YACF,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClG,CAAC;QAED,MAAM,0BAA0B,GAAgB,EAAE,CAAC;QACnD,KAAK,MAAM,WAAW,IAAI,mBAAmB,EAAE,CAAC;YAC9C,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC,WAAW,CAAC,OAAO,EAAE;gBACjG,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,OAAO,EAAE,WAAW,CAAC,OAAO;aAC7B,CAAC,CAAC,CAAC;YACJ,IAAI,gBAAgB;gBAAE,0BAA0B,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC;QAC3G,CAAC;QAED,OAAO,WAAW,CAAC;YACjB,MAAM,EAAE,gBAAgB;YACxB,SAAS,EAAE,WAAW,CAAC,MAAM;YAC7B,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,qBAAqB,EAAE,iBAAiB,CAAC,MAAM;YAC/C,oBAAoB,EAAE,gBAAgB,CAAC,MAAM;YAC7C,uBAAuB,EAAE,mBAAmB,CAAC,MAAM;YACnD,8BAA8B,EAAE,0BAA0B,CAAC,MAAM;YACjE,UAAU,EAAE,IAAI;YAChB,wBAAwB,EAAE,IAAI;YAC9B,6BAA6B,EAAE,IAAI;YACnC,YAAY,EAAE;gBACZ,iBAAiB,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,OAAO,EAAE;gBACnD,iBAAiB;gBACjB,gBAAgB,EAAE,iBAAiB;gBACnC,gBAAgB,EAAE,oJAAoJ;gBACtK,UAAU,EAAE,6JAA6J;gBACzK,SAAS,EAAE,wJAAwJ;aACpK;YACD,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC1G,GAAG,IAAI;gBACP,MAAM,EAAE;oBACN,QAAQ,EAAE,MAAM,EAAE,QAAQ;oBAC1B,qBAAqB,EAAE,MAAM,EAAE,qBAAqB;oBACpD,iBAAiB,EAAE,MAAM,EAAE,iBAAiB;iBAC7C;aACF,CAAC,CAAC;YACH,gBAAgB,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;YAC7H,0BAA0B,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;SAC5I,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEL,MAAM,CAAC,IAAI,CACP,eAAe,EACf,gKAAgK,EAChK;QACE,KAAK,EAAE,oBAAoB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,2KAA2K,CAAC;QAC1O,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;QACnI,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC;KAC1C,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE,EAAE;QAC/C,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACxD,eAAe,CAAC,eAAe,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,OAAO,GAAgB,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,wBAAwB,CAAC,CAAC;YAC3E,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3I,CAAC,CACF,CAAC;IAEJ,MAAM,CAAC,IAAI,CACP,eAAe,EACf,iSAAiS,EACjS;QACE,KAAK,EAAE,oBAAoB,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,qNAAqN,CAAC;QACpR,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;QACnI,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,+EAA+E,CAAC;QACxI,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uFAAuF,CAAC;KACvJ,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,EAAE;QACxD,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACxD,eAAe,CAAC,eAAe,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACxD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,kCAAkC,CAAC,CAAC;QAC1G,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,CAAC;YACxD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBAClD,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO;oBAAE,SAAS;gBAC9C,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;oBAC1B,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,4DAA4D,IAAI,CAAC,SAAS,8CAA8C,CAAC,CAAC;gBAC1J,CAAC;gBACD,MAAM,eAAe,GAAG,kCAAkC,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,KAAK,aAAa,CAAC,CAAC;gBACjH,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC7D,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,iCAAiC,eAAe,cAAc,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;gBACvH,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,OAAO,GAAgB,EAAE,CAAC;YAChC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBAClD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC;oBACxD,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,eAAe,EAAE,SAAS;oBAC1B,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YACrC,CAAC;YACD,MAAM,OAAO,GAAG;gBACd,MAAM,EAAE,uBAAuB;gBAC/B,SAAS,EAAE,WAAW,CAAC,MAAM;gBAC7B,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,IAAI;gBACjB,OAAO;gBACP,aAAa,EAAE;oBACb,kBAAkB,EAAE,iBAAiB;oBACrC,eAAe,EAAE,KAAK;oBACtB,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACtC,EAAE,EAAE,IAAI,CAAC,OAAO;wBAChB,IAAI,EAAE,IAAI,CAAC,SAAS;qBACrB,CAAC,CAAC;iBACJ;gBACD,IAAI,EAAE,6IAA6I;aACpJ,CAAC;YACF,OAAO,yBAAyB,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACjF,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9E,KAAK;YACL,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC;gBAC5C,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;SACJ,CAAC,CAAC,CAAC;QACJ,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC;QAChC,MAAM,aAAa,GAAG;YACpB,kBAAkB,EAAE,8BAA8B;YAClD,eAAe,EAAE,KAAK,CAAC,MAAM,KAAK,WAAW;mBACxC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,KAAK,IAAI,CAAC;YAC1E,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,IAAI,EAAE,CAAC;YACrF,kBAAkB,EAAE,OAAO;iBACxB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC;iBACpD,MAAM,CAAC,OAAO,CAAC;SACnB,CAAC;QACF,MAAM,UAAU,GAAG,aAAa,CAAC,eAAe,KAAK,IAAI,CAAC;QAC1D,MAAM,OAAO,GAAG;YACd,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,iBAAiB;gBACxC,CAAC,CAAC,+BAA+B;gBACjC,CAAC,CAAC,UAAU;oBACV,CAAC,CAAC,0BAA0B;oBAC5B,CAAC,CAAC,gBAAgB;YACtB,SAAS,EAAE,WAAW,CAAC,MAAM;YAC7B,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,OAAO;YACP,aAAa;YACb,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvC,MAAM,EAAE,iBAAiB;gBACzB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;gBACxC,kBAAkB,EAAE,IAAI;aACzB,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACF,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC,MAAM,KAAK,iBAAiB,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IAClG,CAAC,CACF,CAAC;IAEJ,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,0LAA0L,EAC1L;QACE,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;QACrG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2EAA2E,CAAC;QAC7G,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,qDAAqD,CAAC;QAClH,iBAAiB,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;KAC3H,EACD,KAAK,EAAE,EAAE,mBAAmB,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,EAAE;QAC/E,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;QACxC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,GAAG,WAAW,GAAG,SAAS,qBAAqB,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,EAAE;YACtI,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC;QAChF,MAAM,YAAY,GAAG,WAAW,EAAE,QAAQ,KAAK,IAAI,IAAI,WAAW,EAAE,mBAAmB,CAAC;QACxF,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,WAAW,CAAC;gBACjB,MAAM,EAAE,+BAA+B;gBACvC,OAAO,EAAE,6IAA6I;gBACtJ,sBAAsB,EAAE,WAAW,CAAC,mBAAmB;aACxD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,WAAW,CAAC;YACjB,MAAM,EAAE,2BAA2B;YACnC,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CACF,CAAC;AACJ,CAAC"}
|
package/dist/lib/script-tools.js
CHANGED
|
@@ -6,7 +6,25 @@ import { z } from 'zod';
|
|
|
6
6
|
import { SCRIPT_BACKED_TABLES, fetchScriptRecord, prepareGenericMutation, replaceOccurrence, scriptRecordLabel, sha256, sourcePreview, summarizeMutationResult, } from './enfyra-tool-logic.js';
|
|
7
7
|
import { fetchAPI, validateTableName } from './fetch.js';
|
|
8
8
|
import { assertDynamicCodeKnowledgeAck, assertGlobalRulesAck, dynamicCodeKnowledgeAckParam, globalRulesAckParam } from './required-knowledge.js';
|
|
9
|
-
import { writeSourceArtifact } from './source-artifacts.js';
|
|
9
|
+
import { materializeSourceInput, resolveSourceInput, writeSourceArtifact } from './source-artifacts.js';
|
|
10
|
+
async function verifySavedScriptSource(tableName, id, expectedSourceCode) {
|
|
11
|
+
const saved = await fetchScriptRecord(tableName, id);
|
|
12
|
+
const savedSha256 = sha256(saved.sourceCode);
|
|
13
|
+
const sourceArtifact = writeSourceArtifact({
|
|
14
|
+
tableName,
|
|
15
|
+
id,
|
|
16
|
+
fieldName: saved.sourceField,
|
|
17
|
+
source: saved.sourceCode,
|
|
18
|
+
});
|
|
19
|
+
return {
|
|
20
|
+
valid: saved.sourceCode === expectedSourceCode,
|
|
21
|
+
sourceField: saved.sourceField,
|
|
22
|
+
sourceLength: saved.sourceCode.length,
|
|
23
|
+
sourceSha256: savedSha256,
|
|
24
|
+
sourceFile: sourceArtifact.tmpFile,
|
|
25
|
+
sourceResourceUri: sourceArtifact.resourceUri,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
10
28
|
export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
11
29
|
server.tool('get_script_source', [
|
|
12
30
|
'Fetch the full editable source for one script-backed metadata record without preview truncation.',
|
|
@@ -24,6 +42,7 @@ export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
|
24
42
|
primaryKey,
|
|
25
43
|
sourceField,
|
|
26
44
|
sourceFile: sourceArtifact.tmpFile,
|
|
45
|
+
sourceResourceUri: sourceArtifact.resourceUri,
|
|
27
46
|
sourcePreview: sourceArtifact.preview,
|
|
28
47
|
sourceLength: sourceCode.length,
|
|
29
48
|
sourceSha256: sha256(sourceCode),
|
|
@@ -38,15 +57,17 @@ export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
|
38
57
|
].join(' '), {
|
|
39
58
|
tableName: z.enum(SCRIPT_BACKED_TABLES).describe('Script-backed table to patch'),
|
|
40
59
|
id: z.string().describe('Record ID to patch'),
|
|
41
|
-
oldText: z.string().describe('Exact text to replace'),
|
|
42
|
-
newText: z.string().describe('Replacement text'),
|
|
60
|
+
oldText: z.string().optional().describe('Exact text to replace. Omit when applying a previously returned sourceFile/sourceResourceUri artifact.'),
|
|
61
|
+
newText: z.string().optional().describe('Replacement text. Omit when applying a previously returned sourceFile/sourceResourceUri artifact.'),
|
|
62
|
+
sourceFile: z.string().optional().describe('Previously returned final patched source artifact tmpFile. Use this on apply=true to validate/apply the exact reviewed file without recomputing the patch.'),
|
|
63
|
+
sourceResourceUri: z.string().optional().describe('Previously returned final patched source artifact URI.'),
|
|
43
64
|
occurrence: z.enum(['first', 'all']).optional().default('all').describe('Replace first occurrence or all occurrences.'),
|
|
44
65
|
expectedSourceSha256: z.string().optional().describe('Optional SHA-256 from get_script_source; fails if source changed.'),
|
|
45
66
|
scriptLanguage: z.string().optional().describe('Script language to save. Defaults to existing scriptLanguage or javascript.'),
|
|
46
67
|
apply: z.boolean().optional().default(false).describe('false returns preview only; true validates and saves.'),
|
|
47
68
|
globalRulesAckKey: globalRulesAckParam(z).optional().describe('Required when apply=true. Use globalRulesAckKey from get_enfyra_required_knowledge.'),
|
|
48
69
|
knowledgeAckKey: dynamicCodeKnowledgeAckParam(z).optional().describe('Required when apply=true. Use dynamicCodeAckKey from get_enfyra_required_knowledge.'),
|
|
49
|
-
}, async ({ tableName, id, oldText, newText, occurrence, expectedSourceSha256, scriptLanguage, apply, globalRulesAckKey, knowledgeAckKey }) => {
|
|
70
|
+
}, async ({ tableName, id, oldText, newText, sourceFile, sourceResourceUri, occurrence, expectedSourceSha256, scriptLanguage, apply, globalRulesAckKey, knowledgeAckKey }) => {
|
|
50
71
|
const { record, sourceField, sourceCode } = await fetchScriptRecord(tableName, id);
|
|
51
72
|
if (sourceField !== 'sourceCode') {
|
|
52
73
|
throw new Error(`patch_script_source only saves sourceCode records. Record uses "${sourceField}"; use update_records intentionally for this legacy field.`);
|
|
@@ -55,24 +76,41 @@ export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
|
55
76
|
if (expectedSourceSha256 && expectedSourceSha256 !== beforeHash) {
|
|
56
77
|
throw new Error(`Source hash mismatch. Current sha256 is ${beforeHash}; re-read with get_script_source before patching.`);
|
|
57
78
|
}
|
|
58
|
-
|
|
59
|
-
|
|
79
|
+
if ((sourceFile || sourceResourceUri) && (oldText !== undefined || newText !== undefined)) {
|
|
80
|
+
throw new Error('When sourceFile/sourceResourceUri is provided, omit oldText and newText so the exact artifact is applied.');
|
|
81
|
+
}
|
|
82
|
+
if (!sourceFile && !sourceResourceUri && (oldText === undefined || newText === undefined)) {
|
|
83
|
+
throw new Error('Provide oldText and newText, or provide sourceFile/sourceResourceUri from a reviewed patch artifact.');
|
|
84
|
+
}
|
|
85
|
+
const patchResult = sourceFile || sourceResourceUri
|
|
86
|
+
? { occurrences: 0, patched: resolveSourceInput({ sourceFile, sourceResourceUri, fieldName: 'sourceCode' }), replaced: false }
|
|
87
|
+
: replaceOccurrence(sourceCode, oldText, newText, occurrence || 'all');
|
|
88
|
+
const { occurrences, patched, replaced } = patchResult;
|
|
89
|
+
const patchedArtifact = materializeSourceInput({
|
|
90
|
+
source: patched,
|
|
91
|
+
fieldName: 'sourceCode',
|
|
92
|
+
tableName,
|
|
93
|
+
id,
|
|
94
|
+
});
|
|
95
|
+
const exactPatched = patchedArtifact.source;
|
|
96
|
+
const afterHash = sha256(exactPatched);
|
|
60
97
|
const payload = {
|
|
61
98
|
action: apply ? 'patch_script_source_applied' : 'patch_script_source_preview',
|
|
62
99
|
tableName,
|
|
63
100
|
id,
|
|
64
101
|
sourceField,
|
|
65
102
|
sourceLengthBefore: sourceCode.length,
|
|
66
|
-
sourceLengthAfter:
|
|
103
|
+
sourceLengthAfter: exactPatched.length,
|
|
67
104
|
sourceSha256Before: beforeHash,
|
|
68
105
|
sourceSha256After: afterHash,
|
|
69
106
|
occurrences,
|
|
70
107
|
replaced,
|
|
71
108
|
preview: {
|
|
72
109
|
before: sourcePreview(sourceCode, oldText),
|
|
73
|
-
after: sourcePreview(
|
|
110
|
+
after: sourcePreview(exactPatched, newText || ''),
|
|
74
111
|
},
|
|
75
|
-
|
|
112
|
+
sourceArtifact: patchedArtifact.sourceArtifact,
|
|
113
|
+
next: apply ? undefined : 'Call patch_script_source again with apply=true, sourceFile/sourceResourceUri from this artifact, and expectedSourceSha256 set to sourceSha256Before to validate and save.',
|
|
76
114
|
};
|
|
77
115
|
if (!apply) {
|
|
78
116
|
return { content: [{ type: 'text', text: JSON.stringify(payload, null, 2) }] };
|
|
@@ -80,7 +118,7 @@ export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
|
80
118
|
assertGlobalRulesAck(globalRulesAckKey);
|
|
81
119
|
assertDynamicCodeKnowledgeAck(knowledgeAckKey);
|
|
82
120
|
const language = scriptLanguage || record.scriptLanguage || 'javascript';
|
|
83
|
-
const prepared = await prepareGenericMutation(tableName, JSON.stringify({ sourceCode:
|
|
121
|
+
const prepared = await prepareGenericMutation(tableName, JSON.stringify({ sourceCode: exactPatched, scriptLanguage: language }));
|
|
84
122
|
const result = await fetchAPI(ENFYRA_API_URL, `/${tableName}/${encodeURIComponent(String(id))}`, { method: 'PATCH', body: JSON.stringify(prepared.payload) });
|
|
85
123
|
return { content: [{ type: 'text', text: JSON.stringify({
|
|
86
124
|
...payload,
|
|
@@ -88,12 +126,14 @@ export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
|
88
126
|
id,
|
|
89
127
|
scriptLanguage: language,
|
|
90
128
|
scriptValidation: prepared.scriptValidation,
|
|
129
|
+
savedSource: await verifySavedScriptSource(tableName, id, exactPatched),
|
|
91
130
|
}, null, 2) }] };
|
|
92
131
|
});
|
|
93
132
|
server.tool('update_script_source', [
|
|
94
133
|
'Update sourceCode on a script-backed record without forcing the caller to JSON-escape long code.',
|
|
134
|
+
'Pass sourceFile or sourceResourceUri from a prior inspect when the reviewed artifact is the intended full replacement; the MCP process reads it without echoing the source through the model call.',
|
|
95
135
|
'Use this for enfyra_flow_step, enfyra_route_handler, enfyra_pre_hook, enfyra_post_hook, enfyra_websocket_event, enfyra_websocket, enfyra_oauth_config, and enfyra_bootstrap_script.',
|
|
96
|
-
'The tool validates sourceCode through /admin/script/validate before saving and never accepts compiledCode.',
|
|
136
|
+
'The tool validates sourceCode through /admin/script/validate before saving, re-reads the saved source, returns a fresh artifact/hash verification, and never accepts compiledCode.',
|
|
97
137
|
].join(' '), {
|
|
98
138
|
tableName: z.enum([
|
|
99
139
|
'enfyra_route_handler',
|
|
@@ -106,22 +146,40 @@ export function registerScriptTools(server, ENFYRA_API_URL) {
|
|
|
106
146
|
'enfyra_bootstrap_script',
|
|
107
147
|
]).describe('Script-backed table to update'),
|
|
108
148
|
id: z.string().describe('Record ID to update'),
|
|
109
|
-
sourceCode: z.string().describe('Editable script sourceCode. Pass the raw code string; do not JSON-escape it yourself.'),
|
|
149
|
+
sourceCode: z.string().optional().describe('Editable script sourceCode. Pass the raw code string; do not JSON-escape it yourself. Use sourceFile or sourceResourceUri instead for a previously inspected artifact.'),
|
|
150
|
+
sourceFile: z.string().optional().describe('Previously returned source artifact tmpFile. The MCP server reads only artifacts created in this process; it rejects arbitrary paths.'),
|
|
151
|
+
sourceResourceUri: z.string().optional().describe('Previously returned enfyra-source artifact URI. The MCP server reads only artifacts created in this process.'),
|
|
152
|
+
expectedSourceSha256: z.string().optional().describe('Optional SHA-256 of the current saved source from inspect/get_script_source. Rejects a stale full replacement.'),
|
|
110
153
|
scriptLanguage: z.string().optional().default('javascript').describe('Script language, usually javascript or typescript'),
|
|
111
154
|
globalRulesAckKey: globalRulesAckParam(z),
|
|
112
155
|
knowledgeAckKey: dynamicCodeKnowledgeAckParam(z),
|
|
113
|
-
}, async ({ tableName, id, sourceCode, scriptLanguage, globalRulesAckKey, knowledgeAckKey }) => {
|
|
156
|
+
}, async ({ tableName, id, sourceCode, sourceFile, sourceResourceUri, expectedSourceSha256, scriptLanguage, globalRulesAckKey, knowledgeAckKey }) => {
|
|
114
157
|
assertGlobalRulesAck(globalRulesAckKey);
|
|
115
158
|
assertDynamicCodeKnowledgeAck(knowledgeAckKey);
|
|
116
159
|
validateTableName(tableName);
|
|
117
|
-
const
|
|
160
|
+
const resolvedSourceCode = resolveSourceInput({
|
|
161
|
+
source: sourceCode,
|
|
162
|
+
sourceFile,
|
|
163
|
+
sourceResourceUri,
|
|
164
|
+
fieldName: 'sourceCode',
|
|
165
|
+
});
|
|
166
|
+
if (expectedSourceSha256) {
|
|
167
|
+
const current = await fetchScriptRecord(tableName, id);
|
|
168
|
+
const currentSha256 = sha256(current.sourceCode);
|
|
169
|
+
if (expectedSourceSha256 !== currentSha256) {
|
|
170
|
+
throw new Error(`Source hash mismatch. Current sha256 is ${currentSha256}; re-read the script artifact before replacing it.`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
const prepared = await prepareGenericMutation(tableName, JSON.stringify({ sourceCode: resolvedSourceCode, scriptLanguage }));
|
|
118
174
|
const result = await fetchAPI(ENFYRA_API_URL, `/${tableName}/${encodeURIComponent(String(id))}`, { method: 'PATCH', body: JSON.stringify(prepared.payload) });
|
|
119
175
|
return { content: [{ type: 'text', text: JSON.stringify({
|
|
120
176
|
...summarizeMutationResult(result, 'updated_script_source', tableName),
|
|
121
177
|
id,
|
|
122
|
-
sourceLength:
|
|
178
|
+
sourceLength: resolvedSourceCode.length,
|
|
179
|
+
sourceSha256: sha256(resolvedSourceCode),
|
|
123
180
|
scriptLanguage,
|
|
124
181
|
scriptValidation: prepared.scriptValidation,
|
|
182
|
+
savedSource: await verifySavedScriptSource(tableName, id, resolvedSourceCode),
|
|
125
183
|
}, null, 2) }] };
|
|
126
184
|
});
|
|
127
185
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"script-tools.js","sourceRoot":"","sources":["../../src/lib/script-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,iBAAiB;AACjB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,EACN,aAAa,EACb,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,4BAA4B,EAC5B,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"script-tools.js","sourceRoot":"","sources":["../../src/lib/script-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export declare const SOURCE_ARTIFACT_DIR: string;
|
|
1
2
|
type SourceArtifactInput = {
|
|
2
3
|
tableName?: string;
|
|
3
4
|
id: string | number;
|
|
@@ -16,11 +17,39 @@ export declare function writeSourceArtifact({ tableName, id, fieldName, source }
|
|
|
16
17
|
sha256: string;
|
|
17
18
|
preview: string;
|
|
18
19
|
};
|
|
20
|
+
export declare function cleanupSourceArtifacts(): {
|
|
21
|
+
directory: string;
|
|
22
|
+
removed: boolean;
|
|
23
|
+
};
|
|
19
24
|
export declare function readSourceArtifactResource(resourceUri: string): {
|
|
20
25
|
uri: string;
|
|
21
26
|
mimeType: string;
|
|
22
27
|
text: string;
|
|
23
28
|
};
|
|
29
|
+
export declare function readSourceArtifactFile(tmpFile: string): string;
|
|
30
|
+
export declare function resolveSourceInput({ source, sourceFile, sourceResourceUri, fieldName }: {
|
|
31
|
+
source?: string;
|
|
32
|
+
sourceFile?: string;
|
|
33
|
+
sourceResourceUri?: string;
|
|
34
|
+
fieldName: string;
|
|
35
|
+
}): string;
|
|
36
|
+
export declare function materializeSourceInput({ source, sourceFile, sourceResourceUri, fieldName, tableName, id }: {
|
|
37
|
+
source?: string;
|
|
38
|
+
sourceFile?: string;
|
|
39
|
+
sourceResourceUri?: string;
|
|
40
|
+
fieldName: string;
|
|
41
|
+
tableName?: string;
|
|
42
|
+
id?: string | number;
|
|
43
|
+
}): {
|
|
44
|
+
source: string;
|
|
45
|
+
sourceArtifact: {
|
|
46
|
+
resourceUri: string;
|
|
47
|
+
tmpFile: string;
|
|
48
|
+
length: number;
|
|
49
|
+
sha256: string;
|
|
50
|
+
preview: string;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
24
53
|
export declare function compactSourceField({ tableName, id, fieldName, source, alwaysWrite }: SourceArtifactInput & {
|
|
25
54
|
alwaysWrite?: boolean;
|
|
26
55
|
}): string | {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createHash } from 'node:crypto';
|
|
2
|
-
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
|
|
3
3
|
import { tmpdir } from 'node:os';
|
|
4
4
|
import { join } from 'node:path';
|
|
5
5
|
const DEFAULT_PREVIEW_CHARS = 480;
|
|
@@ -12,6 +12,7 @@ const SOURCE_FIELD_NAMES = new Set([
|
|
|
12
12
|
'connectionHandlerScript',
|
|
13
13
|
]);
|
|
14
14
|
const SOURCE_ARTIFACTS = new Map();
|
|
15
|
+
export const SOURCE_ARTIFACT_DIR = join(tmpdir(), 'enfyra-mcp-sources');
|
|
15
16
|
function sha256(value) {
|
|
16
17
|
return createHash('sha256').update(String(value), 'utf8').digest('hex');
|
|
17
18
|
}
|
|
@@ -39,15 +40,14 @@ function artifactId(tableName, id, fieldName, hash) {
|
|
|
39
40
|
export function writeSourceArtifact({ tableName, id, fieldName, source }) {
|
|
40
41
|
const hash = sha256(source);
|
|
41
42
|
const extension = extensionForField(fieldName);
|
|
42
|
-
|
|
43
|
-
mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
43
|
+
mkdirSync(SOURCE_ARTIFACT_DIR, { recursive: true, mode: 0o700 });
|
|
44
44
|
const fileName = [
|
|
45
45
|
safePart(tableName),
|
|
46
46
|
safePart(id),
|
|
47
47
|
safePart(fieldName),
|
|
48
48
|
hash.slice(0, 12),
|
|
49
49
|
].join('-') + extension;
|
|
50
|
-
const path = join(
|
|
50
|
+
const path = join(SOURCE_ARTIFACT_DIR, fileName);
|
|
51
51
|
writeFileSync(path, source, { mode: 0o600 });
|
|
52
52
|
const resourceId = artifactId(tableName, id, fieldName, hash);
|
|
53
53
|
const resourceUri = `enfyra-source://artifact/${encodeURIComponent(resourceId)}`;
|
|
@@ -62,6 +62,13 @@ export function writeSourceArtifact({ tableName, id, fieldName, source }) {
|
|
|
62
62
|
: source,
|
|
63
63
|
};
|
|
64
64
|
}
|
|
65
|
+
export function cleanupSourceArtifacts() {
|
|
66
|
+
const existed = existsSync(SOURCE_ARTIFACT_DIR);
|
|
67
|
+
if (existed)
|
|
68
|
+
rmSync(SOURCE_ARTIFACT_DIR, { recursive: true, force: true });
|
|
69
|
+
SOURCE_ARTIFACTS.clear();
|
|
70
|
+
return { directory: SOURCE_ARTIFACT_DIR, removed: existed };
|
|
71
|
+
}
|
|
65
72
|
export function readSourceArtifactResource(resourceUri) {
|
|
66
73
|
let resourceId = '';
|
|
67
74
|
try {
|
|
@@ -82,6 +89,32 @@ export function readSourceArtifactResource(resourceUri) {
|
|
|
82
89
|
text: readFileSync(artifact.path, 'utf8'),
|
|
83
90
|
};
|
|
84
91
|
}
|
|
92
|
+
export function readSourceArtifactFile(tmpFile) {
|
|
93
|
+
const artifact = [...SOURCE_ARTIFACTS.values()].find((item) => item.path === tmpFile);
|
|
94
|
+
if (!artifact) {
|
|
95
|
+
throw new Error('Source artifact file is unavailable in this MCP process. Inspect the live artifact again to create a fresh file.');
|
|
96
|
+
}
|
|
97
|
+
return readFileSync(artifact.path, 'utf8');
|
|
98
|
+
}
|
|
99
|
+
export function resolveSourceInput({ source, sourceFile, sourceResourceUri, fieldName }) {
|
|
100
|
+
const provided = [source !== undefined, sourceFile !== undefined, sourceResourceUri !== undefined].filter(Boolean).length;
|
|
101
|
+
if (provided !== 1) {
|
|
102
|
+
throw new Error(`Provide exactly one of ${fieldName}, sourceFile, or sourceResourceUri.`);
|
|
103
|
+
}
|
|
104
|
+
if (source !== undefined)
|
|
105
|
+
return source;
|
|
106
|
+
if (sourceFile !== undefined)
|
|
107
|
+
return readSourceArtifactFile(sourceFile);
|
|
108
|
+
return readSourceArtifactResource(sourceResourceUri).text;
|
|
109
|
+
}
|
|
110
|
+
export function materializeSourceInput({ source, sourceFile, sourceResourceUri, fieldName, tableName = 'mcp', id = 'input' }) {
|
|
111
|
+
const resolved = resolveSourceInput({ source, sourceFile, sourceResourceUri, fieldName });
|
|
112
|
+
const artifact = writeSourceArtifact({ tableName, id, fieldName, source: resolved });
|
|
113
|
+
return {
|
|
114
|
+
source: readSourceArtifactFile(artifact.tmpFile),
|
|
115
|
+
sourceArtifact: artifact,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
85
118
|
export function compactSourceField({ tableName, id, fieldName, source, alwaysWrite = false }) {
|
|
86
119
|
if (typeof source !== 'string')
|
|
87
120
|
return source;
|