openfox 2.0.101 → 2.0.103

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 (68) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/CHANGELOG.md +25 -0
  3. package/dist/{chat-handler-YPWT4MAQ.js → chat-handler-IBFSBSGV.js} +22 -21
  4. package/dist/{chunk-O2PLNJIU.js → chunk-2EYTYXWN.js} +2 -2
  5. package/dist/{chunk-MRWR3SIT.js → chunk-4Z2ARCY3.js} +2 -2
  6. package/dist/{chunk-AY37NB76.js → chunk-5ZJYEINJ.js} +2 -2
  7. package/dist/{chunk-XTKLA4AK.js → chunk-73EV6QYX.js} +4 -4
  8. package/dist/{chunk-XLI6PDJG.js → chunk-7HIJP4PC.js} +2 -2
  9. package/dist/{chunk-W77HIJGH.js → chunk-AI27N57J.js} +3 -3
  10. package/dist/{chunk-VJILJ22N.js → chunk-BJDQPILB.js} +3 -3
  11. package/dist/{chunk-MO3GJIT3.js → chunk-DPRJYQ5U.js} +132 -43
  12. package/dist/{chunk-3LRYZ7R3.js → chunk-FQS7A5M4.js} +2 -2
  13. package/dist/{chunk-NWO6GRYE.js → chunk-JE7LW7Y6.js} +2 -1
  14. package/dist/{chunk-MBYXZ5V5.js → chunk-JL657X72.js} +5 -5
  15. package/dist/{chunk-C6QW2IDH.js → chunk-K6VVTE6C.js} +30 -28
  16. package/dist/{chunk-UIK6GA3P.js → chunk-KCED2X4H.js} +2 -2
  17. package/dist/{chunk-NLN5LPQ4.js → chunk-KKEBXFB3.js} +2 -2
  18. package/dist/{chunk-HAFRPV7I.js → chunk-KLK5N4OX.js} +3 -3
  19. package/dist/{chunk-KQPDU65K.js → chunk-MGKS2NG2.js} +3 -3
  20. package/dist/{chunk-TDHDLDGQ.js → chunk-MR7ZEGOF.js} +2 -2
  21. package/dist/{chunk-CFTT46KH.js → chunk-QL2G5UWE.js} +26 -24
  22. package/dist/{chunk-7GBFQ2PE.js → chunk-REQIAJTV.js} +245 -111
  23. package/dist/{chunk-ZIMGU5ZH.js → chunk-RZC6DAT2.js} +2 -2
  24. package/dist/chunk-SQYMFWY7.js +7 -0
  25. package/dist/chunk-W5FTCTGY.js +72 -0
  26. package/dist/{chunk-E2CSSHSI.js → chunk-W5RC44R6.js} +10 -10
  27. package/dist/{chunk-KNYPBXPW.js → chunk-WPCYFH6X.js} +4 -4
  28. package/dist/{chunk-UEOEA6BB.js → chunk-YZSBJUGC.js} +3 -2
  29. package/dist/{chunk-IXFEXEUL.js → chunk-Z753S3X7.js} +6 -6
  30. package/dist/{chunk-G5JFKTSR.js → chunk-ZLCPNTRT.js} +4 -4
  31. package/dist/cli/dev.js +1 -1
  32. package/dist/cli/index.js +1 -1
  33. package/dist/{client-CFTJH6BY.js → client-Q7BHKOCD.js} +5 -5
  34. package/dist/{client-pure-DCEZBFKW.js → client-pure-ONSVWEG5.js} +2 -2
  35. package/dist/{compactor-B4V75Q3A.js → compactor-43P3LGDU.js} +11 -11
  36. package/dist/{dynamic-context-MA5BIJ52.js → dynamic-context-AMPVZXUU.js} +7 -7
  37. package/dist/{events-4THEZWVL.js → events-RCC32JOA.js} +6 -6
  38. package/dist/{folding-OYBO2NTH.js → folding-ZNUXPQUD.js} +4 -4
  39. package/dist/{http-client-U6DVFL7F.js → http-client-WGNBG7PC.js} +3 -3
  40. package/dist/{manager-53J5P4EZ.js → manager-HFGJLW7Q.js} +4 -4
  41. package/dist/model-overrides-DQDT5Y7R.js +21 -0
  42. package/dist/{orchestrator-DHBU7LRB.js → orchestrator-QDXKDLOW.js} +26 -25
  43. package/dist/package.json +1 -1
  44. package/dist/{path-security-6GYETPWN.js → path-security-SUFEIBTC.js} +7 -7
  45. package/dist/{platform-7KXP3VVA.js → platform-2RLL7RAE.js} +3 -3
  46. package/dist/{processor-RC3IBY2J.js → processor-YWNLWAZW.js} +21 -20
  47. package/dist/{provider-PEJ27FBM.js → provider-FX3QCGAF.js} +6 -6
  48. package/dist/{provider-manager-EJGPSLOZ.js → provider-manager-GLG6BA32.js} +6 -6
  49. package/dist/{registry-QEOTM3IG.js → registry-GBNLVWYQ.js} +3 -3
  50. package/dist/{serve-KM2RVX2U.js → serve-FE4UAXGE.js} +27 -26
  51. package/dist/server/index.d.ts +15 -0
  52. package/dist/server/index.js +26 -25
  53. package/dist/server-QGQGSHW6.js +47 -0
  54. package/dist/{service-2PW2V25M.js → service-CXWJQFOZ.js} +62 -20
  55. package/dist/{session-overrides-BQSE3V3F.js → session-overrides-MBGBX6TM.js} +5 -5
  56. package/dist/{sessions-AUDWMF55.js → sessions-FEIFYGH7.js} +4 -4
  57. package/dist/{settings-2WVGUPYV.js → settings-FT7HF7ZB.js} +2 -2
  58. package/dist/skill-defaults/browser/SKILL.md +8 -1
  59. package/dist/{tool-adapter-MOGEI6TP.js → tool-adapter-FEAHWU5C.js} +2 -2
  60. package/dist/{tools-X5FONL4Q.js → tools-M5DKWCJJ.js} +19 -16
  61. package/dist/{update-GHS75L7T.js → update-KMPQUPQT.js} +2 -2
  62. package/dist/web/assets/{index-BG5sD2ez.css → index-B0CNNl1k.css} +1 -1
  63. package/dist/web/assets/{index-CCBacuE6.js → index-FWViKQkM.js} +83 -83
  64. package/dist/web/index.html +2 -2
  65. package/dist/web/sw.js +1 -1
  66. package/package.json +1 -1
  67. package/dist/chunk-UCNMVJXD.js +0 -7
  68. package/dist/server-ORYMG5HD.js +0 -46
