@veruna/api-contracts 6.36.1 → 6.40.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.
Files changed (85) hide show
  1. package/build/locales/validation.d.ts +24 -0
  2. package/build/locales/validation.js +24 -0
  3. package/build/locales/validation.js.map +1 -1
  4. package/build/rest-api.d.ts +6 -0
  5. package/build/rest-api.js +6 -0
  6. package/build/rest-api.js.map +1 -1
  7. package/build/routes/ai-provider-admin.routes.d.ts +2 -0
  8. package/build/routes/ai-provider-admin.routes.js +2 -0
  9. package/build/routes/ai-provider-admin.routes.js.map +1 -1
  10. package/build/routes/model-route-admin.routes.d.ts +4 -0
  11. package/build/routes/model-route-admin.routes.js +4 -0
  12. package/build/routes/model-route-admin.routes.js.map +1 -1
  13. package/build/tsconfig.tsbuildinfo +1 -1
  14. package/build/v1/ai/ai.errors.d.ts +1 -0
  15. package/build/v1/ai/ai.errors.js +5 -0
  16. package/build/v1/ai/ai.errors.js.map +1 -1
  17. package/build/v1/ai-provider/admin/commands/ban-circuit.command.d.ts +30 -0
  18. package/build/v1/ai-provider/admin/commands/ban-circuit.command.js +14 -0
  19. package/build/v1/ai-provider/admin/commands/ban-circuit.command.js.map +1 -0
  20. package/build/v1/ai-provider/admin/commands/index.d.ts +1 -0
  21. package/build/v1/ai-provider/admin/commands/index.js +1 -0
  22. package/build/v1/ai-provider/admin/commands/index.js.map +1 -1
  23. package/build/v1/ai-provider/admin/queries/get-circuit-health.query.d.ts +2 -0
  24. package/build/v1/ai-provider/admin/queries/get-circuit-health.query.js +2 -0
  25. package/build/v1/ai-provider/admin/queries/get-circuit-health.query.js.map +1 -1
  26. package/build/v1/ai-provider/admin/queries/get-circuit.query.d.ts +27 -0
  27. package/build/v1/ai-provider/admin/queries/get-circuit.query.js +15 -0
  28. package/build/v1/ai-provider/admin/queries/get-circuit.query.js.map +1 -0
  29. package/build/v1/ai-provider/admin/queries/index.d.ts +1 -0
  30. package/build/v1/ai-provider/admin/queries/index.js +1 -0
  31. package/build/v1/ai-provider/admin/queries/index.js.map +1 -1
  32. package/build/v1/ai-provider/schemas/circuit-ban-request.schema.d.ts +6 -0
  33. package/build/v1/ai-provider/schemas/circuit-ban-request.schema.js +26 -0
  34. package/build/v1/ai-provider/schemas/circuit-ban-request.schema.js.map +1 -0
  35. package/build/v1/ai-provider/schemas/circuit-ban-source.enum.d.ts +4 -0
  36. package/build/v1/ai-provider/schemas/circuit-ban-source.enum.js +9 -0
  37. package/build/v1/ai-provider/schemas/circuit-ban-source.enum.js.map +1 -0
  38. package/build/v1/ai-provider/schemas/circuit-event-kind.enum.d.ts +6 -0
  39. package/build/v1/ai-provider/schemas/circuit-event-kind.enum.js +11 -0
  40. package/build/v1/ai-provider/schemas/circuit-event-kind.enum.js.map +1 -0
  41. package/build/v1/ai-provider/schemas/circuit-event.schema.d.ts +12 -0
  42. package/build/v1/ai-provider/schemas/circuit-event.schema.js +16 -0
  43. package/build/v1/ai-provider/schemas/circuit-event.schema.js.map +1 -0
  44. package/build/v1/ai-provider/schemas/circuit-health-response.schema.d.ts +19 -0
  45. package/build/v1/ai-provider/schemas/circuit-health-response.schema.js +5 -1
  46. package/build/v1/ai-provider/schemas/circuit-health-response.schema.js.map +1 -1
  47. package/build/v1/ai-provider/schemas/index.d.ts +4 -0
  48. package/build/v1/ai-provider/schemas/index.js +4 -0
  49. package/build/v1/ai-provider/schemas/index.js.map +1 -1
  50. package/build/v1/model-route/admin/commands/ban-circuit.command.d.ts +32 -0
  51. package/build/v1/model-route/admin/commands/ban-circuit.command.js +15 -0
  52. package/build/v1/model-route/admin/commands/ban-circuit.command.js.map +1 -0
  53. package/build/v1/model-route/admin/commands/create-model-route.command.d.ts +6 -0
  54. package/build/v1/model-route/admin/commands/index.d.ts +2 -0
  55. package/build/v1/model-route/admin/commands/index.js +2 -0
  56. package/build/v1/model-route/admin/commands/index.js.map +1 -1
  57. package/build/v1/model-route/admin/commands/reset-circuit.command.d.ts +29 -0
  58. package/build/v1/model-route/admin/commands/reset-circuit.command.js +15 -0
  59. package/build/v1/model-route/admin/commands/reset-circuit.command.js.map +1 -0
  60. package/build/v1/model-route/admin/commands/update-model-route.command.d.ts +6 -0
  61. package/build/v1/model-route/admin/queries/get-circuit.query.d.ts +29 -0
  62. package/build/v1/model-route/admin/queries/get-circuit.query.js +15 -0
  63. package/build/v1/model-route/admin/queries/get-circuit.query.js.map +1 -0
  64. package/build/v1/model-route/admin/queries/get-model-route.query.d.ts +3 -0
  65. package/build/v1/model-route/admin/queries/index.d.ts +2 -0
  66. package/build/v1/model-route/admin/queries/index.js +2 -0
  67. package/build/v1/model-route/admin/queries/index.js.map +1 -1
  68. package/build/v1/model-route/admin/queries/list-model-routes-by-model.query.d.ts +3 -0
  69. package/build/v1/model-route/admin/queries/list-open-circuits.query.d.ts +31 -0
  70. package/build/v1/model-route/admin/queries/list-open-circuits.query.js +15 -0
  71. package/build/v1/model-route/admin/queries/list-open-circuits.query.js.map +1 -0
  72. package/build/v1/model-route/schemas/create-model-route-request.schema.d.ts +3 -0
  73. package/build/v1/model-route/schemas/index.d.ts +1 -0
  74. package/build/v1/model-route/schemas/index.js +1 -0
  75. package/build/v1/model-route/schemas/index.js.map +1 -1
  76. package/build/v1/model-route/schemas/list-model-routes-response.schema.d.ts +3 -0
  77. package/build/v1/model-route/schemas/model-route-response.schema.d.ts +3 -0
  78. package/build/v1/model-route/schemas/provider-generation-config.schema.d.ts +7 -0
  79. package/build/v1/model-route/schemas/provider-generation-config.schema.js +7 -1
  80. package/build/v1/model-route/schemas/provider-generation-config.schema.js.map +1 -1
  81. package/build/v1/model-route/schemas/route-circuit-view.schema.d.ts +47 -0
  82. package/build/v1/model-route/schemas/route-circuit-view.schema.js +25 -0
  83. package/build/v1/model-route/schemas/route-circuit-view.schema.js.map +1 -0
  84. package/build/v1/model-route/schemas/update-model-route-request.schema.d.ts +3 -0
  85. package/package.json +1 -1
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdminModelRouteGetCircuitQuery = void 0;
4
+ const zod_1 = require("zod");
5
+ const route_circuit_view_schema_1 = require("../../schemas/route-circuit-view.schema");
6
+ const rest_api_1 = require("../../../../rest-api");
7
+ const http_method_enum_1 = require("../../../../shared/http-method.enum");
8
+ var AdminModelRouteGetCircuitQuery;
9
+ (function (AdminModelRouteGetCircuitQuery) {
10
+ AdminModelRouteGetCircuitQuery.Request = zod_1.z.void();
11
+ AdminModelRouteGetCircuitQuery.Response = route_circuit_view_schema_1.RouteCircuitViewSchema;
12
+ AdminModelRouteGetCircuitQuery.URL = rest_api_1.REST_API.V1.MODEL_ROUTES.ADMIN.CIRCUIT_GET;
13
+ AdminModelRouteGetCircuitQuery.METHOD = http_method_enum_1.HttpMethod.GET;
14
+ })(AdminModelRouteGetCircuitQuery || (exports.AdminModelRouteGetCircuitQuery = AdminModelRouteGetCircuitQuery = {}));
15
+ //# sourceMappingURL=get-circuit.query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-circuit.query.js","sourceRoot":"","sources":["../../../../../v1/model-route/admin/queries/get-circuit.query.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,uFAAiF;AACjF,mDAAgD;AAChD,0EAAiE;AAEjE,IAAiB,8BAA8B,CAO9C;AAPD,WAAiB,8BAA8B;IAC9B,sCAAO,GAAG,OAAC,CAAC,IAAI,EAAE,CAAC;IACnB,uCAAQ,GAAG,kDAAsB,CAAC;IAClC,kCAAG,GAAG,mBAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC;IACjD,qCAAM,GAAG,6BAAU,CAAC,GAAG,CAAC;AAGzC,CAAC,EAPgB,8BAA8B,8CAA9B,8BAA8B,QAO9C"}
@@ -46,6 +46,9 @@ export declare namespace AdminModelRouteGetQuery {
46
46
  useProxy: z.ZodOptional<z.ZodBoolean>;
47
47
  maxTokens: z.ZodOptional<z.ZodNumber>;
48
48
  }, z.core.$strict>>;
