@lannguyensi/harness 0.41.0 → 0.43.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 (137) hide show
  1. package/CHANGELOG.md +58 -0
  2. package/README.md +9 -0
  3. package/dist/cli/adopt/derive.d.ts +15 -0
  4. package/dist/cli/adopt/derive.js +34 -7
  5. package/dist/cli/adopt/derive.js.map +1 -1
  6. package/dist/cli/adopt/index.d.ts +30 -0
  7. package/dist/cli/adopt/index.js +23 -3
  8. package/dist/cli/adopt/index.js.map +1 -1
  9. package/dist/cli/apply/generate-settings.d.ts +14 -1
  10. package/dist/cli/apply/generate-settings.js +7 -3
  11. package/dist/cli/apply/generate-settings.js.map +1 -1
  12. package/dist/cli/approve/branch-protection.js +1 -1
  13. package/dist/cli/approve/branch-protection.js.map +1 -1
  14. package/dist/cli/approve/stdin-report.js +2 -0
  15. package/dist/cli/approve/stdin-report.js.map +1 -1
  16. package/dist/cli/doctor/claude-mcp.d.ts +50 -0
  17. package/dist/cli/doctor/claude-mcp.js +170 -0
  18. package/dist/cli/doctor/claude-mcp.js.map +1 -0
  19. package/dist/cli/doctor/format.js +37 -0
  20. package/dist/cli/doctor/format.js.map +1 -1
  21. package/dist/cli/doctor/index.d.ts +10 -0
  22. package/dist/cli/doctor/index.js +24 -0
  23. package/dist/cli/doctor/index.js.map +1 -1
  24. package/dist/cli/doctor/npm-bin-path.js +42 -0
  25. package/dist/cli/doctor/npm-bin-path.js.map +1 -1
  26. package/dist/cli/doctor/types.d.ts +11 -0
  27. package/dist/cli/doctor/types.js.map +1 -1
  28. package/dist/cli/dry-run.js +13 -1
  29. package/dist/cli/dry-run.js.map +1 -1
  30. package/dist/cli/index.js +253 -5
  31. package/dist/cli/index.js.map +1 -1
  32. package/dist/cli/init/agent-tasks-auth.js +32 -0
  33. package/dist/cli/init/agent-tasks-auth.js.map +1 -1
  34. package/dist/cli/init/composer.js +9 -15
  35. package/dist/cli/init/composer.js.map +1 -1
  36. package/dist/cli/init/dependencies.js +21 -0
  37. package/dist/cli/init/dependencies.js.map +1 -1
  38. package/dist/cli/init/detect.d.ts +20 -3
  39. package/dist/cli/init/detect.js +34 -36
  40. package/dist/cli/init/detect.js.map +1 -1
  41. package/dist/cli/init/interactive.d.ts +33 -0
  42. package/dist/cli/init/interactive.js +399 -5
  43. package/dist/cli/init/interactive.js.map +1 -1
  44. package/dist/cli/init/profiles.d.ts +1 -1
  45. package/dist/cli/init/profiles.js +2 -2
  46. package/dist/cli/init/templates.d.ts +1 -1
  47. package/dist/cli/init/templates.js +111 -32
  48. package/dist/cli/init/templates.js.map +1 -1
  49. package/dist/cli/main.js +10 -0
  50. package/dist/cli/main.js.map +1 -1
  51. package/dist/cli/pack/hook-branch-protection.js +1 -1
  52. package/dist/cli/pack/hook-branch-protection.js.map +1 -1
  53. package/dist/cli/pack/hook-post-merge-gate-record.d.ts +30 -0
  54. package/dist/cli/pack/hook-post-merge-gate-record.js +153 -0
  55. package/dist/cli/pack/hook-post-merge-gate-record.js.map +1 -0
  56. package/dist/cli/pack/hook-post-merge-gate.d.ts +28 -0
  57. package/dist/cli/pack/hook-post-merge-gate.js +244 -0
  58. package/dist/cli/pack/hook-post-merge-gate.js.map +1 -0
  59. package/dist/cli/pack/hook-solution-acceptance-writeguard.js +149 -3
  60. package/dist/cli/pack/hook-solution-acceptance-writeguard.js.map +1 -1
  61. package/dist/cli/pack/hook-solution-acceptance.js +1 -1
  62. package/dist/cli/pack/hook-solution-acceptance.js.map +1 -1
  63. package/dist/cli/pack/understanding-report-schema-hint.js +1 -1
  64. package/dist/cli/pack/understanding-report-schema-hint.js.map +1 -1
  65. package/dist/cli/policy/intercept.js +77 -10
  66. package/dist/cli/policy/intercept.js.map +1 -1
  67. package/dist/cli/record/index.d.ts +64 -0
  68. package/dist/cli/record/index.js +211 -0
  69. package/dist/cli/record/index.js.map +1 -0
  70. package/dist/cli/session-start/index.d.ts +7 -0
  71. package/dist/cli/session-start/index.js +133 -38
  72. package/dist/cli/session-start/index.js.map +1 -1
  73. package/dist/cli/session-start/toolchain-parity.d.ts +149 -0
  74. package/dist/cli/session-start/toolchain-parity.js +618 -0
  75. package/dist/cli/session-start/toolchain-parity.js.map +1 -0
  76. package/dist/cli/uninstall/index.d.ts +73 -1
  77. package/dist/cli/uninstall/index.js +134 -2
  78. package/dist/cli/uninstall/index.js.map +1 -1
  79. package/dist/cli/validate/checks.js +2 -2
  80. package/dist/cli/validate/checks.js.map +1 -1
  81. package/dist/io/claude-mcp.d.ts +258 -0
  82. package/dist/io/claude-mcp.js +544 -0
  83. package/dist/io/claude-mcp.js.map +1 -0
  84. package/dist/policies/ledger-client.d.ts +34 -1
  85. package/dist/policies/ledger-client.js +21 -16
  86. package/dist/policies/ledger-client.js.map +1 -1
  87. package/dist/policy-packs/builtin/branch-protection-runtime.d.ts +1 -1
  88. package/dist/policy-packs/builtin/branch-protection-runtime.js +1 -1
  89. package/dist/policy-packs/builtin/branch-protection.js +2 -2
  90. package/dist/policy-packs/builtin/branch-protection.js.map +1 -1
  91. package/dist/policy-packs/builtin/post-merge-gate-runtime.d.ts +195 -0
  92. package/dist/policy-packs/builtin/post-merge-gate-runtime.js +290 -0
  93. package/dist/policy-packs/builtin/post-merge-gate-runtime.js.map +1 -0
  94. package/dist/policy-packs/builtin/post-merge-gate.d.ts +56 -0
  95. package/dist/policy-packs/builtin/post-merge-gate.js +291 -0
  96. package/dist/policy-packs/builtin/post-merge-gate.js.map +1 -0
  97. package/dist/policy-packs/builtin/solution-acceptance-runtime.js +29 -14
  98. package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
  99. package/dist/policy-packs/builtin/solution-acceptance.js +1 -1
  100. package/dist/policy-packs/registry.d.ts +1 -1
  101. package/dist/policy-packs/registry.js +12 -0
  102. package/dist/policy-packs/registry.js.map +1 -1
  103. package/dist/runtime/bash-match-facts.d.ts +58 -0
  104. package/dist/runtime/bash-match-facts.js +194 -0
  105. package/dist/runtime/bash-match-facts.js.map +1 -0
  106. package/dist/runtime/bash-match-registry.d.ts +75 -0
  107. package/dist/runtime/bash-match-registry.js +359 -0
  108. package/dist/runtime/bash-match-registry.js.map +1 -0
  109. package/dist/runtime/bash-prefix-parse.js +23 -0
  110. package/dist/runtime/bash-prefix-parse.js.map +1 -1
  111. package/dist/runtime/command-normalize.d.ts +92 -0
  112. package/dist/runtime/command-normalize.js +1182 -0
  113. package/dist/runtime/command-normalize.js.map +1 -0
  114. package/dist/runtime/git-context.d.ts +50 -0
  115. package/dist/runtime/git-context.js +108 -1
  116. package/dist/runtime/git-context.js.map +1 -1
  117. package/dist/runtime/hermetic-spawn-guard.d.ts +25 -0
  118. package/dist/runtime/hermetic-spawn-guard.js +136 -0
  119. package/dist/runtime/hermetic-spawn-guard.js.map +1 -0
  120. package/dist/runtime/intercept.d.ts +39 -1
  121. package/dist/runtime/intercept.js +33 -4
  122. package/dist/runtime/intercept.js.map +1 -1
  123. package/dist/runtime/ledger-writer.d.ts +27 -0
  124. package/dist/runtime/ledger-writer.js +46 -0
  125. package/dist/runtime/ledger-writer.js.map +1 -0
  126. package/dist/runtime/read-only-bash.d.ts +43 -0
  127. package/dist/runtime/read-only-bash.js +133 -3
  128. package/dist/runtime/read-only-bash.js.map +1 -1
  129. package/dist/schema/index.d.ts +41 -0
  130. package/dist/schema/index.js +5 -0
  131. package/dist/schema/index.js.map +1 -1
  132. package/dist/schema/policies.js +1 -1
  133. package/dist/schema/policies.js.map +1 -1
  134. package/dist/schema/toolchain-parity.d.ts +18 -0
  135. package/dist/schema/toolchain-parity.js +35 -0
  136. package/dist/schema/toolchain-parity.js.map +1 -0
  137. package/package.json +5 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-normalize.js","sourceRoot":"","sources":["../../src/runtime/command-normalize.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,27 @@ export interface GitRepoContext {
17
17
  */
18
18
  sha: string;
19
19
  }
