@wrongstack/core 0.51.3 → 0.54.1

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 (54) hide show
  1. package/dist/{agent-bridge-CjbD-i7-.d.ts → agent-bridge-Dnhw4tnM.d.ts} +1 -1
  2. package/dist/{agent-subagent-runner-DfvlBx5N.d.ts → agent-subagent-runner-By7jruZ_.d.ts} +3 -3
  3. package/dist/{compactor-D1RHFRmF.d.ts → compactor-Duhsf0ge.d.ts} +1 -1
  4. package/dist/{config-ZRCf7sTu.d.ts → config-bht0txXS.d.ts} +33 -2
  5. package/dist/{context-7u93AcGD.d.ts → context-DtPKqKYV.d.ts} +1 -0
  6. package/dist/coordination/index.d.ts +12 -12
  7. package/dist/coordination/index.js.map +1 -1
  8. package/dist/defaults/index.d.ts +22 -22
  9. package/dist/defaults/index.js +31 -16
  10. package/dist/defaults/index.js.map +1 -1
  11. package/dist/{events-Bt44ikPN.d.ts → events-CbHTS4ZZ.d.ts} +1 -1
  12. package/dist/execution/index.d.ts +14 -14
  13. package/dist/execution/index.js.map +1 -1
  14. package/dist/extension/index.d.ts +6 -6
  15. package/dist/{goal-store-BeRsj7YX.d.ts → goal-store-DwcTDDiX.d.ts} +1 -1
  16. package/dist/{index-mAWBdLyJ.d.ts → index-CI271MjL.d.ts} +5 -5
  17. package/dist/{index-OzA1XjHL.d.ts → index-ge5F2dnc.d.ts} +8 -8
  18. package/dist/index.d.ts +33 -33
  19. package/dist/index.js +116 -64
  20. package/dist/index.js.map +1 -1
  21. package/dist/infrastructure/index.d.ts +6 -6
  22. package/dist/kernel/index.d.ts +9 -9
  23. package/dist/{mcp-servers-DONdo-XM.d.ts → mcp-servers-DE6gzBry.d.ts} +3 -3
  24. package/dist/models/index.d.ts +3 -3
  25. package/dist/models/index.js +31 -16
  26. package/dist/models/index.js.map +1 -1
  27. package/dist/{models-registry-gwMAo6E3.d.ts → models-registry-Cuq1C8V9.d.ts} +7 -0
  28. package/dist/{multi-agent-Ba9Ni2hC.d.ts → multi-agent-BmC_xiog.d.ts} +2 -2
  29. package/dist/{multi-agent-coordinator-BuKq0q89.d.ts → multi-agent-coordinator-CjNX4uBD.d.ts} +2 -2
  30. package/dist/{null-fleet-bus-C0xd73YP.d.ts → null-fleet-bus-BNiSlTna.d.ts} +7 -7
  31. package/dist/observability/index.d.ts +2 -2
  32. package/dist/{path-resolver-nkmdiFgi.d.ts → path-resolver-Bax85amb.d.ts} +2 -2
  33. package/dist/{permission-B6sldrSp.d.ts → permission-Drm7LpPo.d.ts} +1 -1
  34. package/dist/{permission-policy-CtNscWOA.d.ts → permission-policy-CU6sqWxF.d.ts} +2 -2
  35. package/dist/{plan-templates-BmDdJ7UL.d.ts → plan-templates-CLRcurWN.d.ts} +4 -4
  36. package/dist/{provider-runner-BGro2qQB.d.ts → provider-runner-BikCxGCx.d.ts} +3 -3
  37. package/dist/{retry-policy-KF18W4dg.d.ts → retry-policy-Chtlvr5b.d.ts} +1 -1
  38. package/dist/sdd/index.d.ts +8 -8
  39. package/dist/sdd/index.js.map +1 -1
  40. package/dist/security/index.d.ts +3 -3
  41. package/dist/{selector-DmXxpFyM.d.ts → selector-BvSPdJj6.d.ts} +1 -1
  42. package/dist/{session-reader-bfgsy2a0.d.ts → session-reader-BGhzMir4.d.ts} +1 -1
  43. package/dist/storage/index.d.ts +6 -6
  44. package/dist/storage/index.js +57 -37
  45. package/dist/storage/index.js.map +1 -1
  46. package/dist/{system-prompt-CM6zOhd2.d.ts → system-prompt-dtzV_mLm.d.ts} +1 -1
  47. package/dist/{tool-executor-p4tP9tGF.d.ts → tool-executor-CgU0yWpB.d.ts} +4 -4
  48. package/dist/types/index.d.ts +15 -15
  49. package/dist/types/index.js +31 -16
  50. package/dist/types/index.js.map +1 -1
  51. package/dist/utils/index.d.ts +14 -2
  52. package/dist/utils/index.js +18 -1
  53. package/dist/utils/index.js.map +1 -1
  54. package/package.json +1 -1
