claudekit-cli 3.42.2-dev.6 → 3.42.2-dev.7
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/cli-manifest.json +2 -2
- package/dist/index.js +30 -7
- package/package.json +1 -1
package/cli-manifest.json
CHANGED
package/dist/index.js
CHANGED
|
@@ -62389,7 +62389,7 @@ var package_default;
|
|
|
62389
62389
|
var init_package = __esm(() => {
|
|
62390
62390
|
package_default = {
|
|
62391
62391
|
name: "claudekit-cli",
|
|
62392
|
-
version: "3.42.2-dev.
|
|
62392
|
+
version: "3.42.2-dev.7",
|
|
62393
62393
|
description: "CLI tool for bootstrapping and updating ClaudeKit projects",
|
|
62394
62394
|
type: "module",
|
|
62395
62395
|
repository: {
|
|
@@ -86223,6 +86223,20 @@ import { join as join86, resolve as resolve31 } from "node:path";
|
|
|
86223
86223
|
var HOOK_CHECK_TIMEOUT_MS = 5000;
|
|
86224
86224
|
var PYTHON_CHECK_TIMEOUT_MS = 3000;
|
|
86225
86225
|
var MAX_LOG_FILE_SIZE_BYTES = 10 * 1024 * 1024;
|
|
86226
|
+
|
|
86227
|
+
class FixerDidNotConvergeError extends Error {
|
|
86228
|
+
unresolved;
|
|
86229
|
+
constructor(unresolved) {
|
|
86230
|
+
const lines = unresolved.map((f3) => ` ${f3.label} :: ${f3.eventName} :: ${f3.command}`).join(`
|
|
86231
|
+
`);
|
|
86232
|
+
super(`ck doctor --fix: fixer did not converge — ${unresolved.length} stale hook command path(s) remain after repair:
|
|
86233
|
+
${lines}
|
|
86234
|
+
|
|
86235
|
+
This is a bug. Please open an issue at https://github.com/mrgoonie/claudekit-cli`);
|
|
86236
|
+
this.name = "FixerDidNotConvergeError";
|
|
86237
|
+
this.unresolved = unresolved;
|
|
86238
|
+
}
|
|
86239
|
+
}
|
|
86226
86240
|
function getHooksDir(projectDir) {
|
|
86227
86241
|
const projectHooksDir = resolve31(projectDir, ".claude", "hooks");
|
|
86228
86242
|
const globalHooksDir = resolve31(PathResolver.getGlobalKitDir(), "hooks");
|
|
@@ -86316,13 +86330,18 @@ async function repairHookCommandsInSettingsFile(settingsFile) {
|
|
|
86316
86330
|
if (!settings?.hooks) {
|
|
86317
86331
|
return 0;
|
|
86318
86332
|
}
|
|
86333
|
+
const findings = collectHookCommandFindings(settings, settingsFile);
|
|
86334
|
+
if (findings.length === 0) {
|
|
86335
|
+
return 0;
|
|
86336
|
+
}
|
|
86337
|
+
const repairMap = new Map(findings.map((f3) => [f3.command, f3.expected]));
|
|
86319
86338
|
let repaired = 0;
|
|
86320
86339
|
for (const entries of Object.values(settings.hooks)) {
|
|
86321
86340
|
for (const entry of entries) {
|
|
86322
86341
|
if ("command" in entry && typeof entry.command === "string") {
|
|
86323
|
-
const
|
|
86324
|
-
if (
|
|
86325
|
-
entry.command =
|
|
86342
|
+
const fixed = repairMap.get(entry.command);
|
|
86343
|
+
if (fixed !== undefined) {
|
|
86344
|
+
entry.command = fixed;
|
|
86326
86345
|
repaired++;
|
|
86327
86346
|
}
|
|
86328
86347
|
}
|
|
@@ -86333,9 +86352,9 @@ async function repairHookCommandsInSettingsFile(settingsFile) {
|
|
|
86333
86352
|
if (!hook.command) {
|
|
86334
86353
|
continue;
|
|
86335
86354
|
}
|
|
86336
|
-
const
|
|
86337
|
-
if (
|
|
86338
|
-
hook.command =
|
|
86355
|
+
const fixed = repairMap.get(hook.command);
|
|
86356
|
+
if (fixed !== undefined) {
|
|
86357
|
+
hook.command = fixed;
|
|
86339
86358
|
repaired++;
|
|
86340
86359
|
}
|
|
86341
86360
|
}
|
|
@@ -86344,6 +86363,10 @@ async function repairHookCommandsInSettingsFile(settingsFile) {
|
|
|
86344
86363
|
if (repaired > 0) {
|
|
86345
86364
|
await SettingsMerger.writeSettingsFile(settingsFile.path, settings);
|
|
86346
86365
|
}
|
|
86366
|
+
const remaining = collectHookCommandFindings(settings, settingsFile);
|
|
86367
|
+
if (remaining.length > 0) {
|
|
86368
|
+
throw new FixerDidNotConvergeError(remaining);
|
|
86369
|
+
}
|
|
86347
86370
|
return repaired;
|
|
86348
86371
|
}
|
|
86349
86372
|
async function checkHookSyntax(projectDir) {
|