veryfront 0.1.1244 → 0.1.1245

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 (44) hide show
  1. package/esm/deno.js +1 -1
  2. package/esm/src/agent/runtime/tool-exposure.d.ts.map +1 -1
  3. package/esm/src/agent/runtime/tool-exposure.js +205 -44
  4. package/esm/src/errors/error-registry/boundary.d.ts +2 -0
  5. package/esm/src/errors/error-registry/boundary.d.ts.map +1 -1
  6. package/esm/src/errors/error-registry/boundary.js +8 -0
  7. package/esm/src/errors/error-registry/config.d.ts +4 -0
  8. package/esm/src/errors/error-registry/config.d.ts.map +1 -1
  9. package/esm/src/errors/error-registry/config.js +16 -0
  10. package/esm/src/errors/error-registry/runtime.d.ts +6 -0
  11. package/esm/src/errors/error-registry/runtime.d.ts.map +1 -1
  12. package/esm/src/errors/error-registry/runtime.js +24 -0
  13. package/esm/src/errors/error-registry.d.ts +6 -0
  14. package/esm/src/errors/error-registry.d.ts.map +1 -1
  15. package/esm/src/errors/index.d.ts +1 -1
  16. package/esm/src/errors/index.d.ts.map +1 -1
  17. package/esm/src/errors/index.js +1 -1
  18. package/esm/src/html/hydration-script-builder/hydration-runtime.generated.js +1 -1
  19. package/esm/src/integrations/index.d.ts +2 -0
  20. package/esm/src/integrations/index.d.ts.map +1 -1
  21. package/esm/src/integrations/index.js +1 -0
  22. package/esm/src/integrations/limits.d.ts +4 -0
  23. package/esm/src/integrations/limits.d.ts.map +1 -1
  24. package/esm/src/integrations/limits.js +4 -0
  25. package/esm/src/integrations/local-credential-auth.d.ts +63 -0
  26. package/esm/src/integrations/local-credential-auth.d.ts.map +1 -0
  27. package/esm/src/integrations/local-credential-auth.js +527 -0
  28. package/esm/src/integrations/local-endpoint-executor.d.ts +55 -0
  29. package/esm/src/integrations/local-endpoint-executor.d.ts.map +1 -0
  30. package/esm/src/integrations/local-endpoint-executor.js +623 -0
  31. package/esm/src/integrations/local-integration-errors.d.ts +18 -0
  32. package/esm/src/integrations/local-integration-errors.d.ts.map +1 -0
  33. package/esm/src/integrations/local-integration-errors.js +50 -0
  34. package/esm/src/integrations/local-tool-source.d.ts +16 -0
  35. package/esm/src/integrations/local-tool-source.d.ts.map +1 -0
  36. package/esm/src/integrations/local-tool-source.js +439 -0
  37. package/esm/src/integrations/source-policy.d.ts.map +1 -1
  38. package/esm/src/integrations/source-policy.js +34 -7
  39. package/esm/src/platform/compat/http/pinned-fetch.d.ts +1 -1
  40. package/esm/src/transforms/pipeline/stages/browser-server-exports-strip.d.ts.map +1 -1
  41. package/esm/src/transforms/pipeline/stages/browser-server-exports-strip.js +48 -15
  42. package/esm/src/utils/version-constant.d.ts +1 -1
  43. package/esm/src/utils/version-constant.js +1 -1
  44. package/package.json +8 -8
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.1244",
3
+ "version": "0.1.1245",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "minimumDependencyAge": {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-exposure.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/tool-exposure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-exposure.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/tool-exposure.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,32 @@
1
+ import { parseIntegrationToolIdentity } from "../../integrations/source-policy.js";
1
2
  import { isOwnDataPropertyDescriptor } from "./data-property-descriptor.js";
2
3
  /** Framework-owned model-facing tool used to load authorized schemas. */
3
4
  export const TOOL_SEARCH_TOOL_NAME = "tool_search";
4
5
  const DEFAULT_BOOTSTRAP_TOOL_NAMES = new Set(["load_skill"]);
5
6
  const TOOL_SEARCH_RESULT_LIMIT = 5;
7
+ /** Ordering for a whole-query match: lower wins. */
8
+ const TOOL_SEARCH_FIELD_PRECEDENCE = {
9
+ exactName: 0,
10
+ name: 1,
11
+ description: 2,
12
+ parameterDescription: 3,
13
+ };
14
+ /** Contribution to a per-term score: higher wins. Keyed by the same union as the
15
+ * precedence above so the two orderings cannot drift apart silently. */
16
+ const TOOL_SEARCH_FIELD_WEIGHTS = {
17
+ exactName: 4,
18
+ name: 3,
19
+ description: 2,
20
+ parameterDescription: 1,
21
+ };
22
+ /**
23
+ * A term matching more than half the catalog carries no information about which
24
+ * tool the caller meant. `log(2)` is exactly the inverse-document-frequency of a
25
+ * term present in half the candidates, so it is the point where a term stops
26
+ * discriminating. Below it a term may still contribute score, but it can never
27
+ * be the sole reason a candidate is returned.
28
+ */
29
+ const TOOL_SEARCH_MIN_SELECTIVE_IDF = Math.LN2;
6
30
  const TOOL_SEARCH_QUERY_MAX_BYTES = 256;
7
31
  const TOOL_SEARCH_CANDIDATE_LIMIT = 4_096;
8
32
  const TOOL_SEARCH_NAME_MAX_BYTES = 256;
@@ -23,6 +47,55 @@ function normalizeSearchText(value) {
23
47
  return value.replace(/[A-Z]/g, (character) => String.fromCharCode(character.charCodeAt(0) + 32))
24
48
  .replaceAll("_", " ").trim().replace(/\s+/g, " ");
25
49
  }
50
+ /**
51
+ * Recognize `<namespace>__<tool_id>` on the raw query, before normalization
52
+ * rewrites `_` to a space and destroys the separator.
53
+ *
54
+ * Defers to the authorization layer's grammar rather than restating it: a query
55
+ * search accepts but authorization rejects, or the reverse, is a disagreement
56
+ * about what a canonical id even is.
57
+ */
58
+ function parseCanonicalIntegrationQuery(query) {
59
+ const trimmed = query.trim().toLowerCase();
60
+ const separator = trimmed.indexOf("__");
61
+ if (separator <= 0)
62
+ return null;
63
+ const identity = parseIntegrationToolIdentity(trimmed);
64
+ if (identity !== null) {
65
+ return {
66
+ namespace: identity.integration,
67
+ canonicalName: `${identity.integration}__${identity.toolId}`,
68
+ };
69
+ }
70
+ // `__` is the reserved integration namespace separator and `assertLocalToolId`
71
+ // forbids it in local ids, so a query carrying it is asking for an integration
72
+ // tool even when the rest is malformed (`jira__list__projects`). Keep such a
73
+ // query on the namespace path: otherwise normalization collapses it onto a
74
+ // local id like `jira_list_projects`, which then wins the phrase match.
75
+ const namespace = trimmed.slice(0, separator);
76
+ return parseIntegrationToolIdentity(`${namespace}__placeholder`) === null
77
+ ? null
78
+ : { namespace, canonicalName: null };
79
+ }
80
+ /**
81
+ * Match a namespace as a whole token, never as a substring.
82
+ *
83
+ * Namespaces can be very short (`exa` is a real integration), so substring
84
+ * evidence would admit any tool whose text merely contains `example`. Normalized
85
+ * text is lowercase with `_` rewritten to spaces, so the boundaries are anything
86
+ * that is not alphanumeric.
87
+ */
88
+ function createNamespaceTokenPattern(namespaceTerm) {
89
+ const escaped = namespaceTerm.replace(/[.*+?^${}()|[\]\\-]/g, "\\$&");
90
+ return new RegExp(`(?<![a-z0-9])${escaped}(?![a-z0-9])`);
91
+ }
92
+ function toSearchMatch(tool) {
93
+ return { name: tool.name, description: tool.description, status: tool.status };
94
+ }
95
+ function compareToolSearchMatches(left, right) {
96
+ return (left.status === right.status ? 0 : left.status === "available" ? -1 : 1) ||
97
+ compareAscii(left.name, right.name);
98
+ }
26
99
  function compareAscii(left, right) {
27
100
  return left < right ? -1 : left > right ? 1 : 0;
28
101
  }
@@ -158,6 +231,8 @@ function snapshotSearchableTool(tool, status, budget) {
158
231
  name: name.value,
159
232
  description: description.value,
160
233
  status,
234
+ normalizedName: normalizeSearchText(name.value),
235
+ normalizedDescription: normalizeSearchText(description.value),
161
236
  parameterDescriptions: parameters
162
237
  ? snapshotSchemaDescriptions(parameters.value, budget) ?? []
163
238
  : [],
@@ -167,23 +242,18 @@ function snapshotSearchableTool(tool, status, budget) {
167
242
  return null;
168
243
  }
169
244
  }
170
- function getIndexedMatchRank(query, tool) {
171
- const name = normalizeSearchText(tool.name);
172
- if (name === query)
173
- return 0;
174
- if (name.includes(query))
175
- return 1;
176
- if (normalizeSearchText(tool.description).includes(query))
177
- return 2;
178
- return tool.parameterDescriptions.some((description) => description.includes(query)) ? 3 : null;
245
+ function getMatchedField(query, tool) {
246
+ if (tool.normalizedName === query)
247
+ return "exactName";
248
+ if (tool.normalizedName.includes(query))
249
+ return "name";
250
+ if (tool.normalizedDescription.includes(query))
251
+ return "description";
252
+ return tool.parameterDescriptions.some((description) => description.includes(query))
253
+ ? "parameterDescription"
254
+ : null;
179
255
  }
180
- function rankToolExposureMatches(input) {
181
- if (!isUtf8LengthWithin(input.query, TOOL_SEARCH_QUERY_MAX_BYTES))
182
- return [];
183
- const query = normalizeSearchText(input.query);
184
- if (!query)
185
- return [];
186
- const terms = [...new Set(query.split(/\s+/).filter(Boolean))];
256
+ function collectSearchCandidates(input) {
187
257
  const budget = { nodes: 0, bytes: 0 };
188
258
  const candidates = [];
189
259
  let examinedCandidates = 0;
@@ -199,35 +269,128 @@ function rankToolExposureMatches(input) {
199
269
  };
200
270
  append(input.available, "available");
201
271
  append(input.authorized, "loaded");
272
+ return candidates;
273
+ }
274
+ /** Rank candidates against the query taken as one phrase, strongest field first. */
275
+ function rankWholeQueryMatches(query, candidates) {
202
276
  const ranked = [];
203
- for (const tool of candidates) {
204
- const rank = getIndexedMatchRank(query, tool);
205
- if (rank === null)
277
+ for (const candidate of candidates) {
278
+ const field = getMatchedField(query, candidate);
279
+ if (field === null)
206
280
  continue;
207
281
  ranked.push({
208
- rank,
209
- matchCount: 1,
210
- match: { name: tool.name, description: tool.description, status: tool.status },
282
+ precedence: TOOL_SEARCH_FIELD_PRECEDENCE[field],
283
+ match: toSearchMatch(candidate),
211
284
  });
212
285
  }
213
- if (ranked.length === 0 && terms.length >= 2) {
214
- for (const tool of candidates) {
215
- const ranks = terms.flatMap((term) => {
216
- const rank = getIndexedMatchRank(term, tool);
217
- return rank === null ? [] : [rank];
218
- });
219
- if (ranks.length === 0)
286
+ return ranked
287
+ .sort((left, right) => left.precedence - right.precedence || compareToolSearchMatches(left.match, right.match))
288
+ .map(({ match }) => match);
289
+ }
290
+ /**
291
+ * Score candidates across independent query terms.
292
+ *
293
+ * Two properties matter, and the previous pure-OR fallback had neither. First,
294
+ * a term is weighted by how few candidates it matches, so a rare term such as an
295
+ * integration namespace outweighs a common one such as `list`. Second, a
296
+ * candidate must match at least one *selective* term to be returned at all;
297
+ * otherwise a query containing one common word returns whichever tools happen to
298
+ * sort first, and reports it as a hit.
299
+ */
300
+ function scoreToolExposureTerms(terms, candidates) {
301
+ const total = candidates.length;
302
+ if (total === 0 || terms.length === 0)
303
+ return [];
304
+ const weightedTerms = terms.map((term) => {
305
+ let documentFrequency = 0;
306
+ for (const candidate of candidates) {
307
+ if (getMatchedField(term, candidate) !== null)
308
+ documentFrequency += 1;
309
+ }
310
+ return {
311
+ term,
312
+ inverseDocumentFrequency: documentFrequency === 0
313
+ ? 0
314
+ : Math.log((total + 1) / (documentFrequency + 0.5)),
315
+ };
316
+ });
317
+ const scored = [];
318
+ for (const candidate of candidates) {
319
+ let score = 0;
320
+ let matchedTermCount = 0;
321
+ let matchedSelectiveTerm = false;
322
+ for (const { term, inverseDocumentFrequency } of weightedTerms) {
323
+ const field = getMatchedField(term, candidate);
324
+ if (field === null)
220
325
  continue;
221
- ranked.push({
222
- rank: Math.min(...ranks),
223
- matchCount: ranks.length,
224
- match: { name: tool.name, description: tool.description, status: tool.status },
225
- });
326
+ matchedTermCount += 1;
327
+ score += inverseDocumentFrequency * TOOL_SEARCH_FIELD_WEIGHTS[field];
328
+ if (inverseDocumentFrequency >= TOOL_SEARCH_MIN_SELECTIVE_IDF)
329
+ matchedSelectiveTerm = true;
226
330
  }
331
+ // Selectivity suppresses filler, which only means anything when there is
332
+ // something better to prefer. A candidate matching *every* term is not filler
333
+ // however common those terms are: in a one-tool catalog every term matches
334
+ // everything, so the floor alone would report a certain match as a miss.
335
+ if (!matchedSelectiveTerm && matchedTermCount < terms.length)
336
+ continue;
337
+ scored.push({ score, match: toSearchMatch(candidate) });
338
+ }
339
+ return scored
340
+ .sort((left, right) => right.score - left.score || compareToolSearchMatches(left.match, right.match))
341
+ .map(({ match }) => match);
342
+ }
343
+ function rankToolExposureMatches(input) {
344
+ if (!isUtf8LengthWithin(input.query, TOOL_SEARCH_QUERY_MAX_BYTES))
345
+ return [];
346
+ const query = normalizeSearchText(input.query);
347
+ if (!query)
348
+ return [];
349
+ const candidates = collectSearchCandidates(input);
350
+ // Canonical integration ids are classified before any normalized matching.
351
+ // Normalization maps `jira__list_projects` and the *local* id `jira_list_projects`
352
+ // onto the same text, so a phrase pass here would hand back a same-named local
353
+ // tool instead of the namespace the caller actually asked for. Only the real
354
+ // canonical name satisfies a canonical query; anything else is namespace discovery.
355
+ const canonical = parseCanonicalIntegrationQuery(input.query);
356
+ if (canonical !== null) {
357
+ const canonicalName = canonical.canonicalName;
358
+ const exact = canonicalName === null ? [] : candidates
359
+ .filter((candidate) => candidate.name.toLowerCase() === canonicalName)
360
+ .map(toSearchMatch)
361
+ .sort(compareToolSearchMatches);
362
+ if (exact.length > 0)
363
+ return exact;
364
+ // Namespace discovery accepts two kinds of evidence, and a coincidental name
365
+ // match is neither: a sibling tool in the same namespace, or a tool that
366
+ // *documents* the namespace (the catalog readers do). A local
367
+ // `jira_list_projects` merely contains the word and is not the Jira integration.
368
+ //
369
+ // Sibling identity compares raw ids; text evidence must compare normalized,
370
+ // because a namespace may itself contain `_` (`foo_bar__list_items`) and every
371
+ // candidate's text has already had underscores rewritten to spaces.
372
+ const namespaceTerm = normalizeSearchText(canonical.namespace);
373
+ const namespacePattern = createNamespaceTokenPattern(namespaceTerm);
374
+ const namespaceCandidates = candidates.filter((candidate) => {
375
+ const identity = parseIntegrationToolIdentity(candidate.name.toLowerCase());
376
+ if (identity !== null)
377
+ return identity.integration === canonical.namespace;
378
+ // A non-canonical tool carrying the namespace in its *name* is a
379
+ // normalization coincidence, not the integration, whatever its description
380
+ // happens to mention: `jira_list_projects` is a local tool, not Jira.
381
+ if (namespacePattern.test(candidate.normalizedName))
382
+ return false;
383
+ return namespacePattern.test(candidate.normalizedDescription) ||
384
+ candidate.parameterDescriptions.some((description) => namespacePattern.test(description));
385
+ });
386
+ return rankWholeQueryMatches(namespaceTerm, namespaceCandidates);
227
387
  }
228
- return ranked.sort((left, right) => left.rank - right.rank || right.matchCount - left.matchCount ||
229
- (left.match.status === right.match.status ? 0 : left.match.status === "available" ? -1 : 1) ||
230
- compareAscii(left.match.name, right.match.name));
388
+ // The query taken whole is the strongest signal for every non-canonical query.
389
+ const wholeQueryMatches = rankWholeQueryMatches(query, candidates);
390
+ if (wholeQueryMatches.length > 0)
391
+ return wholeQueryMatches;
392
+ const terms = [...new Set(query.split(/\s+/).filter(Boolean))];
393
+ return terms.length >= 2 ? scoreToolExposureTerms(terms, candidates) : [];
231
394
  }
232
395
  /** Create fresh run-local tool exposure state. */
233
396
  export function createToolExposureState(loadedToolNames = []) {
@@ -318,11 +481,10 @@ export function searchToolExposure(input) {
318
481
  available: input.available ?? [],
319
482
  authorized: input.authorized,
320
483
  });
321
- if (ranked[0]?.match.status === "available") {
484
+ if (ranked[0]?.status === "available") {
322
485
  const matches = ranked
323
- .filter(({ match }) => match.status === "available")
324
- .slice(0, TOOL_SEARCH_RESULT_LIMIT)
325
- .map(({ match }) => match);
486
+ .filter((match) => match.status === "available")
487
+ .slice(0, TOOL_SEARCH_RESULT_LIMIT);
326
488
  return {
327
489
  matches,
328
490
  resultCount: matches.length,
@@ -331,11 +493,10 @@ export function searchToolExposure(input) {
331
493
  };
332
494
  }
333
495
  const matches = ranked
334
- .filter(({ match }) => match.status === "loaded")
496
+ .filter((match) => match.status === "loaded")
335
497
  .slice(0, input.maxLoadedTools === undefined
336
498
  ? TOOL_SEARCH_RESULT_LIMIT
337
- : Math.min(TOOL_SEARCH_RESULT_LIMIT, input.maxLoadedTools))
338
- .map(({ match }) => match);
499
+ : Math.min(TOOL_SEARCH_RESULT_LIMIT, input.maxLoadedTools));
339
500
  for (const match of matches) {
340
501
  input.state.loadedToolNames.delete(match.name);
341
502
  input.state.loadedToolNames.add(match.name);
@@ -5,6 +5,7 @@ export declare const INVALID_USE_CLIENT: import("../types.js").RegisteredError;
5
5
  export declare const INVALID_USE_SERVER: import("../types.js").RegisteredError;
6
6
  export declare const RSC_PAYLOAD_ERROR: import("../types.js").RegisteredError;
7
7
  export declare const SSR_OUTPUT_LIMIT_EXCEEDED: import("../types.js").RegisteredError;
8
+ export declare const LOCAL_INTEGRATION_REQUEST_INVALID: import("../types.js").RegisteredError;
8
9
  /** Registry fragment for BOUNDARY errors (slug → definition). */
9
10
  export declare const BOUNDARY_REGISTRY: {
10
11
  readonly "client-boundary-violation": import("../types.js").RegisteredError;
@@ -14,5 +15,6 @@ export declare const BOUNDARY_REGISTRY: {
14
15
  readonly "invalid-use-server": import("../types.js").RegisteredError;
15
16
  readonly "rsc-payload-error": import("../types.js").RegisteredError;
16
17
  readonly "ssr-output-limit-exceeded": import("../types.js").RegisteredError;
18
+ readonly "local-integration-request-invalid": import("../types.js").RegisteredError;
17
19
  };
18
20
  //# sourceMappingURL=boundary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../../../src/src/errors/error-registry/boundary.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,yBAAyB,uCAMpC,CAAC;AAEH,eAAO,MAAM,qBAAqB,uCAMhC,CAAC;AAEH,eAAO,MAAM,qBAAqB,uCAMhC,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,iBAAiB,uCAM5B,CAAC;AAEH,eAAO,MAAM,yBAAyB,uCAMpC,CAAC;AAEH,iEAAiE;AACjE,eAAO,MAAM,iBAAiB;;;;;;;;CAQpB,CAAC"}
1
+ {"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../../../src/src/errors/error-registry/boundary.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,yBAAyB,uCAMpC,CAAC;AAEH,eAAO,MAAM,qBAAqB,uCAMhC,CAAC;AAEH,eAAO,MAAM,qBAAqB,uCAMhC,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,iBAAiB,uCAM5B,CAAC;AAEH,eAAO,MAAM,yBAAyB,uCAMpC,CAAC;AAEH,eAAO,MAAM,iCAAiC,uCAM5C,CAAC;AAEH,iEAAiE;AACjE,eAAO,MAAM,iBAAiB;;;;;;;;;CASpB,CAAC"}
@@ -48,6 +48,13 @@ export const SSR_OUTPUT_LIMIT_EXCEEDED = defineError({
48
48
  title: "SSR output limit exceeded",
49
49
  suggestion: "Reduce the rendered HTML size or split the response into smaller pages",
50
50
  });
51
+ export const LOCAL_INTEGRATION_REQUEST_INVALID = defineError({
52
+ slug: "local-integration-request-invalid",
53
+ category: "BOUNDARY",
54
+ status: 400,
55
+ title: "Local integration request is invalid",
56
+ suggestion: "Pass only the documented tool arguments with their declared JSON types",
57
+ });
51
58
  /** Registry fragment for BOUNDARY errors (slug → definition). */
52
59
  export const BOUNDARY_REGISTRY = {
53
60
  "client-boundary-violation": CLIENT_BOUNDARY_VIOLATION,
@@ -57,4 +64,5 @@ export const BOUNDARY_REGISTRY = {
57
64
  "invalid-use-server": INVALID_USE_SERVER,
58
65
  "rsc-payload-error": RSC_PAYLOAD_ERROR,
59
66
  "ssr-output-limit-exceeded": SSR_OUTPUT_LIMIT_EXCEEDED,
67
+ "local-integration-request-invalid": LOCAL_INTEGRATION_REQUEST_INVALID,
60
68
  };
@@ -8,6 +8,8 @@ export declare const IMPORT_MAP_INVALID: import("../types.js").RegisteredError;
8
8
  export declare const CORS_CONFIG_INVALID: import("../types.js").RegisteredError;
9
9
  /** Config file validation failures (replaces ConfigValidationError) */
10
10
  export declare const CONFIG_VALIDATION_FAILED: import("../types.js").RegisteredError;
11
+ export declare const LOCAL_INTEGRATION_CONFIG_INVALID: import("../types.js").RegisteredError;
12
+ export declare const LOCAL_INTEGRATION_CREDENTIALS_MISSING: import("../types.js").RegisteredError;
11
13
  /** Webhook definition validation failures (required fields, target, eventFilter) */
12
14
  export declare const WEBHOOK_CONFIG_INVALID: import("../types.js").RegisteredError;
13
15
  /** Schedule definition validation failures (required fields, cron, concurrencyPolicy, target) */
@@ -30,6 +32,8 @@ export declare const CONFIG_REGISTRY: {
30
32
  readonly "import-map-invalid": import("../types.js").RegisteredError;
31
33
  readonly "cors-config-invalid": import("../types.js").RegisteredError;
32
34
  readonly "config-validation-failed": import("../types.js").RegisteredError;
35
+ readonly "local-integration-config-invalid": import("../types.js").RegisteredError;
36
+ readonly "local-integration-credentials-missing": import("../types.js").RegisteredError;
33
37
  readonly "webhook-config-invalid": import("../types.js").RegisteredError;
34
38
  readonly "schedule-config-invalid": import("../types.js").RegisteredError;
35
39
  readonly "trigger-config-invalid": import("../types.js").RegisteredError;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/src/errors/error-registry/config.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,uCAO3B,CAAC;AAEH,eAAO,MAAM,cAAc,uCAMzB,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,2EAA2E;AAC3E,eAAO,MAAM,uBAAuB,uCAMlC,CAAC;AAEH,eAAO,MAAM,iBAAiB,uCAM5B,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,mBAAmB,uCAM9B,CAAC;AAEH,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,uCAMnC,CAAC;AAEH,oFAAoF;AACpF,eAAO,MAAM,sBAAsB,uCAMjC,CAAC;AAEH,iGAAiG;AACjG,eAAO,MAAM,uBAAuB,uCAOlC,CAAC;AAEH,oEAAoE;AACpE,eAAO,MAAM,sBAAsB,uCAOjC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,uCAO7B,CAAC;AAEH,+DAA+D;AAC/D,eAAO,MAAM,eAAe;;;;;;;;;;;;;CAalB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/src/errors/error-registry/config.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,uCAO3B,CAAC;AAEH,eAAO,MAAM,cAAc,uCAMzB,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,2EAA2E;AAC3E,eAAO,MAAM,uBAAuB,uCAMlC,CAAC;AAEH,eAAO,MAAM,iBAAiB,uCAM5B,CAAC;AAEH,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,mBAAmB,uCAM9B,CAAC;AAEH,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,uCAMnC,CAAC;AAEH,eAAO,MAAM,gCAAgC,uCAM3C,CAAC;AAEH,eAAO,MAAM,qCAAqC,uCAMhD,CAAC;AAEH,oFAAoF;AACpF,eAAO,MAAM,sBAAsB,uCAMjC,CAAC;AAEH,iGAAiG;AACjG,eAAO,MAAM,uBAAuB,uCAOlC,CAAC;AAEH,oEAAoE;AACpE,eAAO,MAAM,sBAAsB,uCAOjC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,uCAO7B,CAAC;AAEH,+DAA+D;AAC/D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;CAelB,CAAC"}
@@ -57,6 +57,20 @@ export const CONFIG_VALIDATION_FAILED = defineError({
57
57
  title: "Configuration validation failed",
58
58
  suggestion: "Check configuration values against requirements",
59
59
  });
60
+ export const LOCAL_INTEGRATION_CONFIG_INVALID = defineError({
61
+ slug: "local-integration-config-invalid",
62
+ category: "CONFIG",
63
+ status: 400,
64
+ title: "Invalid local integration configuration",
65
+ suggestion: "Use exact catalog tool IDs and supported local credential and endpoint contracts",
66
+ });
67
+ export const LOCAL_INTEGRATION_CREDENTIALS_MISSING = defineError({
68
+ slug: "local-integration-credentials-missing",
69
+ category: "CONFIG",
70
+ status: 400,
71
+ title: "Local integration credentials are missing",
72
+ suggestion: "Set the named environment variables or configure a credential provider",
73
+ });
60
74
  /** Webhook definition validation failures (required fields, target, eventFilter) */
61
75
  export const WEBHOOK_CONFIG_INVALID = defineError({
62
76
  slug: "webhook-config-invalid",
@@ -104,6 +118,8 @@ export const CONFIG_REGISTRY = {
104
118
  "import-map-invalid": IMPORT_MAP_INVALID,
105
119
  "cors-config-invalid": CORS_CONFIG_INVALID,
106
120
  "config-validation-failed": CONFIG_VALIDATION_FAILED,
121
+ "local-integration-config-invalid": LOCAL_INTEGRATION_CONFIG_INVALID,
122
+ "local-integration-credentials-missing": LOCAL_INTEGRATION_CREDENTIALS_MISSING,
107
123
  "webhook-config-invalid": WEBHOOK_CONFIG_INVALID,
108
124
  "schedule-config-invalid": SCHEDULE_CONFIG_INVALID,
109
125
  "trigger-config-invalid": TRIGGER_CONFIG_INVALID,
@@ -6,6 +6,9 @@ export declare const LAYOUT_NOT_FOUND: import("../types.js").RegisteredError;
6
6
  export declare const PAGE_NOT_FOUND: import("../types.js").RegisteredError;
7
7
  export declare const API_ERROR: import("../types.js").RegisteredError;
8
8
  export declare const MIDDLEWARE_ERROR: import("../types.js").RegisteredError;
9
+ export declare const LOCAL_INTEGRATION_CREDENTIAL_UNAVAILABLE: import("../types.js").RegisteredError;
10
+ export declare const LOCAL_INTEGRATION_REQUEST_FAILED: import("../types.js").RegisteredError;
11
+ export declare const LOCAL_INTEGRATION_RESPONSE_INVALID: import("../types.js").RegisteredError;
9
12
  /** Trigger target (task or workflow) not found during local run */
10
13
  export declare const TRIGGER_TARGET_NOT_FOUND: import("../types.js").RegisteredError;
11
14
  /** Trigger target task or workflow failed during local run */
@@ -22,6 +25,9 @@ export declare const RUNTIME_REGISTRY: {
22
25
  readonly "page-not-found": import("../types.js").RegisteredError;
23
26
  readonly "api-error": import("../types.js").RegisteredError;
24
27
  readonly "middleware-error": import("../types.js").RegisteredError;
28
+ readonly "local-integration-credential-unavailable": import("../types.js").RegisteredError;
29
+ readonly "local-integration-request-failed": import("../types.js").RegisteredError;
30
+ readonly "local-integration-response-invalid": import("../types.js").RegisteredError;
25
31
  readonly "trigger-target-not-found": import("../types.js").RegisteredError;
26
32
  readonly "trigger-execution-failed": import("../types.js").RegisteredError;
27
33
  readonly "trigger-not-supported": import("../types.js").RegisteredError;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/errors/error-registry/runtime.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,YAAY,uCAMvB,CAAC;AAEH,eAAO,MAAM,gCAAgC,uCAO3C,CAAC;AAEH,eAAO,MAAM,eAAe,uCAM1B,CAAC;AAEH,eAAO,MAAM,gBAAgB,uCAM3B,CAAC;AAEH,eAAO,MAAM,cAAc,uCAMzB,CAAC;AAEH,eAAO,MAAM,SAAS,uCAMpB,CAAC;AAEH,eAAO,MAAM,gBAAgB,uCAM3B,CAAC;AAEH,mEAAmE;AACnE,eAAO,MAAM,wBAAwB,uCAMnC,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,wBAAwB,uCAMnC,CAAC;AAEH,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,uCAOhC,CAAC;AAEH,gEAAgE;AAChE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;CAYnB,CAAC"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/errors/error-registry/runtime.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,uCAM7B,CAAC;AAEH,eAAO,MAAM,YAAY,uCAMvB,CAAC;AAEH,eAAO,MAAM,gCAAgC,uCAO3C,CAAC;AAEH,eAAO,MAAM,eAAe,uCAM1B,CAAC;AAEH,eAAO,MAAM,gBAAgB,uCAM3B,CAAC;AAEH,eAAO,MAAM,cAAc,uCAMzB,CAAC;AAEH,eAAO,MAAM,SAAS,uCAMpB,CAAC;AAEH,eAAO,MAAM,gBAAgB,uCAM3B,CAAC;AAEH,eAAO,MAAM,wCAAwC,uCAMnD,CAAC;AAEH,eAAO,MAAM,gCAAgC,uCAM3C,CAAC;AAEH,eAAO,MAAM,kCAAkC,uCAM7C,CAAC;AAEH,mEAAmE;AACnE,eAAO,MAAM,wBAAwB,uCAMnC,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,wBAAwB,uCAMnC,CAAC;AAEH,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,uCAOhC,CAAC;AAEH,gEAAgE;AAChE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;CAenB,CAAC"}
@@ -55,6 +55,27 @@ export const MIDDLEWARE_ERROR = defineError({
55
55
  title: "Middleware execution error",
56
56
  suggestion: "Check middleware function for errors",
57
57
  });
58
+ export const LOCAL_INTEGRATION_CREDENTIAL_UNAVAILABLE = defineError({
59
+ slug: "local-integration-credential-unavailable",
60
+ category: "RUNTIME",
61
+ status: 503,
62
+ title: "Local integration credential is unavailable",
63
+ suggestion: "Check the local credential provider and retry",
64
+ });
65
+ export const LOCAL_INTEGRATION_REQUEST_FAILED = defineError({
66
+ slug: "local-integration-request-failed",
67
+ category: "RUNTIME",
68
+ status: 502,
69
+ title: "Local integration request failed",
70
+ suggestion: "Check the provider status and local integration configuration, then retry",
71
+ });
72
+ export const LOCAL_INTEGRATION_RESPONSE_INVALID = defineError({
73
+ slug: "local-integration-response-invalid",
74
+ category: "RUNTIME",
75
+ status: 502,
76
+ title: "Local integration response is invalid",
77
+ suggestion: "Check the provider response contract and retry",
78
+ });
58
79
  /** Trigger target (task or workflow) not found during local run */
59
80
  export const TRIGGER_TARGET_NOT_FOUND = defineError({
60
81
  slug: "trigger-target-not-found",
@@ -89,6 +110,9 @@ export const RUNTIME_REGISTRY = {
89
110
  "page-not-found": PAGE_NOT_FOUND,
90
111
  "api-error": API_ERROR,
91
112
  "middleware-error": MIDDLEWARE_ERROR,
113
+ "local-integration-credential-unavailable": LOCAL_INTEGRATION_CREDENTIAL_UNAVAILABLE,
114
+ "local-integration-request-failed": LOCAL_INTEGRATION_REQUEST_FAILED,
115
+ "local-integration-response-invalid": LOCAL_INTEGRATION_RESPONSE_INVALID,
92
116
  "trigger-target-not-found": TRIGGER_TARGET_NOT_FOUND,
93
117
  "trigger-execution-failed": TRIGGER_EXECUTION_FAILED,
94
118
  "trigger-not-supported": TRIGGER_NOT_SUPPORTED,
@@ -23,6 +23,8 @@ export declare const ERROR_REGISTRY: Readonly<{
23
23
  readonly "import-map-invalid": import("./types.js").RegisteredError;
24
24
  readonly "cors-config-invalid": import("./types.js").RegisteredError;
25
25
  readonly "config-validation-failed": import("./types.js").RegisteredError;
26
+ readonly "local-integration-config-invalid": import("./types.js").RegisteredError;
27
+ readonly "local-integration-credentials-missing": import("./types.js").RegisteredError;
26
28
  readonly "webhook-config-invalid": import("./types.js").RegisteredError;
27
29
  readonly "schedule-config-invalid": import("./types.js").RegisteredError;
28
30
  readonly "trigger-config-invalid": import("./types.js").RegisteredError;
@@ -46,6 +48,9 @@ export declare const ERROR_REGISTRY: Readonly<{
46
48
  readonly "page-not-found": import("./types.js").RegisteredError;
47
49
  readonly "api-error": import("./types.js").RegisteredError;
48
50
  readonly "middleware-error": import("./types.js").RegisteredError;
51
+ readonly "local-integration-credential-unavailable": import("./types.js").RegisteredError;
52
+ readonly "local-integration-request-failed": import("./types.js").RegisteredError;
53
+ readonly "local-integration-response-invalid": import("./types.js").RegisteredError;
49
54
  readonly "trigger-target-not-found": import("./types.js").RegisteredError;
50
55
  readonly "trigger-execution-failed": import("./types.js").RegisteredError;
51
56
  readonly "trigger-not-supported": import("./types.js").RegisteredError;
@@ -92,6 +97,7 @@ export declare const ERROR_REGISTRY: Readonly<{
92
97
  readonly "invalid-use-server": import("./types.js").RegisteredError;
93
98
  readonly "rsc-payload-error": import("./types.js").RegisteredError;
94
99
  readonly "ssr-output-limit-exceeded": import("./types.js").RegisteredError;
100
+ readonly "local-integration-request-invalid": import("./types.js").RegisteredError;
95
101
  } & {
96
102
  readonly "hmr-error": import("./types.js").RegisteredError;
97
103
  readonly "dev-server-error": import("./types.js").RegisteredError;
@@ -1 +1 @@
1
- {"version":3,"file":"error-registry.d.ts","sourceRoot":"","sources":["../../../src/src/errors/error-registry.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAgBhD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY1B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,cAAc,CAAC;AAEpD;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,wCAE7C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,0CAE1D;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,SAAS,EAAE,CAEzC"}
1
+ {"version":3,"file":"error-registry.d.ts","sourceRoot":"","sources":["../../../src/src/errors/error-registry.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAgBhD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY1B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,cAAc,CAAC;AAEpD;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,wCAE7C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,0CAE1D;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,SAAS,EAAE,CAEzC"}
@@ -19,7 +19,7 @@
19
19
  import "../../_dnt.polyfills.js";
20
20
  export { defineError, VeryfrontError } from "./types.js";
21
21
  export type { ErrorCategory, ErrorCreateOptions, ErrorDefinition, RegisteredError, RFC9457Response, VeryfrontErrorOptions, } from "./types.js";
22
- export { AGENT_ERROR, AGENT_INTENT_ERROR, AGENT_NOT_FOUND, AGENT_TIMEOUT, API_CLIENT_ERROR, API_ERROR, API_ROUTE_ERROR, ASSET_OPTIMIZATION_ERROR, AUTHENTICATION_REQUIRED, BRANCH_NOT_FOUND, BUILD_FAILED, BUNDLE_ERROR, CACHE_ERROR, CACHE_INVARIANT_VIOLATION, CACHE_PATH_MISMATCH, CIRCUIT_BREAKER_OPEN, CIRCULAR_DEPENDENCY, CLIENT_BOUNDARY_VIOLATION, CLIENT_ONLY_IN_SERVER, COMPILATION_ERROR, COMPONENT_ERROR, CONFIG_INVALID, CONFIG_NOT_DEPLOYABLE, CONFIG_NOT_FOUND, CONFIG_PARSE_ERROR, CONFIG_TYPE_ERROR, CONFIG_VALIDATION_ERROR, CONFIG_VALIDATION_FAILED, CORS_CONFIG_INVALID, COST_LIMIT_EXCEEDED, DEPENDENCY_MISSING, DEPLOYMENT_ERROR, DEPLOYMENT_VERIFICATION_TIMEOUT, DEV_SERVER_ERROR, DURABLE_RUN_EVENT_PERSISTENCE_FAILED, DYNAMIC_ROUTE_ERROR, ENV_VAR_MISSING, ENVIRONMENT_NOT_FOUND, ENVIRONMENT_NOT_ROUTABLE, ERROR_OVERLAY_ERROR, ERROR_REGISTRY, type ErrorSlug, FALLBACK_EXHAUSTED, FAST_REFRESH_ERROR, FILE_NOT_FOUND, FILE_WATCH_ERROR, getAllSlugs, getErrorBySlug, getErrorsByCategory, HMR_ERROR, HYDRATION_MISMATCH, IMPORT_MAP_INVALID, IMPORT_RESOLUTION_ERROR, INITIALIZATION_ERROR, INPUT_VALIDATION_FAILED, INVALID_ARGUMENT, INVALID_IMPORT, INVALID_ROUTE_FILE, INVALID_USE_CLIENT, INVALID_USE_SERVER, LAYOUT_NOT_FOUND, LOCKFILE_FORMAT_MISMATCH, LOCKFILE_READ_ERROR, MARKDOWN_COMPILE_ERROR, MDX_COMPILE_ERROR, MIDDLEWARE_ERROR, MODULE_NOT_FOUND, NESTED_CWD_SCOPE, NETWORK_ERROR, NOT_SUPPORTED, ORCHESTRATION_ERROR, PAGE_NOT_FOUND, PERMISSION_DENIED, PLATFORM_ERROR, PORT_IN_USE, PREVIEW_HOSTNAME_TOO_LONG, PRODUCTION_BUILD_REQUIRED, PROJECT_EXECUTION_UNAVAILABLE, PROJECT_SOURCE_EMPTY, PUSH_CONFLICT, PUSH_RECEIPT_MISSING, RAG_STORE_CORRUPT, RAG_STORE_UNAVAILABLE, REDIRECT_DESTINATION_NOT_ALLOWED, RELEASE_BUILD_TIMEOUT, RELEASE_MISSING_VERSION, RELEASE_NOT_FOUND, RENDER_ERROR, REQUEST_ERROR, RESOURCE_NOT_FOUND, ROUTE_CONFLICT, ROUTE_HANDLER_INVALID, ROUTE_PARAMS_ERROR, RSC_PAYLOAD_ERROR, SCHEDULE_CONFIG_INVALID, SECURITY_VIOLATION, SEMAPHORE_TIMEOUT, SERVER_ONLY_IN_CLIENT, SERVER_START_ERROR, SERVICE_OVERLOADED, SOURCE_DIGEST_MISMATCH, SOURCE_MAP_ERROR, SOURCEMAP_ERROR, SSG_GENERATION_ERROR, SSR_OUTPUT_LIMIT_EXCEEDED, SYNC_STATE_INVALID, TEMPLATE_NOT_FOUND, TIMEOUT_ERROR, TOKEN_STORAGE_ERROR, TOOL_ID_CONFLICT, TRIGGER_CONFIG_INVALID, TRIGGER_EXECUTION_FAILED, TRIGGER_NOT_SUPPORTED, TRIGGER_TARGET_NOT_FOUND, TYPESCRIPT_ERROR, UNKNOWN_ERROR, VERSION_MISMATCH, WEBHOOK_CONFIG_INVALID, } from "./error-registry.js";
22
+ export { AGENT_ERROR, AGENT_INTENT_ERROR, AGENT_NOT_FOUND, AGENT_TIMEOUT, API_CLIENT_ERROR, API_ERROR, API_ROUTE_ERROR, ASSET_OPTIMIZATION_ERROR, AUTHENTICATION_REQUIRED, BRANCH_NOT_FOUND, BUILD_FAILED, BUNDLE_ERROR, CACHE_ERROR, CACHE_INVARIANT_VIOLATION, CACHE_PATH_MISMATCH, CIRCUIT_BREAKER_OPEN, CIRCULAR_DEPENDENCY, CLIENT_BOUNDARY_VIOLATION, CLIENT_ONLY_IN_SERVER, COMPILATION_ERROR, COMPONENT_ERROR, CONFIG_INVALID, CONFIG_NOT_DEPLOYABLE, CONFIG_NOT_FOUND, CONFIG_PARSE_ERROR, CONFIG_TYPE_ERROR, CONFIG_VALIDATION_ERROR, CONFIG_VALIDATION_FAILED, CORS_CONFIG_INVALID, COST_LIMIT_EXCEEDED, DEPENDENCY_MISSING, DEPLOYMENT_ERROR, DEPLOYMENT_VERIFICATION_TIMEOUT, DEV_SERVER_ERROR, DURABLE_RUN_EVENT_PERSISTENCE_FAILED, DYNAMIC_ROUTE_ERROR, ENV_VAR_MISSING, ENVIRONMENT_NOT_FOUND, ENVIRONMENT_NOT_ROUTABLE, ERROR_OVERLAY_ERROR, ERROR_REGISTRY, type ErrorSlug, FALLBACK_EXHAUSTED, FAST_REFRESH_ERROR, FILE_NOT_FOUND, FILE_WATCH_ERROR, getAllSlugs, getErrorBySlug, getErrorsByCategory, HMR_ERROR, HYDRATION_MISMATCH, IMPORT_MAP_INVALID, IMPORT_RESOLUTION_ERROR, INITIALIZATION_ERROR, INPUT_VALIDATION_FAILED, INVALID_ARGUMENT, INVALID_IMPORT, INVALID_ROUTE_FILE, INVALID_USE_CLIENT, INVALID_USE_SERVER, LAYOUT_NOT_FOUND, LOCAL_INTEGRATION_CONFIG_INVALID, LOCAL_INTEGRATION_CREDENTIAL_UNAVAILABLE, LOCAL_INTEGRATION_CREDENTIALS_MISSING, LOCAL_INTEGRATION_REQUEST_FAILED, LOCAL_INTEGRATION_REQUEST_INVALID, LOCAL_INTEGRATION_RESPONSE_INVALID, LOCKFILE_FORMAT_MISMATCH, LOCKFILE_READ_ERROR, MARKDOWN_COMPILE_ERROR, MDX_COMPILE_ERROR, MIDDLEWARE_ERROR, MODULE_NOT_FOUND, NESTED_CWD_SCOPE, NETWORK_ERROR, NOT_SUPPORTED, ORCHESTRATION_ERROR, PAGE_NOT_FOUND, PERMISSION_DENIED, PLATFORM_ERROR, PORT_IN_USE, PREVIEW_HOSTNAME_TOO_LONG, PRODUCTION_BUILD_REQUIRED, PROJECT_EXECUTION_UNAVAILABLE, PROJECT_SOURCE_EMPTY, PUSH_CONFLICT, PUSH_RECEIPT_MISSING, RAG_STORE_CORRUPT, RAG_STORE_UNAVAILABLE, REDIRECT_DESTINATION_NOT_ALLOWED, RELEASE_BUILD_TIMEOUT, RELEASE_MISSING_VERSION, RELEASE_NOT_FOUND, RENDER_ERROR, REQUEST_ERROR, RESOURCE_NOT_FOUND, ROUTE_CONFLICT, ROUTE_HANDLER_INVALID, ROUTE_PARAMS_ERROR, RSC_PAYLOAD_ERROR, SCHEDULE_CONFIG_INVALID, SECURITY_VIOLATION, SEMAPHORE_TIMEOUT, SERVER_ONLY_IN_CLIENT, SERVER_START_ERROR, SERVICE_OVERLOADED, SOURCE_DIGEST_MISMATCH, SOURCE_MAP_ERROR, SOURCEMAP_ERROR, SSG_GENERATION_ERROR, SSR_OUTPUT_LIMIT_EXCEEDED, SYNC_STATE_INVALID, TEMPLATE_NOT_FOUND, TIMEOUT_ERROR, TOKEN_STORAGE_ERROR, TOOL_ID_CONFLICT, TRIGGER_CONFIG_INVALID, TRIGGER_EXECUTION_FAILED, TRIGGER_NOT_SUPPORTED, TRIGGER_TARGET_NOT_FOUND, TYPESCRIPT_ERROR, UNKNOWN_ERROR, VERSION_MISMATCH, WEBHOOK_CONFIG_INVALID, } from "./error-registry.js";
23
23
  export { createErrorHandler, createErrorResponse, createErrorResponseFromDefinition, createProblemResponse, errorToResponse, formatErrorLog, isVeryfrontError, PROBLEM_JSON_CONTENT_TYPE, } from "./http-error.js";
24
24
  export { cliErrorBoundary, cliErrorBoundarySync, errorToRFC9457Response, formatCLIError, httpErrorBoundary, wrapHandlerWithErrorBoundary, wrapUnknownError, wrapWithContext, } from "./middleware/index.js";
25
25
  export { logError, logErrorWithMessage } from "./logging.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/errors/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/errors/index.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ ERROR_REGISTRY, FALLBACK_EXHAUSTED, FAST_REFRESH_ERROR, FILE_NOT_FOUND, FILE_WAT
35
35
  // DEV
36
36
  HMR_ERROR,
37
37
  // RUNTIME
38
- HYDRATION_MISMATCH, IMPORT_MAP_INVALID, IMPORT_RESOLUTION_ERROR, INITIALIZATION_ERROR, INPUT_VALIDATION_FAILED, INVALID_ARGUMENT, INVALID_IMPORT, INVALID_ROUTE_FILE, INVALID_USE_CLIENT, INVALID_USE_SERVER, LAYOUT_NOT_FOUND, LOCKFILE_FORMAT_MISMATCH, LOCKFILE_READ_ERROR, MARKDOWN_COMPILE_ERROR, MDX_COMPILE_ERROR, MIDDLEWARE_ERROR,
38
+ HYDRATION_MISMATCH, IMPORT_MAP_INVALID, IMPORT_RESOLUTION_ERROR, INITIALIZATION_ERROR, INPUT_VALIDATION_FAILED, INVALID_ARGUMENT, INVALID_IMPORT, INVALID_ROUTE_FILE, INVALID_USE_CLIENT, INVALID_USE_SERVER, LAYOUT_NOT_FOUND, LOCAL_INTEGRATION_CONFIG_INVALID, LOCAL_INTEGRATION_CREDENTIAL_UNAVAILABLE, LOCAL_INTEGRATION_CREDENTIALS_MISSING, LOCAL_INTEGRATION_REQUEST_FAILED, LOCAL_INTEGRATION_REQUEST_INVALID, LOCAL_INTEGRATION_RESPONSE_INVALID, LOCKFILE_FORMAT_MISMATCH, LOCKFILE_READ_ERROR, MARKDOWN_COMPILE_ERROR, MDX_COMPILE_ERROR, MIDDLEWARE_ERROR,
39
39
  // MODULE
40
40
  MODULE_NOT_FOUND, NESTED_CWD_SCOPE, NETWORK_ERROR, NOT_SUPPORTED, ORCHESTRATION_ERROR, PAGE_NOT_FOUND, PERMISSION_DENIED, PLATFORM_ERROR,
41
41
  // SERVER