fix(cli): v0.5.7 — event loop keepalive for stdout flush
Some checks failed
Some checks failed
Node.js stdout to a pipe is buffered. Without periodic event loop activity, WS callback → server.notification() → stdout.write() may not flush until the next I/O event. A 1s setInterval (NOT unref'd) keeps the event loop ticking so notifications flush immediately. This is why claude-intercom worked: its 1s HTTP poll kept the event loop active as a side effect. Claudemesh's passive WS listener let the event loop settle, causing stdout to buffer indefinitely. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -526,8 +526,11 @@ export class BrokerClient {
|
||||
body: data,
|
||||
signal: AbortSignal.timeout(30_000),
|
||||
});
|
||||
const body = await res.json() as { ok?: boolean; fileId?: string };
|
||||
return body.fileId ?? null;
|
||||
const body = await res.json() as { ok?: boolean; fileId?: string; error?: string };
|
||||
if (!res.ok || !body.fileId) {
|
||||
throw new Error(body.error ?? `HTTP ${res.status}`);
|
||||
}
|
||||
return body.fileId;
|
||||
}
|
||||
|
||||
// --- Vectors ---
|
||||
|
||||
Reference in New Issue
Block a user