49
+ failover: z.ZodOptional<z.ZodObject<{
50
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
51
+ }, z.core.$strict>>;
49
52
  }, z.core.$strict>;
50
53
  createdAt: z.ZodString;
51
54
  updatedAt: z.ZodString;
@@ -1,2 +1,4 @@
1
1
  export * from './get-model-route.query';
2
2
  export * from './list-model-routes-by-model.query';
3
+ export * from './get-circuit.query';
4
+ export * from './list-open-circuits.query';
@@ -16,4 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./get-model-route.query"), exports);
18
18
  __exportStar(require("./list-model-routes-by-model.query"), exports);
19
+ __exportStar(require("./get-circuit.query"), exports);
20
+ __exportStar(require("./list-open-circuits.query"), exports);
19
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../v1/model-route/admin/queries/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,qEAAmD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../v1/model-route/admin/queries/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,qEAAmD;AACnD,sDAAoC;AACpC,6DAA2C"}
@@ -55,6 +55,9 @@ export declare namespace AdminModelRouteListByModelQuery {
55
55
  useProxy: z.ZodOptional<z.ZodBoolean>;
56
56
  maxTokens: z.ZodOptional<z.ZodNumber>;
57
57
  }, z.core.$strict>>;
58
+ failover: z.ZodOptional<z.ZodObject<{
59
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
60
+ }, z.core.$strict>>;
58
61
  }, z.core.$strict>;
