From ea6ee16461b0f3122e75132195552dfcbdab0977 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 6 Jan 2026 05:41:05 +0100 Subject: [PATCH] chore: fix lint warnings --- src/auto-reply/reply/agent-runner.ts | 3 ++- src/auto-reply/reply/followup-runner.ts | 3 ++- src/cli/gateway-cli.ts | 32 +++++++++++++++---------- src/config/defaults.ts | 2 +- 4 files changed, 25 insertions(+), 15 deletions(-) diff --git a/src/auto-reply/reply/agent-runner.ts b/src/auto-reply/reply/agent-runner.ts index 1ff593ac4..21eadb12c 100644 --- a/src/auto-reply/reply/agent-runner.ts +++ b/src/auto-reply/reply/agent-runner.ts @@ -237,7 +237,8 @@ export async function runReplyAgent(params: { : undefined, onAgentEvent: (evt) => { if (evt.stream !== "compaction") return; - const phase = String(evt.data.phase ?? ""); + const phase = + typeof evt.data.phase === "string" ? evt.data.phase : ""; const willRetry = Boolean(evt.data.willRetry); if (phase === "end" && !willRetry) { autoCompactionCompleted = true; diff --git a/src/auto-reply/reply/followup-runner.ts b/src/auto-reply/reply/followup-runner.ts index d5b39387d..9a6be5bd8 100644 --- a/src/auto-reply/reply/followup-runner.ts +++ b/src/auto-reply/reply/followup-runner.ts @@ -96,7 +96,8 @@ export function createFollowupRunner(params: { blockReplyBreak: queued.run.blockReplyBreak, onAgentEvent: (evt) => { if (evt.stream !== "compaction") return; - const phase = String(evt.data.phase ?? ""); + const phase = + typeof evt.data.phase === "string" ? evt.data.phase : ""; const willRetry = Boolean(evt.data.willRetry); if (phase === "end" && !willRetry) { autoCompactionCompleted = true; diff --git a/src/cli/gateway-cli.ts b/src/cli/gateway-cli.ts index 7daf257ca..6ac33db34 100644 --- a/src/cli/gateway-cli.ts +++ b/src/cli/gateway-cli.ts @@ -51,6 +51,24 @@ function parsePort(raw: unknown): number | null { return parsed; } +function describeUnknownError(err: unknown): string { + if (err instanceof Error) return err.message; + if (typeof err === "string") return err; + if (typeof err === "number" || typeof err === "bigint") return err.toString(); + if (typeof err === "boolean") return err ? "true" : "false"; + if (err && typeof err === "object") { + if ("message" in err && typeof err.message === "string") { + return err.message; + } + try { + return JSON.stringify(err); + } catch { + return "Unknown error"; + } + } + return "Unknown error"; +} + function renderGatewayServiceStopHints(): string[] { switch (process.platform) { case "darwin": @@ -353,12 +371,7 @@ export function registerGatewayCli(program: Command) { typeof err === "object" && (err as { name?: string }).name === "GatewayLockError") ) { - const errMessage = - err instanceof Error - ? err.message - : typeof err === "object" && err !== null && "message" in err - ? String((err as { message?: unknown }).message ?? "") - : String(err); + const errMessage = describeUnknownError(err); defaultRuntime.error( `Gateway failed to start: ${errMessage}\nIf the gateway is supervised, stop it with: clawdbot gateway stop`, ); @@ -568,12 +581,7 @@ export function registerGatewayCli(program: Command) { typeof err === "object" && (err as { name?: string }).name === "GatewayLockError") ) { - const errMessage = - err instanceof Error - ? err.message - : typeof err === "object" && err !== null && "message" in err - ? String((err as { message?: unknown }).message ?? "") - : String(err); + const errMessage = describeUnknownError(err); defaultRuntime.error( `Gateway failed to start: ${errMessage}\nIf the gateway is supervised, stop it with: clawdbot gateway stop`, ); diff --git a/src/config/defaults.ts b/src/config/defaults.ts index cda653938..68d35bef8 100644 --- a/src/config/defaults.ts +++ b/src/config/defaults.ts @@ -61,7 +61,7 @@ export function applyMessageDefaults(cfg: ClawdbotConfig): ClawdbotConfig { if (hasAckReaction && hasAckScope) return cfg; const fallbackEmoji = cfg.identity?.emoji?.trim() || "👀"; - const nextMessages = { ...(messages ?? {}) }; + const nextMessages = messages ? { ...messages } : {}; let mutated = false; if (!hasAckReaction) {