@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
@@ -56,9 +56,15 @@ exports.runWorktreeListCommand = runWorktreeListCommand;
56
56
  exports.runWorktreeBindCommand = runWorktreeBindCommand;
57
57
  exports.runWorktreeDestroyCommand = runWorktreeDestroyCommand;
58
58
  exports.runWorktreeMergeCommand = runWorktreeMergeCommand;
59
+ exports.runWorktreeMigrateRegistryCommand = runWorktreeMigrateRegistryCommand;
60
+ exports.runWorktreeRepairSparseCommand = runWorktreeRepairSparseCommand;
61
+ const node_child_process_1 = require("node:child_process");
62
+ const fs = __importStar(require("node:fs"));
59
63
  const path = __importStar(require("node:path"));
60
64
  const caws_kernel_1 = require("@paths.design/caws-kernel");
61
65
  const store_1 = require("../../store");
66
+ const git_sparse_checkout_1 = require("../../store/git-sparse-checkout");
67
+ const worktrees_migration_1 = require("../../store/worktrees-migration");
62
68
  const worktrees_writer_1 = require("../../store/worktrees-writer");
63
69
  const actor_1 = require("../session/actor");
64
70
  const resolve_session_1 = require("../session/resolve-session");
@@ -72,6 +78,31 @@ function setupIO(opts) {
72
78
  const showData = opts.showData === true;
73
79
  return { cwd, nowFn, env, out, err: errFn, showData };
74
80
  }
