clay-server 2.20.1-beta.12 → 2.20.1-beta.13

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 (2) hide show
  1. package/lib/sdk-bridge.js +20 -1
  2. package/package.json +1 -1
package/lib/sdk-bridge.js CHANGED
@@ -716,6 +716,9 @@ function createSDKBridge(opts) {
716
716
  LANG: process.env.LANG || "en_US.UTF-8",
717
717
  };
718
718
 
719
+ console.log("[sdk-bridge] Spawning worker: uid=" + userInfo.uid + " gid=" + userInfo.gid + " cwd=" + cwd + " socket=" + socketPath);
720
+ console.log("[sdk-bridge] Worker script: " + WORKER_SCRIPT);
721
+ console.log("[sdk-bridge] Node: " + process.execPath);
719
722
  worker.process = spawn(process.execPath, [WORKER_SCRIPT, socketPath], {
720
723
  uid: userInfo.uid,
721
724
  gid: userInfo.gid,
@@ -735,8 +738,24 @@ function createSDKBridge(opts) {
735
738
  });
736
739
 
737
740
  worker.process.on("exit", function(code, signal) {
738
- console.log("[sdk-bridge] Worker for " + linuxUser + " exited (code=" + code + ", signal=" + signal + ")");
741
+ console.log("[sdk-bridge] Worker for " + linuxUser + " exited (code=" + code + ", signal=" + signal + ")" + (worker._stderrBuf ? " stderr: " + worker._stderrBuf.trim() : ""));
742
+ // Reject readyPromise if worker dies before becoming ready
743
+ if (!worker.ready && worker._readyResolve) {
744
+ worker._readyResolve = null;
745
+ // Let the readyPromise hang; the query_error handler will clean up
746
+ }
739
747
  // Notify message handlers about unexpected exit so sessions don't hang
748
+ if (code === 0 && !worker.ready) {
749
+ // Worker exited cleanly before sending "ready" — something is wrong
750
+ for (var h = 0; h < worker.messageHandlers.length; h++) {
751
+ worker.messageHandlers[h]({
752
+ type: "query_error",
753
+ error: "Worker exited before ready (code=0). stderr: " + (worker._stderrBuf || "(none)"),
754
+ exitCode: 0,
755
+ stderr: worker._stderrBuf || null,
756
+ });
757
+ }
758
+ }
740
759
  if (code !== 0 && code !== null) {
741
760
  var stderrText = worker._stderrBuf || "";
742
761
  for (var h = 0; h < worker.messageHandlers.length; h++) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clay-server",
3
- "version": "2.20.1-beta.12",
3
+ "version": "2.20.1-beta.13",
4
4
  "description": "Web UI for Claude Code. Any device. Push notifications.",
5
5
  "bin": {
6
6
  "clay-server": "./bin/cli.js",