59
62
  createdAt: z.ZodString;
60
63
  updatedAt: z.ZodString;
@@ -0,0 +1,31 @@
1
+ import { z } from 'zod';
2
+ import { HttpMethod } from '../../../../shared/http-method.enum';
3
+ export declare namespace AdminModelRouteListOpenCircuitsQuery {
4
+ const Request: z.ZodVoid;
5
+ const Response: z.ZodObject<{
6
+ items: z.ZodArray<z.ZodObject<{
7
+ provider: z.ZodEnum<typeof import("../../..").ApiProvider>;
8
+ modelUuid: z.ZodString;
9
+ state: z.ZodEnum<typeof import("../../..").CircuitState>;
10
+ consecutiveFailures: z.ZodNumber;
11
+ escalationLevel: z.ZodNumber;
12
+ openUntil: z.ZodNullable<z.ZodString>;
13
+ lastError: z.ZodNullable<z.ZodString>;
14
+ lastTrippedAt: z.ZodNullable<z.ZodString>;
15
+ lastFailureAt: z.ZodNullable<z.ZodString>;
16
+ lastSuccessAt: z.ZodNullable<z.ZodString>;
17
+ events: z.ZodArray<z.ZodObject<{
18
+ at: z.ZodString;
19
+ kind: z.ZodEnum<typeof import("../../..").CircuitEventKind>;
20
+ durationMs: z.ZodNumber;
21
+ escalationLevel: z.ZodNumber;
22
+ source: z.ZodEnum<typeof import("../../..").CircuitBanSource>;
23
+ reason: z.ZodNullable<z.ZodString>;
24
+ }, z.core.$strip>>;
25
+ }, z.core.$strip>>;
26
+ }, z.core.$strip>;
27
+ const URL: "/api/v1/admin/model-routes/circuit/open";
28
+ const METHOD = HttpMethod.GET;
29
+ type RequestType = z.infer<typeof Request>;
30
+ type ResponseType = z.infer<typeof Response>;
31
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdminModelRouteListOpenCircuitsQuery = void 0;
4
+ const zod_1 = require("zod");
5
+ const route_circuit_view_schema_1 = require("../../schemas/route-circuit-view.schema");
6
+ const rest_api_1 = require("../../../../rest-api");
7
+ const http_method_enum_1 = require("../../../../shared/http-method.enum");
8
+ var AdminModelRouteListOpenCircuitsQuery;
9
+ (function (AdminModelRouteListOpenCircuitsQuery) {
10
+ AdminModelRouteListOpenCircuitsQuery.Request = zod_1.z.void();
11
+ AdminModelRouteListOpenCircuitsQuery.Response = route_circuit_view_schema_1.OpenRoutesResponseSchema;
12
+ AdminModelRouteListOpenCircuitsQuery.URL = rest_api_1.REST_API.V1.MODEL_ROUTES.ADMIN.CIRCUIT_OPEN;
13
+ AdminModelRouteListOpenCircuitsQuery.METHOD = http_method_enum_1.HttpMethod.GET;
14
+ })(AdminModelRouteListOpenCircuitsQuery || (exports.AdminModelRouteListOpenCircuitsQuery = AdminModelRouteListOpenCircuitsQuery = {}));
15
+ //# sourceMappingURL=list-open-circuits.query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-open-circuits.query.js","sourceRoot":"","sources":["../../../../../v1/model-route/admin/queries/list-open-circuits.query.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,uFAAmF;AACnF,mDAAgD;AAChD,0EAAiE;AAEjE,IAAiB,oCAAoC,CAOpD;AAPD,WAAiB,oCAAoC;IACpC,4CAAO,GAAG,OAAC,CAAC,IAAI,EAAE,CAAC;IACnB,6CAAQ,GAAG,oDAAwB,CAAC;IACpC,wCAAG,GAAG,mBAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC;IAClD,2CAAM,GAAG,6BAAU,CAAC,GAAG,CAAC;AAGzC,CAAC,EAPgB,oCAAoC,oDAApC,oCAAoC,QAOpD"}
@@ -44,6 +44,9 @@ export declare const CreateModelRouteRequestSchema: z.ZodObject<{
44
44
  useProxy: z.ZodOptional<z.ZodBoolean>;
45
45
  maxTokens: z.ZodOptional<z.ZodNumber>;
46
46
  }, z.core.$strict>>;
47
+ failover: z.ZodOptional<z.ZodObject<{
48
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
49
+ }, z.core.$strict>>;
47
50
  }, z.core.$strict>>>;
