@jait/gateway 0.1.405 → 0.1.406

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 (81) hide show
  1. package/dist/index.d.ts.map +1 -1
  2. package/dist/index.js +71 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/providers/jait-provider.d.ts +5 -0
  5. package/dist/providers/jait-provider.d.ts.map +1 -1
  6. package/dist/providers/jait-provider.js +71 -3
  7. package/dist/providers/jait-provider.js.map +1 -1
  8. package/dist/security/sandbox-manager.d.ts +24 -0
  9. package/dist/security/sandbox-manager.d.ts.map +1 -1
  10. package/dist/security/sandbox-manager.js +125 -2
  11. package/dist/security/sandbox-manager.js.map +1 -1
  12. package/dist/surfaces/browser.d.ts +5 -0
  13. package/dist/surfaces/browser.d.ts.map +1 -1
  14. package/dist/surfaces/browser.js +37 -2
  15. package/dist/surfaces/browser.js.map +1 -1
  16. package/dist/tools/contracts.d.ts +2 -0
  17. package/dist/tools/contracts.d.ts.map +1 -1
  18. package/dist/tools/core/execute.d.ts +4 -0
  19. package/dist/tools/core/execute.d.ts.map +1 -1
  20. package/dist/tools/core/execute.js +11 -0
  21. package/dist/tools/core/execute.js.map +1 -1
  22. package/dist/tools/terminal-tools.d.ts +1 -0
  23. package/dist/tools/terminal-tools.d.ts.map +1 -1
  24. package/dist/tools/terminal-tools.js +27 -10
  25. package/dist/tools/terminal-tools.js.map +1 -1
  26. package/package.json +1 -1
  27. package/web-dist/assets/{_basePickBy-DugHl0OJ.js → _basePickBy-QxQtt8pa.js} +1 -1
  28. package/web-dist/assets/{_baseUniq-CAz0U2qp.js → _baseUniq-C2-N_liB.js} +1 -1
  29. package/web-dist/assets/{arc-tF91IaOs.js → arc-BDSjTdkH.js} +1 -1
  30. package/web-dist/assets/{architectureDiagram-2XIMDMQ5-CgTIdTHZ.js → architectureDiagram-2XIMDMQ5-CATDjizV.js} +1 -1
  31. package/web-dist/assets/{blockDiagram-WCTKOSBZ-BozwMnwb.js → blockDiagram-WCTKOSBZ-CZOcbGS2.js} +1 -1
  32. package/web-dist/assets/{c4Diagram-IC4MRINW-CuL0qt9m.js → c4Diagram-IC4MRINW-Bf7dz-MN.js} +1 -1
  33. package/web-dist/assets/channel-00hRX4ef.js +1 -0
  34. package/web-dist/assets/{chunk-4BX2VUAB-BDVIVq_K.js → chunk-4BX2VUAB-yRohTgoa.js} +1 -1
  35. package/web-dist/assets/{chunk-55IACEB6-DeTCA4ed.js → chunk-55IACEB6-DgdAl44q.js} +1 -1
  36. package/web-dist/assets/{chunk-FMBD7UC4-DGurirNc.js → chunk-FMBD7UC4-Cw4nBL05.js} +1 -1
  37. package/web-dist/assets/{chunk-JSJVCQXG-UzmexzM2.js → chunk-JSJVCQXG-BmQac7l_.js} +1 -1
  38. package/web-dist/assets/{chunk-KX2RTZJC-CthqJzcF.js → chunk-KX2RTZJC-Cm7mDWHj.js} +1 -1
  39. package/web-dist/assets/{chunk-NQ4KR5QH-Ckh0y-5L.js → chunk-NQ4KR5QH-CJVucyFW.js} +1 -1
  40. package/web-dist/assets/{chunk-QZHKN3VN-BVjY9C6Z.js → chunk-QZHKN3VN-Ci5dmba-.js} +1 -1
  41. package/web-dist/assets/{chunk-WL4C6EOR-CcM7v0zp.js → chunk-WL4C6EOR-CGALWdRZ.js} +1 -1
  42. package/web-dist/assets/classDiagram-VBA2DB6C-CedFQL57.js +1 -0
  43. package/web-dist/assets/classDiagram-v2-RAHNMMFH-CedFQL57.js +1 -0
  44. package/web-dist/assets/clone-CFYygvRm.js +1 -0
  45. package/web-dist/assets/{cose-bilkent-S5V4N54A-BlcGh0e9.js → cose-bilkent-S5V4N54A-BRCMxgq-.js} +1 -1
  46. package/web-dist/assets/{dagre-KLK3FWXG-BecBcI-A.js → dagre-KLK3FWXG-CUcAmxLV.js} +1 -1
  47. package/web-dist/assets/{diagram-E7M64L7V-Bb-9cvkw.js → diagram-E7M64L7V-COkp5QZB.js} +1 -1
  48. package/web-dist/assets/{diagram-IFDJBPK2-BQ3f8FqK.js → diagram-IFDJBPK2-B987yUPY.js} +1 -1
  49. package/web-dist/assets/{diagram-P4PSJMXO-DLN6y9Ka.js → diagram-P4PSJMXO-CrBe4fcf.js} +1 -1
  50. package/web-dist/assets/{erDiagram-INFDFZHY-DV9q7sRT.js → erDiagram-INFDFZHY-CGzyJPlu.js} +1 -1
  51. package/web-dist/assets/{flowDiagram-PKNHOUZH-CU_JZYMd.js → flowDiagram-PKNHOUZH-D0THmuJD.js} +1 -1
  52. package/web-dist/assets/{ganttDiagram-A5KZAMGK-wtLqeQT8.js → ganttDiagram-A5KZAMGK-DKvlgfEs.js} +1 -1
  53. package/web-dist/assets/{gitGraphDiagram-K3NZZRJ6-CSUAMcmo.js → gitGraphDiagram-K3NZZRJ6-B7o9sXU3.js} +1 -1
  54. package/web-dist/assets/{graph-B6C0AZXq.js → graph-sm14XHx9.js} +1 -1
  55. package/web-dist/assets/{index-BxzZC3_t.js → index-CLiEwHII.js} +1 -1
  56. package/web-dist/assets/{index-B9_JdVcI.js → index-i2f4Vz10.js} +1 -1
  57. package/web-dist/assets/{index-BQRmfBet.js → index-jgXxV4RF.js} +42 -42
  58. package/web-dist/assets/{infoDiagram-LFFYTUFH-BCPWmXQK.js → infoDiagram-LFFYTUFH-B0-ccSzJ.js} +1 -1
  59. package/web-dist/assets/{ishikawaDiagram-PHBUUO56-BG40a_IZ.js → ishikawaDiagram-PHBUUO56-BY1UpU8g.js} +1 -1
  60. package/web-dist/assets/{journeyDiagram-4ABVD52K-BYlixMz8.js → journeyDiagram-4ABVD52K-BedELmB3.js} +1 -1
  61. package/web-dist/assets/{kanban-definition-K7BYSVSG-DhMn_Oe8.js → kanban-definition-K7BYSVSG-B-Qvjsxv.js} +1 -1
  62. package/web-dist/assets/{layout-CkBcvGj7.js → layout-DshjaJyz.js} +1 -1
  63. package/web-dist/assets/{linear-B4mrgfh_.js → linear-DSoNEDwq.js} +1 -1
  64. package/web-dist/assets/{mindmap-definition-YRQLILUH-Bi4NSzAC.js → mindmap-definition-YRQLILUH-CHd3XdZ1.js} +1 -1
  65. package/web-dist/assets/{pieDiagram-SKSYHLDU-m72WE3j5.js → pieDiagram-SKSYHLDU-X92MecDg.js} +1 -1
  66. package/web-dist/assets/{quadrantDiagram-337W2JSQ-BWgZEx8F.js → quadrantDiagram-337W2JSQ-0kkLfyTB.js} +1 -1
  67. package/web-dist/assets/{requirementDiagram-Z7DCOOCP-BjIc0YmJ.js → requirementDiagram-Z7DCOOCP-bnlpxJ_U.js} +1 -1
  68. package/web-dist/assets/{sankeyDiagram-WA2Y5GQK-BpRDunDB.js → sankeyDiagram-WA2Y5GQK-uTjqNz13.js} +1 -1
  69. package/web-dist/assets/{sequenceDiagram-2WXFIKYE-CQjp8PQR.js → sequenceDiagram-2WXFIKYE-DpCfvwXB.js} +1 -1
  70. package/web-dist/assets/{stateDiagram-RAJIS63D-Bn6pcsKz.js → stateDiagram-RAJIS63D-BiskQQ0B.js} +1 -1
  71. package/web-dist/assets/stateDiagram-v2-FVOUBMTO-BtajxlLX.js +1 -0
  72. package/web-dist/assets/{timeline-definition-YZTLITO2-CR1RRHnE.js → timeline-definition-YZTLITO2-CznnvoYm.js} +1 -1
  73. package/web-dist/assets/{treemap-KZPCXAKY-CfQzAvMX.js → treemap-KZPCXAKY-B_Tb4GVB.js} +1 -1
  74. package/web-dist/assets/{vennDiagram-LZ73GAT5-BN4EanlL.js → vennDiagram-LZ73GAT5-DFVyoIUj.js} +1 -1
  75. package/web-dist/assets/{xychartDiagram-JWTSCODW-C-lcS-WY.js → xychartDiagram-JWTSCODW-DBTe8Hjq.js} +1 -1
  76. package/web-dist/index.html +1 -1
  77. package/web-dist/assets/channel-DfyU7Iuh.js +0 -1
  78. package/web-dist/assets/classDiagram-VBA2DB6C-CeHqNqhK.js +0 -1
  79. package/web-dist/assets/classDiagram-v2-RAHNMMFH-CeHqNqhK.js +0 -1
  80. package/web-dist/assets/clone-CGB_HXw7.js +0 -1
  81. package/web-dist/assets/stateDiagram-v2-FVOUBMTO-BPf9YDyl.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,sBAAsB,CAAC;AA2D9B,iBAAe,IAAI,kBAk2BlB;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,sBAAsB,CAAC;AAmE9B,iBAAe,IAAI,kBA+5BlB;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import { SessionService } from "./services/sessions.js";