@@ -21,37 +21,20 @@ import {
21
21
  tokenFromPassword,
22
22
  verifyPassword,
23
23
  workflowExists
24
- } from "./chunk-C6QW2IDH.js";
24
+ } from "./chunk-K6VVTE6C.js";
25
25
  import {
26
26
  openFolder
27
27
  } from "./chunk-62QCBNPE.js";
28
28
  import {
29
29
  createToolRegistry,
30
30
  devServerManager,
31
+ getBuiltInToolNames,
31
32
  setMcpConfigMode,
32
33
  setMcpConfigPath,
33
34
  setMcpManagerForTools,
34
35
  setMcpTools,
35
36
  setNotifyMcpServersChanged
36
- } from "./chunk-MO3GJIT3.js";
37
- import {
38
- createMcpTools
39
- } from "./chunk-NWO6GRYE.js";
40
- import {
41
- deleteWorkspace,
42
- ensureWorkspace,
43
- getCommitsBehind,
44
- getGitBranch,
45
- getGlobalDataDir,
46
- getWorkspacesDir,
47
- loadWorkspaceConfig,
48
- resolveAndValidateSourceBranch,
49
- runGit,
50
- saveWorkspaceConfig,
51
- validateRef,
52
- validateWorkspaceName,
53
- workspaceExists
54
- } from "./chunk-D3SXT3BL.js";
37
+ } from "./chunk-DPRJYQ5U.js";
55
38
  import {
56
39
  deleteOwnedSkill,
57
40
  deleteProjectSkill,
@@ -70,27 +53,34 @@ import {
70
53
  setSkillEnabled,
71
54
  skillExists,
72
55
  updateOwnedSkill
73
- } from "./chunk-KQPDU65K.js";
74
- import {
75
- getSessionDisabledServers,
76
- setSessionDisabledServers
77
- } from "./chunk-XLI6PDJG.js";
78
- import {
79
- createContextStateMessage
80
- } from "./chunk-27SDWNKL.js";
81
- import {
82
- EventEmitter
83
- } from "./chunk-EU3WWTFH.js";
84
- import {
85
- getProject,
86
- getProjectByWorkdir,
87
- updateProject
88
- } from "./chunk-WWFH5GAR.js";
56
+ } from "./chunk-MGKS2NG2.js";
89
57
  import {
90
58
  ALWAYS_ALLOWED,
91
59
  ALWAYS_ALLOWED_FOR_SUBAGENTS,
92
60
  TOP_LEVEL_ONLY_TOOLS
93
- } from "./chunk-MRWR3SIT.js";
61
+ } from "./chunk-4Z2ARCY3.js";
62
+ import {
63
+ createMcpTools
64
+ } from "./chunk-JE7LW7Y6.js";
65
+ import {
66
+ deleteWorkspace,
67
+ ensureWorkspace,
68
+ getCommitsBehind,
69
+ getGitBranch,
70
+ getGlobalDataDir,
71
+ getWorkspacesDir,
72
+ loadWorkspaceConfig,
73
+ resolveAndValidateSourceBranch,
74
+ runGit,
75
+ saveWorkspaceConfig,
76
+ validateRef,
77
+ validateWorkspaceName,
78
+ workspaceExists
79
+ } from "./chunk-D3SXT3BL.js";
80
+ import {
81
+ getSessionDisabledServers,
82
+ setSessionDisabledServers
83
+ } from "./chunk-7HIJP4PC.js";
94
84
  import {
95
85
  emitAssistantMessageStart,
96
86
  emitContextState,
@@ -107,14 +97,31 @@ import {
107
97
  getEventStore,
108
98
  getSessionState,
109
99
  initEventStore
110
- } from "./chunk-KNYPBXPW.js";
100
+ } from "./chunk-WPCYFH6X.js";
101
+ import {
102
+ createContextStateMessage
103
+ } from "./chunk-27SDWNKL.js";
104
+ import {
105
+ EventEmitter
106
+ } from "./chunk-EU3WWTFH.js";
111
107
  import {
112
108
  getPathSeparator,
113
109
  isAbsolutePath
114
- } from "./chunk-NLN5LPQ4.js";
110
+ } from "./chunk-KKEBXFB3.js";
111
+ import {
112
+ getAgentModelOverride,
113
+ getAgentModelOverrides,
114
+ resolveLLMClientForAgent,
115
+ setAgentModelOverride
116
+ } from "./chunk-W5FTCTGY.js";
117
+ import {
118
+ getProject,
119
+ getProjectByWorkdir,
120
+ updateProject
121
+ } from "./chunk-WWFH5GAR.js";
115
122
  import {
116
123
  VERSION
117
- } from "./chunk-UCNMVJXD.js";
124
+ } from "./chunk-SQYMFWY7.js";
118
125
  import {
119
126
  clearWorkflowExecution,
120
127
  createSession,
@@ -134,7 +141,7 @@ import {
134
141
  updateSessionRunning,
135
142
  updateSessionWorkdir,
136
143
  updateWorkflowExecutionStatus
137
- } from "./chunk-ZIMGU5ZH.js";
144
+ } from "./chunk-RZC6DAT2.js";
138
145
  import {
139
146
  agentExists,
140
147
  deleteAgent,
@@ -157,13 +164,13 @@ import {
157
164
  saveAgentToProject,
158
165
  saveItemToDir,
159
166
  setRuntimeConfig
160
- } from "./chunk-3LRYZ7R3.js";
167
+ } from "./chunk-FQS7A5M4.js";
161
168
  import {
162
169
  createProviderManager,
163
170
  detectModel,
164
171
  getLlmStatus,
165
172
  parseDefaultModelSelection
166
- } from "./chunk-W77HIJGH.js";
173
+ } from "./chunk-AI27N57J.js";
167
174
  import {
168
175
  getModelProfile
169
176
  } from "./chunk-V4IE7HJY.js";
