@namzu/sdk 52.3.0 → 52.5.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 (176) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/authorization/gate.d.ts +11 -0
  3. package/dist/authorization/gate.d.ts.map +1 -1
  4. package/dist/authorization/gate.js +35 -0
  5. package/dist/authorization/gate.js.map +1 -1
  6. package/dist/authorization/removal.js +11 -6
  7. package/dist/authorization/removal.js.map +1 -1
  8. package/dist/authorization/rules.d.ts.map +1 -1
  9. package/dist/authorization/rules.js +30 -2
  10. package/dist/authorization/rules.js.map +1 -1
  11. package/dist/authorization/shell-paths.d.ts +20 -0
  12. package/dist/authorization/shell-paths.d.ts.map +1 -1
  13. package/dist/authorization/shell-paths.js +254 -52
  14. package/dist/authorization/shell-paths.js.map +1 -1
  15. package/dist/bridge/acp/server.d.ts +8 -0
  16. package/dist/bridge/acp/server.d.ts.map +1 -1
  17. package/dist/bridge/acp/server.js +7 -0
  18. package/dist/bridge/acp/server.js.map +1 -1
  19. package/dist/connector/web/guarded-fetch.d.ts.map +1 -1
  20. package/dist/connector/web/guarded-fetch.js +44 -0
  21. package/dist/connector/web/guarded-fetch.js.map +1 -1
  22. package/dist/manager/resident/outbox.d.ts +4 -4
  23. package/dist/process/kill-tree.d.ts +3 -2
  24. package/dist/process/kill-tree.d.ts.map +1 -1
  25. package/dist/process/kill-tree.js.map +1 -1
  26. package/dist/public-runtime.d.ts +3 -2
  27. package/dist/public-runtime.d.ts.map +1 -1
  28. package/dist/public-runtime.js +4 -1
  29. package/dist/public-runtime.js.map +1 -1
  30. package/dist/public-tools.d.ts +2 -1
  31. package/dist/public-tools.d.ts.map +1 -1
  32. package/dist/public-tools.js +1 -1
  33. package/dist/public-tools.js.map +1 -1
  34. package/dist/public-types.d.ts +1 -0
  35. package/dist/public-types.d.ts.map +1 -1
  36. package/dist/runtime/jobs/registry.d.ts +80 -2
  37. package/dist/runtime/jobs/registry.d.ts.map +1 -1
  38. package/dist/runtime/jobs/registry.js +70 -5
  39. package/dist/runtime/jobs/registry.js.map +1 -1
  40. package/dist/runtime/jobs/websocket-source.d.ts +120 -0
  41. package/dist/runtime/jobs/websocket-source.d.ts.map +1 -0
  42. package/dist/runtime/jobs/websocket-source.js +379 -0
  43. package/dist/runtime/jobs/websocket-source.js.map +1 -0
  44. package/dist/runtime/query/auto-review/classifier.d.ts +130 -0
  45. package/dist/runtime/query/auto-review/classifier.d.ts.map +1 -0
  46. package/dist/runtime/query/auto-review/classifier.js +244 -0
  47. package/dist/runtime/query/auto-review/classifier.js.map +1 -0
  48. package/dist/runtime/query/auto-review/index.d.ts +7 -0
  49. package/dist/runtime/query/auto-review/index.d.ts.map +1 -0
  50. package/dist/runtime/query/auto-review/index.js +4 -0
  51. package/dist/runtime/query/auto-review/index.js.map +1 -0
  52. package/dist/runtime/query/auto-review/prompt.d.ts +20 -0
  53. package/dist/runtime/query/auto-review/prompt.d.ts.map +1 -0
  54. package/dist/runtime/query/auto-review/prompt.js +89 -0
  55. package/dist/runtime/query/auto-review/prompt.js.map +1 -0
  56. package/dist/runtime/query/auto-review/rules.d.ts +49 -0
  57. package/dist/runtime/query/auto-review/rules.d.ts.map +1 -0
  58. package/dist/runtime/query/auto-review/rules.js +81 -0
  59. package/dist/runtime/query/auto-review/rules.js.map +1 -0
  60. package/dist/runtime/query/auto-review/transcript.d.ts +59 -0
  61. package/dist/runtime/query/auto-review/transcript.d.ts.map +1 -0
  62. package/dist/runtime/query/auto-review/transcript.js +116 -0
  63. package/dist/runtime/query/auto-review/transcript.js.map +1 -0
  64. package/dist/runtime/query/auto-review/verdict.d.ts +21 -0
  65. package/dist/runtime/query/auto-review/verdict.d.ts.map +1 -0
  66. package/dist/runtime/query/auto-review/verdict.js +45 -0
  67. package/dist/runtime/query/auto-review/verdict.js.map +1 -0
  68. package/dist/runtime/query/executor.d.ts +7 -0
  69. package/dist/runtime/query/executor.d.ts.map +1 -1
  70. package/dist/runtime/query/executor.js +26 -2
  71. package/dist/runtime/query/executor.js.map +1 -1
  72. package/dist/runtime/query/index.js +2 -2
  73. package/dist/runtime/query/index.js.map +1 -1
  74. package/dist/runtime/query/iteration/phases/context.d.ts +0 -9
  75. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  76. package/dist/runtime/query/iteration/phases/context.js +11 -2
  77. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  78. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  79. package/dist/runtime/query/iteration/phases/tool-review.js +39 -0
  80. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  81. package/dist/runtime/query/path-escalation.d.ts.map +1 -1
  82. package/dist/runtime/query/path-escalation.js +43 -10
  83. package/dist/runtime/query/path-escalation.js.map +1 -1
  84. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  85. package/dist/runtime/query/resume-pending.js +14 -0
  86. package/dist/runtime/query/resume-pending.js.map +1 -1
  87. package/dist/runtime/query/review-policy.d.ts +88 -1
  88. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  89. package/dist/runtime/query/review-policy.js +504 -11
  90. package/dist/runtime/query/review-policy.js.map +1 -1
  91. package/dist/runtime/query/steering.d.ts +2 -2
  92. package/dist/runtime/query/steering.d.ts.map +1 -1
  93. package/dist/runtime/query/steering.js +16 -3
  94. package/dist/runtime/query/steering.js.map +1 -1
  95. package/dist/tools/builtins/bash.d.ts.map +1 -1
  96. package/dist/tools/builtins/bash.js +2 -0
  97. package/dist/tools/builtins/bash.js.map +1 -1
  98. package/dist/tools/builtins/classifier-input.d.ts +9 -0
  99. package/dist/tools/builtins/classifier-input.d.ts.map +1 -0
  100. package/dist/tools/builtins/classifier-input.js +20 -0
  101. package/dist/tools/builtins/classifier-input.js.map +1 -0
  102. package/dist/tools/builtins/code-analysis.d.ts +2 -0
  103. package/dist/tools/builtins/code-analysis.d.ts.map +1 -1
  104. package/dist/tools/builtins/code-analysis.js +196 -119
  105. package/dist/tools/builtins/code-analysis.js.map +1 -1
  106. package/dist/tools/builtins/computer-use.d.ts +10 -10
  107. package/dist/tools/builtins/edit.d.ts.map +1 -1
  108. package/dist/tools/builtins/edit.js +12 -0
  109. package/dist/tools/builtins/edit.js.map +1 -1
  110. package/dist/tools/builtins/monitor.d.ts +38 -4
  111. package/dist/tools/builtins/monitor.d.ts.map +1 -1
  112. package/dist/tools/builtins/monitor.js +239 -97
  113. package/dist/tools/builtins/monitor.js.map +1 -1
  114. package/dist/tools/builtins/web.d.ts.map +1 -1
  115. package/dist/tools/builtins/web.js +3 -0
  116. package/dist/tools/builtins/web.js.map +1 -1
  117. package/dist/tools/builtins/write-file.d.ts.map +1 -1
  118. package/dist/tools/builtins/write-file.js +6 -0
  119. package/dist/tools/builtins/write-file.js.map +1 -1
  120. package/dist/tools/defineTool.d.ts +2 -0
  121. package/dist/tools/defineTool.d.ts.map +1 -1
  122. package/dist/tools/defineTool.js +1 -0
  123. package/dist/tools/defineTool.js.map +1 -1
  124. package/dist/types/acp/index.d.ts +7 -0
  125. package/dist/types/acp/index.d.ts.map +1 -1
  126. package/dist/types/code-analysis/index.d.ts +54 -3
  127. package/dist/types/code-analysis/index.d.ts.map +1 -1
  128. package/dist/types/hitl/index.d.ts +45 -1
  129. package/dist/types/hitl/index.d.ts.map +1 -1
  130. package/dist/types/hitl/index.js.map +1 -1
  131. package/dist/types/sandbox/index.d.ts +10 -0
  132. package/dist/types/sandbox/index.d.ts.map +1 -1
  133. package/dist/types/sandbox/index.js.map +1 -1
  134. package/dist/types/tool/index.d.ts +51 -0
  135. package/dist/types/tool/index.d.ts.map +1 -1
  136. package/dist/types/tool/index.js.map +1 -1
  137. package/package.json +4 -2
  138. package/src/authorization/gate.ts +35 -0
  139. package/src/authorization/removal.ts +12 -6
  140. package/src/authorization/rules.ts +27 -2
  141. package/src/authorization/shell-paths.ts +264 -51
  142. package/src/bridge/acp/server.ts +20 -0
  143. package/src/connector/web/guarded-fetch.ts +41 -0
  144. package/src/process/kill-tree.ts +4 -2
  145. package/src/public-runtime.ts +19 -1
  146. package/src/public-tools.ts +3 -0
  147. package/src/public-types.ts +11 -0
  148. package/src/runtime/jobs/registry.ts +162 -13
  149. package/src/runtime/jobs/websocket-source.ts +438 -0
  150. package/src/runtime/query/auto-review/classifier.ts +404 -0
  151. package/src/runtime/query/auto-review/index.ts +23 -0
  152. package/src/runtime/query/auto-review/prompt.ts +97 -0
  153. package/src/runtime/query/auto-review/rules.ts +106 -0
  154. package/src/runtime/query/auto-review/transcript.ts +159 -0
  155. package/src/runtime/query/auto-review/verdict.ts +50 -0
  156. package/src/runtime/query/executor.ts +29 -2
  157. package/src/runtime/query/index.ts +2 -2
  158. package/src/runtime/query/iteration/phases/context.ts +17 -3
  159. package/src/runtime/query/iteration/phases/tool-review.ts +41 -0
  160. package/src/runtime/query/path-escalation.ts +44 -9
  161. package/src/runtime/query/resume-pending.ts +14 -0
  162. package/src/runtime/query/review-policy.ts +591 -14
  163. package/src/runtime/query/steering.ts +32 -6
  164. package/src/tools/builtins/bash.ts +3 -0
  165. package/src/tools/builtins/classifier-input.ts +19 -0
  166. package/src/tools/builtins/code-analysis.ts +211 -119
  167. package/src/tools/builtins/edit.ts +13 -0
  168. package/src/tools/builtins/monitor.ts +297 -123
  169. package/src/tools/builtins/web.ts +3 -0
  170. package/src/tools/builtins/write-file.ts +6 -0
  171. package/src/tools/defineTool.ts +3 -0
  172. package/src/types/acp/index.ts +7 -0
  173. package/src/types/code-analysis/index.ts +51 -3
  174. package/src/types/hitl/index.ts +49 -1
  175. package/src/types/sandbox/index.ts +10 -0
  176. package/src/types/tool/index.ts +44 -0
