@ai-support-agent/cli 0.1.21 → 0.1.22-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/dist/agent-runner.d.ts.map +1 -1
  2. package/dist/agent-runner.js +6 -3
  3. package/dist/agent-runner.js.map +1 -1
  4. package/dist/agent-transport.js +4 -4
  5. package/dist/agent-transport.js.map +1 -1
  6. package/dist/api-client.d.ts +3 -3
  7. package/dist/api-client.d.ts.map +1 -1
  8. package/dist/api-client.js.map +1 -1
  9. package/dist/auth-server.js +3 -3
  10. package/dist/auth-server.js.map +1 -1
  11. package/dist/auto-updater.d.ts.map +1 -1
  12. package/dist/auto-updater.js +1 -2
  13. package/dist/auto-updater.js.map +1 -1
  14. package/dist/browser/browser-local-server.d.ts.map +1 -1
  15. package/dist/browser/browser-local-server.js +4 -16
  16. package/dist/browser/browser-local-server.js.map +1 -1
  17. package/dist/browser/browser-script-executor.d.ts.map +1 -1
  18. package/dist/browser/browser-script-executor.js +7 -5
  19. package/dist/browser/browser-script-executor.js.map +1 -1
  20. package/dist/cli/log-rotate-command.d.ts +24 -1
  21. package/dist/cli/log-rotate-command.d.ts.map +1 -1
  22. package/dist/cli/log-rotate-command.js +7 -20
  23. package/dist/cli/log-rotate-command.js.map +1 -1
  24. package/dist/cli/service/darwin-service.d.ts.map +1 -1
  25. package/dist/cli/service/darwin-service.js +49 -106
  26. package/dist/cli/service/darwin-service.js.map +1 -1
  27. package/dist/cli/service/linux-service.d.ts.map +1 -1
  28. package/dist/cli/service/linux-service.js +50 -116
  29. package/dist/cli/service/linux-service.js.map +1 -1
  30. package/dist/cli/service/service-template-helpers.d.ts +35 -0
  31. package/dist/cli/service/service-template-helpers.d.ts.map +1 -0
  32. package/dist/cli/service/service-template-helpers.js +79 -0
  33. package/dist/cli/service/service-template-helpers.js.map +1 -0
  34. package/dist/cli/service/win32-service.d.ts.map +1 -1
  35. package/dist/cli/service/win32-service.js +9 -7
  36. package/dist/cli/service/win32-service.js.map +1 -1
  37. package/dist/cli/service-command.d.ts.map +1 -1
  38. package/dist/cli/service-command.js +6 -5
  39. package/dist/cli/service-command.js.map +1 -1
  40. package/dist/commands/chat-executor.js +2 -2
  41. package/dist/commands/chat-executor.js.map +1 -1
  42. package/dist/commands/claude-code-args.d.ts.map +1 -1
  43. package/dist/commands/claude-code-args.js +2 -1
  44. package/dist/commands/claude-code-args.js.map +1 -1
  45. package/dist/commands/claude-code-runner.d.ts.map +1 -1
  46. package/dist/commands/claude-code-runner.js +2 -1
  47. package/dist/commands/claude-code-runner.js.map +1 -1
  48. package/dist/commands/docker-commands.d.ts.map +1 -1
  49. package/dist/commands/docker-commands.js +2 -1
  50. package/dist/commands/docker-commands.js.map +1 -1
  51. package/dist/commands/e2e-test-executor.js +71 -57
  52. package/dist/commands/e2e-test-executor.js.map +1 -1
  53. package/dist/commands/file-transfer.d.ts.map +1 -1
  54. package/dist/commands/file-transfer.js +3 -2
  55. package/dist/commands/file-transfer.js.map +1 -1
  56. package/dist/commands/index.d.ts.map +1 -1
  57. package/dist/commands/index.js +138 -130
  58. package/dist/commands/index.js.map +1 -1
  59. package/dist/commands/shell-executor.js +1 -1
  60. package/dist/commands/shell-executor.js.map +1 -1
  61. package/dist/commands/stop-agent.d.ts.map +1 -1
  62. package/dist/commands/stop-agent.js +2 -1
  63. package/dist/commands/stop-agent.js.map +1 -1
  64. package/dist/config-watcher.d.ts.map +1 -1
  65. package/dist/config-watcher.js +3 -2
  66. package/dist/config-watcher.js.map +1 -1
  67. package/dist/constants.d.ts +17 -0
  68. package/dist/constants.d.ts.map +1 -1
  69. package/dist/constants.js +28 -4
  70. package/dist/constants.js.map +1 -1
  71. package/dist/docker/docker-runner.d.ts.map +1 -1
  72. package/dist/docker/docker-runner.js +6 -5
  73. package/dist/docker/docker-runner.js.map +1 -1
  74. package/dist/docker/docker-supervisor.d.ts.map +1 -1
  75. package/dist/docker/docker-supervisor.js +33 -27
  76. package/dist/docker/docker-supervisor.js.map +1 -1
  77. package/dist/docker/dockerfile-sync.d.ts.map +1 -1
  78. package/dist/docker/dockerfile-sync.js +2 -1
  79. package/dist/docker/dockerfile-sync.js.map +1 -1
  80. package/dist/docker/project-config.d.ts.map +1 -1
  81. package/dist/docker/project-config.js +2 -1
  82. package/dist/docker/project-config.js.map +1 -1
  83. package/dist/docker/version-manager.d.ts.map +1 -1
  84. package/dist/docker/version-manager.js +1 -2
  85. package/dist/docker/version-manager.js.map +1 -1
  86. package/dist/docker/volume-mount-builder.d.ts.map +1 -1
  87. package/dist/docker/volume-mount-builder.js +2 -1
  88. package/dist/docker/volume-mount-builder.js.map +1 -1
  89. package/dist/git-credential-setup.js +1 -1
  90. package/dist/git-credential-setup.js.map +1 -1
  91. package/dist/i18n.d.ts.map +1 -1
  92. package/dist/i18n.js +4 -3
  93. package/dist/i18n.js.map +1 -1
  94. package/dist/index.js +4 -4
  95. package/dist/index.js.map +1 -1
  96. package/dist/log-rotator.d.ts.map +1 -1
  97. package/dist/log-rotator.js +2 -1
  98. package/dist/log-rotator.js.map +1 -1
  99. package/dist/mcp/tools/browser/browser-session.d.ts +1 -2
  100. package/dist/mcp/tools/browser/browser-session.d.ts.map +1 -1
  101. package/dist/mcp/tools/browser/browser-session.js +4 -2
  102. package/dist/mcp/tools/browser/browser-session.js.map +1 -1
  103. package/dist/mcp/tools/browser/browser-types.d.ts +4 -0
  104. package/dist/mcp/tools/browser/browser-types.d.ts.map +1 -1
  105. package/dist/mcp/tools/browser/browser-types.js +7 -1
  106. package/dist/mcp/tools/browser/browser-types.js.map +1 -1
  107. package/dist/mcp/tools/browser/element-info.d.ts +3 -2
  108. package/dist/mcp/tools/browser/element-info.d.ts.map +1 -1
  109. package/dist/mcp/tools/browser/element-info.js +0 -2
  110. package/dist/mcp/tools/browser/element-info.js.map +1 -1
  111. package/dist/mcp/tools/browser/selector-utils.d.ts +3 -2
  112. package/dist/mcp/tools/browser/selector-utils.d.ts.map +1 -1
  113. package/dist/mcp/tools/browser/selector-utils.js +9 -10
  114. package/dist/mcp/tools/browser/selector-utils.js.map +1 -1
  115. package/dist/mcp/tools/browser.d.ts.map +1 -1
  116. package/dist/mcp/tools/browser.js +13 -11
  117. package/dist/mcp/tools/browser.js.map +1 -1
  118. package/dist/mcp/tools/e2e-test-step.js.map +1 -1
  119. package/dist/pending-result-store.js +1 -1
  120. package/dist/pending-result-store.js.map +1 -1
  121. package/dist/pid-manager.d.ts.map +1 -1
  122. package/dist/pid-manager.js +2 -1
  123. package/dist/pid-manager.js.map +1 -1
  124. package/dist/project-agent.d.ts +16 -0
  125. package/dist/project-agent.d.ts.map +1 -1
  126. package/dist/project-agent.js +92 -79
  127. package/dist/project-agent.js.map +1 -1
  128. package/dist/repo-sync.d.ts.map +1 -1
  129. package/dist/repo-sync.js +15 -9
  130. package/dist/repo-sync.js.map +1 -1
  131. package/dist/ssh-config-setup.js +3 -3
  132. package/dist/ssh-config-setup.js.map +1 -1
  133. package/dist/terminal/terminal-session.d.ts +9 -0
  134. package/dist/terminal/terminal-session.d.ts.map +1 -1
  135. package/dist/terminal/terminal-session.js +42 -3
  136. package/dist/terminal/terminal-session.js.map +1 -1
  137. package/dist/terminal/terminal-websocket.d.ts +7 -0
  138. package/dist/terminal/terminal-websocket.d.ts.map +1 -1
  139. package/dist/terminal/terminal-websocket.js +9 -3
  140. package/dist/terminal/terminal-websocket.js.map +1 -1
  141. package/dist/update-checker.d.ts.map +1 -1
  142. package/dist/update-checker.js +2 -4
  143. package/dist/update-checker.js.map +1 -1
  144. package/dist/utils/claude-config-validator.d.ts.map +1 -1
  145. package/dist/utils/claude-config-validator.js +2 -1
  146. package/dist/utils/claude-config-validator.js.map +1 -1
  147. package/dist/utils/claude-json-oauth-sync.d.ts.map +1 -1
  148. package/dist/utils/claude-json-oauth-sync.js +5 -6
  149. package/dist/utils/claude-json-oauth-sync.js.map +1 -1
  150. package/dist/utils/claude-settings.d.ts.map +1 -1
  151. package/dist/utils/claude-settings.js +3 -2
  152. package/dist/utils/claude-settings.js.map +1 -1
  153. package/dist/utils/path-utils.d.ts +32 -0
  154. package/dist/utils/path-utils.d.ts.map +1 -0
  155. package/dist/utils/path-utils.js +121 -0
  156. package/dist/utils/path-utils.js.map +1 -0
  157. package/dist/utils/version.d.ts.map +1 -1
  158. package/dist/utils/version.js +1 -0
  159. package/dist/utils/version.js.map +1 -1
  160. package/dist/utils.d.ts +8 -0
  161. package/dist/utils.d.ts.map +1 -1
  162. package/dist/utils.js +22 -0
  163. package/dist/utils.js.map +1 -1
  164. package/dist/vscode/vscode-server.js +2 -2
  165. package/dist/vscode/vscode-server.js.map +1 -1
  166. package/dist/vscode/vscode-tunnel-websocket.d.ts +9 -0
  167. package/dist/vscode/vscode-tunnel-websocket.d.ts.map +1 -1
  168. package/dist/vscode/vscode-tunnel-websocket.js +63 -38
  169. package/dist/vscode/vscode-tunnel-websocket.js.map +1 -1
  170. package/package.json +1 -1
