crewly 1.5.9 → 1.5.11

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 (241) hide show
  1. package/config/skills/agent/browse-stealth/execute.sh +7 -7
  2. package/config/skills/agent/competitor-content-tracker/execute.sh +13 -13
  3. package/config/skills/agent/content-calendar/execute.sh +29 -29
  4. package/config/skills/agent/content-repurposer/execute.sh +8 -8
  5. package/config/skills/agent/content-writer/execute.sh +22 -22
  6. package/config/skills/agent/core/block-task/execute.sh +5 -5
  7. package/config/skills/agent/core/check-quality-gates/execute.sh +5 -5
  8. package/config/skills/agent/core/complete-task/execute.sh +13 -13
  9. package/config/skills/agent/core/generate-pdf/execute.sh +4 -4
  10. package/config/skills/agent/core/get-sops/execute.sh +4 -4
  11. package/config/skills/agent/core/get-team-norms/execute.sh +4 -4
  12. package/config/skills/agent/core/handoff-task/execute.sh +8 -8
  13. package/config/skills/agent/core/manage-knowledge/execute.sh +14 -14
  14. package/config/skills/agent/core/marketplace-search/execute.sh +6 -6
  15. package/config/skills/agent/core/query-knowledge/execute.sh +5 -5
  16. package/config/skills/agent/core/read-task/execute.sh +2 -2
  17. package/config/skills/agent/core/report-progress/execute.sh +5 -5
  18. package/config/skills/agent/core/report-status/execute.sh +2 -2
  19. package/config/skills/agent/core/save-working-state/execute.sh +5 -5
  20. package/config/skills/agent/core/schedule-check/execute.sh +9 -9
  21. package/config/skills/agent/core/send-chat-response/execute.sh +5 -5
  22. package/config/skills/agent/core/update-team-norm/execute.sh +9 -9
  23. package/config/skills/agent/core/update-user-profile/execute.sh +2 -2
  24. package/config/skills/agent/marketing/brand-onboarding/execute.sh +8 -8
  25. package/config/skills/agent/marketing/submit-for-approval/execute.sh +10 -10
  26. package/config/skills/agent/marketing/weekly-content-planning/execute.sh +8 -8
  27. package/config/skills/agent/marketing/weekly-marketing-report/execute.sh +5 -5
  28. package/config/skills/agent/trend-monitor/execute.sh +12 -12
  29. package/config/skills/auditor/score-task/execute.sh +4 -4
  30. package/config/skills/orchestrator/assign-task/execute.sh +1 -1
  31. package/config/skills/orchestrator/assign-team-to-project/execute.sh +2 -2
  32. package/config/skills/orchestrator/broadcast/execute.sh +2 -2
  33. package/config/skills/orchestrator/broadcast-to-org/execute.sh +3 -3
  34. package/config/skills/orchestrator/cancel-all-schedules/execute.sh +3 -3
  35. package/config/skills/orchestrator/cancel-cron/execute.sh +2 -2
  36. package/config/skills/orchestrator/cancel-schedule/execute.sh +2 -2
  37. package/config/skills/orchestrator/complete-task/execute.sh +1 -1
  38. package/config/skills/orchestrator/create-cron/execute.sh +6 -6
  39. package/config/skills/orchestrator/create-project/execute.sh +2 -2
  40. package/config/skills/orchestrator/create-team/execute.sh +2 -2
  41. package/config/skills/orchestrator/get-agent-logs/execute.sh +3 -3
  42. package/config/skills/orchestrator/get-agent-status/execute.sh +2 -2
  43. package/config/skills/orchestrator/get-tasks/execute.sh +2 -2
  44. package/config/skills/orchestrator/handle-agent-failure/execute.sh +7 -7
  45. package/config/skills/orchestrator/list-cron/execute.sh +3 -3
  46. package/config/skills/orchestrator/list-schedules/execute.sh +2 -2
  47. package/config/skills/orchestrator/query-knowledge/execute.sh +5 -5
  48. package/config/skills/orchestrator/read-session-logs/execute.sh +3 -3
  49. package/config/skills/orchestrator/read-system-logs/execute.sh +3 -3
  50. package/config/skills/orchestrator/recall/execute.sh +2 -2
  51. package/config/skills/orchestrator/record-failure/execute.sh +2 -2
  52. package/config/skills/orchestrator/record-learning/execute.sh +2 -2
  53. package/config/skills/orchestrator/record-success/execute.sh +2 -2
  54. package/config/skills/orchestrator/register-self/execute.sh +4 -4
  55. package/config/skills/orchestrator/remember/execute.sh +3 -3
  56. package/config/skills/orchestrator/report-bug/execute.sh +5 -5
  57. package/config/skills/orchestrator/resume-session/execute.sh +2 -2
  58. package/config/skills/orchestrator/schedule-check/execute.sh +10 -10
  59. package/config/skills/orchestrator/send-key/execute.sh +6 -6
  60. package/config/skills/orchestrator/set-goal/execute.sh +2 -2
  61. package/config/skills/orchestrator/start-agent/execute.sh +3 -3
  62. package/config/skills/orchestrator/start-team/execute.sh +2 -2
  63. package/config/skills/orchestrator/stop-agent/execute.sh +3 -3
  64. package/config/skills/orchestrator/stop-team/execute.sh +2 -2
  65. package/config/skills/orchestrator/subscribe-event/execute.sh +3 -3
  66. package/config/skills/orchestrator/terminate-agent/execute.sh +2 -2
  67. package/config/skills/orchestrator/unsubscribe-event/execute.sh +2 -2
  68. package/config/skills/orchestrator/update-cron/execute.sh +3 -3
  69. package/config/skills/orchestrator/update-focus/execute.sh +2 -2
  70. package/config/skills/orchestrator/update-team/execute.sh +3 -3
  71. package/config/skills/orchestrator/update-team-member/SKILL.md +36 -0
  72. package/config/skills/orchestrator/update-team-member/execute.sh +25 -0
  73. package/config/skills/team-leader/aggregate-results/execute.sh +7 -7
  74. package/config/skills/team-leader/decompose-goal/execute.sh +5 -5
  75. package/config/skills/team-leader/handle-failure/execute.sh +10 -10
  76. package/config/skills/team-leader/schedule-check/execute.sh +9 -9
  77. package/config/skills/team-leader/start-agent/execute.sh +4 -4
  78. package/config/skills/team-leader/stop-agent/execute.sh +4 -4
  79. package/config/skills/team-leader/verify-output/execute.sh +8 -8
  80. package/config/templates/cloud-deploy.json +119 -0
  81. package/config/templates/dev-fullstack/template.json +64 -17
  82. package/config/templates/research-analysis/template.json +44 -15
  83. package/config/templates/social-media-ops/template.json +43 -15
  84. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.controller.d.ts +31 -0
  85. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.controller.d.ts.map +1 -0
  86. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.controller.js +94 -0
  87. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.controller.js.map +1 -0
  88. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.routes.d.ts +19 -0
  89. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.routes.d.ts.map +1 -0
  90. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.routes.js +25 -0
  91. package/dist/backend/backend/src/controllers/agent-stream/agent-stream.routes.js.map +1 -0
  92. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts +11 -3
  93. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -1
  94. package/dist/backend/backend/src/controllers/browser/browser.controller.js +56 -26
  95. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  96. package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts.map +1 -1
  97. package/dist/backend/backend/src/controllers/browser/browser.routes.js +3 -1
  98. package/dist/backend/backend/src/controllers/browser/browser.routes.js.map +1 -1
  99. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts +16 -0
  100. package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
  101. package/dist/backend/backend/src/controllers/chat/chat.controller.js +39 -2
  102. package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
  103. package/dist/backend/backend/src/controllers/chat/chat.routes.d.ts.map +1 -1
  104. package/dist/backend/backend/src/controllers/chat/chat.routes.js +3 -1
  105. package/dist/backend/backend/src/controllers/chat/chat.routes.js.map +1 -1
  106. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts +15 -0
  107. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  108. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +45 -0
  109. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  110. package/dist/backend/backend/src/controllers/cloud/cloud.routes.d.ts +1 -0
  111. package/dist/backend/backend/src/controllers/cloud/cloud.routes.d.ts.map +1 -1
  112. package/dist/backend/backend/src/controllers/cloud/cloud.routes.js +3 -1
  113. package/dist/backend/backend/src/controllers/cloud/cloud.routes.js.map +1 -1
  114. package/dist/backend/backend/src/controllers/index.d.ts.map +1 -1
  115. package/dist/backend/backend/src/controllers/index.js +2 -0
  116. package/dist/backend/backend/src/controllers/index.js.map +1 -1
  117. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.d.ts +15 -0
  118. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.d.ts.map +1 -1
  119. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js +35 -1
  120. package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js.map +1 -1
  121. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.d.ts.map +1 -1
  122. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js +2 -1
  123. package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js.map +1 -1
  124. package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.d.ts.map +1 -1
  125. package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.js +7 -1
  126. package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.js.map +1 -1
  127. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.d.ts +29 -0
  128. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.d.ts.map +1 -1
  129. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.js +76 -0
  130. package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.js.map +1 -1
  131. package/dist/backend/backend/src/controllers/project/project.controller.d.ts +16 -0
  132. package/dist/backend/backend/src/controllers/project/project.controller.d.ts.map +1 -1
  133. package/dist/backend/backend/src/controllers/project/project.controller.js +47 -0
  134. package/dist/backend/backend/src/controllers/project/project.controller.js.map +1 -1
  135. package/dist/backend/backend/src/controllers/project/project.routes.d.ts.map +1 -1
  136. package/dist/backend/backend/src/controllers/project/project.routes.js +3 -1
  137. package/dist/backend/backend/src/controllers/project/project.routes.js.map +1 -1
  138. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  139. package/dist/backend/backend/src/controllers/team/team.controller.js +100 -49
  140. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  141. package/dist/backend/backend/src/index.d.ts.map +1 -1
  142. package/dist/backend/backend/src/index.js +18 -4
  143. package/dist/backend/backend/src/index.js.map +1 -1
  144. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  145. package/dist/backend/backend/src/services/agent/agent-registration.service.js +25 -0
  146. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  147. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +2 -0
  148. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
  149. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +19 -0
  150. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
  151. package/dist/backend/backend/src/services/agent/crewly-agent/agent-stream.service.d.ts +145 -0
  152. package/dist/backend/backend/src/services/agent/crewly-agent/agent-stream.service.d.ts.map +1 -0
  153. package/dist/backend/backend/src/services/agent/crewly-agent/agent-stream.service.js +133 -0
  154. package/dist/backend/backend/src/services/agent/crewly-agent/agent-stream.service.js.map +1 -0
  155. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.d.ts +130 -0
  156. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.d.ts.map +1 -0
  157. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.js +263 -0
  158. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.js.map +1 -0
  159. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +1 -1
  160. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +8 -0
  161. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +1 -1
  162. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.d.ts +79 -0
  163. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.d.ts.map +1 -0
  164. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.js +218 -0
  165. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.js.map +1 -0
  166. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.d.ts +91 -0
  167. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.d.ts.map +1 -0
  168. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.js +143 -0
  169. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.js.map +1 -0
  170. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.d.ts +103 -0
  171. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.d.ts.map +1 -0
  172. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.js +256 -0
  173. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.js.map +1 -0
  174. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +44 -0
  175. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -1
  176. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +323 -1
  177. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -1
  178. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +21 -0
  179. package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -1
  180. package/dist/backend/backend/src/services/agent/crewly-agent/types.js +7 -0
  181. package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -1
  182. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts +4 -1
  183. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -1
  184. package/dist/backend/backend/src/services/browser/browser-bridge.service.js +26 -11
  185. package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -1
  186. package/dist/backend/backend/src/services/chat/chat-highlights.service.d.ts +100 -0
  187. package/dist/backend/backend/src/services/chat/chat-highlights.service.d.ts.map +1 -0
  188. package/dist/backend/backend/src/services/chat/chat-highlights.service.js +145 -0
  189. package/dist/backend/backend/src/services/chat/chat-highlights.service.js.map +1 -0
  190. package/dist/backend/backend/src/services/chat/chat-sanitizer.service.d.ts +76 -0
  191. package/dist/backend/backend/src/services/chat/chat-sanitizer.service.d.ts.map +1 -0
  192. package/dist/backend/backend/src/services/chat/chat-sanitizer.service.js +127 -0
  193. package/dist/backend/backend/src/services/chat/chat-sanitizer.service.js.map +1 -0
  194. package/dist/backend/backend/src/services/chat/chat.service.d.ts +8 -0
  195. package/dist/backend/backend/src/services/chat/chat.service.d.ts.map +1 -1
  196. package/dist/backend/backend/src/services/chat/chat.service.js +27 -1
  197. package/dist/backend/backend/src/services/chat/chat.service.js.map +1 -1
  198. package/dist/backend/backend/src/services/marketplace/index.d.ts +1 -1
  199. package/dist/backend/backend/src/services/marketplace/index.d.ts.map +1 -1
  200. package/dist/backend/backend/src/services/marketplace/index.js +1 -1
  201. package/dist/backend/backend/src/services/marketplace/index.js.map +1 -1
  202. package/dist/backend/backend/src/services/marketplace/marketplace.service.d.ts +11 -0
  203. package/dist/backend/backend/src/services/marketplace/marketplace.service.d.ts.map +1 -1
  204. package/dist/backend/backend/src/services/marketplace/marketplace.service.js +31 -0
  205. package/dist/backend/backend/src/services/marketplace/marketplace.service.js.map +1 -1
  206. package/dist/backend/backend/src/services/monitoring/token-estimator.service.d.ts +197 -0
  207. package/dist/backend/backend/src/services/monitoring/token-estimator.service.d.ts.map +1 -0
  208. package/dist/backend/backend/src/services/monitoring/token-estimator.service.js +408 -0
  209. package/dist/backend/backend/src/services/monitoring/token-estimator.service.js.map +1 -0
  210. package/dist/backend/backend/src/services/project/project-search.service.d.ts +62 -0
  211. package/dist/backend/backend/src/services/project/project-search.service.d.ts.map +1 -0
  212. package/dist/backend/backend/src/services/project/project-search.service.js +107 -0
  213. package/dist/backend/backend/src/services/project/project-search.service.js.map +1 -0
  214. package/dist/backend/backend/src/services/quality/quality-gate.service.d.ts +11 -0
  215. package/dist/backend/backend/src/services/quality/quality-gate.service.d.ts.map +1 -1
  216. package/dist/backend/backend/src/services/quality/quality-gate.service.js +93 -19
  217. package/dist/backend/backend/src/services/quality/quality-gate.service.js.map +1 -1
  218. package/dist/backend/backend/src/types/settings.types.d.ts +3 -0
  219. package/dist/backend/backend/src/types/settings.types.d.ts.map +1 -1
  220. package/dist/backend/backend/src/types/settings.types.js +1 -0
  221. package/dist/backend/backend/src/types/settings.types.js.map +1 -1
  222. package/dist/cli/backend/src/types/settings.types.d.ts +3 -0
  223. package/dist/cli/backend/src/types/settings.types.d.ts.map +1 -1
  224. package/dist/cli/backend/src/types/settings.types.js +1 -0
  225. package/dist/cli/backend/src/types/settings.types.js.map +1 -1
  226. package/dist/cli/cli/src/commands/stop.d.ts.map +1 -1
  227. package/dist/cli/cli/src/commands/stop.js +3 -0
  228. package/dist/cli/cli/src/commands/stop.js.map +1 -1
  229. package/dist/cli/cli/src/utils/license-check.d.ts +70 -0
  230. package/dist/cli/cli/src/utils/license-check.d.ts.map +1 -0
  231. package/dist/cli/cli/src/utils/license-check.js +124 -0
  232. package/dist/cli/cli/src/utils/license-check.js.map +1 -0
  233. package/dist/cli/cli/src/utils/process-cleanup.d.ts +9 -0
  234. package/dist/cli/cli/src/utils/process-cleanup.d.ts.map +1 -1
  235. package/dist/cli/cli/src/utils/process-cleanup.js +48 -0
  236. package/dist/cli/cli/src/utils/process-cleanup.js.map +1 -1
  237. package/frontend/dist/assets/{index-27a2c65e.js → index-9af2ea40.js} +355 -355
  238. package/frontend/dist/assets/index-b19b2478.css +33 -0
  239. package/frontend/dist/index.html +2 -2
  240. package/package.json +1 -1
  241. package/frontend/dist/assets/index-dc6ac165.css +0 -33