8
8
  import { SessionStateService } from "./services/session-state.js";
9
9
  import { WorkspaceStateService } from "./services/workspace-state.js";
10
10
  import { AuditWriter } from "./services/audit.js";
11
- import { SurfaceRegistry, TerminalSurfaceFactory, FileSystemSurfaceFactory, RemoteFileSystemSurfaceFactory, BrowserSurfaceFactory } from "./surfaces/index.js";
11
+ import { SurfaceRegistry, TerminalSurfaceFactory, FileSystemSurfaceFactory, RemoteFileSystemSurfaceFactory, BrowserSurfaceFactory, BrowserSurface } from "./surfaces/index.js";
12
12
  import { createToolRegistry } from "./tools/index.js";
13
13
  import { SchedulerService } from "./scheduler/service.js";
14
14
  import { HookBus, registerBuiltInHooks } from "./scheduler/hooks.js";
@@ -21,6 +21,7 @@ import { createRequire } from "node:module";
21
21
  const require = createRequire(import.meta.url);
22
22
  const { version: GATEWAY_VERSION } = require("../package.json");
23
23
  import { ConsentManager } from "./security/consent-manager.js";
24
+ import { SandboxManager } from "./security/sandbox-manager.js";
24
25
  import { TrustEngine } from "./security/trust-engine.js";
25
26
  import { getProfile } from "./security/tool-profiles.js";
26
27
  import { ConsentAwareExecutor } from "./security/consent-executor.js";
@@ -53,6 +54,13 @@ import { autoAssignWorkspaceRepositories } from "./services/workspace-repositori
53
54
  import { AssistantProfileService } from "./services/assistant-profiles.js";
54
55
  import { PluginManager } from "./plugins/manager.js";
55
56
  import { ThreadReviewSyncService } from "./services/thread-review-sync.js";