@@ -1,41 +1,41 @@
1
1
  export { D as DefaultLogger, a as DefaultLoggerOptions } from '../logger-bOzkF5LL.js';
2
- export { A as AbandonedSession, a as AttachmentStoreOptions, C as ConfigLoaderOptions, b as ConfigMigration, c as ConfigMigrationError, d as ConfigSource, D as DEFAULT_CONFIG_MIGRATIONS, e as DefaultAttachmentStore, f as DefaultConfigLoader, g as DefaultConfigStore, h as DefaultMemoryStore, i as DefaultSessionStore, M as MemoryStoreOptions, j as MigrationContext, k as MigrationResult, P as PersistedQueueItem, l as PlanFile, m as PlanItem, n as PlanTemplate, Q as QueueStore, R as RecoveryLock, o as RecoveryLockOptions, S as SessionAnalyzer, p as SessionStoreOptions, T as TodosCheckpointFile, q as addPlanItem, r as attachPlanCheckpoint, s as attachTodosCheckpoint, t as clearPlan, u as deriveTodosFromPlanItem, v as emptyPlan, w as formatPlan, x as formatPlanTemplates, y as getPlanTemplate, z as listPlanTemplates, B as loadPlan, E as loadTodosCheckpoint, F as removePlanItem, G as runConfigMigrations, H as savePlan, I as saveTodosCheckpoint, J as setPlanItemStatus } from '../plan-templates-BmDdJ7UL.js';
3
- export { D as DefaultSessionReader } from '../session-reader-bfgsy2a0.js';
4
- export { A as AuditLevel, a as SessionEventBridge, b as SessionEventBridgeOptions, c as SessionSamplingOptions, T as ToolProgressSamplingOptions, e as createSessionEventBridge, r as resolveAuditLevel, i as resolveSessionLoggingConfig } from '../goal-store-BeRsj7YX.js';
2
+ export { A as AbandonedSession, a as AttachmentStoreOptions, C as ConfigLoaderOptions, b as ConfigMigration, c as ConfigMigrationError, d as ConfigSource, D as DEFAULT_CONFIG_MIGRATIONS, e as DefaultAttachmentStore, f as DefaultConfigLoader, g as DefaultConfigStore, h as DefaultMemoryStore, i as DefaultSessionStore, M as MemoryStoreOptions, j as MigrationContext, k as MigrationResult, P as PersistedQueueItem, l as PlanFile, m as PlanItem, n as PlanTemplate, Q as QueueStore, R as RecoveryLock, o as RecoveryLockOptions, S as SessionAnalyzer, p as SessionStoreOptions, T as TodosCheckpointFile, q as addPlanItem, r as attachPlanCheckpoint, s as attachTodosCheckpoint, t as clearPlan, u as deriveTodosFromPlanItem, v as emptyPlan, w as formatPlan, x as formatPlanTemplates, y as getPlanTemplate, z as listPlanTemplates, B as loadPlan, E as loadTodosCheckpoint, F as removePlanItem, G as runConfigMigrations, H as savePlan, I as saveTodosCheckpoint, J as setPlanItemStatus } from '../plan-templates-CLRcurWN.js';
3
+ export { D as DefaultSessionReader } from '../session-reader-BGhzMir4.js';
4
+ export { A as AuditLevel, a as SessionEventBridge, b as SessionEventBridgeOptions, c as SessionSamplingOptions, T as ToolProgressSamplingOptions, e as createSessionEventBridge, r as resolveAuditLevel, i as resolveSessionLoggingConfig } from '../goal-store-DwcTDDiX.js';
5
5
  export { D as DirectorStateCheckpoint, a as DirectorStateSnapshot, b as DirectorSubagentState, c as DirectorTaskState, l as loadDirectorState } from '../director-state-BmYi3DGA.js';
