@ironbee-ai/cli 0.16.0 → 0.17.1

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 (84) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/clients/base.d.ts +17 -4
  3. package/dist/clients/base.d.ts.map +1 -1
  4. package/dist/clients/claude/hooks/clear-verdict.d.ts.map +1 -1
  5. package/dist/clients/claude/hooks/clear-verdict.js +6 -1
  6. package/dist/clients/claude/hooks/clear-verdict.js.map +1 -1
  7. package/dist/clients/claude/hooks/require-verdict.d.ts +8 -1
  8. package/dist/clients/claude/hooks/require-verdict.d.ts.map +1 -1
  9. package/dist/clients/claude/hooks/require-verdict.js +9 -2
  10. package/dist/clients/claude/hooks/require-verdict.js.map +1 -1
  11. package/dist/clients/claude/hooks/require-verification.d.ts +10 -1
  12. package/dist/clients/claude/hooks/require-verification.d.ts.map +1 -1
  13. package/dist/clients/claude/hooks/require-verification.js +34 -6
  14. package/dist/clients/claude/hooks/require-verification.js.map +1 -1
  15. package/dist/clients/claude/index.d.ts +6 -2
  16. package/dist/clients/claude/index.d.ts.map +1 -1
  17. package/dist/clients/claude/index.js +65 -32
  18. package/dist/clients/claude/index.js.map +1 -1
  19. package/dist/clients/codex/hooks/clear-verdict.d.ts.map +1 -1
  20. package/dist/clients/codex/hooks/clear-verdict.js +5 -1
  21. package/dist/clients/codex/hooks/clear-verdict.js.map +1 -1
  22. package/dist/clients/codex/hooks/require-verdict.d.ts +7 -1
  23. package/dist/clients/codex/hooks/require-verdict.d.ts.map +1 -1
  24. package/dist/clients/codex/hooks/require-verdict.js +8 -2
  25. package/dist/clients/codex/hooks/require-verdict.js.map +1 -1
  26. package/dist/clients/codex/hooks/require-verification.d.ts +9 -1
  27. package/dist/clients/codex/hooks/require-verification.d.ts.map +1 -1
  28. package/dist/clients/codex/hooks/require-verification.js +25 -5
  29. package/dist/clients/codex/hooks/require-verification.js.map +1 -1
  30. package/dist/clients/codex/index.d.ts +12 -2
  31. package/dist/clients/codex/index.d.ts.map +1 -1
  32. package/dist/clients/codex/index.js +73 -37
  33. package/dist/clients/codex/index.js.map +1 -1
  34. package/dist/clients/codex/util.d.ts +11 -6
  35. package/dist/clients/codex/util.d.ts.map +1 -1
  36. package/dist/clients/codex/util.js +41 -13
  37. package/dist/clients/codex/util.js.map +1 -1
  38. package/dist/clients/cursor/hooks/clear-verdict.d.ts.map +1 -1
  39. package/dist/clients/cursor/hooks/clear-verdict.js +4 -1
  40. package/dist/clients/cursor/hooks/clear-verdict.js.map +1 -1
  41. package/dist/clients/cursor/hooks/require-verdict.d.ts +7 -1
  42. package/dist/clients/cursor/hooks/require-verdict.d.ts.map +1 -1
  43. package/dist/clients/cursor/hooks/require-verdict.js +8 -2
  44. package/dist/clients/cursor/hooks/require-verdict.js.map +1 -1
  45. package/dist/clients/cursor/hooks/require-verification.d.ts +8 -1
  46. package/dist/clients/cursor/hooks/require-verification.d.ts.map +1 -1
  47. package/dist/clients/cursor/hooks/require-verification.js +27 -6
  48. package/dist/clients/cursor/hooks/require-verification.js.map +1 -1
  49. package/dist/clients/cursor/index.d.ts +6 -2
  50. package/dist/clients/cursor/index.d.ts.map +1 -1
  51. package/dist/clients/cursor/index.js +56 -30
  52. package/dist/clients/cursor/index.js.map +1 -1
  53. package/dist/commands/hook.js +4 -2
  54. package/dist/commands/hook.js.map +1 -1
  55. package/dist/commands/verification-toggle.d.ts +19 -0
  56. package/dist/commands/verification-toggle.d.ts.map +1 -1
  57. package/dist/commands/verification-toggle.js +88 -5
  58. package/dist/commands/verification-toggle.js.map +1 -1
  59. package/dist/commands/verification.d.ts +3 -0
  60. package/dist/commands/verification.d.ts.map +1 -1
  61. package/dist/commands/verification.js +34 -3
  62. package/dist/commands/verification.js.map +1 -1
  63. package/dist/hooks/core/activity-end.d.ts +8 -0
  64. package/dist/hooks/core/activity-end.d.ts.map +1 -1
  65. package/dist/hooks/core/activity-end.js +15 -0
  66. package/dist/hooks/core/activity-end.js.map +1 -1
  67. package/dist/hooks/core/submit-verdict.d.ts.map +1 -1
  68. package/dist/hooks/core/submit-verdict.js +29 -17
  69. package/dist/hooks/core/submit-verdict.js.map +1 -1
  70. package/dist/hooks/core/verification-lifecycle.d.ts +20 -0
  71. package/dist/hooks/core/verification-lifecycle.d.ts.map +1 -1
  72. package/dist/hooks/core/verification-lifecycle.js +41 -0
  73. package/dist/hooks/core/verification-lifecycle.js.map +1 -1
  74. package/dist/hooks/core/verify-gate.d.ts.map +1 -1
  75. package/dist/hooks/core/verify-gate.js +11 -5
  76. package/dist/hooks/core/verify-gate.js.map +1 -1
  77. package/dist/lib/config.d.ts +40 -0
  78. package/dist/lib/config.d.ts.map +1 -1
  79. package/dist/lib/config.js +52 -1
  80. package/dist/lib/config.js.map +1 -1
  81. package/dist/tui/config/schema.d.ts.map +1 -1
  82. package/dist/tui/config/schema.js +8 -0
  83. package/dist/tui/config/schema.js.map +1 -1
  84. package/package.json +1 -1
@@ -35,6 +35,7 @@
35
35
  */
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
37
  exports.applyVerificationToggle = applyVerificationToggle;
38
+ exports.applyAutoVerifyToggle = applyAutoVerifyToggle;
38
39
  const fs_1 = require("fs");
39
40
  const path_1 = require("path");
40
41
  const registry_1 = require("../clients/registry");
@@ -59,13 +60,14 @@ function writeConfigFile(path, config) {
59
60
  (0, fs_1.writeFileSync)(path, JSON.stringify(config, null, 2) + "\n");
60
61
  }
61
62
  /**
62
- * Read each layer's `verification.enable` value. Returns `undefined` for
63
- * layers that don't have the key set (or that have malformed values).
63
+ * Read each layer's `verification.<field>` boolean value (`field` is
64
+ * `"enable"` or `"auto"`). Returns `undefined` for layers that don't have the
65
+ * key set (or that have malformed values).
64
66
  *
65
67
  * Used by override-detection to figure out which (if any) layer is
66
68
  * shadowing a write to `target`.
67
69
  */