48
51
  }, z.core.$strip>;
49
52
  export type CreateModelRouteRequestType = z.infer<typeof CreateModelRouteRequestSchema>;
@@ -8,3 +8,4 @@ export * from './create-model-route-request.schema';
8
8
  export * from './update-model-route-request.schema';
9
9
  export * from './list-model-routes-response.schema';
10
10
  export * from './list-model-routes-filters.schema';
11
+ export * from './route-circuit-view.schema';
@@ -24,4 +24,5 @@ __exportStar(require("./create-model-route-request.schema"), exports);
24
24
  __exportStar(require("./update-model-route-request.schema"), exports);
25
25
  __exportStar(require("./list-model-routes-response.schema"), exports);
26
26
  __exportStar(require("./list-model-routes-filters.schema"), exports);
27
+ __exportStar(require("./route-circuit-view.schema"), exports);
27
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../v1/model-route/schemas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,gEAA8C;AAC9C,sDAAoC;AACpC,2DAAyC;AACzC,sEAAoD;AACpD,gEAA8C;AAC9C,sEAAoD;AACpD,sEAAoD;AACpD,sEAAoD;AACpD,qEAAmD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../v1/model-route/schemas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,gEAA8C;AAC9C,sDAAoC;AACpC,2DAAyC;AACzC,sEAAoD;AACpD,gEAA8C;AAC9C,sEAAoD;AACpD,sEAAoD;AACpD,sEAAoD;AACpD,qEAAmD;AACnD,8DAA4C"}
@@ -44,6 +44,9 @@ export declare const ListModelRoutesResponseSchema: z.ZodObject<{
44
44
  useProxy: z.ZodOptional<z.ZodBoolean>;
45
45
  maxTokens: z.ZodOptional<z.ZodNumber>;
46
46
  }, z.core.$strict>>;
