@opengeni/config 1.1.1 → 1.1.2-canary.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/dist/index.d.ts +7 -0
- package/dist/index.js +17 -1
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
- package/src/index.ts +19 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeni/config",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2-canary.0",
|
|
4
4
|
"description": "OpenGeni runtime configuration: settings resolution, deployment knobs, and config validation shared across the server packages.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
"prepublishOnly": "bash ../../scripts/prepublish-guard"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@opengeni/codex": "^0.2.22",
|
|
37
|
-
"@opengeni/contracts": "^3.0.
|
|
38
|
-
"@opengeni/xai-subscription": "^0.1.4",
|
|
36
|
+
"@opengeni/codex": "^0.2.22-canary.8",
|
|
37
|
+
"@opengeni/contracts": "^3.0.2-canary.0",
|
|
38
|
+
"@opengeni/xai-subscription": "^0.1.4-canary.8",
|
|
39
39
|
"zod": "^4.2.1"
|
|
40
40
|
},
|
|
41
41
|
"engines": {
|
package/src/index.ts
CHANGED
|
@@ -283,6 +283,24 @@ export const McpServerConnectionRefSchema = z
|
|
|
283
283
|
});
|
|
284
284
|
export type McpServerConnectionRef = z.infer<typeof McpServerConnectionRefSchema>;
|
|
285
285
|
|
|
286
|
+
/** Operator-owned protocol binding. Tool annotations cannot establish recovery. */
|
|
287
|
+
export const McpOperationRecoverySchema = z
|
|
288
|
+
.record(
|
|
289
|
+
z.string().min(1).max(512).regex(/^\S+$/u),
|
|
290
|
+
z.object({ observerTool: z.string().min(1).max(512).regex(/^\S+$/u) }).strict(),
|
|
291
|
+
)
|
|
292
|
+
.superRefine((bindings, context) => {
|
|
293
|
+
for (const [originalTool, binding] of Object.entries(bindings)) {
|
|
294
|
+
if (originalTool === binding.observerTool) {
|
|
295
|
+
context.addIssue({
|
|
296
|
+
code: "custom",
|
|
297
|
+
path: [originalTool, "observerTool"],
|
|
298
|
+
message: "MCP recovery observer must differ from the original tool",
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
});
|
|
303
|
+
|
|
286
304
|
/** Public, digest-pinned desktop image used by Modal unless the operator overrides it. */
|
|
287
305
|
export const DEFAULT_MODAL_IMAGE_REF =
|
|
288
306
|
"opengenipublicneuacr.azurecr.io/opengeni-desktop@sha256:c3bd17b8841de1bff9bb2777aad422cf8c75de78e2c30f9ac81d0cd6810a1b78";
|
|
@@ -1376,6 +1394,7 @@ const SettingsSchema = z.object({
|
|
|
1376
1394
|
*/
|
|
1377
1395
|
headers: z.record(z.string(), z.string()).optional(),
|
|
1378
1396
|
connectionRef: McpServerConnectionRefSchema.optional(),
|
|
1397
|
+
operationRecovery: McpOperationRecoverySchema.optional(),
|
|
1379
1398
|
}),
|
|
1380
1399
|
)
|
|
1381
1400
|
.default([]),
|