@paths.design/caws-cli 11.1.6 → 11.1.8

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 (190) hide show
  1. package/README.md +1 -1
  2. package/dist/index.js +55 -58
  3. package/dist/init/hook-packs/manifest-claude-code.d.ts +1 -1
  4. package/dist/init/hook-packs/manifest-claude-code.d.ts.map +1 -1
  5. package/dist/init/hook-packs/manifest-claude-code.js +317 -6
  6. package/dist/init/hook-packs/manifest-claude-code.js.map +1 -1
  7. package/dist/init/hook-packs/types.js +1 -1
  8. package/dist/init/hook-packs/types.js.map +1 -1
  9. package/dist/shell/binding/resolve-binding.d.ts.map +1 -1
  10. package/dist/shell/binding/resolve-binding.js +105 -1
  11. package/dist/shell/binding/resolve-binding.js.map +1 -1
  12. package/dist/shell/binding/types.d.ts +47 -3
  13. package/dist/shell/binding/types.d.ts.map +1 -1
  14. package/dist/shell/command-metadata.d.ts +93 -0
  15. package/dist/shell/command-metadata.d.ts.map +1 -0
  16. package/dist/shell/command-metadata.js +687 -0
  17. package/dist/shell/command-metadata.js.map +1 -0
  18. package/dist/shell/commands/agents.d.ts +48 -0
  19. package/dist/shell/commands/agents.d.ts.map +1 -0
  20. package/dist/shell/commands/agents.js +577 -0
  21. package/dist/shell/commands/agents.js.map +1 -0
  22. package/dist/shell/commands/claim.d.ts +16 -0
  23. package/dist/shell/commands/claim.d.ts.map +1 -1
  24. package/dist/shell/commands/claim.js +88 -30
  25. package/dist/shell/commands/claim.js.map +1 -1
  26. package/dist/shell/commands/events.d.ts +106 -0
  27. package/dist/shell/commands/events.d.ts.map +1 -0
  28. package/dist/shell/commands/events.js +510 -0
  29. package/dist/shell/commands/events.js.map +1 -0
  30. package/dist/shell/commands/gates.d.ts +2 -2
  31. package/dist/shell/commands/gates.d.ts.map +1 -1
  32. package/dist/shell/commands/gates.js +106 -25
  33. package/dist/shell/commands/gates.js.map +1 -1
  34. package/dist/shell/commands/init.d.ts.map +1 -1
  35. package/dist/shell/commands/init.js +26 -0
  36. package/dist/shell/commands/init.js.map +1 -1
  37. package/dist/shell/commands/prepush.d.ts +26 -0
  38. package/dist/shell/commands/prepush.d.ts.map +1 -0
  39. package/dist/shell/commands/prepush.js +373 -0
  40. package/dist/shell/commands/prepush.js.map +1 -0
  41. package/dist/shell/commands/scope.d.ts.map +1 -1
  42. package/dist/shell/commands/scope.js +31 -1
  43. package/dist/shell/commands/scope.js.map +1 -1
  44. package/dist/shell/commands/specs.d.ts +44 -3
  45. package/dist/shell/commands/specs.d.ts.map +1 -1
  46. package/dist/shell/commands/specs.js +411 -15
  47. package/dist/shell/commands/specs.js.map +1 -1
  48. package/dist/shell/commands/status.d.ts +12 -0
  49. package/dist/shell/commands/status.d.ts.map +1 -1
  50. package/dist/shell/commands/status.js +236 -21
  51. package/dist/shell/commands/status.js.map +1 -1
  52. package/dist/shell/commands/worktree.d.ts +9 -0
  53. package/dist/shell/commands/worktree.d.ts.map +1 -1
  54. package/dist/shell/commands/worktree.js +353 -1
  55. package/dist/shell/commands/worktree.js.map +1 -1
  56. package/dist/shell/gates/disposition.d.ts.map +1 -1
  57. package/dist/shell/gates/disposition.js +43 -2
  58. package/dist/shell/gates/disposition.js.map +1 -1
  59. package/dist/shell/index.d.ts +14 -6
  60. package/dist/shell/index.d.ts.map +1 -1
  61. package/dist/shell/index.js +32 -1
  62. package/dist/shell/index.js.map +1 -1
  63. package/dist/shell/legacy-command-map.js +832 -0
  64. package/dist/shell/push-range/classify-range.d.ts +99 -0
  65. package/dist/shell/push-range/classify-range.d.ts.map +1 -0
  66. package/dist/shell/push-range/classify-range.js +155 -0
  67. package/dist/shell/push-range/classify-range.js.map +1 -0
  68. package/dist/shell/push-range/scope-match.d.ts +13 -0
  69. package/dist/shell/push-range/scope-match.d.ts.map +1 -0
  70. package/dist/shell/push-range/scope-match.js +53 -0
  71. package/dist/shell/push-range/scope-match.js.map +1 -0
  72. package/dist/shell/register.d.ts.map +1 -1
  73. package/dist/shell/register.js +350 -165
  74. package/dist/shell/register.js.map +1 -1
  75. package/dist/shell/registered-command-groups.js +48 -0
  76. package/dist/shell/render/status.d.ts +7 -1
  77. package/dist/shell/render/status.d.ts.map +1 -1
  78. package/dist/shell/render/status.js +72 -0
  79. package/dist/shell/render/status.js.map +1 -1
  80. package/dist/shell/rules.d.ts +19 -0
  81. package/dist/shell/rules.d.ts.map +1 -1
  82. package/dist/shell/rules.js +27 -0
  83. package/dist/shell/rules.js.map +1 -1
  84. package/dist/shell/session/resolve-session.d.ts +29 -1
  85. package/dist/shell/session/resolve-session.d.ts.map +1 -1
  86. package/dist/shell/session/resolve-session.js +817 -11
  87. package/dist/shell/session/resolve-session.js.map +1 -1
  88. package/dist/shell/session/types.d.ts +127 -1
  89. package/dist/shell/session/types.d.ts.map +1 -1
  90. package/dist/shell/session/types.js +10 -4
  91. package/dist/shell/session/types.js.map +1 -1
  92. package/dist/store/agents-store.d.ts.map +1 -1
  93. package/dist/store/agents-store.js +9 -0
  94. package/dist/store/agents-store.js.map +1 -1
  95. package/dist/store/apply-patch.d.ts.map +1 -1
  96. package/dist/store/apply-patch.js +15 -0
  97. package/dist/store/apply-patch.js.map +1 -1
  98. package/dist/store/doctor-snapshot.d.ts.map +1 -1
  99. package/dist/store/doctor-snapshot.js +169 -3
  100. package/dist/store/doctor-snapshot.js.map +1 -1
  101. package/dist/store/events-migration.d.ts +207 -0
  102. package/dist/store/events-migration.d.ts.map +1 -0
  103. package/dist/store/events-migration.js +358 -0
  104. package/dist/store/events-migration.js.map +1 -0
  105. package/dist/store/events-store.d.ts +47 -1
  106. package/dist/store/events-store.d.ts.map +1 -1
  107. package/dist/store/events-store.js +278 -0
  108. package/dist/store/events-store.js.map +1 -1
  109. package/dist/store/git-autocommit.d.ts +46 -0
  110. package/dist/store/git-autocommit.d.ts.map +1 -0
  111. package/dist/store/git-autocommit.js +198 -0
  112. package/dist/store/git-autocommit.js.map +1 -0
  113. package/dist/store/git-sparse-checkout.d.ts +25 -0
  114. package/dist/store/git-sparse-checkout.d.ts.map +1 -0
  115. package/dist/store/git-sparse-checkout.js +101 -0
  116. package/dist/store/git-sparse-checkout.js.map +1 -0
  117. package/dist/store/index.d.ts +6 -1
  118. package/dist/store/index.d.ts.map +1 -1
  119. package/dist/store/index.js +16 -1
  120. package/dist/store/index.js.map +1 -1
  121. package/dist/store/leases-store.d.ts +89 -0
  122. package/dist/store/leases-store.d.ts.map +1 -0
  123. package/dist/store/leases-store.js +427 -0
  124. package/dist/store/leases-store.js.map +1 -0
  125. package/dist/store/lifecycle-transaction.d.ts.map +1 -1
  126. package/dist/store/lifecycle-transaction.js +34 -1
  127. package/dist/store/lifecycle-transaction.js.map +1 -1
  128. package/dist/store/rules.d.ts +74 -1
  129. package/dist/store/rules.d.ts.map +1 -1
  130. package/dist/store/rules.js +76 -0
  131. package/dist/store/rules.js.map +1 -1
  132. package/dist/store/specs-migration.d.ts +128 -0
  133. package/dist/store/specs-migration.d.ts.map +1 -0
  134. package/dist/store/specs-migration.js +481 -0
  135. package/dist/store/specs-migration.js.map +1 -0
  136. package/dist/store/specs-store.d.ts.map +1 -1
  137. package/dist/store/specs-store.js +14 -2
  138. package/dist/store/specs-store.js.map +1 -1
  139. package/dist/store/specs-writer.d.ts +130 -3
  140. package/dist/store/specs-writer.d.ts.map +1 -1
  141. package/dist/store/specs-writer.js +941 -102
  142. package/dist/store/specs-writer.js.map +1 -1
  143. package/dist/store/types.d.ts +31 -1
  144. package/dist/store/types.d.ts.map +1 -1
  145. package/dist/store/waivers-store.d.ts.map +1 -1
  146. package/dist/store/waivers-store.js +8 -1
  147. package/dist/store/waivers-store.js.map +1 -1
  148. package/dist/store/worktrees-migration.d.ts +141 -0
  149. package/dist/store/worktrees-migration.d.ts.map +1 -0
  150. package/dist/store/worktrees-migration.js +356 -0
  151. package/dist/store/worktrees-migration.js.map +1 -0
  152. package/dist/store/worktrees-writer.d.ts +28 -0
  153. package/dist/store/worktrees-writer.d.ts.map +1 -1
  154. package/dist/store/worktrees-writer.js +147 -13
  155. package/dist/store/worktrees-writer.js.map +1 -1
  156. package/package.json +5 -2
  157. package/templates/hook-packs/claude-code/CLAUDE.md +11 -5
  158. package/templates/hook-packs/claude-code/agent-heartbeat.sh +131 -0
  159. package/templates/hook-packs/claude-code/agent-register.sh +62 -0
  160. package/templates/hook-packs/claude-code/agent-stop.sh +51 -0
  161. package/templates/hook-packs/claude-code/audit.sh +1 -1
  162. package/templates/hook-packs/claude-code/block-dangerous.sh +1 -1
  163. package/templates/hook-packs/claude-code/classify_command.py +1 -1
  164. package/templates/hook-packs/claude-code/cwd-guard.sh +30 -0
  165. package/templates/hook-packs/claude-code/dispatch/post_tool_use.sh +15 -4
  166. package/templates/hook-packs/claude-code/dispatch/pre_tool_use.sh +19 -2
  167. package/templates/hook-packs/claude-code/dispatch/session_start.sh +6 -2
  168. package/templates/hook-packs/claude-code/dispatch/stop.sh +7 -2
  169. package/templates/hook-packs/claude-code/duplicate-export-check.sh +156 -0
  170. package/templates/hook-packs/claude-code/god-object-check.sh +102 -0
  171. package/templates/hook-packs/claude-code/guard-strikes.sh +1 -1
  172. package/templates/hook-packs/claude-code/lib/parse-input.sh +115 -1
  173. package/templates/hook-packs/claude-code/lib/run-handlers.sh +1 -1
  174. package/templates/hook-packs/claude-code/loc-delta-check.sh +91 -0
  175. package/templates/hook-packs/claude-code/naming-check.sh +128 -0
  176. package/templates/hook-packs/claude-code/plan-transcript-finalize.sh +59 -0
  177. package/templates/hook-packs/claude-code/plan-transcript-snapshot.sh +86 -0
  178. package/templates/hook-packs/claude-code/protected-paths.sh +59 -0
  179. package/templates/hook-packs/claude-code/quiet-merge.sh +68 -0
  180. package/templates/hook-packs/claude-code/reset-danger-latch.sh +1 -1
  181. package/templates/hook-packs/claude-code/reset-strikes.sh +1 -1
  182. package/templates/hook-packs/claude-code/runtime-paths.sh +1 -1
  183. package/templates/hook-packs/claude-code/scan-secrets.sh +98 -0
  184. package/templates/hook-packs/claude-code/scope-guard.sh +47 -65
  185. package/templates/hook-packs/claude-code/session-caws-status.sh +7 -1
  186. package/templates/hook-packs/claude-code/session-log.sh +1 -1
  187. package/templates/hook-packs/claude-code/session_log_renderer.py +956 -0
  188. package/templates/hook-packs/claude-code/shortcut-language-check.sh +147 -0
  189. package/templates/hook-packs/claude-code/worktree-guard.sh +130 -4
  190. package/templates/hook-packs/claude-code/worktree-write-guard.sh +133 -18
