claudekit-cli 3.38.0-dev.6 → 3.38.0-dev.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/bin/ck.js CHANGED
@@ -84,6 +84,29 @@ const isExpectedBunOnlyRelease = () => {
84
84
  };
85
85
 
86
86
  const shouldWarnForBunFallback = () => !isExpectedBunOnlyRelease();
87
+ const RUNTIME_FATAL_SIGNALS = new Set(["SIGABRT", "SIGBUS", "SIGILL", "SIGSEGV", "SIGTRAP"]);
88
+
89
+ const handleRuntimeSignalExit = (signal, sourceLabel) => {
90
+ if (!signal) return;
91
+ if (!RUNTIME_FATAL_SIGNALS.has(signal)) {
92
+ process.kill(process.pid, signal);
93
+ return;
94
+ }
95
+
96
+ console.error(`❌ ${sourceLabel} crashed with ${signal}`);
97
+ if (signal === "SIGILL") {
98
+ console.error(
99
+ "This usually means the bundled executable requires newer CPU instructions than this machine provides.",
100
+ );
101
+ console.error(
102
+ "On Linux x64, install a release that includes the baseline-compatible binary build.",
103
+ );
104
+ } else {
105
+ console.error("The bundled executable crashed before ClaudeKit could finish starting.");
106
+ }
107
+ console.error("If this persists, report it at: https://github.com/mrgoonie/claudekit-cli/issues");
108
+ process.exit(1);
109
+ };
87
110
 
88
111
  /**
89
112
  * Run CLI via bun runtime. Preferred over Node.js when dist/index.js contains
@@ -111,7 +134,7 @@ const runWithBun = (showWarning = false) => {
111
134
  return false;
112
135
  }
113
136
  if (result.signal) {
114
- process.kill(process.pid, result.signal);
137
+ handleRuntimeSignalExit(result.signal, "Bun runtime");
115
138
  }
116
139
  process.exit(result.status || 0);
117
140
  };
@@ -216,7 +239,7 @@ const runBinary = (binaryPath) => {
216
239
  if (errorOccurred) return;
217
240
 
218
241
  if (signal) {
219
- process.kill(process.pid, signal);
242
+ handleRuntimeSignalExit(signal, "Native binary");
220
243
  return;
221
244
  }
222
245
  // Use exitCode instead of exit() for proper handle cleanup on Windows
package/dist/index.js CHANGED
@@ -57244,7 +57244,7 @@ var package_default;
57244
57244
  var init_package = __esm(() => {
57245
57245
  package_default = {
57246
57246
  name: "claudekit-cli",
57247
- version: "3.38.0-dev.6",
57247
+ version: "3.38.0-dev.8",
57248
57248
  description: "CLI tool for bootstrapping and updating ClaudeKit projects",
57249
57249
  type: "module",
57250
57250
  repository: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claudekit-cli",
3
- "version": "3.38.0-dev.6",
3
+ "version": "3.38.0-dev.8",
4
4
  "description": "CLI tool for bootstrapping and updating ClaudeKit projects",
5
5
  "type": "module",
6
6
  "repository": {