@@ -48,22 +48,22 @@ const child_process_1 = require("child_process");
48
48
  const fs = __importStar(require("fs"));
49
49
  const os = __importStar(require("os"));
50
50
  const path = __importStar(require("path"));
51
+ const constants_1 = require("../../constants");
51
52
  const config_manager_1 = require("../../config-manager");
52
53
  const docker_utils_1 = require("../../docker/docker-utils");
53
54
  const i18n_1 = require("../../i18n");
54
55
  const logger_1 = require("../../logger");
56
+ const utils_1 = require("../../utils");
55
57
  const node_paths_1 = require("./node-paths");
56
58
  Object.defineProperty(exports, "getCliEntryPoint", { enumerable: true, get: function () { return node_paths_1.getCliEntryPoint; } });
57
59
  Object.defineProperty(exports, "getNodePath", { enumerable: true, get: function () { return node_paths_1.getNodePath; } });
58
60
  const wrapper_helpers_1 = require("./wrapper-helpers");
61
+ const service_template_helpers_1 = require("./service-template-helpers");
62
+ const path_utils_1 = require("../../utils/path-utils");
59
63
  const SERVICE_NAME = 'ai-support-agent.service';
60
64
  const SERVICE_PREFIX = 'ai-support-agent';
61
- function getSystemdUserDir() {
62
- return path.join(os.homedir(), '.config', 'systemd', 'user');
63
- }
64
- function getLogDir() {
65
- return path.join(os.homedir(), '.local', 'share', 'ai-support-agent', 'logs');
66
- }
65
+ const getSystemdUserDir = path_utils_1.getLinuxSystemdUserDir;
66
+ const getLogDir = path_utils_1.getLinuxLogDir;
67
67
  // ---------------------------------------------------------------------------
68
68
  // Per-project unit helpers
69
69
  // ---------------------------------------------------------------------------
@@ -165,26 +165,7 @@ function detectSystemSystemdUnits() {
165
165
  return [];
166
166
  }
167
167
  }
168
- /** Returns the host-side per-project config dir (mirrors what docker-runner uses) */
169
- function getProjectConfigHostDir(tenantCode, projectCode) {
170
- const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
171
- ? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
172
- : path.join(os.homedir(), '.ai-support-agent');
173
- return path.join(configDir, 'projects', tenantCode, projectCode, '.ai-support-agent');
174
- }
175
- /** Returns the services dir where wrapper scripts are stored */
176
- function getServicesDir() {
177
- const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
178
- ? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
179
- : path.join(os.homedir(), '.ai-support-agent');
180
- return path.join(configDir, 'services');
181
- }
182
- function getUpdateScriptPath() {
183
- const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
184
- ? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
185
- : path.join(os.homedir(), '.ai-support-agent');
186
- return path.join(configDir, 'update-and-restart.sh');
187
- }
168
+ // getProjectConfigHostDir, getServicesDir, and getUpdateScriptPath are imported from ../../utils/path-utils
188
169
  // ---------------------------------------------------------------------------
189
170
  // Legacy single-unit generation (kept for backward compatibility / tests)
190
171
  // ---------------------------------------------------------------------------
