youmd 0.10.2 → 0.12.0

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 (205) hide show
  1. package/dist/commands/brain.d.ts.map +1 -1
  2. package/dist/commands/brain.js +91 -28
  3. package/dist/commands/brain.js.map +1 -1
  4. package/dist/commands/chat.d.ts.map +1 -1
  5. package/dist/commands/chat.js +6 -1
  6. package/dist/commands/chat.js.map +1 -1
  7. package/dist/commands/conversations.d.ts +5 -0
  8. package/dist/commands/conversations.d.ts.map +1 -0
  9. package/dist/commands/conversations.js +116 -0
  10. package/dist/commands/conversations.js.map +1 -0
  11. package/dist/commands/doctor.d.ts +1 -0
  12. package/dist/commands/doctor.d.ts.map +1 -1
  13. package/dist/commands/doctor.js +16 -1
  14. package/dist/commands/doctor.js.map +1 -1
  15. package/dist/commands/founder.d.ts +13 -0
  16. package/dist/commands/founder.d.ts.map +1 -0
  17. package/dist/commands/founder.js +189 -0
  18. package/dist/commands/founder.js.map +1 -0
  19. package/dist/commands/handoff.d.ts +5 -0
  20. package/dist/commands/handoff.d.ts.map +1 -0
  21. package/dist/commands/handoff.js +432 -0
  22. package/dist/commands/handoff.js.map +1 -0
  23. package/dist/commands/orchestrate.d.ts +15 -0
  24. package/dist/commands/orchestrate.d.ts.map +1 -1
  25. package/dist/commands/orchestrate.js +294 -0
  26. package/dist/commands/orchestrate.js.map +1 -1
  27. package/dist/commands/project.d.ts.map +1 -1
  28. package/dist/commands/project.js +8 -1
  29. package/dist/commands/project.js.map +1 -1
  30. package/dist/commands/reconcile.d.ts +15 -0
  31. package/dist/commands/reconcile.d.ts.map +1 -0
  32. package/dist/commands/reconcile.js +260 -0
  33. package/dist/commands/reconcile.js.map +1 -0
  34. package/dist/commands/session.d.ts +28 -0
  35. package/dist/commands/session.d.ts.map +1 -0
  36. package/dist/commands/session.js +895 -0
  37. package/dist/commands/session.js.map +1 -0
  38. package/dist/commands/stack.d.ts +2 -0
  39. package/dist/commands/stack.d.ts.map +1 -1
  40. package/dist/commands/stack.js +26 -0
  41. package/dist/commands/stack.js.map +1 -1
  42. package/dist/commands/sync.d.ts.map +1 -1
  43. package/dist/commands/sync.js +11 -0
  44. package/dist/commands/sync.js.map +1 -1
  45. package/dist/commands/tasks.d.ts +57 -0
  46. package/dist/commands/tasks.d.ts.map +1 -1
  47. package/dist/commands/tasks.js +236 -31
  48. package/dist/commands/tasks.js.map +1 -1
  49. package/dist/generated/capability-registry.d.ts +311 -71
  50. package/dist/generated/capability-registry.d.ts.map +1 -1
  51. package/dist/generated/capability-registry.js +346 -71
  52. package/dist/generated/capability-registry.js.map +1 -1
  53. package/dist/index.js +113 -2
  54. package/dist/index.js.map +1 -1
  55. package/dist/lib/api.d.ts +362 -1
  56. package/dist/lib/api.d.ts.map +1 -1
  57. package/dist/lib/api.js +171 -0
  58. package/dist/lib/api.js.map +1 -1
  59. package/dist/lib/brain/adapters.d.ts +20 -1
  60. package/dist/lib/brain/adapters.d.ts.map +1 -1
  61. package/dist/lib/brain/adapters.js +113 -2
  62. package/dist/lib/brain/adapters.js.map +1 -1
  63. package/dist/lib/brain/approval-key-trust.d.ts +29 -0
  64. package/dist/lib/brain/approval-key-trust.d.ts.map +1 -0
  65. package/dist/lib/brain/approval-key-trust.js +139 -0
  66. package/dist/lib/brain/approval-key-trust.js.map +1 -0
  67. package/dist/lib/brain/cache.d.ts +2 -2
  68. package/dist/lib/brain/cache.d.ts.map +1 -1
  69. package/dist/lib/brain/cache.js +4 -4
  70. package/dist/lib/brain/cache.js.map +1 -1
  71. package/dist/lib/brain/content.d.ts +56 -0
  72. package/dist/lib/brain/content.d.ts.map +1 -0
  73. package/dist/lib/brain/content.js +362 -0
  74. package/dist/lib/brain/content.js.map +1 -0
  75. package/dist/lib/brain/descriptor-validator.d.ts +11 -0
  76. package/dist/lib/brain/descriptor-validator.d.ts.map +1 -0
  77. package/dist/lib/brain/descriptor-validator.js +185 -0
  78. package/dist/lib/brain/descriptor-validator.js.map +1 -0
  79. package/dist/lib/brain/discovery.d.ts.map +1 -1
  80. package/dist/lib/brain/discovery.js +103 -60
  81. package/dist/lib/brain/discovery.js.map +1 -1
  82. package/dist/lib/brain/index.d.ts +2 -0
  83. package/dist/lib/brain/index.d.ts.map +1 -1
  84. package/dist/lib/brain/index.js +8 -2
  85. package/dist/lib/brain/index.js.map +1 -1
  86. package/dist/lib/brain/proposal.d.ts +53 -5
  87. package/dist/lib/brain/proposal.d.ts.map +1 -1
  88. package/dist/lib/brain/proposal.js +341 -64
  89. package/dist/lib/brain/proposal.js.map +1 -1
  90. package/dist/lib/brain/safe-file.d.ts +25 -1
  91. package/dist/lib/brain/safe-file.d.ts.map +1 -1
  92. package/dist/lib/brain/safe-file.js +250 -30
  93. package/dist/lib/brain/safe-file.js.map +1 -1
  94. package/dist/lib/brain/safe-open.d.ts +2 -0
  95. package/dist/lib/brain/safe-open.d.ts.map +1 -0
  96. package/dist/lib/brain/safe-open.js +77 -0
  97. package/dist/lib/brain/safe-open.js.map +1 -0
  98. package/dist/lib/brain/safety.d.ts.map +1 -1
  99. package/dist/lib/brain/safety.js +5 -0
  100. package/dist/lib/brain/safety.js.map +1 -1
  101. package/dist/lib/brain/staged-apply.d.ts +2 -1
  102. package/dist/lib/brain/staged-apply.d.ts.map +1 -1
  103. package/dist/lib/brain/staged-apply.js +6 -3
  104. package/dist/lib/brain/staged-apply.js.map +1 -1
  105. package/dist/lib/brain/store.d.ts +3 -0
  106. package/dist/lib/brain/store.d.ts.map +1 -1
  107. package/dist/lib/brain/store.js +68 -0
  108. package/dist/lib/brain/store.js.map +1 -1
  109. package/dist/lib/brain/sync.d.ts +87 -0
  110. package/dist/lib/brain/sync.d.ts.map +1 -0
  111. package/dist/lib/brain/sync.js +238 -0
  112. package/dist/lib/brain/sync.js.map +1 -0
  113. package/dist/lib/brain/types.d.ts +23 -0
  114. package/dist/lib/brain/types.d.ts.map +1 -1
  115. package/dist/lib/config.d.ts +7 -0
  116. package/dist/lib/config.d.ts.map +1 -1
  117. package/dist/lib/config.js +3 -0
  118. package/dist/lib/config.js.map +1 -1
  119. package/dist/lib/daemon.js +1 -1
  120. package/dist/lib/daemon.js.map +1 -1
  121. package/dist/lib/goalRegistryFile.d.ts +169 -0
  122. package/dist/lib/goalRegistryFile.d.ts.map +1 -0
  123. package/dist/lib/goalRegistryFile.js +518 -0
  124. package/dist/lib/goalRegistryFile.js.map +1 -0
  125. package/dist/lib/goalsFile.d.ts +101 -0
  126. package/dist/lib/goalsFile.d.ts.map +1 -0
  127. package/dist/lib/goalsFile.js +413 -0
  128. package/dist/lib/goalsFile.js.map +1 -0
  129. package/dist/lib/handoff.d.ts +170 -0
  130. package/dist/lib/handoff.d.ts.map +1 -0
  131. package/dist/lib/handoff.js +316 -0
  132. package/dist/lib/handoff.js.map +1 -0
  133. package/dist/lib/machine-identity.d.ts +2 -0
  134. package/dist/lib/machine-identity.d.ts.map +1 -1
  135. package/dist/lib/machine-identity.js +13 -6
  136. package/dist/lib/machine-identity.js.map +1 -1
  137. package/dist/lib/onboarding.d.ts +4 -1
  138. package/dist/lib/onboarding.d.ts.map +1 -1
  139. package/dist/lib/onboarding.js +11 -3
  140. package/dist/lib/onboarding.js.map +1 -1
  141. package/dist/lib/orchestrator/loop.d.ts +7 -0
  142. package/dist/lib/orchestrator/loop.d.ts.map +1 -1
  143. package/dist/lib/orchestrator/loop.js +53 -0
  144. package/dist/lib/orchestrator/loop.js.map +1 -1
  145. package/dist/lib/orchestrator/run-journal.d.ts +178 -0
  146. package/dist/lib/orchestrator/run-journal.d.ts.map +1 -0
  147. package/dist/lib/orchestrator/run-journal.js +912 -0
  148. package/dist/lib/orchestrator/run-journal.js.map +1 -0
  149. package/dist/lib/orchestrator/supervisor.d.ts +11 -0
  150. package/dist/lib/orchestrator/supervisor.d.ts.map +1 -1
  151. package/dist/lib/orchestrator/supervisor.js +304 -116
  152. package/dist/lib/orchestrator/supervisor.js.map +1 -1
  153. package/dist/lib/orchestrator/tools.d.ts +2 -0
  154. package/dist/lib/orchestrator/tools.d.ts.map +1 -1
  155. package/dist/lib/orchestrator/tools.js +214 -1
  156. package/dist/lib/orchestrator/tools.js.map +1 -1
  157. package/dist/lib/redact.d.ts.map +1 -1
  158. package/dist/lib/redact.js +31 -6
  159. package/dist/lib/redact.js.map +1 -1
  160. package/dist/lib/remote-agent-event.d.ts +19 -0
  161. package/dist/lib/remote-agent-event.d.ts.map +1 -0
  162. package/dist/lib/remote-agent-event.js +85 -0
  163. package/dist/lib/remote-agent-event.js.map +1 -0
  164. package/dist/lib/remote-command.d.ts.map +1 -1
  165. package/dist/lib/remote-command.js +19 -0
  166. package/dist/lib/remote-command.js.map +1 -1
  167. package/dist/lib/remote-executor.d.ts +7 -1
  168. package/dist/lib/remote-executor.d.ts.map +1 -1
  169. package/dist/lib/remote-executor.js +391 -0
  170. package/dist/lib/remote-executor.js.map +1 -1
  171. package/dist/lib/sessionCheckpoint.d.ts +104 -0
  172. package/dist/lib/sessionCheckpoint.d.ts.map +1 -0
  173. package/dist/lib/sessionCheckpoint.js +191 -0
  174. package/dist/lib/sessionCheckpoint.js.map +1 -0
  175. package/dist/lib/sessionHandoff.d.ts +47 -0
  176. package/dist/lib/sessionHandoff.d.ts.map +1 -0
  177. package/dist/lib/sessionHandoff.js +305 -0
  178. package/dist/lib/sessionHandoff.js.map +1 -0
  179. package/dist/lib/stream.d.ts +3 -1
  180. package/dist/lib/stream.d.ts.map +1 -1
  181. package/dist/lib/stream.js +8 -3
  182. package/dist/lib/stream.js.map +1 -1
  183. package/dist/lib/taskLedgerProposal.d.ts +102 -0
  184. package/dist/lib/taskLedgerProposal.d.ts.map +1 -0
  185. package/dist/lib/taskLedgerProposal.js +408 -0
  186. package/dist/lib/taskLedgerProposal.js.map +1 -0
  187. package/dist/lib/tasksFile.d.ts +23 -2
  188. package/dist/lib/tasksFile.d.ts.map +1 -1
  189. package/dist/lib/tasksFile.js +122 -10
  190. package/dist/lib/tasksFile.js.map +1 -1
  191. package/dist/mcp/registry.d.ts.map +1 -1
  192. package/dist/mcp/registry.js +110 -0
  193. package/dist/mcp/registry.js.map +1 -1
  194. package/native/prebuilds/darwin-universal/youmd_safe_open.node +0 -0
  195. package/native/safe-open/youmd_safe_open.c +224 -0
  196. package/package.json +11 -3
  197. package/scripts/build-safe-open.mjs +63 -0
  198. package/scripts/skillstack-sync/com.you.context-sync.plist +1 -1
  199. package/scripts/skillstack-sync/com.you.identity-sync.plist +1 -1
  200. package/scripts/skillstack-sync/com.you.orchestrator-watch.plist +1 -1
  201. package/scripts/skillstack-sync/com.you.realtime-sync.plist +7 -1
  202. package/scripts/skillstack-sync/com.you.skillstack-sync.plist +1 -1
  203. package/scripts/skillstack-sync/context-sync.sh +19 -7
  204. package/scripts/skillstack-sync/install-daemons-linux.sh +6 -0
  205. package/scripts/smoke-safe-open-node.cjs +50 -0