6
6
  export { D as DefaultSecretScrubber, a as DefaultSecretVault, S as SecretVaultOptions, d as decryptConfigSecrets, e as encryptConfigSecrets, m as migratePlaintextSecrets, r as rewriteConfigEncrypted } from '../secret-scrubber-7rSC_emZ.js';
7
- export { A as AutoApprovePermissionPolicy, D as DefaultPermissionPolicy, P as PermissionPolicyOptions } from '../permission-policy-CtNscWOA.js';
8
- export { C as CompactorOptions, a as DefaultErrorHandler, b as DefaultRetryPolicy, H as HybridCompactor, T as ToolExecutor } from '../tool-executor-p4tP9tGF.js';
7
+ export { A as AutoApprovePermissionPolicy, D as DefaultPermissionPolicy, P as PermissionPolicyOptions } from '../permission-policy-CU6sqWxF.js';
8
+ export { C as CompactorOptions, a as DefaultErrorHandler, b as DefaultRetryPolicy, H as HybridCompactor, T as ToolExecutor } from '../tool-executor-CgU0yWpB.js';
9
9
  export { AutoCompactionMiddleware, AutonomousRunner, AutonomousRunnerOptions, AutonomyPromptContributorOptions, DefaultSkillLoader, DoneCheckResult, DoneConditionChecker, EternalAutonomyEngine, EternalAutonomyOptions, EternalEngineState, IntelligentCompactor, IntelligentCompactorOptions, IterationStage, ParallelEngineState, ParallelEternalEngine, ParallelEternalOptions, ParallelIterationStage, SelectiveCompactor, SelectiveCompactorOptions, SkillLoaderOptions, buildGoalPreamble, makeAutonomyPromptContributor } from '../execution/index.js';