@@ -192,10 +173,10 @@ function generateServiceUnit(options) {
192
173
  const { nodePath, entryPoint, logDir, verbose, docker } = options;
193
174
  const execArgs = [nodePath, entryPoint, 'start'];
194
175
  if (!docker) {
195
- execArgs.push('--no-docker');
176
+ execArgs.push(constants_1.CLI_FLAG_NO_DOCKER);
196
177
  }
197
178
  if (verbose) {
198
- execArgs.push('--verbose');
179
+ execArgs.push(constants_1.CLI_FLAG_VERBOSE);
199
180
  }
200
181
  return `[Unit]
201
182
  Description=AI Support Agent
@@ -209,8 +190,8 @@ Restart=always
209
190
  RestartSec=10
210
191
  Environment=PATH=/usr/local/bin:/usr/bin:/bin
211
192
  Environment=HOME=${os.homedir()}
212
- StandardOutput=append:${path.join(logDir, 'agent.out.log')}
213
- StandardError=append:${path.join(logDir, 'agent.err.log')}
193
+ StandardOutput=append:${(0, path_utils_1.getAgentOutLog)(logDir)}
194
+ StandardError=append:${(0, path_utils_1.getAgentErrLog)(logDir)}
214
195
 
215
196
  [Install]
216
197
  WantedBy=default.target
@@ -233,8 +214,8 @@ function generateProjectServiceUnit(opts) {
233
214
  // systemd's open fd, and the rotated generation would grow without
234
215
  // bound). The wrapper.* files have no rotation but stay tiny because
235
216
  // only the bootstrap noise lands there.
236
- const escapedOutLog = systemdEscape(path.join(opts.logDir, 'wrapper.out.log'));
237
- const escapedErrLog = systemdEscape(path.join(opts.logDir, 'wrapper.err.log'));
217
+ const escapedOutLog = systemdEscape((0, path_utils_1.getWrapperOutLog)(opts.logDir));
218
+ const escapedErrLog = systemdEscape((0, path_utils_1.getWrapperErrLog)(opts.logDir));
238
219
  return `[Unit]
239
220
  Description=AI Support Agent (${opts.unitName})
240
221
  After=network-online.target
@@ -328,11 +309,23 @@ function generateWrapperScript(opts) {
328
309
  envLines.push(` -e CLAUDE_CODE_OAUTH_TOKEN=${(0, wrapper_helpers_1.shellQuote)(opts.claudeCodeOauthToken)} \\`);
329
310
  }
330
311
  const containerArgs = [
331
- 'ai-support-agent', 'start', '--no-docker',
312
+ 'ai-support-agent', 'start', constants_1.CLI_FLAG_NO_DOCKER,
332
313
  `--project ${qProjectArg}`,
333
314
  ];
334
315
  if (opts.verbose)
335
- containerArgs.push('--verbose');
316
+ containerArgs.push(constants_1.CLI_FLAG_VERBOSE);
317
+ const dockerRunBlock = (0, service_template_helpers_1.buildDockerRunWithLogRotate)({
318
+ buildDockerRun: (outputRedirect) => [
319
+ `docker run --rm -i --name ${qContainerName} \\`,
320
+ ` --user "\${_DOCKER_UID}:\${_DOCKER_GID}" \\`,
321
+ mountLines.join('\n'),
322
+ envLines.join('\n'),
323
+ ` "\$IMAGE_TAG" \\`,
324
+ ` ${containerArgs.join(' ')}${outputRedirect}`,
325
+ ].join('\n'),
326
+ logDir: opts.logDir,
327
+ supervisorLabel: 'systemd',
328
+ });
336
329
  return `#!/bin/bash
337
330
  set -uo pipefail
338
331
 
@@ -378,63 +371,7 @@ docker rm -f ${qContainerName} 2>/dev/null || true
378
371
  _DOCKER_UID=$(id -u)
379
372
  _DOCKER_GID=$(id -g)
380
373
 
381
- ${opts.logDir ? `\
382
- # Pipe stdout and stderr through SEPARATE \`ai-support-agent log-rotate\`
383
- # subprocesses so the active log files are bounded (default 5MB × 5
384
- # generations) AND each stream lands in its own file (agent.out.log /
385
- # agent.err.log) — matching the pre-rotation layout that operators tail.
386
- #
387
- # Both rotators are invoked with \`--no-tee\` so they DO NOT echo back to
388
- # stdout/stderr. The systemd unit's StandardOutput/Error is pointed at
389
- # separate wrapper.*.log files (NOT the agent.*.log paths owned by the
390
- # rotators), so we don't get a double-write race where systemd silently
391
- # keeps appending to a rotated generation.
392
- #
393
- # Process substitution \`> >(cmd)\` / \`2> >(cmd)\` is bash-only; the
394
- # shebang at line 1 (\`#!/bin/bash\`) guarantees it.
395
- # Stream stdout/stderr to background rotator subprocesses via named FIFOs
396
- # so we have EXPLICIT PIDs to wait on. Process substitution (\`> >(cmd)\`)
397
- # is simpler but its children are not in the job table on bash 3.2
398
- # (macOS's /bin/bash) — bare \`wait\` returns immediately, allowing the
399
- # service-stop signal to SIGKILL the rotator mid-flush and lose the last
400
- # few KB of logs. Background jobs started with \`&\` set \$! reliably on
401
- # every supported bash, so this layout is portable.
402
- _ROT_DIR=$(mktemp -d -t ai-support-agent-rot.XXXXXX)
403
- trap 'rm -rf "\$_ROT_DIR" 2>/dev/null || true' EXIT
404
- mkfifo "\$_ROT_DIR/out" "\$_ROT_DIR/err"
405
- ai-support-agent log-rotate --no-tee ${(0, wrapper_helpers_1.shellQuote)(`${opts.logDir}/agent.out.log`)} < "\$_ROT_DIR/out" &
406
- _ROT_OUT_PID=$!
407
- ai-support-agent log-rotate --no-tee ${(0, wrapper_helpers_1.shellQuote)(`${opts.logDir}/agent.err.log`)} < "\$_ROT_DIR/err" >&2 &
408
- _ROT_ERR_PID=$!
409
-
410
- docker run --rm -i --name ${qContainerName} \\
411
- --user "\${_DOCKER_UID}:\${_DOCKER_GID}" \\
412
- ${mountLines.join('\n')}
413
- ${envLines.join('\n')}
414
- "\$IMAGE_TAG" \\
415
- ${containerArgs.join(' ')} \\
416
- > "\$_ROT_DIR/out" 2> "\$_ROT_DIR/err"
417
-
418
- # Redirecting to a FIFO does not propagate the rotator's exit into \$?,
419
- # so EXIT_CODE is purely docker's exit status. The exit-42 update path is
420
- # preserved (the rotator can never mask it).
421
- EXIT_CODE=$?
422
-
423
- # Wait on the rotators explicitly so they drain their FIFO before the
424
- # wrapper exits (service supervisor will SIGKILL stragglers otherwise).
425
- # docker closed its write end on exit, so each rotator sees EOF on stdin
426
- # and exits naturally; the wait is bounded by pipe-buffer drain time.
427
- wait "\$_ROT_OUT_PID" "\$_ROT_ERR_PID" 2>/dev/null || true
428
- ` : `\
429
- docker run --rm -i --name ${qContainerName} \\
430
- --user "\${_DOCKER_UID}:\${_DOCKER_GID}" \\
431
- ${mountLines.join('\n')}
432
- ${envLines.join('\n')}
433
- "\$IMAGE_TAG" \\
434
- ${containerArgs.join(' ')}
435
-
436
- EXIT_CODE=$?
437
- `}
374
+ ${dockerRunBlock}
438
375
  if [ "$EXIT_CODE" -eq 42 ]; then
439
376
  exec ${qUpdateScriptPath}
440
377
  fi
@@ -444,13 +381,10 @@ exit "$EXIT_CODE"
444
381
  }
445
382
  /** Generate the update-and-restart.sh script for systemd */
446
383
  function generateUpdateScript() {
447
- const configDir = process.env.AI_SUPPORT_AGENT_CONFIG_DIR
448
- ? path.resolve(process.env.AI_SUPPORT_AGENT_CONFIG_DIR)
449
- : path.join(os.homedir(), '.ai-support-agent');
450
384
  // Quote interpolated paths so a HOME / config dir containing whitespace
451
385
  // or shell metacharacters doesn't word-split the generated script.
452
386
  const qSystemdDir = (0, wrapper_helpers_1.shellQuote)(getSystemdUserDir());
453
- const qVersionFile = (0, wrapper_helpers_1.shellQuote)(path.join(configDir, 'update-version.json'));
387
+ const qVersionFile = (0, wrapper_helpers_1.shellQuote)(path.join((0, config_manager_1.getConfigDir)(), 'update-version.json'));
454
388
  return `#!/bin/bash
455
389
  set -uo pipefail
456
390
  shopt -s nullglob
@@ -556,7 +490,7 @@ function writeProjectServiceFiles(project, options = {}) {
556
490
  (0, wrapper_helpers_1.assertProjectCodeIsSafe)(tenantCode);
557
491
  const projectKey = `${sanitize(tenantCode)}-${sanitize(projectCode)}`;
558
492
  const logDir = getLogDir();
559
- const projectLogDir = path.join(logDir, projectKey);
493
+ const projectLogDir = (0, path_utils_1.getProjectLogDir)(logDir, projectKey);
560
494
  if (!fs.existsSync(projectLogDir)) {
561
495
  fs.mkdirSync(projectLogDir, { recursive: true, mode: 0o700 });
562
496
  }
@@ -564,12 +498,12 @@ function writeProjectServiceFiles(project, options = {}) {
564
498
  if (!fs.existsSync(systemdDir)) {
565
499
  fs.mkdirSync(systemdDir, { recursive: true });
566
500
  }
567
- const servicesDir = getServicesDir();
568
- const projectServiceDir = path.join(servicesDir, projectKey);
501
+ const servicesDir = (0, path_utils_1.getServicesDir)();
502
+ const projectServiceDir = (0, path_utils_1.getProjectServiceDir)(servicesDir, projectKey);
569
503
  if (!fs.existsSync(projectServiceDir)) {
570
504
  fs.mkdirSync(projectServiceDir, { recursive: true, mode: 0o700 });
571
505
  }
572
- const projectConfigHostDir = getProjectConfigHostDir(tenantCode, projectCode);
506
+ const projectConfigHostDir = (0, path_utils_1.getProjectConfigHostDir)(tenantCode, projectCode);
573
507
  if (!fs.existsSync(projectConfigHostDir)) {
574
508
  fs.mkdirSync(projectConfigHostDir, { recursive: true, mode: 0o700 });
575
509
  }
@@ -582,8 +516,8 @@ function writeProjectServiceFiles(project, options = {}) {
582
516
  // either crash on start (empty/missing) or expose host secrets to the
583
517
  // container (blocked prefix).
584
518
  const validatedProjectDir = (0, wrapper_helpers_1.validateProjectDirForMount)(project.projectDir);
585
- const updateScriptPath = getUpdateScriptPath();
586
- const wrapperScriptPath = path.join(projectServiceDir, 'run.sh');
519
+ const updateScriptPath = (0, path_utils_1.getUpdateScriptPath)();
520
+ const wrapperScriptPath = (0, path_utils_1.getWrapperScriptPath)(projectServiceDir);
587
521
  const wrapperScript = generateWrapperScript({
588
522
  imageName: docker_utils_1.IMAGE_NAME,
589
523
  tenantCode,
@@ -613,7 +547,7 @@ function writeProjectServiceFiles(project, options = {}) {
613
547
  * updates take effect immediately.
614
548
  */
615
549
  function installAndStartProject(project, options = {}) {
616
- const updateScriptPath = getUpdateScriptPath();
550
+ const updateScriptPath = (0, path_utils_1.getUpdateScriptPath)();
617
551
  const updateScript = generateUpdateScript();
618
552
  writeFileEnsuringMode(updateScriptPath, updateScript, 0o700);
619
553
  writeProjectServiceFiles(project, options);
@@ -625,7 +559,7 @@ function installAndStartProject(project, options = {}) {
625
559
  (0, child_process_1.execSync)('systemctl --user daemon-reload', { stdio: 'pipe' });
626
560
  }
627
561
  catch (error) {
628
- const message = error instanceof Error ? error.message : String(error);
562
+ const message = (0, utils_1.getErrorMessage)(error);
629
563
  logger_1.logger.warn((0, i18n_1.t)('service.daemonReloadFailed', { message }));
630
564
  return;
631
565
  }
@@ -641,14 +575,14 @@ function installAndStartProject(project, options = {}) {
641
575
  (0, child_process_1.execSync)(`systemctl --user enable "${unitFile}"`, { stdio: 'pipe' });
642
576
  }
643
577
  catch (error) {
644
- const message = error instanceof Error ? error.message : String(error);
578
+ const message = (0, utils_1.getErrorMessage)(error);
645
579
  logger_1.logger.warn((0, i18n_1.t)('service.enableFailed', { unit: unitFile, message }));
646
580
  }
647
581
  try {
648
582
  (0, child_process_1.execSync)(`systemctl --user start "${unitFile}"`, { stdio: 'pipe' });
649
583
  }
650
584
  catch (error) {
651
- const message = error instanceof Error ? error.message : String(error);
585
+ const message = (0, utils_1.getErrorMessage)(error);
652
586
  logger_1.logger.warn((0, i18n_1.t)('service.loadWarning', { label: `${unitName}: ${message}` }));
653
587
  return;
654
588
  }
@@ -682,7 +616,7 @@ class LinuxServiceStrategy {
682
616
  if (!fs.existsSync(systemdDir)) {
683
617
  fs.mkdirSync(systemdDir, { recursive: true });
684
618
  }
685
- const updateScriptPath = getUpdateScriptPath();
619
+ const updateScriptPath = (0, path_utils_1.getUpdateScriptPath)();
686
620
  const updateScript = generateUpdateScript();
687
621
  writeFileEnsuringMode(updateScriptPath, updateScript, 0o700);
688
622
  // Detect sanitize() collisions where two distinct valid codes
@@ -762,7 +696,7 @@ class LinuxServiceStrategy {
762
696
  });
763
697
  }
764
698
  catch (error) {
765
- const message = error instanceof Error ? error.message : String(error);
699
+ const message = (0, utils_1.getErrorMessage)(error);
766
700
  logger_1.logger.error((0, i18n_1.t)('service.projectInstallFailed', { projectCode: project.projectCode, message }));
767
701
  failedCount += 1;
768
702
  }
@@ -793,7 +727,7 @@ class LinuxServiceStrategy {
793
727
  fs.unlinkSync(unitPath);
794
728
  }
795
729
  catch (error) {
796
- const message = error instanceof Error ? error.message : String(error);
730
+ const message = (0, utils_1.getErrorMessage)(error);
797
731
  logger_1.logger.warn((0, i18n_1.t)('service.orphanUnitRemoveFailed', { unit: orphanUnitFile, message }));
798
732
  }
799
733
  }
@@ -809,7 +743,7 @@ class LinuxServiceStrategy {
809
743
  (0, child_process_1.execSync)('systemctl --user daemon-reload', { stdio: 'pipe' });
810
744
  }
811
745
  catch (error) {
812
- const message = error instanceof Error ? error.message : String(error);
746
+ const message = (0, utils_1.getErrorMessage)(error);
813
747
  logger_1.logger.warn((0, i18n_1.t)('service.daemonReloadFailed', { message }));
814
748
  }
815
749
  for (const { projectCode, unitPath, unitFile } of writtenUnits) {
@@ -817,7 +751,7 @@ class LinuxServiceStrategy {
817
751
  (0, child_process_1.execSync)(`systemctl --user enable "${unitFile}"`, { stdio: 'pipe' });
818
752
  }
819
753
  catch (error) {
820
- const message = error instanceof Error ? error.message : String(error);
754
+ const message = (0, utils_1.getErrorMessage)(error);
821
755
  logger_1.logger.warn((0, i18n_1.t)('service.enableFailed', { unit: unitFile, message }));
822
756
  }
823
757
  logger_1.logger.success((0, i18n_1.t)('service.projectInstalled', { projectCode, path: unitPath }));
@@ -884,7 +818,7 @@ class LinuxServiceStrategy {
884
818
  (0, child_process_1.execSync)(`systemctl --user start "${unit}"`, { stdio: 'pipe' });
885
819
  }
886
820
  catch (error) {
887
- const message = error instanceof Error ? error.message : String(error);
821
+ const message = (0, utils_1.getErrorMessage)(error);
888
822
  // Include unit name so operators can identify the failing project
889
823
  // when start runs over N units.
890
824
  logger_1.logger.error((0, i18n_1.t)('service.unitStartFailed', { unit, message }));
@@ -908,7 +842,7 @@ class LinuxServiceStrategy {
908
842
  (0, child_process_1.execSync)(`systemctl --user stop "${unit}"`, { stdio: 'pipe' });
909
843
  }
910
844
  catch (error) {
911
- const message = error instanceof Error ? error.message : String(error);
845
+ const message = (0, utils_1.getErrorMessage)(error);
912
846
  logger_1.logger.error((0, i18n_1.t)('service.unitStopFailed', { unit, message }));
913
847
  failed = true;
914
848
  }
@@ -936,7 +870,7 @@ class LinuxServiceStrategy {
936
870
  (0, child_process_1.execSync)(`systemctl --user restart "${unit}"`, { stdio: 'pipe' });
937
871
  }
938
872
  catch (error) {
939
- const message = error instanceof Error ? error.message : String(error);
873
+ const message = (0, utils_1.getErrorMessage)(error);
940
874
  logger_1.logger.error((0, i18n_1.t)('service.unitRestartFailed', { unit, message }));
941
875
  failed = true;
942
876
  }
@@ -971,7 +905,7 @@ class LinuxServiceStrategy {
971
905
  }
972
906
  }
973
907
  const projects = [];
974
- let anyRunning = false;
908
+ let isAnyRunning = false;
975
909
  let firstPid;
976
910
  for (const { unitName } of projectUnits) {
977
911
  // Prefer the canonical projectCode from config. For orphaned units no
@@ -994,7 +928,7 @@ class LinuxServiceStrategy {
994
928
  if (!firstPid)
995
929
  firstPid = pid;
996
930
  }
997
- anyRunning = true;
931
+ isAnyRunning = true;
998
932
  }
999
933
  }
1000
934
  catch {
@@ -1002,7 +936,7 @@ class LinuxServiceStrategy {
1002
936
  }
1003
937
  projects.push({ label: unitName, projectCode, running, pid });
1004
938
  }
1005
- return { installed: true, running: anyRunning, pid: firstPid, logDir, projects };
939
+ return { installed: true, running: isAnyRunning, pid: firstPid, logDir, projects };
1006
940
  }
1007
941
  }
1008
942
  exports.LinuxServiceStrategy = LinuxServiceStrategy;
@@ -1 +1 @@
1
- {"version":3,"file":"linux-service.js","sourceRoot":"","sources":["../../../src/cli/service/linux-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linux-service.js","sourceRoot":"","sources":["../../../src/cli/service/linux-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgGA,gDAEC;AAGD,wDAEC;AAGD,gDAoBC;AAcD,4DAYC;AAQD,kDA4BC;AAOD,gEAqCC;AAcD,sDAqKC;AAGD,oDAgGC;AAUD,4DAoEC;AAOD,wDAoDC;AAvoBD,iDAAwC;AACxC,uCAAwB;AACxB,uCAAwB;AACxB,2CAA4B;AAE5B,+CAAsE;AACtE,yDAA+E;AAC/E,4DAAsD;AACtD,qCAA8B;AAC9B,yCAAqC;AACrC,uCAA6C;AAE7C,6CAA4D;AAyBnD,iGAzBA,6BAAgB,OAyBA;AAAE,4FAzBA,wBAAW,OAyBA;AAxBtC,uDAA4H;AAC5H,yEAAwE;AAQxE,uDAa+B;AAI/B,MAAM,YAAY,GAAG,0BAA0B,CAAA;AAC/C,MAAM,cAAc,GAAG,kBAAkB,CAAA;AAEzC,MAAM,iBAAiB,GAAG,mCAAsB,CAAA;AAChD,MAAM,SAAS,GAAG,2BAAc,CAAA;AAEhC,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,SAAS,QAAQ,CAAC,CAAS;IACzB,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA;AACpD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,qBAAqB,CAAC,QAAgB,EAAE,OAAe,EAAE,IAAY;IAC5E,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7C,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK;SACT,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;SACtB,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;SACnB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC3B,CAAC;AAED,kFAAkF;AAClF,SAAgB,kBAAkB,CAAC,UAAkB,EAAE,WAAmB;IACxE,OAAO,GAAG,cAAc,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAA;AAC7E,CAAC;AAED,yDAAyD;AACzD,SAAgB,sBAAsB,CAAC,UAAkB,EAAE,WAAmB;IAC5E,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;AACjG,CAAC;AAED,oEAAoE;AACpE,SAAgB,kBAAkB;IAChC,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAA;IACtC,MAAM,MAAM,GAAG,GAAG,cAAc,GAAG,CAAA;IACnC,MAAM,OAAO,GAAkD,EAAE,CAAA;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IACE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBACvB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACzB,IAAI,KAAK,YAAY,EACrB,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;gBAClD,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yDAAyD;IAC3D,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,wBAAwB;IACtC,MAAM,SAAS,GAAG,qBAAqB,CAAA;IACvC,MAAM,MAAM,GAAG,cAAc,CAAA;IAC7B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QACvC,OAAO,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;aAC7D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAA;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,8DAA8D;QAC9D,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,4GAA4G;AAE5G,8EAA8E;AAC9E,0EAA0E;AAC1E,8EAA8E;AAE9E,SAAgB,mBAAmB,CAAC,OAAsB;IACxD,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IACjE,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IAChD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,QAAQ,CAAC,IAAI,CAAC,8BAAkB,CAAC,CAAA;IACnC,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,QAAQ,CAAC,IAAI,CAAC,4BAAgB,CAAC,CAAA;IACjC,CAAC;IAED,OAAO;;;;;;;YAOG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;mBAI9D,EAAE,CAAC,OAAO,EAAE;wBACP,IAAA,2BAAc,EAAC,MAAM,CAAC;uBACvB,IAAA,2BAAc,EAAC,MAAM,CAAC;;;;CAI5C,CAAA;AACD,CAAC;AAED,8EAA8E;AAC9E,8BAA8B;AAC9B,8EAA8E;AAE9E,+EAA+E;AAC/E,SAAgB,0BAA0B,CAAC,IAI1C;IACC,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAC5D,MAAM,WAAW,GAAG,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;IAC/C,mEAAmE;IACnE,wEAAwE;IACxE,oEAAoE;IACpE,+DAA+D;IAC/D,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,mEAAmE;IACnE,qEAAqE;IACrE,wCAAwC;IACxC,MAAM,aAAa,GAAG,aAAa,CAAC,IAAA,6BAAgB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAClE,MAAM,aAAa,GAAG,aAAa,CAAC,IAAA,6BAAgB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAClE,OAAO;gCACuB,IAAI,CAAC,QAAQ;;;;;;sBAMvB,cAAc;;;;mBAIjB,WAAW;wBACN,aAAa;uBACd,aAAa;;;;CAInC,CAAA;AACD,CAAC;AAED,4EAA4E;AAC5E,SAAS,iBAAiB,CAAC,MAAc;IACvC,qEAAqE;IACrE,2EAA2E;IAC3E,4EAA4E;IAC5E,OAAO,MAAM,CAAC,OAAO,CACnB,kDAAkD,EAClD,CAAC,CAAC,EAAE,MAAc,EAAE,EAAE,CAAC,GAAG,MAAM,sBAAsB,CACvD,CAAA;AACH,CAAC;AAED,sEAAsE;AACtE,SAAgB,qBAAqB,CAAC,IAwBrC;IACC,MAAM,aAAa,GAAG,YAAY,CAAA;IAClC,MAAM,kBAAkB,GAAG,GAAG,aAAa,oBAAoB,CAAA;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAA;IAC5B,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAEtD,4EAA4E;IAC5E,0EAA0E;IAC1E,uEAAuE;IACvE,2DAA2D;IAC3D,MAAM,cAAc,GAAG,IAAA,4BAAU,EAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;IAC5D,MAAM,cAAc,GAAG,IAAA,4BAAU,EAAC,aAAa,CAAC,CAAA;IAChD,MAAM,mBAAmB,GAAG,IAAA,4BAAU,EAAC,kBAAkB,CAAC,CAAA;IAC1D,MAAM,MAAM,GAAG,IAAA,4BAAU,EAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACrC,MAAM,OAAO,GAAG,IAAA,4BAAU,EAAC,eAAe,CAAC,CAAA;IAC3C,MAAM,UAAU,GAAG,IAAA,4BAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7C,MAAM,iBAAiB,GAAG,IAAA,4BAAU,EAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IAC3D,uEAAuE;IACvE,4EAA4E;IAC5E,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAA;IACrF,MAAM,cAAc,GAAG,IAAA,4BAAU,EAAC,aAAa,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG,IAAA,4BAAU,EAAC,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;IAExE,oCAAoC;IACpC,kFAAkF;IAClF,6EAA6E;IAC7E,4EAA4E;IAC5E,wEAAwE;IACxE,0EAA0E;IAC1E,uEAAuE;IACvE,uEAAuE;IACvE,0EAA0E;IAC1E,0EAA0E;IAC1E,oEAAoE;IACpE,kCAAkC;IAClC,uEAAuE;IACvE,0EAA0E;IAC1E,gDAAgD;IAChD,MAAM,mBAAmB,GAAG,uBAAuB,IAAI,CAAC,WAAW,EAAE,CAAA;IACrE,wEAAwE;IACxE,wEAAwE;IACxE,qEAAqE;IACrE,0DAA0D;IAC1D,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;IAEjF,MAAM,UAAU,GAAa;QAC3B,QAAQ,IAAA,4BAAU,EAAC,GAAG,OAAO,YAAY,aAAa,aAAa,CAAC,KAAK;QACzE,QAAQ,IAAA,4BAAU,EAAC,GAAG,IAAI,CAAC,oBAAoB,IAAI,kBAAkB,KAAK,CAAC,KAAK;QAChF,QAAQ,IAAA,4BAAU,EAAC,GAAG,OAAO,iBAAiB,aAAa,kBAAkB,CAAC,KAAK;QACnF,QAAQ,IAAA,4BAAU,EAAC,GAAG,cAAc,IAAI,mBAAmB,KAAK,CAAC,KAAK;KACvE,CAAA;IAED,MAAM,QAAQ,GAAa;QACzB,sCAAsC;QACtC,aAAa,cAAc,KAAK;QAChC,oCAAoC,mBAAmB,KAAK;QAC5D,+BAA+B,MAAM,KAAK;QAC1C,iCAAiC,OAAO,KAAK;QAC7C,sEAAsE;QACtE,mEAAmE;QACnE,yCAAyC,IAAA,4BAAU,EAAC,GAAG,IAAI,CAAC,WAAW,IAAI,mBAAmB,EAAE,CAAC,KAAK;KACvG,CAAA;IACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,QAAQ,CAAC,IAAI,CAAC,0BAA0B,IAAA,4BAAU,EAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IAChF,CAAC;IACD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC9B,QAAQ,CAAC,IAAI,CAAC,gCAAgC,IAAA,4BAAU,EAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAC3F,CAAC;IAED,MAAM,aAAa,GAAG;QACpB,kBAAkB,EAAE,OAAO,EAAE,8BAAkB;QAC/C,aAAa,WAAW,EAAE;KAC3B,CAAA;IACD,IAAI,IAAI,CAAC,OAAO;QAAE,aAAa,CAAC,IAAI,CAAC,4BAAgB,CAAC,CAAA;IAEtD,MAAM,cAAc,GAAG,IAAA,sDAA2B,EAAC;QACjD,cAAc,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC;YAClC,6BAA6B,cAAc,KAAK;YAChD,+CAA+C;YAC/C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YACnB,oBAAoB;YACpB,KAAK,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,EAAE;SAChD,CAAC,IAAI,CAAC,IAAI,CAAC;QACZ,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,eAAe,EAAE,SAAS;KAC3B,CAAC,CAAA;IAEF,OAAO;;;;;;;;;;iBAUQ,cAAc;;;;;;;;;;;;;;YAcnB,UAAU;;;;;;;;;eASP,cAAc;;;;;;;;;;;;EAY3B,cAAc;;SAEP,iBAAiB;;;;CAIzB,CAAA;AACD,CAAC;AAED,4DAA4D;AAC5D,SAAgB,oBAAoB;IAClC,wEAAwE;IACxE,mEAAmE;IACnE,MAAM,WAAW,GAAG,IAAA,4BAAU,EAAC,iBAAiB,EAAE,CAAC,CAAA;IACnD,MAAM,YAAY,GAAG,IAAA,4BAAU,EAAC,IAAI,CAAC,IAAI,CAAC,IAAA,6BAAY,GAAE,EAAE,qBAAqB,CAAC,CAAC,CAAA;IAEjF,OAAO;;;;;;;;;;;;;;;;;;;;;;mBAsBU,WAAW;;;;uCAIS,cAAc;;;;yBAI5B,YAAY;;;;;;;eAOtB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCA8BY,cAAc;;;;yBAI5B,YAAY;;;;;;;;;;;;;;;;;;CAkBpC,CAAA;AACD,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;GAGG;AACH,SAAgB,wBAAwB,CACtC,OAA4B,EAC5B,UAAiC,EAAE;IAEnC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;IAC3C,gEAAgE;IAChE,IAAA,yCAAuB,EAAC,WAAW,CAAC,CAAA;IACpC,IAAA,yCAAuB,EAAC,UAAU,CAAC,CAAA;IACnC,MAAM,UAAU,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAA;IAErE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,aAAa,GAAG,IAAA,6BAAgB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAA;IACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC/C,CAAC;IAED,MAAM,WAAW,GAAG,IAAA,2BAAc,GAAE,CAAA;IACpC,MAAM,iBAAiB,GAAG,IAAA,iCAAoB,EAAC,WAAW,EAAE,UAAU,CAAC,CAAA;IACvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,EAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,MAAM,oBAAoB,GAAG,IAAA,oCAAuB,EAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAC7E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACzC,EAAE,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,oEAAoE;IACpE,oEAAoE;IACpE,kEAAkE;IAClE,oEAAoE;IACpE,sEAAsE;IACtE,8BAA8B;IAC9B,MAAM,mBAAmB,GAAG,IAAA,4CAA0B,EAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAE1E,MAAM,gBAAgB,GAAG,IAAA,gCAAmB,GAAE,CAAA;IAC9C,MAAM,iBAAiB,GAAG,IAAA,iCAAoB,EAAC,iBAAiB,CAAC,CAAA;IACjE,MAAM,aAAa,GAAG,qBAAqB,CAAC;QAC1C,SAAS,EAAE,yBAAU;QACrB,UAAU;QACV,WAAW;QACX,oBAAoB;QACpB,UAAU,EAAE,mBAAmB;QAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC9C,oBAAoB,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB;QACzD,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,gBAAgB;QAChB,MAAM,EAAE,aAAa;KACtB,CAAC,CAAA;IACF,2EAA2E;IAC3E,kFAAkF;IAClF,qBAAqB,CAAC,iBAAiB,EAAE,aAAa,EAAE,KAAK,CAAC,CAAA;IAE9D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAC5D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAChE,MAAM,IAAI,GAAG,0BAA0B,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAA;IAC/F,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAEzC,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CACpC,OAA4B,EAC5B,UAAiC,EAAE;IAEnC,MAAM,gBAAgB,GAAG,IAAA,gCAAmB,GAAE,CAAA;IAC9C,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAA;IAC3C,qBAAqB,CAAC,gBAAgB,EAAE,YAAY,EAAE,KAAK,CAAC,CAAA;IAE5D,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAC5E,MAAM,QAAQ,GAAG,GAAG,QAAQ,UAAU,CAAA;IAEtC,qEAAqE;IACrE,0EAA0E;IAC1E,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;QACtC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,4BAA4B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;QACzD,OAAM;IACR,CAAC;IAED,iEAAiE;IACjE,IAAI,CAAC;QAAC,IAAA,wBAAQ,EAAC,0BAA0B,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAEtG,uEAAuE;IACvE,uEAAuE;IACvE,+DAA+D;IAC/D,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,4BAA4B,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;QACtC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IACrE,CAAC;IAED,IAAI,CAAC;QACH,IAAA,wBAAQ,EAAC,2BAA2B,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;QACtC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,GAAG,QAAQ,KAAK,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;QAC3E,OAAM;IACR,CAAC;IAED,qDAAqD;IACrD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAA,wBAAQ,EAAC,+BAA+B,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAA;QACrG,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACrB,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAuB;QAC7B,MAAM,MAAM,GAAG,IAAA,2BAAU,GAAE,CAAA;QAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAA,+BAAc,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAErD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,8BAA8B,CAAC,CAAC,CAAA;YAC/C,OAAM;QACR,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;QAED,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAA;QACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC/C,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAA,gCAAmB,GAAE,CAAA;QAC9C,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAA;QAC3C,qBAAqB,CAAC,gBAAgB,EAAE,YAAY,EAAE,KAAK,CAAC,CAAA;QAE5D,8DAA8D;QAC9D,mEAAmE;QACnE,uEAAuE;QACvE,mEAAmE;QACnE,qEAAqE;QACrE,8DAA8D;QAC9D,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,IAAA,yCAAuB,EAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAA;QAElG,wEAAwE;QACxE,wEAAwE;QACxE,oEAAoE;QACpE,gEAAgE;QAChE,oCAAoC;QACpC,wEAAwE;QACxE,yEAAyE;QACzE,gEAAgE;QAChE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAA;QAC3C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAA;YAC1D,iBAAiB,CAAC,GAAG,CACnB,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CACtF,CAAA;QACH,CAAC;QAED,sEAAsE;QACtE,sEAAsE;QACtE,SAAS;QACT,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAA;QAEhD,MAAM,YAAY,GAAuE,EAAE,CAAA;QAC3F,IAAI,WAAW,GAAG,CAAC,CAAA;QACnB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAA;YAC1D,qEAAqE;YACrE,mEAAmE;YACnE,qDAAqD;YACrD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,+DAA+D;gBAC/D,8DAA8D;gBAC9D,gEAAgE;gBAChE,6DAA6D;gBAC7D,+DAA+D;gBAC/D,kEAAkE;gBAClE,gEAAgE;gBAChE,sBAAsB;gBACtB,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW;oBACtC,CAAC,CAAC,+BAA+B;oBACjC,CAAC,CAAC,kCAAkC,CAAA;gBACtC,MAAM,QAAQ,GAAG,GAAG,SAAS,CAAC,IAAI,OAAO,UAAU,EAAE,CAAA;gBACrD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC1C,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,UAAU,EAAE;wBACzB,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,QAAQ,EAAE,SAAS,CAAC,IAAI;wBACxB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;qBACpC,CAAC,CAAC,CAAA;oBACH,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACtC,CAAC;gBACD,WAAW,IAAI,CAAC,CAAA;gBAChB,SAAQ;YACV,CAAC;YACD,sEAAsE;YACtE,+DAA+D;YAC/D,gEAAgE;YAChE,oEAAoE;YACpE,uBAAuB;YACvB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;gBAChF,+DAA+D;gBAC/D,gEAAgE;gBAChE,kEAAkE;gBAClE,gEAAgE;gBAChE,UAAU;gBACV,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;uBAClC,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;gBAChE,YAAY,CAAC,IAAI,CAAC;oBAChB,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,QAAQ;oBACR,QAAQ,EAAE,GAAG,QAAQ,UAAU;iBAChC,CAAC,CAAA;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;gBACtC,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;gBAC9F,WAAW,IAAI,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QACD,MAAM,gBAAgB,GAAG,WAAW,GAAG,CAAC,CAAA;QAExC,uEAAuE;QACvE,wEAAwE;QACxE,qEAAqE;QACrE,wCAAwC;QACxC,EAAE;QACF,wEAAwE;QACxE,yEAAyE;QACzE,wEAAwE;QACxE,wEAAwE;QACxE,sEAAsE;QACtE,6BAA6B;QAC7B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,KAAK,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,kBAAkB,EAAE,EAAE,CAAC;gBAC1D,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAAE,SAAQ;gBAC7C,MAAM,cAAc,GAAG,GAAG,QAAQ,UAAU,CAAA;gBAC5C,IAAI,CAAC;oBACH,IAAA,wBAAQ,EAAC,mCAAmC,cAAc,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;gBACnF,CAAC;gBAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;gBACrC,IAAI,CAAC;oBACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;wBAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBACtD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;oBACtC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,gCAAgC,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;gBACrF,CAAC;YACH,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,yEAAyE;QACzE,uEAAuE;QACvE,wEAAwE;QACxE,qEAAqE;QACrE,uEAAuE;QACvE,oCAAoC;QACpC,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;YACtC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,4BAA4B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;QAC3D,CAAC;QACD,KAAK,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC;YAC/D,IAAI,CAAC;gBACH,IAAA,wBAAQ,EAAC,4BAA4B,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YACtE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;gBACtC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;YACrE,CAAC;YACD,eAAM,CAAC,OAAO,CAAC,IAAA,QAAC,EAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAChF,CAAC;QAED,uEAAuE;QACvE,uEAAuE;QACvE,mDAAmD;QACnD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,uBAAuB,CAAC,CAAC,CAAA;YACvC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;YAClD,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,uBAAuB,CAAC,CAAC,CAAA;QACzC,CAAC;QAED,mEAAmE;QACnE,wEAAwE;QACxE,iEAAiE;QACjE,wDAAwD;QACxD,IAAI,gBAAgB,EAAE,CAAC;YACrB,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,+BAA+B,EAAE;gBAC7C,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC;gBAC3B,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC9B,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;aACvC,CAAC,CAAC,CAAA;QACL,CAAC;IACH,CAAC;IAED,SAAS;QACP,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;QAEzC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,sBAAsB,CAAC,CAAC,CAAA;YACtC,OAAM;QACR,CAAC;QAED,KAAK,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,GAAG,QAAQ,UAAU,CAAA;YACtC,wDAAwD;YACxD,IAAI,CAAC;gBAAC,IAAA,wBAAQ,EAAC,mCAAmC,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;YAC9G,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YAAC,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;QAE9F,eAAM,CAAC,OAAO,CAAC,IAAA,QAAC,EAAC,qBAAqB,CAAC,CAAC,CAAA;IAC1C,CAAC;IAED,KAAK;QACH,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;QAEzC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,sBAAsB,CAAC,CAAC,CAAA;YACvC,OAAM;QACR,CAAC;QAED,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;QAED,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,GAAG,QAAQ,UAAU,CAAA;YAClC,IAAI,CAAC;gBACH,IAAA,wBAAQ,EAAC,2BAA2B,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YACjE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;gBACtC,kEAAkE;gBAClE,gCAAgC;gBAChC,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;gBAC7D,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,eAAM,CAAC,OAAO,CAAC,IAAA,QAAC,EAAC,iBAAiB,CAAC,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,IAAI;QACF,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;QAEzC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,sBAAsB,CAAC,CAAC,CAAA;YACvC,OAAM;QACR,CAAC;QAED,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,GAAG,QAAQ,UAAU,CAAA;YAClC,IAAI,CAAC;gBACH,IAAA,wBAAQ,EAAC,0BAA0B,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAChE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;gBACtC,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,wBAAwB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;gBAC5D,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,eAAM,CAAC,OAAO,CAAC,IAAA,QAAC,EAAC,iBAAiB,CAAC,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;QAEzC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,sBAAsB,CAAC,CAAC,CAAA;YACvC,OAAM;QACR,CAAC;QAED,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC;YACH,IAAA,wBAAQ,EAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,WAAW;QACb,CAAC;QAED,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,GAAG,QAAQ,UAAU,CAAA;YAClC,IAAI,CAAC;gBACH,IAAA,wBAAQ,EAAC,6BAA6B,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YACnE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAA;gBACtC,eAAM,CAAC,KAAK,CAAC,IAAA,QAAC,EAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;gBAC/D,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;QACH,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,eAAM,CAAC,OAAO,CAAC,IAAA,QAAC,EAAC,mBAAmB,CAAC,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA;QACzC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;QAE1B,0EAA0E;QAC1E,0EAA0E;QAC1E,sEAAsE;QACtE,yEAAyE;QACzE,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAA;QAC7C,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,eAAM,CAAC,IAAI,CAAC,IAAA,QAAC,EAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAClE,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QAC7C,CAAC;QAED,sEAAsE;QACtE,qEAAqE;QACrE,oEAAoE;QACpE,+DAA+D;QAC/D,MAAM,MAAM,GAAG,IAAA,2BAAU,GAAE,CAAA;QAC3B,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAA;QACnD,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,MAAM,OAAO,IAAI,IAAA,+BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,iBAAiB,CAAC,GAAG,CACnB,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAC3D,OAAO,CAAC,WAAW,CACpB,CAAA;YACH,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAoB,EAAE,CAAA;QACpC,IAAI,YAAY,GAAG,KAAK,CAAA;QACxB,IAAI,QAA4B,CAAA;QAEhC,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC;YACxC,sEAAsE;YACtE,qEAAqE;YACrE,kEAAkE;YAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,GAAG,CAAC;gBACxD,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC3C,CAAC,CAAC,QAAQ,CAAA;YACZ,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAA;YAE/D,IAAI,OAAO,GAAG,KAAK,CAAA;YACnB,IAAI,GAAuB,CAAA;YAC3B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAA,wBAAQ,EACrB,0BAA0B,QAAQ,qDAAqD,EACvF,EAAE,KAAK,EAAE,MAAM,EAAE,CAClB,CAAC,QAAQ,EAAE,CAAA;gBACZ,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;gBACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;gBAC9C,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;oBAClC,OAAO,GAAG,IAAI,CAAA;oBACd,IAAI,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBACpC,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;wBAC/B,IAAI,CAAC,QAAQ;4BAAE,QAAQ,GAAG,GAAG,CAAA;oBAC/B,CAAC;oBACD,YAAY,GAAG,IAAI,CAAA;gBACrB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,mCAAmC;YACrC,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAA;QAC/D,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IACpF,CAAC;CACF;AA1WD,oDA0WC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Build the bash snippet that runs a docker container, optionally routing
3
+ * its stdout/stderr through `ai-support-agent log-rotate` subprocesses.
4
+ *
5
+ * Both Linux (systemd) and macOS (launchd) wrappers share the same FIFO +
6
+ * background-rotator pattern; only the surrounding `docker run` flags differ
7
+ * between platforms. This helper encapsulates the shared structure:
8
+ *
9
+ * - With `logDir`: sets up named FIFOs, starts two rotator subprocesses,
10
+ * runs the docker command (provided by `buildDockerRun`) with output
11
+ * redirected to those FIFOs, then waits for the rotators to drain before
12
+ * the wrapper exits.
13
+ * - Without `logDir`: runs the docker command directly with no log rotation.
14
+ *
15
+ * In both cases the result ends with `EXIT_CODE=$?` so the caller can check
16
+ * for the exit-42 self-update sentinel.
17
+ *
18
+ * @param opts.buildDockerRun Function that builds the `docker run …` command
19
+ * string. Receives `outputRedirect` — the bash
20
+ * fragment to append for stdout/stderr redirection
21
+ * (e.g. `> "$FIFO/out" 2> "$FIFO/err"` when log
22
+ * rotation is active, or `""` when not). The
23
+ * returned string must NOT include a trailing
24
+ * newline; the helper adds line endings as needed.
25
+ * @param opts.logDir When set, the directory under which `agent.out.log`
26
+ * and `agent.err.log` are written via log-rotate.
27
+ * @param opts.supervisorLabel Human-readable label for the inline comment
28
+ * ("systemd" or "launchd"). No effect on behaviour.
29
+ */
30
+ export declare function buildDockerRunWithLogRotate(opts: {
31
+ buildDockerRun: (outputRedirect: string) => string;
32
+ logDir: string | undefined;
33
+ supervisorLabel: 'systemd' | 'launchd';
34
+ }): string;
35
+ //# sourceMappingURL=service-template-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-template-helpers.d.ts","sourceRoot":"","sources":["../../../src/cli/service/service-template-helpers.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAChD,cAAc,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAA;IAClD,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,eAAe,EAAE,SAAS,GAAG,SAAS,CAAA;CACvC,GAAG,MAAM,CA+CT"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildDockerRunWithLogRotate = buildDockerRunWithLogRotate;
4
+ const wrapper_helpers_1 = require("./wrapper-helpers");
5
+ /**
6
+ * Build the bash snippet that runs a docker container, optionally routing
7
+ * its stdout/stderr through `ai-support-agent log-rotate` subprocesses.
8
+ *
9
+ * Both Linux (systemd) and macOS (launchd) wrappers share the same FIFO +
10
+ * background-rotator pattern; only the surrounding `docker run` flags differ
11
+ * between platforms. This helper encapsulates the shared structure:
12
+ *
13
+ * - With `logDir`: sets up named FIFOs, starts two rotator subprocesses,
14
+ * runs the docker command (provided by `buildDockerRun`) with output
15
+ * redirected to those FIFOs, then waits for the rotators to drain before
16
+ * the wrapper exits.
17
+ * - Without `logDir`: runs the docker command directly with no log rotation.
18
+ *
19
+ * In both cases the result ends with `EXIT_CODE=$?` so the caller can check
20
+ * for the exit-42 self-update sentinel.
21
+ *
22
+ * @param opts.buildDockerRun Function that builds the `docker run …` command
23
+ * string. Receives `outputRedirect` — the bash
24
+ * fragment to append for stdout/stderr redirection
25
+ * (e.g. `> "$FIFO/out" 2> "$FIFO/err"` when log
26
+ * rotation is active, or `""` when not). The
27
+ * returned string must NOT include a trailing
28
+ * newline; the helper adds line endings as needed.
29
+ * @param opts.logDir When set, the directory under which `agent.out.log`
30
+ * and `agent.err.log` are written via log-rotate.
31
+ * @param opts.supervisorLabel Human-readable label for the inline comment
32
+ * ("systemd" or "launchd"). No effect on behaviour.
33
+ */
34
+ function buildDockerRunWithLogRotate(opts) {
35
+ const { buildDockerRun, logDir, supervisorLabel } = opts;
36
+ if (!logDir) {
37
+ return `${buildDockerRun('')}\n\nEXIT_CODE=$?\n`;
38
+ }
39
+ const qOutLog = (0, wrapper_helpers_1.shellQuote)(`${logDir}/agent.out.log`);
40
+ const qErrLog = (0, wrapper_helpers_1.shellQuote)(`${logDir}/agent.err.log`);
41
+ const dockerRunLine = buildDockerRun(' \\\n > "$_ROT_DIR/out" 2> "$_ROT_DIR/err"');
42
+ return `\
43
+ # Pipe stdout and stderr through SEPARATE \`ai-support-agent log-rotate\`
44
+ # subprocesses so the active log files are bounded (default 5MB × 5
45
+ # generations) AND each stream lands in its own file (agent.out.log /
46
+ # agent.err.log) — matching the pre-rotation layout that operators tail.
47
+ #
48
+ # Both rotators are invoked with \`--no-tee\` so they DO NOT echo back to
49
+ # stdout/stderr. The ${supervisorLabel} unit's StandardOutput/Error is pointed at
50
+ # separate wrapper.*.log files (NOT the agent.*.log paths owned by the
51
+ # rotators), so we don't get a double-write race where ${supervisorLabel}
52
+ # silently keeps appending to a rotated generation.
53
+ #
54
+ # We use named FIFOs + background rotators so we have EXPLICIT PIDs to wait
55
+ # on. Background jobs started with \`&\` set \$! reliably on every supported
56
+ # bash, so this layout is portable across bash 3.2 (macOS) and later.
57
+ _ROT_DIR=$(mktemp -d -t ai-support-agent-rot.XXXXXX)
58
+ trap 'rm -rf "\$_ROT_DIR" 2>/dev/null || true' EXIT
59
+ mkfifo "\$_ROT_DIR/out" "\$_ROT_DIR/err"
60
+ ai-support-agent log-rotate --no-tee ${qOutLog} < "\$_ROT_DIR/out" &
61
+ _ROT_OUT_PID=$!
62
+ ai-support-agent log-rotate --no-tee ${qErrLog} < "\$_ROT_DIR/err" >&2 &
63
+ _ROT_ERR_PID=$!
64
+
65
+ ${dockerRunLine}
66
+
67
+ # Redirecting to a FIFO does not propagate the rotator's exit into \$?,
68
+ # so EXIT_CODE is purely docker's exit status. The exit-42 update path is
69
+ # preserved (the rotator can never mask it).
70
+ EXIT_CODE=$?
71
+
72
+ # Wait on the rotators explicitly so they drain their FIFO before the
73
+ # wrapper exits (${supervisorLabel} will SIGKILL stragglers otherwise). docker
74
+ # closed its write end on exit, so each rotator sees EOF on stdin and
75
+ # exits naturally; the wait is bounded by pipe-buffer drain time.
76
+ wait "\$_ROT_OUT_PID" "\$_ROT_ERR_PID" 2>/dev/null || true
77
+ `;
78
+ }
79
+ //# sourceMappingURL=service-template-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-template-helpers.js","sourceRoot":"","sources":["../../../src/cli/service/service-template-helpers.ts"],"names":[],"mappings":";;AA+BA,kEAmDC;AAlFD,uDAA8C;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAgB,2BAA2B,CAAC,IAI3C;IACC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAA;IAExD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,GAAG,cAAc,CAAC,EAAE,CAAC,oBAAoB,CAAA;IAClD,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,4BAAU,EAAC,GAAG,MAAM,gBAAgB,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,IAAA,4BAAU,EAAC,GAAG,MAAM,gBAAgB,CAAC,CAAA;IACrD,MAAM,aAAa,GAAG,cAAc,CAAC,8CAA8C,CAAC,CAAA;IAEpF,OAAO;;;;;;;uBAOc,eAAe;;yDAEmB,eAAe;;;;;;;;;uCASjC,OAAO;;uCAEP,OAAO;;;EAG5C,aAAa;;;;;;;;mBAQI,eAAe;;;;CAIjC,CAAA;AACD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"win32-service.d.ts","sourceRoot":"","sources":["../../../src/cli/service/win32-service.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAS5F,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAkC9D;AAED,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IA4CtC,SAAS,IAAI,IAAI;IAqBjB,KAAK,IAAI,IAAI;IAiBb,IAAI,IAAI,IAAI;IAiBZ,OAAO,IAAI,IAAI;IAuBf,MAAM,IAAI,aAAa;CAUxB"}
1
+ {"version":3,"file":"win32-service.d.ts","sourceRoot":"","sources":["../../../src/cli/service/win32-service.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAS5F,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAkC9D;AAED,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IA4CtC,SAAS,IAAI,IAAI;IAqBjB,KAAK,IAAI,IAAI;IAiBb,IAAI,IAAI,IAAI;IAiBZ,OAAO,IAAI,IAAI;IAuBf,MAAM,IAAI,aAAa;CAUxB"}