@@ -0,0 +1,263 @@
1
+ /**
2
+ * Persistent Audit Log Service (SQLite)
3
+ *
4
+ * Provides durable, queryable audit logging using better-sqlite3.
5
+ * Replaces the append-only JSONL approach with a proper relational store
6
+ * that supports efficient filtering, pagination, and aggregation.
7
+ *
8
+ * Single WAL-mode database shared across all sessions. Thread-safe for
9
+ * the single-threaded Node.js event loop (better-sqlite3 is synchronous).
10
+ *
11
+ * @module services/agent/crewly-agent/audit-log.service
12
+ */
13
+ import Database from 'better-sqlite3';
14
+ import { join } from 'path';
15
+ import { mkdirSync } from 'fs';
16
+ /** Default database filename */
17
+ const DB_FILENAME = 'audit-log.sqlite';
18
+ /** Default directory under .crewly */
19
+ const AUDIT_DIR = 'audit-logs';
20
+ /** Maximum rows returned by a single query */
21
+ const MAX_QUERY_LIMIT = 10000;
22
+ /**
23
+ * SQLite-backed persistent audit log service.
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * const log = new AuditLogService('/path/to/.crewly');
28
+ * log.initialize();
29
+ * log.append(auditEntry);
30
+ * log.logApprovalEvent('approval-123', 'session-1', 'edit_file', 'destructive', 'approved', 'api');
31
+ * const entries = log.query({ limit: 50, sessionName: 'session-1' });
32
+ * log.close();
33
+ * ```
34
+ */
35
+ export class AuditLogService {
36
+ db = null;
37
+ dbPath;
38
+ initialized = false;
39
+ /** Prepared statements for performance */
40
+ stmtInsert = null;
41
+ stmtInsertApproval = null;
42
+ /**
43
+ * Create a new AuditLogService.
44
+ *
45
+ * @param crewlyHome - Path to the .crewly directory
46
+ * @param dbFilename - Database filename (default: audit-log.sqlite)
47
+ */
48
+ constructor(crewlyHome, dbFilename = DB_FILENAME) {
49
+ const dir = join(crewlyHome, AUDIT_DIR);
50
+ this.dbPath = join(dir, dbFilename);
51
+ }
52
+ /**
53
+ * Initialize the database, creating tables if needed.
54
+ * Enables WAL mode for better concurrent read performance.
55
+ */
56
+ initialize() {
57
+ if (this.initialized)
58
+ return;
59
+ // Ensure directory exists
60
+ const dir = join(this.dbPath, '..');
61
+ mkdirSync(dir, { recursive: true });
62
+ this.db = new Database(this.dbPath);
63
+ this.db.pragma('journal_mode = WAL');
64
+ this.db.pragma('foreign_keys = ON');
65
+ this.db.exec(`
66
+ CREATE TABLE IF NOT EXISTS audit_log (
67
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
68
+ timestamp TEXT NOT NULL,
69
+ session_name TEXT,
70
+ tool_name TEXT NOT NULL,
71
+ sensitivity TEXT NOT NULL,
72
+ args TEXT NOT NULL DEFAULT '{}',
73
+ success INTEGER NOT NULL DEFAULT 1,
74
+ error TEXT,
75
+ duration_ms REAL NOT NULL DEFAULT 0,
76
+ action TEXT NOT NULL DEFAULT 'tool_call',
77
+ resolved_by TEXT,
78
+ approval_id TEXT
79
+ );
80
+
81
+ CREATE INDEX IF NOT EXISTS idx_audit_timestamp ON audit_log(timestamp);
82
+ CREATE INDEX IF NOT EXISTS idx_audit_session ON audit_log(session_name);
83
+ CREATE INDEX IF NOT EXISTS idx_audit_action ON audit_log(action);
84
+ CREATE INDEX IF NOT EXISTS idx_audit_tool ON audit_log(tool_name);
85
+ `);
86
+ this.stmtInsert = this.db.prepare(`
87
+ INSERT INTO audit_log (timestamp, session_name, tool_name, sensitivity, args, success, error, duration_ms, action)
88
+ VALUES (@timestamp, @sessionName, @toolName, @sensitivity, @args, @success, @error, @durationMs, 'tool_call')
89
+ `);
90
+ this.stmtInsertApproval = this.db.prepare(`
91
+ INSERT INTO audit_log (timestamp, session_name, tool_name, sensitivity, args, success, duration_ms, action, resolved_by, approval_id)
92
+ VALUES (@timestamp, @sessionName, @toolName, @sensitivity, @args, 1, 0, @action, @resolvedBy, @approvalId)
93
+ `);
94
+ this.initialized = true;
95
+ }
96
+ /**
97
+ * Append a tool-call audit entry.
98
+ *
99
+ * @param entry - The AuditEntry from the agent runtime
100
+ */
101
+ append(entry) {
102
+ this.ensureInitialized();
103
+ this.stmtInsert.run({
104
+ timestamp: entry.timestamp,
105
+ sessionName: entry.sessionName ?? null,
106
+ toolName: entry.toolName,
107
+ sensitivity: entry.sensitivity,
108
+ args: JSON.stringify(entry.args),
109
+ success: entry.success ? 1 : 0,
110
+ error: entry.error ?? null,
111
+ durationMs: entry.durationMs,
112
+ });
113
+ }
114
+ /**
115
+ * Log an approval lifecycle event (granted, rejected, expired).
116
+ *
117
+ * @param approvalId - The approval request ID
118
+ * @param sessionName - Agent session name
119
+ * @param toolName - Tool that was approved/rejected
120
+ * @param sensitivity - Sensitivity classification
121
+ * @param action - 'approval_granted' | 'approval_rejected' | 'approval_expired'
122
+ * @param resolvedBy - Who resolved it
123
+ */
124
+ logApprovalEvent(approvalId, sessionName, toolName, sensitivity, action, resolvedBy) {
125
+ this.ensureInitialized();
126
+ this.stmtInsertApproval.run({
127
+ timestamp: new Date().toISOString(),
128
+ sessionName,
129
+ toolName,
130
+ sensitivity,
131
+ args: '{}',
132
+ action,
133
+ resolvedBy,
134
+ approvalId,
135
+ });
136
+ }
137
+ /**
138
+ * Query audit log entries with filters and pagination.
139
+ *
140
+ * @param filters - Query filters
141
+ * @returns Array of audit log rows, most recent first
142
+ */
143
+ query(filters) {
144
+ this.ensureInitialized();
145
+ const conditions = [];
146
+ const params = {};
147
+ if (filters.sessionName) {
148
+ conditions.push('session_name = @sessionName');
149
+ params.sessionName = filters.sessionName;
150
+ }
151
+ if (filters.sensitivity) {
152
+ conditions.push('sensitivity = @sensitivity');
153
+ params.sensitivity = filters.sensitivity;
154
+ }
155
+ if (filters.toolName) {
156
+ conditions.push('tool_name = @toolName');
157
+ params.toolName = filters.toolName;
158
+ }
159
+ if (filters.action) {
160
+ conditions.push('action = @action');
161
+ params.action = filters.action;
162
+ }
163
+ if (filters.since) {
164
+ conditions.push('timestamp >= @since');
165
+ params.since = filters.since;
166
+ }
167
+ if (filters.until) {
168
+ conditions.push('timestamp <= @until');
169
+ params.until = filters.until;
170
+ }
171
+ const where = conditions.length > 0 ? `WHERE ${conditions.join(' AND ')}` : '';
172
+ const limit = Math.min(filters.limit || 100, MAX_QUERY_LIMIT);
173
+ const offset = filters.offset || 0;
174
+ const sql = `
175
+ SELECT id, timestamp, session_name, tool_name, sensitivity, args,
176
+ success, error, duration_ms, action, resolved_by, approval_id
177
+ FROM audit_log
178
+ ${where}
179
+ ORDER BY id DESC
180
+ LIMIT @limit OFFSET @offset
181
+ `;
182
+ params.limit = limit;
183
+ params.offset = offset;
184
+ const rows = this.db.prepare(sql).all(params);
185
+ return rows.map(row => ({
186
+ id: row.id,
187
+ timestamp: row.timestamp,
188
+ sessionName: row.session_name,
189
+ toolName: row.tool_name,
190
+ sensitivity: row.sensitivity,
191
+ args: JSON.parse(row.args || '{}'),
192
+ success: row.success === 1,
193
+ error: row.error,
194
+ durationMs: row.duration_ms,
195
+ action: row.action,
196
+ resolvedBy: row.resolved_by,
197
+ approvalId: row.approval_id,
198
+ }));
199
+ }
200
+ /**
201
+ * Get total count of entries matching filters (for pagination).
202
+ *
203
+ * @param filters - Same filters as query (limit/offset ignored)
204
+ * @returns Total matching row count
205
+ */
206
+ count(filters = {}) {
207
+ this.ensureInitialized();
208
+ const conditions = [];
209
+ const params = {};
210
+ if (filters.sessionName) {
211
+ conditions.push('session_name = @sessionName');
212
+ params.sessionName = filters.sessionName;
213
+ }
214
+ if (filters.action) {
215
+ conditions.push('action = @action');
216
+ params.action = filters.action;
217
+ }
218
+ const where = conditions.length > 0 ? `WHERE ${conditions.join(' AND ')}` : '';
219
+ const sql = `SELECT COUNT(*) as cnt FROM audit_log ${where}`;
220
+ const row = this.db.prepare(sql).get(params);
221
+ return row.cnt;
222
+ }
223
+ /**
224
+ * Get the database file path.
225
+ *
226
+ * @returns Absolute path to the SQLite database
227
+ */
228
+ getDbPath() {
229
+ return this.dbPath;
230
+ }
231
+ /**
232
+ * Check if the service is initialized.
233
+ *
234
+ * @returns True if initialize() has been called
235
+ */
236
+ isInitialized() {
237
+ return this.initialized;
238
+ }
239
+ /**
240
+ * Close the database connection.
241
+ * Safe to call multiple times.
242
+ */
243
+ close() {
244
+ if (this.db) {
245
+ this.db.close();
246
+ this.db = null;
247
+ this.stmtInsert = null;
248
+ this.stmtInsertApproval = null;
249
+ this.initialized = false;
250
+ }
251
+ }
252
+ /**
253
+ * Ensure the service is initialized before operations.
254
+ *
255
+ * @throws Error if not initialized
256
+ */
257
+ ensureInitialized() {
258
+ if (!this.initialized || !this.db) {
259
+ throw new Error('AuditLogService not initialized. Call initialize() first.');
260
+ }
261
+ }
262
+ }
263
+ //# sourceMappingURL=audit-log.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-log.service.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/audit-log.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"crewly-agent-runtime.service.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crewly-agent-runtime.service.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ import { updateAgentHeartbeat } from '../agent-heartbeat.service.js';
24
24
  import { PtyActivityTrackerService } from '../pty-activity-tracker.service.js';