10
- import { P as ProviderRunner, R as RunProviderOptions } from '../provider-runner-BGro2qQB.js';
11
- import { q as Response } from '../context-7u93AcGD.js';
12
- export { a as AGENTS_BY_PHASE, b as AGENT_CATALOG, c as ALL_AGENT_DEFINITIONS, d as ALL_FLEET_AGENTS, e as AUDIT_LOG_AGENT, f as AutoExtendCeiling, g as AutoExtendPolicy, B as BUG_HUNTER_AGENT, n as CreateDelegateToolOptions, D as DEFAULT_DIRECTOR_PREAMBLE, q as DEFAULT_SUBAGENT_BASELINE, r as DelegateHost, s as Director, w as DirectorPromptParts, x as DirectorSessionFactory, y as DirectorSessionFactoryOptions, F as FLEET_ROSTER, z as FLEET_ROSTER_BUDGETS, J as FleetRosterBudget, K as FleetSpawnBudgetError, L as ICoordinator, M as IFleetManager, O as NULL_FLEET_BUS, R as REFACTOR_PLANNER_AGENT, S as SECURITY_SCANNER_AGENT, V as SubagentPromptParts, W as applyRosterBudget, X as attachAutoExtend, Y as composeDirectorPrompt, Z as composeSubagentPrompt, _ as createDelegateTool, $ as getAgentDefinition, a1 as makeAskTool, a2 as makeAssignTool, a3 as makeAwaitTasksTool, a4 as makeCollabDebugTool, a5 as makeDirectorSessionFactory, a6 as makeFleetEmitTool, a7 as makeFleetHealthTool, a8 as makeFleetSessionTool, a9 as makeFleetStatusTool, aa as makeFleetUsageTool, ab as makeRollUpTool, ac as makeSpawnTool, ad as makeTerminateTool, af as rosterSummaryFromConfigs } from '../null-fleet-bus-C0xd73YP.js';
13
- export { A as AgentBudgetTier, a as AgentCapability, b as AgentDefinition, c as AgentPhase, D as DEFAULT_DISPATCH_ROLE, d as DefaultMultiAgentCoordinator, e as DispatchCandidate, f as DispatchClassifier, g as DispatchMethod, h as DispatchOptions, i as DispatchResult, j as MultiAgentCoordinatorOptions, k as dispatchAgent, m as makeLLMClassifier, s as scoreAgents } from '../multi-agent-coordinator-BuKq0q89.js';
14
- export { c as BudgetExceededError, d as BudgetKind, e as BudgetLimits, j as BudgetUsage, m as SubagentBudget } from '../multi-agent-Ba9Ni2hC.js';
15
- export { A as AgentFactory, a as AgentFactoryResult, b as AgentRunnerOptions, F as FleetBus, c as FleetEvent, d as FleetHandler, e as FleetUsage, f as FleetUsageAggregator, S as SubagentUsageSnapshot, m as makeAgentSubagentRunner } from '../agent-subagent-runner-DfvlBx5N.js';
16
- export { I as InMemoryAgentBridge, a as InMemoryBridgeTransport, c as createMessage } from '../agent-bridge-CjbD-i7-.js';
17
- export { D as DefaultModelsRegistry, a as DefaultModelsRegistryOptions, c as classifyFamily } from '../models-registry-gwMAo6E3.js';
10
+ import { P as ProviderRunner, R as RunProviderOptions } from '../provider-runner-BikCxGCx.js';
11
+ import { q as Response } from '../context-DtPKqKYV.js';
12
+ export { a as AGENTS_BY_PHASE, b as AGENT_CATALOG, c as ALL_AGENT_DEFINITIONS, d as ALL_FLEET_AGENTS, e as AUDIT_LOG_AGENT, f as AutoExtendCeiling, g as AutoExtendPolicy, B as BUG_HUNTER_AGENT, n as CreateDelegateToolOptions, D as DEFAULT_DIRECTOR_PREAMBLE, q as DEFAULT_SUBAGENT_BASELINE, r as DelegateHost, s as Director, w as DirectorPromptParts, x as DirectorSessionFactory, y as DirectorSessionFactoryOptions, F as FLEET_ROSTER, z as FLEET_ROSTER_BUDGETS, J as FleetRosterBudget, K as FleetSpawnBudgetError, L as ICoordinator, M as IFleetManager, O as NULL_FLEET_BUS, R as REFACTOR_PLANNER_AGENT, S as SECURITY_SCANNER_AGENT, V as SubagentPromptParts, W as applyRosterBudget, X as attachAutoExtend, Y as composeDirectorPrompt, Z as composeSubagentPrompt, _ as createDelegateTool, $ as getAgentDefinition, a1 as makeAskTool, a2 as makeAssignTool, a3 as makeAwaitTasksTool, a4 as makeCollabDebugTool, a5 as makeDirectorSessionFactory, a6 as makeFleetEmitTool, a7 as makeFleetHealthTool, a8 as makeFleetSessionTool, a9 as makeFleetStatusTool, aa as makeFleetUsageTool, ab as makeRollUpTool, ac as makeSpawnTool, ad as makeTerminateTool, af as rosterSummaryFromConfigs } from '../null-fleet-bus-BNiSlTna.js';
13
+ export { A as AgentBudgetTier, a as AgentCapability, b as AgentDefinition, c as AgentPhase, D as DEFAULT_DISPATCH_ROLE, d as DefaultMultiAgentCoordinator, e as DispatchCandidate, f as DispatchClassifier, g as DispatchMethod, h as DispatchOptions, i as DispatchResult, j as MultiAgentCoordinatorOptions, k as dispatchAgent, m as makeLLMClassifier, s as scoreAgents } from '../multi-agent-coordinator-CjNX4uBD.js';
14
+ export { c as BudgetExceededError, d as BudgetKind, e as BudgetLimits, j as BudgetUsage, m as SubagentBudget } from '../multi-agent-BmC_xiog.js';
15
+ export { A as AgentFactory, a as AgentFactoryResult, b as AgentRunnerOptions, F as FleetBus, c as FleetEvent, d as FleetHandler, e as FleetUsage, f as FleetUsageAggregator, S as SubagentUsageSnapshot, m as makeAgentSubagentRunner } from '../agent-subagent-runner-By7jruZ_.js';
16
+ export { I as InMemoryAgentBridge, a as InMemoryBridgeTransport, c as createMessage } from '../agent-bridge-Dnhw4tnM.js';
17
+ export { D as DefaultModelsRegistry, a as DefaultModelsRegistryOptions, c as classifyFamily } from '../models-registry-Cuq1C8V9.js';
18
18
  export { DefaultModeStore, LLMSelector, LLMSelectorOptions, ModeLoaderOptions, loadProjectModes, loadUserModes } from '../models/index.js';