20
+ export interface GitEntry {
21
+ /** Directory that contains the `.git` entry (the work-tree root). */
22
+ worktreeRoot: string;
23
+ /** Resolved git directory — for a `.git` file, its `gitdir:` target. */
24
+ gitDir: string;
25
+ }
26
+ /**
27
+ * Walk up from `startDir` looking for a `.git` entry. Handles both the
28
+ * common `.git` directory and the `.git` *file* form used by linked
29
+ * worktrees and submodules. The walk is bounded so a pathologically
30
+ * deep cwd cannot spin.
31
+ *
32
+ * Exported (task T-001, record-verbs) so `cli/record/index.ts` can
33
+ * locate the same `.git` directory this module resolves `repo`/
34
+ * `branch`/`sha` from, without re-walking the tree with duplicate
35
+ * logic — its base-branch resolution needs the raw git directory (to
36
+ * read `refs/remotes/origin/HEAD` / `packed-refs`), which
37
+ * `resolveGitContext`'s return shape does not expose. Behavior is
38
+ * unchanged; this is a visibility-only change.
39
+ */
40
+ export declare function findGitEntry(startDir: string): GitEntry | null;
20
41
  /**
21
42
  * Resolve `{ repo, branch, sha }` for a working directory. Returns empty
22
43
  * strings (never throws) when `cwd` is not inside a git work tree, or
@@ -24,3 +45,32 @@ export interface GitRepoContext {
24
45
  * fall through to their own behaviour.
25
46
  */
26
47
  export declare function resolveGitContext(cwd: string): GitRepoContext;
48
+ /**
49
+ * Resolve the remote's default branch name from `<gitDir>/refs/remotes/
50
+ * origin/HEAD`. Loose symbolic ref first (the normal shape: `ref: refs/
51
+ * remotes/origin/<name>`, written by `git clone` / `git remote set-head
52
+ * origin -a`). When that loose file is absent, falls back to
53
+ * `packed-refs`: some git versions / tooling pack `refs/remotes/origin/
54
+ * HEAD` as a plain `<sha> <ref>` entry instead of a symref, which loses
55
+ * the branch NAME directly — recovered here by matching that sha
56
+ * against another packed `refs/remotes/origin/<name>` entry that shares
57
+ * it (mirrors the loose-then-packed shape `resolveBranchSha` uses
58
+ * above, adapted since packed-refs has no symref concept). Returns null
59
+ * when neither source resolves a name.
60
+ */
61
+ export declare function resolveOriginHeadBase(gitDir: string): string | null;
62
+ /**
63
+ * Resolve the actual shared git directory for `gitDir`, following the
64
+ * `commondir` file linked worktrees write. `git worktree add` gives each
65
+ * worktree its own private `.git` FILE pointing at `<main>/.git/
66
+ * worktrees/<name>/` (what `findGitEntry` returns as `gitDir`), but
67
+ * `refs/remotes/origin/HEAD` and `packed-refs` are NOT duplicated there
68
+ * — they live only in the shared common dir, reachable via that
69
+ * per-worktree directory's own `commondir` file (a path, normally
70
+ * `../..`, relative to the per-worktree directory itself; see
71
+ * `git-worktree(1)`). Without this indirection, `resolveOriginHeadBase`
72
+ * would look for those refs in the empty per-worktree directory and
73
+ * always miss. Returns `gitDir` unchanged when no `commondir` file
74
+ * exists (the normal, non-worktree case).
75
+ */
76
+ export declare function resolveCommonDir(gitDir: string): string;
@@ -35,8 +35,16 @@ const SHA_RE = /^[0-9a-f]{40}$/;
35
35
  * common `.git` directory and the `.git` *file* form used by linked
