hub-launch 1.10.0 → 1.11.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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.11.0] - 2026-07-08
11
+
12
+ ### Added
13
+
14
+ - Client support for the unified launch/cancel `ralph-run` API, with `--kill` to stop an active run and `--kill-and-relaunch` to restart it. (#287)
15
+
10
16
  ## [1.10.0] - 2026-07-07
11
17
 
12
18
  ### Added
package/README.md CHANGED
@@ -208,6 +208,37 @@ clean it up afterward.
208
208
  hula launch my-branch .hublaunch/plans/my-plan.md --test
209
209
  ```
210
210
 
211
+ ### Stopping or replacing an in-flight task
212
+
213
+ Use `--kill-and-relaunch` to cancel the task currently running for a tracking
214
+ name and immediately launch a fresh one (stale state is reset server-side):
215
+
216
+ ```bash
217
+ hula launch feature-auth .hublaunch/plans/2026-07-07-feature-auth.md --kill-and-relaunch
218
+ ```
219
+
220
+ Use `--kill` to just stop the in-flight task without relaunching. It needs
221
+ **only the branch name** — no plan path, and it sends no credentials:
222
+
223
+ ```bash
224
+ hula launch feature-auth --kill
225
+ ```
226
+
227
+ When there is nothing to cancel, `--kill` prints "No active task to cancel…" and
228
+ exits 0 (a no-op is a success). `--kill` and `--kill-and-relaunch` are mutually
229
+ exclusive, and `--kill` cannot be combined with launch-only flags (`--resume`,
230
+ `--fix`, `--test`, `--handoff`, `--regression`).
231
+
232
+ If you run a normal `hula launch` while a task is already running for that
233
+ tracking name, the behavior depends on the context:
234
+
235
+ - **In an interactive terminal**, you're shown recovery options — kill and
236
+ relaunch, just stop the running task, resume from a step, or cancel — and the
237
+ launch is re-invoked with the flag you pick.
238
+ - **Non-interactively** (from the `/hula-launch` skill wrapper, CI, or a pipe),
239
+ the server's message (which names the recovery flags) is printed and the
240
+ process exits non-zero — no prompt, no hang.
241
+
211
242
  ### Forwarding environment variables to the container
212
243
 
213
244
  Tests that need credentials (a test user login, a third-party API key, etc.) can
@@ -8,9 +8,67 @@ import type { Config } from '../types/index.js';
8
8
  * Usage: hula launch --logs <name>
9
9
  */
10
10
  export declare function launchCommand(program: Command, config: Config): void;
11
+ interface LaunchOptions {
12
+ url?: string;
13
+ apiKey?: string;
14
+ duration?: number;
15
+ launch?: string;
16
+ worktree?: string | boolean;
17
+ resume?: number;
18
+ fix?: string;
19
+ regression?: boolean;
20
+ kill?: boolean;
21
+ killAndRelaunch?: boolean;
22
+ verbose?: boolean;
23
+ test?: boolean;
24
+ handoff?: string;
25
+ show?: string;
26
+ logs?: string;
27
+ lines?: number;
28
+ type?: 'log' | 'output';
29
+ editor?: boolean;
30
+ anthropicKey?: string;
31
+ daytonaKey?: string;
32
+ daytonaTier?: number;
33
+ containerCpu?: number;
34
+ containerMemory?: number;
35
+ containerDisk?: number;
36
+ updateNotificationUrl?: string;
37
+ updateNotificationNameTag?: string;
38
+ }
39
+ /**
40
+ * Validate the `--kill` / `--kill-and-relaunch` flag combination.
41
+ *
42
+ * - The two flags are mutually exclusive.
43
+ * - `--kill` composes with no other launch-only flag (`--resume`, `--fix`,
44
+ * `--test`, `--handoff`, `--regression`).
45
+ * - `--kill-and-relaunch` composes normally with every launch flag.
46
+ *
47
+ * Returns an error message when the combination is invalid, or `null` when OK.
48
+ */
49
+ export declare function validateKillFlags(options: LaunchOptions): string | null;
50
+ /**
51
+ * Whether a plan path is required for the given flag combination.
52
+ * `--kill` needs only the tracking name; every other mode needs a plan.
53
+ */
54
+ export declare function requiresPlanPath(options: LaunchOptions): boolean;
55
+ /**
56
+ * Derive the request `conflictMode` from the CLI flags (plus an optional explicit
57
+ * override used when re-invoking after an interactive 409 resolution).
58
+ *
59
+ * Returns `undefined` for the default `reject` path so the request body stays
60
+ * byte-identical to today's — the key is only added for `killAndRelaunch`.
61
+ */
62
+ export declare function deriveConflictMode(options: LaunchOptions, override?: 'killAndRelaunch'): 'killAndRelaunch' | undefined;
63
+ /**
64
+ * Build the request body for a cancel-only (`--kill`) call. Carries NO secrets —
65
+ * only the tracking name, repository id, and the `kill` conflict mode.
66
+ */
67
+ export declare function buildKillRequestBody(issueName: string, repositoryId: string): Record<string, unknown>;
11
68
  /**
12
69
  * Deprecated ralph command - alias for launch
13
70
  * @deprecated Use launchCommand instead
14
71
  */
15
72
  export declare function ralphCommand(program: Command, config: Config): void;
73
+ export {};
16
74
  //# sourceMappingURL=launch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../src/commands/launch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAyBhD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA8EpE;AAi2BD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAyCnE"}
1
+ {"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../src/commands/launch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAyBhD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAyGpE;AAED,UAAU,aAAa;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC;AA2BD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAavE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,EACtB,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,iBAAiB,GAAG,SAAS,CAI/B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzB;AA8/BD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAyCnE"}
@@ -1,4 +1,5 @@
1
1
  import axios from 'axios';
2
+ import inquirer from 'inquirer';
2
3
  import chalk from 'chalk';
3
4
  import os from 'os';
4
5
  import path from 'path';
@@ -39,6 +40,8 @@ export function launchCommand(program, config) {
39
40
  .option('--resume <step>', 'Resume from step N (1-9)', parseInt)
40
41
  .option('--fix <instructions>', 'Fix instructions (use with --resume)')
41
42
  .option('--regression', 'Force regression tests to run')
43
+ .option('--kill', 'Stop the in-flight task for this tracking name (no relaunch)')
44
+ .option('--kill-and-relaunch', 'Cancel the in-flight task, reset stale state, and relaunch')
42
45
  .option('--verbose', 'Show full output')
43
46
  // .option(
44
47
  // '--test',
@@ -70,7 +73,24 @@ export function launchCommand(program, config) {
70
73
  await showJobLogs(config, options.logs, options);
71
74
  return;
72
75
  }
73
- // Regular launch requires issueName and planPath
76
+ // Validate the --kill / --kill-and-relaunch combination (mutual
77
+ // exclusion + composition with launch-only flags) before any work.
78
+ const killFlagError = validateKillFlags(options);
79
+ if (killFlagError) {
80
+ logger.error(killFlagError);
81
+ process.exit(1);
82
+ }
83
+ // --kill is a cancel-only path: it needs ONLY the tracking name (no
84
+ // plan path) and routes to the dedicated executeKill function.
85
+ if (options.kill) {
86
+ if (!issueName) {
87
+ logger.error('Usage: hula launch <issueName> --kill');
88
+ process.exit(1);
89
+ }
90
+ await executeKill(config, issueName, options);
91
+ return;
92
+ }
93
+ // Regular launch / --kill-and-relaunch requires issueName and planPath
74
94
  if (!issueName || !planPath) {
75
95
  logger.error('Usage: hula launch <issueName> <planPath>');
76
96
  logger.info('Or use --show <name> or --logs <name> to view job details');
@@ -85,6 +105,69 @@ export function launchCommand(program, config) {
85
105
  }
86
106
  });
87
107
  }
108
+ /**
109
+ * Launch-only flags that are meaningless for a bare `--kill` (which just stops
110
+ * the running task). Keyed by option field with the user-facing flag name.
111
+ */
112
+ const KILL_INCOMPATIBLE_FLAGS = [
113
+ { key: 'resume', flag: '--resume' },
114
+ { key: 'fix', flag: '--fix' },
115
+ { key: 'test', flag: '--test' },
116
+ { key: 'handoff', flag: '--handoff' },
117
+ { key: 'regression', flag: '--regression' },
118
+ ];
119
+ /**
120
+ * Validate the `--kill` / `--kill-and-relaunch` flag combination.
121
+ *
122
+ * - The two flags are mutually exclusive.
123
+ * - `--kill` composes with no other launch-only flag (`--resume`, `--fix`,
124
+ * `--test`, `--handoff`, `--regression`).
125
+ * - `--kill-and-relaunch` composes normally with every launch flag.
126
+ *
127
+ * Returns an error message when the combination is invalid, or `null` when OK.
128
+ */
129
+ export function validateKillFlags(options) {
130
+ if (options.kill && options.killAndRelaunch) {
131
+ return '--kill and --kill-and-relaunch cannot be used together';
132
+ }
133
+ if (options.kill) {
134
+ for (const { key, flag } of KILL_INCOMPATIBLE_FLAGS) {
135
+ const value = options[key];
136
+ if (value !== undefined && value !== false) {
137
+ return `--kill does not take ${flag}; it only stops the running task`;
138
+ }
139
+ }
140
+ }
141
+ return null;
142
+ }
143
+ /**
144
+ * Whether a plan path is required for the given flag combination.
145
+ * `--kill` needs only the tracking name; every other mode needs a plan.
146
+ */
147
+ export function requiresPlanPath(options) {
148
+ return !options.kill;
149
+ }
150
+ /**
151
+ * Derive the request `conflictMode` from the CLI flags (plus an optional explicit
152
+ * override used when re-invoking after an interactive 409 resolution).
153
+ *
154
+ * Returns `undefined` for the default `reject` path so the request body stays
155
+ * byte-identical to today's — the key is only added for `killAndRelaunch`.
156
+ */
157
+ export function deriveConflictMode(options, override) {
158
+ if (override)
159
+ return override;
160
+ if (options.killAndRelaunch)
161
+ return 'killAndRelaunch';
162
+ return undefined;
163
+ }
164
+ /**
165
+ * Build the request body for a cancel-only (`--kill`) call. Carries NO secrets —
166
+ * only the tracking name, repository id, and the `kill` conflict mode.
167
+ */
168
+ export function buildKillRequestBody(issueName, repositoryId) {
169
+ return { issueName, repositoryId, conflictMode: 'kill' };
170
+ }
88
171
  async function validateLaunchCredentials(anthropicApiKey, githubToken) {
89
172
  console.log('Checking your credentials before launch...\n');
90
173
  // --- Anthropic ---
@@ -254,8 +337,15 @@ async function verifyProTier(config, serverUrl, apiKey) {
254
337
  return true;
255
338
  }
256
339
  }
257
- async function executeLaunch(config, issueName, planPath, options) {
340
+ async function executeLaunch(config, issueName, planPath, options,
341
+ // Explicit conflict mode override. Set when re-invoking after the interactive
342
+ // 409 resolver picks "kill and relaunch" — it both forces the server to
343
+ // cancel+relaunch and (being non-undefined) suppresses re-entering the prompt.
344
+ conflictModeOverride) {
258
345
  logger.section('Launch');
346
+ // Effective conflict mode: an explicit override (from the 409 resolver) or the
347
+ // --kill-and-relaunch flag. Undefined = default 'reject' (byte-identical body).
348
+ const conflictMode = deriveConflictMode(options, conflictModeOverride);
259
349
  // Check if plan is synced to origin/main
260
350
  const planSyncStatus = await checkPlanSyncStatus(config, planPath);
261
351
  if (!planSyncStatus.synced) {
@@ -401,6 +491,13 @@ async function executeLaunch(config, issueName, planPath, options) {
401
491
  if (options.test) {
402
492
  requestBody.test = true;
403
493
  }
494
+ // Maps to RalphRunRequest.conflictMode (hula-server PR #391). Only added for
495
+ // 'killAndRelaunch' — the server default 'reject' is expressed by omitting the
496
+ // key entirely, keeping the default-launch request body byte-identical to
497
+ // before this change (same pattern as `test` above).
498
+ if (conflictMode) {
499
+ requestBody.conflictMode = conflictMode;
500
+ }
404
501
  if (options.verbose) {
405
502
  requestBody.verbose = true;
406
503
  }
@@ -504,6 +601,11 @@ async function executeLaunch(config, issueName, planPath, options) {
504
601
  timeout: 30000, // 30 second timeout
505
602
  });
506
603
  if (response.data.success) {
604
+ // killAndRelaunch over an active task: note the cancellation before the
605
+ // normal launch success output.
606
+ if (response.data.killed === true) {
607
+ logger.info('Cancelled the previous in-flight task.');
608
+ }
507
609
  logger.success(response.data.message);
508
610
  logger.blank();
509
611
  if (response.data.planId) {
@@ -528,52 +630,187 @@ async function executeLaunch(config, issueName, planPath, options) {
528
630
  }
529
631
  }
530
632
  catch (error) {
531
- if (axios.isAxiosError(error)) {
532
- if (error.response) {
533
- const status = error.response.status;
534
- const data = error.response.data;
535
- switch (status) {
536
- case 400:
537
- logger.error(`Bad request: ${data.error || 'Invalid parameters'}`);
538
- break;
539
- case 401:
540
- logger.error('Authentication failed. Your API key may be invalid.');
541
- logger.info("Run 'hula login' to re-authenticate.");
542
- break;
543
- case 402:
544
- printFreeTierError();
545
- break;
546
- case 403:
547
- logger.error('Access denied. You may not be authorized for launch.');
548
- break;
549
- case 404:
550
- logger.error(data.error || `Not found: ${planPath}`);
551
- break;
552
- case 409:
553
- logger.error(`Job already running: ${issueName}`);
554
- break;
555
- case 500:
556
- logger.error(`Server error: ${data.error || 'Internal server error'}`);
557
- break;
558
- default:
559
- logger.error(`Request failed with status ${status}: ${data.error || error.message}`);
560
- }
561
- }
562
- else if (error.code === 'ECONNREFUSED') {
563
- logger.error(`Cannot connect to server at ${serverUrl}`);
564
- logger.info('Make sure the hula-project server is running.');
565
- }
566
- else if (error.code === 'ETIMEDOUT' || error.code === 'ECONNABORTED') {
567
- logger.error('Request timed out');
568
- logger.info('The server may be slow or unreachable.');
569
- }
570
- else {
571
- logger.error(`Network error: ${error.message}`);
633
+ // A 409 on the default `reject` path means a task is already running for this
634
+ // tracking name. Offer recovery options interactively (or, when scripted,
635
+ // print the server message and exit). Skip this whenever a conflictMode is
636
+ // already in play — that request cannot produce a reject 409 and must not
637
+ // re-enter the prompt (loop guard).
638
+ if (!conflictMode &&
639
+ axios.isAxiosError(error) &&
640
+ error.response?.status === 409) {
641
+ await handleReject409(error, config, issueName, planPath, options);
642
+ return;
643
+ }
644
+ handleLaunchAxiosError(error, serverUrl, issueName, planPath);
645
+ process.exit(1);
646
+ }
647
+ }
648
+ /**
649
+ * Shared axios error handler for the launch / kill request. Surfaces the server
650
+ * `data.error` for 400/403/404/409 (PR #391 returns specific, actionable
651
+ * messages), falling back to sensible generics. Re-throws non-axios errors so the
652
+ * caller's outer handler can report them.
653
+ *
654
+ * The interactive 409 resolution (reject path) is handled separately in
655
+ * executeLaunch before this is reached; here 409 is only a generic fallback.
656
+ */
657
+ function handleLaunchAxiosError(error, serverUrl, issueName, planPath) {
658
+ if (axios.isAxiosError(error)) {
659
+ if (error.response) {
660
+ const status = error.response.status;
661
+ const data = error.response.data;
662
+ switch (status) {
663
+ case 400:
664
+ logger.error(`Bad request: ${data.error || 'Invalid parameters'}`);
665
+ break;
666
+ case 401:
667
+ logger.error('Authentication failed. Your API key may be invalid.');
668
+ logger.info("Run 'hula login' to re-authenticate.");
669
+ break;
670
+ case 402:
671
+ printFreeTierError();
672
+ break;
673
+ case 403:
674
+ // Surface the server's specific ownership message (kill /
675
+ // killAndRelaunch return one); fall back to the generic string.
676
+ logger.error(data.error || 'Access denied. You may not be authorized for launch.');
677
+ break;
678
+ case 404:
679
+ logger.error(data.error || `Not found: ${planPath ?? issueName}`);
680
+ break;
681
+ case 409:
682
+ logger.error(data.error || `Job already running: ${issueName}`);
683
+ break;
684
+ case 500:
685
+ logger.error(`Server error: ${data.error || 'Internal server error'}`);
686
+ break;
687
+ default:
688
+ logger.error(`Request failed with status ${status}: ${data.error || error.message}`);
572
689
  }
573
690
  }
691
+ else if (error.code === 'ECONNREFUSED') {
692
+ logger.error(`Cannot connect to server at ${serverUrl}`);
693
+ logger.info('Make sure the hula-project server is running.');
694
+ }
695
+ else if (error.code === 'ETIMEDOUT' || error.code === 'ECONNABORTED') {
696
+ logger.error('Request timed out');
697
+ logger.info('The server may be slow or unreachable.');
698
+ }
699
+ else {
700
+ logger.error(`Network error: ${error.message}`);
701
+ }
702
+ }
703
+ else {
704
+ throw error;
705
+ }
706
+ }
707
+ /**
708
+ * Resolve a `reject` 409 ("a task is already running for this tracking name").
709
+ *
710
+ * - Non-interactive (no TTY — skill wrapper, cron, CI): print the server message
711
+ * (which now names the recovery flags) and exit 1. Never prompt, or the caller
712
+ * would hang.
713
+ * - Interactive: show the message, then an inquirer list. The chosen action
714
+ * re-invokes the launch with an explicit conflict mode (kill-and-relaunch),
715
+ * stops the task (kill), prints resume guidance, or cancels.
716
+ */
717
+ async function handleReject409(error, config, issueName, planPath, options) {
718
+ const data = (error.response?.data ?? {});
719
+ const serverMessage = data.error || `A task is already running for '${issueName}'.`;
720
+ logger.error(serverMessage);
721
+ if (!process.stdout.isTTY) {
722
+ // Scriptable path: no prompt, exit non-zero so the wrapper reports cleanly.
723
+ process.exit(1);
724
+ }
725
+ logger.blank();
726
+ const { action } = await inquirer.prompt([
727
+ {
728
+ type: 'list',
729
+ name: 'action',
730
+ message: 'A task is already running for this tracking name. What next?',
731
+ choices: [
732
+ { name: 'Kill the running task and relaunch', value: 'killAndRelaunch' },
733
+ { name: 'Just stop the running task', value: 'kill' },
734
+ { name: 'Resume from a step instead', value: 'resume' },
735
+ { name: 'Cancel (do nothing)', value: 'cancel' },
736
+ ],
737
+ },
738
+ ]);
739
+ switch (action) {
740
+ case 'killAndRelaunch':
741
+ // Re-invoke with an explicit conflict mode: the server cancels+relaunches
742
+ // and this call cannot hit the reject 409 again (guard above skips prompt).
743
+ await executeLaunch(config, issueName, planPath, options, 'killAndRelaunch');
744
+ return;
745
+ case 'kill':
746
+ await executeKill(config, issueName, options);
747
+ return;
748
+ case 'resume':
749
+ logger.blank();
750
+ logger.info('To resume the existing task from a step, re-run with --resume <step> (optionally with --fix):');
751
+ logger.info(` hula launch ${issueName} ${planPath} --resume <step>`);
752
+ process.exit(0);
753
+ return;
754
+ case 'cancel':
755
+ default:
756
+ logger.info('Cancelled — no changes made.');
757
+ process.exit(0);
758
+ }
759
+ }
760
+ /**
761
+ * Cancel-only path for `hula launch --kill`.
762
+ *
763
+ * Sends `{ issueName, repositoryId, conflictMode: 'kill' }` to the unified
764
+ * ralph-run endpoint and reports the outcome. This deliberately skips ALL
765
+ * launch-only work: no plan sync/upload, no Anthropic/Daytona/GitHub credential
766
+ * resolution or validation, no env-var collection, and no plan-file cleanup. It
767
+ * carries NO secrets — only the tracking name, repository id, and the API key
768
+ * header. The server enforces the Pro gate on every mode, so the pre-flight Pro
769
+ * check is retained. Ownership is enforced server-side (403); the client only
770
+ * surfaces the message. A no-op (nothing to cancel) is a success (exit 0).
771
+ */
772
+ async function executeKill(config, issueName, options) {
773
+ logger.section('Cancel');
774
+ const serverUrl = options.url || config.hulaProjectUrl || HULA_PROJECT_URL;
775
+ const apiKey = options.apiKey || config.hulaApiKey || process.env.HULA_API_KEY;
776
+ if (!apiKey) {
777
+ logger.error('No API key configured.');
778
+ logger.info('Set hulaApiKey in your config or use --api-key option.');
779
+ logger.info('You can also set HULA_API_KEY environment variable.');
780
+ logger.info("Run 'hula login' to authenticate with hula-project.");
781
+ process.exit(1);
782
+ }
783
+ // The server gates all conflict modes (including kill) on the Pro tier.
784
+ const isProUser = await verifyProTier(config, serverUrl, apiKey);
785
+ if (!isProUser) {
786
+ process.exit(1);
787
+ }
788
+ const repositoryId = await resolveProject(config);
789
+ const endpoint = `${serverUrl.replace(/\/$/, '')}/api/v1/ralph-run`;
790
+ const requestBody = buildKillRequestBody(issueName, repositoryId);
791
+ logger.info('Stopping in-flight task...');
792
+ logger.log(` Issue Name: ${issueName}`);
793
+ logger.log(` Server: ${serverUrl}`);
794
+ logger.blank();
795
+ try {
796
+ const response = await axios.post(endpoint, requestBody, {
797
+ headers: {
798
+ 'Content-Type': 'application/json',
799
+ Authorization: `Bearer ${apiKey}`,
800
+ },
801
+ timeout: 30000, // 30 second timeout
802
+ });
803
+ const data = response.data;
804
+ if (data.killed) {
805
+ logger.success(data.message || `Cancelled '${issueName}'`);
806
+ }
574
807
  else {
575
- throw error;
808
+ // No active task to cancel is a success, not an error — exit 0.
809
+ logger.info(data.message || `No active task to cancel for '${issueName}'`);
576
810
  }
811
+ }
812
+ catch (error) {
813
+ handleLaunchAxiosError(error, serverUrl, issueName, undefined);
577
814
  process.exit(1);
578
815
  }
579
816
  }
@@ -1 +1 @@
1
- {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/commands/launch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../src/commands/launch.ts"],"names":[],"mappings":"AACA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAC/C,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAO9B,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,OAAgB,EAAE,MAAc;IAC5D,OAAO;SACJ,OAAO,CAAC,+BAA+B,CAAC;SACxC,WAAW,CAAC,6CAA6C,CAAC;SAC1D,MAAM,CAAC,aAAa,EAAE,kCAAkC,CAAC;SACzD,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;SAC7C,MAAM,CAAC,oBAAoB,EAAE,yBAAyB,EAAE,QAAQ,CAAC;SACjE,MAAM,CAAC,iBAAiB,EAAE,8CAA8C,CAAC;SACzE,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;SAC1D,MAAM,CAAC,eAAe,EAAE,yCAAyC,CAAC;SAClE,MAAM,CAAC,iBAAiB,EAAE,0BAA0B,EAAE,QAAQ,CAAC;SAC/D,MAAM,CAAC,sBAAsB,EAAE,sCAAsC,CAAC;SACtE,MAAM,CAAC,cAAc,EAAE,+BAA+B,CAAC;SACvD,MAAM,CACL,QAAQ,EACR,8DAA8D,CAC/D;SACA,MAAM,CACL,qBAAqB,EACrB,4DAA4D,CAC7D;SACA,MAAM,CAAC,WAAW,EAAE,kBAAkB,CAAC;QACxC,WAAW;QACX,cAAc;QACd,4FAA4F;QAC5F,IAAI;SACH,MAAM,CAAC,sBAAsB,EAAE,8CAA8C,CAAC;SAC9E,MAAM,CAAC,uBAAuB,EAAE,+CAA+C,CAAC;SAChF,MAAM,CAAC,qBAAqB,EAAE,2CAA2C,CAAC;SAC1E,MAAM,CAAC,oBAAoB,EAAE,iDAAiD,EAAE,QAAQ,CAAC;SACzF,MAAM,CAAC,qBAAqB,EAAE,mCAAmC,EAAE,QAAQ,CAAC;SAC5E,MAAM,CAAC,wBAAwB,EAAE,iCAAiC,EAAE,QAAQ,CAAC;SAC7E,MAAM,CAAC,sBAAsB,EAAE,kCAAkC,EAAE,QAAQ,CAAC;SAC5E,MAAM,CACL,iCAAiC,EACjC,yEAAyE,CAC1E;SACA,MAAM,CACL,sCAAsC,EACtC,4IAA4I,CAC7I;SACA,MAAM,CAAC,eAAe,EAAE,yCAAyC,CAAC;SAClE,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;SAChE,MAAM,CACL,aAAa,EACb,4CAA4C,EAC5C,QAAQ,CACT;SACA,MAAM,CAAC,eAAe,EAAE,iDAAiD,CAAC;SAC1E,MAAM,CAAC,UAAU,EAAE,mDAAmD,CAAC;SACvE,MAAM,CACL,KAAK,EACH,SAA6B,EAC7B,QAA4B,EAC5B,OAAO,EACP,EAAE;QACF,IAAI,CAAC;YACH,qBAAqB;YACrB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACnD,OAAO;YACT,CAAC;YAED,qBAAqB;YACrB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,MAAM,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,gEAAgE;YAChE,mEAAmE;YACnE,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC5B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,oEAAoE;YACpE,+DAA+D;YAC/D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;oBACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,MAAM,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC9C,OAAO;YACT,CAAC;YAED,uEAAuE;YACvE,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC1D,MAAM,CAAC,IAAI,CACT,2DAA2D,CAC5D,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC;AA2CD;;;GAGG;AACH,MAAM,uBAAuB,GAC3B;IACE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE;IACnC,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE;IAC7B,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC/B,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;IACrC,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE;CAC5C,CAAC;AAEJ;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAsB;IACtD,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC5C,OAAO,wDAAwD,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,uBAAuB,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBAC3C,OAAO,wBAAwB,IAAI,kCAAkC,CAAC;YACxE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAsB;IACrD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAsB,EACtB,QAA4B;IAE5B,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,OAAO,CAAC,eAAe;QAAE,OAAO,iBAAiB,CAAC;IACtD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,YAAoB;IAEpB,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,eAAuB,EACvB,WAA+B;IAE/B,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAM5D,oBAAoB;IACpB,MAAM,oBAAoB,GAAG;QAC3B,aAAa,EAAE,UAAU,eAAe,EAAE;QAC1C,mBAAmB,EAAE,YAAY;KAClC,CAAC;IAEF,MAAM,gBAAgB,GAA8B,KAAK;SACtD,GAAG,CAAC,qCAAqC,EAAE;QAC1C,OAAO,EAAE,oBAAoB;QAC7B,OAAO,EAAE,IAAI;KACd,CAAC;SACD,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAqB,CAAC;SAC9C,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACtB,IACE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC;YACvB,GAAG,CAAC,QAAQ;YACZ,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG,EACzB,CAAC;YACD,+DAA+D;YAC/D,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,8CAA8C;gBACvD,IAAI,EAAE,yGAAyG;aAC5F,CAAC;QACxB,CAAC;QACD,uDAAuD;QACvD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,KAAK;YACX,OAAO,EACL,+EAA+E;YACjF,IAAI,EAAE,oEAAoE;SACvD,CAAC;IACxB,CAAC,CAAC,CAAC;IAEL,iBAAiB;IACjB,MAAM,aAAa,GAA8B,WAAW;QAC1D,CAAC,CAAC,KAAK;aACF,GAAG,CAAC,6BAA6B,EAAE;YAClC,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE;YACnD,OAAO,EAAE,IAAI;SACd,CAAC;aACD,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAqB,CAAC;aAC9C,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;YACtB,IACE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC;gBACvB,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAC5B,CAAC;gBACD,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,qCAAqC;oBAC9C,IAAI,EAAE,yDAAyD;iBAC5C,CAAC;YACxB,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,KAAK;gBACX,OAAO,EACL,sEAAsE;gBACxE,IAAI,EAAE,yDAAyD;aAC5C,CAAC;QACxB,CAAC,CAAC;QACN,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;YACd,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,wBAAwB;YACjC,IAAI,EAAE,qDAAqD;SACxC,CAAC,CAAC;IAE3B,MAAM,CAAC,eAAe,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC;QAC/D,gBAAgB;QAChB,aAAa;KACd,CAAC,CAAC;IAEH,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,yBAAyB;IACzB,MAAM,MAAM,GACV,eAAe,CAAC,MAAM,KAAK,WAAW;QACpC,CAAC,CAAC,eAAe,CAAC,KAAK;QACvB,CAAC,CAAC;YACE,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,+CAA+C;YACxD,IAAI,EAAE,oBAAoB;SAC3B,CAAC;IACR,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iEAAiE,CACvF,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,cAAc,GAAG,IAAI,CAAC;IACxB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,sBAAsB;IACtB,MAAM,QAAQ,GACZ,YAAY,CAAC,MAAM,KAAK,WAAW;QACjC,CAAC,CAAC,YAAY,CAAC,KAAK;QACpB,CAAC,CAAC;YACE,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,4CAA4C;YACrD,IAAI,EAAE,oBAAoB;SAC3B,CAAC;IACR,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,4CAA4C,CAClE,CAAC;IACJ,CAAC;SAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,cAAc,GAAG,IAAI,CAAC;IACxB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB;IACzB,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACxE,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,CACT,yEAAyE,CAC1E,CAAC;IACF,MAAM,CAAC,IAAI,CACT,4EAA4E,CAC7E,CAAC;IACF,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,MAAM,CAAC,IAAI,CACT,sIAAsI,CACvI,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,aAAa,CAC1B,MAAc,EACd,SAAiB,EACjB,MAAc;IAEd,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,2BAA2B,EAC1D;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;YAC9C,OAAO,EAAE,KAAK;SACf,CACF,CAAC;QACF,MAAM,IAAI,GAAI,QAAQ,CAAC,IAA0B,EAAE,IAAI,CAAC;QACxD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;YAC5D,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,OAAO,CAAC,oEAAoE,CAAC,CAAC;YACvF,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,kBAAkB,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,MAAM,CAAC,KAAK,CAAC,sFAAsF,CAAC,CAAC;gBACrG,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;gBACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;gBAClC,kBAAkB,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,8DAA8D;QAC9D,MAAM,CAAC,OAAO,CAAC,kEAAkE,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,MAAc,EACd,SAAiB,EACjB,QAAgB,EAChB,OAAsB;AACtB,8EAA8E;AAC9E,wEAAwE;AACxE,+EAA+E;AAC/E,oBAAwC;IAExC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEzB,+EAA+E;IAC/E,gFAAgF;IAChF,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IAEvE,yCAAyC;IACzC,MAAM,cAAc,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC3B,IAAI,cAAc,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC5C,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,2DAA2D;QAC3D,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAE7D,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACvC,MAAM,CAAC,KAAK,CACV,WAAW,YAAY,KAAK;gBAC1B,CAAC,CAAC,WAAW,CAAC,OAAO;gBACrB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CACxB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,cAAc,IAAI,gBAAgB,CAAC;IAC3D,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAElE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uDAAuD;IACvD,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACjE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,kDAAkD;IAClD,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAElD,+BAA+B;IAC/B,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,wBAAwB;IACxB,IACE,OAAO,CAAC,MAAM,KAAK,SAAS;QAC5B,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAC1C,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,yBAAyB;IACzB,MAAM,QAAQ,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC;IAEpE,MAAM,qBAAqB,GACzB,OAAO,CAAC,qBAAqB;QAC7B,MAAM,CAAC,qBAAqB;QAC5B,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;IAE3C,MAAM,yBAAyB,GAC7B,OAAO,CAAC,yBAAyB;QACjC,MAAM,CAAC,yBAAyB;QAChC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC;IAEhD,8EAA8E;IAC9E,MAAM,cAAc,GAClB,OAAO,CAAC,WAAW;QACnB,MAAM,CAAC,WAAW;QAClB,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;QACjC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EACtC,CAAC;QACD,MAAM,CAAC,KAAK,CACV,yGAAyG,CAC1G,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,WAAW,GAAG,cAAc,CAAC;IAEnC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,CAAC,gBAAgB,QAAQ,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,GAAG,CAAC,aAAa,SAAS,EAAE,CAAC,CAAC;IAErC,iCAAiC;IACjC,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,QAAQ,QAAQ,CAAC,CAAC;IAC1E,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK;QAAE,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;SAC9D,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3C,MAAM,CAAC,GAAG,CAAC,oBAAoB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrD,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,IAAI,OAAO,CAAC,GAAG;QAAE,MAAM,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClE,IAAI,OAAO,CAAC,UAAU;QAAE,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC9D,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACpE,IAAI,qBAAqB;QAAE,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACzE,IAAI,yBAAyB;QAC3B,MAAM,CAAC,GAAG,CAAC,iBAAiB,yBAAyB,EAAE,CAAC,CAAC;IAC3D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QACzD,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,4BAA4B,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,mBAAmB,WAAW,EAAE,CAAC,CAAC;IAE7C,MAAM,CAAC,KAAK,EAAE,CAAC;IAEf,qBAAqB;IACrB,MAAM,WAAW,GAA4B;QAC3C,SAAS;QACT,QAAQ;QACR,YAAY;KACb,CAAC;IAEF,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,WAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC1C,CAAC;IAED,8DAA8D;IAC9D,+CAA+C;IAC/C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IACzC,CAAC;IAED,gEAAgE;IAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC/B,WAAW,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC/B,CAAC;SAAM,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAChD,WAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACtC,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,WAAW,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC;IAChC,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,yEAAyE;IACzE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,6EAA6E;IAC7E,+EAA+E;IAC/E,0EAA0E;IAC1E,qDAAqD;IACrD,IAAI,YAAY,EAAE,CAAC;QACjB,WAAW,CAAC,YAAY,GAAG,YAAY,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACxC,CAAC;IAED,yEAAyE;IACzE,qEAAqE;IACrE,uEAAuE;IACvE,MAAM,EACJ,eAAe,EACf,aAAa,EACb,MAAM,EAAE,gBAAgB,GACzB,GAAG,2BAA2B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEjD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,WAAW,CAAC,eAAe,GAAG,eAAe,CAAC;IAC9C,WAAW,CAAC,aAAa,GAAG,aAAa,CAAC;IAC1C,WAAW,CAAC,WAAW,GAAG,WAAW,CAAC;IAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,IAAI,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,IAAI,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC;IACzE,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1E,MAAM,GAAG,GAAG,MAAM,IAAI,2BAA2B,CAAC,GAAG,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,2BAA2B,CAAC,MAAM,CAAC;QAC5D,MAAM,IAAI,GAAG,OAAO,IAAI,2BAA2B,CAAC,IAAI,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;YAClD,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;YAC5D,MAAM,CAAC,KAAK,CACV,oEAAoE,CACrE,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC;YACtD,MAAM,CAAC,KAAK,CACV,kEAAkE,CACnE,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,WAAW,CAAC,kBAAkB,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QACvD,MAAM,CAAC,GAAG,CACR,8BAA8B,GAAG,WAAW,MAAM,YAAY,IAAI,KAAK,CACxE,CAAC;IACJ,CAAC;IAED,IAAI,qBAAqB,EAAE,CAAC;QAC1B,WAAW,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IAC5D,CAAC;IAED,IAAI,yBAAyB,EAAE,CAAC;QAC9B,WAAW,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;IACpE,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,SAAS,EAAE,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACxE,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,CAAC,WAAW,GAAG,WAAW,CAAC;IACxC,CAAC;IAED,6EAA6E;IAC7E,+EAA+E;IAC/E,oDAAoD;IACpD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAEjE,IAAI,CAAC;YACH,uEAAuE;YACvE,IAAI,aAAa,GAAa,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;gBACzD,CAAC,CAAC,MAAM,CAAC,OAAO;gBAChB,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;gBAC7B,+CAA+C;gBAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC5C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CACb,6DAA6D,OAAO,IAAI;wBACtE,0DAA0D,CAC7D,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;gBAEjC,kDAAkD;gBAClD,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CACjC,CAAC;gBAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,MAAM,CAAC,OAAO,CACZ,gFAAgF,CACjF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,uBAAuB;YACvB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,sBAAsB,CAAC,aAAa,CAAC,CAAC;gBACtC,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC;gBAEnE,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;oBAC9B,MAAM,CAAC,GAAG,CACR,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,wBAAwB,CAC3D,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,wEAAwE;IACxE,MAAM,yBAAyB,CAAC,eAAgB,EAAE,WAAW,CAAC,CAAC;IAE/D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAC/B,QAAQ,EACR,WAAW,EACX;YACE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,MAAM,EAAE;aAClC;YACD,OAAO,EAAE,KAAK,EAAE,oBAAoB;SACrC,CACF,CAAC;QAEF,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,wEAAwE;YACxE,gCAAgC;YAChC,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACxD,CAAC;YACD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,8CAA8C,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACrF,MAAM,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChD,MAAM,CAAC,IAAI,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CACT,gDAAgD,CACjD,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CACT,sHAAsH,CACvH,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,6EAA6E;YAC7E,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrD,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,8EAA8E;QAC9E,0EAA0E;QAC1E,2EAA2E;QAC3E,0EAA0E;QAC1E,oCAAoC;QACpC,IACE,CAAC,YAAY;YACb,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC;YACzB,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAC9B,CAAC;YACD,MAAM,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,sBAAsB,CAC7B,KAAc,EACd,SAAiB,EACjB,SAAiB,EACjB,QAA4B;IAE5B,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAA0B,CAAC;YAEvD,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,IAAI,oBAAoB,EAAE,CAAC,CAAC;oBACnE,MAAM;gBACR,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;oBACpE,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,GAAG;oBACN,kBAAkB,EAAE,CAAC;oBACrB,MAAM;gBACR,KAAK,GAAG;oBACN,0DAA0D;oBAC1D,gEAAgE;oBAChE,MAAM,CAAC,KAAK,CACV,IAAI,CAAC,KAAK,IAAI,sDAAsD,CACrE,CAAC;oBACF,MAAM;gBACR,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,cAAc,QAAQ,IAAI,SAAS,EAAE,CAAC,CAAC;oBAClE,MAAM;gBACR,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,wBAAwB,SAAS,EAAE,CAAC,CAAC;oBAChE,MAAM;gBACR,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CACV,iBAAiB,IAAI,CAAC,KAAK,IAAI,uBAAuB,EAAE,CACzD,CAAC;oBACF,MAAM;gBACR;oBACE,MAAM,CAAC,KAAK,CACV,8BAA8B,MAAM,KAAK,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,CACvE,CAAC;YACN,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACvE,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,eAAe,CAC5B,KAAiB,EACjB,MAAc,EACd,SAAiB,EACjB,QAAgB,EAChB,OAAsB;IAEtB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAuB,CAAC;IAChE,MAAM,aAAa,GACjB,IAAI,CAAC,KAAK,IAAI,kCAAkC,SAAS,IAAI,CAAC;IAEhE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAE5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1B,4EAA4E;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,KAAK,EAAE,CAAC;IAEf,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAqB;QAC3D;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,8DAA8D;YACvE,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,iBAAiB,EAAE;gBACxE,EAAE,IAAI,EAAE,4BAA4B,EAAE,KAAK,EAAE,MAAM,EAAE;gBACrD,EAAE,IAAI,EAAE,4BAA4B,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACvD,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,QAAQ,EAAE;aACjD;SACF;KACF,CAAC,CAAC;IAEH,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,iBAAiB;YACpB,0EAA0E;YAC1E,4EAA4E;YAC5E,MAAM,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;YAC7E,OAAO;QACT,KAAK,MAAM;YACT,MAAM,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO;QACT,KAAK,QAAQ;YACX,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CACT,+FAA+F,CAChG,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,iBAAiB,SAAS,IAAI,QAAQ,kBAAkB,CAAC,CAAC;YACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO;QACT,KAAK,QAAQ,CAAC;QACd;YACE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,WAAW,CACxB,MAAc,EACd,SAAiB,EACjB,OAAsB;IAEtB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEzB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,cAAc,IAAI,gBAAgB,CAAC;IAC3E,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAElE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,wEAAwE;IACxE,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACjE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC;IACpE,MAAM,WAAW,GAAG,oBAAoB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAElE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,CAAC,aAAa,SAAS,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,KAAK,EAAE,CAAC;IAEf,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAoB,QAAQ,EAAE,WAAW,EAAE;YAC1E,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,MAAM,EAAE;aAClC;YACD,OAAO,EAAE,KAAK,EAAE,oBAAoB;SACrC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,SAAS,GAAG,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,iCAAiC,SAAS,GAAG,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,MAAc,EACd,SAAiB,EACjB,OAAsB;IAEtB,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,cAAc,IAAI,gBAAgB,CAAC;IAC3D,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAElE,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC;IAE5G,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAoB,QAAQ,EAAE;YAC5D,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;YAC9C,MAAM,EAAE,EAAE,OAAO,EAAE;YACnB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC;YAC3C,MAAM,CAAC,GAAG,CAAC,aAAa,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC3D,IAAI,IAAI,CAAC,MAAM;gBAAE,MAAM,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACrD,IAAI,IAAI,CAAC,YAAY;gBAAE,MAAM,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,cAAc;gBACrB,MAAM,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YACpD,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAChE,MAAM,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ;gBAAE,MAAM,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC5D,IAAI,IAAI,CAAC,QAAQ;gBAAE,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,aAAa;gBAAE,MAAM,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YACtE,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CACxB,MAAc,EACd,SAAiB,EACjB,OAAsB;IAEtB,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,cAAc,IAAI,gBAAgB,CAAC;IAC3D,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAClE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC;IACnC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IAE7D,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC;QAClC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;QACrC,MAAM;QACN,OAAO,EAAE,KAAK;KACf,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE;YACvD,IAAI,EAAE,OAAO;YACb,KAAK;YACL,OAAO;SACR,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,eAAe,GAAG,IAAI,eAAe,CACzC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CACzC,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC1E,MAAM,CAAC,IAAI,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;YAC7C,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC9D,MAAM,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAA0B;IACjD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC;QACpB,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC;QACtB,KAAK,WAAW;YACd,OAAO,aAAa,CAAC;QACvB,KAAK,QAAQ;YACX,OAAO,UAAU,CAAC;QACpB,KAAK,WAAW;YACd,OAAO,cAAc,CAAC;QACxB;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAc,EAAE,SAAiB;IACvD,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAA0B,CAAC;YAEvD,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;oBACpE,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,GAAG;oBACN,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC;oBACxC,MAAM;gBACR;oBACE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,8BAA8B,MAAM,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAuBD;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAChC,MAAc,EACd,QAAgB;IAEhB,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAErD,2BAA2B;IAC3B,MAAM,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEzC,sCAAsC;IACtC,MAAM,YAAY,GAAG,WAAW,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,eAAe,CAC/C,aAAa,EACb,YAAY,CACb,CAAC;IAEF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;IACnD,CAAC;IAED,mBAAmB;IACnB,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3E,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IACnD,CAAC;IAED,6EAA6E;IAC7E,2EAA2E;IAC3E,sCAAsC;IACtC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IACnD,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,MAAc;IAC3D,OAAO;SACJ,OAAO,CAAC,8BAA8B,CAAC;SACvC,WAAW,CAAC,wCAAwC,CAAC;SACrD,MAAM,CAAC,aAAa,EAAE,kCAAkC,CAAC;SACzD,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;SAC7C,MAAM,CAAC,oBAAoB,EAAE,yBAAyB,EAAE,QAAQ,CAAC;SACjE,MAAM,CAAC,gBAAgB,EAAE,6CAA6C,CAAC;SACvE,MAAM,CAAC,iBAAiB,EAAE,8CAA8C,CAAC;SACzE,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;SAC1D,MAAM,CAAC,eAAe,EAAE,yCAAyC,CAAC;SAClE,MAAM,CAAC,iBAAiB,EAAE,0BAA0B,EAAE,QAAQ,CAAC;SAC/D,MAAM,CAAC,sBAAsB,EAAE,sCAAsC,CAAC;SACtE,MAAM,CAAC,cAAc,EAAE,+BAA+B,CAAC;SACvD,MAAM,CAAC,WAAW,EAAE,kBAAkB,CAAC;SACvC,MAAM,CACL,KAAK,EACH,SAAiB,EACjB,QAAgB,EAChB,OAA2C,EAC3C,EAAE;QACF,MAAM,CAAC,OAAO,CACZ,mEAAmE,CACpE,CAAC;QACF,MAAM,CAAC,KAAK,EAAE,CAAC;QAEf,uEAAuE;QACvE,MAAM,aAAa,GAAkB;YACnC,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK;SACxC,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC"}
@@ -1,6 +1,7 @@
1
1
  #!/usr/bin/env bash
2
2
  # hula-launch-run.sh — Step 4 of the hula.launch workflow
3
- # Usage: bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> [--handoff <username>] [--test]
3
+ # Usage: bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> [--handoff <username>] [--test] [--kill] [--kill-and-relaunch]
4
+ # bash .github/scripts/hula-launch-run.sh <branch-name> --kill # cancel only; no plan path required
4
5
  #
5
6
  # Performs: hula launch (which handles plan upload automatically)
6
7
  # Outputs structured JSON to stdout; all other output goes to stderr.
@@ -37,6 +38,8 @@ PLAN_PATH=''
37
38
  BRANCH_NAME=''
38
39
  HANDOFF=''
39
40
  TEST=''
41
+ KILL=''
42
+ KILL_AND_RELAUNCH=''
40
43
 
41
44
  while [[ $# -gt 0 ]]; do
42
45
  case "$1" in
@@ -46,6 +49,10 @@ while [[ $# -gt 0 ]]; do
46
49
  HANDOFF="${1#--handoff=}"; shift ;;
47
50
  --test)
48
51
  TEST=1; shift ;;
52
+ --kill)
53
+ KILL=1; shift ;;
54
+ --kill-and-relaunch)
55
+ KILL_AND_RELAUNCH=1; shift ;;
49
56
  *)
50
57
  if [[ -z "$PLAN_PATH" ]]; then
51
58
  PLAN_PATH="$1"
@@ -58,28 +65,60 @@ while [[ $# -gt 0 ]]; do
58
65
  esac
59
66
  done
60
67
 
61
- if [[ -z "$PLAN_PATH" || -z "$BRANCH_NAME" ]]; then
62
- die 1 "Usage: bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> [--handoff <username>] [--test]"
68
+ if [[ -n "$KILL" && -n "$KILL_AND_RELAUNCH" ]]; then
69
+ die 1 "--kill and --kill-and-relaunch cannot be used together"
63
70
  fi
64
71
 
65
- # Reject paths with directory traversal sequences
66
- if printf '%s' "$PLAN_PATH" | grep -q '\.\.'; then
72
+ if [[ -n "$KILL" ]]; then
73
+ # kill needs ONLY the branch name. Accept either "<branch-name> --kill" (a
74
+ # single positional) or "<plan-path> <branch-name> --kill" (the plan path is
75
+ # ignored — kill sends none). When only one positional was given it lands in
76
+ # PLAN_PATH, so re-home it as the branch name.
77
+ if [[ -z "$BRANCH_NAME" ]]; then
78
+ BRANCH_NAME="$PLAN_PATH"
79
+ PLAN_PATH=''
80
+ fi
81
+ if [[ -z "$BRANCH_NAME" ]]; then
82
+ die 1 "Usage: bash .github/scripts/hula-launch-run.sh <branch-name> --kill"
83
+ fi
84
+ else
85
+ if [[ -z "$PLAN_PATH" || -z "$BRANCH_NAME" ]]; then
86
+ die 1 "Usage: bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> [--handoff <username>] [--test] [--kill-and-relaunch]"
87
+ fi
88
+ fi
89
+
90
+ # Reject paths with directory traversal sequences (only when a plan is in play)
91
+ if [[ -n "$PLAN_PATH" ]] && printf '%s' "$PLAN_PATH" | grep -q '\.\.'; then
67
92
  die 1 "Invalid plan path (path traversal not allowed): ${PLAN_PATH}"
68
93
  fi
69
94
 
70
95
  # ── Step 4: Run hula launch ─────────────────────────────────────────────────
71
96
 
72
- printf '🚀 Launching issue from plan: %s\n' "$PLAN_PATH" >&2
97
+ if [[ -n "$KILL" ]]; then
98
+ printf '🛑 Stopping in-flight task for branch: %s\n' "$BRANCH_NAME" >&2
99
+ else
100
+ printf '🚀 Launching issue from plan: %s\n' "$PLAN_PATH" >&2
101
+ fi
73
102
 
74
- # Build the launch invocation as an args array so --handoff and --test compose
75
- # without combinatorial if/else branching.
76
- LAUNCH_ARGS=("$BRANCH_NAME" "$PLAN_PATH")
103
+ # Build the launch invocation as an args array so the flags compose without
104
+ # combinatorial if/else branching. Branch name is always first; the plan path is
105
+ # a positional appended only when present (a bare --kill sends no plan path).
106
+ LAUNCH_ARGS=("$BRANCH_NAME")
107
+ if [[ -n "$PLAN_PATH" && -z "$KILL" ]]; then
108
+ LAUNCH_ARGS+=("$PLAN_PATH")
109
+ fi
77
110
  if [[ -n "$HANDOFF" ]]; then
78
111
  LAUNCH_ARGS+=(--handoff "$HANDOFF")
79
112
  fi
80
113
  if [[ -n "$TEST" ]]; then
81
114
  LAUNCH_ARGS+=(--test)
82
115
  fi
116
+ if [[ -n "$KILL" ]]; then
117
+ LAUNCH_ARGS+=(--kill)
118
+ fi
119
+ if [[ -n "$KILL_AND_RELAUNCH" ]]; then
120
+ LAUNCH_ARGS+=(--kill-and-relaunch)
121
+ fi
83
122
  LAUNCH_OUTPUT=$(hula launch "${LAUNCH_ARGS[@]}" 2>&1) \
84
123
  || die 2 "Launch failed: $LAUNCH_OUTPUT"
85
124
 
@@ -2,7 +2,7 @@
2
2
  name: hula-launch
3
3
  description: Launch a GitHub issue from the current plan. Use when the user asks to launch or assign the plan to a remote agent.
4
4
  disable-model-invocation: true
5
- argument-hint: <branch-name> [<plan-path>] [--handoff <username>] [--test]
5
+ argument-hint: <branch-name> [<plan-path>] [--handoff <username>] [--test] [--kill] [--kill-and-relaunch]
6
6
  allowed-tools: Bash Read
7
7
  ---
8
8
 
@@ -15,26 +15,35 @@ From `$ARGUMENTS`:
15
15
  - **Plan path** (optional): the second word, if present (e.g., `.hublaunch/plans/2026-06-10-14:00-feature-auth.md`).
16
16
  - **--handoff** (optional): a `--handoff <username>` flag anywhere in `$ARGUMENTS`.
17
17
  - **--test** (optional): the bare flag `--test`, anywhere in `$ARGUMENTS`. Sets test mode (server uses a mock Claude — fast E2E run; a real PR is still created).
18
+ - **--kill** (optional): the bare flag `--kill`, anywhere in `$ARGUMENTS`. Stops the in-flight task for this branch name **without** relaunching. A plan path is **not** required with `--kill` — the branch name alone is enough.
19
+ - **--kill-and-relaunch** (optional): the bare flag `--kill-and-relaunch`, anywhere in `$ARGUMENTS`. Cancels the in-flight task, resets stale state, and launches a fresh task (needs a plan path, like a normal launch).
20
+
21
+ `--kill` and `--kill-and-relaunch` are mutually exclusive; if the user passes both, stop with:
22
+ ```
23
+ ❌ --kill and --kill-and-relaunch cannot be used together.
24
+ ```
18
25
 
19
26
  If no branch name is provided, stop with:
20
27
  ```
21
- ❌ Branch name required. Usage: /hula-launch <branch-name> [<plan-path>] [--handoff <username>] [--test]
28
+ ❌ Branch name required. Usage: /hula-launch <branch-name> [<plan-path>] [--handoff <username>] [--test] [--kill] [--kill-and-relaunch]
22
29
  ```
23
30
 
31
+ **Plan path resolution** (skip entirely when `--kill` is set — a bare kill needs only the branch name):
32
+
24
33
  If no plan path was given in `$ARGUMENTS`, look in the current chat history for the HTML comment:
25
34
  ```
26
35
  <!-- hula-plan: <path> -->
27
36
  ```
28
37
  Use the path from the most recent such comment.
29
38
 
30
- If no plan path is found in `$ARGUMENTS` or chat history, stop with:
39
+ If no plan path is found in `$ARGUMENTS` or chat history (and `--kill` is not set), stop with:
31
40
  ```
32
41
  ❌ No plan found in this chat. Run /hula-plan first, or pass the plan path as the second argument.
33
42
  ```
34
43
 
35
44
  ## Step 2: Run the launch script
36
45
 
37
- With both values known, run exactly one Bash command:
46
+ With the values known, run exactly one Bash command.
38
47
 
39
48
  Without handoff:
40
49
  ```bash
@@ -58,11 +67,31 @@ bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> --handoff <use
58
67
 
59
68
  Append `--test` whenever the user passed it; it composes with `--handoff`.
60
69
 
70
+ **Stop the in-flight task without relaunching (`--kill`)** — pass only the branch name (no plan path):
71
+ ```bash
72
+ bash .github/scripts/hula-launch-run.sh <branch-name> --kill
73
+ ```
74
+
75
+ **Kill the in-flight task and relaunch fresh (`--kill-and-relaunch`)** — needs a plan path, like a normal launch, and composes with `--handoff`/`--test`:
76
+ ```bash
77
+ bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> --kill-and-relaunch
78
+ ```
79
+
61
80
  ## Step 3: Show the result
62
81
 
63
82
  Parse the JSON output from the script:
64
83
  - If `status` is `"error"`, display `❌ Launch failed: <message>` and stop.
65
- - If `status` is `"success"`, display:
84
+ - If `status` is `"success"` **and this was a `--kill` (cancel-only) run** — indicated by an empty `issueNumber` — there is no new issue/PR. Display a cancel summary instead of the launch template:
85
+
86
+ ```
87
+ 🛑 Kill request sent for branch `<branchName>`
88
+
89
+ <cliOutput>
90
+ ```
91
+
92
+ The `cliOutput` already says whether a task was cancelled (`Cancelled '<branch>'`) or there was nothing to cancel (`No active task to cancel for '<branch>'`). Do **not** emit a `hula-issue` comment for a pure kill.
93
+
94
+ - Otherwise (`status` is `"success"` with a non-empty `issueNumber` — a normal launch or `--kill-and-relaunch`), display:
66
95
 
67
96
  ```
68
97
  ✅ Launched issue #<issueNumber> on branch `<branchName>`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hub-launch",
3
- "version": "1.10.0",
3
+ "version": "1.11.0",
4
4
  "description": "GitHub Issue and PR automation CLI tool with plugin/hook system for project-specific customizations",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",