19
19
  export { AISpecBuilder, AISpecBuilderOptions, AISpecPhase, AISpecSession, AutoExecutor, AutoExecutorOptions, BottleneckTask, CollectedAnswer, CriticalPathAnalysis, DefaultTaskStore, ExecutionSummary, GeneratedTask, RunResult, SPEC_TEMPLATES, SddParallelRun, SddParallelRunOptions, SddProgress, SddTaskDecomposer, SddTaskDecomposerOptions, SpecDiff, SpecDrivenDev, SpecDrivenDevOptions, SpecIndexEntry, SpecParser, SpecStore, SpecStoreOptions, SpecVersion, SpecVersioning, TaskBatch, TaskExecutionContext, TaskExecutionResult, TaskFlow, TaskFlowEventMap, TaskFlowEventName, TaskFlowExecutionContext, TaskFlowOptions, TaskFlowPhase, TaskGenerator, TaskGeneratorOptions, TaskGraphIndexEntry, TaskGraphStore, TaskGraphStoreOptions, TaskStore, TaskTracker, TaskTrackerOptions, TaskTransition, WaveResult, analyzeCriticalPath, createAutoExecutor, getTemplate, listTemplates, renderProgress, renderSpecAnalysis, renderTaskGraph, renderTaskList, templateToMarkdown } from '../sdd/index.js';
20
20
  export { DefaultHealthRegistry, InMemoryMetricsSink, MetricsServerHandle, MetricsServerOptions, NoopMetricsSink, NoopTracer, OTelTracer, OtlpMetricsExporterHandle, OtlpMetricsExporterOptions, OtlpTraceExporterHandle, OtlpTraceExporterOptions, PROMETHEUS_CONTENT_TYPE, buildOtlpMetricsRequest, buildOtlpTracesRequest, renderPrometheus, startMetricsServer, startOtlpMetricsExporter, startOtlpTraceExporter, wireMetricsToEvents } from '../observability/index.js';
21
- export { C as ContextManagerAction, a as ContextManagerInput, b as ContextManagerResult, c as ContextManagerToolOptions, d as allServers, e as awsServer, f as blockServer, g as braveSearchServer, h as context7Server, i as contextManagerTool, j as createContextManagerTool, k as everArtServer, l as filesystemServer, m as githubServer, n as googleMapsServer, o as miniMaxVisionServer, s as sentinelServer, p as slackServer, z as zaiVisionServer } from '../mcp-servers-DONdo-XM.js';
21
+ export { C as ContextManagerAction, a as ContextManagerInput, b as ContextManagerResult, c as ContextManagerToolOptions, d as allServers, e as awsServer, f as blockServer, g as braveSearchServer, h as context7Server, i as contextManagerTool, j as createContextManagerTool, k as everArtServer, l as filesystemServer, m as githubServer, n as googleMapsServer, o as miniMaxVisionServer, s as sentinelServer, p as slackServer, z as zaiVisionServer } from '../mcp-servers-DE6gzBry.js';
22
22
  export { D as DEFAULT_AUTONOMY_CONFIG, a as DEFAULT_CONTEXT_CONFIG, c as DEFAULT_TOOLS_CONFIG } from '../default-config-DEXI4jsl.js';
23
23
  import '../logger-DDd5C--Z.js';
24
- import '../events-Bt44ikPN.js';
24
+ import '../events-CbHTS4ZZ.js';
25
25
  import '../secret-scrubber-3MHDDAtm.js';
26
26
  import '../memory-CEXuo7sz.js';
27
27
  import '../wstack-paths-eMXnY1_X.js';
28
- import '../config-ZRCf7sTu.js';
28
+ import '../config-bht0txXS.js';
29
29
  import '../models-registry-BcYJDKLm.js';
30
30
  import '../secret-vault-DoISxaKO.js';
31
31
  import '../input-reader-E-ffP2ee.js';
32
- import '../permission-B6sldrSp.js';
33
- import '../compactor-D1RHFRmF.js';
34
- import '../retry-policy-KF18W4dg.js';
35
- import '../index-mAWBdLyJ.js';
36
- import '../system-prompt-CM6zOhd2.js';
32
+ import '../permission-Drm7LpPo.js';
33
+ import '../compactor-Duhsf0ge.js';
34
+ import '../retry-policy-Chtlvr5b.js';
35
+ import '../index-CI271MjL.js';
36
+ import '../system-prompt-dtzV_mLm.js';
37
37
  import '../observability-BhnVLBLS.js';