36
36
  * worktrees and submodules. The walk is bounded so a pathologically
37
37
  * deep cwd cannot spin.
38
+ *
39
+ * Exported (task T-001, record-verbs) so `cli/record/index.ts` can
40
+ * locate the same `.git` directory this module resolves `repo`/
41
+ * `branch`/`sha` from, without re-walking the tree with duplicate
42
+ * logic — its base-branch resolution needs the raw git directory (to
43
+ * read `refs/remotes/origin/HEAD` / `packed-refs`), which
44
+ * `resolveGitContext`'s return shape does not expose. Behavior is
45
+ * unchanged; this is a visibility-only change.
38
46
  */
39
- function findGitEntry(startDir) {
47
+ export function findGitEntry(startDir) {
40
48
  let dir = path.resolve(startDir);
41
49
  for (let depth = 0; depth < 128; depth++) {
42
50
  const dotGit = path.join(dir, ".git");
@@ -143,4 +151,103 @@ export function resolveGitContext(cwd) {
143
151
  }
144
152
  return { repo, branch, sha };
145
153
  }
154
+ // ---------------------------------------------------------------------------
155
+ // Default-branch resolution (offline, no `gh`/`git` subprocess).
156
+ //
157
+ // Originally written for `harness record review`'s `--base` fallback
158
+ // (task T-001, record-verbs) and lived only in `cli/record/index.ts`.
159
+ // Exported here (task post-merge-gate, T-001) so
160
+ // `policy-packs/builtin/post-merge-gate-runtime.ts` can resolve the same
161
+ // "what's the default branch to switch back to" answer for its deny
162
+ // message without a policy-pack module reaching into `cli/`. Behavior is
163
+ // unchanged; this is a visibility/location move, not a rewrite — see
164
+ // `findGitEntry`'s doc comment above for the identical precedent
165
+ // (record/index.ts reusing this module's git-dir walk instead of
166
+ // duplicating it).
167
+ // ---------------------------------------------------------------------------
168
+ // `.git/refs/remotes/origin/HEAD` on a normal clone: a symbolic ref
169
+ // pointing at the remote's default branch.
170
+ const ORIGIN_HEAD_REF_RE = /^ref:\s*refs\/remotes\/origin\/(.+)$/;
171
+ const ORIGIN_HEAD_REF_PATH = "refs/remotes/origin/HEAD";
172
+ const ORIGIN_REMOTE_PREFIX = "refs/remotes/origin/";
173
+ /**
174
+ * Resolve the remote's default branch name from `<gitDir>/refs/remotes/
175
+ * origin/HEAD`. Loose symbolic ref first (the normal shape: `ref: refs/
176
+ * remotes/origin/<name>`, written by `git clone` / `git remote set-head
177
+ * origin -a`). When that loose file is absent, falls back to
178
+ * `packed-refs`: some git versions / tooling pack `refs/remotes/origin/
179
+ * HEAD` as a plain `<sha> <ref>` entry instead of a symref, which loses
180
+ * the branch NAME directly — recovered here by matching that sha
181
+ * against another packed `refs/remotes/origin/<name>` entry that shares
182
+ * it (mirrors the loose-then-packed shape `resolveBranchSha` uses
183
+ * above, adapted since packed-refs has no symref concept). Returns null
184
+ * when neither source resolves a name.
185
+ */
186
+ export function resolveOriginHeadBase(gitDir) {
187
+ try {
188
+ const raw = fs
189
+ .readFileSync(path.join(gitDir, "refs", "remotes", "origin", "HEAD"), "utf8")
190
+ .trim();
191
+ const match = ORIGIN_HEAD_REF_RE.exec(raw);
192
+ if (match)
193
+ return match[1].trim();
194
+ }
195
+ catch {
196
+ /* loose symref missing — try packed-refs */
197
+ }
198
+ try {
199
+ const packed = fs.readFileSync(path.join(gitDir, "packed-refs"), "utf8");
200
+ let headSha = null;
201
+ const entries = [];
202
+ for (const rawLine of packed.split("\n")) {
203
+ const line = rawLine.trim();
204
+ if (line === "" || line.startsWith("#") || line.startsWith("^"))
205
+ continue;
206
+ const parts = line.split(/\s+/);
207
+ const sha = parts[0];
208
+ const ref = parts[1];
209
+ if (!sha || !ref || !SHA_RE.test(sha))
210
+ continue;
211
+ if (ref === ORIGIN_HEAD_REF_PATH)
212
+ headSha = sha;
213
+ else
214
+ entries.push({ sha, ref });
215
+ }
216
+ if (headSha) {
217
+ const match = entries.find((e) => e.sha === headSha && e.ref.startsWith(ORIGIN_REMOTE_PREFIX));
218
+ if (match)
219
+ return match.ref.slice(ORIGIN_REMOTE_PREFIX.length);
220
+ }
221
+ }
222
+ catch {
223
+ /* packed-refs missing too — caller treats null as "unresolvable" */
224
+ }
225
+ return null;
226
+ }
227
+ /**
228
+ * Resolve the actual shared git directory for `gitDir`, following the
229
+ * `commondir` file linked worktrees write. `git worktree add` gives each
230
+ * worktree its own private `.git` FILE pointing at `<main>/.git/
231
+ * worktrees/<name>/` (what `findGitEntry` returns as `gitDir`), but
232
+ * `refs/remotes/origin/HEAD` and `packed-refs` are NOT duplicated there
233
+ * — they live only in the shared common dir, reachable via that
234
+ * per-worktree directory's own `commondir` file (a path, normally
235
+ * `../..`, relative to the per-worktree directory itself; see
236
+ * `git-worktree(1)`). Without this indirection, `resolveOriginHeadBase`
237
+ * would look for those refs in the empty per-worktree directory and
238
+ * always miss. Returns `gitDir` unchanged when no `commondir` file
239
+ * exists (the normal, non-worktree case).
240
+ */
241
+ export function resolveCommonDir(gitDir) {
242
+ try {
243
+ const raw = fs.readFileSync(path.join(gitDir, "commondir"), "utf8").trim();
244
+ if (raw.length > 0) {
245
+ return path.isAbsolute(raw) ? raw : path.resolve(gitDir, raw);
246
+ }
247
+ }
248
+ catch {
249
+ /* no commondir file — gitDir already IS the common dir */
250
+ }
251
+ return gitDir;
252
+ }
146
253
  //# sourceMappingURL=git-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-context.js","sourceRoot":"","sources":["../../src/runtime/git-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-context.js","sourceRoot":"","sources":["../../src/runtime/git-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Thrown by {@link assertNoRealSpawnInTests} when a real-spawn code path
3
+ * runs under vitest without a test-injected fake. Callers whose
4
+ * surrounding try/catch degrades ordinary runner failures to a warning
5
+ * MUST re-throw instances of this class past that catch — never let it
6
+ * be treated as an ordinary (optional, warn-and-continue) failure.
7
+ */
8
+ export declare class HermeticSpawnViolationError extends Error {
9
+ constructor(binaryLabel: string, hint: string);
10
+ }
11
+ /**
12
+ * Guard for a "real spawn" implementation: throws
13
+ * {@link HermeticSpawnViolationError} when called under vitest, so an
14
+ * accidental real spawn in a test fails hard instead of silently
15
+ * running. No-op outside of vitest (production behavior is unchanged),
16
+ * and no-op when `HARNESS_ALLOW_REAL_SPAWN=1` is set (see module doc) —
17
+ * the first such no-op under vitest prints a one-time stderr warning so
18
+ * the disabled guard is visible rather than silent.
19
+ *
20
+ * @param binaryLabel human-readable name of what would be spawned (e.g.
21
+ * `"npx orchestrator-workflow init"`), used in the error message.
22
+ * @param hint one line telling the test author what to do instead (e.g.
23
+ * "inject a fake `owInitSpawn` runner").
24
+ */
25
+ export declare function assertNoRealSpawnInTests(binaryLabel: string, hint: string): void;
@@ -0,0 +1,136 @@
1
+ // Hermetic-spawn guard (task 54739002). Small, reusable primitive for
2
+ // "real spawn" implementations that back a test-injectable runner (e.g.
3
+ // `owInitSpawn` in src/cli/init/interactive.ts, and the sibling
4
+ // `realClaudeMcpExec` guard planned in task 0d80e969 for
5
+ // src/io/claude-mcp.ts).
6
+ //
7
+ // Incident this guards against: PR #359 found a confirm-queue in
8
+ // tests/cli/init-interactive.test.ts that fell through the trailing
9
+ // orchestrator-workflow co-install prompt (no queued answer + no
10
+ // injected `owInitSpawn`), which let a test silently run a REAL `npx
11
+ // orchestrator-workflow init` against the checkout. The bug itself is
12
+ // already fixed (the mock confirm queue now auto-declines on an
13
+ // exhausted queue); this guard is defense-in-depth so any FUTURE gap of
14
+ // the same shape (a new call site, a reordered prompt, a queue typo)
15
+ // fails the test loudly instead of quietly spawning a real process. A
16
+ // follow-up review (same task) found the same "injectable runner + real
17
+ // default" shape unguarded at three more call sites; a sixth
18
+ // (`realNpmExec` in src/cli/doctor/npm-bin-path.ts) was guarded later,
19
+ // under task 325ace29. As of that task, the guarded `real*Spawn`/
20
+ // `real*Exec` functions are:
21
+ // - `realClaudeMcpExec` (src/io/claude-mcp.ts)
22
+ // - `realSpawn` (src/cli/init/dependencies.ts)
23
+ // - `realProbeSpawn` (src/cli/init/agent-tasks-auth.ts)
24
+ // - `realLoginSpawn` (src/cli/init/agent-tasks-auth.ts)
25
+ // - `realOwInitSpawn` (src/cli/init/interactive.ts)
26
+ // - `realNpmExec` (src/cli/doctor/npm-bin-path.ts)
27
+ // Two more were added under the toolchain-parity task (PATH-Shim-Vorfall
28
+ // 2026-07-22 follow-up), both in src/cli/session-start/toolchain-parity.ts:
29
+ // - `realNodeVersionSpawn` (spawns `node --version` via PATH — the
30
+ // whole point is capturing the shell's PATH-resolved node, not
31
+ // `process.version`, so this one is especially load-bearing to keep
32
+ // hermetic)
33
+ // - `realNpmGlobalsSpawn` (spawns `npm ls -g --depth=0 --json`)
34
+ // Naming them here (instead of just a count) is deliberate (review
35
+ // finding F5, task T-007): a bare count silently drifts every time a new
36
+ // call site is added and nobody remembers to bump it. See the guard call
37
+ // site listed at each function above (each links back to this doc) for
38
+ // the up-to-date detail on that specific call chain.
39
+ //
40
+ // Env signal: `process.env.VITEST`, checked for a truthy, non-"false"/
41
+ // "0" value (vitest itself only ever sets it to the string "true", but
42
+ // we don't want an errant `VITEST=false` or `VITEST=0` in some outer
43
+ // environment to misfire the guard). Vitest sets this on every worker
44
+ // it runs (documented at https://vitest.dev/config/ under the `env`/
45
+ // `VITEST_*` variables it exposes to test code) and nothing else in
46
+ // this repo's runtime or CI sets it deliberately. That makes it safe to
47
+ // gate on for THIS repo's own `harness init`/`harness doctor` runs: a
48
+ // real, standalone invocation will never have VITEST set.
49
+ //
50
+ // Caveat (precision, not a promise): `process.env` is inherited by
51
+ // child processes, so this guard only detects "a vitest process is
52
+ // somewhere in the current process's inheritance chain" — e.g. if some
53
+ // OTHER project's vitest run were to shell out to `harness init` as a
54
+ // subprocess, that subprocess would inherit VITEST=true and this guard
55
+ // would (correctly, for ITS OWN purpose) fire there too. That is a
56
+ // deliberately conservative false-positive, not a gap: it never
57
+ // misfires in the other direction (a real, non-test-nested `harness
58
+ // init` run never sees VITEST set), which is the property that matters
59
+ // — the guard must never break a genuine production run.
60
+ //
61
+ // Deliberately NOT `NODE_ENV === "test"`: that var is set broadly by
62
+ // other tooling (bundlers, some CI steps) for reasons unrelated to "am I
63
+ // inside vitest right now", so it would risk misfiring outside of tests
64
+ // and breaking real `harness init` runs — the one thing this guard must
65
+ // never do.
66
+ //
67
+ // Escape hatch: `HARNESS_ALLOW_REAL_SPAWN=1` disables the guard even
68
+ // under vitest. This exists for a test that deliberately wants to
69
+ // exercise the REAL spawn path end-to-end (e.g. a manual, opt-in
70
+ // integration check) — it must not be set in normal test runs, CI, or
71
+ // production, and no test in this repo sets it today. Because this is a
72
+ // SILENT global kill-switch for every guarded call site listed above,
73
+ // activating it under vitest prints a one-time stderr warning (module-local flag,
74
+ // not per-call) so an accidentally-set env var is visible in test output
75
+ // instead of quietly disabling every tripwire in this file.
76
+ //
77
+ // Call this at the very top of a "real spawn" function (the one a
78
+ // caller falls back to via `opts.someSpawn ?? realSomeSpawn`), BEFORE
79
+ // touching `child_process`. It throws instead of returning so a caller
80
+ // whose surrounding try/catch degrades ordinary spawn failures to a
81
+ // warning (e.g. "OW is optional, warn and continue") does not
82
+ // accidentally swallow a hermetic violation too — callers must
83
+ // re-throw `HermeticSpawnViolationError` past any such catch (see
84
+ // offerOrchestratorWorkflow in src/cli/init/interactive.ts for the
85
+ // pattern).
86
+ /**
87
+ * Thrown by {@link assertNoRealSpawnInTests} when a real-spawn code path
88
+ * runs under vitest without a test-injected fake. Callers whose
89
+ * surrounding try/catch degrades ordinary runner failures to a warning
90
+ * MUST re-throw instances of this class past that catch — never let it
91
+ * be treated as an ordinary (optional, warn-and-continue) failure.
92
+ */
93
+ export class HermeticSpawnViolationError extends Error {
94
+ constructor(binaryLabel, hint) {
95
+ super(`Refusing to spawn a REAL "${binaryLabel}" process while running under vitest ` +
96
+ `(process.env.VITEST is set). ${hint}`);
97
+ this.name = "HermeticSpawnViolationError";
98
+ }
99
+ }
100
+ /** True when `process.env.VITEST` is set to a truthy, non-"false"/"0" value. */
101
+ function vitestEnvIsActive() {
102
+ const v = process.env.VITEST;
103
+ return !!v && v !== "false" && v !== "0";
104
+ }
105
+ // Module-local, one-shot: printed at most once per process, the first
106
+ // time the escape hatch is observed active under vitest. Not reset
107
+ // between calls — "one-time" means one time for the life of the
108
+ // process, not once per call site.
109
+ let printedAllowRealSpawnWarning = false;
110
+ /**
111
+ * Guard for a "real spawn" implementation: throws
112
+ * {@link HermeticSpawnViolationError} when called under vitest, so an
113
+ * accidental real spawn in a test fails hard instead of silently
114
+ * running. No-op outside of vitest (production behavior is unchanged),
115
+ * and no-op when `HARNESS_ALLOW_REAL_SPAWN=1` is set (see module doc) —
116
+ * the first such no-op under vitest prints a one-time stderr warning so
117
+ * the disabled guard is visible rather than silent.
118
+ *
119
+ * @param binaryLabel human-readable name of what would be spawned (e.g.
120
+ * `"npx orchestrator-workflow init"`), used in the error message.
121
+ * @param hint one line telling the test author what to do instead (e.g.
122
+ * "inject a fake `owInitSpawn` runner").
123
+ */
124
+ export function assertNoRealSpawnInTests(binaryLabel, hint) {
125
+ if (process.env.HARNESS_ALLOW_REAL_SPAWN === "1") {
126
+ if (vitestEnvIsActive() && !printedAllowRealSpawnWarning) {
127
+ printedAllowRealSpawnWarning = true;
128
+ process.stderr.write("⚠ hermetic spawn guard DISABLED via HARNESS_ALLOW_REAL_SPAWN=1 — real spawns are allowed under vitest.\n");
129
+ }
130
+ return;
131
+ }
132
+ if (vitestEnvIsActive()) {
133
+ throw new HermeticSpawnViolationError(binaryLabel, hint);
134
+ }
135
+ }
136
+ //# sourceMappingURL=hermetic-spawn-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hermetic-spawn-guard.js","sourceRoot":"","sources":["../../src/runtime/hermetic-spawn-guard.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,wEAAwE;AACxE,gEAAgE;AAChE,yDAAyD;AACzD,yBAAyB;AACzB,EAAE;AACF,iEAAiE;AACjE,oEAAoE;AACpE,iEAAiE;AACjE,qEAAqE;AACrE,sEAAsE;AACtE,gEAAgE;AAChE,wEAAwE;AACxE,qEAAqE;AACrE,sEAAsE;AACtE,wEAAwE;AACxE,6DAA6D;AAC7D,uEAAuE;AACvE,kEAAkE;AAClE,6BAA6B;AAC7B,iDAAiD;AACjD,iDAAiD;AACjD,0DAA0D;AAC1D,0DAA0D;AAC1D,sDAAsD;AACtD,qDAAqD;AACrD,yEAAyE;AACzE,4EAA4E;AAC5E,qEAAqE;AACrE,mEAAmE;AACnE,wEAAwE;AACxE,gBAAgB;AAChB,kEAAkE;AAClE,mEAAmE;AACnE,yEAAyE;AACzE,yEAAyE;AACzE,uEAAuE;AACvE,qDAAqD;AACrD,EAAE;AACF,uEAAuE;AACvE,uEAAuE;AACvE,qEAAqE;AACrE,sEAAsE;AACtE,qEAAqE;AACrE,oEAAoE;AACpE,wEAAwE;AACxE,sEAAsE;AACtE,0DAA0D;AAC1D,EAAE;AACF,mEAAmE;AACnE,mEAAmE;AACnE,uEAAuE;AACvE,sEAAsE;AACtE,uEAAuE;AACvE,mEAAmE;AACnE,gEAAgE;AAChE,oEAAoE;AACpE,uEAAuE;AACvE,yDAAyD;AACzD,EAAE;AACF,qEAAqE;AACrE,yEAAyE;AACzE,wEAAwE;AACxE,wEAAwE;AACxE,YAAY;AACZ,EAAE;AACF,qEAAqE;AACrE,kEAAkE;AAClE,iEAAiE;AACjE,sEAAsE;AACtE,wEAAwE;AACxE,sEAAsE;AACtE,kFAAkF;AAClF,yEAAyE;AACzE,4DAA4D;AAC5D,EAAE;AACF,kEAAkE;AAClE,sEAAsE;AACtE,uEAAuE;AACvE,oEAAoE;AACpE,8DAA8D;AAC9D,+DAA+D;AAC/D,kEAAkE;AAClE,mEAAmE;AACnE,YAAY;AAEZ;;;;;;GAMG;AACH,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IACpD,YAAY,WAAmB,EAAE,IAAY;QAC3C,KAAK,CACH,6BAA6B,WAAW,uCAAuC;YAC7E,gCAAgC,IAAI,EAAE,CACzC,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC5C,CAAC;CACF;AAED,gFAAgF;AAChF,SAAS,iBAAiB;IACxB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;IAC7B,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC;AAC3C,CAAC;AAED,sEAAsE;AACtE,mEAAmE;AACnE,gEAAgE;AAChE,mCAAmC;AACnC,IAAI,4BAA4B,GAAG,KAAK,CAAC;AAEzC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,wBAAwB,CAAC,WAAmB,EAAE,IAAY;IACxE,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,EAAE,CAAC;QACjD,IAAI,iBAAiB,EAAE,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACzD,4BAA4B,GAAG,IAAI,CAAC;YACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0GAA0G,CAC3G,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IACD,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACxB,MAAM,IAAI,2BAA2B,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { type ExtractBuiltins, type LedgerQueryResult } from "../policies/index.js";
2
2
  import type { Manifest, Policy } from "../schema/index.js";
3
+ import { type NormalizedCommand } from "./command-normalize.js";
3
4
  import { type EnvironmentResolution } from "./environment-resolver.js";
4
5
  import type { GitRepoContext } from "./git-context.js";
5
6
  import { type RiskProfile } from "./risk-classifier.js";
@@ -130,6 +131,31 @@ export interface InterceptOptions {
130
131
  * policy never reads any of this regardless (see `intercept`).
131
132
  */
132
133
  riskContext?: RiskGateContext;
134
+ /**
135
+ * Precomputed `NormalizedCommand` for a Bash event's
136
+ * `tool_input.command`. `runInterceptCli` already calls
137
+ * `normalizeCommand` once (for `bash_match` trigger normalisation);
138
+ * threading the SAME result in here lets `policyMatchesEvent` reuse it
139
+ * for every policy in the `matching` loop below instead of recomputing
140
+ * it — same resolved-by-the-wrapper pattern as `currentHeadSha`,
141
+ * `builtins`, and `riskContext`. Optional: omitted by non-Bash events
142
+ * and by callers/tests that don't supply one, in which case
143
+ * `policyMatchesEvent` computes it lazily per policy (correct, just
144
+ * not de-duplicated).
145
+ *
146
+ * INVARIANT: this is NOT checked against `event` at runtime — nothing
147
+ * verifies the `NormalizedCommand`
148
+ * passed in was actually derived from THIS event's own
149
+ * `tool_input.command`. Safe today because there is exactly one
150
+ * production caller (`runInterceptCli`, `src/cli/policy/intercept.ts`),
151
+ * which computes it from the SAME `event` it then passes to
152
+ * `intercept()`. A future second caller that threads a mismatched
153
+ * `NormalizedCommand` (e.g. reused across two different events) would
154
+ * silently apply the wrong command's `bash_match` normalisation with
155
+ * no error — keep this pairing manual-but-obvious at every call site
156
+ * rather than assuming it self-enforces.
157
+ */
158
+ normalizedCommand?: NormalizedCommand;
133
159
  /**
134
160
  * Destination for audit-write failure diagnostics. Defaults to
135
161
  * `process.stderr` when omitted. Goes to stderr so Claude Code's
@@ -167,6 +193,18 @@ export interface RiskGateContext {
167
193
  * evaluated separately (`evaluateWhen`). A policy fires only when both
168
194
  * hold. Exported so `harness explain-policy` can report the trigger
169
195
  * verdict on its own.
196
+ *
197
+ * `precomputedNormalizedCommand` is an optional caller-supplied
198
+ * `NormalizedCommand` for the event's command: `intercept()` below
199
+ * resolves ONE `NormalizedCommand` per event (via
200
+ * `options.normalizedCommand`, itself computed once by
201
+ * `runInterceptCli`) and threads it into every `policyMatchesEvent`
202
+ * call in its `matching` loop, so a raw-miss event normalises the
203
+ * command exactly ONCE across the whole manifest instead of once per
204
+ * policy. Omitted by standalone callers (`harness explain-policy`, most
205
+ * tests), which fall back to computing it lazily right here — correct
206
+ * either way, since `normalizeCommand` is a pure function of the
207
+ * command string alone.
170
208
  */
171
- export declare function policyMatchesEvent(policy: Policy, event: ToolEvent): boolean;
209
+ export declare function policyMatchesEvent(policy: Policy, event: ToolEvent, precomputedNormalizedCommand?: NormalizedCommand): boolean;
172
210
  export declare function intercept(options: InterceptOptions): Promise<InterceptResult>;
@@ -9,6 +9,7 @@ import { evaluateExtract, evaluateRequires, parseDurationSeconds, substituteTemp
9
9
  import { renderProducers } from "../policies/producers.js";
10
10
  import { buildActionEnvelope } from "./action-envelope.js";
11
11
  import { renderAgentFacing } from "./agent-facing.js";
12
+ import { normalizeCommand } from "./command-normalize.js";
12
13
  import { resolveEnvironment, } from "./environment-resolver.js";
13
14
  import { POLICY_DECISION_TYPE } from "./ledger-record.js";
14
15
  import { classifyRisk } from "./risk-classifier.js";
@@ -44,8 +45,20 @@ function enrichEnvelope(manifest, event, riskContext, now) {
44
45
  * evaluated separately (`evaluateWhen`). A policy fires only when both
45
46
  * hold. Exported so `harness explain-policy` can report the trigger
46
47
  * verdict on its own.
48
+ *
49
+ * `precomputedNormalizedCommand` is an optional caller-supplied
50
+ * `NormalizedCommand` for the event's command: `intercept()` below
51
+ * resolves ONE `NormalizedCommand` per event (via
52
+ * `options.normalizedCommand`, itself computed once by
53
+ * `runInterceptCli`) and threads it into every `policyMatchesEvent`
54
+ * call in its `matching` loop, so a raw-miss event normalises the
55
+ * command exactly ONCE across the whole manifest instead of once per
56
+ * policy. Omitted by standalone callers (`harness explain-policy`, most
57
+ * tests), which fall back to computing it lazily right here — correct
58
+ * either way, since `normalizeCommand` is a pure function of the
59
+ * command string alone.
47
60
  */
48
- export function policyMatchesEvent(policy, event) {
61
+ export function policyMatchesEvent(policy, event, precomputedNormalizedCommand) {
49
62
  if (policy.trigger.event !== event.hook_event_name)
50
63
  return false;
51
64
  if (policy.trigger.match !== undefined) {
@@ -67,8 +80,24 @@ export function policyMatchesEvent(policy, event) {
67
80
  catch {
68
81
  return false;
69
82
  }
70
- if (!re.test(command))
71
- return false;
83
+ // Raw-OR-normalised (D-003, run 2026-07-27-gate-target-repo-
84
+ // resolution): test the RAW command first — cheap, and byte-
85
+ // identical to the pre-fix behaviour — then, only if that fails,
86
+ // fall back to the NORMALISED command (wrapper prefixes peeled, git
87
+ // global options dropped, whitespace collapsed). Strictly additive:
88
+ // a command that matched today keeps matching via the raw test
89
+ // alone; normalisation can only ADD a match a spelling would
90
+ // otherwise have missed (env/nice/command wrappers, extra git
91
+ // global options, doubled whitespace), never remove the raw one.
92
+ // Replacing the matcher input instead of OR-ing it risks silently
93
+ // REMOVING an existing match if normalisation ever mangles some
94
+ // shape — the fail-open direction for a gate — so this stays
95
+ // additive rather than a substitution.
96
+ if (!re.test(command)) {
97
+ const { normalized } = precomputedNormalizedCommand ?? normalizeCommand(command);
98
+ if (!re.test(normalized))
99
+ return false;
100
+ }
72
101
  }
73
102
  return true;
74
103
  }
@@ -322,7 +351,7 @@ export async function intercept(options) {
322
351
  const whenFallbackMap = new Map();
323
352
  const matching = [];
324
353
  for (const p of manifest.policies) {
325
- if (!policyMatchesEvent(p, event))
354
+ if (!policyMatchesEvent(p, event, options.normalizedCommand))
326
355
  continue;
327
356
  if (p.when === undefined) {
328
357
  matching.push(p);
@@ -1 +1 @@
1
- {"version":3,"file":"intercept.js","sourceRoot":"","sources":["../../src/runtime/intercept.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intercept.js","sourceRoot":"","sources":["../../src/runtime/intercept.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,EAAE;AACF,6EAA6E;AAC7E,4EAA4E;AAC5E,wEAAwE;AACxE,2EAA2E;AAC3E,mBAAmB;AAEnB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,GAOnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAA0B,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAoB,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA2N9C;;;;;GAKG;AACH,SAAS,cAAc,CACrB,QAAkB,EAClB,KAAgB,EAChB,WAAwC,EACxC,GAAqB;IAErB,MAAM,EAAE,GAAG,WAAW,CAAC;IACvB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,EAAE;QAC1C,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QACjD,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE;QACpB,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE;QACpB,GAAG,EAAE,GAAG,IAAI,IAAI,IAAI,EAAE;KACvB,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,kBAAkB,CACpC,QAAQ,EACR,QAAQ,CAAC,YAAY,CAAC,SAAS,EAC/B;QACE,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE;QAClB,WAAW,EAAE,EAAE,EAAE,WAAW,IAAI,EAAE;QAClC,aAAa,EAAE,EAAE,EAAE,aAAa,IAAI,EAAE;KACvC,CACF,CAAC;IACF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,KAAgB,EAChB,4BAAgD;IAEhD,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,eAAe;QAAE,OAAO,KAAK,CAAC;IACjE,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACvC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACtD,MAAM,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACzD,IACE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAM,CAAC,CAAC,EACvE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACnC,IAAI,EAAU,CAAC;QACf,IAAI,CAAC;YACH,EAAE,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;QACD,6DAA6D;QAC7D,6DAA6D;QAC7D,iEAAiE;QACjE,oEAAoE;QACpE,oEAAoE;QACpE,+DAA+D;QAC/D,6DAA6D;QAC7D,8DAA8D;QAC9D,iEAAiE;QACjE,kEAAkE;QAClE,gEAAgE;QAChE,6DAA6D;QAC7D,uCAAuC;QACvC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACtB,MAAM,EAAE,UAAU,EAAE,GAAG,4BAA4B,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACjF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;gBAAE,OAAO,KAAK,CAAC;QACzC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAgB;IACzC,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK;QAC5D,KAAK;QACL,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE,EAAE;QACvC,GAAG,EAAE,EAAE;KACR,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,SAAS,wBAAwB,CAC/B,WAAkC;IAElC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,OAAO;YACV,OAAO,MAAM,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,kBAAkB;YACrB,OAAO,kBAAkB,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,kBAAkB,CAAC,CAAiB;IAC3C,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC;IAC3D,OAAO,CAAC,CAAC,OAAO,KAAK,kBAAkB,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,aAAa,GAAG,kDAAkD,CAAC;AAEzE,KAAK,UAAU,iBAAiB,CAC9B,MAAc,EACd,OAAyB;IAEzB,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9D,MAAM,GAAG,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAC5B,GAAG,EACH,OAAO,CAAC,QAAQ,CACjB,CAAC;IAEF,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,uEAAuE;IACvE,wEAAwE;IACxE,qEAAqE;IACrE,wEAAwE;IACxE,uEAAuE;IACvE,oEAAoE;IACpE,sCAAsC;IACtC,IAAI,MAAM,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAClC,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,EAAE,MAAM;YACf,MAAM,EACJ,qGAAqG;YACvG,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,SAAS,EAAE,aAAa;YACxB,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,gEAAgE;QAChE,oEAAoE;QACpE,sDAAsD;QACtD,qEAAqE;QACrE,EAAE;QACF,oEAAoE;QACpE,oEAAoE;QACpE,8DAA8D;QAC9D,oEAAoE;QACpE,oEAAoE;QACpE,qEAAqE;QACrE,oEAAoE;QACpE,iEAAiE;QACjE,qEAAqE;QACrE,oEAAoE;QACpE,2DAA2D;QAC3D,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,EAAE,eAAe;YACxB,MAAM,EACJ,uFAAuF;YACzF,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,SAAS,EAAE,aAAa;YACxB,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS;SACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;SACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IAC7B,MAAM,UAAU,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;IAExD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,kCAAkC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjE,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,WAA8B,CAAC;IACnC,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CACtC,SAAS,EACT,SAAS,EACT,OAAO,CAAC,eAAe,CACxB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,GAAG;YACZ,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,uBAAwB,GAAa,CAAC,OAAO,EAAE;SACxD,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACpC,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,sDAAsD;IACtD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,mBAAmB,QAAQ,CAAC,MAAM,EAAE;gBAC5C,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,SAAS;gBACT,WAAW;aACZ,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAA4B;QACxC,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;QACxC,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;YACtC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI;YACnC,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC,CAAC;KACL,CAAC;IACF,MAAM,QAAQ,GAAG,kBAAkB,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACpE,IAAI,UAA8B,CAAC;IACnC,IAAI,CAAC;QACH,UAAU,GAAG,gBAAgB,CAC3B,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,EACtC,QAAQ,EACR,QAAQ,CACT,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,wBAAyB,GAAa,CAAC,OAAO,EAAE;YACxD,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,iEAAiE;IACjE,0DAA0D;IAC1D,oEAAoE;IACpE,mCAAmC;IACnC,MAAM,OAAO,GAAkB,UAAU,CAAC,OAAO;QAC/C,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACjD,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO;QACP,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,aAAa,EAAE,OAAO,CAAC,MAAM;QAC7B,SAAS;QACT,YAAY,EAAE;YACZ,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B;QACD,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAsB,EACtB,GAAW;IAEX,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,yEAAyE;IACzE,EAAE;IACF,gEAAgE;IAChE,mEAAmE;IACnE,iEAAiE;IACjE,4DAA4D;IAC5D,6DAA6D;IAC7D,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,oBAAoB;QAC/B,+DAA+D;QAC/D,+DAA+D;QAC/D,iEAAiE;QACjE,8DAA8D;QAC9D,oDAAoD;QACpD,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,oBAAoB,GAAG,CAAC;QACjD,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;YACtB,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CACxD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,OAAyB;IAEzB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAEpC,mEAAmE;IACnE,uEAAuE;IACvE,6DAA6D;IAC7D,0EAA0E;IAC1E,uEAAuE;IACvE,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAiC,cAAc;QAC3D,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC;QACnE,CAAC,CAAC,SAAS,CAAC;IAEd,sEAAsE;IACtE,8DAA8D;IAC9D,EAAE;IACF,4DAA4D;IAC5D,sEAAsE;IACtE,kEAAkE;IAClE,qEAAqE;IACrE,iEAAiE;IACjE,kEAAkE;IAClE,EAAE;IACF,oEAAoE;IACpE,qEAAqE;IACrE,wEAAwE;IACxE,qEAAqE;IACrE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAmB,CAAC;IACnD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAClC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC;YAAE,SAAS;QACvE,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,SAAS;QACX,CAAC;QACD,0EAA0E;QAC1E,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,QAAS,CAAC,CAAC;QACjD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;YAC3D,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAqB,EAAE,CAAC;IACvC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtD,+DAA+D;QAC/D,gEAAgE;QAChE,0DAA0D;QAC1D,kEAAkE;QAClE,8DAA8D;QAC9D,0DAA0D;QAC1D,MAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAmB,QAAQ;YACvC,CAAC,CAAC;gBACE,GAAG,IAAI;gBACP,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,GAAG,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrE;YACH,CAAC,CAAC,IAAI,CAAC;QACT,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CACzB,QAAQ,EACR,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CACnC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,qEAAqE;YACrE,mEAAmE;YACnE,qEAAqE;YACrE,+DAA+D;YAC/D,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CACtC,qDAAqD,QAAQ,CAAC,UAAU,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAClI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,sEAAsE;IACtE,4CAA4C;IAC5C,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACpD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7D,mEAAmE;QACnE,qEAAqE;QACrE,kEAAkE;QAClE,6DAA6D;QAC7D,iEAAiE;QACjE,iEAAiE;QACjE,gEAAgE;QAChE,EAAE;QACF,iEAAiE;QACjE,+DAA+D;QAC/D,8DAA8D;QAC9D,qEAAqE;QACrE,sEAAsE;QACtE,oEAAoE;QACpE,oEAAoE;QACpE,mEAAmE;QACnE,oDAAoD;QACpD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU;YACpC,CAAC,CAAC,gBAAgB,QAAQ,CAAC,UAAU,uCAAuC,SAAS,qCAAqC;YAC1H,CAAC,CAAC,EAAE,CAAC;QACP,kEAAkE;QAClE,mEAAmE;QACnE,kEAAkE;QAClE,+DAA+D;QAC/D,iEAAiE;QACjE,kEAAkE;QAClE,8DAA8D;QAC9D,0DAA0D;QAC1D,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC5E,2DAA2D;QAC3D,6DAA6D;QAC7D,+DAA+D;QAC/D,4DAA4D;QAC5D,8DAA8D;QAC9D,4DAA4D;QAC5D,kEAAkE;QAClE,oDAAoD;QACpD,IAAI,UAAkB,CAAC;QACvB,IAAI,cAAc,EAAE,EAAE,EAAE,CAAC;YACvB,yDAAyD;YACzD,mEAAmE;YACnE,sEAAsE;YACtE,qEAAqE;YACrE,0CAA0C;YAC1C,UAAU,GAAG,iBAAiB,CAAC,cAAc,CAAC,EAAE,EAAE;gBAChD,GAAG,QAAQ,CAAC,aAAa;gBACzB,UAAU,EAAE,SAAS;aACtB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,cAAc,GAAG,eAAe,CACpC,cAAc,EAAE,SAAS,EACzB,QAAQ,CAAC,aAAa,CACvB,CAAC;YACF,0DAA0D;YAC1D,kEAAkE;YAClE,mEAAmE;YACnE,oEAAoE;YACpE,kEAAkE;YAClE,kEAAkE;YAClE,sDAAsD;YACtD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,wBAAwB;gBAC1D,CAAC,CAAC,kFAAkF;gBACpF,CAAC,CAAC,EAAE,CAAC;YACP,UAAU,GAAG,GAAG,QAAQ,CAAC,UAAU,KAAK,QAAQ,CAAC,MAAM,IAAI,kBAAkB,GAAG,UAAU,GAAG,cAAc,EAAE,CAAC;QAChH,CAAC;QACD,MAAM,KAAK,GAAmB;YAC5B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,UAAU;SACnB,CAAC;QACF,qEAAqE;QACrE,qEAAqE;QACrE,oEAAoE;QACpE,yCAAyC;QACzC,IAAI,OAAO,CAAC,KAAK,CAAC,eAAe,KAAK,YAAY,EAAE,CAAC;YACnD,KAAK,CAAC,kBAAkB,GAAG;gBACzB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAM;gBAC1B,+DAA+D;gBAC/D,8DAA8D;gBAC9D,wBAAwB,EAAE,UAAU;aACrC,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACzC,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC"}