25
25
  import { TokenUsageService } from '../../monitoring/token-usage.service.js';
26
26
  import { getSettingsService } from '../../settings/settings.service.js';
27
+ import { AgentStreamService } from './agent-stream.service.js';
27
28
  /**
28
29
  * Crewly Agent runtime with optional worker process isolation.
29
30
  *
@@ -302,6 +303,8 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
302
303
  const REPETITION_WINDOW = 20; // number of recent chunks to track
303
304
  const REPETITION_THRESHOLD = 5; // consecutive repeated patterns to trigger abort
304
305
  let repetitionDetected = false;
306
+ // Stream service for SSE broadcasting to frontend Dashboard
307
+ const agentStream = AgentStreamService.getInstance();
305
308
  // Build streaming callbacks that write to InProcessLogBuffer in real-time
306
309
  const streamingCallbacks = {
307
310
  onTextChunk: (chunk) => {
@@ -309,6 +312,8 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
309
312
  executionTracker.lastActivityAt = new Date();
310
313
  executionTracker.phase = 'model-thinking';
311
314
  textChunkBuffer += chunk;
315
+ // Broadcast to SSE subscribers for Dashboard streaming
316
+ agentStream.emitTextChunk(session, chunk);
312
317
  // Repetition detection: track recent chunks and check for loops
313
318
  const trimmed = chunk.trim();
314
319
  if (trimmed.length > 0) {
@@ -338,11 +343,13 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
338
343
  executionTracker.phase = 'tool-calling';
339
344
  executionTracker.currentTool = toolName;
340
345
  executionTracker.lastActivityAt = new Date();
346
+ agentStream.emitToolCallStart(session, toolName, _args);
341
347
  },
342
348
  onToolCallFinish: (toolName, args, result, _durationMs) => {
343
349
  executionTracker.toolCallsCompleted.push(toolName);
344
350
  executionTracker.currentTool = null;
345
351
  executionTracker.lastActivityAt = new Date();
352
+ agentStream.emitToolCallFinish(session, toolName, args, result, _durationMs);
346
353
  const argsPreview = JSON.stringify(args).substring(0, 120);
347
354
  this.logBuffer.append(session, 'info', `🔧 ${toolName}(${argsPreview})`);
348
355
  // For bash_exec, show the command as an extra log line for readability
@@ -355,6 +362,7 @@ export class CrewlyAgentRuntimeService extends RuntimeAgentService {
355
362
  },
356
363
  onStepFinish: (stepIndex, hasToolCalls) => {
357
364
  executionTracker.lastActivityAt = new Date();
365
+ agentStream.emitStepFinish(session, stepIndex, hasToolCalls);
358
366
  // Flush buffered text at each step boundary
359
367
  if (textChunkBuffer.trim().length > 0) {
360
368
  // Truncate very long text to keep logs readable
@@ -1 +1 @@
1
- {"version":3,"file":"crewly-agent-runtime.service.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAqB,MAAM,eAAe,CAAC;AACxD,oFAAoF;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAoB,MAAM,uBAAuB,CAAC;AAC3G,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAGxE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAO,yBAA0B,SAAQ,mBAAmB;IACxD,WAAW,GAA8B,IAAI,CAAC;IAC9C,WAAW,GAAG,KAAK,CAAC;IACpB,kBAAkB,GAAkB,IAAI,CAAC;IACzC,eAAe,CAAqB;IACpC,kBAAkB,GAAW,SAAS,CAAC;IACvC,SAAS,CAAqB;IAC9B,WAAW,CAA8B;IACzC,cAAc,GAA0C,IAAI,CAAC;IACrE,mFAAmF;IAC3E,sBAAsB,GAA2B,IAAI,CAAC;IAE9D,oCAAoC;IAEpC,kFAAkF;IAC1E,gBAAgB,GAAG,KAAK,CAAC;IACjC,sCAAsC;IAC9B,aAAa,GAAwB,IAAI,CAAC;IAClD,kEAAkE;IAC1D,YAAY,GAA6B,IAAI,CAAC;IACtD,0DAA0D;IAClD,gBAAgB,GAA8C,IAAI,CAAC;IAC3E,0DAA0D;IAClD,eAAe,GAAoC,IAAI,CAAC;IAChE,2DAA2D;IACnD,gBAAgB,GAAG,KAAK,CAAC;IAEjC,YAAY,aAAmC,EAAE,WAAmB;QAClE,KAAK,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,EAAkB,CAAC;IACvD,CAAC;IAED,8CAA8C;IAE9C;;;;OAIG;IACO,cAAc;QACtB,OAAO,aAAa,CAAC,YAA2B,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,qBAAqB,CAAC,YAAoB;QACxD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;QACzF,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;IAC3F,CAAC;IAED;;;;;OAKG;IACO,uBAAuB;QAC/B,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACO,uBAAuB;QAC/B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACO,sBAAsB;QAC9B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,2CAA2C;IAE3C;;;;;;;;;OASG;IACH,KAAK,CAAC,mBAAmB,CACvB,WAAmB,EACnB,MAAoE,EACpE,QAAiB;QAEjB,IAAI,CAAC,kBAAkB,GAAG,WAAW,CAAC;QACtC,IAAI,CAAC,eAAe,GAAG,MAAM,EAAE,QAAQ,CAAC;QACxC,IAAI,CAAC,gBAAgB,GAAG,MAAM,EAAE,gBAAgB,IAAI,KAAK,CAAC;QAE1D,+DAA+D;QAC/D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,IAAI,cAAc,CAAC,CAAC;QAEtF,kCAAkC;QAClC,MAAM,UAAU,GAAsB;YACpC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,qBAAqB,CAAC,aAAa;YAC3D,QAAQ,EAAE,MAAM,EAAE,QAAQ,IAAI,qBAAqB,CAAC,SAAS;YAC7D,WAAW;YACX,UAAU,EAAE,MAAM,EAAE,UAAU,IAAI,qBAAqB,CAAC,YAAY;YACpE,YAAY,EAAE,MAAM,EAAE,YAAY,IAAI,YAAY;YAClD,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,IAAI,qBAAqB,CAAC,oBAAoB;YAC5F,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,IAAI,qBAAqB,CAAC,oBAAoB;YAC9F,WAAW,EAAE,MAAM,EAAE,WAAW;SACjC,CAAC;QAEF,8BAA8B;QAC9B,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAE/B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAkB,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,8DAA8D;gBAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAErF,kEAAkE;QAClE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjC,+DAA+D;QAC/D,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;QAC7D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,6BAA6B,IAAI,MAAM,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAE9G,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;YACnD,WAAW;YACX,IAAI;YACJ,KAAK,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE;YACjE,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,QAAiC;QACpE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YACpF,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;QACpG,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAmB,CAAC;QAEzC,8EAA8E;QAC9E,IAAI,cAAkC,CAAC;QACvC,IAAI,YAAY,GAAG,OAAO,CAAC;QAC3B,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC7E,IAAI,eAAe,EAAE,CAAC;YACpB,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YACpC,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBAChE,WAAW,EAAE,OAAO;gBACpB,cAAc;aACf,CAAC,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;QACnD,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,IAAI,GAAG;YAC3C,CAAC,CAAC,IAAI,YAAY,GAAG;YACrB,CAAC,CAAC,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC;QAC/F,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,uBAAuB,YAAY,CAAC,MAAM,SAAS,cAAc,CAAC,CAAC,CAAC,UAAU,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC;QAE1M,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE;gBACrD,WAAW,EAAE,OAAO;gBACpB,aAAa,EAAE,YAAY,CAAC,MAAM;gBAClC,aAAa,EAAE,IAAI,CAAC,WAAY,CAAC,gBAAgB,EAAE;gBACnD,cAAc;gBACd,WAAW,EAAE,QAAQ;gBACrB,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE;aAC7D,CAAC,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAC3C,YAAY,EACZ,QAAQ,EACR,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAClB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QACjE,CAAC,CACF,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,cAAc,CAC1B,OAAe,EACf,YAAoB,EACpB,cAAuB,EACvB,QAAiC;QAEjC,MAAM,eAAe,GAAG,qBAAqB,CAAC,uBAAuB,CAAC;QACtE,MAAM,eAAe,GAAG,qBAAqB,CAAC,kBAAkB,CAAC;QAEjE,qCAAqC;QACrC,MAAM,gBAAgB,GAAG;YACvB,KAAK,EAAE,QAAkB;YACzB,WAAW,EAAE,IAAqB;YAClC,kBAAkB,EAAE,EAAc;YAClC,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,cAAc,EAAE,IAAI,IAAI,EAAE;YAC1B,cAAc,EAAE,YAAY,CAAC,MAAM,IAAI,GAAG;gBACxC,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE;SAC7F,CAAC;QAEF,kFAAkF;QAClF,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,gBAAgB,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,eAAe,GAAG,IAAI,mBAAmB,EAAE;gBAC1F,WAAW,EAAE,OAAO;gBACpB,KAAK,EAAE,gBAAgB,CAAC,KAAK;gBAC7B,kBAAkB,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,MAAM;gBAC9D,cAAc,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;aAC/C,CAAC,CAAC;QACL,CAAC,EAAE,eAAe,CAAC,CAAC;QAEpB,gFAAgF;QAChF,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,sBAAsB,GAAG,eAAe,CAAC;QAE9C,wEAAwE;QACxE,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,oBAAoB,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,eAAe,GAAG,IAAI,uBAAuB,EAAE;gBACnG,WAAW,EAAE,OAAO;gBACpB,KAAK,EAAE,gBAAgB,CAAC,KAAK;gBAC7B,WAAW,EAAE,gBAAgB,CAAC,WAAW;gBACzC,kBAAkB,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,MAAM;gBAC9D,cAAc,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;gBAC9C,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE;aAC7D,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EACpC,oBAAoB,eAAe,GAAG,IAAI,4CAA4C;kBACpF,UAAU,gBAAgB,CAAC,KAAK,sBAAsB,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC;YACxG,eAAe,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC,EAAE,eAAe,CAAC,CAAC;QAEpB,6EAA6E;QAC7E,IAAI,eAAe,GAAG,EAAE,CAAC;QAEzB,4EAA4E;QAC5E,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,EAAE,CAAC,CAAG,mCAAmC;QACnE,MAAM,oBAAoB,GAAG,CAAC,CAAC,CAAC,iDAAiD;QACjF,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAE/B,0EAA0E;QAC1E,MAAM,kBAAkB,GAA4B;YAClD,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC7B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,gBAAgB,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;oBAC7C,gBAAgB,CAAC,KAAK,GAAG,gBAAgB,CAAC;oBAC1C,eAAe,IAAI,KAAK,CAAC;oBAEzB,gEAAgE;oBAChE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC7B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC3B,IAAI,YAAY,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;4BAC5C,YAAY,CAAC,KAAK,EAAE,CAAC;wBACvB,CAAC;wBACD,8DAA8D;wBAC9D,IAAI,YAAY,CAAC,MAAM,IAAI,oBAAoB,EAAE,CAAC;4BAChD,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,oBAAoB,CAAC,CAAC;4BACvD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC/C,IAAI,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gCACnC,kBAAkB,GAAG,IAAI,CAAC;gCAC1B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,iCAAiC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,oBAAoB,yBAAyB,CAAC,CAAC;gCAC7J,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kDAAkD,EAAE;oCACnE,WAAW,EAAE,OAAO;oCACpB,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;oCACxC,KAAK,EAAE,oBAAoB;iCAC5B,CAAC,CAAC;gCACH,eAAe,CAAC,KAAK,EAAE,CAAC;4BAC1B,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YACD,eAAe,EAAE,CAAC,QAAgB,EAAE,KAA8B,EAAE,EAAE;gBACpE,gBAAgB,CAAC,KAAK,GAAG,cAAc,CAAC;gBACxC,gBAAgB,CAAC,WAAW,GAAG,QAAQ,CAAC;gBACxC,gBAAgB,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;YAC/C,CAAC;YACD,gBAAgB,EAAE,CAAC,QAAgB,EAAE,IAA6B,EAAE,MAAe,EAAE,WAAmB,EAAE,EAAE;gBAC1G,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnD,gBAAgB,CAAC,WAAW,GAAG,IAAI,CAAC;gBACpC,gBAAgB,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC3D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,IAAI,WAAW,GAAG,CAAC,CAAC;gBAEzE,uEAAuE;gBACvE,IAAI,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC1D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,UAAU,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBAED,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,aAAa,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,YAAY,EAAE,CAAC,SAAiB,EAAE,YAAqB,EAAE,EAAE;gBACzD,gBAAgB,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;gBAE7C,4CAA4C;gBAC5C,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtC,gDAAgD;oBAChD,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;oBACpC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC1E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,EAAE,CAAC,CAAC;oBACxD,eAAe,GAAG,EAAE,CAAC;gBACvB,CAAC;gBAED,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,gBAAgB,CAAC,KAAK,GAAG,gBAAgB,CAAC;gBAC5C,CAAC;YACH,CAAC;SACF,CAAC;QAEF,IAAI,CAAC;YACH,gBAAgB,CAAC,KAAK,GAAG,gBAAgB,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAY,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE;gBACjF,WAAW,EAAE,eAAe,CAAC,MAAM;gBACnC,SAAS,EAAE,kBAAkB;aAC9B,CAAC,CAAC;YAEH,YAAY,CAAC,YAAY,CAAC,CAAC;YAC3B,YAAY,CAAC,gBAAgB,CAAC,CAAC;YAC/B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;YAEnC,oEAAoE;YACpE,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,8DAA8D;sBAC5D,sBAAsB,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CACnF,CAAC;YACJ,CAAC;YAED,4DAA4D;YAC5D,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;gBACpC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC1E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,EAAE,CAAC,CAAC;gBACxD,eAAe,GAAG,EAAE,CAAC;YACvB,CAAC;YAED,8EAA8E;YAC9E,+EAA+E;YAC/E,IAAI,IAAI,CAAC,WAAY,CAAC,eAAe,EAAE,CAAC;gBACtC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBAClC,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;oBACtD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC9D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,QAAQ,IAAI,WAAW,GAAG,CAAC,CAAC;oBAC5E,MAAM,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACvF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,aAAa,EAAE,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;YAED,uBAAuB;YACvB,gBAAgB,CAAC,KAAK,GAAG,UAAU,CAAC;YACpC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;YAC9E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,SAAS,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC,CAAC;YAC/H,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;YAEvG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBACpC,WAAW,EAAE,OAAO;gBACpB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM;gBAClC,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,YAAY,EAAE,MAAM,CAAC,YAAY;aAClC,CAAC,CAAC;YAEH,8CAA8C;YAC9C,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACzD,+DAA+D;YACjE,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,YAAY,CAAC,CAAC;YAC3B,YAAY,CAAC,gBAAgB,CAAC,CAAC;YAC/B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;YAEnC,6DAA6D;YAC7D,+EAA+E;YAC/E,IAAI,oBAAoB,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,sCAAsC,eAAe,GAAG,IAAI,KAAK;sBAC/D,UAAU,gBAAgB,CAAC,KAAK,sBAAsB,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,EAAE,CACrG,CAAC;YACJ,CAAC;YAED,oEAAoE;YACpE,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,IAAI,KAAK,CACtB,8DAA8D;sBAC5D,sBAAsB,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CACnF,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,MAAM,MAAM,CAAC;YACf,CAAC;YAED,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,MAAM,EAAE,CAAC,CAAC;YAClE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,yBAAyB,CAAC,OAAe,EAAE,MAAsB;QAC7E,MAAM,QAAQ,GAAG,MAAM,kBAAkB,EAAE,CAAC,WAAW,EAAE,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa;YAAE,OAAO;QAE5C,iBAAiB,CAAC,WAAW,EAAE,CAAC,WAAW,CACzC,OAAO,EACP,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,KAAK,EAClB,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,IAAI,CAAC,kBAAkB,CACxB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;QACzF,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;IAC3F,CAAC;IAED;;;;;;;;OAQG;IACH,eAAe;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAExC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAClD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACrC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBACvD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC9B,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,wBAAwB,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC;QACpC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAEnC,+EAA+E;QAC/E,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;YACrD,WAAW,EAAE,IAAI,CAAC,kBAAkB;YACpC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY;SACtD,CAAC,CAAC;QAEH,mEAAmE;QACnE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAEzB,uBAAuB;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,sCAAsC;QACtC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,4BAA4B,CAAC,CAAC;YACrF,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,qCAAqC;IAErC;;;;;;;;OAQG;IACH,KAAK,CAAC,SAAS;QACb,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAmB,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,iCAAiC,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;QAE3E,uBAAuB;QACvB,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,oCAAoC;QACpC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE/C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,4BAA4B,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,IAAI,CAAC;IACzC,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,gBAAgB,CAAC,MAAyB;QACtD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAE7C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE;gBACxC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;gBACtC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;aACxB,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;gBAClC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,MAAM,CAAC,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;YAC7D,CAAC,EAAE,MAAM,CAAC,CAAC;YAEX,IAAI,YAAY,GAAG,KAAK,CAAC;YAEzB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAkB,EAAE,EAAE;gBACtD,uBAAuB;gBACvB,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC1C,YAAY,GAAG,IAAI,CAAC;oBACpB,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC1B,OAAO,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAK,GAAyB,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBAC/F,YAAY,GAAG,IAAI,CAAC;oBACpB,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC1B,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC7B,OAAO;gBACT,CAAC;gBAED,0BAA0B;gBAC1B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;gBAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;oBACxC,WAAW,EAAE,IAAI,CAAC,kBAAkB;oBACpC,IAAI;oBACJ,MAAM;iBACP,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,YAAY,GAAG,IAAI,CAAC;oBACpB,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC1B,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,IAAI,YAAY,MAAM,GAAG,CAAC,CAAC,CAAC;gBAClF,CAAC;gBAED,yBAAyB;gBACzB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,4CAA4C,IAAI,YAAY,MAAM,GAAG,CAAC,CAAC,CAAC;oBACvG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;oBAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;oBAC5B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAChC,CAAC;gBAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gBAE1B,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,+BAA+B,IAAI,YAAY,MAAM,GAAG,CAAC,CAAC;gBACnH,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;oBACxC,WAAW,EAAE,IAAI,CAAC,kBAAkB;oBACpC,KAAK,EAAE,GAAG,CAAC,OAAO;iBACnB,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,YAAY,GAAG,IAAI,CAAC;oBACpB,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC1B,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,6CAA6C;YAC7C,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACrD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBACpC,IAAI,IAAI,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACpC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,EAAE,mBAAmB,IAAI,EAAE,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACrD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBACpC,IAAI,IAAI,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACpC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,mBAAmB,IAAI,EAAE,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,gCAAgC;YAChC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;OAWG;IACK,uBAAuB,CAC7B,OAAe,EACf,YAAoB,EACpB,cAAuB,EACvB,SAAkC;QAElC,OAAO,IAAI,OAAO,CAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;gBACzD,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;gBAClD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;gBACjC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAE5B,uBAAuB;gBACvB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC9E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,SAAS,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC,CAAC;gBAC/H,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;gBAEvG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;oBAC7C,WAAW,EAAE,OAAO;oBACpB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM;oBAClC,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,YAAY,EAAE,MAAM,CAAC,YAAY;iBAClC,CAAC,CAAC;gBAEH,qBAAqB;gBACrB,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAEhE,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC;YAEF,IAAI,CAAC,eAAe,GAAG,CAAC,KAAK,EAAE,EAAE;gBAC/B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAClF,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC;YAEF,IAAI,CAAC,YAAY,CAAC;gBAChB,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,YAAY;gBACrB,cAAc;gBACd,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACK,mBAAmB,CAAC,GAAkB;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAExC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC1B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAClC,CAAC;gBACD,MAAM;YAER,KAAK,OAAO;gBACV,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7C,CAAC;qBAAM,IAAI,OAAO,EAAE,CAAC;oBACnB,mDAAmD;oBACnD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBACxE,CAAC;gBACD,MAAM;YAER,KAAK,KAAK;gBACR,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvE,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ;gBACX,IAAI,CAAC,OAAO;oBAAE,MAAM;gBACpB,QAAQ,GAAG,CAAC,KAAK,EAAE,CAAC;oBAClB,KAAK,MAAM;wBACT,0DAA0D;wBAC1D,MAAM;oBACR,KAAK,WAAW;wBACd,0BAA0B;wBAC1B,MAAM;oBACR,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;wBAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;wBAC3D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,IAAI,WAAW,GAAG,CAAC,CAAC;wBACzE,IAAI,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;4BAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;4BAC1D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,UAAU,EAAE,CAAC,CAAC;wBAC9D,CAAC;wBACD,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;wBACjF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,aAAa,EAAE,CAAC,CAAC;wBAChE,MAAM;oBACR,CAAC;oBACD,KAAK,YAAY;wBACf,4CAA4C;wBAC5C,MAAM;gBACV,CAAC;gBACD,MAAM;YAER,KAAK,OAAO;gBACV,0CAA0C;gBAC1C,MAAM;YAER;gBACE,MAAM;QACV,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,GAAkB;QACrC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;YACvD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAEhC,8BAA8B;QAC9B,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;gBACjC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;QAED,qCAAqC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;QACnC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC;gBACH,IAAI,GAAG;oBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,eAAe;YACjB,CAAC;QACH,CAAC,EAAE,KAAK,CAAC,CAAC;QACV,SAAS,CAAC,KAAK,EAAE,CAAC;QAElB,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;QACxC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAE9B,yBAAyB;QACzB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH;;OAEG;IACH,gBAAgB,GAAkB,IAAI,CAAC;IAE/B,kBAAkB;QACxB,IAAI,IAAI,CAAC,gBAAgB;YAAE,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAExD,yDAAyD;QACzD,uEAAuE;QACvE,yFAAyF;QACzF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAC/C,CAAC;IAED,8BAA8B;IAE9B;;;;;;;;;OASG;IACK,cAAc,CAAC,WAAmB;QACxC,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,6DAA6D;YAC7D,sEAAsE;YACtE,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE;oBAC1D,WAAW;oBACX,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,iEAAiE;YACjE,IAAI,CAAC;gBACH,yBAAyB,CAAC,WAAW,EAAE,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACzE,CAAC;YAAC,MAAM,CAAC;gBACP,gDAAgD;YAClD,CAAC;QACH,CAAC,EAAE,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;QAEhD,kDAAkD;QAClD,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;QAE/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;YAChD,WAAW;YACX,UAAU,EAAE,qBAAqB,CAAC,qBAAqB;SACxD,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,gBAAgB,CAAC,WAAmB,cAAc;QAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QACzF,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;gBACxC,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE;gBAC/D,UAAU;gBACV,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,OAAO,yEAAyE,CAAC;QACnF,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,yBAAyB,CAAC,WAAmB,cAAc;QAC/D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAa,CAAC,UAAU,CAAC,CAAC;QAExC,2BAA2B;QAC3B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC5D,IAAI,aAAa,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,0BAA0B,aAAa,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,2BAA2B;QAC3B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACvD,IAAI,aAAa,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,0BAA0B,aAAa,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,uBAAuB;QACvB,QAAQ,CAAC,IAAI,CACX,qBAAqB;cACnB,gDAAgD;cAChD,wDAAwD;cACxD,oDAAoD;cACpD,wCAAwC;cACxC,kEAAkE;cAClE,qBAAqB;cACrB,qGAAqG;cACrG,sGAAsG,CACzG,CAAC;QAEF,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,wBAAwB;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAC3B,OAAO,EAAE,EACT,gBAAgB,CAAC,KAAK,CAAC,WAAW,EAClC,gBAAgB,CAAC,KAAK,CAAC,UAAU,EACjC,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAC3C,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,MAAM,GAAG,QAAQ,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YACtF,OAAO,OAAO,GAAG,SAAS,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,mBAAmB;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,OAAO,EAAE,EACT,gBAAgB,CAAC,KAAK,CAAC,WAAW,EAClC,eAAe,CAAC,KAAK,CAAC,UAAU,CACjC,CAAC;QAEF,IAAI,OAAiB,CAAC;QACtB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;YAChF,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA8D,CAAC;gBAC9F,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC;gBACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,SAAS,CAAC;gBAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC;YAClD,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;YAC5C,CAAC;QACH,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3E,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;CACF"}
1
+ {"version":3,"file":"crewly-agent-runtime.service.js","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Environment Isolation Service
3
+ *
4
+ * Strips sensitive environment variables (API keys, tokens, secrets) from
5
+ * child process environments when agents execute bash commands. Maintains
6
+ * an allowlist of safe variables and provides a mechanism to explicitly
7
+ * pass specific vars when needed.
8
+ *
9
+ * @module services/agent/crewly-agent/env-isolation.service
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const isolation = new EnvIsolationService();
14
+ * const safeEnv = isolation.createSafeEnv(process.env);
15
+ * // safeEnv has PATH, HOME, etc. but no ANTHROPIC_API_KEY
16
+ *
17
+ * const withOverrides = isolation.createSafeEnv(process.env, ['MY_CUSTOM_VAR']);
18
+ * // safeEnv + MY_CUSTOM_VAR explicitly included
19
+ * ```
20
+ */
21
+ /**
22
+ * Environment variables that are always safe to pass to child processes.
23
+ * These are essential for basic shell operation and don't contain secrets.
24
+ */
25
+ export declare const SAFE_ENV_ALLOWLIST: readonly string[];
26
+ /**
27
+ * Patterns that identify sensitive environment variable names.
28
+ * Variables matching these patterns are stripped from child processes.
29
+ */
30
+ export declare const SENSITIVE_ENV_PATTERNS: readonly RegExp[];
31
+ /**
32
+ * Service that creates sanitized environment objects for child processes.
33
+ */
34
+ export declare class EnvIsolationService {
35
+ private readonly allowlist;
36
+ private readonly sensitivePatterns;
37
+ /**
38
+ * Creates a new EnvIsolationService.
39
+ *
40
+ * @param additionalSafeVars - Extra variable names to always allow
41
+ * @param additionalSensitivePatterns - Extra patterns to block
42
+ */
43
+ constructor(additionalSafeVars?: string[], additionalSensitivePatterns?: RegExp[]);
44
+ /**
45
+ * Creates a safe environment object by filtering out sensitive variables.
46
+ *
47
+ * Strategy:
48
+ * 1. Start with all env vars
49
+ * 2. Keep vars on the allowlist
50
+ * 3. Remove vars matching sensitive patterns
51
+ * 4. Add explicitly requested vars (overrides)
52
+ *
53
+ * @param sourceEnv - Source environment (typically process.env)
54
+ * @param explicitVars - Variable names to explicitly include even if they'd be filtered
55
+ * @returns Sanitized environment object safe for child processes
56
+ */
57
+ createSafeEnv(sourceEnv: Record<string, string | undefined>, explicitVars?: string[]): Record<string, string>;
58
+ /**
59
+ * Checks if an environment variable name matches any sensitive pattern.
60
+ *
61
+ * @param varName - Environment variable name to check
62
+ * @returns True if the variable is considered sensitive
63
+ */
64
+ isSensitive(varName: string): boolean;
65
+ /**
66
+ * Returns the list of sensitive variable names found in the given environment.
67
+ * Useful for audit logging.
68
+ *
69
+ * @param sourceEnv - Environment to scan
70
+ * @returns Array of sensitive variable names found
71
+ */
72
+ findSensitiveVars(sourceEnv: Record<string, string | undefined>): string[];
73
+ /**
74
+ * Returns the current allowlist as an array.
75
+ * @returns Copy of the safe variable allowlist
76
+ */
77
+ getAllowlist(): string[];
78
+ }
79
+ //# sourceMappingURL=env-isolation.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-isolation.service.d.ts","sourceRoot":"","sources":["../../../../../../../backend/src/services/agent/crewly-agent/env-isolation.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,MAAM,EAwEtC,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EA0C1C,CAAC;AAEX;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAEtD;;;;;OAKG;gBAED,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAC7B,2BAA2B,CAAC,EAAE,MAAM,EAAE;IAQxC;;;;;;;;;;;;OAYG;IACH,aAAa,CACX,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAC7C,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA+BzB;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIrC;;;;;;OAMG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,EAAE;IAI1E;;;OAGG;IACH,YAAY,IAAI,MAAM,EAAE;CAGzB"}