@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.
- package/README.md +1 -1
- package/dist/index.js +55 -58
- package/dist/init/hook-packs/manifest-claude-code.d.ts +1 -1
- package/dist/init/hook-packs/manifest-claude-code.d.ts.map +1 -1
- package/dist/init/hook-packs/manifest-claude-code.js +317 -6
- package/dist/init/hook-packs/manifest-claude-code.js.map +1 -1
- package/dist/init/hook-packs/types.js +1 -1
- package/dist/init/hook-packs/types.js.map +1 -1
- package/dist/shell/binding/resolve-binding.d.ts.map +1 -1
- package/dist/shell/binding/resolve-binding.js +105 -1
- package/dist/shell/binding/resolve-binding.js.map +1 -1
- package/dist/shell/binding/types.d.ts +47 -3
- package/dist/shell/binding/types.d.ts.map +1 -1
- package/dist/shell/command-metadata.d.ts +93 -0
- package/dist/shell/command-metadata.d.ts.map +1 -0
- package/dist/shell/command-metadata.js +687 -0
- package/dist/shell/command-metadata.js.map +1 -0
- package/dist/shell/commands/agents.d.ts +48 -0
- package/dist/shell/commands/agents.d.ts.map +1 -0
- package/dist/shell/commands/agents.js +577 -0
- package/dist/shell/commands/agents.js.map +1 -0
- package/dist/shell/commands/claim.d.ts +16 -0
- package/dist/shell/commands/claim.d.ts.map +1 -1
- package/dist/shell/commands/claim.js +88 -30
- package/dist/shell/commands/claim.js.map +1 -1
- package/dist/shell/commands/events.d.ts +106 -0
- package/dist/shell/commands/events.d.ts.map +1 -0
- package/dist/shell/commands/events.js +510 -0
- package/dist/shell/commands/events.js.map +1 -0
- package/dist/shell/commands/gates.d.ts +2 -2
- package/dist/shell/commands/gates.d.ts.map +1 -1
- package/dist/shell/commands/gates.js +106 -25
- package/dist/shell/commands/gates.js.map +1 -1
- package/dist/shell/commands/init.d.ts.map +1 -1
- package/dist/shell/commands/init.js +26 -0
- package/dist/shell/commands/init.js.map +1 -1
- package/dist/shell/commands/prepush.d.ts +26 -0
- package/dist/shell/commands/prepush.d.ts.map +1 -0
- package/dist/shell/commands/prepush.js +373 -0
- package/dist/shell/commands/prepush.js.map +1 -0
- package/dist/shell/commands/scope.d.ts.map +1 -1
- package/dist/shell/commands/scope.js +31 -1
- package/dist/shell/commands/scope.js.map +1 -1
- package/dist/shell/commands/specs.d.ts +44 -3
- package/dist/shell/commands/specs.d.ts.map +1 -1
- package/dist/shell/commands/specs.js +411 -15
- package/dist/shell/commands/specs.js.map +1 -1
- package/dist/shell/commands/status.d.ts +12 -0
- package/dist/shell/commands/status.d.ts.map +1 -1
- package/dist/shell/commands/status.js +236 -21
- package/dist/shell/commands/status.js.map +1 -1
- package/dist/shell/commands/worktree.d.ts +9 -0
- package/dist/shell/commands/worktree.d.ts.map +1 -1
- package/dist/shell/commands/worktree.js +353 -1
- package/dist/shell/commands/worktree.js.map +1 -1
- package/dist/shell/gates/disposition.d.ts.map +1 -1
- package/dist/shell/gates/disposition.js +43 -2
- package/dist/shell/gates/disposition.js.map +1 -1
- package/dist/shell/index.d.ts +14 -6
- package/dist/shell/index.d.ts.map +1 -1
- package/dist/shell/index.js +32 -1
- package/dist/shell/index.js.map +1 -1
- package/dist/shell/legacy-command-map.js +832 -0
- package/dist/shell/push-range/classify-range.d.ts +99 -0
- package/dist/shell/push-range/classify-range.d.ts.map +1 -0
- package/dist/shell/push-range/classify-range.js +155 -0
- package/dist/shell/push-range/classify-range.js.map +1 -0
- package/dist/shell/push-range/scope-match.d.ts +13 -0
- package/dist/shell/push-range/scope-match.d.ts.map +1 -0
- package/dist/shell/push-range/scope-match.js +53 -0
- package/dist/shell/push-range/scope-match.js.map +1 -0
- package/dist/shell/register.d.ts.map +1 -1
- package/dist/shell/register.js +350 -165
- package/dist/shell/register.js.map +1 -1
- package/dist/shell/registered-command-groups.js +48 -0
- package/dist/shell/render/status.d.ts +7 -1
- package/dist/shell/render/status.d.ts.map +1 -1
- package/dist/shell/render/status.js +72 -0
- package/dist/shell/render/status.js.map +1 -1
- package/dist/shell/rules.d.ts +19 -0
- package/dist/shell/rules.d.ts.map +1 -1
- package/dist/shell/rules.js +27 -0
- package/dist/shell/rules.js.map +1 -1
- package/dist/shell/session/resolve-session.d.ts +29 -1
- package/dist/shell/session/resolve-session.d.ts.map +1 -1
- package/dist/shell/session/resolve-session.js +817 -11
- package/dist/shell/session/resolve-session.js.map +1 -1
- package/dist/shell/session/types.d.ts +127 -1
- package/dist/shell/session/types.d.ts.map +1 -1
- package/dist/shell/session/types.js +10 -4
- package/dist/shell/session/types.js.map +1 -1
- package/dist/store/agents-store.d.ts.map +1 -1
- package/dist/store/agents-store.js +9 -0
- package/dist/store/agents-store.js.map +1 -1
- package/dist/store/apply-patch.d.ts.map +1 -1
- package/dist/store/apply-patch.js +15 -0
- package/dist/store/apply-patch.js.map +1 -1
- package/dist/store/doctor-snapshot.d.ts.map +1 -1
- package/dist/store/doctor-snapshot.js +169 -3
- package/dist/store/doctor-snapshot.js.map +1 -1
- package/dist/store/events-migration.d.ts +207 -0
- package/dist/store/events-migration.d.ts.map +1 -0
- package/dist/store/events-migration.js +358 -0
- package/dist/store/events-migration.js.map +1 -0
- package/dist/store/events-store.d.ts +47 -1
- package/dist/store/events-store.d.ts.map +1 -1
- package/dist/store/events-store.js +278 -0
- package/dist/store/events-store.js.map +1 -1
- package/dist/store/git-autocommit.d.ts +46 -0
- package/dist/store/git-autocommit.d.ts.map +1 -0
- package/dist/store/git-autocommit.js +198 -0
- package/dist/store/git-autocommit.js.map +1 -0
- package/dist/store/git-sparse-checkout.d.ts +25 -0
- package/dist/store/git-sparse-checkout.d.ts.map +1 -0
- package/dist/store/git-sparse-checkout.js +101 -0
- package/dist/store/git-sparse-checkout.js.map +1 -0
- package/dist/store/index.d.ts +6 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +16 -1
- package/dist/store/index.js.map +1 -1
- package/dist/store/leases-store.d.ts +89 -0
- package/dist/store/leases-store.d.ts.map +1 -0
- package/dist/store/leases-store.js +427 -0
- package/dist/store/leases-store.js.map +1 -0
- package/dist/store/lifecycle-transaction.d.ts.map +1 -1
- package/dist/store/lifecycle-transaction.js +34 -1
- package/dist/store/lifecycle-transaction.js.map +1 -1
- package/dist/store/rules.d.ts +74 -1
- package/dist/store/rules.d.ts.map +1 -1
- package/dist/store/rules.js +76 -0
- package/dist/store/rules.js.map +1 -1
- package/dist/store/specs-migration.d.ts +128 -0
- package/dist/store/specs-migration.d.ts.map +1 -0
- package/dist/store/specs-migration.js +481 -0
- package/dist/store/specs-migration.js.map +1 -0
- package/dist/store/specs-store.d.ts.map +1 -1
- package/dist/store/specs-store.js +14 -2
- package/dist/store/specs-store.js.map +1 -1
- package/dist/store/specs-writer.d.ts +130 -3
- package/dist/store/specs-writer.d.ts.map +1 -1
- package/dist/store/specs-writer.js +941 -102
- package/dist/store/specs-writer.js.map +1 -1
- package/dist/store/types.d.ts +31 -1
- package/dist/store/types.d.ts.map +1 -1
- package/dist/store/waivers-store.d.ts.map +1 -1
- package/dist/store/waivers-store.js +8 -1
- package/dist/store/waivers-store.js.map +1 -1
- package/dist/store/worktrees-migration.d.ts +141 -0
- package/dist/store/worktrees-migration.d.ts.map +1 -0
- package/dist/store/worktrees-migration.js +356 -0
- package/dist/store/worktrees-migration.js.map +1 -0
- package/dist/store/worktrees-writer.d.ts +28 -0
- package/dist/store/worktrees-writer.d.ts.map +1 -1
- package/dist/store/worktrees-writer.js +147 -13
- package/dist/store/worktrees-writer.js.map +1 -1
- package/package.json +5 -2
- package/templates/hook-packs/claude-code/CLAUDE.md +11 -5
- package/templates/hook-packs/claude-code/agent-heartbeat.sh +131 -0
- package/templates/hook-packs/claude-code/agent-register.sh +62 -0
- package/templates/hook-packs/claude-code/agent-stop.sh +51 -0
- package/templates/hook-packs/claude-code/audit.sh +1 -1
- package/templates/hook-packs/claude-code/block-dangerous.sh +1 -1
- package/templates/hook-packs/claude-code/classify_command.py +1 -1
- package/templates/hook-packs/claude-code/cwd-guard.sh +30 -0
- package/templates/hook-packs/claude-code/dispatch/post_tool_use.sh +15 -4
- package/templates/hook-packs/claude-code/dispatch/pre_tool_use.sh +19 -2
- package/templates/hook-packs/claude-code/dispatch/session_start.sh +6 -2
- package/templates/hook-packs/claude-code/dispatch/stop.sh +7 -2
- package/templates/hook-packs/claude-code/duplicate-export-check.sh +156 -0
- package/templates/hook-packs/claude-code/god-object-check.sh +102 -0
- package/templates/hook-packs/claude-code/guard-strikes.sh +1 -1
- package/templates/hook-packs/claude-code/lib/parse-input.sh +115 -1
- package/templates/hook-packs/claude-code/lib/run-handlers.sh +1 -1
- package/templates/hook-packs/claude-code/loc-delta-check.sh +91 -0
- package/templates/hook-packs/claude-code/naming-check.sh +128 -0
- package/templates/hook-packs/claude-code/plan-transcript-finalize.sh +59 -0
- package/templates/hook-packs/claude-code/plan-transcript-snapshot.sh +86 -0
- package/templates/hook-packs/claude-code/protected-paths.sh +59 -0
- package/templates/hook-packs/claude-code/quiet-merge.sh +68 -0
- package/templates/hook-packs/claude-code/reset-danger-latch.sh +1 -1
- package/templates/hook-packs/claude-code/reset-strikes.sh +1 -1
- package/templates/hook-packs/claude-code/runtime-paths.sh +1 -1
- package/templates/hook-packs/claude-code/scan-secrets.sh +98 -0
- package/templates/hook-packs/claude-code/scope-guard.sh +47 -65
- package/templates/hook-packs/claude-code/session-caws-status.sh +7 -1
- package/templates/hook-packs/claude-code/session-log.sh +1 -1
- package/templates/hook-packs/claude-code/session_log_renderer.py +956 -0
- package/templates/hook-packs/claude-code/shortcut-language-check.sh +147 -0
- package/templates/hook-packs/claude-code/worktree-guard.sh +130 -4
- 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
|
-
|
|
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;
|
|
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
|
-
|
|
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
|
-
|
|
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":";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;;
|
|
1
|
+
{"version":3,"file":"disposition.js","sourceRoot":"","sources":["../../../src/shell/gates/disposition.ts"],"names":[],"mappings":"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"}
|
package/dist/shell/index.d.ts
CHANGED
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shell/index.ts"],"names":[],"mappings":"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"}
|