81
+ /**
82
+ * Surface a non-landed audit commit for a worktree lifecycle transition.
83
+ * The transition succeeded (worktrees.json / spec binding is updated in
84
+ * the working tree), but the automatic audit commit did NOT land. The
85
+ * command MUST NOT report bare success while leaving the registry change
86
+ * uncommitted — the next session would inherit ambiguous control-plane
87
+ * state. Emits the warning on stderr only; does NOT change the command's
88
+ * exit code — the worktree OPERATION succeeded, and whether the audit
89
+ * COMMIT landed is surfaced loudly but never turned into a command
90
+ * failure. (CAWS-AUTOCOMMIT-INTEGRITY-001 surfaced it;
91
+ * CAWS-AUTOCOMMIT-INTEGRITY-002 corrected the exit-code policy.)
92
+ */
93
+ function surfaceAuditCommit(auditCommit, err) {
94
+ const ac = auditCommit !== null && typeof auditCommit === 'object'
95
+ ? auditCommit
96
+ : undefined;
97
+ if (ac !== undefined && ac.kind === 'refused_dirty') {
98
+ err('caws worktree: the transition was applied but NOT committed.');
99
+ if (typeof ac.reason === 'string' && ac.reason.length > 0) {
100
+ err(` reason: ${ac.reason}`);
101
+ }
102
+ err(' The control-plane change is in your working tree but the audit ' +
103
+ 'commit did not land. Commit it manually, then verify with git log.');
104
+ }
105
+ }
75
106
  function resolveCawsCtx(cwd, errFn, showData, cmd) {
76
107
  const r = (0, store_1.resolveRepoRoot)(cwd);
77
108
  if (!r.ok) {
@@ -144,7 +175,13 @@ function runWorktreeCreateCommand(opts) {
144
175
  return 2;
145
176
  }
146
177
  const wtPath = outcome.data?.path ?? '';
147
- out(`created ${outcome.name} at ${path.relative(ctx.repoRoot, String(wtPath))} (spec: ${opts.specId})`);
178
+ const relWtPath = path.relative(ctx.repoRoot, String(wtPath));
179
+ out(`created ${outcome.name} at ${relWtPath} (spec: ${opts.specId})`);
180
+ // CAWS-FIRST-CONTACT-UX-001 A3: tell the user where to work next.
181
+ // Without this hint, users continue editing in the canonical checkout
182
+ // and trigger union-mode scope behavior they can't explain.
183
+ out(`Next: cd ${relWtPath} to start working in the bound worktree.`);
184
+ surfaceAuditCommit(outcome.data?.audit_commit, err);
148
185
  return 0;
149
186
  }
150
187
  function runWorktreeListCommand(opts = {}) {
@@ -201,6 +238,7 @@ function runWorktreeBindCommand(opts) {
201
238
  return 2;
202
239
  }
203
240
  out(`bound ${outcome.name} → ${opts.specId}`);
241
+ surfaceAuditCommit(outcome.data?.audit_commit, err);
204
242
  return 0;
205
243
  }
206
244
  function runWorktreeDestroyCommand(opts) {
@@ -211,9 +249,18 @@ function runWorktreeDestroyCommand(opts) {
211
249
  const id = buildActorPair(ctx.cawsDir, cwd, env, nowFn, opts.actorKind, err, showData, 'destroy');
212
250
  if (id === null)
213
251
  return 2;
252
+ // Ownership-comparison surface: build the exhaustive candidate set
253
+ // (across all capsules + env sources) for the writer's admission test.
254
+ // Distinct from `id.session` (single-identity actor for the event).
255
+ // See CAWS-WORKTREE-DESTROY-SESSION-RESOLUTION-001.
256
+ const sessionCandidates = (0, resolve_session_1.resolveSessionCandidates)({
257
+ cawsDir: ctx.cawsDir,
258
+ env,
259
+ });
214
260
  const input = {
215
261
  name: opts.name,
216
262
  session: id.session,
263
+ sessionCandidates,
217
264
  actor: id.actor,
218
265
  now: nowFn,
219
266
  };
@@ -236,6 +283,7 @@ function runWorktreeDestroyCommand(opts) {
236
283
  return 2;
237
284
  }
238
285
  out(`destroyed ${outcome.name}`);
286
+ surfaceAuditCommit(outcome.data?.audit_commit, err);
239
287
  return 0;
240
288
  }
241
289
  function runWorktreeMergeCommand(opts) {
@@ -246,9 +294,16 @@ function runWorktreeMergeCommand(opts) {
246
294
  const id = buildActorPair(ctx.cawsDir, cwd, env, nowFn, opts.actorKind, err, showData, 'merge');
247
295
  if (id === null)
248
296
  return 2;
297
+ // See destroy: ownership-comparison surface needs the exhaustive
298
+ // candidate set, distinct from the single-identity actor.
299
+ const sessionCandidates = (0, resolve_session_1.resolveSessionCandidates)({
300
+ cawsDir: ctx.cawsDir,
301
+ env,
302
+ });
249
303
  const input = {
250
304
  name: opts.name,
251
305
  session: id.session,
306
+ sessionCandidates,
252
307
  actor: id.actor,
253
308
  now: nowFn,
254
309
  };
@@ -281,6 +336,303 @@ function runWorktreeMergeCommand(opts) {
281
336
  return 0;
282
337
  }
283
338
  out(`merged ${outcome.name} (merge_commit: ${outcome.data?.merge_commit}; auto_closed_spec: ${outcome.data?.spec_id})`);
339
+ surfaceAuditCommit(outcome.data?.audit_commit, err);
340
+ return 0;
341
+ }
342
+ function formatDecision(d) {
343
+ if (d.omit) {
344
+ return ` - ${d.record.padEnd(28)} status=destroyed -> omitted (no claiming spec; path absent)`;
345
+ }
346
+ const status = d.status ?? '(no status)';
347
+ if (d.reason === 'non_terminal') {
348
+ return ` - ${d.record.padEnd(28)} status=${status.padEnd(10)} -> preserved`;
349
+ }
350
+ if (d.reason === 'spec_claims') {
351
+ const sid = d.detail.specId ?? '(unknown)';
352
+ return ` - ${d.record.padEnd(28)} status=${status.padEnd(10)} -> BLOCKS: spec ${sid} still claims this worktree name`;
353
+ }
354
+ // path_present
355
+ const p = d.detail.path ?? '(unknown)';
356
+ return ` - ${d.record.padEnd(28)} status=${status.padEnd(10)} -> BLOCKS: recorded path ${p} exists on disk`;
357
+ }
358
+ function renderPlanReport(plan, worktreesJsonPath, dryRun, out) {
359
+ if (plan.kind === 'no_op') {
360
+ if (plan.reason === 'already_flat') {
361
+ out(`${worktreesJsonPath} is already in v11 flat-map shape. No action required.`);
362
+ out(`Record count: ${plan.recordCount}.`);
363
+ }
364
+ else {
365
+ // empty_object
366
+ out(`${worktreesJsonPath} is an empty object. No action required.`);
367
+ }
368
+ return;
369
+ }
370
+ if (plan.kind === 'apply') {
371
+ out(`Classified ${worktreesJsonPath} as legacy_envelope.`);
372
+ out('Migrating to v11 flat-map shape.');
373
+ out('');
374
+ out(`Nested records: ${plan.inputRecordCount}`);
375
+ for (const d of plan.decisions) {
376
+ out(formatDecision(d));
377
+ }
378
+ out('');
379
+ const byteCount = Buffer.byteLength(plan.outputBytes, 'utf8');
380
+ if (dryRun) {
381
+ out(`[dry-run] Would write ${byteCount} bytes to ${worktreesJsonPath}.`);
382
+ out(`[dry-run] Post-migration record count would be: ${plan.outputRecordCount}.`);
383
+ out('[dry-run] No files written.');
384
+ }
385
+ else {
386
+ out(`Wrote ${byteCount} bytes to ${worktreesJsonPath}.`);
387
+ out(`Post-migration record count: ${plan.outputRecordCount}.`);
388
+ }
389
+ }
390
+ // refuse: handled separately on stderr
391
+ }
392
+ function renderPlanData(plan, out) {
393
+ // --data: structured JSON dump of the plan for tooling consumers.
394
+ // Shape is the same kind/decisions/counts structure rendered above,
395
+ // but machine-parseable.
396
+ const payload = plan.kind === 'no_op'
397
+ ? { kind: plan.kind, reason: plan.reason, ...('recordCount' in plan ? { recordCount: plan.recordCount } : {}) }
398
+ : plan.kind === 'apply'
399
+ ? {
400
+ kind: plan.kind,
401
+ inputRecordCount: plan.inputRecordCount,
402
+ outputRecordCount: plan.outputRecordCount,
403
+ outputByteLength: Buffer.byteLength(plan.outputBytes, 'utf8'),
404
+ decisions: plan.decisions,
405
+ }
406
+ : {
407
+ kind: plan.kind,
408
+ reason: plan.reason,
409
+ diagnostic: plan.diagnostic,
410
+ ...(plan.decisions ? { decisions: plan.decisions } : {}),
411
+ };
412
+ out(JSON.stringify(payload, null, 2));
413
+ }
414
+ function runWorktreeMigrateRegistryCommand(opts) {
415
+ const { cwd, out, err, showData } = setupIO(opts);
416
+ const ctx = resolveCawsCtx(cwd, err, showData, 'migrate-registry');
417
+ if (ctx === null)
418
+ return 2;
419
+ const worktreesJsonPath = path.join(ctx.cawsDir, 'worktrees.json');
420
+ // Read worktrees.json. ENOENT means there is nothing to migrate.
421
+ let fileContents;
422
+ try {
423
+ fileContents = fs.readFileSync(worktreesJsonPath, 'utf8');
424
+ }
425
+ catch (e) {
426
+ const cause = e;
427
+ if (cause.code === 'ENOENT') {
428
+ out(`${worktreesJsonPath} does not exist. Nothing to migrate.`);
429
+ return 0;
430
+ }
431
+ err(`caws worktree migrate-registry: failed to read ${worktreesJsonPath}: ${cause.message ?? 'unknown error'}`);
432
+ return 2;
433
+ }
434
+ // Load specs for the destroyed-record policy check.
435
+ // We pass the loadSpecs result through unchanged; planMigration's
436
+ // A12 gate decides whether the load is verifiable.
437
+ const specsResult = (0, store_1.loadSpecs)(ctx.cawsDir);
438
+ const specs = specsResult.specs.map((s) => ({
439
+ id: s.id,
440
+ ...(s.worktree !== undefined ? { worktree: s.worktree } : {}),
441
+ }));
442
+ const plan = (0, worktrees_migration_1.planMigration)(fileContents, specs, specsResult.diagnostics, (p) => fs.existsSync(p));
443
+ const dryRun = opts.dryRun === true;
444
+ // Refusals: stderr + nonzero exit. No write under any refusal path.
445
+ if (plan.kind === 'refuse') {
446
+ err('caws worktree migrate-registry: refused.');
447
+ err(plan.diagnostic.message);
448
+ if (plan.decisions) {
449
+ err('');
450
+ err(`Nested records: ${plan.decisions.length}`);
451
+ for (const d of plan.decisions) {
452
+ err(formatDecision(d));
453
+ }
454
+ }
455
+ if (plan.diagnostic.narrowRepair !== undefined) {
456
+ err('');
457
+ err(plan.diagnostic.narrowRepair);
458
+ }
459
+ err('');
460
+ err('No changes were made.');
461
+ if (showData) {
462
+ renderPlanData(plan, err);
463
+ }
464
+ // read_failed -> 2 (IO/parse error class), everything else -> 1 (policy refusal).
465
+ return plan.reason === 'read_failed' ? 2 : 1;
466
+ }
467
+ // no_op or apply: stdout + zero exit.
468
+ renderPlanReport(plan, worktreesJsonPath, dryRun, out);
469
+ if (plan.kind === 'apply' && !dryRun) {
470
+ const writeResult = (0, store_1.writeFileAtomic)(worktreesJsonPath, plan.outputBytes);
471
+ if (!(0, caws_kernel_1.isOk)(writeResult)) {
472
+ err('caws worktree migrate-registry: failed to write migrated file.');
473
+ err((0, diagnostic_1.renderDiagnostics)(writeResult.errors, { showData }));
474
+ return 2;
475
+ }
476
+ }
477
+ if (showData) {
478
+ renderPlanData(plan, out);
479
+ }
480
+ return 0;
481
+ }
482
+ function realpathSafe(p) {
483
+ try {
484
+ return fs.realpathSync(p);
485
+ }
486
+ catch {
487
+ return p;
488
+ }
489
+ }
490
+ function isGitWorktree(p) {
491
+ // A linked worktree has a `.git` file (not directory) pointing at the
492
+ // canonical checkout's `.git/worktrees/<name>/` directory. A canonical
493
+ // checkout has `.git/` as a directory. Either shape proves "is a git
494
+ // worktree of some kind." Absence of `.git` entirely → not a worktree.
495
+ const dotGit = path.join(p, '.git');
496
+ try {
497
+ return fs.existsSync(dotGit);
498
+ }
499
+ catch {
500
+ return false;
501
+ }
502
+ }
503
+ function gitStatusPorcelain(cwd, pathspec) {
504
+ try {
505
+ const output = (0, node_child_process_1.execFileSync)('git', ['status', '--porcelain', '--', pathspec], {
506
+ cwd,
507
+ encoding: 'utf8',
508
+ stdio: ['ignore', 'pipe', 'pipe'],
509
+ });
510
+ return { ok: true, output: output.toString() };
511
+ }
512
+ catch (e) {
513
+ const cause = e;
514
+ const stderr = cause.stderr instanceof Buffer
515
+ ? cause.stderr.toString()
516
+ : typeof cause.stderr === 'string'
517
+ ? cause.stderr
518
+ : (cause.message ?? 'unknown git error');
519
+ return { ok: false, reason: stderr.trim() };
520
+ }
521
+ }
522
+ function gitConfigGet(cwd, key) {
523
+ try {
524
+ const output = (0, node_child_process_1.execFileSync)('git', ['config', '--get', key], {
525
+ cwd,
526
+ encoding: 'utf8',
527
+ stdio: ['ignore', 'pipe', 'pipe'],
528
+ });
529
+ return output.toString().trim();
530
+ }
531
+ catch {
532
+ // `git config --get` exits non-zero when the key is absent; treat as null.
533
+ return null;
534
+ }
535
+ }
536
+ function runWorktreeRepairSparseCommand(opts) {
537
+ const { cwd, out, err, showData } = setupIO(opts);
538
+ const ctx = resolveCawsCtx(cwd, err, showData, 'repair-sparse');
539
+ if (ctx === null)
540
+ return 2;
541
+ // A5a: registry lookup.
542
+ const registryResult = (0, store_1.loadWorktrees)(ctx.cawsDir);
543
+ if (!(0, caws_kernel_1.isOk)(registryResult)) {
544
+ err('caws worktree repair-sparse: failed to load worktrees registry.');
545
+ err((0, diagnostic_1.renderDiagnostics)(registryResult.errors, { showData }));
546
+ return 2;
547
+ }
548
+ const entry = registryResult.value[opts.name];
549
+ if (entry === undefined) {
550
+ err(`caws worktree repair-sparse: missing-registry: '${opts.name}' is not in .caws/worktrees.json.`);
551
+ err(` Recovery: run 'caws worktree list' to see registered worktrees, or 'caws worktree create ${opts.name} --spec <id>' if this is a new worktree.`);
552
+ return 1;
553
+ }
554
+ // A5b: on-disk path presence.
555
+ const recordedPath = entry.path;
556
+ if (typeof recordedPath !== 'string' || recordedPath.length === 0) {
557
+ err(`caws worktree repair-sparse: missing-path: registry entry for '${opts.name}' has no recorded path.`);
558
+ return 1;
559
+ }
560
+ if (!fs.existsSync(recordedPath)) {
561
+ err(`caws worktree repair-sparse: missing-path: recorded path for '${opts.name}' does not exist on disk.`);
562
+ err(` Recorded path: ${recordedPath}`);
563
+ err(` Recovery: re-create the worktree with 'caws worktree create ${opts.name} --spec <id>'.`);
564
+ return 1;
565
+ }
566
+ // A5c: canonical-checkout refusal. Use realpath comparison to be
567
+ // drift-immune to macOS /var vs /private/var symlinks.
568
+ const targetReal = realpathSafe(recordedPath);
569
+ const canonicalReal = realpathSafe(ctx.repoRoot);
570
+ if (targetReal === canonicalReal) {
571
+ err(`caws worktree repair-sparse: canonical-target-refused: '${opts.name}' resolves to the canonical checkout itself.`);
572
+ err(` The canonical checkout IS spec authority — sparse-checkout is not applied there by design.`);
573
+ err(` This command is only for linked worktrees created via 'caws worktree create'.`);
574
+ return 1;
575
+ }
576
+ // A5d: must be a git worktree (sanity — a stale directory after manual
577
+ // `git worktree remove` would pass A5b but fail this).
578
+ if (!isGitWorktree(targetReal)) {
579
+ err(`caws worktree repair-sparse: not-a-worktree: '${opts.name}' exists on disk but is not a git worktree.`);
580
+ err(` Resolved path: ${targetReal}`);
581
+ err(` No .git file or directory found at the target. The CAWS registry and git's worktree registry may have diverged.`);
582
+ err(` Recovery: investigate manually. Do NOT delete or recreate without understanding why the divergence occurred.`);
583
+ return 1;
584
+ }
585
+ // A5e: dirty-specs refusal. Non-destructive — no stash, no clean, no
586
+ // reset, no deletion. If the user has uncommitted work under .caws/
587
+ // specs (e.g., from a previous sparse-disable + edit session), we
588
+ // refuse and direct them to a manual recovery path.
589
+ const dirtyCheck = gitStatusPorcelain(targetReal, '.caws/specs');
590
+ if (!dirtyCheck.ok) {
591
+ err(`caws worktree repair-sparse: git-status-failed: unable to check .caws/specs cleanliness in '${opts.name}'.`);
592
+ err(` git stderr: ${dirtyCheck.reason}`);
593
+ return 2;
594
+ }
595
+ if (dirtyCheck.output.trim().length > 0) {
596
+ err(`caws worktree repair-sparse: dirty-specs-refused: '${opts.name}'/.caws/specs/ contains uncommitted changes.`);
597
+ err(` git status --porcelain .caws/specs/ output:`);
598
+ for (const line of dirtyCheck.output.trim().split('\n')) {
599
+ err(` ${line}`);
600
+ }
601
+ err(` This command will NOT stash, clean, reset, or delete those files. Doing so risks losing work that was`);
602
+ err(` authored under .caws/specs/ inside this worktree (which would be non-authoritative spec copies — but`);
603
+ err(` may still represent intent worth preserving).`);
604
+ err(` Recovery (manual): from inside the worktree, commit or remove the dirty files first, then re-run`);
605
+ err(` 'caws worktree repair-sparse ${opts.name}' from the canonical checkout.`);
606
+ return 1;
607
+ }
608
+ // Idempotency check: if sparse-checkout is already enabled and
609
+ // .caws/specs/ is already absent, we have nothing to do.
610
+ const sparseFlag = gitConfigGet(targetReal, 'core.sparseCheckout');
611
+ const specsDir = path.join(targetReal, '.caws', 'specs');
612
+ const specsAbsent = !fs.existsSync(specsDir);
613
+ if (sparseFlag === 'true' && specsAbsent) {
614
+ out(`caws worktree repair-sparse: ${opts.name} already has the sparse invariant (core.sparseCheckout=true, .caws/specs absent). No action taken.`);
615
+ return 0;
616
+ }
617
+ // A4: apply the kernel helper.
618
+ const repairResult = (0, git_sparse_checkout_1.configureWorktreeSparseCheckout)(targetReal);
619
+ if (!repairResult.ok) {
620
+ err(`caws worktree repair-sparse: failed at step '${repairResult.step}': ${repairResult.reason}`);
621
+ return 2;
622
+ }
623
+ // Post-condition verification. configureWorktreeSparseCheckout already
624
+ // calls `git checkout` to re-materialize, so .caws/specs/ should be
625
+ // absent now. Verify explicitly.
626
+ const postSparseFlag = gitConfigGet(targetReal, 'core.sparseCheckout');
627
+ const postSpecsAbsent = !fs.existsSync(specsDir);
628
+ if (postSparseFlag !== 'true' || !postSpecsAbsent) {
629
+ err(`caws worktree repair-sparse: post-condition violation for '${opts.name}'.`);
630
+ err(` core.sparseCheckout=${postSparseFlag ?? '(absent)'} (expected: true)`);
631
+ err(` .caws/specs/ absent=${postSpecsAbsent} (expected: true)`);
632
+ err(` The kernel helper reported success but the invariant is not satisfied. This is likely a defect.`);
633
+ return 2;
634
+ }
635
+ out(`caws worktree repair-sparse: ${opts.name} sparse invariant restored (core.sparseCheckout=true, .caws/specs absent).`);
284
636
  return 0;
285
637
  }
286
638
  //# sourceMappingURL=worktree.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../../src/shell/commands/worktree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../../src/shell/commands/worktree.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"disposition.d.ts","sourceRoot":"","sources":["../../../src/shell/gates/disposition.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE1E,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AACjD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,QAAQ,CAAC,YAAY,EAAE,SAAS,eAAe,EAAE,CAAC;IAClD,4EAA4E;IAC5E,QAAQ,CAAC,mBAAmB,EAAE,SAAS,cAAc,EAAE,CAAC;IACxD,uCAAuC;IACvC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAkDD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACb,iBAAiB,CAiDnB"}
1
+ {"version":3,"file":"disposition.d.ts","sourceRoot":"","sources":["../../../src/shell/gates/disposition.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE1E,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AACjD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,QAAQ,CAAC,YAAY,EAAE,SAAS,eAAe,EAAE,CAAC;IAClD,4EAA4E;IAC5E,QAAQ,CAAC,mBAAmB,EAAE,SAAS,cAAc,EAAE,CAAC;IACxD,uCAAuC;IACvC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AA0FD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GACb,iBAAiB,CAoDnB"}
@@ -57,12 +57,50 @@ const SUBPROCESS_GATE_TO_POLICY_GATE = {
57
57
  function canonicalGateName(subprocessGate) {
58
58
  return SUBPROCESS_GATE_TO_POLICY_GATE[subprocessGate] ?? subprocessGate;
59
59
  }
60
+ // gateId is a plain string: the authoritative iteration set is
61
+ // policy.gates keys (CAWS-GATES-POLICY-DISPOSITION-DRIFT-001), which
62
+ // includes gates beyond the canonical KNOWN_GATE_IDS tuple.
60
63
  function gateConfigFor(policy, gateId) {
61
- const cfg = policy.gates[gateId];
64
+ // Policy.gates is typed (in the kernel) as a fixed-shape object over the
65
+ // canonical gate names; the kernel type is scope.out for this slice. Read
66
+ // through a string-indexable view so policy-declared gates beyond the
67
+ // canonical set are reachable (CAWS-GATES-POLICY-DISPOSITION-DRIFT-001).
68
+ // The shape of each value (enabled, mode) is unchanged.
69
+ const gates = policy.gates;
70
+ const cfg = gates[gateId];
62
71
  if (cfg === undefined)
63
72
  return undefined;
64
73
  return { enabled: cfg.enabled, mode: cfg.mode };
65
74
  }
75
+ /**
76
+ * The authoritative iteration set for disposition derivation: every gate
77
+ * DECLARED in policy.gates. KNOWN_GATE_IDS is used ONLY to pin a stable,
78
+ * deterministic order for the canonical five (so existing output ordering
79
+ * is preserved); any additional policy-declared gate is appended after
80
+ * them in policy declaration order.
81
+ *
82
+ * CAWS-GATES-POLICY-DISPOSITION-DRIFT-001: iterating KNOWN_GATE_IDS alone
83
+ * silently demoted any policy-declared gate not in the tuple (a mode:block
84
+ * gate would never block). The known tuple is order/metadata only, never
85
+ * the authority filter for which gates are evaluated.
86
+ */
87
+ function orderedPolicyGateIds(policy) {
88
+ const declared = Object.keys(policy.gates);
89
+ const declaredSet = new Set(declared);
90
+ const ordered = [];
91
+ // Canonical five first, in their fixed order, when declared.
92
+ for (const id of KNOWN_GATE_IDS) {
93
+ if (declaredSet.has(id))
94
+ ordered.push(id);
95
+ }
96
+ // Then any other declared gate, in policy declaration order.
97
+ const known = new Set(KNOWN_GATE_IDS);
98
+ for (const id of declared) {
99
+ if (!known.has(id))
100
+ ordered.push(id);
101
+ }
102
+ return ordered;
103
+ }
66
104
  function deriveDispositions(report, policy) {
67
105
  // Group violations by canonical gate name (applying mechanical aliases).
68
106
  const byGate = new Map();
@@ -75,7 +113,10 @@ function deriveDispositions(report, policy) {
75
113
  list.push(v);
76
114
  }
77
115
  const dispositions = [];
78
- for (const gateId of KNOWN_GATE_IDS) {
116
+ // Iterate every POLICY-DECLARED gate (authority), ordered canonical-first
117
+ // for stable output. KNOWN_GATE_IDS is order/metadata only — it does NOT
118
+ // decide which gates are evaluated (CAWS-GATES-POLICY-DISPOSITION-DRIFT-001).
119
+ for (const gateId of orderedPolicyGateIds(policy)) {
79
120
  const cfg = gateConfigFor(policy, gateId);
80
121
  if (cfg === undefined)
81
122
  continue; // gate not declared in policy
@@ -1 +1 @@
1
- {"version":3,"file":"disposition.js","sourceRoot":"","sources":["../../../src/shell/gates/disposition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"disposition.js","sourceRoot":"","sources":["../../../src/shell/gates/disposition.ts"],"names":[],"mappings":";AAAA,mCAAmC;AACnC,EAAE;AACF,kEAAkE;AAClE,qEAAqE;AACrE,oEAAoE;AACpE,0DAA0D;AAC1D,EAAE;AACF,SAAS;AACT,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,EAAE;AACF,uEAAuE;AACvE,qEAAqE;AACrE,gEAAgE;AAChE,qEAAqE;AACrE,4CAA4C;;AAoH5C,gDAuDC;AA/ID,MAAM,cAAc,GAAG;IACrB,cAAc;IACd,mBAAmB;IACnB,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;CACR,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,8BAA8B,GAAqC;IACvE,WAAW,EAAE,YAAY;IACzB,aAAa,EAAE,gBAAgB;CAChC,CAAC;AAEF,SAAS,iBAAiB,CAAC,cAAsB;IAC/C,OAAO,8BAA8B,CAAC,cAAc,CAAC,IAAI,cAAc,CAAC;AAC1E,CAAC;AAED,+DAA+D;AAC/D,qEAAqE;AACrE,4DAA4D;AAC5D,SAAS,aAAa,CACpB,MAAc,EACd,MAAc;IAEd,yEAAyE;IACzE,0EAA0E;IAC1E,sEAAsE;IACtE,yEAAyE;IACzE,wDAAwD;IACxD,MAAM,KAAK,GAAG,MAAM,CAAC,KAGpB,CAAC;IACF,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAgB,EAAE,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,oBAAoB,CAAC,MAAc;IAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,6DAA6D;IAC7D,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;QAChC,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,6DAA6D;IAC7D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,cAAc,CAAC,CAAC;IAC9C,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAgB,kBAAkB,CAChC,MAAmB,EACnB,MAAc;IAEd,yEAAyE;IACzE,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;IACnD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;;YAC9C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,YAAY,GAAsB,EAAE,CAAC;IAC3C,0EAA0E;IAC1E,yEAAyE;IACzE,8EAA8E;IAC9E,KAAK,MAAM,MAAM,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,GAAG,KAAK,SAAS;YAAE,SAAS,CAAC,8BAA8B;QAC/D,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEtB,IAAI,OAAoB,CAAC;QACzB,IAAI,MAAe,CAAC;QACpB,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACjD,OAAO,GAAG,SAAS,CAAC;YACpB,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;aAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,MAAM,CAAC;YACjB,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,CAAC;YACjB,MAAM,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC;QAChC,CAAC;QAED,YAAY,CAAC,IAAI,CAAC;YAChB,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO;YACP,MAAM;YACN,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,iEAAiE;IACjE,mDAAmD;IACnD,MAAM,mBAAmB,GAAqB,EAAE,CAAC;IACjD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE;QAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAEtE,OAAO;QACL,YAAY;QACZ,mBAAmB;QACnB,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;KAC9C,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  export { SHELL_RULES, SHELL_RULE_PREFIXES } from './rules';
2
2
  export type { ShellRule } from './rules';
3
- export { resolveSession, describeSessionSource } from './session/resolve-session';
4
- export type { ResolveSessionOptions, ResolvedSession, SessionCapsule, SessionSource, } from './session/types';
3
+ export { resolveSession, describeSessionSource, resolveSessionCandidates, admitsOwner, describeCandidateTrace, } from './session/resolve-session';
4
+ export type { CandidateTraceEntry, ResolveCandidatesOptions, ResolveSessionOptions, ResolvedSession, SessionCandidate, SessionCandidates, SessionCapsule, SessionSource, } from './session/types';
5
5
  export { buildActor } from './session/actor';
6
6
  export type { BuildActorOptions } from './session/actor';
7
7
  export { resolveBinding, parseWorktreePorcelain, } from './binding/resolve-binding';
@@ -18,6 +18,8 @@ export { runScopeCommand } from './commands/scope';
18
18
  export type { ScopeCommandOptions, ScopeMode } from './commands/scope';
19
19
  export { runEvidenceRecordCommand } from './commands/evidence';
20
20
  export type { EvidenceKind, EvidenceRecordOptions, } from './commands/evidence';
21
+ export { runEventsMigrateCommand, runEventsRotateCommand, runEventsVerifyArchiveCommand, } from './commands/events';
22
+ export type { EventsMigrateCommandOptions, EventsRotateCommandOptions, EventsVerifyArchiveCommandOptions, } from './commands/events';
21
23
  export { runClaimCommand } from './commands/claim';
22
24
  export type { ClaimCommandOptions } from './commands/claim';
23
25
  export { renderClaimPanel, classifyOwnership } from './render/claim';
@@ -28,6 +30,8 @@ export { renderStatus } from './render/status';
28
30
  export type { StatusRenderInput } from './render/status';
29
31
  export { runGatesRunCommand } from './commands/gates';
30
32
  export type { GatesRunCommandOptions, GatesRunCommandRequest, } from './commands/gates';
33
+ export { runPrepushCommand } from './commands/prepush';
34
+ export type { PrepushCommandOptions } from './commands/prepush';
31
35
  export { renderGatesRun } from './render/gates';
32
36
  export { validateGatesReport, } from './gates/gate-result-contract';
33
37
  export type { GatesReport, GatesViolation, GatesWarning, } from './gates/gate-result-contract';
@@ -43,12 +47,16 @@ export { renderWaiverSummary, renderWaiverDetail, } from './render/waiver';
43
47
  export type { RenderWaiverSummaryInput, RenderWaiverDetailInput, } from './render/waiver';
44
48
  export { runInitCommand } from './commands/init';
45
49
  export type { InitCommandOptions } from './commands/init';
46
- export { runSpecsCreateCommand, runSpecsListCommand, runSpecsShowCommand, runSpecsCloseCommand, runSpecsArchiveCommand, } from './commands/specs';
47
- export type { SpecsCreateOptions, SpecsListOptions, SpecsShowOptions, SpecsCloseOptions, SpecsArchiveOptions, } from './commands/specs';
48
- export { runWorktreeCreateCommand, runWorktreeListCommand, runWorktreeBindCommand, runWorktreeDestroyCommand, runWorktreeMergeCommand, } from './commands/worktree';
49
- export type { WorktreeCreateOptions, WorktreeListOptions, WorktreeBindOptions, WorktreeDestroyOptions, WorktreeMergeOptions, } from './commands/worktree';
50
+ export { runSpecsCreateCommand, runSpecsListCommand, runSpecsShowCommand, runSpecsActivateCommand, runSpecsCloseCommand, runSpecsArchiveCommand, runSpecsPruneArchiveCommand, runSpecsRecoverCommand, runSpecsRetireDraftCommand, runSpecsMigrateCommand, } from './commands/specs';
51
+ export type { SpecsCreateOptions, SpecsListOptions, SpecsShowOptions, SpecsActivateOptions, SpecsCloseOptions, SpecsArchiveOptions, SpecsPruneArchiveOptions, SpecsRecoverOptions, SpecsRetireDraftOptions, SpecsMigrateOptions, } from './commands/specs';
52
+ export { runWorktreeCreateCommand, runWorktreeListCommand, runWorktreeBindCommand, runWorktreeDestroyCommand, runWorktreeMergeCommand, runWorktreeMigrateRegistryCommand, runWorktreeRepairSparseCommand, } from './commands/worktree';
53
+ export type { WorktreeCreateOptions, WorktreeListOptions, WorktreeBindOptions, WorktreeDestroyOptions, WorktreeMergeOptions, WorktreeMigrateRegistryOptions, WorktreeRepairSparseOptions, } from './commands/worktree';
50
54
  export { renderInit } from './render/init';
51
55
  export type { RenderInitInput } from './render/init';
56
+ export { runAgentsRegisterCommand, runAgentsHeartbeatCommand, runAgentsStopCommand, runAgentsListCommand, runAgentsShowCommand, runAgentsPruneCommand, } from './commands/agents';
57
+ export type { RegisterOpts as AgentsRegisterOptions, HeartbeatOpts as AgentsHeartbeatOptions, StopOpts as AgentsStopOptions, ListOpts as AgentsListOptions, ShowOpts as AgentsShowOptions, PruneOpts as AgentsPruneOptions, } from './commands/agents';
52
58
  export { registerShellCommands } from './register';
53
59
  export type { RegisterShellCommandsOptions } from './register';
60
+ export { COMMAND_SURFACE_METADATA } from './command-metadata';
61
+ export type { CommandMeta, LeafCommandMeta, GroupCommandMeta, CommandOptionMeta, CommandArgMeta, } from './command-metadata';
54
62
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shell/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC3D,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClF,YAAY,EACV,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EACL,cAAc,EACd,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EACL,aAAa,EACb,cAAc,EACd,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,YAAY,EACV,YAAY,EACZ,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACrE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EACV,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,mBAAmB,GACpB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,WAAW,EACX,cAAc,EACd,YAAY,GACb,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACxF,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,GACf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shell/index.ts"],"names":[],"mappings":"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"}