@@ -25,7 +25,7 @@
25
25
  import { unwrapReexecChain } from './reexec-wrapper.js';
26
26
  import { basename, lexShellCommandLine, } from './shell-lexer.js';
27
27
  const EXEC_FLAGS = new Set(['-exec', '-execdir', '-ok', '-okdir']);
28
- function invocationOf(words) {
28
+ function invocationOf(words, redirections) {
29
29
  if (words.length === 0)
30
30
  return undefined;
31
31
  const step = unwrapReexecChain(words);
@@ -34,14 +34,18 @@ function invocationOf(words) {
34
34
  const [head, ...args] = step.rest;
35
35
  if (head === undefined || head.expands)
36
36
  return undefined;
37
- return { program: basename(head.value), args };
37
+ return {
38
+ program: basename(head.value),
39
+ args,
40
+ ...(redirections !== undefined ? { redirections } : {}),
41
+ };
38
42
  }
39
43
  /** Every program a line runs, and every redirection it carries. */
40
44
  export function readShellLine(line, dialect) {
41
45
  const lexed = lexShellCommandLine(line, { dialect });
42
46
  const invocations = [];
43
47
  for (const command of lexed.commands) {
44
- const own = invocationOf(command.words.slice(command.assignments));
48
+ const own = invocationOf(command.words.slice(command.assignments), command.redirections);
45
49
  if (own === undefined)
46
50
  continue;
47
51
  invocations.push(own);
@@ -105,6 +109,115 @@ function operands(args) {
105
109
  }
106
110
  return out;
107
111
  }
112
+ /** `value` as a word that keeps whether `from` will still be expanded by the shell. */
113
+ function derived(from, value) {
114
+ return { ...from, text: value, value };
115
+ }
116
+ /**
117
+ * Operands of `cp` and `mv`. GNU lets a flag follow an operand, and the
118
+ * destination can be a flag's value: `--target-directory=D`, `--target-directory D`,
119
+ * `-tD`, `-t D`, also inside a cluster (`-at D`, `-rtD`). Reading the operands
120
+ * alone would miss the attached and the trailing forms.
121
+ */
122
+ function copyOperands(args) {
123
+ const out = [];
124
+ let afterDashes = false;
125
+ for (let i = 0; i < args.length; i += 1) {
126
+ const arg = args[i];
127
+ const text = arg.value;
128
+ if (afterDashes || text === '-' || !text.startsWith('-')) {
129
+ out.push(arg);
130
+ continue;
131
+ }
132
+ if (text === '--') {
133
+ afterDashes = true;
134
+ continue;
135
+ }
136
+ if (text.startsWith('--')) {
137
+ const eq = text.indexOf('=');
138
+ const name = eq >= 0 ? text.slice(0, eq) : text;
139
+ if (name === '--target-directory') {
140
+ if (eq >= 0)
141
+ out.push(derived(arg, text.slice(eq + 1)));
142
+ else if (args[i + 1] !== undefined) {
143
+ out.push(args[i + 1]);
144
+ i += 1;
145
+ }
146
+ }
147
+ else if (name === '--suffix' && eq < 0)
148
+ i += 1;
149
+ continue;
150
+ }
151
+ for (let j = 1; j < text.length; j += 1) {
152
+ const letter = text[j];
153
+ if (letter !== 't' && letter !== 'S')
154
+ continue;
155
+ const rest = text.slice(j + 1);
156
+ if (letter === 't') {
157
+ if (rest !== '')
158
+ out.push(derived(arg, rest));
159
+ else if (args[i + 1] !== undefined) {
160
+ out.push(args[i + 1]);
161
+ i += 1;
162
+ }
163
+ }
164
+ else if (rest === '')
165
+ i += 1;
166
+ break;
167
+ }
168
+ }
169
+ return out;
170
+ }
171
+ /**
172
+ * The files `touch` reads: `--reference=F`, `--reference F`, `-rF`, `-r F`
173
+ * (also in a cluster). They are not written, but a path outside the roots is
174
+ * the same question whichever way it is opened.
175
+ */
176
+ function touchReferences(args) {
177
+ const out = [];
178
+ let afterDashes = false;
179
+ for (let i = 0; i < args.length; i += 1) {
180
+ const arg = args[i];
181
+ const text = arg.value;
182
+ if (afterDashes || text === '-' || !text.startsWith('-'))
183
+ continue;
184
+ if (text === '--') {
185
+ afterDashes = true;
186
+ continue;
187
+ }
188
+ if (text.startsWith('--')) {
189
+ const eq = text.indexOf('=');
190
+ const name = eq >= 0 ? text.slice(0, eq) : text;
191
+ if (name === '--reference') {
192
+ if (eq >= 0)
193
+ out.push(derived(arg, text.slice(eq + 1)));
194
+ else if (args[i + 1] !== undefined) {
195
+ out.push(args[i + 1]);
196
+ i += 1;
197
+ }
198
+ }
199
+ continue;
200
+ }
201
+ for (let j = 1; j < text.length; j += 1) {
202
+ const letter = text[j];
203
+ if (letter !== 'r' && letter !== 'd' && letter !== 't')
204
+ continue;
205
+ const rest = text.slice(j + 1);
206
+ if (letter === 'r') {
207
+ if (rest !== '')
208
+ out.push(derived(arg, rest));
209
+ else if (args[i + 1] !== undefined) {
210
+ out.push(args[i + 1]);
211
+ i += 1;
212
+ }
213
+ }
214
+ else if (rest === '')
215
+ i += 1;
216
+ break;
217
+ }
218
+ }
219
+ return out;
220
+ }
108
221
  /** Operands of a command whose flags are known: an unknown flag stops flag parsing, as in the reference. */
109
222
  function operandsByTable(table) {
110
223
  const kind = (flag) => {
@@ -561,11 +674,11 @@ const EXTRACTORS = {
561
674
  ls: lsOperands,
562
675
  find: findOperands,
563
676
  mkdir: operands,
564
- touch: operands,
677
+ touch: touchOperands,
565
678
  rm: operands,
566
679
  rmdir: operands,
567
- mv: operands,
568
- cp: operands,
680
+ mv: copyOperands,
681
+ cp: copyOperands,
569
682
  cat: operands,
570
683
  head: operands,
571
684
  tail: operands,
@@ -612,6 +725,39 @@ const EXTRACTORS = {
612
725
  jq: jqOperands,
613
726
  git: gitOperands,
614
727
  };
728
+ /**
729
+ * Operands of `touch`: the files it changes, with the values of `-d`, `-t` and
730
+ * `-r`/`--reference` taken out (they are a date, a stamp and a file that is read).
731
+ */
732
+ function touchOperands(args) {
733
+ const out = [];
734
+ let afterDashes = false;
735
+ for (let i = 0; i < args.length; i += 1) {
736
+ const arg = args[i];
737
+ const text = arg.value;
738
+ if (afterDashes || text === '-' || !text.startsWith('-')) {
739
+ out.push(arg);
740
+ continue;
741
+ }
742
+ if (text === '--') {
743
+ afterDashes = true;
744
+ continue;
745
+ }
746
+ if (text.startsWith('--')) {
747
+ if (/^--(?:reference|date|time)$/.test(text))
748
+ i += 1;
749
+ continue;
750
+ }
751
+ for (let j = 1; j < text.length; j += 1) {
752
+ if ('rdt'.includes(text[j])) {
753
+ if (j === text.length - 1)
754
+ i += 1;
755
+ break;
756
+ }
757
+ }
758
+ }
759
+ return out;
760
+ }
615
761
  /** Commands that create or change what their operands name. `sed` is added per call when it edits in place. */
616
762
  const WRITERS = new Set(['mkdir', 'touch', 'rm', 'rmdir', 'mv', 'cp', 'tee']);
617
763
  const CD_PROGRAMS = new Set(['cd', 'pushd', 'popd', 'chdir']);
@@ -626,72 +772,128 @@ function editsInPlace(args) {
626
772
  return /^-[A-Za-z]*i/.test(text);
627
773
  });
628
774
  }
775
+ /** The directory a line is in after `invocation`, given the one before it. */
776
+ function directoryAfter(before, invocation) {
777
+ if (before !== undefined && 'unknown' in before)
778
+ return before;
779
+ if (invocation.program !== 'cd')
780
+ return { unknown: true };
781
+ const operands = invocation.args.filter((a) => a.expands || !/^-[LPe@]+$/.test(a.value));
782
+ const [target, ...extra] = operands;
783
+ if (target === undefined || extra.length > 0 || target.expands || target.value === '') {
784
+ return { unknown: true };
785
+ }
786
+ const value = target.value;
787
+ if (value === '-' || value === '--' || value.startsWith('/') || value.startsWith('~')) {
788
+ return { unknown: true };
789
+ }
790
+ const base = before?.relative;
791
+ return { relative: base === undefined ? value : `${base}/${value}` };
792
+ }
629
793
  /**
630
794
  * The paths `reading` names: positional arguments of the commands in the
631
795
  * table, and the targets of its redirections.
796
+ *
797
+ * Each use carries the directory an earlier literal `cd` left the shell in
798
+ * (see {@link ShellPathUse.directory}), so a caller can tell
799
+ * `cd packages/sdk && echo x > out.txt` from `cd "$X" && echo x > out.txt`.
632
800
  */
633
801
  export function shellPathAccess(reading) {
634
802
  const uses = [];
635
803
  let changesDirectory = false;
636
- for (const { program, args } of reading.invocations) {
804
+ let directory;
805
+ const covered = new Set();
806
+ for (const invocation of reading.invocations) {
807
+ const { program, args } = invocation;
637
808
  if (CD_PROGRAMS.has(program))
638
809
  changesDirectory = true;
639
810
  const extract = EXTRACTORS[program];
640
- if (extract === undefined)
641
- continue;
642
- const access = WRITERS.has(program) || (program === 'sed' && editsInPlace(args)) ? 'write' : 'read';
643
- for (const arg of extract(args)) {
644
- if (arg.value === '' || isHarmlessTarget(arg.value))
645
- continue;
646
- uses.push({
647
- path: arg.value,
648
- access,
649
- via: program,
650
- unresolved: expandsAtRuntime(arg),
651
- });
811
+ if (extract !== undefined) {
812
+ const access = WRITERS.has(program) || (program === 'sed' && editsInPlace(args)) ? 'write' : 'read';
813
+ for (const arg of extract(args)) {
814
+ if (arg.value === '' || isHarmlessTarget(arg.value))
815
+ continue;
816
+ uses.push({
817
+ path: arg.value,
818
+ access,
819
+ via: program,
820
+ unresolved: expandsAtRuntime(arg),
821
+ ...(directory !== undefined ? { directory } : {}),
822
+ });
823
+ }
652
824
  }
825
+ if (program === 'touch') {
826
+ for (const arg of touchReferences(args)) {
827
+ if (arg.value === '' || isHarmlessTarget(arg.value))
828
+ continue;
829
+ uses.push({
830
+ path: arg.value,
831
+ access: 'read',
832
+ via: program,
833
+ unresolved: expandsAtRuntime(arg),
834
+ ...(directory !== undefined ? { directory } : {}),
835
+ });
836
+ }
837
+ }
838
+ for (const redirection of invocation.redirections ?? []) {
839
+ covered.add(redirection);
840
+ pushRedirection(uses, redirection, directory);
841
+ }
842
+ if (CD_PROGRAMS.has(program))
843
+ directory = directoryAfter(directory, invocation);
653
844
  }
654
845
  for (const redirection of reading.redirections) {
655
- const target = redirection.target;
656
- if (target.value === '' || isHarmlessTarget(target.value))
846
+ if (covered.has(redirection))
657
847
  continue;
658
- switch (redirection.operator) {
659
- case '>':
660
- case '>>':
661
- case '>|':
662
- case '&>':
663
- case '&>>':
664
- case '<>':
848
+ // Not tied to a command the reader saw (a compound command's own), so
849
+ // where it runs cannot be told once a `cd` is in the line.
850
+ pushRedirection(uses, redirection, changesDirectory ? { unknown: true } : undefined);
851
+ }
852
+ return { uses, changesDirectory };
853
+ }
854
+ function pushRedirection(uses, redirection, directory) {
855
+ const target = redirection.target;
856
+ if (target.value === '' || isHarmlessTarget(target.value))
857
+ return;
858
+ const where = directory !== undefined ? { directory } : {};
859
+ switch (redirection.operator) {
860
+ case '>':
861
+ case '>>':
862
+ case '>|':
863
+ case '&>':
864
+ case '&>>':
865
+ case '<>':
866
+ uses.push({
867
+ path: target.value,
868
+ access: 'write',
869
+ via: 'redirect',
870
+ unresolved: expandsAtRuntime(target),
871
+ ...where,
872
+ });
873
+ break;
874
+ case '>&':
875
+ // `>&2` and `>&-` duplicate or close a descriptor; any other word is a file.
876
+ if (!/^(?:\d+-?|-)$/.test(target.value)) {
665
877
  uses.push({
666
878
  path: target.value,
667
879
  access: 'write',
668
880
  via: 'redirect',
669
881
  unresolved: expandsAtRuntime(target),
882
+ ...where,
670
883
  });
671
- break;
672
- case '>&':
673
- // `>&2` and `>&-` duplicate or close a descriptor; any other word is a file.
674
- if (!/^(?:\d+-?|-)$/.test(target.value)) {
675
- uses.push({
676
- path: target.value,
677
- access: 'write',
678
- via: 'redirect',
679
- unresolved: expandsAtRuntime(target),
680
- });
681
- }
682
- break;
683
- case '<':
684
- uses.push({
685
- path: target.value,
686
- access: 'read',
687
- via: 'redirect',
688
- unresolved: expandsAtRuntime(target),
689
- });
690
- break;
691
- default:
692
- break;
693
- }
884
+ }
885
+ break;
886
+ case '<':
887
+ uses.push({
888
+ path: target.value,
889
+ access: 'read',
890
+ via: 'redirect',
891
+ unresolved: expandsAtRuntime(target),
892
+ ...where,
893
+ });
894
+ break;
895
+ default:
896
+ break;
694
897
  }
695
- return { uses, changesDirectory };
696
898
  }
697
899
  //# sourceMappingURL=shell-paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shell-paths.js","sourceRoot":"","sources":["../../src/authorization/shell-paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAIN,QAAQ,EACR,mBAAmB,GACnB,MAAM,kBAAkB,CAAA;AAkBzB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;AAElE,SAAS,YAAY,CAAC,KAA2B;IAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IACxC,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IACrC,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IACvC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA;IACjC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA;IACxD,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;AAC/C,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,OAAqB;IAChE,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;IACpD,MAAM,WAAW,GAAsB,EAAE,CAAA;IACzC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAA;QAClE,IAAI,GAAG,KAAK,SAAS;YAAE,SAAQ;QAC/B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACrB,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM;YAAE,SAAQ;QACpC,yEAAyE;QACzE,wBAAwB;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAc,CAAA;YACrC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,SAAQ;YACzD,MAAM,MAAM,GAAgB,EAAE,CAAA;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAc,CAAA;gBACrC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,CAAC;oBAAE,MAAK;gBACtE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;YACnC,IAAI,MAAM,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnD,CAAC;IACF,CAAC;IACD,OAAO;QACN,WAAW;QACX,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACxB,CAAA;AACF,CAAC;AAsBD,0DAA0D;AAC1D,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAChC,WAAW;IACX,YAAY;IACZ,aAAa;IACb,aAAa;IACb,UAAU;CACV,CAAC,CAAA;AAEF,SAAS,gBAAgB,CAAC,IAAY;IACrC,OAAO,CACN,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;QAC1B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7B,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CACtC,CAAA;AACF,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,gBAAgB,CAAC,IAAe;IAC/C,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAA;AACrE,CAAC;AAID,qGAAqG;AACrG,SAAS,QAAQ,CAAC,IAAU;IAC3B,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,WAAW,IAAI,OAAO;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACpC,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI;YAAE,WAAW,GAAG,IAAI,CAAA;aAC1C,IAAI,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACb,OAAO,GAAG,IAAI,CAAA;QACf,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAWD,4GAA4G;AAC5G,SAAS,eAAe,CAAC,KAAgB;IACxC,MAAM,IAAI,GAAG,CAAC,IAAY,EAAiD,EAAE;QAC5E,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,UAAU,CAAA;YACzC,IAAI,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,SAAS,CAAA;YACjD,IAAI,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,UAAU,CAAA;YACpD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;QACzD,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,UAAU,CAAA;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;YAChC,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,SAAQ;YACjD,IAAI,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,UAAU,CAAA;YAC5D,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,SAAS,CAAA;YACzD,OAAO,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAA;QACrD,CAAC;QACD,OAAO,SAAS,CAAA;IACjB,CAAC,CAAA;IACD,OAAO,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,GAAG,GAAgB,EAAE,CAAA;QAC3B,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,OAAO,GAAG,IAAI,CAAA;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAc,CAAA;YAChC,IAAI,WAAW,IAAI,OAAO;gBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;iBACpC,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI;gBAAE,WAAW,GAAG,IAAI,CAAA;iBAC1C,IAAI,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzD,IAAI,CAAC,OAAO;oBAAE,SAAQ;gBACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACzB,IAAI,CAAC,KAAK,QAAQ;oBAAE,CAAC,IAAI,CAAC,CAAA;qBACrB,IAAI,CAAC,KAAK,SAAS;oBAAE,OAAO,GAAG,KAAK,CAAA;YAC1C,CAAC;iBAAM,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACb,OAAO,GAAG,IAAI,CAAA;YACf,CAAC;QACF,CAAC;QACD,OAAO,GAAG,CAAA;IACX,CAAC,CAAA;AACF,CAAC;AAED,MAAM,GAAG,GAAG,CAAC,GAAG,KAAe,EAAuB,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;AAEvE,sGAAsG;AACtG,SAAS,gBAAgB,CACxB,MAA2B,EAC3B,WAAqB,EAAE;IAEvB,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IACvD,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAClC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,KAAwB,EAAsB,EAAE;QACpF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,SAAS,CAAA;QAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,EAAE,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACtF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACpF,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACrB,CAAC;QACF,CAAC;QACD,OAAO,SAAS,CAAA;IACjB,CAAC,CAAA;IACD,OAAO,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,GAAG,GAAgB,EAAE,CAAA;QAC3B,IAAI,YAAY,GAAG,KAAK,CAAA;QACxB,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,MAAM,IAAI,GAAG,CAAC,KAAyB,EAAQ,EAAE;YAChD,IAAI,KAAK;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QACjC,CAAC,CAAA;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAc,CAAA;YAChC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAA;YACtB,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC/C,WAAW,GAAG,IAAI,CAAA;gBAClB,SAAQ;YACT,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gBAC5B,MAAM,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC/C,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,YAAY,GAAG,IAAI,CAAA;oBACnB,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACxC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;oBACxD,CAAC;gBACF,CAAC;gBACD,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;oBACxF,YAAY,GAAG,IAAI,CAAA;oBACnB,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;oBACxB,CAAC,IAAI,CAAC,CAAA;oBACN,SAAQ;gBACT,CAAC;gBACD,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1E,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;oBACvD,IAAI,EAAE,GAAG,CAAC;wBAAE,CAAC,IAAI,CAAC,CAAA;oBAClB,SAAQ;gBACT,CAAC;gBACD,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;oBACZ,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;oBACnD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;wBAChC,YAAY,GAAG,IAAI,CAAA;wBACnB,IAAI,CAAC,YAAY,CAAC,CAAA;wBAClB,SAAQ;oBACT,CAAC;oBACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC9C,YAAY,GAAG,IAAI,CAAA;wBACnB,SAAQ;oBACT,CAAC;gBACF,CAAC;gBACD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;oBAAE,CAAC,IAAI,CAAC,CAAA;gBACtC,SAAQ;YACT,CAAC;YACD,IAAI,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;gBACnD,IAAI,YAAY,KAAK,SAAS;oBAAE,IAAI,CAAC,YAAY,CAAC,CAAA;YACnD,CAAC;YACD,OAAO,GAAG,IAAI,CAAA;YACd,IAAI,CAAC,YAAY,EAAE,CAAC;gBACnB,YAAY,GAAG,IAAI,CAAA;gBACnB,SAAQ;YACT,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QACD,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACjD,CAAC,CAAA;AACF,CAAC;AAED,0EAA0E;AAC1E,SAAS,IAAI,CAAC,KAAa;IAC1B,OAAO;QACN,IAAI,EAAE,KAAK;QACX,KAAK;QACL,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,KAAK;KAClB,CAAA;AACF,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,IAAU,EAAe,EAAE;IAChD,MAAM,KAAK,GAAG,gBAAgB,CAC7B,GAAG,CACF,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,EACf,IAAI,EACJ,aAAa,EACb,IAAI,EACJ,iBAAiB,EACjB,IAAI,EACJ,kBAAkB,EAClB,IAAI,EACJ,WAAW,CACX,CACD,CAAC,IAAI,CAAC,CAAA;IACP,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3F,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,gBAAgB,CAClC,GAAG,CACF,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,aAAa,EACb,aAAa,EACb,IAAI,EACJ,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,IAAI,EACJ,kBAAkB,EAClB,IAAI,EACJ,WAAW,CACX,EACD,CAAC,GAAG,CAAC,CACL,CAAA;AAED,SAAS,WAAW,CAAC,IAAU;IAC9B,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;IACjF,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC9C,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAc,CAAA;QAChC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAA;QACtB,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/C,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC5B,MAAM,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAC/C,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,UAAU;oBAAE,YAAY,GAAG,IAAI,CAAA;gBAC7D,IAAI,EAAE,GAAG,CAAC;oBAAE,CAAC,IAAI,CAAC,CAAA;gBAClB,SAAQ;YACT,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,YAAY,GAAG,IAAI,CAAA;gBACnB,IAAI,EAAE,IAAI,CAAC;oBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;qBAC1C,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;oBACpC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAc,CAAC,CAAA;oBAClC,CAAC,IAAI,CAAC,CAAA;gBACP,CAAC;gBACD,SAAQ;YACT,CAAC;YACD,SAAQ;QACT,CAAC;QACD,OAAO,GAAG,IAAI,CAAA;QACd,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,YAAY,GAAG,IAAI,CAAA;YACnB,SAAQ;QACT,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,SAAS,WAAW,CAAC,IAAU;IAC9B,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,KAAK,CAAA;YAChB,SAAQ;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAc,CAAA;QAChC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAA;QACtB,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/C,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxB,IAAI,IAAI,KAAK,SAAS;oBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACtC,QAAQ,GAAG,IAAI,CAAA;gBACf,WAAW,GAAG,IAAI,CAAA;YACnB,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;gBACrD,QAAQ,GAAG,IAAI,CAAA;gBACf,WAAW,GAAG,IAAI,CAAA;YACnB,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACjF,WAAW,GAAG,IAAI,CAAA;YACnB,CAAC;YACD,SAAQ;QACT,CAAC;QACD,OAAO,GAAG,IAAI,CAAA;QACd,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACT,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,SAAS,YAAY,CAAC,IAAU;IAC/B,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;QACzB,QAAQ;QACR,SAAS;QACT,SAAS;QACT,SAAS;QACT,WAAW;QACX,OAAO;QACP,YAAY;QACZ,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,aAAa;KACb,CAAC,CAAA;IACF,IAAI,iBAAiB,GAAG,KAAK,CAAA;IAC7B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAc,CAAA;QAChC,IAAI,CAAC,GAAG,CAAC,KAAK;YAAE,SAAQ;QACxB,IAAI,WAAW,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACb,SAAQ;QACT,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACT,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,SAAQ;YACpD,iBAAiB,GAAG,IAAI,CAAA;YACxB,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxB,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;oBACjB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACd,CAAC,IAAI,CAAC,CAAA;gBACP,CAAC;YACF,CAAC;YACD,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,iBAAiB;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACtC,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC1C,CAAC;AAED,SAAS,WAAW,CAAC,IAAU;IAC9B,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;QAC7B,IAAI;QACJ,IAAI;QACJ,WAAW;QACX,aAAa;QACb,aAAa;QACb,gBAAgB;QAChB,cAAc;QACd,eAAe;QACf,gBAAgB;KAChB,CAAC,CAAA;IACF,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,MAAM,IAAI,GAAG,CAAC,KAAa,EAAU,EAAE,CACtC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAA;IAC7D,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3F,MAAM,OAAO,GAAG,CAAC,KAAa,EAAQ,EAAE;QACvC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC7C,CAAC,CAAA;IACD,OAAO,KAAK,GAAG,IAAI,CAAC,MAAM,IAAK,IAAI,CAAC,KAAK,CAAe,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAChF,MAAM,IAAI,GAAI,IAAI,CAAC,KAAK,CAAe,CAAC,KAAK,CAAA;QAC7C,KAAK,IAAI,CAAC,CAAA;QACV,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACpD,MAAM,KAAK,GAAI,IAAI,CAAC,KAAK,CAAe,CAAC,KAAK,CAAA;YAC9C,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,aAAa;gBAAE,OAAO,CAAC,KAAK,CAAC,CAAA;YAC3D,KAAK,IAAI,CAAC,CAAA;QACX,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAA;QAC3C,CAAC;IACF,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;IAClC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/F,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,gBAAgB,CAC7B,GAAG,CACF,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,iBAAiB,EACjB,IAAI,EACJ,kBAAkB,EAClB,IAAI,EACJ,WAAW,EACX,IAAI,EACJ,aAAa,EACb,aAAa,EACb,WAAW,CACX,CACD,CAAC,IAAI,CAAC,CAAA;QACP,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC;YACtB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IACpC,CAAC;IACD,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,EAAE,CAAA;IAC7B,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI;YAAE,WAAW,GAAG,IAAI,CAAA;aACrD,IAAI,WAAW,IAAI,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC7B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAClD,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,SAAS,WAAW,CAAC,IAAU;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,cAAc,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CACtF,CAAA;IACD,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAA;QACnC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,eAAe,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACb,OAAM;QACP,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAA;QACtB,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;aACtC,CAAC;YACL,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACrE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YACxE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACjC,IAAI,GAAG,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;QACzC,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACpC,IACC,KAAK,KAAK,EAAE;gBACZ,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAC/E,CAAC;gBACF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;YACtB,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACX,CAAC;AAED,SAAS,UAAU,CAAC,IAAU;IAC7B,MAAM,MAAM,GAAG,GAAG,CACjB,IAAI,EACJ,cAAc,EACd,OAAO,EACP,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,gBAAgB,EAChB,UAAU,EACV,OAAO,CACP,CAAA;IACD,MAAM,GAAG,GAAgB,EAAE,CAAA;IAC3B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAc,CAAA;QAChC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAA;QACtB,IAAI,CAAC,WAAW,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnC,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC5B,MAAM,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAC/C,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,cAAc;gBAAE,WAAW,GAAG,IAAI,CAAA;YAChE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC7C,WAAW,GAAG,IAAI,CAAA;gBAClB,IAAI,EAAE,IAAI,CAAC;oBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;qBAC1C,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;oBACpC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAc,CAAC,CAAA;oBAClC,CAAC,IAAI,CAAC,CAAA;gBACP,CAAC;gBACD,SAAQ;YACT,CAAC;YACD,IAAI,IAAI,KAAK,aAAa,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxB,IAAI,IAAI,KAAK,SAAS;oBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACtC,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;gBAAE,CAAC,IAAI,CAAC,CAAA;YACtC,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACT,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,IAAU,EAAe,EAAE;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACzB,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,KAAK,KAAK,IAAI;QAChB,CAAC,CAAC,KAAK,KAAK,UAAU;QACtB,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CACnD,CAAA;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,IAAU,EAAe,EAAE,CAC/C,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;AAEzD,MAAM,UAAU,GAAG,CAAC,IAAU,EAAe,EAAE;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/F,OAAO,CAAC,KAAK,CAAC,CAAC,CAAc,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,IAAU,EAAe,EAAE;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC9C,CAAC,CAAA;AAED,MAAM,KAAK,GAAG,CACb,YAAoB,EACpB,WAAmB,EACnB,WAAgC,EAChC,UAA+B,EAC/B,aAAsB,EACtB,YAAkC,EACtB,EAAE,CAAC,CAAC;IAChB,YAAY;IACZ,WAAW;IACX,WAAW;IACX,UAAU;IACV,aAAa;IACb,YAAY;CACZ,CAAC,CAAA;AAEF,MAAM,UAAU,GAA0D;IACzE,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,UAAU;IACd,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,QAAQ;IACf,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;IACZ,GAAG,EAAE,QAAQ;IACb,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,QAAQ;IACZ,GAAG,EAAE,eAAe,CACnB,KAAK,CACJ,MAAM,EACN,MAAM,EACN,GAAG,CAAC,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,EAC5D,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAC/E,CACD;IACD,KAAK,EAAE,eAAe,CACrB,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,UAAU,EAAE,mBAAmB,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAC3E;IACD,MAAM,EAAE,eAAe,CACtB,KAAK,CACJ,WAAW,EACX,iBAAiB,EACjB,GAAG,CACF,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,CACR,EACD,GAAG,CACF,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,WAAW,EACX,eAAe,CACf,CACD,CACD;IACD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,QAAQ;IACjB,EAAE,EAAE,QAAQ;IACZ,MAAM,EAAE,QAAQ;IAChB,EAAE,EAAE,QAAQ;IACZ,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,WAAW;IAChB,EAAE,EAAE,UAAU;IACd,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,YAAY;IACnB,KAAK,EAAE,YAAY;IACnB,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IACtF,GAAG,EAAE,QAAQ;IACb,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACnF,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzE,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxF,GAAG,EAAE,eAAe,CACnB,KAAK,CACJ,OAAO,EACP,MAAM,EACN,GAAG,CAAC,gBAAgB,EAAE,cAAc,EAAE,oBAAoB,EAAE,mBAAmB,CAAC,EAChF,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CACpC,CACD;IACD,IAAI,EAAE,eAAe,CACpB,KAAK,CACJ,OAAO,EACP,EAAE,EACF,GAAG,CAAC,eAAe,EAAE,iBAAiB,EAAE,SAAS,EAAE,mBAAmB,CAAC,EACvE,GAAG,CAAC,oBAAoB,CAAC,CACzB,CACD;IACD,GAAG,EAAE,eAAe,CACnB,KAAK,CACJ,SAAS,EACT,EAAE,EACF,GAAG,CAAC,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,EACxD,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAClC,CACD;IACD,EAAE,EAAE,eAAe,CAClB,KAAK,CACJ,cAAc,EACd,SAAS,EACT,GAAG,CACF,UAAU,EACV,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,CACpB,EACD,GAAG,CACF,UAAU,EACV,UAAU,EACV,SAAS,EACT,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,WAAW,CACX,EACD,OAAO,EACP,GAAG,CAAC,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,CAAC,CACtF,CACD;IACD,MAAM,EAAE,eAAe,CACtB,KAAK,CACJ,GAAG,EACH,GAAG,EACH,GAAG,CAAC,YAAY,EAAE,mBAAmB,EAAE,SAAS,CAAC,EACjD,GAAG,CACF,QAAQ,EACR,MAAM,EACN,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,WAAW,CACX,EACD,SAAS,EACT,GAAG,CAAC,UAAU,CAAC,CACf,CACD;IACD,KAAK,EAAE,QAAQ;IACf,GAAG,EAAE,WAAW;IAChB,EAAE,EAAE,UAAU;IACd,GAAG,EAAE,WAAW;IAChB,EAAE,EAAE,UAAU;IACd,GAAG,EAAE,WAAW;CAChB,CAAA;AAED,+GAA+G;AAC/G,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;AAE7E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAE7D,+FAA+F;AAC/F,SAAS,YAAY,CAAC,IAAU;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACtB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAA;QACpB,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,KAAK,CAAA;QAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACzF,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,OAAqB;IACpD,MAAM,IAAI,GAAmB,EAAE,CAAA;IAC/B,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACrD,IAAI,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,gBAAgB,GAAG,IAAI,CAAA;QACrD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QACnC,IAAI,OAAO,KAAK,SAAS;YAAE,SAAQ;QACnC,MAAM,MAAM,GACX,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;QACrF,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,IAAI,GAAG,CAAC,KAAK,KAAK,EAAE,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,SAAQ;YAC7D,IAAI,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,GAAG,CAAC,KAAK;gBACf,MAAM;gBACN,GAAG,EAAE,OAAO;gBACZ,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC;aACjC,CAAC,CAAA;QACH,CAAC;IACF,CAAC;IACD,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;QACjC,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,IAAI,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,SAAQ;QACnE,QAAQ,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC9B,KAAK,GAAG,CAAC;YACT,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,CAAC;YACV,KAAK,KAAK,CAAC;YACX,KAAK,IAAI;gBACR,IAAI,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,MAAM,CAAC,KAAK;oBAClB,MAAM,EAAE,OAAO;oBACf,GAAG,EAAE,UAAU;oBACf,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC;iBACpC,CAAC,CAAA;gBACF,MAAK;YACN,KAAK,IAAI;gBACR,6EAA6E;gBAC7E,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,IAAI,CAAC;wBACT,IAAI,EAAE,MAAM,CAAC,KAAK;wBAClB,MAAM,EAAE,OAAO;wBACf,GAAG,EAAE,UAAU;wBACf,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC;qBACpC,CAAC,CAAA;gBACH,CAAC;gBACD,MAAK;YACN,KAAK,GAAG;gBACP,IAAI,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,MAAM,CAAC,KAAK;oBAClB,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,UAAU;oBACf,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC;iBACpC,CAAC,CAAA;gBACF,MAAK;YACN;gBACC,MAAK;QACP,CAAC;IACF,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAA;AAClC,CAAC"}
1
+ {"version":3,"file":"shell-paths.js","sourceRoot":"","sources":["../../src/authorization/shell-paths.ts"],"names":[],"mappings":"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"}
@@ -102,6 +102,14 @@ export interface AcpServerOptions {
102
102
  readonly supportsPromptAttachments?: boolean;
103
103
  /** The host applies optional effort and permission settings to the exact turn. */
104
104
  readonly supportsPromptOptions?: boolean;
105
+ /**
106
+ * Which of the newer review modes, `bypass` and `classify`, the gateway
107
+ * applies when a prompt asks for one in its options. Omitted, a prompt that
108
+ * asks for either is refused with an error that says so, before any turn
109
+ * starts, rather than reaching a gateway that cannot honour it. Advertised
110
+ * as `promptPermissionModes` at initialization.
111
+ */
112
+ readonly promptPermissionModes?: readonly ('bypass' | 'classify')[];
105
113
  /** Emit planning notifications only to clients declaring namzu/tasks. */
106
114
  readonly supportsTaskNotifications?: boolean;
107
115
  readonly transport: MCPTransport;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/bridge/acp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/bridge/acp/server.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AAExE,OAAO,KAAK,EASX,sBAAsB,EACtB,sBAAsB,EAGtB,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,8BAA8B,CAAA;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAGjE,OAAO,EAAE,KAAK,MAAM,EAAiB,MAAM,uBAAuB,CAAA;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,KAAK,EACX,kBAAkB,EAGlB,MAAM,iBAAiB,CAAA;AAIxB;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,qEAAqE;AACrE,MAAM,WAAW,eAAe;IAC/B;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,EAAE;QACf,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAA;QAC5D,QAAQ,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAA;QACpD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;QAC/C,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;QAC5B;;;;;;;WAOG;QACH,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAA;QAChC;;;;WAIG;QACH,QAAQ,CAAC,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAAA;QACpD,qEAAqE;QACrE,QAAQ,CAAC,OAAO,EAAE,SAAS,OAAO,EAAE,CAAA;KACpC,GAAG,OAAO,CAAC;QACX,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;QAC5B;;;WAGG;QACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,OAAO,EAAE,CAAA;KACrC,CAAC,CAAA;IAEF;;;;;;;;;;;OAWG;IACH,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,OAAO,EAAE,GAAG,SAAS,CAAC,CAAA;IAC/E,6EAA6E;IAC7E,KAAK,CAAC,CACL,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC,GAAG;QACnF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;KAC7B,GACC,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,gBAAgB;IAChC,sFAAsF;IACtF,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAA;IAC5C,kFAAkF;IAClF,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;IACxC;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAA;IACnE,yEAAyE;IACzE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAA;IAC5C,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAA;IAChC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAA;IACtC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAA;IACjC,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,MAAM,CAAA;IACpC;0FACsF;IACtF,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAC7B,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAC/E,CAAA;IACD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CACrB;AAkCD,qBAAa,SAAS;IAiCT,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhCpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA6B;IACtD,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA4B;IAC/D,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,kBAAkB,CAAwB;IAElD;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAMxB;IAED,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAGrB;IAEH,OAAO,CAAC,UAAU,CAAI;gBAEO,OAAO,EAAE,gBAAgB;IAWtD,gEAAgE;IAChE,WAAW,IAAI,SAAS,MAAM,EAAE;IAIhC,oFAAoF;IACpF,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIpD,sFAAsF;IAChF,YAAY,CACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,GACzC,OAAO,CAAC,sBAAsB,CAAC;IAoB5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO;YAqCD,QAAQ;YAuDR,YAAY;YAkBZ,IAAI;YAaJ,YAAY;YAWZ,gBAAgB;IAW9B,OAAO,CAAC,YAAY;IA6BpB,OAAO,CAAC,YAAY;IAYpB;;;;;;;OAOG;YACW,aAAa;IAmC3B,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,yBAAyB;IAoBjC,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,cAAc;IAuBtB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,2BAA2B;YAYrB,eAAe;IAmH7B,OAAO,CAAC,eAAe;IAOvB;;;OAGG;YACW,aAAa;IAoD3B;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;IA0CzB,OAAO,CAAC,qBAAqB;IA8C7B,OAAO,CAAC,cAAc;CAUtB"}
@@ -239,6 +239,9 @@ export class ACPServer {
239
239
  protocolVersion: ACP_PROTOCOL_VERSION,
240
240
  ...(this.options.supportsPromptAttachments ? { promptAttachments: true } : {}),
241
241
  ...(this.options.supportsPromptOptions ? { promptOptions: true } : {}),
242
+ ...(this.options.supportsPromptOptions && this.options.promptPermissionModes?.length
243
+ ? { promptPermissionModes: [...this.options.promptPermissionModes] }
244
+ : {}),
242
245
  agentInfo: this.options.agentInfo,
243
246
  // From the registry, per call. A hard-coded list here would be a
244
247
  // second definition of the command surface.
@@ -556,6 +559,10 @@ export class ACPServer {
556
559
  !['none', 'minimal', 'low', 'medium', 'high', 'xhigh', 'max', 'ultra'].includes(effort))) ||
557
560
  (permissionMode !== undefined && !isReviewMode(permissionMode)))
558
561
  throw new AcpError(ACP_ERROR_CODES.INVALID_PARAMS, 'Invalid prompt settings.');
562
+ if ((permissionMode === 'bypass' || permissionMode === 'classify') &&
563
+ this.options.promptPermissionModes?.includes(permissionMode) !== true) {
564
+ throw new AcpError(ACP_ERROR_CODES.INVALID_PARAMS, `This agent does not accept the "${permissionMode}" permission mode in prompt settings.`);
565
+ }
559
566
  return {
560
567
  ...(effort
561
568
  ? { effort: effort }