38
- import '../selector-DmXxpFyM.js';
38
+ import '../selector-BvSPdJj6.js';
39
39
  import '../skill-CxuWrsKK.js';
40
40
  import 'node:events';
41
41
  import '../mode-CV077NjV.js';
@@ -14525,6 +14525,7 @@ function stripUndefined(obj) {
14525
14525
  // src/models/models-registry.ts
14526
14526
  var DEFAULT_URL = "https://models.dev/api.json";
14527
14527
  var DEFAULT_TTL_SECONDS = 24 * 3600;
14528
+ var DEFAULT_REFRESH_TIMEOUT_MS = 15e3;
14528
14529
  var FAMILY_BY_NPM = {
14529
14530
  "@ai-sdk/anthropic": "anthropic",
14530
14531
  "@ai-sdk/google-vertex/anthropic": "anthropic",
@@ -14561,6 +14562,7 @@ var DefaultModelsRegistry = class {
14561
14562
  fetchImpl;
14562
14563
  seed;
14563
14564
  maxStaleAgeMs;
14565
+ refreshTimeoutMs;
14564
14566
  overlay;
14565
14567
  overlayUrl;
14566
14568
  overlayFile;
@@ -14573,6 +14575,7 @@ var DefaultModelsRegistry = class {
14573
14575
  this.seed = opts.seed;
14574
14576
  const maxStaleSeconds = opts.maxStaleAgeSeconds ?? 7 * 24 * 3600;
14575
14577
  this.maxStaleAgeMs = maxStaleSeconds * 1e3;
14578
+ this.refreshTimeoutMs = opts.refreshTimeoutMs ?? DEFAULT_REFRESH_TIMEOUT_MS;
14576
14579
  this.overlay = opts.overlay;
14577
14580
  this.overlayUrl = opts.overlayUrl;
14578
14581
  this.overlayFile = opts.overlayFile;
@@ -14624,22 +14627,34 @@ var DefaultModelsRegistry = class {
14624
14627
  }
14625
14628
  /** Fetch + cache the models.dev base. Throws on failure (used by `refresh`). */
14626
14629
  async refreshBase() {
14627
- const res = await this.fetchImpl(this.url, {
14628
- method: "GET",
14629
- headers: { accept: "application/json" }
14630
- });
14631
- if (!res.ok) {
14632
- throw new Error(`ModelsRegistry: HTTP ${res.status} fetching ${this.url}`);
14633
- }
14634
- const json = await res.json();
14635
- this.fetchedAt = /* @__PURE__ */ new Date();
14636
- const envelope = {
14637
- fetchedAt: this.fetchedAt.toISOString(),
14638
- url: this.url,
14639
- payload: json
14640
- };
14641
- await atomicWrite(this.cacheFile, JSON.stringify(envelope));
14642
- return json;
14630
+ const controller = new AbortController();
14631
+ const timeout = setTimeout(() => controller.abort(), this.refreshTimeoutMs);
14632
+ try {
14633
+ const res = await this.fetchImpl(this.url, {
14634
+ method: "GET",
14635
+ headers: { accept: "application/json" },
14636
+ signal: controller.signal
14637
+ });
14638
+ clearTimeout(timeout);
14639
+ if (!res.ok) {
14640
+ throw new Error(`ModelsRegistry: HTTP ${res.status} fetching ${this.url}`);
14641
+ }
14642
+ const json = await res.json();
14643
+ this.fetchedAt = /* @__PURE__ */ new Date();
14644
+ const envelope = {
14645
+ fetchedAt: this.fetchedAt.toISOString(),
14646
+ url: this.url,
14647
+ payload: json
14648
+ };
14649
+ await atomicWrite(this.cacheFile, JSON.stringify(envelope));
14650
+ return json;
14651
+ } catch (err) {
14652
+ clearTimeout(timeout);
14653
+ if (err instanceof Error && err.name === "AbortError") {
14654
+ throw new Error(`ModelsRegistry: fetch timed out after ${this.refreshTimeoutMs}ms`);
14655
+ }
14656
+ throw err;
14657
+ }
14643
14658
  }
14644
14659
  /**
14645
14660
  * Resolve the curated overlay, memoised. Order: in-memory `overlay` →