@@ -49,6 +49,7 @@ const os = __importStar(require("os"));
49
49
  const path = __importStar(require("path"));
50
50
  const supervisor_1 = require("./supervisor");
51
51
  const capabilities_1 = require("./capabilities");
52
+ const run_journal_1 = require("./run-journal");
52
53
  const config_1 = require("../config");
53
54
  const remote_command_1 = require("../remote-command");
54
55
  const api_1 = require("../api");
@@ -118,6 +119,7 @@ const lastSeenWorkerTail = new Map();
118
119
  function buildOrchestratorTools(opts = {}) {
119
120
  const host = opts.host || os.hostname();
120
121
  const cwd = opts.cwd || process.cwd();
122
+ const journalOptions = { dir: opts.runJournalDir };
121
123
  return [
122
124
  {
123
125
  name: "spawn_agent",
@@ -128,30 +130,86 @@ function buildOrchestratorTools(opts = {}) {
128
130
  goal: "the task prompt for the worker",
129
131
  project: "(optional) You.md project name or absolute path to run in",
130
132
  dir: "(optional, local only) explicit working directory (overrides project)",
131
- machine: "(optional) remote machine hostname to run on instead of this host",
133
+ machine: "(optional, ungoverned runs only until remote worker identity is attributable) remote machine hostname to run on instead of this host",
134
+ run_id: "(optional) stable governed run id; when set, role is also required",
135
+ role: "(required with run_id) planner | specialist | qa | design | reviewer",
136
+ task_id: "(optional) You.md task id bound to this governed run",
137
+ session_id: "(set by the orchestrator loop) stable session id bound to this governed run",
138
+ max_attempts: "(optional) bounded reviewer retry budget, default 3",
139
+ design_applicability: '(required for role=planner) { status: "required" | "not_applicable", reason: "why" }',
140
+ max_worker_assignments: "(optional) deterministic run budget, default 20, maximum 100",
141
+ max_evidence_items: "(optional) typed evidence budget, default 64, maximum 256",
142
+ harness_proof: "(required only for a governed run with an explicit harness) concise capability or environment evidence for that harness choice",
132
143
  },
133
144
  run: async (args) => {
134
145
  // Models routinely reach for `task`/`prompt` instead of `goal` — accept them.
135
146
  const goal = String(args.goal || args.task || args.prompt || args.instructions || "").trim();
136
147
  if (!goal)
137
148
  return "error: spawn_agent requires a non-empty goal";
149
+ const runId = String(args.run_id || "").trim();
150
+ const role = String(args.role || "").trim().toLowerCase();
151
+ if ((runId && !role) || (!runId && role)) {
152
+ return "error: spawn_agent requires run_id and role together";
153
+ }
154
+ if (role && !(0, run_journal_1.isRunWorkerRole)(role)) {
155
+ return `error: spawn_agent role must be one of: ${run_journal_1.RUN_WORKER_ROLES.join(", ")}`;
156
+ }
157
+ let designApplicability;
158
+ if (runId && role === "planner") {
159
+ const raw = args.design_applicability;
160
+ if (!raw || typeof raw !== "object" || Array.isArray(raw)) {
161
+ return "error: strict planner assignment requires design_applicability with status and reason";
162
+ }
163
+ const row = raw;
164
+ const status = String(row.status || "");
165
+ const reason = String(row.reason || "").trim();
166
+ if ((status !== "required" && status !== "not_applicable") || !reason) {
167
+ return "error: design_applicability.status must be required|not_applicable and reason must be non-empty";
168
+ }
169
+ designApplicability = { status, reason };
170
+ }
171
+ if (runId && args.machine) {
172
+ return "error: governed run journals currently require local workers; retry without machine (remote reviewer state is not yet attributable)";
173
+ }
138
174
  // Capability-map routing: an explicit harness is honored unchanged; when absent, the You Agent picks
139
175
  // the executor deterministically from the merged map (defaults + user overrides).
140
176
  let harness;
141
177
  let pickedNote = "";
178
+ let capabilityReason = "";
179
+ let harnessMode = "auto";
142
180
  if (args.harness) {
143
181
  harness = String(args.harness);
182
+ harnessMode = "explicit";
144
183
  }
145
184
  else {
146
185
  const pick = (0, capabilities_1.pickHarness)(goal);
147
186
  harness = pick.harness;
187
+ harnessMode = "auto";
188
+ capabilityReason = pick.reason;
148
189
  pickedNote = ` — auto-picked ${pick.harness} (${pick.reason})`;
149
190
  }
191
+ const preflight = runId
192
+ ? {
193
+ mode: harnessMode,
194
+ harness,
195
+ host,
196
+ ...(capabilityReason ? { capabilityReason } : {}),
197
+ ...(args.harness_proof ? { proof: String(args.harness_proof) } : {}),
198
+ }
199
+ : undefined;
200
+ if (runId) {
201
+ const preflightError = (0, run_journal_1.validateAssignmentPreflight)(preflight);
202
+ if (preflightError)
203
+ return `error: ${preflightError}`;
204
+ }
150
205
  if (args.machine) {
151
206
  const remote = await runRemoteAgentAction(String(args.machine), "agent.spawn", {
152
207
  harness,
153
208
  goal,
154
209
  project: args.project ? String(args.project) : undefined,
210
+ run_id: runId || undefined,
211
+ role: role || undefined,
212
+ task_id: args.task_id ? String(args.task_id) : undefined,
155
213
  });
156
214
  return `${remote}${pickedNote}`;
157
215
  }
@@ -168,9 +226,119 @@ function buildOrchestratorTools(opts = {}) {
168
226
  });
169
227
  if (!res.ok || !res.worker)
170
228
  return `error: ${res.error}`;
229
+ if (runId) {
230
+ const assigned = (0, run_journal_1.assignRunWorker)({
231
+ runId,
232
+ taskId: args.task_id ? String(args.task_id) : undefined,
233
+ sessionId: args.session_id ? String(args.session_id) : undefined,
234
+ maxAttempts: Number(args.max_attempts) || undefined,
235
+ maxWorkerAssignments: Number(args.max_worker_assignments) || undefined,
236
+ maxEvidenceItems: Number(args.max_evidence_items) || undefined,
237
+ workflowVersion: 2,
238
+ designApplicability,
239
+ role,
240
+ workerId: res.worker.id,
241
+ preflight,
242
+ }, journalOptions);
243
+ if (!assigned.ok) {
244
+ (0, supervisor_1.stopWorker)(res.worker.id);
245
+ return `error: worker ${res.worker.id} was stopped because its run journal could not be updated — ${assigned.error}`;
246
+ }
247
+ }
171
248
  return `launched ${harness} worker ${res.worker.id} (pid ${res.worker.pid}) in ${dir}${pickedNote}`;
172
249
  },
173
250
  },
251
+ {
252
+ name: "record_worker_result",
253
+ description: "Record a terminal planner/specialist/QA/design result for a strict governed run. Passed assertions require a successful exit plus typed provenance evidence; failures consume an attempt and restart at planner or block at budget.",
254
+ parameters: {
255
+ run_id: "governed run id",
256
+ role: "planner | specialist | qa | design",
257
+ worker_id: "the worker assigned to the current run cursor",
258
+ status: '"passed" | "failed"',
259
+ summary: "specific result or failure",
260
+ evidence: `array of { kind: ${run_journal_1.RUN_EVIDENCE_KINDS.join("|")}, source, summary, ref?, sha256? }`,
261
+ },
262
+ run: async (args) => {
263
+ const runId = String(args.run_id || "").trim();
264
+ const role = String(args.role || "").trim().toLowerCase();
265
+ const workerId = String(args.worker_id || args.workerId || "").trim();
266
+ const status = String(args.status || "");
267
+ if (!runId || !role || !workerId || (status !== "passed" && status !== "failed")) {
268
+ return "error: record_worker_result requires run_id, role, worker_id, and status=passed|failed";
269
+ }
270
+ const worker = (0, supervisor_1.getWorker)(workerId);
271
+ const terminal = !!worker && ["exited", "stopped", "failed"].includes(worker.status);
272
+ const succeeded = !!worker && worker.status === "exited" && worker.exitCode === 0;
273
+ const result = (0, run_journal_1.recordRunWorkerAssertion)({
274
+ runId,
275
+ role,
276
+ workerId,
277
+ workerTerminal: terminal,
278
+ workerSucceeded: succeeded,
279
+ status,
280
+ summary: String(args.summary || ""),
281
+ evidence: Array.isArray(args.evidence) ? args.evidence : [],
282
+ }, journalOptions);
283
+ if (!result.ok || !result.journal)
284
+ return `error: ${result.error}`;
285
+ return result.journal.stage === "blocked"
286
+ ? `run ${runId} blocked after failed ${role}`
287
+ : status === "failed"
288
+ ? `run ${runId} needs rework; retry ${result.journal.attempt}/${result.journal.maxAttempts}`
289
+ : `run ${runId} accepted ${role} result; next role=${result.journal.cursor}`;
290
+ },
291
+ },
292
+ {
293
+ name: "complete_run",
294
+ description: "Complete a governed run from a DISTINCT terminal reviewer. Requires a structured verdict. A changes_requested verdict advances the bounded retry or blocks at the attempt budget; only approved completes.",
295
+ parameters: {
296
+ run_id: "governed run id",
297
+ reviewer_id: "terminal worker id previously spawned with this run_id and role=reviewer",
298
+ verdict: '{ status: "approved" | "changes_requested", summary, issues: [], semanticSuccess: { met: boolean, summary } }',
299
+ evidence: `array of typed { kind: ${run_journal_1.RUN_EVIDENCE_KINDS.join("|")}, source, summary, ref?, sha256? } provenance`,
300
+ },
301
+ run: async (args) => {
302
+ const runId = String(args.run_id || "").trim();
303
+ const reviewerId = String(args.reviewer_id || "").trim();
304
+ if (!runId || !reviewerId)
305
+ return "error: complete_run requires run_id and reviewer_id";
306
+ const rawVerdict = args.verdict;
307
+ if (!rawVerdict || typeof rawVerdict !== "object" || Array.isArray(rawVerdict)) {
308
+ return "error: complete_run requires a structured verdict object";
309
+ }
310
+ const verdict = rawVerdict;
311
+ const reviewer = (0, supervisor_1.getWorker)(reviewerId);
312
+ const result = (0, run_journal_1.completeRunReview)({
313
+ runId,
314
+ reviewerId,
315
+ reviewerTerminal: !!reviewer && ["exited", "stopped", "failed"].includes(reviewer.status),
316
+ reviewerSucceeded: !!reviewer && reviewer.status === "exited" && reviewer.exitCode === 0,
317
+ verdict: {
318
+ status: String(verdict.status || ""),
319
+ summary: String(verdict.summary || ""),
320
+ issues: Array.isArray(verdict.issues) ? verdict.issues.map(String) : [],
321
+ semanticSuccess: verdict.semanticSuccess && typeof verdict.semanticSuccess === "object" && !Array.isArray(verdict.semanticSuccess)
322
+ ? {
323
+ met: verdict.semanticSuccess.met === true,
324
+ summary: String(verdict.semanticSuccess.summary || ""),
325
+ }
326
+ : undefined,
327
+ },
328
+ evidence: Array.isArray(args.evidence) ? args.evidence : [],
329
+ }, journalOptions);
330
+ if (!result.ok || !result.journal)
331
+ return `error: ${result.error}`;
332
+ const journal = result.journal;
333
+ if (journal.stage === "completed") {
334
+ return `run ${runId} approved and completed by reviewer ${reviewerId}`;
335
+ }
336
+ if (journal.stage === "retry_required") {
337
+ return `run ${runId} needs changes; retry ${journal.attempt}/${journal.maxAttempts}`;
338
+ }
339
+ return `run ${runId} blocked after ${journal.attempt}/${journal.maxAttempts} attempts`;
340
+ },
341
+ },
174
342
  {
175
343
  name: "get_capabilities",
176
344
  description: "READ-ONLY. The harness capability map: which worker harness is best at which task kinds (coding, frontend, scripts, research, ...). Consult it to choose `harness` for spawn_agent — or omit harness and it is auto-picked from this map.",
@@ -552,6 +720,16 @@ function buildTaskTools() {
552
720
  owner: '(optional) "human" or "agent" (default agent for tasks the orchestrator books)',
553
721
  owner_label: "(optional) which agent owns it — the worker harness name (e.g. claude)",
554
722
  description: "(optional) longer description / verify criteria",
723
+ verify: "(optional) observable proof required before this task may be marked done",
724
+ goal: "(optional) outcome this task contributes to",
725
+ success_criteria: "(optional) measurable proof that distinguishes success from completion",
726
+ parent_id: "(optional) stable parent task id",
727
+ dependency_ids: "(optional) array of prerequisite task ids",
728
+ scope: "(optional) bounded work scope",
729
+ blockers: "(optional) array of blockers",
730
+ clarification: "(optional) what the user must clarify before work is ready",
731
+ review: "(optional) QA/design/final-review requirement or verdict",
732
+ evidence: "(optional) array of tests, artifacts, screenshots, or reviewer proof",
555
733
  },
556
734
  run: async (args) => {
557
735
  if (!(0, config_1.isAuthenticated)())
@@ -567,6 +745,21 @@ function buildTaskTools() {
567
745
  const owner = ownerRaw === "human" ? "human" : ownerRaw === "agent" ? "agent" : undefined;
568
746
  const ownerLabel = String(args.owner_label || args.ownerLabel || "").trim() || undefined;
569
747
  const description = typeof args.description === "string" ? args.description : undefined;
748
+ const verify = typeof args.verify === "string" ? args.verify : undefined;
749
+ const goal = typeof args.goal === "string" ? args.goal : undefined;
750
+ const successCriteria = typeof (args.success_criteria ?? args.successCriteria) === "string"
751
+ ? String(args.success_criteria ?? args.successCriteria) : undefined;
752
+ const parentId = typeof (args.parent_id ?? args.parentId) === "string"
753
+ ? String(args.parent_id ?? args.parentId) : undefined;
754
+ const stringList = (value) => Array.isArray(value)
755
+ ? value.filter((item) => typeof item === "string" && Boolean(item.trim())).map((item) => item.trim())
756
+ : undefined;
757
+ const dependencyIds = stringList(args.dependency_ids ?? args.dependencyIds);
758
+ const scope = typeof args.scope === "string" ? args.scope : undefined;
759
+ const blockers = stringList(args.blockers);
760
+ const clarification = typeof args.clarification === "string" ? args.clarification : undefined;
761
+ const review = typeof args.review === "string" ? args.review : undefined;
762
+ const evidence = stringList(args.evidence);
570
763
  try {
571
764
  if (taskId) {
572
765
  const res = await (0, api_1.updatePortfolioTask)({
@@ -578,6 +771,16 @@ function buildTaskTools() {
578
771
  ...(owner ? { ownerType: owner } : {}),
579
772
  ...(ownerLabel ? { ownerLabel } : {}),
580
773
  ...(description !== undefined ? { description } : {}),
774
+ ...(verify !== undefined ? { verify } : {}),
775
+ ...(goal !== undefined ? { goal } : {}),
776
+ ...(successCriteria !== undefined ? { successCriteria } : {}),
777
+ ...(parentId !== undefined ? { parentId } : {}),
778
+ ...(dependencyIds !== undefined ? { dependencyIds } : {}),
779
+ ...(scope !== undefined ? { scope } : {}),
780
+ ...(blockers !== undefined ? { blockers } : {}),
781
+ ...(clarification !== undefined ? { clarification } : {}),
782
+ ...(review !== undefined ? { review } : {}),
783
+ ...(evidence !== undefined ? { evidence } : {}),
581
784
  syncRepo: false,
582
785
  agentName: "you orchestrator",
583
786
  });
@@ -591,6 +794,16 @@ function buildTaskTools() {
591
794
  projectSlug: project,
592
795
  title,
593
796
  description,
797
+ verify,
798
+ goal,
799
+ successCriteria,
800
+ parentId,
801
+ dependencyIds,
802
+ scope,
803
+ blockers,
804
+ clarification,
805
+ review,
806
+ evidence,
594
807
  // The orchestrator books work for its workers by default; pass owner="human" to
595
808
  // capture something the owner must do personally.
596
809
  ownerType: owner ?? "agent",
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/lib/orchestrator/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/lib/orchestrator/tools.ts"],"names":[],"mappings":";AAAA,+EAA+E;AAC/E,EAAE;AACF,+FAA+F;AAC/F,+FAA+F;AAC/F,+FAA+F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4C/F,8CA6BC;AAwCD,wDAmXC;AA0CD,0CAyGC;AAyBD,0CASC;AAOD,wCA6JC;AAMD,0CA4CC;AA72BD,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAE7B,6CAOsB;AACtB,iDAAoE;AACpE,+CASuB;AACvB,sCAA8D;AAC9D,sDAAyE;AACzE,gCASgB;AAEhB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,gBAAgB,CAAC;AACtF,MAAM,cAAc,GAAG,GAAG,IAAI,cAAc,CAAC;AAC7C,MAAM,cAAc,GAAG,+CAA+C,CAAC;AACvE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,6BAA6B,CAAC;AAE7F,4FAA4F;AAC5F,SAAgB,iBAAiB,CAAC,OAA2B,EAAE,WAAmB;IAChF,IAAI,CAAC,OAAO;QAAE,OAAO,WAAW,CAAC;IACjC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC7C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,8EAA8E;IAC9E,0EAA0E;IAC1E,gFAAgF;IAChF,sDAAsD;IACtD,IAAI,KAAK,GAAG,WAAW,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACrE,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE;YAAE,OAAO,KAAK,CAAC;QAC/E,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,wEAAwE;IACxE,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;KAChC,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;AACvB,CAAC;AAUD;;;;GAIG;AACH,KAAK,UAAU,oBAAoB,CACjC,OAAe,EACf,MAAoE,EACpE,IAA6B,EAC7B,SAAS,GAAG,KAAM;IAElB,IAAI,CAAC,IAAA,wBAAe,GAAE,EAAE,CAAC;QACvB,OAAO,wEAAwE,CAAC;IAClF,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,IAAA,sCAAqB,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC3G,IAAI,CAAC,UAAU,CAAC,EAAE;QAAE,OAAO,qBAAqB,MAAM,OAAO,OAAO,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5F,MAAM,MAAM,GAAG,MAAM,IAAA,8BAAa,EAAC,EAAE,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACxF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,cAAc,MAAM,OAAO,OAAO,aAAa,UAAU,CAAC,IAAI,CAAC,SAAS,wBAAwB,IAAI,CAAC,KAAK,CAC/G,SAAS,GAAG,IAAI,CACjB,+EAA+E,CAAC;IACnF,CAAC;IACD,IAAI,MAAM,CAAC,EAAE;QAAE,OAAO,IAAI,OAAO,KAAK,MAAM,SAAS,MAAM,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;IACtF,OAAO,IAAI,OAAO,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,IAAI,QAAQ,KAAK,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;AAC/G,CAAC;AAED,6FAA6F;AAC7F,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAErD,mFAAmF;AACnF,SAAgB,sBAAsB,CAAC,OAA0B,EAAE;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACtC,MAAM,cAAc,GAAmB,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;IAEnE,OAAO;QACL;YACE,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC;YAC3E,WAAW,EACT,2QAA2Q;YAC7Q,UAAU,EAAE;gBACV,OAAO,EACL,+HAA+H;gBACjI,IAAI,EAAE,gCAAgC;gBACtC,OAAO,EAAE,2DAA2D;gBACpE,GAAG,EAAE,uEAAuE;gBAC5E,OAAO,EACL,sIAAsI;gBACxI,MAAM,EAAE,oEAAoE;gBAC5E,IAAI,EAAE,sEAAsE;gBAC5E,OAAO,EAAE,sDAAsD;gBAC/D,UAAU,EAAE,6EAA6E;gBACzF,YAAY,EAAE,qDAAqD;gBACnE,oBAAoB,EAClB,sFAAsF;gBACxF,sBAAsB,EAAE,8DAA8D;gBACtF,kBAAkB,EAAE,2DAA2D;gBAC/E,aAAa,EACX,gIAAgI;aACnI;YACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,8EAA8E;gBAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC7F,IAAI,CAAC,IAAI;oBAAE,OAAO,8CAA8C,CAAC;gBACjE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC1D,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC;oBACzC,OAAO,sDAAsD,CAAC;gBAChE,CAAC;gBACD,IAAI,IAAI,IAAI,CAAC,IAAA,6BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,OAAO,2CAA2C,8BAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClF,CAAC;gBACD,IAAI,mBAA0F,CAAC;gBAC/F,IAAI,KAAK,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC;oBACtC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC1D,OAAO,uFAAuF,CAAC;oBACjG,CAAC;oBACD,MAAM,GAAG,GAAG,GAA8B,CAAC;oBAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;oBACxC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC/C,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACtE,OAAO,iGAAiG,CAAC;oBAC3G,CAAC;oBACD,mBAAmB,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBAC3C,CAAC;gBACD,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC1B,OAAO,qIAAqI,CAAC;gBAC/I,CAAC;gBACD,qGAAqG;gBACrG,kFAAkF;gBAClF,IAAI,OAAsB,CAAC;gBAC3B,IAAI,UAAU,GAAG,EAAE,CAAC;gBACpB,IAAI,gBAAgB,GAAG,EAAE,CAAC;gBAC1B,IAAI,WAAW,GAAwB,MAAM,CAAC;gBAC9C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAkB,CAAC;oBAChD,WAAW,GAAG,UAAU,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,GAAG,IAAA,0BAAW,EAAC,IAAI,CAAC,CAAC;oBAC/B,OAAO,GAAG,IAAI,CAAC,OAAwB,CAAC;oBACxC,WAAW,GAAG,MAAM,CAAC;oBACrB,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC;oBAC/B,UAAU,GAAG,kBAAkB,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC;gBACjE,CAAC;gBACD,MAAM,SAAS,GAAG,KAAK;oBACrB,CAAC,CAAC;wBACE,IAAI,EAAE,WAAW;wBACjB,OAAO;wBACP,IAAI;wBACJ,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACjD,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACrE;oBACH,CAAC,CAAC,SAAS,CAAC;gBACd,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,cAAc,GAAG,IAAA,yCAA2B,EAAC,SAAS,CAAC,CAAC;oBAC9D,IAAI,cAAc;wBAAE,OAAO,UAAU,cAAc,EAAE,CAAC;gBACxD,CAAC;gBACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE;wBAC7E,OAAO;wBACP,IAAI;wBACJ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;wBACxD,MAAM,EAAE,KAAK,IAAI,SAAS;wBAC1B,IAAI,EAAE,IAAI,IAAI,SAAS;wBACvB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;qBACzD,CAAC,CAAC;oBACH,OAAO,GAAG,MAAM,GAAG,UAAU,EAAE,CAAC;gBAClC,CAAC;gBACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,IAAI,CAAC;gBAChF,MAAM,GAAG,GAAG,WAAW;oBACrB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;oBACrB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAC5E,MAAM,GAAG,GAAG,IAAA,wBAAW,EAAC;oBACtB,OAAO;oBACP,IAAI;oBACJ,GAAG,EAAE,GAAG;oBACR,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;oBACxD,IAAI;iBACL,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM;oBAAE,OAAO,UAAU,GAAG,CAAC,KAAK,EAAE,CAAC;gBACzD,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,QAAQ,GAAG,IAAA,6BAAe,EAC9B;wBACE,KAAK;wBACL,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;wBACvD,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;wBAChE,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,SAAS;wBACnD,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,SAAS;wBACtE,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,SAAS;wBAC9D,eAAe,EAAE,CAAC;wBAClB,mBAAmB;wBACnB,IAAI;wBACJ,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE;wBACvB,SAAS;qBACV,EACD,cAAc,CACf,CAAC;oBACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;wBACjB,IAAA,uBAAU,EAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBAC1B,OAAO,iBAAiB,GAAG,CAAC,MAAM,CAAC,EAAE,+DAA+D,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACvH,CAAC;gBACH,CAAC;gBACD,OAAO,YAAY,OAAO,WAAW,GAAG,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,CAAC,MAAM,CAAC,GAAG,QAAQ,GAAG,GAAG,UAAU,EAAE,CAAC;YACtG,CAAC;SACF;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EACT,qOAAqO;YACvO,UAAU,EAAE;gBACV,MAAM,EAAE,iBAAiB;gBACzB,IAAI,EAAE,oCAAoC;gBAC1C,SAAS,EAAE,+CAA+C;gBAC1D,MAAM,EAAE,qBAAqB;gBAC7B,OAAO,EAAE,4BAA4B;gBACrC,QAAQ,EAAE,oBAAoB,gCAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,oCAAoC;aAC/F;YACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC1D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACtE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAC;gBAChE,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;oBACjF,OAAO,wFAAwF,CAAC;gBAClG,CAAC;gBACD,MAAM,MAAM,GAAG,IAAA,sBAAS,EAAC,QAAQ,CAAC,CAAC;gBACnC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACrF,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC;gBAClF,MAAM,MAAM,GAAG,IAAA,sCAAwB,EACrC;oBACE,KAAK;oBACL,IAAI;oBACJ,QAAQ;oBACR,cAAc,EAAE,QAAQ;oBACxB,eAAe,EAAE,SAAS;oBAC1B,MAAM;oBACN,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;oBACnC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;iBAC5D,EACD,cAAc,CACf,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;oBAAE,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC;gBACnE,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS;oBACvC,CAAC,CAAC,OAAO,KAAK,yBAAyB,IAAI,EAAE;oBAC7C,CAAC,CAAC,MAAM,KAAK,QAAQ;wBACnB,CAAC,CAAC,OAAO,KAAK,wBAAwB,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE;wBAC5F,CAAC,CAAC,OAAO,KAAK,aAAa,IAAI,sBAAsB,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACnF,CAAC;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,4MAA4M;YAC9M,UAAU,EAAE;gBACV,MAAM,EAAE,iBAAiB;gBACzB,WAAW,EAAE,0EAA0E;gBACvF,OAAO,EACL,+GAA+G;gBACjH,QAAQ,EAAE,0BAA0B,gCAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,+CAA+C;aAChH;YACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzD,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU;oBAAE,OAAO,qDAAqD,CAAC;gBACxF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;gBAChC,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC/E,OAAO,0DAA0D,CAAC;gBACpE,CAAC;gBACD,MAAM,OAAO,GAAG,UAAqC,CAAC;gBACtD,MAAM,QAAQ,GAAG,IAAA,sBAAS,EAAC,UAAU,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,IAAA,+BAAiB,EAC9B;oBACE,KAAK;oBACL,UAAU;oBACV,gBAAgB,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;oBACzF,iBAAiB,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC;oBACxF,OAAO,EAAE;wBACP,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAqC;wBACxE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;wBACtC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;wBACvE,eAAe,EACb,OAAO,CAAC,eAAe,IAAI,OAAO,OAAO,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;4BAC/G,CAAC,CAAC;gCACE,GAAG,EAAG,OAAO,CAAC,eAA2C,CAAC,GAAG,KAAK,IAAI;gCACtE,OAAO,EAAE,MAAM,CAAE,OAAO,CAAC,eAA2C,CAAC,OAAO,IAAI,EAAE,CAAC;6BACpF;4BACH,CAAC,CAAC,SAAS;qBAChB;oBACD,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;iBAC5D,EACD,cAAc,CACf,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;oBAAE,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC;gBACnE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC/B,IAAI,OAAO,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;oBAClC,OAAO,OAAO,KAAK,uCAAuC,UAAU,EAAE,CAAC;gBACzE,CAAC;gBACD,IAAI,OAAO,CAAC,KAAK,KAAK,gBAAgB,EAAE,CAAC;oBACvC,OAAO,OAAO,KAAK,yBAAyB,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACvF,CAAC;gBACD,OAAO,OAAO,KAAK,kBAAkB,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,WAAW,CAAC;YACzF,CAAC;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EACT,2OAA2O;YAC7O,UAAU,EAAE,EAAE;YACd,GAAG,EAAE,KAAK,IAAI,EAAE;gBACd,IAAI,CAAC;oBACH,OAAO,IAAA,oCAAqB,GAAE,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,iCAAkC,GAAa,CAAC,OAAO,EAAE,CAAC;gBACnE,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,6EAA6E;YAC1F,UAAU,EAAE,EAAE,OAAO,EAAE,oCAAoC,EAAE;YAC7D,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,IAAI,IAAI,CAAC,OAAO;oBAAE,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;gBACtF,MAAM,OAAO,GAAG,IAAA,2BAAc,GAAE,CAAC;gBACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,gBAAgB,CAAC;gBAClD,qEAAqE;gBACrE,uDAAuD;gBACvD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC3C,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5C,IAAI,IAAI,KAAK,IAAI;wBAAE,OAAO,IAAI,GAAG,IAAI,CAAC;oBACtC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;gBACrF,CAAC,CAAC,CAAC;gBACH,OAAO,MAAM;qBACV,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,OAAO,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAC7F;qBACA,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,CAAC,aAAa,EAAE,gBAAgB,EAAE,aAAa,CAAC;YACzD,WAAW,EACT,2OAA2O;YAC7O,UAAU,EAAE;gBACV,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,iDAAiD;gBACxD,OAAO,EAAE,oCAAoC;aAC9C;YACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3E,IAAI,CAAC,EAAE;oBAAE,OAAO,qCAAqC,CAAC;gBACtD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,IAAI,CAAC,OAAO;oBACd,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnF,0EAA0E;gBAC1E,sEAAsE;gBACtE,0EAA0E;gBAC1E,MAAM,UAAU,GAAG,CAAC,GAAY,EAAU,EAAE,CAC1C,CAAC,GAAG,IAAI,EAAE,CAAC;qBACR,KAAK,CAAC,IAAI,CAAC;qBACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;qBAC9D,IAAI,CAAC,IAAI,CAAC;qBACV,IAAI,EAAE,CAAC;gBACZ,IAAI,GAAG,GAAG,IAAA,4BAAe,EAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBACrC,IAAI,GAAG,CAAC,EAAE,IAAI,IAAA,sBAAS,EAAC,EAAE,CAAC,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;oBAClD,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACtC,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;wBACrD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAM,CAAC,CAAC,CAAC;wBAC5D,GAAG,GAAG,IAAA,4BAAe,EAAC,EAAE,EAAE,KAAK,CAAC,CAAC;oBACnC,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,EAAE;oBAAE,OAAO,UAAU,GAAG,CAAC,KAAK,EAAE,CAAC;gBAC1C,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;gBACnD,MAAM,CAAC,GAAG,IAAA,2BAAc,GAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAA,sBAAS,EAAC,EAAE,CAAC,CAAC;gBACzE,2EAA2E;gBAC3E,MAAM,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC9D,MAAM,SAAS,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACxE,MAAM,OAAO,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC1F,MAAM,MAAM,GAAG,CAAC;oBACd,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,cAAc,OAAO,GAAG,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,2EAA2E,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxJ,CAAC,CAAC,iBAAiB,CAAC;gBACtB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,iBAAiB,CAAC;gBAC5D,OAAO,GAAG,MAAM,KAAK,IAAI,EAAE,CAAC;YAC9B,CAAC;SACF;QACD;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,gEAAgE;YAC7E,UAAU,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,oCAAoC,EAAE;YAC9E,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3E,IAAI,CAAC,EAAE;oBAAE,OAAO,+BAA+B,CAAC;gBAChD,IAAI,IAAI,CAAC,OAAO;oBAAE,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC1F,MAAM,GAAG,GAAG,IAAA,uBAAU,EAAC,EAAE,CAAC,CAAC;gBAC3B,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,CAAC;YAC1D,CAAC;SACF;QACD;YACE,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;YACzD,WAAW,EAAE,mEAAmE;YAChF,UAAU,EAAE,EAAE;YACd,GAAG,EAAE,KAAK,IAAI,EAAE;gBACd,IAAI,CAAC,IAAA,wBAAe,GAAE;oBAAE,OAAO,4CAA4C,CAAC;gBAC5E,MAAM,GAAG,GAAG,MAAM,IAAA,sBAAgB,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClD,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,wBAAwB,CAAC;gBACvD,wEAAwE;gBACxE,uEAAuE;gBACvE,kDAAkD;gBAClD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAiC,CAAC;gBAC9D,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;oBACtD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACnC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;wBAAE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACpF,CAAC;gBACD,MAAM,GAAG,GAAG,CAAC,EAAW,EAAU,EAAE;oBAClC,IAAI,CAAC,EAAE;wBAAE,OAAO,SAAS,CAAC;oBAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,KAAM,CAAC,CAAC;oBACpD,IAAI,IAAI,GAAG,EAAE;wBAAE,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC;oBAClD,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE;wBAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;oBAC3D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC;gBAChD,CAAC,CAAC;gBACF,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAChC,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;gBACxC,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;qBACrC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;qBACvD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACT,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,IAAI,WAAW,CAAC;oBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3F,OAAO,GAAG,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,MAAM,IAAI,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,CAAC;gBACrF,CAAC,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,EAAE;AACF,yFAAyF;AACzF,8FAA8F;AAC9F,gGAAgG;AAChG,0FAA0F;AAE1F,qFAAqF;AACrF,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,WAAW,CAClB,QAAgC,EAChC,KAAa;IAEb,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC/D,OAAO,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,uDAAuD;AACvD,SAAS,WAAW,CAAC,CAA6C;IAChE,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC;IAClF,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC;IAChD,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC;IAChD,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,UAAU,KAAK,SAAS,IAAI,EAAE,CAAC;AAC/E,CAAC;AAED;;;;GAIG;AACH,SAAgB,eAAe;IAC7B,OAAO;QACL;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,wKAAwK;YAC1K,UAAU,EAAE,EAAE;YACd,GAAG,EAAE,KAAK,IAAI,EAAE;gBACd,IAAI,CAAC,IAAA,wBAAe,GAAE;oBAAE,OAAO,wEAAwE,CAAC;gBACxG,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,IAAA,WAAK,GAAE,CAAC;oBAC1B,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;wBACzB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACtC,OAAO,kCAAkC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;oBAC3F,CAAC;oBACD,MAAM,IAAI,GAAG,IAAA,eAAS,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACjC,MAAM,KAAK,GAAa,EAAE,CAAC;oBAC3B,IAAI,IAAI,CAAC,WAAW;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;oBAC9D,IAAI,IAAI,CAAC,QAAQ;wBAAE,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAC5D,IAAI,IAAI,CAAC,KAAK;wBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBACnD,IAAI,IAAI,CAAC,IAAI;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;oBACrC,IAAI,MAAM,EAAE,CAAC;wBACX,KAAK,CAAC,IAAI,CACR,mBAAmB,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,EAAE,CACvF,CAAC;oBACJ,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,CAAC;oBACpD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC;gBAC5E,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,4BAA6B,GAAa,CAAC,OAAO,EAAE,CAAC;gBAC9D,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,qLAAqL;YACvL,UAAU,EAAE,EAAE;YACd,GAAG,EAAE,KAAK,IAAI,EAAE;gBACd,IAAI,CAAC,IAAA,wBAAe,GAAE;oBAAE,OAAO,yEAAyE,CAAC;gBACzG,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,IAAA,uBAAiB,GAAE,CAAC;oBACtC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;wBACzB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACtC,OAAO,yCAAyC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;oBAClG,CAAC;oBACD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;oBACzC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,wCAAwC,CAAC;oBAC3E,OAAO,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,2BAA4B,GAAa,CAAC,OAAO,EAAE,CAAC;gBAC7D,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EACT,uNAAuN;YACzN,UAAU,EAAE,EAAE,OAAO,EAAE,mCAAmC,EAAE;YAC5D,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,IAAI,CAAC,KAAK;oBAAE,OAAO,iDAAiD,CAAC;gBACrE,IAAI,CAAC,IAAA,wBAAe,GAAE;oBAAE,OAAO,yEAAyE,CAAC;gBACzG,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,IAAA,uBAAiB,EAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5D,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;wBACzB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACtC,OAAO,yCAAyC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;oBAClG,CAAC;oBACD,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,CAAC,EAAE,CAAC;wBACP,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC7F,OAAO,uBAAuB,KAAK,sBAAsB,KAAK,IAAI,QAAQ,EAAE,CAAC;oBAC/E,CAAC;oBACD,MAAM,KAAK,GAAa,EAAE,CAAC;oBAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC/F,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW;wBAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;oBAClF,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS;wBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;oBACnF,IAAI,CAAC,CAAC,IAAI;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC1C,IAAI,CAAC,CAAC,KAAK;wBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC7C,IAAI,CAAC,CAAC,OAAO;wBAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnD,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,QAAQ,CAAC;oBAC3E,IAAI,IAAI;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;oBACtC,qEAAqE;oBACrE,gEAAgE;oBAChE,MAAM,OAAO,GAAG,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC;oBACpD,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;wBACnE,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC5B,KAAK,CAAC,IAAI,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC;4BACzD,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,yBAAyB,CAAC,CAAC;wBACnG,CAAC;oBACH,CAAC;oBACD,IAAI,CAAC,CAAC,OAAO;wBAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBACpD,IAAI,CAAC,CAAC,UAAU;wBAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;oBACzD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM;wBAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACrH,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACrF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,2BAA4B,GAAa,CAAC,OAAO,EAAE,CAAC;gBAC7D,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAcD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AAErD,SAAS,SAAS,CAAC,IAAe,EAAE,GAAG,IAAc;IACnD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE;YAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,sFAAsF;AACtF,SAAgB,eAAe,CAAC,IAAe;IAC7C,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC;IAC/D,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,YAAY,CAAC;IACvD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC;IACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,QAAQ,CAAC;IACzD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC;IAC/D,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;IAC1D,OAAO,GAAG,EAAE,KAAK,MAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC/H,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc;IAC5B,OAAO;QACL;YACE,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,WAAW,EACT,6MAA6M;YAC/M,UAAU,EAAE;gBACV,WAAW,EAAE,0DAA0D;gBACvE,WAAW,EAAE,sDAAsD;aACpE;YACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,IAAI,CAAC,IAAA,wBAAe,GAAE;oBAAE,OAAO,+DAA+D,CAAC;gBAC/F,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,IAAA,uBAAiB,EAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5D,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;wBACzB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACtC,OAAO,+BAA+B,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;oBACxF,CAAC;oBACD,IAAI,KAAK,GAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAgB,CAAC;oBAC/D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC3E,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,CAAC,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;wBACrC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC1F,CAAC;oBACD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,MAAM,CAAC;oBACrF,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC;oBACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACvB,OAAO,YAAY;4BACjB,CAAC,CAAC,8BAA8B,YAAY,GAAG;4BAC/C,CAAC,CAAC,4BAA4B,CAAC;oBACnC,CAAC;oBACD,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,yBAA0B,GAAa,CAAC,OAAO,EAAE,CAAC;gBAC3D,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC;YACvC,WAAW,EACT,8UAA8U;YAChV,UAAU,EAAE;gBACV,OAAO,EAAE,kEAAkE;gBAC3E,KAAK,EAAE,qCAAqC;gBAC5C,MAAM,EAAE,uEAAuE;gBAC/E,QAAQ,EAAE,yCAAyC;gBACnD,OAAO,EAAE,6CAA6C;gBACtD,KAAK,EAAE,gFAAgF;gBACvF,WAAW,EAAE,wEAAwE;gBACrF,WAAW,EAAE,iDAAiD;gBAC9D,MAAM,EAAE,0EAA0E;gBAClF,IAAI,EAAE,6CAA6C;gBACnD,gBAAgB,EAAE,wEAAwE;gBAC1F,SAAS,EAAE,kCAAkC;gBAC7C,cAAc,EAAE,2CAA2C;gBAC3D,KAAK,EAAE,+BAA+B;gBACtC,QAAQ,EAAE,8BAA8B;gBACxC,aAAa,EAAE,4DAA4D;gBAC3E,MAAM,EAAE,0DAA0D;gBAClE,QAAQ,EAAE,sEAAsE;aACjF;YACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClB,IAAI,CAAC,IAAA,wBAAe,GAAE;oBAAE,OAAO,oFAAoF,CAAC;gBACpH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC9C,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK;oBAAE,OAAO,+DAA+D,CAAC;gBAC9F,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACnE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;gBACnF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACjF,MAAM,KAAK,GAAG,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC1F,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;gBACzF,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxF,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;gBACzE,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;gBACnE,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,QAAQ;oBACzF,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,QAAQ;oBACpE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxD,MAAM,UAAU,GAAG,CAAC,KAAc,EAAwB,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAC/E,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACrH,CAAC,CAAC,SAAS,CAAC;gBACd,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC5E,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;gBACtE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3C,MAAM,aAAa,GAAG,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC9F,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;gBACzE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,CAAC;oBACH,IAAI,MAAM,EAAE,CAAC;wBACX,MAAM,GAAG,GAAG,MAAM,IAAA,yBAAmB,EAAC;4BACpC,MAAM;4BACN,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC3B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC7B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACjC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC5C,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACtC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACrC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACrD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC3C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACvC,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC7D,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC/C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACzD,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACzC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC/C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACzD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC/C,QAAQ,EAAE,KAAK;4BACf,SAAS,EAAE,kBAAkB;yBAC9B,CAAC,CAAC;wBACH,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;4BAClC,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;4BAC3D,OAAO,gCAAgC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;wBAClG,CAAC;wBACD,OAAO,gBAAgB,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBACxL,CAAC;oBACD,MAAM,GAAG,GAAG,MAAM,IAAA,uBAAiB,EAAC;wBAClC,WAAW,EAAE,OAAO;wBACpB,KAAK;wBACL,WAAW;wBACX,MAAM;wBACN,IAAI;wBACJ,eAAe;wBACf,QAAQ;wBACR,aAAa;wBACb,KAAK;wBACL,QAAQ;wBACR,aAAa;wBACb,MAAM;wBACN,QAAQ;wBACR,gFAAgF;wBAChF,kDAAkD;wBAClD,SAAS,EAAE,KAAK,IAAI,OAAO;wBAC3B,UAAU;wBACV,MAAM;wBACN,QAAQ;wBACR,UAAU,EAAE,cAAc;wBAC1B,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,kBAAkB;qBAC9B,CAAC,CAAC;oBACH,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;wBAClC,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;wBAC3D,OAAO,+BAA+B,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;oBACxF,CAAC;oBACD,OAAO,gBAAgB,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,cAAc,MAAM,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBACtN,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,sBAAuB,GAAa,CAAC,OAAO,EAAE,CAAC;gBACxD,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,eAAe;IAC7B,OAAO,KAAK,EAAE,QAAuB,EAAmB,EAAE;QACxD,uBAAuB;QACvB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,cAAc,EAAE;gBACtC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;gBAClC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAM,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyB,CAAC;gBACxD,IAAI,IAAI,CAAC,OAAO;oBAAE,OAAO,IAAI,CAAC,OAAO,CAAC;YACxC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,MAAM,GAAG,GAAG,IAAA,yBAAgB,GAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAChE,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QAE/F,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,cAAc,EAAE;YACtC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,GAAG,EAAE;gBAC9B,cAAc,EAAE,kBAAkB;gBAClC,cAAc,EAAE,gBAAgB;gBAChC,SAAS,EAAE,qBAAqB;aACjC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,gBAAgB;gBACvB,QAAQ;gBACR,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,GAAG;aACjB,CAAC;YACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAM,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpF,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA0D,CAAC;QACzF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;QACpD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/lib/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;CACd;AA6CD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAYrD"}
1
+ {"version":3,"file":"redact.d.ts","sourceRoot":"","sources":["../../src/lib/redact.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;CACd;AAmED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAgBrD"}
@@ -13,10 +13,14 @@ exports.redactText = redactText;
13
13
  // catch-all so a Stripe key inside `secret=sk_live_...` reports as a Stripe
14
14
  // key, and before EMAIL/PHONE so structured tokens aren't half-eaten.
15
15
  const REDACTIONS = [
16
- { pattern: /sk-ant-[A-Za-z0-9_-]{20,}/g, replace: () => "[ANTHROPIC_KEY]" },
17
- { pattern: /sk-or-[A-Za-z0-9_-]{20,}/g, replace: () => "[OPENROUTER_KEY]" },
16
+ // `sk-` is also the final three characters of ordinary identifiers such as
17
+ // `task-20260714-native-real-surfaces`. Require a real token boundary on the
18
+ // left so those IDs remain usable Project Brain evidence while standalone
19
+ // provider credentials are still rejected.
20
+ { pattern: /(?<![A-Za-z0-9_-])sk-ant-[A-Za-z0-9_-]{20,}/g, replace: () => "[ANTHROPIC_KEY]" },
21
+ { pattern: /(?<![A-Za-z0-9_-])sk-or-[A-Za-z0-9_-]{20,}/g, replace: () => "[OPENROUTER_KEY]" },
18
22
  { pattern: /sk_live_[A-Za-z0-9]{20,}/g, replace: () => "[STRIPE_KEY]" },
19
- { pattern: /sk-[A-Za-z0-9_-]{20,}/g, replace: () => "[API_KEY]" },
23
+ { pattern: /(?<![A-Za-z0-9_-])sk-[A-Za-z0-9_-]{20,}/g, replace: () => "[API_KEY]" },
20
24
  { pattern: /whsec_[A-Za-z0-9]{20,}/g, replace: () => "[WEBHOOK_SECRET]" },
21
25
  { pattern: /gh[pousr]_[A-Za-z0-9]{20,}/g, replace: () => "[GITHUB_TOKEN]" },
22
26
  { pattern: /github_pat_[A-Za-z0-9_]{20,}/g, replace: () => "[GITHUB_TOKEN]" },
@@ -33,8 +37,15 @@ const REDACTIONS = [
33
37
  // corpus still shows WHAT was configured, just not the value.
34
38
  // (?!\[) keeps it from eating placeholders a more specific pattern
35
39
  // already substituted, e.g. `token: [JWT]`.
36
- pattern: /\b(api[_-]?key|apikey|secret|token|password|passwd)(\s*[:=]\s*)(?!\[)\S+/gi,
40
+ pattern: /\b(api[_-]?key|apikey|secret|token|password|passwd)(\s*[:=]\s*)(?!\[)(\S+)/gi,
37
41
  replace: (key) => `${key}=[REDACTED]`,
42
+ // `agent token: host-specific` documents an access boundary, not a
43
+ // credential. Keep this single explicit scope sentinel while every other
44
+ // token assignment, including similarly shaped arbitrary values, remains
45
+ // fail-closed.
46
+ shouldRedact: (_match, [key, separator, value]) => !(key.toLowerCase() === "token"
47
+ && separator.includes(":")
48
+ && value.toLowerCase() === "host-specific"),
38
49
  },
39
50
  { pattern: /[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/g, replace: () => "[EMAIL]" },
40
51
  {
@@ -43,17 +54,31 @@ const REDACTIONS = [
43
54
  // (2026-07-09), timestamps, and version strings survive.
44
55
  pattern: /(?<![\d.-])(?:\+?\d{1,3}[\s.-])?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}(?![\d.-])/g,
45
56
  replace: () => "[PHONE]",
57
+ // Deployment IDs can share the bare ten-digit shape of a North American
58
+ // phone number. Exempt only a contiguous value directly labeled as a
59
+ // deployment; an identical bare value or formatted phone still redacts.
60
+ shouldRedact: (match, _groups, offset, input) => {
61
+ if (!/^\d{10}$/.test(match))
62
+ return true;
63
+ const prefix = input.slice(Math.max(0, offset - 80), offset);
64
+ return !/\bdeployment(?:\s+id)?\s+`?$/i.test(prefix);
65
+ },
46
66
  },
47
67
  { pattern: /\b(?:\d{1,3}\.){3}\d{1,3}\b/g, replace: () => "[IP]" },
48
68
  ];
49
69
  function redactText(text) {
50
70
  let out = text;
51
71
  let hits = 0;
52
- for (const { pattern, replace } of REDACTIONS) {
72
+ for (const { pattern, replace, shouldRedact } of REDACTIONS) {
53
73
  out = out.replace(pattern, (...args) => {
54
- hits += 1;
55
74
  // args = [match, ...groups, offset, string]; pass captured groups only.
75
+ const match = args[0];
56
76
  const groups = args.slice(1, -2);
77
+ const offset = args.at(-2);
78
+ const input = args.at(-1);
79
+ if (shouldRedact && !shouldRedact(match, groups, offset, input))
80
+ return match;
81
+ hits += 1;
57
82
  return replace(...groups);
58
83
  });
59
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/lib/redact.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAmDH,gCAYC;AAlDD,wEAAwE;AACxE,4EAA4E;AAC5E,sEAAsE;AACtE,MAAM,UAAU,GAAuB;IACrC,EAAE,OAAO,EAAE,4BAA4B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,iBAAiB,EAAE;IAC3E,EAAE,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;IAC3E,EAAE,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;IACvE,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;IACjE,EAAE,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;IACzE,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE;IAC3E,EAAE,OAAO,EAAE,+BAA+B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE;IAC7E,EAAE,OAAO,EAAE,+BAA+B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE;IAC5E,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE;IAC5D,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;IACvE,EAAE,OAAO,EAAE,+CAA+C,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE;IAClG;QACE,OAAO,EAAE,gEAAgE;QACzE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;KACvB;IACD;QACE,sEAAsE;QACtE,8DAA8D;QAC9D,mEAAmE;QACnE,4CAA4C;QAC5C,OAAO,EAAE,4EAA4E;QACrF,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,aAAa;KACtC;IACD,EAAE,OAAO,EAAE,iDAAiD,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE;IACxF;QACE,4EAA4E;QAC5E,8DAA8D;QAC9D,yDAAyD;QACzD,OAAO,EAAE,gFAAgF;QACzF,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS;KACzB;IACD,EAAE,OAAO,EAAE,8BAA8B,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE;CACnE,CAAC;AAEF,SAAgB,UAAU,CAAC,IAAY;IACrC,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,UAAU,EAAE,CAAC;QAC9C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE;YACrC,IAAI,IAAI,CAAC,CAAC;YACV,wEAAwE;YACxE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAa,CAAC;YAC7C,OAAO,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"redact.js","sourceRoot":"","sources":["../../src/lib/redact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { type RemoteAgentEventKind, type RemoteAgentEventStatus } from "./api";
2
+ export declare function remoteObservationEnabled(env?: NodeJS.ProcessEnv): boolean;
3
+ export declare function emitRemoteAgentEvent(input: {
4
+ agentId: string;
5
+ agentName: string;
6
+ sessionId: string;
7
+ kind: RemoteAgentEventKind;
8
+ status: RemoteAgentEventStatus;
9
+ projectSlug?: string;
10
+ eventId?: string;
11
+ occurredAt?: number;
12
+ }): Promise<{
13
+ ok: true;
14
+ eventId: string;
15
+ } | {
16
+ ok: false;
17
+ error: string;
18
+ }>;
19
+ //# sourceMappingURL=remote-agent-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-agent-event.d.ts","sourceRoot":"","sources":["../../src/lib/remote-agent-event.ts"],"names":[],"mappings":"AACA,OAAO,EAA2B,KAAK,oBAAoB,EAAE,KAAK,sBAAsB,EAAE,MAAM,OAAO,CAAC;AAKxG,wBAAgB,wBAAwB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAKtF;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,MAAM,EAAE,sBAAsB,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAyBxE"}