57
+ function parsePositiveIntegerEnv(name, fallback) {
58
+ const raw = process.env[name]?.trim();
59
+ if (!raw)
60
+ return fallback;
61
+ const parsed = Number.parseInt(raw, 10);
62
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : fallback;
63
+ }
56
64
  async function main() {
57
65
  const config = loadConfig();
58
66
  // Initialize SQLite database
@@ -129,6 +137,14 @@ async function main() {
129
137
  surfaceRegistry.register(new RemoteFileSystemSurfaceFactory(ws));
130
138
  console.log(`Surfaces registered: ${surfaceRegistry.registeredTypes.join(", ")}`);
131
139
  const previewService = new PreviewService(surfaceRegistry);
140
+ const browserSandboxManager = new SandboxManager();
141
+ const startupBrowserCleanup = await browserSandboxManager.cleanupBrowserSandboxes().catch((err) => {
142
+ console.warn("[browser] Failed to clean stale browser sandboxes on startup:", err instanceof Error ? err.message : err);
143
+ return [];
144
+ });
145
+ if (startupBrowserCleanup.length > 0) {
146
+ console.log(`[browser] Removed ${startupBrowserCleanup.length} stale browser sandbox container(s) from previous runs.`);
147
+ }
132
148
  previewService.onSessionChanged((session) => {
133
149
  ws.broadcastAll({
134
150
  type: "preview.session",
@@ -808,6 +824,58 @@ async function main() {
808
824
  }, 60_000); // check every minute
809
825
  if (terminalReaperInterval.unref)
810
826
  terminalReaperInterval.unref();
827
+ const BROWSER_IDLE_MS = parsePositiveIntegerEnv("JAIT_BROWSER_IDLE_MS", 15 * 60 * 1000);
828
+ const BROWSER_STALE_SANDBOX_MS = parsePositiveIntegerEnv("JAIT_BROWSER_STALE_SANDBOX_MS", 60 * 60 * 1000);
829
+ const BROWSER_REAPER_INTERVAL_MS = parsePositiveIntegerEnv("JAIT_BROWSER_REAPER_INTERVAL_MS", 60 * 1000);
830
+ const PREVIEW_BROWSER_PREFIX = "preview-browser-";
831
+ let browserReaperRunning = false;
832
+ const reapBrowserResources = async () => {
833
+ if (browserReaperRunning)
834
+ return;
835
+ browserReaperRunning = true;
836
+ try {
837
+ const browsers = surfaceRegistry
838
+ .listSurfaces()
839
+ .filter((s) => s.type === "browser" && s.state === "running");
840
+ const activeContainers = new Set();
841
+ for (const browser of browsers) {
842
+ const liveView = browser.getLiveViewInfo();
843
+ if (liveView?.containerName)
844
+ activeContainers.add(liveView.containerName);
845
+ }
846
+ for (const browser of browsers) {
847
+ if (browser.idleMs < BROWSER_IDLE_MS)
848
+ continue;
849
+ const idleSeconds = Math.round(browser.idleMs / 1000);
850
+ console.log(`[browser] Stopping idle browser ${browser.id} (idle ${idleSeconds}s)`);
851
+ if (browser.id.startsWith(PREVIEW_BROWSER_PREFIX)) {
852
+ const sessionId = browser.id.slice(PREVIEW_BROWSER_PREFIX.length);
853
+ previewService.stop(sessionId).catch((err) => console.error(`Failed to stop idle preview browser ${browser.id}:`, err));
854
+ }
855
+ else {
856
+ surfaceRegistry.stopSurface(browser.id, "browser idle timeout").catch((err) => console.error(`Failed to stop idle browser ${browser.id}:`, err));
857
+ }
858
+ }
859
+ const stopped = await browserSandboxManager.cleanupBrowserSandboxes({
860
+ maxAgeMs: BROWSER_STALE_SANDBOX_MS,
861
+ excludeNames: activeContainers,
862
+ });
863
+ if (stopped.length > 0) {
864
+ console.log(`[browser] Removed ${stopped.length} stale unmanaged browser sandbox container(s).`);
865
+ }
866
+ }
867
+ catch (err) {
868
+ console.error("[browser] Browser resource reaper failed:", err);
869
+ }
870
+ finally {
871
+ browserReaperRunning = false;
872
+ }
873
+ };
874
+ const browserReaperInterval = setInterval(() => {
875
+ void reapBrowserResources();
876
+ }, BROWSER_REAPER_INTERVAL_MS);
877
+ if (browserReaperInterval.unref)
878
+ browserReaperInterval.unref();
811
879
  let shuttingDown = false;
812
880
  const shutdown = async () => {
813
881
  if (shuttingDown)
@@ -827,6 +895,8 @@ async function main() {
827
895
  await pluginManager.disposeAll();
828
896
  await previewService.stopAll();
829
897
  await surfaceRegistry.stopAll("shutdown");
898
+ clearInterval(browserReaperInterval);
899
+ clearInterval(terminalReaperInterval);
830
900
  scheduler.stop();
831
901
  threadReviewSync.stop();
832
902
  ws.stop();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,OAAO,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE/K,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAE3E,SAAS,uBAAuB,CAAC,IAAY,EAAE,QAAgB;IAC7D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnE,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,6BAA6B;IAC7B,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IAC5C,eAAe,CAAC,MAAM,CAAC,CAAC;IACxB,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,iDAAiD,aAAa,GAAG,CAAC,CAAC;IAE/E,WAAW;IACX,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,EAAE,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACjD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAClD,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC;IAChE,MAAM,cAAc,GAAG,IAAI,qBAAqB,CAAC,EAAE,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IAE5C,oCAAoC;IACpC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;IAE5C,yEAAyE;IACzE,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;IACjD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzB,MAAM,EAAE,aAAa;gBACrB,iBAAiB,EAAE,IAAI;gBACvB,KAAK,EAAE,oEAAoE;aAC5E,CAAC,CAAC;YACH,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,4CAA4C,CAAC,CAAC;QAC3F,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,aAAa,YAAY,CAAC,MAAM,oCAAoC,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,EAAE,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IAChF,MAAM,0BAA0B,GAAG,IAAI,0BAA0B,CAAC,EAAE,CAAC,CAAC;IACtE,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAChD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IAC/C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;IACpD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC;IAChD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;IAClD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,eAAe,EAAE,CAAC,CAAC;IAEjD,oDAAoD;IACpD,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAC9C,eAAe,CAAC,QAAQ,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC;IACvD,eAAe,CAAC,QAAQ,CAAC,IAAI,wBAAwB,EAAE,CAAC,CAAC;IACzD,eAAe,CAAC,QAAQ,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;IAEtD,gFAAgF;IAChF,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,IAAI,uBAAuB,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;IAE5E,6DAA6D;IAC7D,MAAM,aAAa,GAAG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAElD,sEAAsE;IACtE,mDAAmD;IACnD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAChD,0DAA0D;IAC1D,IAAI,gBAAgB,GAAG,EAAE,CAAC;IAC1B,0DAA0D;IAC1D,IAAI,gBAAgB,GAAG,EAAE,CAAC;IAE1B,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAA0B,EAAE,EAAE;QAC5D,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAC9B,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE;YAC7B,IAAI,EAAE,YAAmB;YACzB,SAAS,EAAE,gBAAgB;YAC3B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE;SAClD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAU,EAAE,EAAE;QAC1C,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,oFAAoF;IACpF,eAAe,CAAC,QAAQ,CAAC,IAAI,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,wBAAwB,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClF,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,eAAe,CAAC,CAAC;IAC3D,MAAM,qBAAqB,GAAG,IAAI,cAAc,EAAE,CAAC;IACnD,MAAM,qBAAqB,GAAG,MAAM,qBAAqB,CAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAChG,OAAO,CAAC,IAAI,CAAC,+DAA+D,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxH,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IACH,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,qBAAqB,qBAAqB,CAAC,MAAM,yDAAyD,CAAC,CAAC;IAC1H,CAAC;IACD,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1C,EAAE,CAAC,YAAY,CAAC;YACd,IAAI,EAAE,iBAAwB;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,EAAE,OAAO,EAAE;SACrB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kBAAkB,GAAG,GAA4B,EAAE,CAAC,CAAC;QACtD,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACpC,QAAQ,EAAE,eAAe,CAAC,aAAa,EAAE;KAC1C,CAAC,CAAC;IAEH,6EAA6E;IAC7E,+DAA+D;IAC/D,eAAe,CAAC,gBAAgB,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE;QACjD,EAAE,CAAC,YAAY,CAAC;YACd,IAAI,EAAE,iBAAiB;YACvB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;YAClC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE;SACzC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACrD,OAA4D,CAAC,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE,CAChF,EAAE,CAAC,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;YACjC,MAAM,aAAa,GAAI,IAAI,CAAC,QAAoC,EAAE,aAAa,IAAI,IAAI,CAAC;YACxF,MAAM,MAAM,GAAI,IAAI,CAAC,QAAoC,EAAE,MAA4B,CAAC;YACxF,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC;YAEzG,kDAAkD;YAClD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;gBACvE,gBAAgB,GAAG,GAAG,CAAC;gBACvB,gBAAgB,GAAG,EAAE,CAAC;gBACtB,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAClD,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,OAAO,CAAC,CACjE,CAAC;YACJ,CAAC;YAED,gDAAgD;YAChD,EAAE,CAAC,aAAa,CACd;gBACE,OAAO,EAAE,gBAAgB;gBACzB,IAAI,EAAE;oBACJ,SAAS,EAAE,EAAE;oBACb,aAAa,EAAE,aAAuB;oBACtC,MAAM,EAAE,MAAM,IAAI,SAAS;iBAC5B;aACF,EACD,GAAG,CACJ,CAAC;YACF,uEAAuE;YACvE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE;gBAChB,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE;aACvD,CAAC,CAAC;YACH,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC5C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAMrE,CAAC;wBACrB,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE;4BACtC,cAAc,EAAE;gCACd,KAAK,EAAE,UAAU;gCACjB,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,IAAI;gCAC5B,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,IAAI;gCAChC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI;gCACpC,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI;6BACnC;yBACF,CAAC,CAAC;oBACL,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;oBAC3D,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,eAAe,CAAC,gBAAgB,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAC1D,EAAE,CAAC,YAAY,CAAC;YACd,IAAI,EAAE,sBAAsB;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;YAClC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,IAAI,EAAE;SACzF,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YAC1E,wDAAwD;YACxD,IAAI,gBAAgB,KAAK,EAAE,EAAE,CAAC;gBAC5B,gBAAgB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACpC,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,CAAC,OAAO,CAAC,CAChE,CAAC;gBACF,gBAAgB,GAAG,EAAE,CAAC;gBACtB,gBAAgB,GAAG,EAAE,CAAC;YACxB,CAAC;YAED,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;YACjC,EAAE,CAAC,aAAa,CACd;gBACE,OAAO,EAAE,iBAAiB;gBAC1B,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;aACxB,EACD,GAAG,CACJ,CAAC;YACF,uEAAuE;YACvE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE;gBAChB,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE;aACjD,CAAC,CAAC;YACH,IAAI,GAAG,IAAI,OAAO,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC5C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAMrE,CAAC;wBACrB,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE;4BACtC,cAAc,EAAE;gCACd,KAAK,EAAE,IAAI;gCACX,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,IAAI;gCAC5B,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,IAAI;gCAChC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI;gCACpC,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI;6BACnC;yBACF,CAAC,CAAC;oBACL,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,uBAAuB;IACvB,MAAM,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;IAC5B,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAG5B,2BAA2B;IAC3B,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;QAC9B,OAAO,EAAE,IAAI,mBAAmB,CAAC,EAAE,CAAC;QACpC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC;KAC9C,CAAC,CAAC;IAEH,uCAAuC;IACvC,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAC7C,IAAI,YAAY,GAAG,kBAAkB,CAAC,eAAe,EAAE;QACrD,aAAa,EAAE,MAAM;QACrB,KAAK;QACL,YAAY;QACZ,WAAW;QACX,EAAE;QACF,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;QACzD,aAAa;QACb,gBAAgB;QAChB,WAAW;QACX,YAAY;QACZ,gBAAgB;QAChB,WAAW;QACX,UAAU;QACV,kBAAkB;QAClB,aAAa;QACb,cAAc;QACd,0BAA0B;KAC3B,CAAC,CAAC;IACH,gBAAgB,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC;QACzC,MAAM;QACN,aAAa;QACb,WAAW;QACX,YAAY;QACZ,YAAY,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;KAClG,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,yBAAyB,gBAAgB,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAExE,6BAA6B;IAC7B,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC;QAChD,gBAAgB,EAAE,OAAO;QACzB,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,EAAE,CAAC,YAAY,CAAC;gBACd,IAAI,EAAE,kBAAkB;gBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC;QACD,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;YACtB,EAAE,CAAC,YAAY,CAAC;gBACd,IAAI,EAAE,iBAAiB;gBACvB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;aAClF,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,CAAC;KACF,CAAC,CAAC;IACH,MAAM,qBAAqB,GAAG,QAAiB,CAAC;IAChD,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;QACxC,gBAAgB,EAAE,OAAO;QACzB,EAAE;QACF,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,EAAE,CAAC,YAAY,CAAC;gBACd,IAAI,EAAE,kBAAkB;gBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,OAAO;aACjB,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;QACvE,CAAC;QACD,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;YACvB,EAAE,CAAC,YAAY,CAAC;gBACd,IAAI,EAAE,kBAAkB;gBACxB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,QAAQ;aAClB,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,WAAW,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/F,CAAC;KACF,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACtD,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAuB,CAAC;IACjE,MAAM,mBAAmB,GAAG,CAAC,SAAiB,EAAe,EAAE;QAC7D,MAAM,QAAQ,GAAG,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,yBAAyB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,EACxB,QAAgB,EAChB,KAAc,EACd,OAAmD,EACnD,OAAyD,EACzD,EAAE;QACF,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CAAC;YACxC,YAAY;YACZ,cAAc;YACd,WAAW;YACX,KAAK;YACL,WAAW;YACX,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC;YACxD,WAAW,EAAE,qBAAqB;SACnC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC;QACrC,EAAE;QACF,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YAC/B,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACrG,MAAM,OAAO,GAAG;gBACd,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,QAAQ,EAAE,SAAS,IAAI,CAAC,GAAG,EAAE,EAAE;gBAC/B,aAAa,EAAE,SAAS,CAAC,aAAa;gBACtC,WAAW,EAAE,WAAW;gBACxB,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,SAAS;gBACrC,OAAO,EAAE,WAAW;aACZ,CAAC;YACX,OAAO,YAAY,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC;QACD,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;YACzC,EAAE,CAAC,YAAY,CAAC;gBACd,IAAI,EAAE,iBAAiB;gBACvB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE;aACnD,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;IAEH,wEAAwE;IACxE,wEAAwE;IACxE,IAAI,UAA6C,CAAC;IAClD,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE,GAAG,IAAI,UAAU;QAAE,MAAM,UAAU,EAAE,CAAC;;QAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9F,YAAY,GAAG,kBAAkB,CAAC,eAAe,EAAE;QACjD,SAAS;QACT,cAAc;QACd,EAAE;QACF,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,aAAa,EAAE,MAAM;QACrB,KAAK;QACL,YAAY;QACZ,WAAW;QACX,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;QACzD,aAAa;QACb,gBAAgB;QAChB,WAAW;QACX,gBAAgB;QAChB,WAAW;QACX,UAAU;QACV,kBAAkB;QAClB,aAAa;QACb,MAAM;QACN,QAAQ,EAAE,WAAW;QACrB,cAAc;QACd,0BAA0B;QAC1B,kBAAkB;KACnB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAExE,IAAI,CAAC;QACH,MAAM,wBAAwB,GAAG,MAAM,+BAA+B,CAAC;YACrE,gBAAgB;YAChB,WAAW;YACX,UAAU;YACV,EAAE;SACH,CAAC,CAAC;QACH,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,iBAAiB,wBAAwB,CAAC,MAAM,kBAAkB,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAEzB,+DAA+D;IAC/D,CAAC;QACC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,CAClE,CAAC;QACF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,kDAAkD;YAClD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,CACtE,CAAC;YACF,IAAI,MAAM;gBAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAExC,SAAS,CAAC,MAAM,CAAC;gBACf,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,WAAW,EAAE,oBAAoB;gBACvC,QAAQ,EAAE,cAAc;gBACxB,KAAK,EAAE;oBACL,aAAa,EAAE;wBACb,OAAO,EAAE,YAAY;wBACrB,WAAW,EACT,uGAAuG;qBAC1G;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,CAAC;QACC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CACnC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,iBAAiB,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAClE,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,SAAS,CAAC,MAAM,CAAC;gBACf,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,YAAY,EAAE,qBAAqB;gBACzC,QAAQ,EAAE,iBAAiB;gBAC3B,KAAK,EAAE;oBACL,aAAa,EAAE;wBACb,OAAO,EAAE,YAAY;wBACrB,WAAW,EACT,kEAAkE;4BAClE,0DAA0D;4BAC1D,+DAA+D;qBAClE;iBACF;gBACD,OAAO,EAAE,KAAK,EAAE,gDAAgD;aACjE,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,yCAAyC,qBAAqB,oBAAoB,WAAW,CAAC,IAAI,oBAAoB,CAAC,CAAC;IAEpI,wDAAwD;IACxD,4DAA4D;IAC5D,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAC3D,IAAI,cAAc;QAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACtD,sEAAsE;IACtE,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IAC5E,IAAI,CAAC;QAAC,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;QAAC,IAAI,CAAC,CAAC,WAAW,EAAE;YAAE,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAExK,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC;QACtC,MAAM;QACN,YAAY;QACZ,cAAc,EAAE,eAAe;QAC/B,aAAa,EAAE,OAAO,CAAC,GAAG,EAAE;QAC5B,sBAAsB,EAAE,YAAY;KACrC,CAAC,CAAC;IACH,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC;IAElC,mFAAmF;IACnF,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAC1C,MAAM,aAAa,GAA4E;QAC7F,kDAAkD;QAClD,EAAE,IAAI,EAAE,IAAI,CAAC,OAAQ,MAAM,CAAC,IAAY,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAE,MAAM,CAAC,IAAY,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE;QACpK,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QACzC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE;QACrE,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE;KACxE,CAAC;IACF,4CAA4C;IAC5C,MAAM,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC9E,IAAI,CAAC;QAAC,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,WAAW,EAAE;YAAE,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACrM,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAC1D,IAAI,iBAAiB;QAAE,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1F,MAAM,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,WAAW,aAAa,CAAC,IAAI,gBAAgB,aAAa,CAAC,WAAW,EAAE,CAAC,MAAM,WAAW,CAAC,CAAC;IAExG,6BAA6B;IAC7B,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEtE,2EAA2E;IAC3E,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,CAAC;QACtD,MAAM;QACN,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC;QAChE,WAAW;QACX,cAAc;QACd,YAAY;QACZ,aAAa;QACb,gBAAgB;QAChB,aAAa,EAAE,MAAM;QACrB,YAAY;QACZ,gBAAgB;QAChB,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC;QACxE,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO;KACpE,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE;QACxC,EAAE;QACF,MAAM;QACN,cAAc;QACd,WAAW;QACX,KAAK;QACL,eAAe;QACf,YAAY;QACZ,cAAc;QACd,WAAW;QACX,qBAAqB;QACrB,eAAe,EAAE,WAAW;QAC5B,EAAE;QACF,KAAK;QACL,SAAS;QACT,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE;QACxC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAC7B,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC5B,CAAC;QACD,aAAa,EAAE,MAAM;QACrB,cAAc;QACd,YAAY;QACZ,gBAAgB;QAChB,uBAAuB;QACvB,cAAc;QACd,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,aAAa;QACb,WAAW;QACX,WAAW;QACX,kBAAkB;QAClB,aAAa;QACb,gBAAgB;QAChB,cAAc;QACd,0BAA0B;QAC1B,UAAU;QACV,kBAAkB;QAClB,aAAa;QACb,aAAa;QACb,aAAa;QACb,qBAAqB;QACrB,QAAQ,EAAE,WAAW;KACtB,CAAC,CAAC;IAEH,yBAAyB;IACzB,EAAE,CAAC,eAAe,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACvD,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;gBAChE,OAA4D,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,yBAAyB,UAAU,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;IACF,EAAE,CAAC,gBAAgB,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACvD,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;gBACjE,OAA4D,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,UAAU,IAAI,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC;IACF,EAAE,CAAC,gBAAgB,GAAG,CAAC,UAAU,EAAE,EAAE;QACnC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACvD,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,iBAAiB,IAAI,OAAO,EAAE,CAAC;gBAC1E,OAA4D,CAAC,KAAK,EAAE,CAAC;gBACtE,OAAQ,OAA4D,CAAC,eAAe,EAAE,CAAC;YACzF,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,mCAAmC;IACnC,EAAE,CAAC,gBAAgB,GAAG,CAAC,SAAS,EAAE,EAAE;QAClC,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC,CAAC;IACF,EAAE,CAAC,eAAe,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE;QACzC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC,CAAC;IAEF,uDAAuD;IACvD,EAAE,CAAC,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;QACjD,IAAI,CAAC;YACH,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACxC,IAAI,GAAG,KAAK,kBAAkB,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;gBAC5D,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC5C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;oBACzB,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAMrE,CAAC;oBACrB,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE;wBACtC,cAAc,EAAE;4BACd,KAAK,EAAE,GAAG,KAAK,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,IAAI;4BAClE,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,IAAI;4BAC5B,MAAM,EAAE,GAAG,KAAK,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI;4BACrE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI;4BACpC,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI;yBACnC;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,0DAA0D;YAC1D,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE;gBACnC,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;aACxB,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,QAAQ,GAAG,UAAU,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACnG,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;gBAC9B,MAAM,oBAAoB,GAAG,MAE5B,CAAC;gBACF,KAAK,oBAAoB,CAAC,uBAAuB,EAAE,CAAC,GAAG,CAAC,CAAC;YAC3D,CAAC;iBAAM,IAAI,GAAG,KAAK,wBAAwB,EAAE,CAAC;gBAC5C,MAAM,0BAA0B,GAAG,MAElC,CAAC;gBACF,KAAK,0BAA0B,CAAC,yBAAyB,EAAE,CAAC,GAAG,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC;IAEF,uEAAuE;IACvE,gEAAgE;IAChE,qEAAqE;IACrE,oEAAoE;IACpE,oDAAoD;IACpD,EAAE;IACF,mEAAmE;IACnE,qEAAqE;IACrE,0CAA0C;IAC1C,oEAAoE;IACpE,oEAAoE;IACpE,gEAAgE;IAChE,yDAAyD;IACzD,EAAE,CAAC,iBAAiB,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;QACvC,IAAI,CAAC;YACH,MAAM,QAAQ,GAA4B,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEhE,8DAA8D;YAC9D,2CAA2C;YAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;gBACzB,QAAQ,CAAC,UAAU,GAAG;oBACpB,EAAE,EAAE,OAAO,CAAC,WAAW;oBACvB,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC;iBAC/C,CAAC;YACJ,CAAC;YAED,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE;gBACxB,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,QAAQ;aAClB,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,+BAA+B,QAAQ,aAAa,GAAG,SAAS,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;YAE7H,uEAAuE;YACvE,6DAA6D;YAC7D,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,aAAa,EAAE,CAAC;gBAClB,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE;oBACxB,IAAI,EAAE,iBAAwB;oBAC9B,SAAS,EAAE,GAAG;oBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE;iBACpC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,QAAQ,GAAG,EAAE,GAAG,CAAC,CAAC;QACzE,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,MAG5B,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,KAAK,oBAAoB,CAAC,uBAAuB,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,oBAAoB,CAAC,yBAAyB,EAAE,EAAE,CAAC;IAExD,8EAA8E;IAC9E,iFAAiF;IACjF,2EAA2E;IAC3E,EAAE,CAAC,kBAAkB,GAAG,CAAC,YAAY,EAAE,gBAAgB,EAAE,EAAE;QACzD,OAAO,CAAC,GAAG,CAAC,gDAAgD,YAAY,EAAE,CAAC,CAAC;IAC9E,CAAC,CAAC;IACF,EAAE,CAAC,iBAAiB,GAAG,CAAC,SAAS,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,OAAO,EAAE,CAAC;YACZ,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC;IAEF,wEAAwE;IACxE,0EAA0E;IAC1E,oDAAoD;IACpD,EAAE,CAAC,kBAAkB,GAAG,CAAC,IAAI,EAAE,EAAE;QAC/B,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,QAAQ;gBAAE,SAAS,CAAC,kBAAkB;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC5B,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;gBACpC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnD,EAAE,CAAC,YAAY,CAAC;oBACd,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE,EAAE;oBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE;iBAClD,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,CAAC,IAAI,cAAc,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;gBACxF,uDAAuD;gBACvD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACpB,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;wBACrD,IAAI,CAAC,UAAU;4BAAE,OAAO;wBACxB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBACrD,IAAI,CAAC,GAAG;4BAAE,OAAO;wBACjB,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;wBAChD,EAAE,CAAC,YAAY,CAAC;4BACd,IAAI,EAAE,cAAc;4BACpB,SAAS,EAAE,EAAE;4BACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BACnC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;yBAClE,CAAC,CAAC;wBACH,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,CAAC,IAAI,MAAM,GAAG,EAAE,CAAC,CAAC;oBACzE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,uEAAuE;IACvE,MAAM,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,2BAA2B;IAEpD,8DAA8D;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,QAAQ,KAAK,qBAAqB,EAAE,CAAC;YACvC,qBAAqB,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC;QACD,0EAA0E;IAC5E,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,oCAAoC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,cAAc,CAAC,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,qCAAqC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAElG,uEAAuE;IACvE,MAAM,gBAAgB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;IACtD,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9C,MAAM,SAAS,GAAG,eAAe;aAC9B,YAAY,EAAE;aACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAuD,CAAC;QACvH,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;gBACpC,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,CAAC,EAAE,UAAU,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtG,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACjE,OAAO,CAAC,KAAK,CAAC,gCAAgC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAC/D,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,qBAAqB;IACjC,IAAI,sBAAsB,CAAC,KAAK;QAAE,sBAAsB,CAAC,KAAK,EAAE,CAAC;IAEjE,MAAM,eAAe,GAAG,uBAAuB,CAAC,sBAAsB,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACxF,MAAM,wBAAwB,GAAG,uBAAuB,CAAC,+BAA+B,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1G,MAAM,0BAA0B,GAAG,uBAAuB,CAAC,iCAAiC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;IACzG,MAAM,sBAAsB,GAAG,kBAAkB,CAAC;IAClD,IAAI,oBAAoB,GAAG,KAAK,CAAC;IACjC,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;QACtC,IAAI,oBAAoB;YAAE,OAAO;QACjC,oBAAoB,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,eAAe;iBAC7B,YAAY,EAAE;iBACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAqB,CAAC;YACpF,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;YAC3C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC3C,IAAI,QAAQ,EAAE,aAAa;oBAAE,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC5E,CAAC;YACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,OAAO,CAAC,MAAM,GAAG,eAAe;oBAAE,SAAS;gBAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,CAAC,EAAE,UAAU,WAAW,IAAI,CAAC,CAAC;gBACpF,IAAI,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;oBAClD,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;oBAClE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAC3C,OAAO,CAAC,KAAK,CAAC,uCAAuC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CACzE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAC5E,OAAO,CAAC,KAAK,CAAC,+BAA+B,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CACjE,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,uBAAuB,CAAC;gBAClE,QAAQ,EAAE,wBAAwB;gBAClC,YAAY,EAAE,gBAAgB;aAC/B,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,MAAM,gDAAgD,CAAC,CAAC;YACnG,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;gBAAS,CAAC;YACT,oBAAoB,GAAG,KAAK,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC;IACF,MAAM,qBAAqB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7C,KAAK,oBAAoB,EAAE,CAAC;IAC9B,CAAC,EAAE,0BAA0B,CAAC,CAAC;IAC/B,IAAI,qBAAqB,CAAC,KAAK;QAAE,qBAAqB,CAAC,KAAK,EAAE,CAAC;IAE/D,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,IAAI,YAAY;YAAE,OAAO;QACzB,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAChC,wDAAwD;QACxD,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;YACjC,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,EAAE,KAAK,CAAC,CAAC;QACV,kDAAkD;QAClD,IAAI,UAAU,CAAC,KAAK;YAAE,UAAU,CAAC,KAAK,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACrC,MAAM,aAAa,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1C,aAAa,CAAC,qBAAqB,CAAC,CAAC;YACrC,aAAa,CAAC,sBAAsB,CAAC,CAAC;YACtC,SAAS,CAAC,IAAI,EAAE,CAAC;YACjB,gBAAgB,CAAC,IAAI,EAAE,CAAC;YACxB,EAAE,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,0DAA0D;IAC1D,UAAU,GAAG,QAAQ,CAAC;IAEtB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAE7C,kFAAkF;IAClF,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;QACtC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;QAC1C,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,yDAAyD;AACzD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;IAC/B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -10,7 +10,9 @@ import type { ThreadService } from "../services/threads.js";
10
10
  import type { UserService } from "../services/users.js";
11
11
  import type { ToolContext, ToolResult } from "../tools/contracts.js";
12
12
  import type { ToolRegistry } from "../tools/registry.js";
13
+ import { SandboxManager } from "../security/sandbox-manager.js";
13
14
  import type { CliProviderAdapter, ProviderInfo, ProviderAuthStatus, ProviderLoginResult, ProviderLogoutResult, ProviderModelInfo, ProviderSession, ProviderEvent, StartSessionOptions } from "./contracts.js";
15
+ export declare function prepareJaitThreadSandboxToolInput(toolName: string, input: unknown): unknown;
14
16
  export interface JaitProviderDeps {
15
17
  config: AppConfig;
16
18
  threadService: ThreadService;
@@ -20,6 +22,7 @@ export interface JaitProviderDeps {
20
22
  dryRun?: boolean;
21
23
  consentTimeoutMs?: number;
22
24
  }) => Promise<ToolResult>;
25
+ sandboxManager?: Pick<SandboxManager, "startCommandSandbox" | "stopContainer">;
23
26
  }
24
27
  export declare class JaitProvider implements CliProviderAdapter {
25
28
  private readonly deps;
@@ -27,6 +30,7 @@ export declare class JaitProvider implements CliProviderAdapter {
27
30
  readonly info: ProviderInfo;
28
31
  private emitter;
29
32
  private sessions;
33
+ private sandboxManager;
30
34
  constructor(deps: JaitProviderDeps);
31
35
  checkAvailability(): Promise<boolean>;
32
36
  listModels(): Promise<ProviderModelInfo[]>;
@@ -42,6 +46,7 @@ export declare class JaitProvider implements CliProviderAdapter {
42
46
  private emit;
43
47
  private buildLlmConfig;
44
48
  private executeTool;
49
+ private ensureThreadSandbox;
45
50
  private forwardContextRound;
46
51
  private forwardAgentLoopEvent;
47
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"jait-provider.d.ts","sourceRoot":"","sources":["../../src/providers/jait-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AASxD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAqBxB,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,CACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,KACtD,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1B;AAED,qBAAa,YAAa,YAAW,kBAAkB;IAczC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAbjC,QAAQ,CAAC,EAAE,EAAG,MAAM,CAAU;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAOzB;IAEF,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,QAAQ,CAAuC;gBAE1B,IAAI,EAAE,gBAAgB;IAE7C,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAKrC,UAAU,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAI1C,aAAa,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAQ5C,UAAU,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI1C,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIvC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;IA6BpE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkF3D,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5F,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnD,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,MAAM,IAAI;IAK5D,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,cAAc;YAUR,WAAW;IAkCzB,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,qBAAqB;CA6B9B;AAgBD,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,EAAE,iBAAiB,EAiBhD,CAAC"}
1
+ {"version":3,"file":"jait-provider.d.ts","sourceRoot":"","sources":["../../src/providers/jait-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AASxD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AASxB,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAU3F;AAiCD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,CACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,KACtD,OAAO,CAAC,UAAU,CAAC,CAAC;IACzB,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,qBAAqB,GAAG,eAAe,CAAC,CAAC;CAChF;AAED,qBAAa,YAAa,YAAW,kBAAkB;IAezC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAdjC,QAAQ,CAAC,EAAE,EAAG,MAAM,CAAU;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAOzB;IAEF,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,cAAc,CAAgE;gBAEzD,IAAI,EAAE,gBAAgB;IAI7C,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAKrC,UAAU,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAI1C,aAAa,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAQ5C,UAAU,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI1C,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIvC,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;IA6BpE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkF3D,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5F,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBnD,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,MAAM,IAAI;IAK5D,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,cAAc;YAUR,WAAW;YAgDX,mBAAmB;IAkBjC,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,qBAAqB;CA6B9B;AAgBD,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,EAAE,iBAAiB,EAiBhD,CAAC"}
@@ -9,7 +9,34 @@ import { EventEmitter } from "node:events";
9
9
  import { uuidv7 } from "../db/uuidv7.js";
10
10
  import { resolveJaitLlmConfig } from "../services/jait-llm.js";
11
11
  import { buildSystemPrompt, buildTieredToolSchemas, runAgentLoop, } from "../tools/index.js";
12
+ import { SandboxManager } from "../security/sandbox-manager.js";
12
13
  import { NO_PROVIDER_AUTH, unsupportedLogin, unsupportedLogout } from "./provider-auth.js";
14
+ const JAIT_SANDBOXED_COMMAND_TOOLS = new Set(["execute", "terminal.run", "jait.terminal"]);
15
+ function shouldUseJaitThreadSandbox(toolName) {
16
+ return JAIT_SANDBOXED_COMMAND_TOOLS.has(toolName);
17
+ }
18
+ export function prepareJaitThreadSandboxToolInput(toolName, input) {
19
+ if (!shouldUseJaitThreadSandbox(toolName))
20
+ return input;
21
+ if (!input || typeof input !== "object" || Array.isArray(input)) {
22
+ return input;
23
+ }
24
+ return {
25
+ ...input,
26
+ sandbox: true,
27
+ sandboxMountMode: "read-write",
28
+ };
29
+ }
30
+ function buildJaitThreadSandboxPrompt() {
31
+ return [
32
+ "<jaitThreadSandbox>",
33
+ "Jait native provider threads follow a Sandcastle-style local sandbox flow.",
34
+ "File operations target the thread working directory, which may be a managed git worktree.",
35
+ "Shell-command tools (`execute`, `terminal.run`, `jait.terminal`) are forced through a long-lived Jait Docker sandbox with the working directory mounted at /workspace.",
36
+ "Use relative paths or /workspace paths inside shell commands; host absolute workspace paths are remapped for shell commands.",
37
+ "</jaitThreadSandbox>",
38
+ ].join("\n");
39
+ }
13
40
  export class JaitProvider {
14
41
  deps;
15
42
  id = "jait";
@@ -23,8 +50,10 @@ export class JaitProvider {
23
50
  };
24
51
  emitter = new EventEmitter();
25
52
  sessions = new Map();
53
+ sandboxManager;
26
54
  constructor(deps) {
27
55
  this.deps = deps;
56
+ this.sandboxManager = deps.sandboxManager ?? new SandboxManager();
28
57
  }
29
58
  async checkAvailability() {
30
59
  this.info.available = true;
@@ -50,7 +79,7 @@ export class JaitProvider {
50
79
  const thread = this.deps.threadService.getById(options.threadId);
51
80
  const userId = thread?.userId ?? undefined;
52
81
  const llm = this.buildLlmConfig(userId, options.model);
53
- const prompt = buildSystemPrompt("agent", { model: llm.openaiModel, baseUrl: llm.openaiBaseUrl }, { workspaceRoot: options.workingDirectory });
82
+ const prompt = buildSystemPrompt("agent", { model: llm.openaiModel, baseUrl: llm.openaiBaseUrl }, { workspaceRoot: options.workingDirectory }) + `\n\n${buildJaitThreadSandboxPrompt()}`;
54
83
  const session = {
55
84
  id: uuidv7(),
56
85
  providerId: "jait",
@@ -163,6 +192,12 @@ export class JaitProvider {
163
192
  if (state.currentTurn) {
164
193
  await state.currentTurn.catch(() => { });
165
194
  }
195
+ const containerName = state.sandboxStart
196
+ ? await state.sandboxStart.catch(() => undefined)
197
+ : state.sandboxContainerName;
198
+ if (containerName) {
199
+ await this.sandboxManager.stopContainer(containerName).catch(() => { });
200
+ }
166
201
  this.emit({ type: "session.completed", sessionId });
167
202
  }
168
203
  this.sessions.delete(sessionId);
@@ -187,6 +222,20 @@ export class JaitProvider {
187
222
  if (!this.deps.toolRegistry) {
188
223
  return { ok: false, message: "Tool registry not available" };
189
224
  }
225
+ const state = this.sessions.get(sessionId);
226
+ const toolInput = prepareJaitThreadSandboxToolInput(toolName, input);
227
+ let sandboxContainerName;
228
+ if (state && shouldUseJaitThreadSandbox(toolName)) {
229
+ try {
230
+ sandboxContainerName = await this.ensureThreadSandbox(state);
231
+ }
232
+ catch (error) {
233
+ return {
234
+ ok: false,
235
+ message: error instanceof Error ? error.message : String(error),
236
+ };
237
+ }
238
+ }
190
239
  const context = {
191
240
  sessionId,
192
241
  actionId: uuidv7(),
@@ -197,18 +246,37 @@ export class JaitProvider {
197
246
  providerId: auth?.providerId,
198
247
  model: auth?.model,
199
248
  runtimeMode: auth?.runtimeMode,
249
+ sandboxContainerName,
200
250
  onOutputChunk,
201
251
  signal,
202
252
  };
203
253
  try {
204
254
  return this.deps.toolExecutor
205
- ? await this.deps.toolExecutor(toolName, input, context)
206
- : await this.deps.toolRegistry.execute(toolName, input, context);
255
+ ? await this.deps.toolExecutor(toolName, toolInput, context)
256
+ : await this.deps.toolRegistry.execute(toolName, toolInput, context);
207
257
  }
208
258
  catch (error) {
209
259
  return { ok: false, message: error instanceof Error ? error.message : String(error) };
210
260
  }
211
261
  }
262
+ async ensureThreadSandbox(state) {
263
+ if (state.sandboxContainerName)
264
+ return state.sandboxContainerName;
265
+ if (!state.sandboxStart) {
266
+ state.sandboxStart = this.sandboxManager.startCommandSandbox({
267
+ workspaceRoot: state.workingDirectory,
268
+ mountMode: "read-write",
269
+ networkEnabled: true,
270
+ }).then((result) => {
271
+ state.sandboxContainerName = result.containerName;
272
+ return result.containerName;
273
+ }).catch((error) => {
274
+ state.sandboxStart = undefined;
275
+ throw error;
276
+ });
277
+ }
278
+ return state.sandboxStart;
279
+ }
212
280
  forwardContextRound(sessionId, state, round) {
213
281
  // Accumulate rounds so we can emit the full flow each time
214
282
  if (!state.contextRounds)
@@ -1 +1 @@
1
- {"version":3,"file":"jait-provider.js","sourceRoot":"","sources":["../../src/providers/jait-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jait-provider.js","sourceRoot":"","sources":["../../src/providers/jait-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,GAIb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAYhE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3F,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;AAE3F,SAAS,0BAA0B,CAAC,QAAgB;IAClD,OAAO,4BAA4B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,QAAgB,EAAE,KAAc;IAChF,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO;QACL,GAAI,KAAiC;QACrC,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,YAAY;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO;QACL,qBAAqB;QACrB,4EAA4E;QAC5E,2FAA2F;QAC3F,wKAAwK;QACxK,8HAA8H;QAC9H,sBAAsB;KACvB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAoCD,MAAM,OAAO,YAAY;IAeM;IAdpB,EAAE,GAAG,MAAe,CAAC;IACrB,IAAI,GAAiB;QAC5B,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,6EAA6E;QAC1F,SAAS,EAAE,IAAI,EAAE,gDAAgD;QACjE,KAAK,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC;QACpC,IAAI,EAAE,gBAAgB;KACvB,CAAC;IAEM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;IAC7B,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC/C,cAAc,CAAgE;IAEtF,YAA6B,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,cAAc,EAAE,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,OAAO;YACL,GAAG,gBAAgB;YACnB,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,yEAAyE;SAClF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,yEAAyE,CAAC,CAAC;IAC9G,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,yEAAyE,CAAC,CAAC;IAC/G,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAA4B;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,SAAS,CAAC;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,iBAAiB,CAC9B,OAAO,EACP,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,aAAa,EAAE,EACtD,EAAE,aAAa,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAC5C,GAAG,OAAO,4BAA4B,EAAE,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAoB;YAC/B,EAAE,EAAE,MAAM,EAAE;YACZ,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE;YAC5B,OAAO;YACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM;YACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;SAC/C,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,OAAe;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;QACpC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC/B,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;QACzB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;QAE/C,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACjG,MAAM,aAAa,GAAG,YAAY,EAAE,aAAa,EAAE,MAAM;oBACvD,CAAC,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;oBACrC,CAAC,CAAC,SAAS,CAAC;gBACd,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY;oBACxC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC;oBAC/D,CAAC,CAAC,EAAE,CAAC;gBACP,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3D,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B;oBACE,GAAG;oBACH,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,WAAW;oBACX,QAAQ,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;oBAChC,SAAS;oBACT,IAAI,EAAE;wBACJ,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,OAAO,EAAE,YAAY,EAAE,OAAO,IAAI,EAAE;wBACpC,UAAU,EAAE,MAAM;wBAClB,KAAK,EAAE,GAAG,CAAC,WAAW;wBACtB,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;qBACvC;oBACD,KAAK;oBACL,SAAS,EAAE,EAAE;oBACb,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;oBACpC,aAAa;oBACb,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,KAAK,CAAC;oBAChE,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC;iBACxE,EACD,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CACpD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAC9F,CAAC;gBAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxF,CAAC;gBAED,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;gBACtD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpE,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;gBACtD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;oBACzB,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;gBAC1B,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;oBAAS,CAAC;gBACT,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC7C,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;oBAChC,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;gBACvC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QAChC,MAAM,WAAW,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;QAChC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,UAAkB,EAAE,UAAkB,EAAE,SAAkB;QAChF,qDAAqD;IACvD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;YAChC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;YACnC,KAAK,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACtB,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY;gBACtC,CAAC,CAAC,MAAM,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;gBACjD,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;YAC/B,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,CAAC,OAAuC;QAC7C,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAEO,IAAI,CAAC,KAAoB;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAEO,cAAc,CAAC,MAAe,EAAE,cAAuB;QAC7D,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,OAAO,oBAAoB,CAAC;YAC1B,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;YACxB,OAAO,EAAE,YAAY,EAAE,OAAO;YAC9B,cAAc;YACd,WAAW,EAAE,YAAY,EAAE,WAAW;SACvC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,QAAgB,EAChB,KAAc,EACd,SAAiB,EACjB,IAAkI,EAClI,aAAoD,EACpD,MAA+B,EAC/B,aAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;QAC/D,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,iCAAiC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrE,IAAI,oBAAwC,CAAC;QAC7C,IAAI,KAAK,IAAI,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC;gBACH,oBAAoB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAChE,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAgB;YAC3B,SAAS;YACT,QAAQ,EAAE,MAAM,EAAE;YAClB,aAAa;YACb,WAAW,EAAE,OAAO;YACpB,MAAM,EAAE,IAAI,EAAE,MAAM;YACpB,OAAO,EAAE,IAAI,EAAE,OAAO;YACtB,UAAU,EAAE,IAAI,EAAE,UAAU;YAC5B,KAAK,EAAE,IAAI,EAAE,KAAK;YAClB,WAAW,EAAE,IAAI,EAAE,WAAW;YAC9B,oBAAoB;YACpB,aAAa;YACb,MAAM;SACP,CAAC;QACF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY;gBAC3B,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;gBAC5D,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxF,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,KAAuB;QACvD,IAAI,KAAK,CAAC,oBAAoB;YAAE,OAAO,KAAK,CAAC,oBAAoB,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC;gBAC3D,aAAa,EAAE,KAAK,CAAC,gBAAgB;gBACrC,SAAS,EAAE,YAAY;gBACvB,cAAc,EAAE,IAAI;aACrB,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjB,KAAK,CAAC,oBAAoB,GAAG,MAAM,CAAC,aAAa,CAAC;gBAClD,OAAO,MAAM,CAAC,aAAa,CAAC;YAC9B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjB,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;IAEO,mBAAmB,CAAC,SAAiB,EAAE,KAAuB,EAAE,KAA0B;QAChG,2DAA2D;QAC3D,IAAI,CAAC,KAAK,CAAC,aAAa;YAAE,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;QACnD,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,UAAU;YAChB,SAAS;YACT,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,SAAS,KAAK,CAAC,KAAK,UAAU;YACvC,OAAO,EAAE;gBACP,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,GAAG,CAAC,WAAW;gBACtB,MAAM,EAAE,KAAK,CAAC,aAAa;aAC5B;SACF,CAAC,CAAC;IACL,CAAC;IAEO,qBAAqB,CAAC,SAAiB,EAAE,KAAqB;QACpE,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,OAAO;gBACV,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChE,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxG,MAAM;YACR,KAAK,aAAa;gBAChB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC7F,MAAM;YACR,KAAK,aAAa;gBAChB,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,aAAa;oBACnB,SAAS;oBACT,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAClF,MAAM;YACR;gBACE,MAAM;QACV,CAAC;IACH,CAAC;CACF;AAED,MAAM,WAAW,GAAwB;IACvC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE,SAAS,EAAE,IAAI,EAAE;IACpG,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,qBAAqB,EAAE;IAC9E,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,qBAAqB,EAAE;IACtE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE;IACzE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,yBAAyB,EAAE;IACpF,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAClE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE;IAC3D,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE;IACjE,EAAE,EAAE,EAAE,4BAA4B,EAAE,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,+BAA+B,EAAE;IAC7G,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAC9E,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,0BAA0B,EAAE;CAC1F,CAAC;AAEF,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAwB;IACpD,EAAE,EAAE,EAAE,oCAAoC,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,2BAA2B,EAAE;IAC/G,EAAE,EAAE,EAAE,6BAA6B,EAAE,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE;IACjG,EAAE,EAAE,EAAE,yBAAyB,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,sBAAsB,EAAE;IAC7F,EAAE,EAAE,EAAE,4BAA4B,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,qBAAqB,EAAE;IAClG,EAAE,EAAE,EAAE,+BAA+B,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAC/F,EAAE,EAAE,EAAE,iCAAiC,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,mBAAmB,EAAE;IACrG,EAAE,EAAE,EAAE,gCAAgC,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,kCAAkC,EAAE;IAC9G,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,mCAAmC,EAAE;IACrG,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,+BAA+B,EAAE;IAC/F,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,wCAAwC,EAAE;IAC5G,EAAE,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,+BAA+B,EAAE;IACjG,EAAE,EAAE,EAAE,6BAA6B,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,0BAA0B,EAAE;IACxG,EAAE,EAAE,EAAE,0BAA0B,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,6BAA6B,EAAE;IACrG,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,yBAAyB,EAAE;IAC1F,EAAE,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,oBAAoB,EAAE;IAChG,EAAE,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,uBAAuB,EAAE;CAC3F,CAAC"}
@@ -15,6 +15,23 @@ export interface SandboxRunResult {
15
15
  timedOut: boolean;
16
16
  containerName: string;
17
17
  }
18
+ export interface SandboxSessionOptions {
19
+ workspaceRoot: string;
20
+ mountMode?: SandboxMountMode;
21
+ networkEnabled?: boolean;
22
+ memoryLimitMb?: number;
23
+ cpuLimit?: string;
24
+ }
25
+ export interface SandboxSessionResult {
26
+ containerName: string;
27
+ workspaceRoot: string;
28
+ sandboxWorkspaceRoot: string;
29
+ }
30
+ export interface SandboxExecOptions {
31
+ containerName: string;
32
+ command: string;
33
+ timeoutMs: number;
34
+ }
18
35
  export interface SandboxBrowserOptions {
19
36
  workspaceRoot: string;
20
37
  novncPort?: number;
@@ -32,6 +49,10 @@ export interface SandboxBrowserResult {
32
49
  novncPort: number;
33
50
  cdpUrl?: string;
34
51
  }
52
+ export interface BrowserSandboxCleanupOptions {
53
+ maxAgeMs?: number;
54
+ excludeNames?: Iterable<string>;
55
+ }
35
56
  interface ProcessResult {
36
57
  output: string;
37
58
  exitCode: number | null;
@@ -41,8 +62,11 @@ export declare class SandboxManager {
41
62
  private readonly runProcess;
42
63
  constructor(runProcess?: (cmd: string[], timeoutMs: number) => Promise<ProcessResult>);
43
64
  runCommand(options: SandboxRunOptions): Promise<SandboxRunResult>;
65
+ startCommandSandbox(options: SandboxSessionOptions): Promise<SandboxSessionResult>;
66
+ execInContainer(options: SandboxExecOptions): Promise<SandboxRunResult>;
44
67
  startBrowserSandbox(options: SandboxBrowserOptions): Promise<SandboxBrowserResult>;
45
68
  stopContainer(containerName: string): Promise<void>;
69
+ cleanupBrowserSandboxes(options?: BrowserSandboxCleanupOptions): Promise<string[]>;
46
70
  private buildMountArgs;
47
71
  private ensureBrowserSandboxImage;
48
72
  private cleanupConflictingBrowserSandboxes;
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-manager.d.ts","sourceRoot":"","sources":["../../src/security/sandbox-manager.ts"],"names":[],"mappings":"AA4BA,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,CAAC;AAEnE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,aAAa;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,GAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,aAAa,CAAoB;IAGxG,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuCjE,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA8DlF,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD,OAAO,CAAC,cAAc;YAOR,yBAAyB;YAMzB,kCAAkC;CA6BjD;AA+LD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAiBxD"}
1
+ {"version":3,"file":"sandbox-manager.d.ts","sourceRoot":"","sources":["../../src/security/sandbox-manager.ts"],"names":[],"mappings":"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"}