@namzu/sdk 52.7.0 → 53.1.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 +45 -26
- package/dist/authorization/protected-paths.d.ts +2 -4
- package/dist/authorization/protected-paths.d.ts.map +1 -1
- package/dist/authorization/protected-paths.js +2 -4
- package/dist/authorization/protected-paths.js.map +1 -1
- package/dist/authorization/readonly-commands.d.ts +4 -4
- package/dist/authorization/readonly-commands.js +7 -7
- package/dist/authorization/readonly-commands.js.map +1 -1
- package/dist/authorization/readonly-flags.d.ts +1 -2
- package/dist/authorization/readonly-flags.d.ts.map +1 -1
- package/dist/authorization/readonly-flags.js +1 -2
- package/dist/authorization/readonly-flags.js.map +1 -1
- package/dist/authorization/removal.d.ts +2 -3
- package/dist/authorization/removal.d.ts.map +1 -1
- package/dist/authorization/removal.js +3 -4
- package/dist/authorization/removal.js.map +1 -1
- package/dist/authorization/shell-paths.d.ts +5 -5
- package/dist/authorization/shell-paths.js +6 -6
- package/dist/authorization/shell-paths.js.map +1 -1
- package/dist/compaction/context-window.d.ts +1 -1
- package/dist/compaction/context-window.js +1 -1
- package/dist/compaction/verifier.js +2 -2
- package/dist/compaction/verifier.js.map +1 -1
- package/dist/connector/web/page.d.ts +2 -3
- package/dist/connector/web/page.d.ts.map +1 -1
- package/dist/connector/web/page.js +2 -3
- package/dist/connector/web/page.js.map +1 -1
- package/dist/execution/workflow/prelude.d.ts.map +1 -1
- package/dist/execution/workflow/prelude.js +29 -5
- package/dist/execution/workflow/prelude.js.map +1 -1
- package/dist/execution/workflow/runtime.d.ts +2 -0
- package/dist/execution/workflow/runtime.d.ts.map +1 -1
- package/dist/execution/workflow/runtime.js +8 -3
- package/dist/execution/workflow/runtime.js.map +1 -1
- package/dist/execution/workflow/types.d.ts +3 -3
- package/dist/execution/workflow/types.d.ts.map +1 -1
- package/dist/manager/agent/lifecycle.d.ts +1 -1
- package/dist/manager/agent/lifecycle.js +1 -1
- package/dist/plugin/shell-hook.d.ts +1 -1
- package/dist/plugin/shell-hook.js +4 -4
- package/dist/plugin/shell-hook.js.map +1 -1
- package/dist/provider/errors.js +2 -2
- package/dist/provider/errors.js.map +1 -1
- package/dist/public-runtime.d.ts +1 -0
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js.map +1 -1
- package/dist/runtime/jobs/monitor-stream.d.ts +1 -2
- package/dist/runtime/jobs/monitor-stream.d.ts.map +1 -1
- package/dist/runtime/jobs/monitor-stream.js +1 -2
- package/dist/runtime/jobs/monitor-stream.js.map +1 -1
- package/dist/runtime/jobs/websocket-source.d.ts +1 -1
- package/dist/runtime/jobs/websocket-source.d.ts.map +1 -1
- package/dist/runtime/jobs/websocket-source.js +1 -1
- package/dist/runtime/jobs/websocket-source.js.map +1 -1
- package/dist/runtime/query/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/checkpoint.js +3 -1
- package/dist/runtime/query/checkpoint.js.map +1 -1
- package/dist/runtime/query/iteration/index.js +3 -3
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/outstanding-work.d.ts.map +1 -1
- package/dist/runtime/query/iteration/outstanding-work.js +10 -2
- package/dist/runtime/query/iteration/outstanding-work.js.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction-breaker.d.ts +2 -2
- package/dist/runtime/query/iteration/phases/compaction-breaker.js +2 -2
- package/dist/runtime/query/iteration/phases/compaction.d.ts +3 -5
- package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js +6 -8
- package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
- package/dist/runtime/query/iteration/request-repair.d.ts +1 -1
- package/dist/runtime/query/iteration/request-repair.js +2 -2
- package/dist/runtime/query/iteration/request-repair.js.map +1 -1
- package/dist/runtime/query/path-escalation.d.ts.map +1 -1
- package/dist/runtime/query/path-escalation.js +2 -3
- package/dist/runtime/query/path-escalation.js.map +1 -1
- package/dist/scheduler/completion-inbox.d.ts +21 -1
- package/dist/scheduler/completion-inbox.d.ts.map +1 -1
- package/dist/scheduler/completion-inbox.js +20 -1
- package/dist/scheduler/completion-inbox.js.map +1 -1
- package/dist/session/workspace/driver.d.ts +1 -1
- package/dist/store/checkpoint/memory.d.ts +1 -1
- package/dist/store/checkpoint/memory.js +1 -1
- package/dist/store/memory/markdown-format.d.ts +1 -1
- package/dist/store/memory/markdown-format.js +1 -1
- package/dist/store/memory/markdown.js +1 -1
- package/dist/store/session-log/core.d.ts.map +1 -1
- package/dist/store/session-log/core.js +28 -0
- package/dist/store/session-log/core.js.map +1 -1
- package/dist/store/session-log/spilled-input.d.ts +34 -0
- package/dist/store/session-log/spilled-input.d.ts.map +1 -0
- package/dist/store/session-log/spilled-input.js +68 -0
- package/dist/store/session-log/spilled-input.js.map +1 -0
- package/dist/tools/builtins/bash.d.ts.map +1 -1
- package/dist/tools/builtins/bash.js +1 -2
- package/dist/tools/builtins/bash.js.map +1 -1
- package/dist/tools/builtins/edit-match.d.ts +5 -6
- package/dist/tools/builtins/edit-match.d.ts.map +1 -1
- package/dist/tools/builtins/edit-match.js +5 -6
- package/dist/tools/builtins/edit-match.js.map +1 -1
- package/dist/types/provider/errors.js +1 -1
- package/dist/types/provider/errors.js.map +1 -1
- package/package.json +1 -1
- package/src/authorization/protected-paths.ts +2 -4
- package/src/authorization/readonly-commands.ts +7 -7
- package/src/authorization/readonly-flags.ts +1 -2
- package/src/authorization/removal.ts +3 -4
- package/src/authorization/shell-paths.ts +6 -6
- package/src/compaction/context-window.ts +1 -1
- package/src/compaction/verifier.ts +2 -2
- package/src/connector/web/page.ts +2 -3
- package/src/execution/workflow/prelude.ts +29 -5
- package/src/execution/workflow/runtime.ts +9 -3
- package/src/execution/workflow/types.ts +3 -3
- package/src/manager/agent/lifecycle.ts +1 -1
- package/src/plugin/shell-hook.ts +4 -4
- package/src/provider/errors.ts +2 -2
- package/src/public-runtime.ts +1 -0
- package/src/runtime/jobs/monitor-stream.ts +1 -2
- package/src/runtime/jobs/websocket-source.ts +1 -1
- package/src/runtime/query/checkpoint.ts +6 -1
- package/src/runtime/query/iteration/index.ts +3 -3
- package/src/runtime/query/iteration/outstanding-work.ts +9 -2
- package/src/runtime/query/iteration/phases/compaction-breaker.ts +2 -2
- package/src/runtime/query/iteration/phases/compaction.ts +6 -8
- package/src/runtime/query/iteration/request-repair.ts +3 -3
- package/src/runtime/query/path-escalation.ts +2 -3
- package/src/scheduler/completion-inbox.ts +31 -1
- package/src/session/workspace/driver.ts +1 -1
- package/src/store/checkpoint/memory.ts +1 -1
- package/src/store/memory/markdown-format.ts +1 -1
- package/src/store/memory/markdown.ts +1 -1
- package/src/store/session-log/core.ts +28 -0
- package/src/store/session-log/spilled-input.ts +90 -0
- package/src/tools/builtins/bash.ts +1 -2
- package/src/tools/builtins/edit-match.ts +5 -6
- package/src/types/provider/errors.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 53.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- f225fb7: A tool call whose input is too large for one session-log record no longer ends the turn. The large `input` of a `tool_review_requested`, `decision_requested`, `tool_executing` or `tool_input_completed` record is now written to `tool-results/` and the record holds `{ "$spilledInput": <spill reference>, "preview": … }` in its place; a resumed turn reads the parked request's inputs back whole. A reader that walks the log itself and wants the full input of such a record reads the referenced spill (`SessionLog.readSpill`). Nothing to do for hosts that use the runtime.
|
|
8
|
+
|
|
9
|
+
## 53.0.0
|
|
10
|
+
|
|
11
|
+
### Major Changes
|
|
12
|
+
|
|
13
|
+
- 7608640: Workflow scripts: `pipeline()` stages now receive `(prevResult, originalItem, index)`; they used to receive `(value, index, item)`. A script that reads its 2nd or 3rd parameter must swap them (`(v, i, item) => ...` becomes `(v, item, i) => ...`); a stage that only uses the first parameter is unaffected. The first stage now gets the item as both `prevResult` and `originalItem`.
|
|
14
|
+
|
|
15
|
+
Also changed, and worth checking if you set limits: an agent with no `label` is titled with the first 60 characters of its prompt (whitespace squeezed) instead of `Agent N`; the default `maxConcurrency` is `min(16, CPUs - 2)`, at least 2 (was `min(8, CPUs - 2)`, at least 1) and the default `maxAgents` is 1000 (was 200), so pass the old values in `limits` to keep them; `budget` is now `{ total, spent(), remaining() }` and `agent()` throws a `WorkflowBudgetExceededError` once `spent()` reaches `limits.tokenBudget` (it used to resolve `null`), so a script that loops on `agent()` should guard on `budget.total` and catch the error. `budget.tokensUsed` and `budget.tokenLimit` stay as deprecated aliases.
|
|
16
|
+
|
|
17
|
+
### Minor Changes
|
|
18
|
+
|
|
19
|
+
- 7608640: `CompletionInbox` accepts `{ holdsTurnOpen: false }` as a second constructor argument (and the new `CompletionInboxOptions` type is exported). With it, a turn that is about to end no longer waits at its settle point for the delegated tasks it launched: it ends at the model's answer, leaves those tasks running, and does not list them as abandoned (`abandonedTaskIds` stays absent). The host then owns their completion. Nothing changes for existing callers: the default is `true`, the previous behaviour. Use it when the host keeps background tasks alive itself and wakes the model when they end, as the terminal now does.
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- 7608640: Display text only; nothing to change when you upgrade. If a script, test or screen-scrape reads the terminal's wording, these lines changed: composer tag rows no longer start with a `✦`/`✧` mark and are sentence case (`Hypermode · this reply: …`); `Press ctrl+x ctrl+k again to stop background agents` is a footer hint, not a transcript row, and the stop leaves `All background agents stopped`; an agent stopped by Esc or Ctrl+C now reads `was stopped by user` like one stopped from the rail; tool results hang from `⎿` (two spaces after the glyph) everywhere; `/workflows` rows read `finished` (not `completed`) with the duration first; `/compact` echoes `› /compact` and prints its result below the turns that stay. `@namzu/sdk` workflow scripts log `Step N stopped: <reason>` from `parallel()` (was `parallel item N failed: …`) and `Item N stopped at step M: <reason>` from `pipeline()` (was `pipeline item N stopped at stage M: …`); a script that matches on those log lines must change the match.
|
|
24
|
+
|
|
3
25
|
## 52.7.0
|
|
4
26
|
|
|
5
27
|
### Minor Changes
|
|
@@ -36,7 +58,7 @@
|
|
|
36
58
|
|
|
37
59
|
### Minor Changes
|
|
38
60
|
|
|
39
|
-
- c230860: Make `edit` recover a few `old_string` near-misses instead of failing,
|
|
61
|
+
- c230860: Make `edit` recover a few `old_string` near-misses instead of failing, in a fixed order: a straight quote against the file's curly one (or the reverse), and a `\uXXXX` escape where the file holds the character (or a character where the file holds the escape). The matched span is a real substring of the file, so the uniqueness rule still applies and the same transformation is carried onto `new_string`. A whitespace or indentation difference is still not recovered — the error continues to tell the model to match those exactly. A deletion (empty `new_string`) now takes the matched line's trailing newline with it, so removing a whole line no longer leaves a blank one behind. The CRLF/LF reconciliation this kernel already did is unchanged.
|
|
40
62
|
|
|
41
63
|
## 52.5.0
|
|
42
64
|
|
|
@@ -119,7 +141,7 @@
|
|
|
119
141
|
### Major Changes
|
|
120
142
|
|
|
121
143
|
- 5258c05: The `bash` tool no longer kills a foreground command that outruns its `timeout` when the turn has a background job registry (the CLI session, and any host that passes `QueryParams.backgroundJobs`). Before, the command was stopped and the call failed with `timedOut`. Now the same process is moved to a background job: the call succeeds, returns the output so far and a line naming the job, and the command keeps running until it ends or is stopped. The model awaits it with `wait_for_job`, reads it with `job` and stops it with `job` action `kill`, and is told when it ends. A host that relied on the timeout to stop a runaway command must now set `NAMZU_DISABLE_BACKGROUND_TASKS=1` (also refuses `run_in_background`) to keep the old kill, or stop the job itself. Unchanged: no registry, a sandboxed turn, a sandbox escape, a command that only runs `sleep`, and an owner at its job limit all still kill at the timeout. New and optional: `BackgroundJobRegistryRef.adopt`, `StartJobParams.initialOutput` and `hostOutput`, and the `onTimeout` option and `backgroundedJobId` result of `execHostShell`.
|
|
122
|
-
- 5258c05: The default point at which older history is summarised changes. `compactionConfig.triggerThreshold` no longer defaults to `0.7`; it is optional, and when absent the kernel derives the trigger as
|
|
144
|
+
- 5258c05: The default point at which older history is summarised changes. `compactionConfig.triggerThreshold` no longer defaults to `0.7`; it is optional, and when absent the kernel derives the trigger as follows: the window, less room for the reply (the model's output cap, at most 20,000 tokens), less a 13,000-token buffer. That is 167,000 tokens (83.5%) of a 200,000-token window and 967,000 (96.7%) of a 1,000,000-token one, and never less than half the window. A host with long contexts compacts later than before, so a conversation keeps more of its history and runs closer to the provider's limit.
|
|
123
145
|
|
|
124
146
|
The type of `triggerThreshold` is now `number | undefined` (it was `number` after parsing), so code that reads it from a parsed `CompactionConfig` must handle `undefined`; `resolveTriggerThreshold(configured, windowTokens, maxOutputTokens?)` is exported and returns the fraction actually used.
|
|
125
147
|
|
|
@@ -127,7 +149,7 @@
|
|
|
127
149
|
|
|
128
150
|
The CLI no longer sets 0.7 and takes the derived trigger; its footer meter and `/context details` read the same function.
|
|
129
151
|
|
|
130
|
-
- 5258c05: The file tools
|
|
152
|
+
- 5258c05: The file tools have new rules, and four defaults change.
|
|
131
153
|
|
|
132
154
|
**What breaks, and what to do:**
|
|
133
155
|
|
|
@@ -145,14 +167,14 @@
|
|
|
145
167
|
|
|
146
168
|
Breaking, in the order a hook author meets them:
|
|
147
169
|
|
|
148
|
-
- **Hooks of one event now run in parallel.** They used to run one after another (`post_*` in reverse registration order), each seeing the previous hook's `modify`, and a refusal stopped the chain. Now all of an event's hooks start together on the same original context and nothing short-circuits. Their answers combine
|
|
170
|
+
- **Hooks of one event now run in parallel.** They used to run one after another (`post_*` in reverse registration order), each seeing the previous hook's `modify`, and a refusal stopped the chain. Now all of an event's hooks start together on the same original context and nothing short-circuits. Their answers combine by one rule: a refusal beats `ask`, which beats `allow`; of several rewrites (`modify`, `replace`) the last in priority/registration order wins and no hook sees another's rewrite; every `context` is kept and every `halt` honoured. A hook that relied on running after another (a formatter before a linter) must be one script or one hook. Plugins that registered with `priority` still get the first refusal quoted in priority order, but priority no longer sets who starts first.
|
|
149
171
|
- **The default hook deadline is ten minutes, not 30 s** (`DEFAULT_SHELL_HOOK_TIMEOUT_MS`, and `HOOK_TIMEOUT_MS` for the lifecycle manager's own per-hook limit, which was 5 s). To keep the old limit set `timeoutMs: 30000` on the hook (shell hooks), or `hookTimeoutMs` on the plugin manager or in the CLI's `plugins` config.
|
|
150
172
|
- **Exit code `2` now acts** where it used to be logged and ignored: on `turn_end` and `subagent_stop` it keeps the model working, with stderr as its next message (the turn's iteration limit still ends a hook that never relents); on `pre_compact` it cancels a compaction the context threshold asked for (never one the provider forced); on `post_tool_use` the stderr is shown to the model beside that call's result. A hook that exits `2` on these events by habit and meant "ignore" should exit `1`, which is still logged and ignored.
|
|
151
173
|
- **JSON on stdout is now read.** A hook that exits `0` and prints a JSON object starting with `{` is taken as an answer. A hook that printed such text on purpose and wants it left alone should not start its output with `{`.
|
|
152
174
|
|
|
153
175
|
`@namzu/cli` is major for the same reasons: its `hooks:` config key is where these behaviours are reached, and a configured hook behaves differently for the same input.
|
|
154
176
|
|
|
155
|
-
- 5258c05: `web_fetch`
|
|
177
|
+
- 5258c05: `web_fetch` changes its input and its default output.
|
|
156
178
|
|
|
157
179
|
What breaks, and what to do:
|
|
158
180
|
|
|
@@ -169,7 +191,7 @@
|
|
|
169
191
|
|
|
170
192
|
- 5258c05: `ask_user_question` can ask up to four related questions in one call and returns one answer per question. The model-facing input is now `{ questions: [...] }`; the older single-question input (`question`, `options`, … at the top level) is still accepted as a batch of one, so nothing that sends it needs to change. A host that does not know about batches keeps working: `UserQuestionData` gains an optional `questions` list whose first entry its existing fields mirror, so it shows and answers the first question and the rest read as not answered. A host that does know sends `answer_question.answers` with one `{ questionId, selectedOptionIds, freeText? }` per question it has an answer for (a missing entry means not answered); the question ids are `<tool_use_id>#<index>`. An option can carry an optional `preview` for a host to show beside the list. Question texts and headers must be unique within one call.
|
|
171
193
|
- 5258c05: A host can now feed a turn hidden reminders, and give plan mode one writable file. Everything is opt-in; a host that passes none of it sees no change. `QueryParams.reminders` takes a `ReminderSource`, which the kernel calls before every model request of the turn (except the closing one a limit forces) with the session, turn, iteration and the conversation so far; each text it returns is appended as a user-role runtime message of the new kind `'reminder'` (`isReminderMessage` recognises it), kept in the durable history and never counted as operator input, so a source can read the history to set its own cadence. `ReviewPolicyOptions.planModeWrite` names the one call `plan` mode lets through (outside the roots, overwriting, and without a question); left out, plan mode refuses every change as before, and the option does nothing in any other mode. `SessionPaths.plans()` and `planFile()` give a session's plan directory and its `plans/plan.md`. `RUNTIME_CONTEXT_MESSAGE_KINDS` gains `'reminder'`, so a `switch` over `RuntimeContextMessageKind` with no default branch now needs a case for it.
|
|
172
|
-
- 5258c05: Context limits
|
|
194
|
+
- 5258c05: Context limits are derived from the model's window, and every new rule that stops something is opt-in in the SDK. Nothing a host gets without asking changes in this entry.
|
|
173
195
|
|
|
174
196
|
SDK, all additive:
|
|
175
197
|
|
|
@@ -184,7 +206,7 @@
|
|
|
184
206
|
- `/compact <text>` steers the summary.
|
|
185
207
|
- The CLI turns on `maxOutputContinuations: 3` and `circuitBreaker`, so a looping model or a window that refills stops the turn with a one-line explanation.
|
|
186
208
|
|
|
187
|
-
- 5258c05: Read-only shell commands no longer ask. `ls`, `cat`, `head`, `wc`, `git status`, `git diff`, `git log`, `git show` and the rest of the
|
|
209
|
+
- 5258c05: Read-only shell commands no longer ask. `ls`, `cat`, `head`, `wc`, `git status`, `git diff`, `git log`, `git show` and the rest of the vetted list run without a prompt in `prompt` and `accept-edits`, are allowed in `plan`, and run beside other read-only tool calls instead of one at a time. Anything the list does not vouch for still asks: a write redirection, a `$variable`, a substitution, a subshell, a here-document, a glob on a command that is not a plain reader, `cd` next to `git`, and any git flag outside the vetted table (`--output`, `-c`, `--exec-path`, `--config-env`, `fetch`, `commit`, branch or tag creation).
|
|
188
210
|
|
|
189
211
|
What changes for you: a turn that used to stop at `git status` now runs it. A read-only command that reads outside the working directory and added directories is still asked about, and so are protected paths and catastrophic removals. If you embed the SDK and rely on `bash` never being exempt from review, a host that wants the old behaviour passes its own `isReviewExempt` that returns false for `bash`.
|
|
190
212
|
|
|
@@ -196,7 +218,7 @@
|
|
|
196
218
|
|
|
197
219
|
`namzu.config.local.json` is added to the SDK's protected paths, so a model write to it is asked about in every mode.
|
|
198
220
|
|
|
199
|
-
- 5258c05: Three safety floors
|
|
221
|
+
- 5258c05: Three safety floors now stop a turn in `auto` (`--yolo`) and ask, where it used to run silently. No exported name, option or default value changes; `ToolCallEscalation` gains two optional fields (`protectedPaths`, `dangerousRemoval`).
|
|
200
222
|
|
|
201
223
|
What changes for you:
|
|
202
224
|
|
|
@@ -218,7 +240,7 @@
|
|
|
218
240
|
|
|
219
241
|
### Minor Changes
|
|
220
242
|
|
|
221
|
-
- 9e63191: The terminal now retries a model call that fails for a reason that may pass (a dropped connection, a 5xx, an overloaded server, a rate limit with a short wait)
|
|
243
|
+
- 9e63191: The terminal now retries a model call that fails for a reason that may pass (a dropped connection, a 5xx, an overloaded server, a rate limit with a short wait) instead of stopping after three tries. It tries ten times, waits from half a second doubling to thirty-two seconds with a little added on top, treats a `Retry-After` as a minimum, gives up on a wait longer than a minute (the reply then pauses and Enter tries again), and believes a provider that says `x-should-retry: false`. A reply cut off by a dropped connection starts over and the half-drawn text is taken back. While it waits, the Working row reads `Retrying in 5s · attempt 2/10` and counts down; Esc interrupts it. Nothing needs changing in your setup.
|
|
222
244
|
|
|
223
245
|
SDK: `ProviderRetryConfig` gains optional `jitter` (`'full'` or `'proportional'`), `retryAfter` (`'exact'` or `'floor'`) and `retryMidStream`, `ProviderRetryNotice` and the `provider_retry` event gain an optional `restart`, `ProviderRequestError` gains `shouldRetry` (only `false` is acted on), `providerHttpError` takes `shouldRetry`, and `providerVendorError` reads `x-should-retry`. No default changed: `maxRetries` is still 3, jitter still full, `Retry-After` still exact, a stream that failed after output is still not retried unless a host sets `retryMidStream` (a host that does must drop what the failed attempt showed when it sees `restart`; the turn drops its own copy). Hosts that want the terminal's numbers pass them in `query({ retry })`.
|
|
224
246
|
|
|
@@ -2340,7 +2362,7 @@ worktrees}/`. `SessionPaths`, `ensureProject`, `slugForCwd` and `tempRoot`
|
|
|
2340
2362
|
|
|
2341
2363
|
- 449642e: Add `/orchestrate`, a session mode layered above reasoning effort rather than inside it.
|
|
2342
2364
|
|
|
2343
|
-
`@namzu/cli`: `/orchestrate [on|off]` (no argument toggles) turns the mode on or off for the current session. It is deliberately not a `ReasoningEffort` value — typing `/effort orchestrate` still reports "unavailable for this model", exactly as
|
|
2365
|
+
`@namzu/cli`: `/orchestrate [on|off]` (no argument toggles) turns the mode on or off for the current session. It is deliberately not a `ReasoningEffort` value — typing `/effort orchestrate` still reports "unavailable for this model", exactly as the mode's earlier name did. When the `/effort` picker can open, the mode also appears there as its own row below a rule, apart from the model's own levels. Turning the mode on pins reasoning effort to the model's highest published level and strengthens delegation guidance for future turns toward delegating by default; when the model publishes no exact effort menu the mode still turns on and still strengthens guidance, but pins nothing and says so. Like effort, the mode is in-memory and per-session — nothing is written to preferences. A model switch still resets an explicit effort override to the new model's default, but while the mode is on it re-pins to the new model's highest level instead. The status line shows the level and the mode together (`effort high · orchestrate`), or the mode alone when nothing is pinned — never a fabricated effort value.
|
|
2344
2366
|
|
|
2345
2367
|
`@namzu/sdk`: `codingAgentDoctrineContribution` gains an optional `orchestrate` field on `CodingAgentDoctrineOptions`, and a new exported `CODING_AGENT_ORCHESTRATE_DOCTRINE` constant. Passing `orchestrate: true` (and leaving `delegation` at its default) appends that text after the existing delegation doctrine. Leaving the new field unset — the only behavior any existing caller can observe — renders byte-identical output to before this field existed. No default changed and no export was renamed or removed, so this is additive for every current consumer.
|
|
2346
2368
|
|
|
@@ -8074,7 +8096,7 @@ progress in <a local notes directory>/...` — a runtime error
|
|
|
8074
8096
|
returns 404, to explain the doctor's protocol/runtime split. The split is now
|
|
8075
8097
|
explained in the sentence itself.
|
|
8076
8098
|
- `@namzu/sdk` source comments cited design documents by path. They cite the
|
|
8077
|
-
session by name instead, which is
|
|
8099
|
+
session by name instead, which is all such a citation was ever worth.
|
|
8078
8100
|
|
|
8079
8101
|
No API, type, or behaviour change. The `@namzu/sandbox` message text is the
|
|
8080
8102
|
only runtime string affected, and nothing asserts on it.
|
|
@@ -11410,7 +11432,7 @@ z.ZodArray`) will take a different branch. If you relied on the permissive
|
|
|
11410
11432
|
|
|
11411
11433
|
Comments across the kernel explained namzu's design by naming another
|
|
11412
11434
|
product: "mirrors X's container architecture", "reference: X's
|
|
11413
|
-
`normalizePathForSandbox()`", "which is what Y and Z both do", "
|
|
11435
|
+
`normalizePathForSandbox()`", "which is what Y and Z both do", "another tool
|
|
11414
11436
|
uses 2000 for the same reason". Behaviour was correct throughout — this is
|
|
11415
11437
|
about what the code says it is. A kernel that explains itself by citation
|
|
11416
11438
|
reads as a reimplementation of something else, and namzu is not one.
|
|
@@ -13149,7 +13171,7 @@ z.ZodArray`) will take a different branch. If you relied on the permissive
|
|
|
13149
13171
|
That is the failure the rule exists for. A design explained by reference to
|
|
13150
13172
|
somebody else's product has handed over its rationale: the next reader
|
|
13151
13173
|
reaches for that product's model instead of asking what namzu is trying to
|
|
13152
|
-
achieve, and when
|
|
13174
|
+
achieve, and when that product changes the comment becomes a claim nobody
|
|
13153
13175
|
can check. Each one now states the same decision on its own terms — what it
|
|
13154
13176
|
accomplishes, and what breaks without it.
|
|
13155
13177
|
|
|
@@ -13902,10 +13924,10 @@ ProviderCapabilities` (with a new `supportsVision?` flag on the type)
|
|
|
13902
13924
|
host side before calling `Agent`, and updating it on the host
|
|
13903
13925
|
side once the tool result is in hand.
|
|
13904
13926
|
|
|
13905
|
-
- ea21863: feat(sdk)!: rename builtin tools to
|
|
13927
|
+
- ea21863: feat(sdk)!: rename builtin tools to canonical names
|
|
13906
13928
|
|
|
13907
|
-
**Breaking change.** Builtin tool names now
|
|
13908
|
-
|
|
13929
|
+
**Breaking change.** Builtin tool names now use the canonical
|
|
13930
|
+
names listed below:
|
|
13909
13931
|
|
|
13910
13932
|
- `bash` → `Bash`
|
|
13911
13933
|
- `edit` → `Edit`
|
|
@@ -13915,16 +13937,14 @@ ProviderCapabilities` (with a new `supportsVision?` flag on the type)
|
|
|
13915
13937
|
- `write_file` → `Write`
|
|
13916
13938
|
|
|
13917
13939
|
`LsTool` and `SearchToolsTool` are still exported but **removed from the
|
|
13918
|
-
default `getBuiltinTools()` set**.
|
|
13940
|
+
default `getBuiltinTools()` set**. The canonical set
|
|
13919
13941
|
does not include `LS` (directory listing is `Bash` + `Glob`) and has no
|
|
13920
13942
|
`search_tools` analogue at all. Including them in the defaults gave the
|
|
13921
13943
|
model two tools that looked right but degraded alignment. Hosts that
|
|
13922
13944
|
genuinely want either can register them explicitly.
|
|
13923
13945
|
|
|
13924
|
-
Why this is breaking and worth it: Namzu is a
|
|
13925
|
-
|
|
13926
|
-
API. Mirroring the canonical names verbatim means Claude's pretrained
|
|
13927
|
-
agentic instincts apply for free — no system-prompt argument needed to
|
|
13946
|
+
Why this is breaking and worth it: Namzu is not a wrapper around the Anthropic Beta Agents
|
|
13947
|
+
API. Using the canonical names verbatim means the model's agentic habits apply for free — no system-prompt argument needed to
|
|
13928
13948
|
explain what `Read` or `Bash` does. Idiosyncratic snake_case names threw
|
|
13929
13949
|
that alignment away on every call.
|
|
13930
13950
|
|
|
@@ -14055,7 +14075,7 @@ mkdir '/Users'` crash that hit sibling-container deployments.
|
|
|
14055
14075
|
branched on the env, only logged it; size grew with the skill
|
|
14056
14076
|
list). Only `NAMZU_SANDBOX_WORKSPACE` is forwarded today.
|
|
14057
14077
|
|
|
14058
|
-
The
|
|
14078
|
+
The image pre-creates **only the parent directories**
|
|
14059
14079
|
`/mnt`, `/mnt/user-data`, `/mnt/skills` — root-owned, mode 0555.
|
|
14060
14080
|
Leaf paths (`outputs/`, `uploads/`, `tool_results/`, `transcripts/`,
|
|
14061
14081
|
`<skill-id>/`) are intentionally NOT pre-created. When a bind is
|
|
@@ -14095,8 +14115,7 @@ test:smoke`) runs an opt-in docker integration test exercising the
|
|
|
14095
14115
|
|
|
14096
14116
|
Adds `buildAgentTool({ gateway, workingDirectory, allowedAgentIds, ... })`
|
|
14097
14117
|
that builds a single tool named `Agent` with the input shape
|
|
14098
|
-
`{ description, prompt, subagent_type }`.
|
|
14099
|
-
training distribution verbatim (per `code.claude.com/docs/en/sub-agents`):
|
|
14118
|
+
`{ description, prompt, subagent_type }`. The tool's behaviour is:
|
|
14100
14119
|
the parent's tool call BLOCKS on `gateway.waitForTask(handle.taskId)`,
|
|
14101
14120
|
the subagent runs in its own context window, and the subagent's final
|
|
14102
14121
|
text comes back as the tool result.
|
|
@@ -14113,7 +14132,7 @@ test:smoke`) runs an opt-in docker integration test exercising the
|
|
|
14113
14132
|
|
|
14114
14133
|
Both surfaces remain available — the coordinator trio is the right
|
|
14115
14134
|
choice for genuine work-queue surfaces, the `Agent` tool is the
|
|
14116
|
-
right choice when the host wants
|
|
14135
|
+
right choice when the host wants the blocking `Agent` tool.
|
|
14117
14136
|
|
|
14118
14137
|
- 265150b: feat(sdk): default sandboxed verification gate preset + expanded brick-pattern denylist
|
|
14119
14138
|
|
|
@@ -14146,7 +14165,7 @@ test:smoke`) runs an opt-in docker integration test exercising the
|
|
|
14146
14165
|
child level (deny dangerous shell patterns, restrict by category) can now
|
|
14147
14166
|
pass the same preset they pass to the supervisor.
|
|
14148
14167
|
|
|
14149
|
-
- d6b5bc1: **Remove the legacy `append` file tool.** `AppendFileTool` is gone — it was already excluded from `getBuiltinTools()` (
|
|
14168
|
+
- d6b5bc1: **Remove the legacy `append` file tool.** `AppendFileTool` is gone — it was already excluded from `getBuiltinTools()` (the default set has no `Append`), and appending is canonical `edit` with `insertLine: "end"`. The export is removed from the public surface; hosts that relied on it should switch to `edit`. namzu's CLI no longer needs to filter `append` out of its tool set.
|
|
14150
14169
|
- 63b4885: feat(sdk): forward sandboxProvider through reactive/supervisor agents
|
|
14151
14170
|
|
|
14152
14171
|
`ReactiveAgentConfig` and `SupervisorAgentConfig` gain an optional
|
|
@@ -10,10 +10,8 @@
|
|
|
10
10
|
* "approve all" said. That is what a mode is, an answer given before the call
|
|
11
11
|
* existed, and none of them saw this path.
|
|
12
12
|
*
|
|
13
|
-
* The lists
|
|
14
|
-
*
|
|
15
|
-
* directory and file mapped to Namzu's: the project directory is `.namzu` and
|
|
16
|
-
* the project file is `namzu.config.json`.
|
|
13
|
+
* The lists name the protected directories and protected files. The project
|
|
14
|
+
* directory is `.namzu` and the project file is `namzu.config.json`.
|
|
17
15
|
*
|
|
18
16
|
* Matching is by name, on every segment of the path. `.git` anywhere above a
|
|
19
17
|
* file protects it, and `.config/git` counts as one two-segment unit. Names
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protected-paths.d.ts","sourceRoot":"","sources":["../../src/authorization/protected-paths.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"protected-paths.d.ts","sourceRoot":"","sources":["../../src/authorization/protected-paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,6EAA6E;AAC7E,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EAUlD,CAAA;AAED,0DAA0D;AAC1D,eAAO,MAAM,4BAA4B,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAyB,CAAA;AAEhG,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAwCjD,CAAA;AAWD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYrD"}
|
|
@@ -10,10 +10,8 @@
|
|
|
10
10
|
* "approve all" said. That is what a mode is, an answer given before the call
|
|
11
11
|
* existed, and none of them saw this path.
|
|
12
12
|
*
|
|
13
|
-
* The lists
|
|
14
|
-
*
|
|
15
|
-
* directory and file mapped to Namzu's: the project directory is `.namzu` and
|
|
16
|
-
* the project file is `namzu.config.json`.
|
|
13
|
+
* The lists name the protected directories and protected files. The project
|
|
14
|
+
* directory is `.namzu` and the project file is `namzu.config.json`.
|
|
17
15
|
*
|
|
18
16
|
* Matching is by name, on every segment of the path. `.git` anywhere above a
|
|
19
17
|
* file protects it, and `.config/git` counts as one two-segment unit. Names
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protected-paths.js","sourceRoot":"","sources":["../../src/authorization/protected-paths.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"protected-paths.js","sourceRoot":"","sources":["../../src/authorization/protected-paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAsB;IACvD,MAAM;IACN,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,eAAe;IACf,OAAO;IACP,MAAM;CACN,CAAA;AAED,0DAA0D;AAC1D,MAAM,CAAC,MAAM,4BAA4B,GAAmC,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAA;AAEhG,0EAA0E;AAC1E,MAAM,CAAC,MAAM,oBAAoB,GAAsB;IACtD,YAAY;IACZ,aAAa;IACb,SAAS;IACT,eAAe;IACf,QAAQ;IACR,WAAW;IACX,UAAU;IACV,SAAS;IACT,SAAS;IACT,UAAU;IACV,aAAa;IACb,eAAe;IACf,cAAc;IACd,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,mBAAmB;IACnB,2EAA2E;IAC3E,yBAAyB;IACzB,QAAQ;IACR,SAAS;IACT,aAAa;IACb,UAAU;IACV,iBAAiB;IACjB,eAAe;IACf,aAAa;IACb,cAAc;IACd,UAAU;IACV,eAAe;IACf,aAAa;IACb,yBAAyB;IACzB,cAAc;IACd,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,2BAA2B;IAC3B,0BAA0B;IAC1B,oBAAoB;IACpB,oBAAoB;CACpB,CAAA;AAED,kFAAkF;AAClF,SAAS,IAAI,CAAC,IAAY;IACzB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AAChE,CAAC;AAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;AAC5D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1D,MAAM,MAAM,GAAG,4BAA4B,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;AAEjF;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,IAAI,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;IAC1C,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;QAC/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC5E,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;QACrF,CAAC;IACF,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC1C,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACjE,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Which shell lines only read, so that they run without a prompt.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* `ls`, `cat`, `git status` and `git diff` run without asking, because each is
|
|
5
|
+
* on a vetted list and nothing in the line is decided at run time. The list and
|
|
6
|
+
* the conditions are these:
|
|
7
7
|
*
|
|
8
8
|
* - every command of the line is on the list, the line parses completely, and
|
|
9
9
|
* nothing in it is read at run time: no `$var` outside single quotes, no
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
*
|
|
23
23
|
* Not ported, and so never read-only here: `sed`, `ps`, `lsof`, `ss`, `date`,
|
|
24
24
|
* `man`, `xargs`, `fd`, `gh`, `docker logs|inspect`, `printf`, `[[`, `test`
|
|
25
|
-
* and the shell builtins other than `cd`. The
|
|
25
|
+
* and the shell builtins other than `cd`. The check of the working
|
|
26
26
|
* directory for a planted bare repository needs the directory, which the tool
|
|
27
27
|
* predicate does not get; the trusted-project gate is what stands in for it.
|
|
28
28
|
*
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Which shell lines only read, so that they run without a prompt.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* `ls`, `cat`, `git status` and `git diff` run without asking, because each is
|
|
5
|
+
* on a vetted list and nothing in the line is decided at run time. The list and
|
|
6
|
+
* the conditions are these:
|
|
7
7
|
*
|
|
8
8
|
* - every command of the line is on the list, the line parses completely, and
|
|
9
9
|
* nothing in it is read at run time: no `$var` outside single quotes, no
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
*
|
|
23
23
|
* Not ported, and so never read-only here: `sed`, `ps`, `lsof`, `ss`, `date`,
|
|
24
24
|
* `man`, `xargs`, `fd`, `gh`, `docker logs|inspect`, `printf`, `[[`, `test`
|
|
25
|
-
* and the shell builtins other than `cd`. The
|
|
25
|
+
* and the shell builtins other than `cd`. The check of the working
|
|
26
26
|
* directory for a planted bare repository needs the directory, which the tool
|
|
27
27
|
* predicate does not get; the trusted-project gate is what stands in for it.
|
|
28
28
|
*
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
*/
|
|
33
33
|
import { FLAG_TABLES } from './readonly-flags.js';
|
|
34
34
|
import { lexShellCommandLine } from './shell-lexer.js';
|
|
35
|
-
/** Lines longer than this are not analysed (the
|
|
35
|
+
/** Lines longer than this are not analysed (the budget). */
|
|
36
36
|
const MAX_LINE_LENGTH = 20_000;
|
|
37
37
|
/** Variables whose value cannot change what a command does. */
|
|
38
38
|
const SAFE_ENVIRONMENT = new Set([
|
|
@@ -75,7 +75,7 @@ const SAFE_ENVIRONMENT = new Set([
|
|
|
75
75
|
'DEBIAN_FRONTEND',
|
|
76
76
|
'GIT_TERMINAL_PROMPT',
|
|
77
77
|
]);
|
|
78
|
-
/** Commands that read and print, with any arguments (the
|
|
78
|
+
/** Commands that read and print, with any arguments (the bare-safe list). */
|
|
79
79
|
const ANY_ARGUMENTS = new Set([
|
|
80
80
|
'cal',
|
|
81
81
|
'uptime',
|
|
@@ -571,7 +571,7 @@ const GIT_CHECKS = {
|
|
|
571
571
|
return false;
|
|
572
572
|
},
|
|
573
573
|
};
|
|
574
|
-
// -- the commands with a regex of their own
|
|
574
|
+
// -- the commands with a regex of their own ----------------
|
|
575
575
|
function uniqIsReadOnly(args) {
|
|
576
576
|
for (let i = 0; i < args.length; i += 1) {
|
|
577
577
|
const word = args[i];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readonly-commands.js","sourceRoot":"","sources":["../../src/authorization/readonly-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,EAAE,WAAW,EAAkB,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAkB,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAEtE,wEAAwE;AACxE,MAAM,eAAe,GAAG,MAAM,CAAA;AAE9B,+DAA+D;AAC/D,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC;IACrD,cAAc;IACd,MAAM;IACN,QAAQ;IACR,aAAa;IACb,aAAa;IACb,gBAAgB;IAChB,UAAU;IACV,UAAU;IACV,kBAAkB;IAClB,yBAAyB;IACzB,gCAAgC;IAChC,cAAc;IACd,MAAM;IACN,UAAU;IACV,QAAQ;IACR,UAAU;IACV,SAAS;IACT,SAAS;IACT,MAAM;IACN,WAAW;IACX,UAAU;IACV,aAAa;IACb,IAAI;IACJ,WAAW;IACX,UAAU;IACV,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,SAAS;IACT,OAAO;IACP,UAAU;IACV,gBAAgB;IAChB,IAAI;IACJ,iBAAiB;IACjB,qBAAqB;CACrB,CAAC,CAAA;AAEF,yFAAyF;AACzF,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC;IAClD,KAAK;IACL,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,IAAI;IACJ,MAAM;IACN,SAAS;IACT,SAAS;IACT,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,MAAM;IACN,IAAI;IACJ,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;IACV,KAAK;IACL,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,KAAK;IACL,KAAK;IACL,MAAM;IACN,QAAQ;IACR,UAAU;IACV,KAAK;IACL,MAAM;IACN,KAAK;IACL,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,KAAK;IACL,OAAO;IACP,IAAI;IACJ,MAAM;IACN,IAAI;CACJ,CAAC,CAAA;AAEF,sEAAsE;AACtE,MAAM,OAAO,GAAwB,IAAI,GAAG,CAAC;IAC5C,IAAI;IACJ,KAAK;IACL,MAAM;IACN,MAAM;IACN,IAAI;IACJ,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,SAAS;IACT,SAAS;IACT,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,QAAQ;IACR,IAAI;IACJ,KAAK;IACL,KAAK;IACL,KAAK;IACL,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;IACV,WAAW;IACX,SAAS;IACT,QAAQ;IACR,IAAI;CACJ,CAAC,CAAA;AAEF,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC;IAChD,SAAS;IACT,KAAK;IACL,OAAO;IACP,UAAU;IACV,KAAK;IACL,QAAQ;IACR,SAAS;IACT,UAAU;IACV,MAAM;IACN,UAAU;IACV,cAAc;CACd,CAAC,CAAA;AAEF,wEAAwE;AACxE,MAAM,aAAa,GAAG;IACrB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,QAAQ;IACR,WAAW;IACX,UAAU;IACV,aAAa;IACb,WAAW;IACX,UAAU;IACV,OAAO;IACP,cAAc;IACd,YAAY;IACZ,UAAU;IACV,UAAU;IACV,OAAO;CACP,CAAA;AACD,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAEpD,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAE5E,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;GAGG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACrC,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;QAC3B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3B,CAAC,IAAI,CAAC,CAAA;YACN,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,CAAC,MAAM,CAAA;YAChB,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,CAAC,MAAM,CAAA;YAChB,SAAQ;QACT,CAAC;QACD,IAAI,MAAM;YAAE,SAAQ;QACpB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACxB,IAAI,IAAI,KAAK,SAAS,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;QAC1E,CAAC;QACD,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,IAAI,CAAA;QAC1B,IAAI,MAAM;YAAE,SAAQ;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,IAAI,CAAA;QACvC,wEAAwE;QACxE,sCAAsC;QACtC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACxB,IACC,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpD,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEvC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACxB,IAAI,IAAI,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;gBACtC,CAAC,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACzB,SAAQ;YACT,CAAC;YACD,2CAA2C;YAC3C,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG;gBAAE,SAAQ;YAClD,OAAO,IAAI,CAAA;QACZ,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED,2DAA2D;AAC3D,SAAS,eAAe,CAAC,IAAY;IACpC,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;QAC3B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3B,CAAC,IAAI,CAAC,CAAA;YACN,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,CAAC,MAAM,CAAA;YAChB,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,CAAC,MAAM,CAAA;YAChB,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;IAC7E,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED,mFAAmF;AACnF,SAAS,oBAAoB,CAAC,KAAa;IAC1C,OAAO,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,6FAA6F;AAC7F,SAAS,SAAS,CAAC,IAAe;IACjC,kEAAkE;IAClE,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAC9E,IAAI,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7D,2EAA2E;IAC3E,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,MAAM,SAAS,GAAG,iBAAiB,CAAA;AAEnC,SAAS,MAAM,CAAC,IAAY;IAC3B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACvE,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,IAAkC;IACnE,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACjD,OAAO,IAAI,KAAK,QAAQ,CAAA;AACzB,CAAC;AAED,8DAA8D;AAC9D,SAAS,cAAc,CAAC,KAAa;IACpC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,oBAAoB,CAAC,KAAK,CAAC,CAAA;AACzD,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CACtB,IAAuB,EACvB,KAAa,EACb,SAAoB,EACpB,OAAe;IAEf,IAAI,CAAC,GAAG,KAAK,CAAA;IACb,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;QAC9B,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACjB,CAAC,IAAI,CAAC,CAAA;YACN,SAAQ;QACT,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,CAAC,IAAI,CAAC,CAAA;YACN,IAAI,SAAS,CAAC,UAAU;gBAAE,MAAK;YAC/B,SAAQ;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,IAAI,oBAAoB,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YAC5C,CAAC,IAAI,CAAC,CAAA;YACN,SAAQ;QACT,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QACzD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,eAAe;YACf,IAAI,OAAO,KAAK,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9C,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,IAAI,CAAA;YAC9D,yCAAyC;YACzC,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpF,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC9C,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7E,CAAC,IAAI,CAAC,CAAA;oBACN,SAAQ;gBACT,CAAC;YACF,CAAC;YACD,gEAAgE;YAChE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvE,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;oBACjC,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC,KAAK,MAAM;wBAAE,OAAO,KAAK,CAAA;gBAC3D,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,OAAO,KAAK,CAAA;QACb,CAAC;QACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACrB,IAAI,QAAQ,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YACxC,CAAC,IAAI,CAAC,CAAA;YACN,SAAQ;QACT,CAAC;QACD,IAAI,KAAa,CAAA;QACjB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,KAAK,GAAG,QAAQ,CAAA;YAChB,CAAC,IAAI,CAAC,CAAA;QACP,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACxB,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YACpD,KAAK,GAAG,IAAI,CAAA;YACZ,CAAC,IAAI,CAAC,CAAA;QACP,CAAC;QACD,IAAI,cAAc,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QACvC,IAAI,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAChD,mEAAmE;YACnE,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAA;QACxF,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;IAC1C,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,6EAA6E;AAE7E,MAAM,SAAS,GAAG,0BAA0B,CAAA;AAC5C,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;AAEhG,SAAS,qBAAqB,CAAC,IAAuB;IACrD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AACvF,CAAC;AAED,iGAAiG;AACjG,SAAS,iBAAiB,CAAC,IAAuB;IACjD,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,EAAE,CAC7B,qBAAqB,CAAC,CAAC,KAAK,CAAC,CAAC;QAC9B,oBAAoB,CAAC,KAAK,CAAC;QAC3B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;QACrB,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;QAC9B,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACrC,KAAK,MAAM,MAAM,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;YACpE,IAAI,KAAyB,CAAA;YAC7B,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;gBAAE,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;iBAC1D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;gBAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YAC7E,IAAI,KAAK,KAAK,SAAS;gBAAE,SAAQ;YACjC,IAAI,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAC3B,wEAAwE;YACxE,IACC,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,CAAC;gBAChD,KAAK,KAAK,EAAE;gBACZ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACpB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC5B,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;gBAC7B,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC;gBAE1B,OAAO,IAAI,CAAA;QACb,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAID,MAAM,UAAU,GAAwC;IACvD,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,iBAAiB;IAC7B,cAAc,EAAE,iBAAiB;IACjC,cAAc,EAAE,iBAAiB;IACjC,kBAAkB,EAAE,iBAAiB;IACrC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM;YACxF,OAAO,IAAI,CAAA;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IACrF,CAAC;IACD,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,iBAAiB,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACxC,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;YAC9B,IAAI,CAAC,WAAW,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACnC,WAAW,GAAG,IAAI,CAAA;gBAClB,SAAQ;YACT,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,KAAK,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC3D,IAAI,IAAI,KAAK,QAAQ;oBAAE,CAAC,IAAI,CAAC,CAAA;gBAC7B,SAAQ;YACT,CAAC;YACD,OAAO,IAAI,CAAA;QACZ,CAAC;QACD,OAAO,KAAK,CAAA;IACb,CAAC;IACD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAC5D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC/D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACxC,OAAO,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,CAAA;IAC/D,CAAC;IACD,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,WAAW,CAAC;IACzE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,iBAAiB,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACxC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;YAC1B,YAAY;YACZ,eAAe;YACf,UAAU;YACV,aAAa;YACb,aAAa;YACb,QAAQ;YACR,UAAU;YACV,IAAI;SACJ,CAAC,CAAA;QACF,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;YAC9B,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBACjB,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnC,WAAW,GAAG,IAAI,CAAA;gBAClB,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,GAAG,IAAI,CAAA;qBACjD,IACJ,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;oBACf,IAAI,CAAC,MAAM,GAAG,CAAC;oBACf,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;oBACnB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAE3B,OAAO,GAAG,IAAI,CAAA;gBACf,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,CAAC,IAAI,CAAC,CAAA;qBACzB,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;oBAAE,CAAC,IAAI,CAAC,CAAA;;oBAChC,CAAC,IAAI,CAAC,CAAA;YACZ,CAAC;iBAAM,CAAC;gBACP,+DAA+D;gBAC/D,IAAI,CAAC,OAAO;oBAAE,OAAO,IAAI,CAAA;gBACzB,CAAC,IAAI,CAAC,CAAA;YACP,CAAC;QACF,CAAC;QACD,OAAO,KAAK,CAAA;IACb,CAAC;IACD,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,IAAI,iBAAiB,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACxC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;QACpF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QAC3D,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;YAC9B,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBACjB,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnC,WAAW,GAAG,IAAI,CAAA;gBAClB,QAAQ,GAAG,EAAE,CAAA;gBACb,CAAC,IAAI,CAAC,CAAA;gBACN,SAAQ;YACT,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,GAAG,IAAI,CAAA;qBACjD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;oBACvF,OAAO,GAAG,IAAI,CAAA;gBACf,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;oBAC3C,CAAC,IAAI,CAAC,CAAA;gBACP,CAAC;qBAAM,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,QAAQ,GAAG,IAAI,CAAA;oBACf,CAAC,IAAI,CAAC,CAAA;gBACP,CAAC;qBAAM,CAAC;oBACP,QAAQ,GAAG,IAAI,CAAA;oBACf,CAAC,IAAI,CAAC,CAAA;gBACP,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,+EAA+E;gBAC/E,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAAE,OAAO,IAAI,CAAA;gBAC1D,CAAC,IAAI,CAAC,CAAA;YACP,CAAC;QACF,CAAC;QACD,OAAO,KAAK,CAAA;IACb,CAAC;CACD,CAAA;AAED,8EAA8E;AAE9E,SAAS,cAAc,CAAC,IAAuB;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;QAC9B,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC/E,yBAAyB;QACzB,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAQ;QACnC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAAE,SAAQ;QACtE,OAAO,KAAK,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,IAAuB;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC/D,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QACxE,IACC,CAAC,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAChF,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAC7C;YAED,OAAO,KAAK,CAAA;QACb,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAA;IACxC,CAAC;IACD,OAAO,OAAO,GAAG,CAAC,CAAA;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,IAAuB;IAC9C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAuB;IAChD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC1D,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,qBAAqB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QAC7E,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;QACnF,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YACzF,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAAE,IAAI,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC;oBAAE,OAAO,KAAK,CAAA;QACtF,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,0EAA0E;AAC1E,SAAS,iBAAiB,CAAC,IAAuB,EAAE,IAAY;IAC/D,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;IAC5B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACpC,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO;YACX,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAA;QACzB,KAAK,IAAI;YACR,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;QACxB,KAAK,SAAS;YACb,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,CAAC,CAAA;QACnF,KAAK,MAAM;YACV,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAA;QAC9F,KAAK,UAAU;YACd,OAAO,CACN,IAAI,CAAC,MAAM,KAAK,CAAC;gBACjB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,CAAC,CACzE,CAAA;QACF,KAAK,IAAI;YACR,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAA;QAC/C,KAAK,MAAM;YACV,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAA;QAC1E,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACb,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,CAAA;QACpD,KAAK,QAAQ;YACZ,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAA;QACvE,KAAK,MAAM;YACV,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;QAC5B,KAAK,IAAI;YACR,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;QAC1B,KAAK,MAAM;YACV,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;QAC5B,KAAK,QAAQ;YACZ,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAC9B;YACC,MAAK;IACP,CAAC;IACD,6EAA6E;IAC7E,IAAI,QAA0E,CAAA;IAC9E,KAAK,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM;YAAE,SAAQ;QACxC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAAE,SAAQ;QACnD,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK;YAC1D,QAAQ,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;IACpD,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACxC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;IACpF,CAAC;IACD,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,iBAAiB,IAAI,CAAC,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;YAC9F,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC/D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IACjF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAChC,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,SAAS,uBAAuB,CAC/B,YAGG;IAEH,KAAK,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QAC1B,IAAI,SAAS,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAA;QACnC,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QACrD,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG;gBAAE,SAAQ;YAClD,IAAI,KAAK,KAAK,WAAW;gBAAE,SAAQ;YACnC,OAAO,KAAK,CAAA;QACb,CAAC;QACD,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACtB,IAAI,oBAAoB,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAA;YAC7C,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YAChD,SAAQ;QACT,CAAC;QACD,8CAA8C;QAC9C,IAAI,KAAK,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,SAAQ;QACtD,OAAO,KAAK,CAAA;IACb,CAAC;IACD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,UAAwB,MAAM;IACjF,IAAI,OAAO,KAAK,KAAK;QAAE,OAAO,KAAK,CAAA;IACnC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,eAAe;QAAE,OAAO,KAAK,CAAA;IACrE,IAAI,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IACxC,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAAE,OAAO,KAAK,CAAA;IAEnD,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;IACpD,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAChF,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IAChD,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAA;IAE9D,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,KAAK,CAAA;QAC3C,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,YAAY,CAAC;YAAE,OAAO,KAAK,CAAA;QAChE,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACpE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO,KAAK,CAAA;QACjF,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACtD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACnE,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QAE1C,yEAAyE;QACzE,uEAAuE;QACvE,yCAAyC;QACzC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAA;QACvC,MAAM,cAAc,GAAG,CAAC,IAAe,EAAE,EAAE,CAC1C,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3D,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;QAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7E,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QAClD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;QAExE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QACxD,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO,GAAG,IAAI,CAAA;QACxC,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,gBAAgB,GAAG,IAAI,CAAA;IACjD,CAAC;IACD,IAAI,OAAO,IAAI,gBAAgB;QAAE,OAAO,KAAK,CAAA;IAC7C,OAAO,IAAI,CAAA;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"readonly-commands.js","sourceRoot":"","sources":["../../src/authorization/readonly-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Per-flag allowlists for the shell commands that may run without a prompt.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* flags it vets and what each takes, `none` (a switch), `string` or `number`.
|
|
4
|
+
* For each command, the flags it vets and what each takes, `none` (a switch), `string` or `number`.
|
|
6
5
|
* A flag not listed here is not read-only, which is how `git diff --output=f`
|
|
7
6
|
* (writes a file), `git -c`, `--exec-path` and `--config-env` stay out: they
|
|
8
7
|
* are not in any table. Space-separated lists per kind keep the file readable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readonly-flags.d.ts","sourceRoot":"","sources":["../../src/authorization/readonly-flags.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"readonly-flags.d.ts","sourceRoot":"","sources":["../../src/authorization/readonly-flags.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEnD,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAClD,iEAAiE;IACjE,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;CAC5B;AAeD,2EAA2E;AAC3E,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAkK3D,CAAA"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Per-flag allowlists for the shell commands that may run without a prompt.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* flags it vets and what each takes, `none` (a switch), `string` or `number`.
|
|
4
|
+
* For each command, the flags it vets and what each takes, `none` (a switch), `string` or `number`.
|
|
6
5
|
* A flag not listed here is not read-only, which is how `git diff --output=f`
|
|
7
6
|
* (writes a file), `git -c`, `--exec-path` and `--config-env` stay out: they
|
|
8
7
|
* are not in any table. Space-separated lists per kind keep the file readable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readonly-flags.js","sourceRoot":"","sources":["../../src/authorization/readonly-flags.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"readonly-flags.js","sourceRoot":"","sources":["../../src/authorization/readonly-flags.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,8 +7,7 @@
|
|
|
7
7
|
* `rm -rf ~`, `rm -rf $HOME`, `rm -rf "$BUILD/"` (empty variable, so `/`) and
|
|
8
8
|
* `rm -rf ..` all went past it. The flags were never the point. A removal is
|
|
9
9
|
* catastrophic because of WHAT it removes, so this reads the targets of `rm`
|
|
10
|
-
* and `rmdir` whatever the flags
|
|
11
|
-
* check does (version 2.1.302).
|
|
10
|
+
* and `rmdir` whatever the flags.
|
|
12
11
|
*
|
|
13
12
|
* A removal is flagged when a target is
|
|
14
13
|
*
|
|
@@ -26,7 +25,7 @@
|
|
|
26
25
|
*
|
|
27
26
|
* The answer is a reason, which the kernel turns into an escalation: asked
|
|
28
27
|
* every time, in every mode, and refused when nobody can be asked. It is not a
|
|
29
|
-
* denial:
|
|
28
|
+
* denial: it asks, because there are legitimate removals a person
|
|
30
29
|
* can approve.
|
|
31
30
|
*/
|
|
32
31
|
import { type ShellReading } from './shell-paths.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"removal.d.ts","sourceRoot":"","sources":["../../src/authorization/removal.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"removal.d.ts","sourceRoot":"","sources":["../../src/authorization/removal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAeH,OAAO,EAAwB,KAAK,YAAY,EAAoB,MAAM,kBAAkB,CAAA;AAE5F,mDAAmD;AACnD,MAAM,WAAW,cAAc;IAC9B,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,wCAAwC;IACxC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAClD,kEAAkE;IAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,yFAAyF;IACzF,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;CAC3D;AA0FD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC/B,OAAO,EAAE,YAAY,EACrB,gBAAgB,EAAE,OAAO,EACzB,OAAO,EAAE,cAAc,GACrB,MAAM,GAAG,SAAS,CA2BpB"}
|
|
@@ -7,8 +7,7 @@
|
|
|
7
7
|
* `rm -rf ~`, `rm -rf $HOME`, `rm -rf "$BUILD/"` (empty variable, so `/`) and
|
|
8
8
|
* `rm -rf ..` all went past it. The flags were never the point. A removal is
|
|
9
9
|
* catastrophic because of WHAT it removes, so this reads the targets of `rm`
|
|
10
|
-
* and `rmdir` whatever the flags
|
|
11
|
-
* check does (version 2.1.302).
|
|
10
|
+
* and `rmdir` whatever the flags.
|
|
12
11
|
*
|
|
13
12
|
* A removal is flagged when a target is
|
|
14
13
|
*
|
|
@@ -26,7 +25,7 @@
|
|
|
26
25
|
*
|
|
27
26
|
* The answer is a reason, which the kernel turns into an escalation: asked
|
|
28
27
|
* every time, in every mode, and refused when nobody can be asked. It is not a
|
|
29
|
-
* denial:
|
|
28
|
+
* denial: it asks, because there are legitimate removals a person
|
|
30
29
|
* can approve.
|
|
31
30
|
*/
|
|
32
31
|
import { existsSync, realpathSync } from 'node:fs';
|
|
@@ -206,7 +205,7 @@ function checkTarget(program, args, spelled, word, scope) {
|
|
|
206
205
|
const expanded = expandTilde(spelled, scope.home);
|
|
207
206
|
const relative = !isAbsolute(expanded);
|
|
208
207
|
if (expandsAtRuntime(word) && /[$`]/.test(expanded)) {
|
|
209
|
-
// A variable the check cannot read:
|
|
208
|
+
// A variable the check cannot read: it is treated as a relative
|
|
210
209
|
// name, which is also what the shell does when the variable is unset and
|
|
211
210
|
// the rest is a plain name. Nothing more to learn from it.
|
|
212
211
|
return undefined;
|