47
+ failover: z.ZodOptional<z.ZodObject<{
48
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
49
+ }, z.core.$strict>>;
47
50
  }, z.core.$strict>;
48
51
  createdAt: z.ZodString;
49
52
  updatedAt: z.ZodString;
@@ -45,6 +45,9 @@ export declare const ModelRouteResponseSchema: z.ZodObject<{
45
45
  useProxy: z.ZodOptional<z.ZodBoolean>;
46
46
  maxTokens: z.ZodOptional<z.ZodNumber>;
47
47
  }, z.core.$strict>>;
48
+ failover: z.ZodOptional<z.ZodObject<{
49
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
50
+ }, z.core.$strict>>;
48
51
  }, z.core.$strict>;
49
52
  createdAt: z.ZodString;
50
53
  updatedAt: z.ZodString;
@@ -60,6 +60,10 @@ export declare const WellflowGenerationConfigSchema: z.ZodObject<{
60
60
  maxTokens: z.ZodOptional<z.ZodNumber>;
61
61
  }, z.core.$strict>;
62
62
  export type WellflowGenerationConfig = z.infer<typeof WellflowGenerationConfigSchema>;
63
+ export declare const RouteFailoverConfigSchema: z.ZodObject<{
64
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
65
+ }, z.core.$strict>;
66
+ export type RouteFailoverConfig = z.infer<typeof RouteFailoverConfigSchema>;
63
67
  export declare const ProviderGenerationConfigSchema: z.ZodObject<{
64
68
  openrouter: z.ZodOptional<z.ZodObject<{
65
69
  useProxy: z.ZodOptional<z.ZodBoolean>;
@@ -97,5 +101,8 @@ export declare const ProviderGenerationConfigSchema: z.ZodObject<{
97
101
  useProxy: z.ZodOptional<z.ZodBoolean>;
98
102
  maxTokens: z.ZodOptional<z.ZodNumber>;
99
103
  }, z.core.$strict>>;
104
+ failover: z.ZodOptional<z.ZodObject<{
105
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
106
+ }, z.core.$strict>>;
100
107
  }, z.core.$strict>;
101
108
  export type ProviderGenerationConfig = z.infer<typeof ProviderGenerationConfigSchema>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ProviderGenerationConfigSchema = exports.WellflowGenerationConfigSchema = exports.KieGenerationConfigSchema = exports.OpenRouterGenerationConfigSchema = exports.OpenRouterProviderConfigSchema = exports.OpenRouterImageConfigSchema = exports.KiePricingSchema = void 0;
3
+ exports.ProviderGenerationConfigSchema = exports.RouteFailoverConfigSchema = exports.WellflowGenerationConfigSchema = exports.KieGenerationConfigSchema = exports.OpenRouterGenerationConfigSchema = exports.OpenRouterProviderConfigSchema = exports.OpenRouterImageConfigSchema = exports.KiePricingSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const kie_body_mode_enum_1 = require("../../tool/schemas/kie-body-mode.enum");
6
6
  const kie_protocol_enum_1 = require("./kie-protocol.enum");
@@ -58,11 +58,17 @@ exports.WellflowGenerationConfigSchema = zod_1.z
58
58
  maxTokens: zod_1.z.number().int().positive().max(1_000_000).optional(),
59
59
  })