@@ -176,12 +183,12 @@ import {
176
183
  import {
177
184
  SessionNotFoundError,
178
185
  WorkspaceInUseError
179
- } from "./chunk-TDHDLDGQ.js";
186
+ } from "./chunk-MR7ZEGOF.js";
180
187
  import {
181
188
  deleteSetting,
182
189
  getSetting,
183
190
  setSetting
184
- } from "./chunk-UEOEA6BB.js";
191
+ } from "./chunk-YZSBJUGC.js";
185
192
  import {
186
193
  initDatabase
187
194
  } from "./chunk-GLF65XDS.js";
@@ -1725,7 +1732,30 @@ var DiagnosticSeverity = {
1725
1732
  function hoverInfo(contents, range) {
1726
1733
  return range ? { contents, range } : { contents };
1727
1734
  }
1735
+ function withTimeout(promise, ms, label) {
1736
+ const outer = new Promise((resolve9, reject) => {
1737
+ const timer = setTimeout(() => {
1738
+ reject(new Error(`${label} timed out after ${ms}ms`));
1739
+ }, ms);
1740
+ promise.then(
1741
+ (val) => {
1742
+ clearTimeout(timer);
1743
+ resolve9(val);
1744
+ },
1745
+ (err) => {
1746
+ clearTimeout(timer);
1747
+ reject(err);
1748
+ }
1749
+ );
1750
+ promise.catch(() => {
1751
+ });
1752
+ });
1753
+ outer.catch(() => {
1754
+ });
1755
+ return outer;
1756
+ }
1728
1757
  var DIAGNOSTIC_WAIT_MS = 2e3;
1758
+ var DEFAULT_INIT_TIMEOUT_MS = 5e3;
1729
1759
  var SYMBOL_KIND_NAMES = {
1730
1760
  1: "File",
1731
1761
  2: "Module",
@@ -1788,10 +1818,12 @@ var LspServer = class {
1788
1818
  // resolving the waiter so all waves are captured.
1789
1819
  pendingDiagnosticDebounce = /* @__PURE__ */ new Map();
1790
1820
  commandPath;
1791
- constructor(config3, workdir, commandPath) {
1821
+ initTimeoutMs;
1822
+ constructor(config3, workdir, commandPath, initTimeoutMs) {
1792
1823
  this.config = config3;
1793
1824
  this.workdir = workdir;
1794
1825
  this.commandPath = commandPath ?? config3.serverCommand;
1826
+ this.initTimeoutMs = initTimeoutMs ?? DEFAULT_INIT_TIMEOUT_MS;
1795
1827
  }
1796
1828
  // ============================================================================
1797
1829
  // Lifecycle
@@ -1815,10 +1847,23 @@ var LspServer = class {
1815
1847
  windowsHide: true,
1816
1848
  shell: needsShell
1817
1849
  });
1850
+ this.process.on("exit", (code) => {
1851
+ if (this.state === "running" || this.state === "starting") {
1852
+ logger.warn("LSP server exited unexpectedly", {
1853
+ language: this.config.id,
1854
+ code,
1855
+ state: this.state
1856
+ });
1857
+ this.handleProcessExit();
1858
+ }
1859
+ });
1818
1860
  await new Promise((resolve9, reject) => {
1819
1861
  this.process.once("spawn", resolve9);
1820
1862
  this.process.once("error", reject);
1821
1863
  });
1864
+ if (this.state !== "starting") {
1865
+ throw new Error(`LSP server process exited during startup (state: ${this.state})`);
1866
+ }
1822
1867
  if (!this.process.stdin || !this.process.stdout) {
1823
1868
  throw new Error("Failed to get stdio streams from language server process");
1824
1869
  }
@@ -1838,12 +1883,6 @@ var LspServer = class {
1838
1883
  logger.error("LSP server process error", { language: this.config.id, error: err.message });
1839
1884
  this.handleProcessExit();
1840
1885
  });
1841
- this.process.on("exit", (code) => {
1842
- if (this.state === "running") {
1843
- logger.warn("LSP server exited unexpectedly", { language: this.config.id, code });
1844
- this.handleProcessExit();
1845
- }
1846
- });
1847
1886
  this.process.stderr?.on("data", (data) => {
1848
1887
  const msg = data.toString().trim();
1849
1888
  if (msg) {
@@ -1871,7 +1910,11 @@ var LspServer = class {
1871
1910
  },
1872
1911
  initializationOptions: this.config.initOptions
1873
1912
  };
1874
- const result = await this.connection.sendRequest(LSP.initialize, initParams);
1913
+ const result = await withTimeout(
1914
+ this.connection.sendRequest(LSP.initialize, initParams),
1915
+ this.initTimeoutMs,
1916
+ "LSP initialize"
1917
+ );
1875
1918
  logger.debug("LSP server initialized", {
1876
1919
  language: this.config.id,
1877
1920
  capabilities: result
@@ -2675,6 +2718,31 @@ var SessionManager = class {
2675
2718
  constructor(providerManager) {
2676
2719
  this.providerManager = providerManager;
2677
2720
  }
2721
+ getProviderManager() {
2722
+ return this.providerManager;
2723
+ }
2724
+ /**
2725
+ * Create an LLM client for a specific agent, respecting its model override.
2726
+ *
2727
+ * If the agent has a model override stored in settings, creates a dedicated
2728
+ * client for that provider+model. Falls back to the global client if no
2729
+ * override is set or the provider no longer exists.
2730
+ *
2731
+ * @param preferredFallback - When provided, used as fallback instead of
2732
+ * providerManager.getLLMClient(). This is important in mock/test mode
2733
+ * where the caller already has a mock client that should be preserved.
2734
+ */
2735
+ createClientForAgent(agentId, preferredFallback) {
2736
+ const fallback = preferredFallback ?? this.providerManager.getLLMClient();
2737
+ const resolved = resolveLLMClientForAgent(agentId, fallback, this.providerManager);
2738
+ if (resolved.warning) {
2739
+ logger.warn("Agent model override unavailable, falling back", {
2740
+ agentId,
2741
+ warning: resolved.warning
2742
+ });
2743
+ }
2744
+ return resolved.client;
2745
+ }
2678
2746
  getCurrentModelSettings(sessionId) {
2679
2747
  let providerId;
2680
2748
  let model;
@@ -4426,7 +4494,37 @@ var config2 = {
4426
4494
  }
4427
4495
  return null;
4428
4496
  },
4429
- mapToResponse: (a) => a.metadata
4497
+ mapToResponse: (a) => a.metadata,
4498
+ extraGetData: async () => {
4499
+ const overrides = getAgentModelOverrides();
4500
+ const modelOverrides = {};
4501
+ for (const [agentId, override] of Object.entries(overrides)) {
4502
+ modelOverrides[agentId] = `${override.providerId}/${override.model}`;
4503
+ }
4504
+ return { modelOverrides };
4505
+ },
4506
+ extraRoutes: (router) => {
4507
+ router.get("/:id/model", (req, res) => {
4508
+ const { id } = req.params;
4509
+ const override = getAgentModelOverride(id);
4510
+ res.json(override ?? { providerId: null, model: null });
4511
+ });
4512
+ router.put("/:id/model", (req, res) => {
4513
+ const { id } = req.params;
4514
+ const { providerId, model } = req.body;
4515
+ if (providerId && model) {
4516
+ setAgentModelOverride(id, { providerId, model });
4517
+ } else {
4518
+ setAgentModelOverride(id, null);
4519
+ }
4520
+ res.json({ success: true });
4521
+ });
4522
+ router.delete("/:id/model", (req, res) => {
4523
+ const { id } = req.params;
4524
+ setAgentModelOverride(id, null);
4525
+ res.json({ success: true });
4526
+ });
4527
+ }
4430
4528
  };
4431
4529
  function createAgentRoutes(configDir, projectDir) {
4432
4530
  return createCrudRoutes(config2, configDir, projectDir);
@@ -5715,7 +5813,7 @@ async function createServerHandle(config3) {
5715
5813
  initLLM().catch(
5716
5814
  (err) => logger.error("LLM initialization failed", { error: err instanceof Error ? err.message : String(err) })
5717
5815
  );
5718
- const toolRegistry = createToolRegistry();
5816
+ let toolRegistry = createToolRegistry();
5719
5817
  const mcpManager = new McpManager({
5720
5818
  onToolsDiscovered: async (name, tools) => {
5721
5819
  try {
@@ -5748,9 +5846,10 @@ async function createServerHandle(config3) {
5748
5846
  const mcpTools = createMcpTools(mcpManager);
5749
5847
  if (mcpTools.length > 0) {
5750
5848
  setMcpTools(mcpTools);
5849
+ toolRegistry = createToolRegistry();
5751
5850
  logger.info("MCP tools registered", { count: mcpTools.length });
5752
5851
  }
5753
- const { signalMcpReady } = await import("./server-ORYMG5HD.js");
5852
+ const { signalMcpReady } = await import("./server-QGQGSHW6.js");
5754
5853
  signalMcpReady();
5755
5854
  });
5756
5855
  const app = express();
@@ -5819,17 +5918,20 @@ async function createServerHandle(config3) {
5819
5918
  res.json({ token });
5820
5919
  });
5821
5920
  app.get("/api/tools", (_req, res) => {
5921
+ const builtInNames = getBuiltInToolNames();
5822
5922
  const tools = toolRegistry.tools.map((t) => ({
5823
5923
  name: t.name,
5824
5924
  actions: t.permittedActions || [],
5825
5925
  alwaysAllowed: ALWAYS_ALLOWED.has(t.name) || ALWAYS_ALLOWED_FOR_SUBAGENTS.has(t.name),
5826
- topLevelOnly: TOP_LEVEL_ONLY_TOOLS.has(t.name)
5926
+ topLevelOnly: TOP_LEVEL_ONLY_TOOLS.has(t.name),
5927
+ isMcp: !builtInNames.has(t.name),
5928
+ mcpServer: t.mcpServer
5827
5929
  }));
5828
5930
  res.json({ tools });
5829
5931
  });
5830
5932
  app.get("/api/projects", async (_req, res) => {
5831
- const { listProjects } = await import("./projects-M5XKC7O6.js");
5832
- const projects = listProjects();
5933
+ const { listProjects: listProjects2 } = await import("./projects-M5XKC7O6.js");
5934
+ const projects = listProjects2();
5833
5935
  res.json({ projects });
5834
5936
  });
5835
5937
  app.post("/api/projects", async (req, res) => {
@@ -5957,7 +6059,7 @@ async function createServerHandle(config3) {
5957
6059
  }
5958
6060
  try {
5959
6061
  await checkoutBranch(project.workdir, branch);
5960
- const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-AUDWMF55.js");
6062
+ const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-FEIFYGH7.js");
5961
6063
  const allSessions = sessionManager.listSessions();
5962
6064
  for (const s of allSessions) {
5963
6065
  if (sessionManager.getEffectiveWorkdir(s.id) === project.workdir) {
@@ -5993,7 +6095,7 @@ async function createServerHandle(config3) {
5993
6095
  );
5994
6096
  }
5995
6097
  await createBranch(project.workdir, name, sb);
5996
- const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-AUDWMF55.js");
6098
+ const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-FEIFYGH7.js");
5997
6099
  const allSessions = sessionManager.listSessions();
5998
6100
  for (const s of allSessions) {
5999
6101
  if (sessionManager.getEffectiveWorkdir(s.id) === project.workdir) {
@@ -6025,7 +6127,7 @@ async function createServerHandle(config3) {
6025
6127
  if (!branch || typeof branch !== "string") return res.status(400).json({ error: "branch is required" });
6026
6128
  const effectiveWorkdir = sessionManager.getEffectiveWorkdir(req.params.id);
6027
6129
  const { checkoutBranch, validateRef: validateRef2 } = await import("./workspace-2NDXTCVR.js");
6028
- const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-AUDWMF55.js");
6130
+ const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-FEIFYGH7.js");
6029
6131
  try {
6030
6132
  await validateRef2(effectiveWorkdir, branch);
6031
6133
  await checkoutBranch(effectiveWorkdir, branch);
@@ -6068,7 +6170,7 @@ All file and git operations should use this branch.
6068
6170
  if (!name || typeof name !== "string") return res.status(400).json({ error: "name is required" });
6069
6171
  const effectiveWorkdir = sessionManager.getEffectiveWorkdir(req.params.id);
6070
6172
  const { validateRef: validateRef2 } = await import("./workspace-2NDXTCVR.js");
6071
- const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-AUDWMF55.js");
6173
+ const { updateSessionBranch: updateSessionBranch2 } = await import("./sessions-FEIFYGH7.js");
6072
6174
  try {
6073
6175
  await validateRef2(effectiveWorkdir, name);
6074
6176
  if (sourceBranch) {
@@ -6123,8 +6225,8 @@ All file and git operations should use this branch.
6123
6225
  res.json({ workspaces: workspacesList });
6124
6226
  });
6125
6227
  app.get("/api/sessions", async (req, res) => {
6126
- const { getRecentUserPromptsForSession } = await import("./events-4THEZWVL.js");
6127
- const { getPendingConfirmationsBySession } = await import("./path-security-6GYETPWN.js");
6228
+ const { getRecentUserPromptsForSession } = await import("./events-RCC32JOA.js");
6229
+ const { getPendingConfirmationsBySession } = await import("./path-security-SUFEIBTC.js");
6128
6230
  const projectId = req.query["projectId"];
6129
6231
  const limit = Math.min(parseInt(req.query["limit"]) || 20, 100);
6130
6232
  const offset = parseInt(req.query["offset"]) || 0;
@@ -6170,7 +6272,7 @@ All file and git operations should use this branch.
6170
6272
  disabledServers = mcpManager.getAllServers().filter((s) => s.config.disabled).map((s) => s.name);
6171
6273
  }
6172
6274
  if (disabledServers.length > 0) {
6173
- const { setSessionDisabledServers: setSessionDisabledServers2 } = await import("./session-overrides-BQSE3V3F.js");
6275
+ const { setSessionDisabledServers: setSessionDisabledServers2 } = await import("./session-overrides-MBGBX6TM.js");
6174
6276
  setSessionDisabledServers2(session.id, disabledServers);
6175
6277
  }
6176
6278
  } catch {
@@ -6243,14 +6345,23 @@ All file and git operations should use this branch.
6243
6345
  }
6244
6346
  });
6245
6347
  app.get("/api/sessions/:id", async (req, res) => {
6246
- const { getEventStore: getEventStore2, combineEventsWithSnapshot } = await import("./events-4THEZWVL.js");
6247
- const { buildMessagesFromStoredEvents, foldPendingConfirmations } = await import("./folding-OYBO2NTH.js");
6248
- const { getPendingQuestionsForSession } = await import("./tools-X5FONL4Q.js");
6249
- const { getMaxVisibleItems } = await import("./settings-2WVGUPYV.js");
6250
- const session = sessionManager.getSession(req.params.id);
6348
+ const { getEventStore: getEventStore2, combineEventsWithSnapshot } = await import("./events-RCC32JOA.js");
6349
+ const { buildMessagesFromStoredEvents, foldPendingConfirmations } = await import("./folding-ZNUXPQUD.js");
6350
+ const { getPendingQuestionsForSession } = await import("./tools-M5DKWCJJ.js");
6351
+ const { getMaxVisibleItems } = await import("./settings-FT7HF7ZB.js");
6352
+ const { getAgentModelOverride: getAgentModelOverride2 } = await import("./model-overrides-DQDT5Y7R.js");
6353
+ const { updateSessionProvider: updateSessionProvider2 } = await import("./sessions-FEIFYGH7.js");
6354
+ let session = sessionManager.getSession(req.params.id);
6251
6355
  if (!session) {
6252
6356
  return res.status(404).json({ error: "Session not found" });
6253
6357
  }
6358
+ if (!session.providerId && session.mode) {
6359
+ const override = getAgentModelOverride2(session.mode);
6360
+ if (override) {
6361
+ updateSessionProvider2(session.id, override.providerId, override.model);
6362
+ session = sessionManager.getSession(session.id);
6363
+ }
6364
+ }
6254
6365
  const eventStore = getEventStore2();
6255
6366
  const { snapshot, events: eventsSinceSnapshot } = eventStore.getEventsSinceSnapshot(req.params.id);
6256
6367
  const events = combineEventsWithSnapshot(req.params.id, snapshot, eventsSinceSnapshot);
@@ -6278,8 +6389,8 @@ All file and git operations should use this branch.
6278
6389
  if (!session) {
6279
6390
  return res.status(404).json({ error: "Session not found" });
6280
6391
  }
6281
- const { stopSessionExecution } = await import("./chat-handler-YPWT4MAQ.js");
6282
- const { cancelQuestionsForSession, cancelPathConfirmationsForSession } = await import("./tools-X5FONL4Q.js");
6392
+ const { stopSessionExecution } = await import("./chat-handler-IBFSBSGV.js");
6393
+ const { cancelQuestionsForSession, cancelPathConfirmationsForSession } = await import("./tools-M5DKWCJJ.js");
6283
6394
  sessionManager.clearMessageQueue(sessionId);
6284
6395
  stopSessionExecution(sessionId, sessionManager);
6285
6396
  abortSession(sessionId);
@@ -6308,9 +6419,9 @@ All file and git operations should use this branch.
6308
6419
  res.json({ success: true });
6309
6420
  });
6310
6421
  app.post("/api/sessions/:id/provider", async (req, res) => {
6311
- const { getEventStore: getEventStore2, combineEventsWithSnapshot: combineEv } = await import("./events-4THEZWVL.js");
6312
- const { buildMessagesFromStoredEvents } = await import("./folding-OYBO2NTH.js");
6313
- const { getMaxVisibleItems } = await import("./settings-2WVGUPYV.js");
6422
+ const { getEventStore: getEventStore2, combineEventsWithSnapshot: combineEv } = await import("./events-RCC32JOA.js");
6423
+ const { buildMessagesFromStoredEvents } = await import("./folding-ZNUXPQUD.js");
6424
+ const { getMaxVisibleItems } = await import("./settings-FT7HF7ZB.js");
6314
6425
  const sessionId = req.params.id;
6315
6426
  const session = sessionManager.getSession(sessionId);
6316
6427
  if (!session) {
@@ -6423,9 +6534,11 @@ All file and git operations should use this branch.
6423
6534
  res.json({ success: true });
6424
6535
  });
6425
6536
  app.put("/api/sessions/:id/mode", async (req, res) => {
6426
- const { getEventStore: getEventStore2, combineEventsWithSnapshot: combineEv } = await import("./events-4THEZWVL.js");
6427
- const { buildMessagesFromStoredEvents } = await import("./folding-OYBO2NTH.js");
6428
- const { getMaxVisibleItems } = await import("./settings-2WVGUPYV.js");
6537
+ const { getEventStore: getEventStore2, combineEventsWithSnapshot: combineEv } = await import("./events-RCC32JOA.js");
6538
+ const { buildMessagesFromStoredEvents } = await import("./folding-ZNUXPQUD.js");
6539
+ const { getMaxVisibleItems } = await import("./settings-FT7HF7ZB.js");
6540
+ const { getAgentModelOverride: getAgentModelOverride2 } = await import("./model-overrides-DQDT5Y7R.js");
6541
+ const { updateSessionProvider: updateSessionProvider2 } = await import("./sessions-FEIFYGH7.js");
6429
6542
  const sessionId = req.params.id;
6430
6543
  const session = sessionManager.getSession(sessionId);
6431
6544
  if (!session) {
@@ -6441,6 +6554,22 @@ All file and git operations should use this branch.
6441
6554
  return res.status(400).json({ error: `Invalid mode. Must be one of: ${topLevelIds.join(", ")}` });
6442
6555
  }
6443
6556
  sessionManager.setMode(sessionId, mode);
6557
+ const override = getAgentModelOverride2(mode);
6558
+ if (override) {
6559
+ updateSessionProvider2(sessionId, override.providerId, override.model);
6560
+ } else {
6561
+ updateSessionProvider2(sessionId, null, null);
6562
+ const { providerId: defaultProviderId, model: defaultModel } = parseDefaultModelSelection(
6563
+ config3.defaultModelSelection
6564
+ );
6565
+ if (defaultProviderId && defaultModel) {
6566
+ const currentActiveProviderId = providerManager.getActiveProviderId();
6567
+ const currentModel = providerManager.getCurrentModel();
6568
+ if (currentActiveProviderId !== defaultProviderId || currentModel !== defaultModel) {
6569
+ await providerManager.activateProvider(defaultProviderId, { model: defaultModel });
6570
+ }
6571
+ }
6572
+ }
6444
6573
  const eventStore = getEventStore2();
6445
6574
  const { snapshot, events: eventsSinceSnapshot } = eventStore.getEventsSinceSnapshot(sessionId);
6446
6575
  const events = combineEv(sessionId, snapshot, eventsSinceSnapshot);
@@ -6511,7 +6640,7 @@ All file and git operations should use this branch.
6511
6640
  if (alwaysAllow !== void 0 && typeof alwaysAllow !== "boolean") {
6512
6641
  return res.status(400).json({ error: "alwaysAllow must be a boolean if provided" });
6513
6642
  }
6514
- const { providePathConfirmation, getConfirmationSessionId } = await import("./tools-X5FONL4Q.js");
6643
+ const { providePathConfirmation, getConfirmationSessionId } = await import("./tools-M5DKWCJJ.js");
6515
6644
  const pendingSessionId = getConfirmationSessionId(callId);
6516
6645
  if (!pendingSessionId) {
6517
6646
  return res.status(404).json({ error: "No pending path confirmation with that ID" });
@@ -6523,11 +6652,11 @@ All file and git operations should use this branch.
6523
6652
  if (!result.found) {
6524
6653
  return res.status(404).json({ error: "No pending path confirmation with that ID" });
6525
6654
  }
6526
- const { getEventStore: getEventStore2, combineEventsWithSnapshot: combineEvents } = await import("./events-4THEZWVL.js");
6527
- const { buildMessagesFromStoredEvents, foldPendingConfirmations } = await import("./folding-OYBO2NTH.js");
6655
+ const { getEventStore: getEventStore2, combineEventsWithSnapshot: combineEvents } = await import("./events-RCC32JOA.js");
6656
+ const { buildMessagesFromStoredEvents, foldPendingConfirmations } = await import("./folding-ZNUXPQUD.js");
6528
6657
  const { createSessionStateMessage } = await import("./protocol-YDNGGADL.js");
6529
- const { getPendingQuestionsForSession } = await import("./tools-X5FONL4Q.js");
6530
- const { getMaxVisibleItems } = await import("./settings-2WVGUPYV.js");
6658
+ const { getPendingQuestionsForSession } = await import("./tools-M5DKWCJJ.js");
6659
+ const { getMaxVisibleItems } = await import("./settings-FT7HF7ZB.js");
6531
6660
  const eventStore = getEventStore2();
6532
6661
  const { snapshot, events: eventsSinceSnapshot } = eventStore.getEventsSinceSnapshot(sessionId);
6533
6662
  const events = combineEvents(sessionId, snapshot, eventsSinceSnapshot);
@@ -6563,7 +6692,7 @@ All file and git operations should use this branch.
6563
6692
  if (!skip && typeof answer !== "string") {
6564
6693
  return res.status(400).json({ error: "answer is required when not skipping" });
6565
6694
  }
6566
- const { provideAnswer } = await import("./tools-X5FONL4Q.js");
6695
+ const { provideAnswer } = await import("./tools-M5DKWCJJ.js");
6567
6696
  const found = provideAnswer(callId, answer ?? "", skip ?? false);
6568
6697
  if (!found) {
6569
6698
  return res.status(404).json({ error: "No pending question with that ID" });
@@ -6596,7 +6725,7 @@ All file and git operations should use this branch.
6596
6725
  if (!session) {
6597
6726
  return res.status(404).json({ error: "Session not found" });
6598
6727
  }
6599
- const { getSetting: getSetting2, SETTINGS_KEYS } = await import("./settings-2WVGUPYV.js");
6728
+ const { getSetting: getSetting2, SETTINGS_KEYS } = await import("./settings-FT7HF7ZB.js");
6600
6729
  if (getSetting2(SETTINGS_KEYS.CACHE_WARMING) !== "true") {
6601
6730
  return res.json({ success: false, reason: "disabled" });
6602
6731
  }
@@ -6628,7 +6757,7 @@ All file and git operations should use this branch.
6628
6757
  backend: activeProvider?.backend ?? llmClient.getBackend(),
6629
6758
  model: llmClient.getModel()
6630
6759
  };
6631
- const { runAgentTurn, TurnMetrics } = await import("./orchestrator-DHBU7LRB.js");
6760
+ const { runAgentTurn, TurnMetrics } = await import("./orchestrator-QDXKDLOW.js");
6632
6761
  runAgentTurn(
6633
6762
  {
6634
6763
  sessionManager,
@@ -6666,15 +6795,15 @@ All file and git operations should use this branch.
6666
6795
  if (!session) {
6667
6796
  return res.status(404).json({ error: "Session not found" });
6668
6797
  }
6669
- const { stopSessionExecution } = await import("./chat-handler-YPWT4MAQ.js");
6670
- const { cancelQuestionsForSession, cancelPathConfirmationsForSession } = await import("./tools-X5FONL4Q.js");
6798
+ const { stopSessionExecution } = await import("./chat-handler-IBFSBSGV.js");
6799
+ const { cancelQuestionsForSession, cancelPathConfirmationsForSession } = await import("./tools-M5DKWCJJ.js");
6671
6800
  const queuedMessages = sessionManager.getQueueState(sessionId);
6672
6801
  sessionManager.clearMessageQueue(sessionId);
6673
6802
  stopSessionExecution(sessionId, sessionManager);
6674
6803
  abortSession(sessionId);
6675
6804
  cancelQuestionsForSession(sessionId, "Session stopped by user");
6676
6805
  cancelPathConfirmationsForSession(sessionId, "Session stopped by user");
6677
- const eventStore = (await import("./events-4THEZWVL.js")).getEventStore();
6806
+ const eventStore = (await import("./events-RCC32JOA.js")).getEventStore();
6678
6807
  eventStore.append(sessionId, { type: "running.changed", data: { isRunning: false } });
6679
6808
  res.json({ success: true, queuedMessages });
6680
6809
  });
@@ -6688,7 +6817,7 @@ All file and git operations should use this branch.
6688
6817
  if (typeof messageIndex !== "number" || messageIndex < 0) {
6689
6818
  return res.status(400).json({ error: "messageIndex must be a non-negative number" });
6690
6819
  }
6691
- const { truncateSessionMessages } = await import("./events-4THEZWVL.js");
6820
+ const { truncateSessionMessages } = await import("./events-RCC32JOA.js");
6692
6821
  truncateSessionMessages(sessionId, messageIndex);
6693
6822
  res.json({ success: true });
6694
6823
  });
@@ -6705,8 +6834,8 @@ All file and git operations should use this branch.
6705
6834
  if (content !== void 0 && (typeof content !== "string" || !content.trim())) {
6706
6835
  return res.status(400).json({ error: "content must be a non-empty string if provided" });
6707
6836
  }
6708
- const { getEventStore: getEventStore2 } = await import("./events-4THEZWVL.js");
6709
- const { buildMessagesFromStoredEvents } = await import("./folding-OYBO2NTH.js");
6837
+ const { getEventStore: getEventStore2 } = await import("./events-RCC32JOA.js");
6838
+ const { buildMessagesFromStoredEvents } = await import("./folding-ZNUXPQUD.js");
6710
6839
  const eventStore = getEventStore2();
6711
6840
  const events = eventStore.getEvents(sessionId);
6712
6841
  const { messages } = buildMessagesFromStoredEvents(events);
@@ -6718,7 +6847,7 @@ All file and git operations should use this branch.
6718
6847
  if (msg.role !== "user" || msg.isSystemGenerated) {
6719
6848
  return res.status(400).json({ error: "Can only replay user messages" });
6720
6849
  }
6721
- const { truncateSessionMessages } = await import("./events-4THEZWVL.js");
6850
+ const { truncateSessionMessages } = await import("./events-RCC32JOA.js");
6722
6851
  truncateSessionMessages(sessionId, msgIndex - 1);
6723
6852
  sessionManager.queueMessage(sessionId, "asap", content ?? msg.content, msg.attachments, msg.messageKind);
6724
6853
  res.json({ success: true });
@@ -6774,7 +6903,7 @@ All file and git operations should use this branch.
6774
6903
  res.json({ accepted: true });
6775
6904
  });
6776
6905
  app.get("/api/settings", async (req, res) => {
6777
- const { getSetting: getSetting2, SETTINGS_DEFAULTS } = await import("./settings-2WVGUPYV.js");
6906
+ const { getSetting: getSetting2, SETTINGS_DEFAULTS } = await import("./settings-FT7HF7ZB.js");
6778
6907
  const keysParam = req.query["keys"];
6779
6908
  if (!keysParam) {
6780
6909
  return res.status(400).json({ error: "keys query parameter is required" });
@@ -6787,19 +6916,19 @@ All file and git operations should use this branch.
6787
6916
  res.json(result);
6788
6917
  });
6789
6918
  app.get("/api/settings/:key", async (req, res) => {
6790
- const { getSetting: getSetting2, SETTINGS_DEFAULTS } = await import("./settings-2WVGUPYV.js");
6919
+ const { getSetting: getSetting2, SETTINGS_DEFAULTS } = await import("./settings-FT7HF7ZB.js");
6791
6920
  const key = req.params.key;
6792
6921
  const value = getSetting2(key) ?? SETTINGS_DEFAULTS[key] ?? null;
6793
6922
  res.json({ key, value });
6794
6923
  });
6795
6924
  app.get("/api/settings/:key", async (req, res) => {
6796
- const { getSetting: getSetting2, SETTINGS_DEFAULTS } = await import("./settings-2WVGUPYV.js");
6925
+ const { getSetting: getSetting2, SETTINGS_DEFAULTS } = await import("./settings-FT7HF7ZB.js");
6797
6926
  const key = req.params.key;
6798
6927
  const value = getSetting2(key) ?? SETTINGS_DEFAULTS[key] ?? null;
6799
6928
  res.json({ key, value });
6800
6929
  });
6801
6930
  app.put("/api/settings/:key", async (req, res) => {
6802
- const { setSetting: setSetting2 } = await import("./settings-2WVGUPYV.js");
6931
+ const { setSetting: setSetting2 } = await import("./settings-FT7HF7ZB.js");
6803
6932
  const key = req.params.key;
6804
6933
  const { value } = req.body;
6805
6934
  if (value === void 0) {
@@ -6826,7 +6955,7 @@ All file and git operations should use this branch.
6826
6955
  }
6827
6956
  });
6828
6957
  app.get("/api/tools/shells", async (_req, res) => {
6829
- const { listAvailableShells } = await import("./platform-7KXP3VVA.js");
6958
+ const { listAvailableShells } = await import("./platform-2RLL7RAE.js");
6830
6959
  res.json({ shells: listAvailableShells() });
6831
6960
  });
6832
6961
  app.get("/api/config", async (_req, res) => {
@@ -6916,7 +7045,7 @@ All file and git operations should use this branch.
6916
7045
  }));
6917
7046
  }
6918
7047
  app.post("/api/proxy/test", async (_req, res) => {
6919
- const { getSetting: getSetting2, SETTINGS_KEYS } = await import("./settings-2WVGUPYV.js");
7048
+ const { getSetting: getSetting2, SETTINGS_KEYS } = await import("./settings-FT7HF7ZB.js");
6920
7049
  const proxyUrl = getSetting2(SETTINGS_KEYS.PROXY_URL);
6921
7050
  if (!proxyUrl) {
6922
7051
  return res.status(400).json({ success: false, error: "No proxy URL configured" });
@@ -7008,7 +7137,7 @@ All file and git operations should use this branch.
7008
7137
  }
7009
7138
  });
7010
7139
  app.post("/api/proxy/test", async (_req, res) => {
7011
- const { getSetting: getSetting2, SETTINGS_KEYS } = await import("./settings-2WVGUPYV.js");
7140
+ const { getSetting: getSetting2, SETTINGS_KEYS } = await import("./settings-FT7HF7ZB.js");
7012
7141
  const proxyUrl = getSetting2(SETTINGS_KEYS.PROXY_URL);
7013
7142
  if (!proxyUrl) {
7014
7143
  return res.status(400).json({ success: false, error: "No proxy URL configured" });
@@ -7035,7 +7164,7 @@ All file and git operations should use this branch.
7035
7164
  const backend = req.query["backend"];
7036
7165
  if (!url) return res.status(400).json({ error: "url is required" });
7037
7166
  try {
7038
- const { fetchModelsWithContext } = await import("./provider-manager-EJGPSLOZ.js");
7167
+ const { fetchModelsWithContext } = await import("./provider-manager-GLG6BA32.js");
7039
7168
  const { getModelProfile: getModelProfile2 } = await import("./profiles-5J7F4BML.js");
7040
7169
  const models = await fetchModelsWithContext(
7041
7170
  url,
@@ -7105,8 +7234,8 @@ All file and git operations should use this branch.
7105
7234
  }
7106
7235
  const { getModelProfile: getModelProfile2 } = await import("./profiles-5J7F4BML.js");
7107
7236
  const { getBackendCapabilities } = await import("./backend-P3GHHLHJ.js");
7108
- const { buildNonStreamingCreateParams } = await import("./client-pure-DCEZBFKW.js");
7109
- const { OpenAIHttpClient } = await import("./http-client-U6DVFL7F.js");
7237
+ const { buildNonStreamingCreateParams } = await import("./client-pure-ONSVWEG5.js");
7238
+ const { OpenAIHttpClient } = await import("./http-client-WGNBG7PC.js");
7110
7239
  const { ensureVersionPrefix } = await import("./url-utils-SAJP7AEX.js");
7111
7240
  const profile = getModelProfile2(model);
7112
7241
  const capabilities = getBackendCapabilities(backend || "unknown");
@@ -7455,10 +7584,11 @@ All file and git operations should use this branch.
7455
7584
  });
7456
7585
  });
7457
7586
  async function rebuildMcpTools() {
7458
- const { createMcpTools: createMcpTools2 } = await import("./tool-adapter-MOGEI6TP.js");
7459
- const { setMcpTools: setMcpTools2 } = await import("./tools-X5FONL4Q.js");
7587
+ const { createMcpTools: createMcpTools2 } = await import("./tool-adapter-FEAHWU5C.js");
7588
+ const { setMcpTools: setMcpTools2 } = await import("./tools-M5DKWCJJ.js");
7460
7589
  const mcpTools = createMcpTools2(mcpManager);
7461
7590
  setMcpTools2(mcpTools);
7591
+ toolRegistry = createToolRegistry();
7462
7592
  }
7463
7593
  app.get("/api/mcp/servers", (_req, res) => {
7464
7594
  const servers = mcpManager.getAllServers();
@@ -7689,7 +7819,11 @@ All file and git operations should use this branch.
7689
7819
  res.status(400).json({ error: error instanceof Error ? error.message : String(error) });
7690
7820
  }
7691
7821
  });
7692
- const projectDir = config3.workdir;
7822
+ const { listProjects } = await import("./projects-M5XKC7O6.js");
7823
+ const allProjects = listProjects();
7824
+ const projectDir = allProjects.find(
7825
+ (p) => p.workdir === config3.workdir || config3.workdir && p.workdir.startsWith(config3.workdir + "/")
7826
+ )?.workdir ?? config3.workdir;
7693
7827
  app.use("/api/skills", createSkillRoutes(configDir, projectDir));
7694
7828
  app.use("/api/commands", createCommandRoutes(configDir, projectDir));
7695
7829
  app.use("/api/agents", createAgentRoutes(configDir, projectDir));
@@ -7712,13 +7846,13 @@ All file and git operations should use this branch.
7712
7846
  })
7713
7847
  );
7714
7848
  app.get("/api/sessions/:id/background-processes", async (req, res) => {
7715
- const { getSessionProcesses } = await import("./manager-53J5P4EZ.js");
7849
+ const { getSessionProcesses } = await import("./manager-HFGJLW7Q.js");
7716
7850
  const sessionId = req.params.id;
7717
7851
  const processes = getSessionProcesses(sessionId);
7718
7852
  res.json({ processes });
7719
7853
  });
7720
7854
  app.post("/api/sessions/:id/background-process/:processId/stop", async (req, res) => {
7721
- const { stopProcess } = await import("./manager-53J5P4EZ.js");
7855
+ const { stopProcess } = await import("./manager-HFGJLW7Q.js");
7722
7856
  const sessionId = req.params.id;
7723
7857
  const processId = req.params.processId;
7724
7858
  const session = sessionManager.getSession(sessionId);
@@ -7863,7 +7997,7 @@ All file and git operations should use this branch.
7863
7997
  const state = sessionManager.getContextState(sessionId);
7864
7998
  wssExports.broadcastForSession(sessionId, createContextStateMessage(state));
7865
7999
  });
7866
- const { QueueProcessor } = await import("./processor-RC3IBY2J.js");
8000
+ const { QueueProcessor } = await import("./processor-YWNLWAZW.js");
7867
8001
  const queueProcessor = new QueueProcessor({
7868
8002
  sessionManager,
7869
8003
  providerManager,
@@ -7947,4 +8081,4 @@ export {
7947
8081
  createServerHandle,
7948
8082
  createServer
7949
8083
  };
7950
- //# sourceMappingURL=chunk-7GBFQ2PE.js.map
8084
+ //# sourceMappingURL=chunk-REQIAJTV.js.map