68
- function readVerificationEnableByLayer(projectDir) {
70
+ function readVerificationFieldByLayer(projectDir, field) {
69
71
  const result = {
70
72
  global: undefined,
71
73
  project: undefined,
@@ -77,7 +79,7 @@ function readVerificationEnableByLayer(projectDir) {
77
79
  continue;
78
80
  }
79
81
  const raw = readConfigFile(path);
80
- const v = raw.verification?.enable;
82
+ const v = raw.verification?.[field];
81
83
  if (typeof v === "boolean") {
82
84
  result[layer] = v;
83
85
  }
@@ -149,7 +151,7 @@ function applyVerificationToggle(enable, projectDir, target, clientName) {
149
151
  // Targeted layer matches the requested state, but a higher layer
150
152
  // overrides. Don't pretend we fixed it — point the user at the
151
153
  // overriding layer instead.
152
- const layerValues = readVerificationEnableByLayer(projectDir);
154
+ const layerValues = readVerificationFieldByLayer(projectDir, "enable");
153
155
  const overriding = detectOverridingLayer(target, layerValues);
154
156
  const effectiveWord = effectiveBefore ? "enabled" : "disabled";
155
157
  console.log(`${output_1.pc.yellow("⚠")} ${target} config already has verification.enable: ${enable}, but the ${output_1.pc.bold(overriding ?? "another")} layer overrides it — effective state is ${output_1.pc.bold(effectiveWord)}.`);
@@ -196,4 +198,85 @@ function applyVerificationToggle(enable, projectDir, target, clientName) {
196
198
  console.log(` ${output_1.pc.dim(modeNote)}`);
197
199
  console.log(` ${output_1.pc.yellow("⚠")} Restart your editor / agent session for the change to take effect.`);
198
200
  }
201
+ /**
202
+ * Apply the `verification.auto` sub-toggle and re-render client artifacts.
203
+ *
204
+ * `auto` is the **automatic-enforcement** switch (default true), only
205
+ * meaningful when `verification.enable !== false`:
206
+ * - `auto: true` → "enforce" mode (blocking gate + skill/rule).
207
+ * - `auto: false` → "assist" mode (machinery + /ironbee-verify command + MCP
208
+ * installed, soft non-blocking PreToolUse hooks, no Stop
209
+ * gate, skill/rule NOT installed).
210
+ *
211
+ * Same target / ordering (artifacts-before-config) / cross-layer override
212
+ * semantics as `applyVerificationToggle`. Additionally warns when verification
213
+ * itself is disabled in the merged config — then `auto` has no effect (the mode
214
+ * is "monitor" regardless) until verification is re-enabled.
215
+ *
216
+ * The write preserves any sibling `verification.enable` already on the targeted
217
+ * layer (merges into the existing `verification` block rather than replacing it).
218
+ */
219
+ function applyAutoVerifyToggle(enableAuto, projectDir, target, clientName) {
220
+ const targetPath = (0, config_1.getTargetConfigPath)(target, projectDir);
221
+ const onDisk = readConfigFile(targetPath);
222
+ const targetLayerValue = typeof onDisk.verification?.auto === "boolean"
223
+ ? onDisk.verification.auto
224
+ : undefined;
225
+ const targetLayerCurrent = targetLayerValue !== false;
226
+ const mergedBefore = (0, config_1.loadConfig)(projectDir);
227
+ const effectiveAutoBefore = (0, config_1.getAutoVerifyEnabled)(mergedBefore);
228
+ const verificationEnabledMerged = (0, config_1.getVerificationEnabled)(mergedBefore);
229
+ const word = enableAuto ? "enabled" : "disabled";
230
+ // When verification itself is off, `auto` is inert — flag it on every path
231
+ // so the user isn't surprised that the mode didn't change.
232
+ const inertNote = () => {
233
+ if (!verificationEnabledMerged) {
234
+ console.log(` ${output_1.pc.yellow("⚠")} verification.enable is false (monitoring-only) — auto-verify has no effect until you run ${output_1.pc.cyan("ironbee verification enable")}.`);
235
+ }
236
+ };
237
+ if (targetLayerCurrent === enableAuto && effectiveAutoBefore === enableAuto) {
238
+ console.log(`${output_1.pc.dim("·")} Auto-verify already ${word} in ${target} config (${output_1.pc.dim(targetPath)}). No-op.`);
239
+ inertNote();
240
+ return;
241
+ }
242
+ if (targetLayerCurrent === enableAuto && effectiveAutoBefore !== enableAuto) {
243
+ const layerValues = readVerificationFieldByLayer(projectDir, "auto");
244
+ const overriding = detectOverridingLayer(target, layerValues);
245
+ const effectiveWord = effectiveAutoBefore ? "enabled" : "disabled";
246
+ console.log(`${output_1.pc.yellow("⚠")} ${target} config already has verification.auto: ${enableAuto}, but the ${output_1.pc.bold(overriding ?? "another")} layer overrides it — effective auto-verify is ${output_1.pc.bold(effectiveWord)}.`);
247
+ if (overriding !== null) {
248
+ console.log(` ${output_1.pc.dim("Run")} ${output_1.pc.cyan(`ironbee config unset verification.auto --${overriding}`)} ${output_1.pc.dim("to drop the override, or run this command with")} ${output_1.pc.cyan(`--${overriding}`)} ${output_1.pc.dim("to flip the layer that's actually winning.")}`);
249
+ }
250
+ return;
251
+ }
252
+ // Compute the merged config the artifacts should reflect (auto applied over
253
+ // the merged result; we proved above no higher layer is shadowing). Preserve
254
+ // any merged verification.enable so the mode resolves correctly.
255
+ const mergedConfig = (0, config_1.loadConfig)(projectDir);
256
+ mergedConfig.verification = { ...mergedConfig.verification, auto: enableAuto };
257
+ const clients = (0, registry_1.resolveTargetClients)(projectDir, clientName);
258
+ if (clientName === undefined && clients.length === 1 && !clients[0].detect(projectDir)) {
259
+ console.log(`${output_1.pc.yellow("⚠")} No clients detected in ${output_1.pc.dim(projectDir)} — applying to ${output_1.pc.bold(clients[0].name)} as fallback.`);
260
+ }
261
+ for (const client of clients) {
262
+ client.install(projectDir, mergedConfig);
263
+ }
264
+ if (target !== "global") {
265
+ (0, gitignore_1.ensureIronBeeGitignored)(projectDir);
266
+ }
267
+ // Artifacts succeeded — persist the flip, preserving sibling keys.
268
+ const newConfig = {
269
+ ...onDisk,
270
+ verification: { ...onDisk.verification, auto: enableAuto },
271
+ };
272
+ writeConfigFile(targetPath, newConfig);
273
+ const successWord = enableAuto ? "Enabled" : "Disabled";
274
+ const modeNote = enableAuto
275
+ ? "Enforce mode — blocking verify-gate + skill/rule/command + MCP servers installed."
276
+ : "Assist mode — /ironbee-verify command + MCP servers installed; PreToolUse hooks run non-blocking, Stop never gates, skill/rule omitted.";
277
+ console.log(`${output_1.pc.green("✓")} ${successWord} auto-verify in ${target} config (${output_1.pc.dim(targetPath)}).`);
278
+ console.log(` ${output_1.pc.dim(modeNote)}`);
279
+ inertNote();
280
+ console.log(` ${output_1.pc.yellow("⚠")} Restart your editor / agent session for the change to take effect.`);
281
+ }
199
282
  //# sourceMappingURL=verification-toggle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-toggle.js","sourceRoot":"","sources":["../../src/commands/verification-toggle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-toggle.js","sourceRoot":"","sources":["../../src/commands/verification-toggle.ts"],"names":[],"mappings":"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"}
@@ -20,5 +20,8 @@
20
20
  import { Command } from "commander";
21
21
  export declare const verificationEnableCommand: Command;
22
22
  export declare const verificationDisableCommand: Command;
23
+ export declare const autoEnableCommand: Command;
24
+ export declare const autoDisableCommand: Command;
25
+ export declare const verificationAutoCommand: Command;
23
26
  export declare const verificationCommand: Command;
24
27
  //# sourceMappingURL=verification.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../src/commands/verification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBpC,eAAO,MAAM,yBAAyB,EAAE,OAWlC,CAAC;AAEP,eAAO,MAAM,0BAA0B,EAAE,OAWnC,CAAC;AAEP,eAAO,MAAM,mBAAmB,EAAE,OAGS,CAAC"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../src/commands/verification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBpC,eAAO,MAAM,yBAAyB,EAAE,OAWlC,CAAC;AAEP,eAAO,MAAM,0BAA0B,EAAE,OAWnC,CAAC;AAEP,eAAO,MAAM,iBAAiB,EAAE,OAW1B,CAAC;AAEP,eAAO,MAAM,kBAAkB,EAAE,OAW3B,CAAC;AAEP,eAAO,MAAM,uBAAuB,EAAE,OAGH,CAAC;AAEpC,eAAO,MAAM,mBAAmB,EAAE,OAIM,CAAC"}
@@ -19,7 +19,7 @@
19
19
  * personal override. `--client` narrows the artifact rerender.
20
20
  */
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.verificationCommand = exports.verificationDisableCommand = exports.verificationEnableCommand = void 0;
22
+ exports.verificationCommand = exports.verificationAutoCommand = exports.autoDisableCommand = exports.autoEnableCommand = exports.verificationDisableCommand = exports.verificationEnableCommand = void 0;
23
23
  const commander_1 = require("commander");
24
24
  const registry_1 = require("../clients/registry");
25
25
  const config_1 = require("../lib/config");
@@ -58,8 +58,39 @@ exports.verificationDisableCommand = attachToggleOptions(new commander_1.Command
58
58
  process.exit(1);
59
59
  }
60
60
  });
61
+ exports.autoEnableCommand = attachToggleOptions(new commander_1.Command("enable"))
62
+ .description("Turn automatic enforcement back on (enforce mode — writes verification.auto: true). Default target is the committed project config; -g writes global, --local writes the gitignored personal layer.")
63
+ .action((opts) => {
64
+ try {
65
+ const projectDir = opts.projectDir ?? process.cwd();
66
+ const target = (0, config_1.resolveConfigTargetFromFlags)(opts);
67
+ (0, verification_toggle_1.applyAutoVerifyToggle)(true, projectDir, target, opts.client);
68
+ }
69
+ catch (e) {
70
+ console.error(`${output_1.pc.red("✗")} ${e instanceof Error ? e.message : e}`);
71
+ process.exit(1);
72
+ }
73
+ });
74
+ exports.autoDisableCommand = attachToggleOptions(new commander_1.Command("disable"))
75
+ .description("Switch to assist mode (writes verification.auto: false): the /ironbee-verify command + MCP servers stay installed so the agent can verify manually, but nothing is enforced — no Stop gate, non-blocking PreToolUse hooks, no skill/rule. Default target is the committed project config; -g writes global, --local writes the gitignored personal layer.")
76
+ .action((opts) => {
77
+ try {
78
+ const projectDir = opts.projectDir ?? process.cwd();
79
+ const target = (0, config_1.resolveConfigTargetFromFlags)(opts);
80
+ (0, verification_toggle_1.applyAutoVerifyToggle)(false, projectDir, target, opts.client);
81
+ }
82
+ catch (e) {
83
+ console.error(`${output_1.pc.red("✗")} ${e instanceof Error ? e.message : e}`);
84
+ process.exit(1);
85
+ }
86
+ });
87
+ exports.verificationAutoCommand = new commander_1.Command("auto")
88
+ .description("Manage automatic enforcement (enable = enforce mode; disable = assist mode: manual /ironbee-verify only, no enforcement). Sub-toggle of `verification` — only meaningful when verification is enabled.")
89
+ .addCommand(exports.autoEnableCommand)
90
+ .addCommand(exports.autoDisableCommand);
61
91
  exports.verificationCommand = new commander_1.Command("verification")
62
- .description("Manage the master verification toggle (enable / disable). Mirrors the `<cycle> <verb>` shape used by `browser` / `node` / `backend`.")
92
+ .description("Manage the master verification toggle (enable / disable) and the `auto` enforcement sub-toggle. Mirrors the `<cycle> <verb>` shape used by `browser` / `node` / `backend`.")
63
93
  .addCommand(exports.verificationEnableCommand)
64
- .addCommand(exports.verificationDisableCommand);
94
+ .addCommand(exports.verificationDisableCommand)
95
+ .addCommand(exports.verificationAutoCommand);
65
96
  //# sourceMappingURL=verification.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/commands/verification.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAEH,yCAAoC;AACpC,kDAAkD;AAClD,0CAA2E;AAC3E,0CAAmC;AACnC,+DAAgE;AAShE,SAAS,mBAAmB,CAAC,GAAY;IACrC,OAAO,GAAG;SACL,MAAM,CAAC,yBAAyB,EAAE,mCAAmC,CAAC;SACtE,MAAM,CAAC,cAAc,EAAE,6EAA6E,CAAC;SACrG,MAAM,CAAC,SAAS,EAAE,0HAA0H,CAAC;SAC7I,MAAM,CAAC,iBAAiB,EAAE,6CAA6C,IAAA,sBAAW,GAAE,yCAAyC,CAAC,CAAC;AACxI,CAAC;AAEY,QAAA,yBAAyB,GAAY,mBAAmB,CAAC,IAAI,mBAAO,CAAC,QAAQ,CAAC,CAAC;KACvF,WAAW,CAAC,2NAA2N,CAAC;KACxO,MAAM,CAAC,CAAC,IAAmB,EAAQ,EAAE;IAClC,IAAI,CAAC;QACD,MAAM,UAAU,GAAW,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAC5D,MAAM,MAAM,GAAiB,IAAA,qCAA4B,EAAC,IAAI,CAAC,CAAC;QAChE,IAAA,6CAAuB,EAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,GAAG,WAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAC,CAAC;AAEM,QAAA,0BAA0B,GAAY,mBAAmB,CAAC,IAAI,mBAAO,CAAC,SAAS,CAAC,CAAC;KACzF,WAAW,CAAC,8PAA8P,CAAC;KAC3Q,MAAM,CAAC,CAAC,IAAmB,EAAQ,EAAE;IAClC,IAAI,CAAC;QACD,MAAM,UAAU,GAAW,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAC5D,MAAM,MAAM,GAAiB,IAAA,qCAA4B,EAAC,IAAI,CAAC,CAAC;QAChE,IAAA,6CAAuB,EAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,GAAG,WAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAC,CAAC;AAEM,QAAA,mBAAmB,GAAY,IAAI,mBAAO,CAAC,cAAc,CAAC;KAClE,WAAW,CAAC,sIAAsI,CAAC;KACnJ,UAAU,CAAC,iCAAyB,CAAC;KACrC,UAAU,CAAC,kCAA0B,CAAC,CAAC"}
1
+ {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/commands/verification.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,14 @@
9
9
  * Pairs with `activity-start` (the always-installed UserPromptSubmit handler);
10
10
  * the enabled-mode equivalent is `verify-gate`, which does the same activity
11
11
  * close + queue flush plus the full multi-cycle verification check.
12
+ *
13
+ * Used by BOTH monitoring-only mode AND assist mode (`verification.auto:
14
+ * false`). In assist, the verification machinery is installed and the agent
15
+ * may open verification/fix cycles (manually or via the soft hook's auto-open),
16
+ * but assist never runs the verify-gate — so this is also the turn boundary
17
+ * that must close any cycle still open at Stop (`closeOpenCycles(reason:
18
+ * "stop")`). In monitoring mode no cycles are ever opened, so that call is a
19
+ * no-op.
12
20
  */
13
21
  export interface ActivityEndInput {
14
22
  sessionDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"activity-end.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/activity-end.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,MAAM,WAAW,gBAAgB;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ3E"}
1
+ {"version":3,"file":"activity-end.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/activity-end.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAMH,MAAM,WAAW,gBAAgB;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAc3E"}
@@ -10,13 +10,28 @@
10
10
  * Pairs with `activity-start` (the always-installed UserPromptSubmit handler);
11
11
  * the enabled-mode equivalent is `verify-gate`, which does the same activity
12
12
  * close + queue flush plus the full multi-cycle verification check.
13
+ *
14
+ * Used by BOTH monitoring-only mode AND assist mode (`verification.auto:
15
+ * false`). In assist, the verification machinery is installed and the agent
16
+ * may open verification/fix cycles (manually or via the soft hook's auto-open),
17
+ * but assist never runs the verify-gate — so this is also the turn boundary
18
+ * that must close any cycle still open at Stop (`closeOpenCycles(reason:
19
+ * "stop")`). In monitoring mode no cycles are ever opened, so that call is a
20
+ * no-op.
13
21
  */
14
22
  Object.defineProperty(exports, "__esModule", { value: true });
15
23
  exports.runActivityEnd = runActivityEnd;
16
24
  const activity_1 = require("./activity");
25
+ const session_state_1 = require("./session-state");
17
26
  const queue_1 = require("../../queue");
18
27
  async function runActivityEnd(input) {
19
28
  const { sessionDir, actionsFile, projectDir, sessionId } = input;
29
+ // Close any verification/fix cycle left open at the turn boundary (assist
30
+ // mode — agent opened a cycle but didn't submit a verdict, or edited after
31
+ // a fail without re-verifying). No-op in monitoring mode (no open cycles).
32
+ // Runs BEFORE endActivity so the cycle-end events still carry the active
33
+ // activity_id.
34
+ await (0, session_state_1.closeOpenCycles)(sessionDir, actionsFile, "stop");
20
35
  await (0, activity_1.endActivity)({ sessionDir, actionsFile });
21
36
  (0, queue_1.flushInBackground)(projectDir, sessionId);
22
37
  // Re-attempt prior TransientError snapshots — covers cases where this
@@ -1 +1 @@
1
- {"version":3,"file":"activity-end.js","sourceRoot":"","sources":["../../../src/hooks/core/activity-end.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAYH,wCAQC;AAlBD,yCAAyC;AACzC,uCAA6E;AAStE,KAAK,UAAU,cAAc,CAAC,KAAuB;IACxD,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACjE,MAAM,IAAA,sBAAW,EAAC,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/C,IAAA,yBAAiB,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACzC,sEAAsE;IACtE,mEAAmE;IACnE,wBAAwB;IACxB,IAAA,mCAA2B,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"activity-end.js","sourceRoot":"","sources":["../../../src/hooks/core/activity-end.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;AAaH,wCAcC;AAzBD,yCAAyC;AACzC,mDAAkD;AAClD,uCAA6E;AAStE,KAAK,UAAU,cAAc,CAAC,KAAuB;IACxD,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACjE,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,yEAAyE;IACzE,eAAe;IACf,MAAM,IAAA,+BAAe,EAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,IAAA,sBAAW,EAAC,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/C,IAAA,yBAAiB,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACzC,sEAAsE;IACtE,mEAAmE;IACnE,wBAAwB;IACxB,IAAA,mCAA2B,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"submit-verdict.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/submit-verdict.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACnB;AAgBD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsI9F"}
1
+ {"version":3,"file":"submit-verdict.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/submit-verdict.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACnB;AAgBD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAoJ9F"}
@@ -10,7 +10,6 @@
10
10
  */
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.runSubmitVerdict = runSubmitVerdict;
13
- const crypto_1 = require("crypto");
14
13
  const fs_1 = require("fs");
15
14
  const path_1 = require("path");
16
15
  const logger_1 = require("../../lib/logger");
@@ -81,10 +80,32 @@ Recording start/stop must bracket the verification flow — start before browser
81
80
  if ((0, session_state_1.isRecordingRequired)(sessionDir)) {
82
81
  (0, session_state_1.setRecordingRequired)(sessionDir, false);
83
82
  }
83
+ // A verdict declares an outcome → the current fixing round (if any) is
84
+ // over. Close an active fix cycle now (a fix opened by edits-after-fail
85
+ // that the agent concluded with a verdict, possibly without an explicit
86
+ // re-verify — common in assist mode). The normal flow closes the fix
87
+ // earlier, at the re-verify `verification_start`; this is the fallback so
88
+ // the fix never dangles to session reconcile.
89
+ const activityId = (0, session_state_1.getActiveActivityId)(sessionDir);
90
+ const activeFixId = (0, session_state_1.getActiveFixId)(sessionDir);
91
+ if (activeFixId) {
92
+ const fixEndNow = Date.now();
93
+ const fixEndEntry = {
94
+ ...(0, actions_1.baseFields)(actionsFile),
95
+ type: "fix_end",
96
+ timestamp: fixEndNow,
97
+ fix_id: activeFixId,
98
+ activity_id: activityId,
99
+ duration: (0, actions_1.findDurationSinceLastAction)(actionsFile, "fix_start", fixEndNow),
100
+ };
101
+ await (0, actions_1.appendAction)(actionsFile, fixEndEntry);
102
+ (0, session_state_1.clearActiveFix)(sessionDir);
103
+ (0, session_state_1.setPhase)(sessionDir, "coding");
104
+ logger_1.logger.debug(`fix-end (verdict): ${activeFixId}`);
105
+ }
84
106
  // auto-record verification_end if there's an active verification
85
107
  const verificationId = (0, session_state_1.getActiveVerificationId)(sessionDir);
86
108
  const traceId = (0, session_state_1.getActiveTraceId)(sessionDir);
87
- const activityId = (0, session_state_1.getActiveActivityId)(sessionDir);
88
109
  if (verificationId) {
89
110
  const verEndNow = Date.now();
90
111
  const endEntry = {
@@ -115,21 +136,12 @@ Recording start/stop must bracket the verification flow — start before browser
115
136
  };
116
137
  await (0, actions_1.appendAction)(actionsFile, entry);
117
138
  await (0, telemetry_1.trackVerdictWrite)(sessionId, verdict.status, projectDir);
118
- // record fix_start when verdict is fail
119
- if (verdict.status === "fail") {
120
- const fixId = (0, crypto_1.randomUUID)();
121
- const fixEntry = {
122
- ...(0, actions_1.baseFields)(actionsFile),
123
- type: "fix_start",
124
- timestamp: Date.now(),
125
- fix_id: fixId,
126
- activity_id: activityId,
127
- };
128
- await (0, actions_1.appendAction)(actionsFile, fixEntry);
129
- (0, session_state_1.setActiveFix)(sessionDir, fixId);
130
- (0, session_state_1.setPhase)(sessionDir, "fixing");
131
- logger_1.logger.debug(`fix-start: ${fixId} (verdict was fail)`);
132
- }
139
+ // NOTE: a fail verdict does NOT open a fix cycle here. A fix cycle is
140
+ // opened lazily by `clear-verdict` on the FIRST `file_change` recorded
141
+ // while `lastVerdictStatus === "fail"` — i.e. an edit-after-fail is the
142
+ // signal that the agent is actually fixing. A fail followed by a re-verify
143
+ // with no edits (e.g. confirming the failure) is therefore NOT a fix.
144
+ // See docs/flow.md §6.3.
133
145
  logger_1.logger.debug(`submit-verdict: session=${sessionId} status=${verdict.status}`);
134
146
  if (verdict.status === "pass") {
135
147
  const fixesInfo = verdict.fixes?.length ? ` Fixes: ${verdict.fixes.join(", ")}` : "";
@@ -1 +1 @@
1
- {"version":3,"file":"submit-verdict.js","sourceRoot":"","sources":["../../../src/hooks/core/submit-verdict.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"submit-verdict.js","sourceRoot":"","sources":["../../../src/hooks/core/submit-verdict.ts"],"names":[],"mappings":"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"}
@@ -27,5 +27,25 @@ export interface VerificationEndResult {
27
27
  message: string;
28
28
  }
29
29
  export declare function startVerification(input: VerificationStartInput): Promise<VerificationStartResult>;
30
+ /**
31
+ * Open a fix cycle lazily on an edit-after-fail. Called by the `clear-verdict`
32
+ * adapters right before they append a `file_change`. The fix cycle brackets the
33
+ * code-editing done to address a FAILED verification — and the signal for "this
34
+ * is a fix" is **an edit while the last verdict was a fail**, NOT the fail
35
+ * verdict itself (a fail followed by a re-verify with no edits is not a fix).
36
+ *
37
+ * - lastVerdictStatus === "fail" AND no active fix → emit `fix_start`, return new fix_id
38
+ * - lastVerdictStatus === "fail" AND active fix → return the existing fix_id (same round)
39
+ * - otherwise (pass / null — initial coding or post-pass) → no fix, return undefined
40
+ *
41
+ * Returns the fix_id to tag the triggering `file_change` with (or undefined).
42
+ * The fix cycle is closed later by the next `verification_start` (re-verify),
43
+ * by `submit-verdict` (outcome declared), by turn-end `closeOpenCycles`, or by
44
+ * session reconcile. See docs/flow.md §6.3.
45
+ */
46
+ export declare function openFixCycleIfFixing(input: {
47
+ sessionDir: string;
48
+ actionsFile: string;
49
+ }): Promise<string | undefined>;
30
50
  export declare function endVerification(input: VerificationEndInput): Promise<VerificationEndResult>;
31
51
  //# sourceMappingURL=verification-lifecycle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/verification-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,MAAM,WAAW,sBAAsB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAgEvG;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA2BjG"}
1
+ {"version":3,"file":"verification-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/verification-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,MAAM,WAAW,sBAAsB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAgEvG;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuB1H;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA2BjG"}
@@ -8,6 +8,7 @@
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.startVerification = startVerification;
11
+ exports.openFixCycleIfFixing = openFixCycleIfFixing;
11
12
  exports.endVerification = endVerification;
12
13
  const crypto_1 = require("crypto");
13
14
  const logger_1 = require("../../lib/logger");
@@ -70,6 +71,46 @@ async function startVerification(input) {
70
71
  logger_1.logger.debug(`verification-start: ${verificationId} trace=${traceId} recording=${!!input.recordingEnabled}`);
71
72
  return { verificationId, traceId };
72
73
  }
74
+ /**
75
+ * Open a fix cycle lazily on an edit-after-fail. Called by the `clear-verdict`
76
+ * adapters right before they append a `file_change`. The fix cycle brackets the
77
+ * code-editing done to address a FAILED verification — and the signal for "this
78
+ * is a fix" is **an edit while the last verdict was a fail**, NOT the fail
79
+ * verdict itself (a fail followed by a re-verify with no edits is not a fix).
80
+ *
81
+ * - lastVerdictStatus === "fail" AND no active fix → emit `fix_start`, return new fix_id
82
+ * - lastVerdictStatus === "fail" AND active fix → return the existing fix_id (same round)
83
+ * - otherwise (pass / null — initial coding or post-pass) → no fix, return undefined
84
+ *
85
+ * Returns the fix_id to tag the triggering `file_change` with (or undefined).
86
+ * The fix cycle is closed later by the next `verification_start` (re-verify),
87
+ * by `submit-verdict` (outcome declared), by turn-end `closeOpenCycles`, or by
88
+ * session reconcile. See docs/flow.md §6.3.
89
+ */
90
+ async function openFixCycleIfFixing(input) {
91
+ const { sessionDir, actionsFile } = input;
92
+ if ((0, session_state_1.getLastVerdictStatus)(sessionDir) !== "fail") {
93
+ return undefined;
94
+ }
95
+ const existing = (0, session_state_1.getActiveFixId)(sessionDir);
96
+ if (existing) {
97
+ return existing;
98
+ }
99
+ const activityId = (0, session_state_1.getActiveActivityId)(sessionDir);
100
+ const fixId = (0, crypto_1.randomUUID)();
101
+ const entry = {
102
+ ...(0, actions_1.baseFields)(actionsFile),
103
+ type: "fix_start",
104
+ timestamp: Date.now(),
105
+ fix_id: fixId,
106
+ activity_id: activityId,
107
+ };
108
+ await (0, actions_1.appendAction)(actionsFile, entry);
109
+ (0, session_state_1.setActiveFix)(sessionDir, fixId);
110
+ (0, session_state_1.setPhase)(sessionDir, "fixing");
111
+ logger_1.logger.debug(`fix-start (edit after fail): ${fixId}`);
112
+ return fixId;
113
+ }
73
114
  async function endVerification(input) {
74
115
  const { sessionDir, actionsFile } = input;
75
116
  const verificationId = (0, session_state_1.getActiveVerificationId)(sessionDir);
@@ -1 +1 @@
1
- {"version":3,"file":"verification-lifecycle.js","sourceRoot":"","sources":["../../../src/hooks/core/verification-lifecycle.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAuCH,8CAgEC;AAED,0CA2BC;AAlID,mCAAoC;AACpC,6CAA0C;AAC1C,uCAOmB;AACnB,mDAA4O;AA2BrO,KAAK,UAAU,iBAAiB,CAAC,KAA6B;IACjE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAE1C,MAAM,UAAU,GAAuB,IAAA,mCAAmB,EAAC,UAAU,CAAC,CAAC;IAEvE,gEAAgE;IAChE,MAAM,WAAW,GAAuB,IAAA,8BAAc,EAAC,UAAU,CAAC,CAAC;IACnE,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,WAAW,GAAiB;YAC9B,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;YAC1B,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,SAAS;YACpB,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,UAAW;YACxB,QAAQ,EAAE,IAAA,qCAA2B,EAAC,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC;SAC7E,CAAC;QACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC7C,IAAA,8BAAc,EAAC,UAAU,CAAC,CAAC;QAC3B,eAAM,CAAC,KAAK,CAAC,YAAY,WAAW,8BAA8B,CAAC,CAAC;IACxE,CAAC;IAED,0DAA0D;IAC1D,MAAM,UAAU,GAAuB,IAAA,uCAAuB,EAAC,UAAU,CAAC,CAAC;IAC3E,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,eAAe,GAAuB,IAAA,gCAAgB,EAAC,UAAU,CAAC,CAAC;QACzE,eAAM,CAAC,KAAK,CAAC,gCAAgC,UAAU,0BAA0B,CAAC,CAAC;QACnF,MAAM,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,QAAQ,GAA0B;YACpC,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;YAC1B,IAAI,EAAE,kBAAkB;YACxB,SAAS,EAAE,SAAS;YACpB,eAAe,EAAE,UAAU;YAC3B,WAAW,EAAE,UAAW;YACxB,QAAQ,EAAE,eAAgB;YAC1B,QAAQ,EAAE,IAAA,qCAA2B,EAAC,WAAW,EAAE,oBAAoB,EAAE,SAAS,CAAC;SACtF,CAAC;QACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAA,uCAAuB,EAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,cAAc,GAAW,IAAA,mBAAU,GAAE,CAAC;IAC5C,MAAM,OAAO,GAAW,IAAA,+BAAe,GAAE,CAAC;IAE1C,MAAM,KAAK,GAA4B;QACnC,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;QAC1B,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,eAAe,EAAE,cAAc;QAC/B,WAAW,EAAE,UAAW;QACxB,QAAQ,EAAE,OAAO;KACpB,CAAC;IACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,qCAAqB,EAAC,UAAU,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAE3D,kDAAkD;IAClD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACzB,IAAA,oCAAoB,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACvC,IAAA,kCAAkB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,eAAM,CAAC,KAAK,CAAC,uBAAuB,cAAc,UAAU,OAAO,cAAc,CAAC,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE7G,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;AACvC,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,KAA2B;IAC7D,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAE1C,MAAM,cAAc,GAAuB,IAAA,uCAAuB,EAAC,UAAU,CAAC,CAAC;IAC/E,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC;IACzE,CAAC;IAED,MAAM,OAAO,GAAuB,IAAA,gCAAgB,EAAC,UAAU,CAAC,CAAC;IACjE,MAAM,UAAU,GAAuB,IAAA,mCAAmB,EAAC,UAAU,CAAC,CAAC;IAEvE,MAAM,GAAG,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,MAAM,KAAK,GAA0B;QACjC,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;QAC1B,IAAI,EAAE,kBAAkB;QACxB,SAAS,EAAE,GAAG;QACd,eAAe,EAAE,cAAc;QAC/B,WAAW,EAAE,UAAW;QACxB,QAAQ,EAAE,OAAQ;QAClB,QAAQ,EAAE,IAAA,qCAA2B,EAAC,WAAW,EAAE,oBAAoB,EAAE,GAAG,CAAC;KAChF,CAAC;IACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,uCAAuB,EAAC,UAAU,CAAC,CAAC;IAEpC,eAAM,CAAC,KAAK,CAAC,qBAAqB,cAAc,UAAU,OAAO,EAAE,CAAC,CAAC;IAErE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,cAAc,SAAS,EAAE,CAAC;AACxG,CAAC"}
1
+ {"version":3,"file":"verification-lifecycle.js","sourceRoot":"","sources":["../../../src/hooks/core/verification-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"verify-gate.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/verify-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAiBH,OAAO,EAEH,aAAa,EAMhB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAkKD,wBAAsB,aAAa,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAyPrF"}
1
+ {"version":3,"file":"verify-gate.d.ts","sourceRoot":"","sources":["../../../src/hooks/core/verify-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAiBH,OAAO,EAEH,aAAa,EAMhB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAkKD,wBAAsB,aAAa,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA+PrF"}
@@ -159,13 +159,19 @@ async function runVerifyGate(input) {
159
159
  logger_1.logger.debug(`verify-gate: session=${sid} verdictExists=${(0, fs_1.existsSync)(verdictFile)}`);
160
160
  // ── Check 1: Were code files changed? ───────────────────
161
161
  if (!(0, actions_1.hasFileChangesSinceLastVerification)(actionsFile)) {
162
- // An active fix here means the agent submitted a fail verdict and
163
- // never addressed it (no follow-up edits, no follow-up verify).
162
+ // A last-verdict of "fail" here means the agent submitted a fail verdict
163
+ // and never addressed it (no follow-up edits, no follow-up pass). The
164
164
  // `no_edits` allow would let them slip past — block instead and tell
165
165
  // them to fix-and-reverify or burn through retries to maxRetries.
166
- const activeFixId = (0, session_state_1.getActiveFixId)(sessionDir);
167
- if (activeFixId) {
168
- logger_1.logger.debug(`no code changes but active fix ${activeFixId} blocking`);
166
+ //
167
+ // Keys on `lastVerdictStatus === "fail"` (not `activeFixId`): a fix
168
+ // cycle is now opened lazily by the FIRST edit-after-fail (see
169
+ // verification-lifecycle.openFixCycleIfFixing), so in the "fail then did
170
+ // nothing" case there is no activeFixId — but `lastVerdictStatus` is the
171
+ // direct, durable signal of an outstanding fail. (Also cleared to "pass"
172
+ // once the agent passes, so this never fires after a successful fix.)
173
+ if ((0, session_state_1.getLastVerdictStatus)(sessionDir) === "fail") {
174
+ logger_1.logger.debug(`no code changes but last verdict was fail — blocking (unaddressed)`);
169
175
  await recordMarker(actionsFile, sessionDir, sid, "block", "fail_verdict_unaddressed", [], input.projectDir);
170
176
  return {
171
177
  action: "block",
@@ -1 +1 @@
1
- {"version":3,"file":"verify-gate.js","sourceRoot":"","sources":["../../../src/hooks/core/verify-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify-gate.js","sourceRoot":"","sources":["../../../src/hooks/core/verify-gate.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;AA6MH,sCA+PC;AA1cD,2BAA0D;AAC1D,6CAA0C;AAC1C,mDAAiE;AACjE,uCAUmB;AACnB,mDAAgJ;AAChJ,6CAQ0B;AAC1B,qDAAuE;AAmBvE,MAAM,mBAAmB,GAAW,CAAC,CAAC;AAEtC,2EAA2E;AAC3E,SAAS,iBAAiB,CAAC,KAAa;IACpC,MAAM,MAAM,GAAuB,wBAAe,CAAC,KAAK,CAAC,CAAC;IAC1D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,IAAI,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB;IACzC,OAAO,IAAI,CAAC,SAAS,CAAC;QAClB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,CAAC,2BAA2B,EAAE,0BAA0B,EAAE,mBAAmB,CAAC;KACzF,CAAC,CAAC;AACP,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB;IACzC,OAAO,IAAI,CAAC,SAAS,CAAC;QAClB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,CAAC,cAAc,EAAE,4BAA4B,CAAC;QACtD,MAAM,EAAE,CAAC,iCAAiC,EAAE,sBAAsB,CAAC;KACtE,CAAC,CAAC;AACP,CAAC;AAED,SAAS,OAAO,CAAC,GAAG,KAAe;IAC/B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC;YACD,IAAI,IAAA,eAAU,EAAC,CAAC,CAAC,EAAE,CAAC;gBAChB,IAAA,eAAU,EAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACL,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YAClB,eAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;AACL,CAAC;AAED,0FAA0F;AAC1F,SAAS,mBAAmB,CAAC,WAAmB,EAAE,MAAqB;IACnE,MAAM,WAAW,GAAuB,IAAA,6CAAmC,EAAC,WAAW,CAAC,CAAC;IACzF,MAAM,MAAM,GAAgB,IAAI,GAAG,EAAE,CAAC;IACtC,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,IAAA,wBAAe,EAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACL,CAAC;IACD,uEAAuE;IACvE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,wBAAe,EAAE,CAAC;QAClC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAUD,SAAS,eAAe,CACpB,KAAa,EACb,SAA2B,EAC3B,MAAqB;IAErB,MAAM,MAAM,GAAW,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,IAAI,GAAgB,IAAI,GAAG,CAC7B,SAAS;SACJ,MAAM,CAAC,CAAC,CAAiB,EAAW,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,IAAI,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC;SACxF,GAAG,CAAC,CAAC,CAAiB,EAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CACvD,CAAC;IACF,MAAM,WAAW,GAAwB,IAAA,+BAAsB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/E,OAAO;QACH,KAAK;QACL,MAAM,EAAE,IAAA,qCAAoB,EAAC,IAAI,EAAE,WAAW,CAAC;QAC/C,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,IAAI,CAAC,IAAI;KACvB,CAAC;AACN,CAAC;AAaD,uEAAuE;AACvE,mEAAmE;AACnE,wEAAwE;AACxE,uEAAuE;AACvE,mEAAmE;AACnE,sEAAsE;AACtE,sEAAsE;AACtE,0DAA0D;AAC1D,kEAAkE;AAClE,qEAAqE;AACrE,0EAA0E;AAC1E,oEAAoE;AACpE,2EAA2E;AAC3E,yEAAyE;AACzE,SAAS,oBAAoB,CAAC,QAAwB;IAClD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AACpE,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAwB;IAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AACjE,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAwB;IAClD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AACpE,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,OAAuB;IAC9D,yEAAyE;IACzE,uEAAuE;IACvE,sEAAsE;IACtE,4BAA4B;IAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC7D,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACnB,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,8BAA8B;IAC9B,MAAM,IAAI,KAAK,CAAC,6CAA6C,KAAK,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAsB;IAChD,MAAM,GAAG,GAAW,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/E,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,GAAG,GAAG,aAAa,CAAC;IAC/B,CAAC;IACD,MAAM,KAAK,GAAW,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAS,EAAU,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/F,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC/E,OAAO,GAAG,GAAG,qCAAqC,KAAK,CAAC,MAAM,CAAC,QAAQ,aAAa,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,EAAE,CAAC;IAC1I,CAAC;IACD,OAAO,GAAG,GAAG,oCAAoC,KAAK,EAAE,CAAC;AAC7D,CAAC;AAEM,KAAK,UAAU,aAAa,CAAC,KAAsB;IACtD,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;IACpG,MAAM,UAAU,GAAW,eAAe,IAAI,mBAAmB,CAAC;IAClE,MAAM,MAAM,GAAkB,KAAK,CAAC,MAAM,IAAI,IAAA,mBAAU,EAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAE3E,eAAM,CAAC,KAAK,CAAC,wBAAwB,GAAG,kBAAkB,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAErF,2DAA2D;IAC3D,IAAI,CAAC,IAAA,6CAAmC,EAAC,WAAW,CAAC,EAAE,CAAC;QACpD,yEAAyE;QACzE,sEAAsE;QACtE,qEAAqE;QACrE,kEAAkE;QAClE,EAAE;QACF,oEAAoE;QACpE,+DAA+D;QAC/D,yEAAyE;QACzE,yEAAyE;QACzE,yEAAyE;QACzE,sEAAsE;QACtE,IAAI,IAAA,oCAAoB,EAAC,UAAU,CAAC,KAAK,MAAM,EAAE,CAAC;YAC9C,eAAM,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;YACnF,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAC5G,OAAO;gBACH,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE;;;;;4BAKG,GAAG;;;;;oDAKqB;aACvC,CAAC;QACN,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC9D,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5F,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,6DAA6D;IAC7D,MAAM,YAAY,GAAa,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACxE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,eAAM,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACzE,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QACnG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,6DAA6D;IAC7D,MAAM,SAAS,GAAqB,IAAA,yCAA+B,EAAC,WAAW,CAAC,CAAC;IACjF,MAAM,UAAU,GAAsB,YAAY,CAAC,GAAG,CAClD,CAAC,KAAa,EAAmB,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAChF,CAAC;IACF,MAAM,gBAAgB,GAAsB,UAAU,CAAC,MAAM,CAAC,CAAC,CAAkB,EAAW,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAEpH,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,YAAY,GAAY,UAAU,CAAC,KAAK,CAAC,CAAC,CAAkB,EAAW,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC;QAEnG,IAAI,YAAY,EAAE,CAAC;YACf,gEAAgE;YAChE,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACtG,MAAM,UAAU,GAAW,YAAY,kBAAkB,CAAC,GAAG,CAAC,iCAAiC,CAAC;YAChG,MAAM,cAAc,GAAW,qBAAqB,kBAAkB,CAAC,GAAG,CAAC,iCAAiC,CAAC;YAC7G,OAAO;gBACH,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE;;;;EAIvB,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;;;;;;;CAQpC,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;;;;;CAKxC,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;;;;;CAM3C,CAAC,CAAC,CAAC,EAAE;;EAEJ,UAAU;EACV,cAAc;uDACuC;aAC1C,CAAC;QACN,CAAC;QAED,iCAAiC;QACjC,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC9G,MAAM,OAAO,GAAW,gBAAgB;aACnC,GAAG,CAAC,CAAC,CAAkB,EAAU,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;aAC5D,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO;YACH,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;;;;EAInB,OAAO;;;gBAGO,kBAAkB,CAAC,GAAG,CAAC;gBACvB,kBAAkB,CAAC,GAAG,CAAC,iCAAiC;SAC/D,CAAC;IACN,CAAC;IAED,6DAA6D;IAC7D,IAAI,CAAC,IAAA,eAAU,EAAC,WAAW,CAAC,EAAE,CAAC;QAC3B,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QACxG,MAAM,aAAa,GAAW,IAAA,iCAAiB,EAAC,UAAU,CAAC;YACvD,CAAC,CAAC,6KAA6K;YAC/K,CAAC,CAAC,EAAE,CAAC;QACT,OAAO;YACH,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;;8DAEyC,aAAa;;;UAGjE,kBAAkB,CAAC,GAAG,CAAC,iCAAiC;SACzD,CAAC;IACN,CAAC;IAED,6DAA6D;IAC7D,IAAI,OAAuB,CAAC;IAC5B,IAAI,CAAC;QACD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,WAAW,EAAE,OAAO,CAAC,CAAmB,CAAC;IAC/E,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,eAAM,CAAC,KAAK,CAAC,2BAA2B,WAAW,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,WAAW,CAAC,CAAC;QACrB,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7G,OAAO;YACH,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;UACX,kBAAkB,CAAC,GAAG,CAAC,iCAAiC;SACzD,CAAC;IACN,CAAC;IAED,4EAA4E;IAC5E,wEAAwE;IACxE,oFAAoF;IACpF,4EAA4E;IAC5E,2CAA2C;IAC3C,MAAM,cAAc,GAAyB,YAAY,CAAC,GAAG,CACzD,CAAC,KAAa,EAAsB,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAC5E,CAAC;IACF,MAAM,eAAe,GAAyB,cAAc,CAAC,MAAM,CAC/D,CAAC,CAAqB,EAAW,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;IACF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,WAAW,CAAC,CAAC;QACrB,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7G,MAAM,OAAO,GAAW,eAAe;aAClC,GAAG,CAAC,CAAC,CAAqB,EAAU,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC;aAC3E,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO;YACH,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;EACnB,OAAO;;;UAGC,kBAAkB,CAAC,GAAG,CAAC,iCAAiC;SACzD,CAAC;IACN,CAAC;IAED,gEAAgE;IAChE,MAAM,MAAM,GAAW,OAAO,CAAC,MAAM,CAAC;IACtC,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACzC,OAAO,CAAC,WAAW,CAAC,CAAC;QACrB,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7G,OAAO;YACH,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,4BAA4B,MAAM;UAC7C,kBAAkB,CAAC,GAAG,CAAC,iCAAiC;SACzD,CAAC;IACN,CAAC;IAED,6EAA6E;IAC7E,MAAM,oBAAoB,GAAyB,cAAc,CAAC,MAAM,CACpE,CAAC,CAAqB,EAAW,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,KAAK,CAClE,CAAC;IACF,MAAM,eAAe,GAAoB,CAAC,MAAM,KAAK,MAAM,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IACpH,IAAI,MAAM,KAAK,MAAM,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;QAClD,eAAM,CAAC,KAAK,CACR,uEAAuE,oBAAoB;aACtF,GAAG,CAAC,CAAC,CAAqB,EAAU,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,CACnB,CAAC;IACN,CAAC;IAED,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;QAC7B,eAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACpD,IAAA,4BAAY,EAAC,UAAU,CAAC,CAAC;QACzB,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1G,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,uEAAuE;IACvE,MAAM,OAAO,GAAW,IAAA,gCAAgB,EAAC,UAAU,CAAC,CAAC;IACrD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7B,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACL,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACnC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,UAAU,IAAI,uBAAuB,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,MAAM,GAAW,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEjD,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;QACxB,OAAO,CAAC,WAAW,CAAC,CAAC;QACrB,IAAA,4BAAY,EAAC,UAAU,CAAC,CAAC;QACzB,qEAAqE;QACrE,sEAAsE;QACtE,MAAM,IAAA,+BAAe,EAAC,UAAU,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;QACvE,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAClH,OAAO;YACH,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,uBAAuB,UAAU;;;MAGhD,MAAM;;4CAEgC;SACnC,CAAC;IACN,CAAC;IAED,OAAO,CAAC,WAAW,CAAC,CAAC;IACrB,MAAM,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC1G,OAAO;QACH,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,gCAAgC,OAAO,IAAI,UAAU;;;MAGhE,MAAM;;;oEAGwD;KAC/D,CAAC;AACN,CAAC;AAED,KAAK,UAAU,YAAY,CACvB,WAAmB,EACnB,UAAkB,EAClB,SAAiB,EACjB,MAAyB,EACzB,MAAc,EACd,KAAe,EACf,UAAmB;IAEnB,MAAM,MAAM,GAAgC;QACxC,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;QAC1B,IAAI,EAAE,wBAAwB;QAC9B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,WAAW,EAAE,IAAA,mCAAmB,EAAC,UAAU,CAAE;QAC7C,MAAM;QACN,MAAM;QACN,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC;IACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,IAAA,sCAA0B,EAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAC5E,CAAC"}