60
60
  .strict();
61
+ exports.RouteFailoverConfigSchema = zod_1.z
62
+ .object({
63
+ ttfbTimeoutMs: zod_1.z.number().int().positive().max(600_000).nullable().optional(),
64
+ })
65
+ .strict();
61
66
  exports.ProviderGenerationConfigSchema = zod_1.z
62
67
  .object({
63
68
  openrouter: exports.OpenRouterGenerationConfigSchema.optional(),
64
69
  kie: exports.KieGenerationConfigSchema.optional(),
65
70
  wellflow: exports.WellflowGenerationConfigSchema.optional(),
71
+ failover: exports.RouteFailoverConfigSchema.optional(),
66
72
  })
67
73
  .strict();
68
74
  //# sourceMappingURL=provider-generation-config.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider-generation-config.schema.js","sourceRoot":"","sources":["../../../../v1/model-route/schemas/provider-generation-config.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-generation-config.schema.js","sourceRoot":"","sources":["../../../../v1/model-route/schemas/provider-generation-config.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { z } from 'zod';
2
+ import { ApiProvider } from '../../ai-model/schemas/api-provider.enum';
3
+ import { CircuitState } from '../../ai-provider/schemas/circuit-state.enum';
4
+ export declare const RouteCircuitViewSchema: z.ZodObject<{
5
+ provider: z.ZodEnum<typeof ApiProvider>;
6
+ modelUuid: z.ZodString;
7
+ state: z.ZodEnum<typeof CircuitState>;
8
+ consecutiveFailures: z.ZodNumber;
9
+ escalationLevel: z.ZodNumber;
10
+ openUntil: z.ZodNullable<z.ZodString>;
11
+ lastError: z.ZodNullable<z.ZodString>;
12
+ lastTrippedAt: z.ZodNullable<z.ZodString>;
13
+ lastFailureAt: z.ZodNullable<z.ZodString>;
14
+ lastSuccessAt: z.ZodNullable<z.ZodString>;
15
+ events: z.ZodArray<z.ZodObject<{
16
+ at: z.ZodString;
17
+ kind: z.ZodEnum<typeof import("../..").CircuitEventKind>;
18
+ durationMs: z.ZodNumber;
19
+ escalationLevel: z.ZodNumber;
20
+ source: z.ZodEnum<typeof import("../..").CircuitBanSource>;
21
+ reason: z.ZodNullable<z.ZodString>;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>;
24
+ export declare const OpenRoutesResponseSchema: z.ZodObject<{
25
+ items: z.ZodArray<z.ZodObject<{
26
+ provider: z.ZodEnum<typeof ApiProvider>;
27
+ modelUuid: z.ZodString;
28
+ state: z.ZodEnum<typeof CircuitState>;
29
+ consecutiveFailures: z.ZodNumber;
30
+ escalationLevel: z.ZodNumber;
31
+ openUntil: z.ZodNullable<z.ZodString>;
32
+ lastError: z.ZodNullable<z.ZodString>;
33
+ lastTrippedAt: z.ZodNullable<z.ZodString>;
34
+ lastFailureAt: z.ZodNullable<z.ZodString>;
35
+ lastSuccessAt: z.ZodNullable<z.ZodString>;
36
+ events: z.ZodArray<z.ZodObject<{
37
+ at: z.ZodString;
38
+ kind: z.ZodEnum<typeof import("../..").CircuitEventKind>;
39
+ durationMs: z.ZodNumber;
40
+ escalationLevel: z.ZodNumber;
41
+ source: z.ZodEnum<typeof import("../..").CircuitBanSource>;
42
+ reason: z.ZodNullable<z.ZodString>;
43
+ }, z.core.$strip>>;
44
+ }, z.core.$strip>>;
45
+ }, z.core.$strip>;
46
+ export type RouteCircuitView = z.infer<typeof RouteCircuitViewSchema>;
47
+ export type OpenRoutesResponse = z.infer<typeof OpenRoutesResponseSchema>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenRoutesResponseSchema = exports.RouteCircuitViewSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const shared_1 = require("../../../shared");
6
+ const api_provider_enum_1 = require("../../ai-model/schemas/api-provider.enum");
7
+ const circuit_event_schema_1 = require("../../ai-provider/schemas/circuit-event.schema");
8
+ const circuit_state_enum_1 = require("../../ai-provider/schemas/circuit-state.enum");
9
+ exports.RouteCircuitViewSchema = zod_1.z.object({
10
+ provider: zod_1.z.enum(api_provider_enum_1.ApiProvider),
11
+ modelUuid: zod_1.z.string().uuid(),
12
+ state: zod_1.z.enum(circuit_state_enum_1.CircuitState),
13
+ consecutiveFailures: zod_1.z.number().int().nonnegative(),
14
+ escalationLevel: zod_1.z.number().int().nonnegative(),
15
+ openUntil: zod_1.z.string().regex(shared_1.DATETIME_REGEX).nullable(),
16
+ lastError: zod_1.z.string().nullable(),
17
+ lastTrippedAt: zod_1.z.string().regex(shared_1.DATETIME_REGEX).nullable(),
18
+ lastFailureAt: zod_1.z.string().regex(shared_1.DATETIME_REGEX).nullable(),
19
+ lastSuccessAt: zod_1.z.string().regex(shared_1.DATETIME_REGEX).nullable(),
20
+ events: zod_1.z.array(circuit_event_schema_1.CircuitEventSchema),
21
+ });
22
+ exports.OpenRoutesResponseSchema = zod_1.z.object({
23
+ items: zod_1.z.array(exports.RouteCircuitViewSchema),
24
+ });
25
+ //# sourceMappingURL=route-circuit-view.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-circuit-view.schema.js","sourceRoot":"","sources":["../../../../v1/model-route/schemas/route-circuit-view.schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,4CAAiD;AACjD,gFAAuE;AACvE,yFAAoF;AACpF,qFAA4E;AAM/D,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,+BAAW,CAAC;IAC7B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC5B,KAAK,EAAE,OAAC,CAAC,IAAI,CAAC,iCAAY,CAAC;IAC3B,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IACnD,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC/C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAc,CAAC,CAAC,QAAQ,EAAE;IACtD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAc,CAAC,CAAC,QAAQ,EAAE;IAC1D,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAc,CAAC,CAAC,QAAQ,EAAE;IAC1D,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uBAAc,CAAC,CAAC,QAAQ,EAAE;IAC1D,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,yCAAkB,CAAC;CACtC,CAAC,CAAC;AAGU,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,8BAAsB,CAAC;CACzC,CAAC,CAAC"}
@@ -43,6 +43,9 @@ export declare const UpdateModelRouteRequestSchema: z.ZodObject<{
43
43
  useProxy: z.ZodOptional<z.ZodBoolean>;
44
44
  maxTokens: z.ZodOptional<z.ZodNumber>;
45
45
  }, z.core.$strict>>;
46
+ failover: z.ZodOptional<z.ZodObject<{
47
+ ttfbTimeoutMs: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
48
+ }, z.core.$strict>>;
46
49
  }, z.core.$strict>>;
47
50
  }, z.core.$strip>;
48
51
  export type UpdateModelRouteRequestType = z.infer<typeof UpdateModelRouteRequestSchema>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veruna/api-contracts",
3
- "version": "6.36.1",
3
+ "version": "6.40.0",
4
4
  "description": "API contracts for Veruna project - Zod schemas, types, and paths",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",