@@ -69,12 +69,15 @@ const fs = __importStar(require("fs"));
69
69
  const path = __importStar(require("path"));
70
70
  const caws_kernel_1 = require("@paths.design/caws-kernel");
71
71
  const apply_patch_1 = require("./apply-patch");
72
+ const git_autocommit_1 = require("./git-autocommit");
73
+ const git_sparse_checkout_1 = require("./git-sparse-checkout");
72
74
  const specs_writer_1 = require("./specs-writer");
73
75
  const specs_store_1 = require("./specs-store");
74
76
  Object.defineProperty(exports, "loadSpecs", { enumerable: true, get: function () { return specs_store_1.loadSpecs; } });
75
77
  const worktrees_store_1 = require("./worktrees-store");
76
78
  const lifecycle_transaction_1 = require("./lifecycle-transaction");
77
79
  const lifecycle_lock_1 = require("./lifecycle-lock");
80
+ const resolve_session_1 = require("../shell/session/resolve-session");
78
81
  const repo_root_1 = require("./repo-root");
79
82
  const rules_1 = require("./rules");
80
83
  const yaml_patch_1 = require("./yaml-patch");
@@ -86,6 +89,49 @@ function specPath(cawsDir, id) {
86
89
  function worktreePathFor(cawsDir, name) {
87
90
  return path.join(cawsDir, 'worktrees', name);
88
91
  }
92
+ function registryRelPath(cawsDir, repoRoot) {
93
+ return path.relative(repoRoot, path.join(cawsDir, 'worktrees.json'));
94
+ }
95
+ function specRelPath(cawsDir, specId, repoRoot) {
96
+ return path.relative(repoRoot, specPath(cawsDir, specId));
97
+ }
98
+ function capturePreWriteState(cawsDir, specId) {
99
+ const repoRoot = repoRootFromCawsDir(cawsDir);
100
+ const registryPath = registryRelPath(cawsDir, repoRoot);
101
+ return {
102
+ registryWasDirty: (0, git_autocommit_1.isPathDirty)(repoRoot, registryPath),
103
+ specWasDirty: specId === null
104
+ ? false
105
+ : (0, git_autocommit_1.isPathDirty)(repoRoot, specRelPath(cawsDir, specId, repoRoot)),
106
+ };
107
+ }
108
+ function autoCommitTransition(cawsDir, specId, name, action, preState) {
109
+ const repoRoot = repoRootFromCawsDir(cawsDir);
110
+ const registryPath = registryRelPath(cawsDir, repoRoot);
111
+ const paths = [registryPath];
112
+ if (specId !== null) {
113
+ paths.push(specRelPath(cawsDir, specId, repoRoot));
114
+ }
115
+ const verbForAction = {
116
+ created: 'bind',
117
+ bound: 'bind',
118
+ destroyed: 'destroy',
119
+ merged: 'close',
120
+ };
121
+ const verb = verbForAction[action];
122
+ const specSuffix = specId !== null && (action === 'created' || action === 'bound')
123
+ ? ` to ${specId}`
124
+ : '';
125
+ const message = action === 'merged' && specId !== null
126
+ ? `chore(caws): close ${specId} post-merge of ${name}`
127
+ : `chore(caws): ${verb} ${name}${specSuffix}`;
128
+ return (0, git_autocommit_1.autoCommit)({
129
+ repoRoot,
130
+ paths,
131
+ message,
132
+ wasDirtyBeforeWrite: preState.registryWasDirty || preState.specWasDirty,
133
+ });
134
+ }
89
135
  // ─── Git helpers ─────────────────────────────────────────────────────────
90
136
  function runGit(args, cwd) {
91
137
  try {
@@ -194,6 +240,11 @@ function patchSpecClearWorktree(source) {
194
240
  // ─── createWorktree ──────────────────────────────────────────────────────
195
241
  function createWorktree(cawsDir, input) {
196
242
  // ─ Pre-flight validation (no git, no file writes) ─
243
+ // CAWS-FIRST-CONTACT-UX-001 Fix 5: capture dirty state BEFORE any
244
+ // writer mutation lands, so the auto-commit step can distinguish
245
+ // "writer made the only change" from "writer's change on top of
246
+ // someone else's uncommitted change".
247
+ const preState = capturePreWriteState(cawsDir, input.specId);
197
248
  const nameValidation = validateWorktreeName(input.name);
198
249
  if (!nameValidation.ok)
199
250
  return nameValidation;
@@ -226,10 +277,45 @@ function createWorktree(cawsDir, input) {
226
277
  const branch = input.branch ?? input.name;
227
278
  const wtPath = worktreePathFor(cawsDir, input.name);
228
279
  // ─ Git operation: outside lifecycle-transaction ─
229
- const gitResult = runGit(['worktree', 'add', '-b', branch, wtPath, baseBranch], repoRoot);
280
+ //
281
+ // Three-step sequence enforcing the control-plane-state-authority
282
+ // contract (WORKTREE-SPEC-AUTHORITY-CONTROL-PLANE-001 A1):
283
+ //
284
+ // 1. `git worktree add --no-checkout` — register the linked
285
+ // worktree without materializing any tracked files.
286
+ // 2. `configureWorktreeSparseCheckout(wtPath)` — install non-cone
287
+ // sparse-checkout patterns that include everything EXCEPT
288
+ // `.caws/specs/` so the .caws/specs/ tree is never written
289
+ // to the worktree filesystem.
290
+ // 3. `git checkout` (inside the helper) — materialize the
291
+ // included files.
292
+ //
293
+ // Net effect: the worktree carries the full source tree (so
294
+ // cross-module imports work) but does NOT carry an editable
295
+ // .caws/specs/<id>.yaml — preventing the v10.2 split-brain
296
+ // authority class where authority decisions could read divergent
297
+ // worktree-local copies.
298
+ const gitResult = runGit(['worktree', 'add', '--no-checkout', '-b', branch, wtPath, baseBranch], repoRoot);
230
299
  if (!gitResult.ok) {
231
300
  return (0, caws_kernel_1.err)((0, repo_root_1.storeDiagnostic)(rules_1.STORE_RULES.LIFECYCLE_PLAN_REJECTED, `git worktree add failed: ${gitResult.reason}`, { subject: input.name, data: { git_stderr: gitResult.reason } }));
232
301
  }
302
+ // Configure sparse-checkout to exclude .caws/specs/ from the worktree.
303
+ // Failure here triggers compensation: `git worktree remove --force`
304
+ // tears down the linked worktree (registered by the previous step)
305
+ // and its associated sparse-checkout state under
306
+ // `.git/worktrees/<name>/info/sparse-checkout`. The control-plane
307
+ // .caws/ directory is unchanged.
308
+ const sparseResult = (0, git_sparse_checkout_1.configureWorktreeSparseCheckout)(wtPath);
309
+ if (!sparseResult.ok) {
310
+ rollbackGitWorktree(repoRoot, wtPath);
311
+ return (0, caws_kernel_1.err)((0, repo_root_1.storeDiagnostic)(rules_1.STORE_RULES.LIFECYCLE_PLAN_REJECTED, `git sparse-checkout configuration failed (step: ${sparseResult.step}): ${sparseResult.reason}`, {
312
+ subject: input.name,
313
+ data: {
314
+ git_stderr: sparseResult.reason,
315
+ sparse_checkout_step: sparseResult.step,
316
+ },
317
+ }));
318
+ }
233
319
  // ─ Lifecycle transaction: spec.worktree patch + worktrees.json patch
234
320
  // + two events. If anything fails, run git worktree remove as
235
321
  // compensation. ─
@@ -299,11 +385,18 @@ function createWorktree(cawsDir, input) {
299
385
  cause: txnOutcome.value.cause,
300
386
  });
301
387
  }
388
+ const autoCommitOutcome = autoCommitTransition(cawsDir, input.specId, input.name, 'created', preState);
302
389
  return (0, caws_kernel_1.ok)({
303
390
  kind: 'success',
304
391
  name: input.name,
305
392
  action: 'created',
306
- data: { branch, base_branch: baseBranch, path: wtPath, spec_id: input.specId },
393
+ data: {
394
+ branch,
395
+ base_branch: baseBranch,
396
+ path: wtPath,
397
+ spec_id: input.specId,
398
+ audit_commit: autoCommitOutcome,
399
+ },
307
400
  });
308
401
  }
309
402
  function rollbackGitWorktree(repoRoot, wtPath) {
@@ -351,6 +444,8 @@ function augmentRegistryEntry(cawsDir, name, extra) {
351
444
  }
352
445
  // ─── bindWorktree (repair) ───────────────────────────────────────────────
353
446
  function bindWorktreeRepair(cawsDir, input) {
447
+ // CAWS-FIRST-CONTACT-UX-001 Fix 5: capture dirty state for autocommit.
448
+ const preState = capturePreWriteState(cawsDir, input.specId);
354
449
  const nameValidation = validateWorktreeName(input.name);
355
450
  if (!nameValidation.ok)
356
451
  return nameValidation;
@@ -404,7 +499,13 @@ function bindWorktreeRepair(cawsDir, input) {
404
499
  if (txnOutcome.value.kind !== 'success') {
405
500
  return (0, caws_kernel_1.ok)({ kind: 'partial_failure_recovered', cause: txnOutcome.value.cause });
406
501
  }
407
- return (0, caws_kernel_1.ok)({ kind: 'success', name: input.name, action: 'bound' });
502
+ const autoCommitOutcome = autoCommitTransition(cawsDir, input.specId, input.name, 'bound', preState);
503
+ return (0, caws_kernel_1.ok)({
504
+ kind: 'success',
505
+ name: input.name,
506
+ action: 'bound',
507
+ data: { audit_commit: autoCommitOutcome },
508
+ });
408
509
  }
409
510
  // ─── destroyWorktree ─────────────────────────────────────────────────────
410
511
  function destroyWorktree(cawsDir, input) {
@@ -415,15 +516,26 @@ function destroyWorktree(cawsDir, input) {
415
516
  if (!(0, caws_kernel_1.isOk)(registry))
416
517
  return (0, caws_kernel_1.err)(registry.errors);
417
518
  const entry = registry.value[input.name];
519
+ // CAWS-FIRST-CONTACT-UX-001 Fix 5: capture pre-write state once we
520
+ // know the bound spec (entry may have no specId for legacy entries).
521
+ const preStateSpecId = entry !== undefined && entry.specId !== undefined ? entry.specId : null;
522
+ const preState = capturePreWriteState(cawsDir, preStateSpecId);
418
523
  if (entry === undefined) {
419
524
  return (0, caws_kernel_1.err)((0, repo_root_1.storeDiagnostic)(rules_1.STORE_RULES.LIFECYCLE_PLAN_REJECTED, `Worktree "${input.name}" not found in registry.`, { subject: input.name }));
420
525
  }
421
- // Ownership check: refuse foreign session unless takeover already
422
- // happened in a separate step (caws claim --takeover writes a
423
- // prior_owners audit; ownership then matches and we proceed).
424
- if (entry.owner !== undefined &&
425
- entry.owner.session_id !== input.session.session_id) {
426
- return (0, caws_kernel_1.err)((0, repo_root_1.storeDiagnostic)(rules_1.STORE_RULES.LIFECYCLE_PLAN_REJECTED, `Worktree "${input.name}" is owned by a different session (${entry.owner.session_id}). Run 'caws claim ${input.name} --takeover' first if you need to take ownership.`, { subject: input.name }));
526
+ // Ownership check: admit if ANY identity the invoker can speak for
527
+ // matches the registered owner (CAWS-WORKTREE-DESTROY-SESSION-
528
+ // RESOLUTION-001). The candidate set is built by the caller via
529
+ // resolveSessionCandidates() and is INSENSITIVE to cwd, so a destroy
530
+ // issued from canonical after a `claim --takeover` from inside the
531
+ // worktree finds the worktree-keyed capsule among the candidates and
532
+ // succeeds. A genuinely-foreign session has no candidate that matches
533
+ // entry.owner.session_id, so the refusal still fires.
534
+ if (entry.owner !== undefined) {
535
+ const matched = (0, resolve_session_1.admitsOwner)(input.sessionCandidates, entry.owner.session_id);
536
+ if (matched === null) {
537
+ return (0, caws_kernel_1.err)((0, repo_root_1.storeDiagnostic)(rules_1.STORE_RULES.LIFECYCLE_PLAN_REJECTED, `Worktree "${input.name}" is owned by a different session (${entry.owner.session_id}). Run 'caws claim ${input.name} --takeover' first if you need to take ownership.\n\nSession-resolution trace (no candidate matched the registered owner):\n${(0, resolve_session_1.describeCandidateTrace)(input.sessionCandidates)}`, { subject: input.name }));
538
+ }
427
539
  }
428
540
  // Dirty-tree check.
429
541
  const wtPath = entry.path ?? worktreePathFor(cawsDir, input.name);
@@ -492,11 +604,15 @@ function destroyWorktree(cawsDir, input) {
492
604
  if (txnOutcome.value.kind !== 'success') {
493
605
  return (0, caws_kernel_1.ok)({ kind: 'partial_failure_recovered', cause: txnOutcome.value.cause });
494
606
  }
607
+ const autoCommitOutcome = autoCommitTransition(cawsDir, preStateSpecId, input.name, 'destroyed', preState);
495
608
  return (0, caws_kernel_1.ok)({
496
609
  kind: 'success',
497
610
  name: input.name,
498
611
  action: 'destroyed',
499
- data: { removed_git_worktree: removedGitWorktree },
612
+ data: {
613
+ removed_git_worktree: removedGitWorktree,
614
+ audit_commit: autoCommitOutcome,
615
+ },
500
616
  });
501
617
  }
502
618
  // ─── mergeWorktree ───────────────────────────────────────────────────────
@@ -508,13 +624,24 @@ function mergeWorktree(cawsDir, input) {
508
624
  if (!(0, caws_kernel_1.isOk)(registry))
509
625
  return (0, caws_kernel_1.err)(registry.errors);
510
626
  const entry = registry.value[input.name];
627
+ // CAWS-FIRST-CONTACT-UX-001 Fix 5: capture pre-write state for the
628
+ // post-merge auto-commit step.
629
+ const preStateSpecId = entry !== undefined && entry.specId !== undefined ? entry.specId : null;
630
+ const preState = capturePreWriteState(cawsDir, preStateSpecId);
511
631
  if (entry === undefined) {
512
632
  return (0, caws_kernel_1.err)((0, repo_root_1.storeDiagnostic)(rules_1.STORE_RULES.LIFECYCLE_PLAN_REJECTED, `Worktree "${input.name}" not found in registry.`, { subject: input.name }));
513
633
  }
514
634
  // Validate prerequisites.
515
635
  const findings = [];
516
- if (entry.owner !== undefined && entry.owner.session_id !== input.session.session_id) {
517
- findings.push(`worktree is owned by a different session (${entry.owner.session_id})`);
636
+ // Ownership: same multi-candidate admission semantic as destroyWorktree.
637
+ // Merge is structurally an ownership-comparison surface the invoker
638
+ // must be the registered owner. See CAWS-WORKTREE-DESTROY-SESSION-
639
+ // RESOLUTION-001 closure_notes Option E for the why.
640
+ if (entry.owner !== undefined) {
641
+ const matched = (0, resolve_session_1.admitsOwner)(input.sessionCandidates, entry.owner.session_id);
642
+ if (matched === null) {
643
+ findings.push(`worktree is owned by a different session (${entry.owner.session_id})`);
644
+ }
518
645
  }
519
646
  const wtPath = entry.path ?? worktreePathFor(cawsDir, input.name);
520
647
  if (fs.existsSync(wtPath) && !isWorkingTreeClean(wtPath)) {
@@ -648,6 +775,7 @@ function mergeWorktree(cawsDir, input) {
648
775
  const destroyResult = destroyWorktree(cawsDir, {
649
776
  name: input.name,
650
777
  session: input.session,
778
+ sessionCandidates: input.sessionCandidates,
651
779
  actor: input.actor,
652
780
  now: sharedNowFactory,
653
781
  });
@@ -662,11 +790,17 @@ function mergeWorktree(cawsDir, input) {
662
790
  },
663
791
  }));
664
792
  }
793
+ const autoCommitOutcome = autoCommitTransition(cawsDir, preStateSpecId, input.name, 'merged', preState);
665
794
  return (0, caws_kernel_1.ok)({
666
795
  kind: 'success',
667
796
  name: input.name,
668
797
  action: 'merged',
669
- data: { merge_commit: mergeCommit, spec_id: specId, auto_closed_spec: true },
798
+ data: {
799
+ merge_commit: mergeCommit,
800
+ spec_id: specId,
801
+ auto_closed_spec: true,
802
+ audit_commit: autoCommitOutcome,
803
+ },
670
804
  });
671
805
  }
672
806
  function listWorktreesPretty(cawsDir) {
@@ -1 +1 @@
1
- {"version":3,"file":"worktrees-writer.js","sourceRoot":"","sources":["../../src/store/worktrees-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worktrees-writer.js","sourceRoot":"","sources":["../../src/store/worktrees-writer.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,EAAE;AACF,YAAY;AACZ,mEAAmE;AACnE,+CAA+C;AAC/C,iEAAiE;AACjE,mDAAmD;AACnD,wEAAwE;AACxE,qDAAqD;AACrD,EAAE;AACF,yBAAyB;AACzB,uEAAuE;AACvE,sEAAsE;AACtE,qEAAqE;AACrE,sEAAsE;AACtE,qDAAqD;AACrD,kEAAkE;AAClE,qDAAqD;AACrD,EAAE;AACF,gCAAgC;AAChC,oEAAoE;AACpE,oEAAoE;AACpE,8CAA8C;AAC9C,sEAAsE;AACtE,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0X9B,wCAoOC;AAkDD,gDAwFC;AAID,0CA0JC;AAID,sCAqRC;AAkBD,kDAmBC;AAlsCD,iDAA6C;AAC7C,uCAAyB;AACzB,2CAA6B;AAE7B,2DAUmC;AAEnC,+CAAmD;AACnD,qDAAmF;AACnF,+DAAwE;AACxE,iDAA2C;AAC3C,+CAA0C;AAmrCjC,0FAnrCA,uBAAS,OAmrCA;AAlrClB,uDAAkD;AAClD,mEAAkE;AAClE,qDAAqD;AACrD,sEAG0C;AAE1C,2CAA8C;AAC9C,mCAAsC;AACtC,6CAIsB;AACtB,6CAA8C;AA+F9C,4EAA4E;AAE5E,SAAS,QAAQ,CAAC,OAAe,EAAE,EAAU;IAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AACD,SAAS,eAAe,CAAC,OAAe,EAAE,IAAY;IACpD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC;AACD,SAAS,eAAe,CAAC,OAAe,EAAE,QAAgB;IACxD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;AACvE,CAAC;AACD,SAAS,WAAW,CAClB,OAAe,EACf,MAAc,EACd,QAAgB;IAEhB,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAmBD,SAAS,oBAAoB,CAC3B,OAAe,EACf,MAAqB;IAErB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,OAAO;QACL,gBAAgB,EAAE,IAAA,4BAAW,EAAC,QAAQ,EAAE,YAAY,CAAC;QACrD,YAAY,EACV,MAAM,KAAK,IAAI;YACb,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAA,4BAAW,EAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAe,EACf,MAAqB,EACrB,IAAY,EACZ,MAAoD,EACpD,QAAuB;IAEvB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,MAAM,KAAK,GAAa,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,aAAa,GAAkC;QACnD,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,OAAO;KAChB,CAAC;IACF,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,UAAU,GACd,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,OAAO,CAAC;QAC7D,CAAC,CAAC,OAAO,MAAM,EAAE;QACjB,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,OAAO,GACX,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QACpC,CAAC,CAAC,sBAAsB,MAAM,kBAAkB,IAAI,EAAE;QACtD,CAAC,CAAC,gBAAgB,IAAI,IAAI,IAAI,GAAG,UAAU,EAAE,CAAC;IAClD,OAAO,IAAA,2BAAU,EAAC;QAChB,QAAQ;QACR,KAAK;QACL,OAAO;QACP,mBAAmB,EAAE,QAAQ,CAAC,gBAAgB,IAAI,QAAQ,CAAC,YAAY;KACxE,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAE5E,SAAS,MAAM,CAAC,IAAuB,EAAE,GAAW;IAClD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,4BAAY,EAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE;YAC5C,GAAG;YACH,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;SAClC,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;IACjD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,CAAmD,CAAC;QAClE,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,YAAY,MAAM;YAC5B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;YACzB,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;gBAChC,CAAC,CAAC,KAAK,CAAC,MAAM;gBACd,CAAC,CAAC,EAAE,CAAC;QACX,MAAM,OAAO,GAAW,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,OAAO,IAAI,mBAAmB,EAAE,CAAC;IACzE,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAe;IAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,CAAC,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,YAAoB;IAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB,EAAE,MAAc,EAAE,IAAY;IACpE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1E,8EAA8E;IAC9E,OAAO,CAAC,CAAC,EAAE,CAAC;AACd,CAAC;AAED,4EAA4E;AAE5E,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAC/C,MAAM,eAAe,GAAG,yCAAyC,CAAC;AAElE,SAAS,oBAAoB,CAAC,IAAY;IACxC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,kBAAkB,IAAI,sEAAsE,EAC5F,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CACF,CAAC;IACJ,CAAC;IACD,OAAO,IAAA,gBAAE,EAAC,IAAa,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,cAAc,CAAC,EAAU;IAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,YAAY,EAAE,mCAAmC,EACjD,EAAE,OAAO,EAAE,EAAE,EAAE,CAChB,CACF,CAAC;IACJ,CAAC;IACD,OAAO,IAAA,gBAAE,EAAC,IAAa,CAAC,CAAC;AAC3B,CAAC;AAED,4EAA4E;AAE5E,SAAS,eAAe,CAAC,OAAe,EAAE,MAAc;IAOtD,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,SAAS,MAAM,kBAAkB,CAAC,GAAG,EACrC,EAAE,OAAO,EAAE,MAAM,EAAE,CACpB,CACF,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,IAAA,2BAAc,EAAC,CAAC,CAAC,CAAC;IACpC,IAAI,CAAC,IAAA,kBAAI,EAAC,SAAS,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAA,kCAAoB,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,CAAC,IAAA,kBAAI,EAAC,MAAM,CAAC,EAAE,CAAC;QAClB,OAAO,IAAA,iBAAG,EACR,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACtB,IAAA,2BAAe,EAAC,mBAAW,CAAC,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE;YAC9D,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,MAAM;YAC5B,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE;SAC9B,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,KAGnB,CAAC;IACF,OAAO,IAAA,gBAAE,EAAC;QACR,MAAM,EAAE,SAAS,CAAC,KAAK;QACvB,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,MAAM,CAAC,KAAc;QAC3B,cAAc,EAAE,IAAI,CAAC,eAAe;QACpC,eAAe,EAAE,IAAI,CAAC,QAAQ;KAC/B,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAE5E;sEACsE;AACtE,SAAS,oBAAoB,CAC3B,MAAc,EACd,YAAoB;IAEpB,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,IAAA,8BAAiB,EAAC,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,IAAA,sCAAyB,EAC9B,MAAM,EACN,iBAAiB,EACjB,UAAU,EACV,YAAY,CACb,CAAC;AACJ,CAAC;AAED;;;;;;;;;;4BAU4B;AAC5B,SAAS,sBAAsB,CAAC,MAAc;IAC5C,OAAO,IAAA,iCAAoB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAClD,CAAC;AAED,4EAA4E;AAE5E,SAAgB,cAAc,CAC5B,OAAe,EACf,KAA0B;IAE1B,qDAAqD;IAErD,kEAAkE;IAClE,iEAAiE;IACjE,gEAAgE;IAChE,sCAAsC;IACtC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE7D,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAC9C,MAAM,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAE9C,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,QAAQ,CAAC,KAAK,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;QAC/C,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,SAAS,KAAK,CAAC,MAAM,4BAA4B,QAAQ,CAAC,KAAK,CAAC,cAAc,sDAAsD,EACpI,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,CAC1B,CACF,CAAC;IACJ,CAAC;IACD,IACE,QAAQ,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS;QAC5C,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;QACzC,QAAQ,CAAC,KAAK,CAAC,eAAe,KAAK,KAAK,CAAC,IAAI,EAC7C,CAAC;QACD,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,SAAS,KAAK,CAAC,MAAM,mCAAmC,QAAQ,CAAC,KAAK,CAAC,eAAe,IAAI,EAC1F,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,CAC1B,CACF,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QAC7C,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,aAAa,KAAK,CAAC,IAAI,+BAA+B,EACtD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,mDAAmD,EACnD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC;IAC1C,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEpD,mDAAmD;IACnD,EAAE;IACF,kEAAkE;IAClE,2DAA2D;IAC3D,EAAE;IACF,8DAA8D;IAC9D,yDAAyD;IACzD,oEAAoE;IACpE,+DAA+D;IAC/D,gEAAgE;IAChE,mCAAmC;IACnC,4DAA4D;IAC5D,uBAAuB;IACvB,EAAE;IACF,4DAA4D;IAC5D,4DAA4D;IAC5D,2DAA2D;IAC3D,iEAAiE;IACjE,yBAAyB;IAEzB,MAAM,SAAS,GAAG,MAAM,CACtB,CAAC,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EACtE,QAAQ,CACT,CAAC;IACF,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,4BAA4B,SAAS,CAAC,MAAM,EAAE,EAC9C,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,SAAS,CAAC,MAAM,EAAE,EAAE,CAChE,CACF,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,oEAAoE;IACpE,mEAAmE;IACnE,iDAAiD;IACjD,kEAAkE;IAClE,iCAAiC;IACjC,MAAM,YAAY,GAAG,IAAA,qDAA+B,EAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;QACrB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,mDAAmD,YAAY,CAAC,IAAI,MAAM,YAAY,CAAC,MAAM,EAAE,EAC/F;YACE,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI,EAAE;gBACJ,UAAU,EAAE,YAAY,CAAC,MAAM;gBAC/B,oBAAoB,EAAE,YAAY,CAAC,IAAI;aACxC;SACF,CACF,CACF,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,gEAAgE;IAChE,oBAAoB;IAEpB,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9D,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7E,IAAI,CAAC,IAAA,kBAAI,EAAC,YAAY,CAAC,EAAE,CAAC;QACxB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,OAAO,IAAA,iBAAG,EAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,8DAA8D;IAC9D,+BAA+B;IAC/B,MAAM,YAAY,GAAc;QAC9B,KAAK,EAAE,kBAAkB;QACzB,EAAE,EAAE,GAAG;QACP,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE;YACJ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM;YACN,WAAW,EAAE,UAAU;YACvB,IAAI,EAAE,MAAM;YACZ,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;SAC3C;KACsB,CAAC;IAE1B,MAAM,UAAU,GAAc;QAC5B,KAAK,EAAE,gBAAgB;QACvB,EAAE,EAAE,GAAG;QACP,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,KAAK,CAAC,MAAM;QACrB,IAAI,EAAE;YACJ,aAAa,EAAE,KAAK,CAAC,IAAI;SAC1B;KACsB,CAAC;IAE1B,MAAM,UAAU,GAAG,IAAA,kCAAiB,EAAC,OAAO,EAAE,GAAG,EAAE;QACjD,gEAAgE;QAChE,8BAA8B;QAC9B,MAAM,UAAU,GAAG,IAAA,0BAAkB,EACnC,QAAQ,CAAC,KAAK,CAAC,IAAI,EACnB,QAAQ,CAAC,KAAK,EACd,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,OAAO,EACb,EAAE,MAAM,EAAE,KAAK,EAAE,EACjB,IAAI,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;QACF,IAAI,CAAC,IAAA,kBAAI,EAAC,UAAU,CAAC;YAAE,OAAO,IAAA,iBAAG,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAErD,gEAAgE;QAChE,yDAAyD;QACzD,MAAM,WAAW,GAAG,IAAA,gCAAkB,EAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAClE,IAAI,CAAC,IAAA,kBAAI,EAAC,WAAW,CAAC;YAAE,OAAO,IAAA,iBAAG,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEvD,kEAAkE;QAClE,kEAAkE;QAClE,qDAAqD;QACrD,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAEhF,6DAA6D;QAC7D,OAAO,IAAA,+CAAuB,EAAC;YAC7B,OAAO;YACP,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;YAC5E,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;SACnC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,oDAAoD;QACpD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,2DAA2D;QAC3D,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,IAAA,iBAAG,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACxC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,IAAA,gBAAE,EAAC;YACR,IAAI,EAAE,2BAA2B;YACjC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK;SAC9B,CAAC,CAAC;IACL,CAAC;IACD,MAAM,iBAAiB,GAAG,oBAAoB,CAC5C,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,IAAI,EACV,SAAS,EACT,QAAQ,CACT,CAAC;IACF,OAAO,IAAA,gBAAE,EAAC;QACR,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE;YACJ,MAAM;YACN,WAAW,EAAE,UAAU;YACvB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,KAAK,CAAC,MAAM;YACrB,YAAY,EAAE,iBAAiB;SAChC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAgB,EAAE,MAAc;IAC3D,+CAA+C;IAC/C,MAAM,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe,EAAE,IAAY;IAC1D,gEAAgE;IAChE,qDAAqD;IACrD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9D,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YACjB,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB;IACnB,CAAC;AACH,CAAC;AAED;;;;;6CAK6C;AAC7C,SAAS,oBAAoB,CAC3B,OAAe,EACf,IAAY,EACZ,KAAyF;IAEzF,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO;QAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO;QAChD,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC;QACnC,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB;IACnB,CAAC;AACH,CAAC;AAED,4EAA4E;AAE5E,SAAgB,kBAAkB,CAChC,OAAe,EACf,KAAwB;IAExB,uEAAuE;IACvE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE7D,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAC9C,MAAM,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAE9C,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEjD,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEjD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,aAAa,KAAK,CAAC,IAAI,6EAA6E,EACpG,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7E,IAAI,CAAC,IAAA,kBAAI,EAAC,YAAY,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAEzD,8DAA8D;IAC9D,oDAAoD;IACpD,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAA,kCAAiB,EAAC,OAAO,EAAE,GAAG,EAAE;QACjD,MAAM,UAAU,GAAG,IAAA,0BAAkB,EACnC,QAAQ,CAAC,KAAK,CAAC,IAAI,EACnB,QAAQ,CAAC,KAAK,EACd,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,OAAO,EACb,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,KAAK,SAAS,IAAI,aAAa,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,EACvF,IAAI,IAAI,CAAC,GAAG,CAAC,CACd,CAAC;QACF,IAAI,CAAC,IAAA,kBAAI,EAAC,UAAU,CAAC;YAAE,OAAO,IAAA,iBAAG,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,IAAA,gCAAkB,EAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAClE,IAAI,CAAC,IAAA,kBAAI,EAAC,WAAW,CAAC;YAAE,OAAO,IAAA,iBAAG,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEvD,MAAM,SAAS,GAA4B,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACzE,IACE,aAAa,CAAC,MAAM,KAAK,SAAS;YAClC,aAAa,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EACrC,CAAC;YACD,SAAS,CAAC,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC;QACvD,CAAC;QACD,MAAM,KAAK,GAAc;YACvB,KAAK,EAAE,gBAAgB;YACvB,EAAE,EAAE,GAAG;YACP,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,MAAM;YACrB,IAAI,EAAE,SAAS;SACQ,CAAC;QAE1B,OAAO,IAAA,+CAAuB,EAAC;YAC7B,OAAO;YACP,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;YAC5E,MAAM,EAAE,CAAC,KAAK,CAAC;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,UAAU,CAAC,EAAE;QAAE,OAAO,IAAA,iBAAG,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,IAAA,gBAAE,EAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,iBAAiB,GAAG,oBAAoB,CAC5C,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,IAAI,EACV,OAAO,EACP,QAAQ,CACT,CAAC;IACF,OAAO,IAAA,gBAAE,EAAC;QACR,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE;KAC1C,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAE5E,SAAgB,eAAe,CAC7B,OAAe,EACf,KAA2B;IAE3B,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAE9C,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,mEAAmE;IACnE,qEAAqE;IACrE,MAAM,cAAc,GAClB,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAE/D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,aAAa,KAAK,CAAC,IAAI,0BAA0B,EACjD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,+DAA+D;IAC/D,gEAAgE;IAChE,qEAAqE;IACrE,mEAAmE;IACnE,qEAAqE;IACrE,sEAAsE;IACtE,sDAAsD;IACtD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAA,6BAAW,EAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7E,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,aAAa,KAAK,CAAC,IAAI,sCAAsC,KAAK,CAAC,KAAK,CAAC,UAAU,sBAAsB,KAAK,CAAC,IAAI,+HAA+H,IAAA,wCAAsB,EAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,EACnS,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,IAAI,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAClE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,aAAa,KAAK,CAAC,IAAI,+DAA+D,EACtF,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9C,IACE,KAAK,CAAC,MAAM,KAAK,SAAS;QAC1B,KAAK,CAAC,UAAU,KAAK,SAAS;QAC9B,KAAK,CAAC,eAAe,KAAK,IAAI;QAC9B,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EACzD,CAAC;QACD,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,WAAW,KAAK,CAAC,MAAM,yBAAyB,KAAK,CAAC,UAAU,+CAA+C,EAC/G,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YACrB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,sBAAsB,EAClC,+BAA+B,YAAY,CAAC,MAAM,EAAE,EACpD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;QACJ,CAAC;QACD,kBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,iDAAiD;IACjD,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9D,MAAM,aAAa,GAAyC,EAAE,CAAC;IAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,IAAA,kBAAI,EAAC,QAAQ,CAAC,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,IAAA,kBAAI,EAAC,YAAY,CAAC,IAAI,YAAY,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBACvE,aAAa,CAAC,IAAI,CAAC;oBACjB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI;oBACzB,QAAQ,EAAE,YAAY,CAAC,KAAK;iBAC7B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAA4B;QACzC,aAAa,EAAE,KAAK,CAAC,IAAI;QACzB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,SAAS;QACjC,IAAI,EAAE,MAAM;QACZ,oBAAoB,EAAE,kBAAkB;KACzC,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;IACjE,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;QAAE,SAAS,CAAC,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;IAEnF,MAAM,KAAK,GAAc;QACvB,KAAK,EAAE,oBAAoB;QAC3B,EAAE,EAAE,GAAG;QACP,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,SAAS;KACQ,CAAC;IAE1B,MAAM,UAAU,GAAG,IAAA,kCAAiB,EAAC,OAAO,EAAE,GAAG,EAAE;QACjD,mCAAmC;QACnC,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,qDAAqD;QACjG,OAAO,IAAA,+CAAuB,EAAC;YAC7B,OAAO;YACP,aAAa;YACb,MAAM,EAAE,CAAC,KAAK,CAAC;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,UAAU,CAAC,EAAE;QAAE,OAAO,IAAA,iBAAG,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,IAAA,gBAAE,EAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,iBAAiB,GAAG,oBAAoB,CAC5C,OAAO,EACP,cAAc,EACd,KAAK,CAAC,IAAI,EACV,WAAW,EACX,QAAQ,CACT,CAAC;IACF,OAAO,IAAA,gBAAE,EAAC;QACR,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,WAAW;QACnB,IAAI,EAAE;YACJ,oBAAoB,EAAE,kBAAkB;YACxC,YAAY,EAAE,iBAAiB;SAChC;KACF,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAE5E,SAAgB,aAAa,CAC3B,OAAe,EACf,KAAyB;IAEzB,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,cAAc,CAAC,EAAE;QAAE,OAAO,cAAc,CAAC;IAE9C,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,mEAAmE;IACnE,+BAA+B;IAC/B,MAAM,cAAc,GAClB,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAE/D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,aAAa,KAAK,CAAC,IAAI,0BAA0B,EACjD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,0BAA0B;IAC1B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,yEAAyE;IACzE,sEAAsE;IACtE,mEAAmE;IACnE,qDAAqD;IACrD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAA,6BAAW,EAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7E,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,CACX,6CAA6C,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,IAAI,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAClE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,QAAQ,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjE,QAAQ,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;IACnE,CAAC;IAED,+CAA+C;IAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,IAAA,gBAAE,EAAC;YACR,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;YACjC,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,uBAAuB,EACnC,uBAAuB,KAAK,CAAC,IAAI,0BAA0B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAClF,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,CAC5C,CACF,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAoB,CAAC;IAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAgB,CAAC;IACtC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAgB,CAAC;IAEtC,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QACvB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,sBAAsB,EAClC,gBAAgB,UAAU,YAAY,cAAc,CAAC,MAAM,EAAE,EAC7D,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,oBAAoB,KAAK,CAAC,IAAI,EAAE,CAAC;IAClE,MAAM,WAAW,GAAG,MAAM,CACxB,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAC3C,QAAQ,CACT,CAAC;IACF,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;QACpB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,sBAAsB,EAClC,qBAAqB,MAAM,YAAY,WAAW,CAAC,MAAM,EAAE,EAC3D,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,+BAA+B;IAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1D,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,sBAAsB,EAClC,8BAA8B,SAAS,CAAC,MAAM,EAAE,EAChD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC1C,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,sBAAsB,EAClC,2CAA2C,WAAW,EAAE,EACxD,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,iEAAiE;IACjE,+BAA+B;IAC/B,EAAE;IACF,iEAAiE;IACjE,kEAAkE;IAClE,gEAAgE;IAChE,mEAAmE;IACnE,mEAAmE;IACnE,gEAAgE;IAChE,uDAAuD;IACvD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACzE,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACnC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC;IACxC,MAAM,WAAW,GAAG,IAAA,wBAAS,EAAC,OAAO,EAAE;QACrC,EAAE,EAAE,MAAM;QACV,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,sCAAsC,KAAK,CAAC,IAAI,OAAO,WAAW,EAAE;QAC5E,WAAW;QACX,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,gBAAgB;KACtB,CAAC,CAAC;IAEH,IAAI,CAAC,IAAA,kBAAI,EAAC,WAAW,CAAC,EAAE,CAAC;QACvB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,qCAAqC,EACjD,2BAA2B,WAAW,yDAAyD,EAC/F;YACE,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI,EAAE;gBACJ,YAAY,EAAE,WAAW;gBACzB,OAAO,EAAE,MAAM;gBACf,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACtD,oBAAoB,EAAE,kCAAkC,MAAM,0CAA0C,WAAW,EAAE;aACtH;SACF,CACF,CACF,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,uEAAuE;IACvE,yEAAyE;IACzE,uEAAuE;IACvE,oEAAoE;IACpE,2CAA2C;IAC3C,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,qCAAqC,EACjD,2BAA2B,WAAW,2GAA2G,EACjJ;YACE,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI,EAAE;gBACJ,YAAY,EAAE,WAAW;gBACzB,OAAO,EAAE,MAAM;gBACf,kBAAkB,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI;gBAC1C,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,2BAA2B,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBACzG,oBAAoB,EAAE,kCAAkC,MAAM,0CAA0C,WAAW,iCAAiC,KAAK,CAAC,IAAI,EAAE;aACjK;SACF,CACF,CACF,CAAC;IACJ,CAAC;IAED,iEAAiE;IACjE,yCAAyC;IACzC,MAAM,WAAW,GAAc;QAC7B,KAAK,EAAE,iBAAiB;QACxB,EAAE,EAAE,GAAG;QACP,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,MAAM;QACf,IAAI,EAAE;YACJ,aAAa,EAAE,KAAK,CAAC,IAAI;YACzB,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,UAAU;YACvB,gBAAgB,EAAE,IAAI;SACvB;KACsB,CAAC;IAE1B,oEAAoE;IACpE,oEAAoE;IACpE,8DAA8D;IAC9D,MAAM,SAAS,GAAG,IAAA,kCAAiB,EAAC,OAAO,EAAE,GAAG,EAAE,CAChD,IAAA,+CAAuB,EAAC;QACtB,OAAO;QACP,aAAa,EAAE,EAAE;QACjB,MAAM,EAAE,CAAC,WAAW,CAAC;KACtB,CAAC,CACH,CAAC;IACF,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,qCAAqC,EACjD,0HAA0H,EAC1H;YACE,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI,EAAE;gBACJ,YAAY,EAAE,WAAW;gBACzB,oBAAoB,EAAE,wDAAwD,KAAK,CAAC,IAAI,EAAE;aAC3F;SACF,CACF,CACF,CAAC;IACJ,CAAC;IAED,iEAAiE;IACjE,mEAAmE;IACnE,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,EAAE;QAC7C,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,gBAAgB;KACtB,CAAC,CAAC;IACH,IAAI,CAAC,IAAA,kBAAI,EAAC,aAAa,CAAC,EAAE,CAAC;QACzB,8DAA8D;QAC9D,kEAAkE;QAClE,OAAO,IAAA,iBAAG,EACR,IAAA,2BAAe,EACb,mBAAW,CAAC,qCAAqC,EACjD,qFAAqF,KAAK,CAAC,IAAI,YAAY,EAC3G;YACE,OAAO,EAAE,KAAK,CAAC,IAAI;YACnB,IAAI,EAAE;gBACJ,YAAY,EAAE,WAAW;gBACzB,cAAc,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aAC3D;SACF,CACF,CACF,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GAAG,oBAAoB,CAC5C,OAAO,EACP,cAAc,EACd,KAAK,CAAC,IAAI,EACV,QAAQ,EACR,QAAQ,CACT,CAAC;IACF,OAAO,IAAA,gBAAE,EAAC;QACR,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE;YACJ,YAAY,EAAE,WAAW;YACzB,OAAO,EAAE,MAAM;YACf,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,iBAAiB;SAChC;KACF,CAAC,CAAC;AACL,CAAC;AAkBD,SAAgB,mBAAmB,CAAC,OAAe;IACjD,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,IAAA,kBAAI,EAAC,QAAQ,CAAC;QAAE,OAAO,IAAA,iBAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;YAAE,SAAS;QAC5D,OAAO,CAAC,IAAI,CAAC;YACX,IAAI;YACJ,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC;YACnD,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,SAAS;YAClC,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,SAAS;YAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;YAC3B,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IACD,iCAAiC;IACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACrD,OAAO,IAAA,gBAAE,EAAC,EAAE,OAAO,EAAE,CAAC,CAAC;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paths.design/caws-cli",
3
- "version": "11.1.6",
3
+ "version": "11.1.8",
4
4
  "description": "CAWS CLI - the governed core for CAWS project state, scope, claims, gates, waivers, and evidence (v11.1). Restores canonical spec/worktree lifecycle on the vNext kernel/store/shell architecture.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -58,7 +58,7 @@
58
58
  "access": "public"
59
59
  },
60
60
  "dependencies": {
61
- "@paths.design/caws-kernel": "^1.0.0",
61
+ "@paths.design/caws-kernel": "^1.1.4",
62
62
  "@paths.design/quality-gates": "^2.0.0",
63
63
  "ajv": "8.17.1",
64
64
  "chalk": "4.1.2",
@@ -75,6 +75,9 @@
75
75
  "@semantic-release/exec": "7.1.0",
76
76
  "@semantic-release/git": "10.0.1",
77
77
  "@semantic-release/npm": "12.0.2",
78
+ "@stryker-mutator/core": "^9.6.1",
79
+ "@stryker-mutator/jest-runner": "^9.6.1",
80
+ "@stryker-mutator/typescript-checker": "^9.6.1",
78
81
  "@types/fs-extra": "^11.0.0",
79
82
  "@types/inquirer": "^8.2.6",
80
83
  "@types/js-yaml": "^4.0.0",
@@ -1,9 +1,9 @@
1
1
  <!--
2
2
  # CAWS-MANAGED-HOOK
3
3
  # hook_pack: claude-code
4
- # hook_pack_version: 2
4
+ # hook_pack_version: 11
5
5
  # caws_min_major: 11
6
- # lineage_refs: 1,4,6,8,11,12,13,16,17
6
+ # lineage_refs: 1,4,6,8,11,12,13,16,17,19,20
7
7
  # do_not_edit_directly: update via `caws init --agent-surface claude-code`
8
8
  -->
9
9
 
@@ -20,7 +20,7 @@ call).
20
20
 
21
21
  This pack is not optional scaffolding. Every script under
22
22
  `.claude/hooks/` traces to a specific entry in
23
- `packages/caws-cli/docs-status/failure-lineage.md`. Modifying or removing
23
+ `docs/failure-lineage.md`. Modifying or removing
24
24
  a hook requires:
25
25
 
26
26
  1. Naming the lineage entry the hook covers.
@@ -36,8 +36,8 @@ is wrong, stop and ask the user.
36
36
  | File | Lineage entries | What it prevents |
37
37
  |------|----------------|------------------|
38
38
  | `block-dangerous.sh` + `classify_command.py` | 1, 17 | catastrophic git operations; tokenized-argv bypasses; danger latch |
39
- | `worktree-guard.sh` | 4, 6, 11 | amend/stash/reset/force-push during active worktrees; cross-boundary file copies |
40
- | `worktree-write-guard.sh` | 4, 8, 13 | base-branch writes when worktrees are active (enforcement returns in CLI-WORKTREE-001); baseline-clobber |
39
+ | `worktree-guard.sh` | 4, 6, 11, 19, 20 | amend/stash/reset/force-push during active worktrees; cross-boundary file copies; **canonical-checkout mutating git commands (checkout/switch/branch -f/reset non-hard) blocked when worktrees active** (CANONICAL-CHECKOUT-WORKTREE-GUARD-001); **agent-Bash `git sparse-checkout` (any subcommand) refused with canonical-spec-materialization wording pointing to `caws worktree repair-sparse <name>`** (WORKTREE-SPEC-CANONICAL-ACCESS-GUARD-001 A3) |
40
+ | `worktree-write-guard.sh` | 4, 8, 13, 20 | base-branch writes when worktrees are active (enforcement returns in CLI-WORKTREE-001); baseline-clobber; **Read/Write/Edit refusal against `<linked-worktree>/.caws/specs/*` to prevent canonical spec authority from being materialized as a divergent private copy inside a worktree, before the broad `.caws/*` allowlist can exit 0** (WORKTREE-SPEC-CANONICAL-ACCESS-GUARD-001 A1/A2, contract `canonical-spec-authority-materialization-guard-v1`) |
41
41
  | `scope-guard.sh` | 8, 11, 12, 16 | edits outside the active spec's `scope.in`; cross-spec union interference; unbound → no authority |
42
42
  | `session-caws-status.sh` | 4, 11 | inherited-dirty-state collision; foreign-claim soft-block; version-skew |
43
43
  | `reset-strikes.sh` | 8, 16 | human-authorized strike reset (escape hatch, not auto-resettable) |
@@ -47,6 +47,12 @@ is wrong, stop and ask the user.
47
47
  | `session-log.sh` | 10 | per-turn narrative + structured transcripts |
48
48
  | `dispatch/*` | 8, 11, 17 | wires Claude Code's lifecycle to the registered handler list |
49
49
  | `lib/*` | 8, 16 | shared input parsing and handler runner |
50
+ | `god-object-check.sh` | 28 | advisory: flags a written/edited file whose SLOC exceeds `CAWS_GOD_OBJECT_LOC` (default 2000). Edit-time analogue of the `god_object` gate. Always exit 0. |
51
+ | `shortcut-language-check.sh` | 29 | progressive: flags TODO/FIXME/XXX/placeholder/"not implemented" stub language in NON-test source; escalates warn→ask→block via guard-strikes. Edit-time analogue of the `todo_detection` gate. |
52
+ | `duplicate-export-check.sh` | 30 | advisory: on Write of a new JS/TS file, flags an exported symbol whose exact name already exists in the enclosing package src tree (generic-name allowlist). Always exit 0. |
53
+ | `loc-delta-check.sh` | 31 | advisory: on Edit, flags an added-line delta over `CAWS_LOC_DELTA_WARN_THRESHOLD` (default 300) via the new_string/old_string payload diff. Always exit 0. |
54
+
55
+ The four `*-check.sh` hooks above are the **edit-time advisory quality plane** (QG-HOOKS-EXTRACT-001). They reimplement the load-bearing quality-gates detection *intent* in self-contained bash; they do NOT import, shell out to, or runtime-couple with `packages/quality-gates`, and they do NOT change `caws gates run`. `caws gates run` remains the governed policy-gate runner; these hooks are installed utilities the repo tunes via env (option-C doctrine). See `docs/guides/hook-packs.md` for operator usage.
50
56
 
51
57
  ## v11 state-model awareness
52
58
 
@@ -0,0 +1,131 @@
1
+ #!/bin/bash
2
+ # CAWS-MANAGED-HOOK
3
+ # hook_pack: claude-code
4
+ # hook_pack_version: 11
5
+ # caws_min_major: 11
6
+ # lineage_refs: 19
7
+ # do_not_edit_directly: update via `caws init --agent-surface claude-code`
8
+ #
9
+ # PreToolUse handler — heartbeats the current session's lease and surfaces
10
+ # parallel-agent presence to the calling agent
11
+ # (MULTI-AGENT-ACTIVITY-REGISTRY-001).
12
+ #
13
+ # Sourcing: invoked by dispatch/pre_tool_use.sh (FIRST in the handler
14
+ # list) after parse-input.sh has populated HOOK_SESSION_ID. The dispatcher
15
+ # runs with --short-circuit-on-block; this handler must never block.
16
+ #
17
+ # Behavior:
18
+ # - Refuses on empty/unknown HOOK_SESSION_ID.
19
+ # - Invokes `caws agents heartbeat --session-id <id> --platform claude-code
20
+ # --throttle 30000 --reason pre_tool_use --json --include-active-summary`.
21
+ # - Parses CAWS-native JSON. When active_agent_count > 1, wraps the
22
+ # active_agents list into Claude Code's hookSpecificOutput.
23
+ # additionalContext envelope and emits it on stdout. When the count
24
+ # is 1 (self only), emits nothing — silent in the common case.
25
+ # - Throttled invocations still return an active_agents summary, so
26
+ # parallel-presence surfacing fires every tool call even when the
27
+ # write was skipped.
28
+ #
29
+ # IO BOUNDARY: this script is the ONLY surface that emits Claude Code's
30
+ # hookSpecificOutput.additionalContext envelope for lease state. The CLI
31
+ # emits CAWS-native JSON only. A Cursor or terminal integration would
32
+ # rewrite this script to emit its own protocol-specific output while
33
+ # reusing the same `caws agents heartbeat --json --include-active-summary`
34
+ # command verbatim.
35
+ #
36
+ # RUNTIME DEPENDENCIES: bash + node. node is already required by the CAWS
37
+ # CLI itself (which is a Node binary), so depending on it here adds no new
38
+ # runtime surface area. We do NOT depend on jq — jq is not guaranteed
39
+ # present on every install target (it is absent from many container base
40
+ # images and minimal CI runners), and a missing jq would silently drop
41
+ # every parallel-agent notice. The product goal is "agents see each
42
+ # other": that visibility cannot depend on a shell utility outside the
43
+ # CAWS toolchain.
44
+ #
45
+ # FAIL-CLOSED-NON-BLOCKING: if the CLI is absent, fails, or returns
46
+ # malformed JSON, this hook exits 0 silently. Heartbeat is observability
47
+ # and parallel-agent surfacing; a failure must never block the tool call.
48
+
49
+ set -uo pipefail
50
+
51
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
52
+
53
+ # shellcheck source=lib/parse-input.sh
54
+ source "$SCRIPT_DIR/lib/parse-input.sh" 2>/dev/null || exit 0
55
+ parse_hook_input || exit 0
56
+
57
+ if [[ -z "${HOOK_SESSION_ID:-}" || "$HOOK_SESSION_ID" == "unknown" ]]; then
58
+ exit 0
59
+ fi
60
+
61
+ CAWS_BIN="${CAWS_BIN:-caws}"
62
+ if ! command -v "$CAWS_BIN" >/dev/null 2>&1; then
63
+ exit 0
64
+ fi
65
+
66
+ # Capture both stdout (JSON) and stderr (diagnostics). On any CLI error,
67
+ # fall through to silent exit.
68
+ CLI_OUT="$(
69
+ "$CAWS_BIN" agents heartbeat \
70
+ --session-id "$HOOK_SESSION_ID" \
71
+ --platform claude-code \
72
+ --throttle 30000 \
73
+ --reason pre_tool_use \
74
+ --json \
75
+ --include-active-summary \
76
+ 2>/dev/null
77
+ )" || exit 0
78
+
79
+ if [[ -z "$CLI_OUT" ]]; then
80
+ exit 0
81
+ fi
82
+
83
+ # Parse the CAWS-native JSON and, when active_agent_count > 1, compose
84
+ # Claude Code's hookSpecificOutput.additionalContext envelope. A single
85
+ # node invocation does the whole pipeline: parse → filter peers → format
86
+ # bullet list → wrap envelope → emit. Malformed input, parse errors, or
87
+ # any thrown exception fall through to silent exit (fail-closed-non-
88
+ # blocking). Node is already a hard CAWS dependency — the CLI binary
89
+ # IS node — so this adds no new runtime surface vs. jq.
90
+ printf '%s' "$CLI_OUT" | node -e '
91
+ let raw = "";
92
+ process.stdin.setEncoding("utf8");
93
+ process.stdin.on("data", (chunk) => { raw += chunk; });
94
+ process.stdin.on("end", () => {
95
+ let parsed;
96
+ try { parsed = JSON.parse(raw); } catch { process.exit(0); }
97
+ const count = Number(parsed && parsed.active_agent_count);
98
+ if (!Number.isFinite(count) || count <= 1) process.exit(0);
99
+ const agents = Array.isArray(parsed.active_agents) ? parsed.active_agents : [];
100
+ const peers = agents.filter((a) => a && a.is_self !== true);
101
+ if (peers.length === 0) process.exit(0);
102
+ const bullets = peers.map((a) => {
103
+ const worktree = a.bound_worktree || "no worktree";
104
+ const spec = a.bound_spec_id ? " — spec " + a.bound_spec_id : "";
105
+ const kind = a.git_dir_kind || "unknown";
106
+ const branch = a.branch || "-";
107
+ const ageMs = Number(a.last_active_age_ms);
108
+ const ageSec = Number.isFinite(ageMs) ? Math.floor(ageMs / 1000) : 0;
109
+ return "• " + (a.session_id || "<unknown>") +
110
+ " (" + worktree + ")" + spec +
111
+ " — git_dir_kind=" + kind +
112
+ " — branch=" + branch +
113
+ " — last active " + ageSec + "s ago";
114
+ }).join("\n");
115
+ const ctx = "MULTI-AGENT NOTICE: " + count +
116
+ " agents active in this repo (including this session). Other active sessions:\n" +
117
+ bullets + "\n\n" +
118
+ "Coordinate via '\''caws agents list'\'' and '\''caws status'\'' before " +
119
+ "mutating shared state. Authority remains in .caws/worktrees.json " +
120
+ "(ownership) and .caws/specs/<id>.yaml (scope) — leases are " +
121
+ "visibility only.";
122
+ process.stdout.write(JSON.stringify({
123
+ hookSpecificOutput: {
124
+ hookEventName: "PreToolUse",
125
+ additionalContext: ctx,
126
+ },
127
+ }));
128
+ });
129
+ ' 2>/dev/null || exit 0
130
+
131
+ exit 0