chore: Enable "curly" rule to avoid single-statement if confusion/errors.

This commit is contained in:
cpojer
2026-01-31 16:19:20 +09:00
parent 009b16fab8
commit 5ceff756e1
1266 changed files with 27871 additions and 9393 deletions

View File

@@ -17,7 +17,9 @@ export function maybeSendAckReaction(params: {
info: (obj: unknown, msg: string) => void;
warn: (obj: unknown, msg: string) => void;
}) {
if (!params.msg.id) return;
if (!params.msg.id) {
return;
}
const ackConfig = params.cfg.channels?.whatsapp?.ackReaction;
const emoji = (ackConfig?.emoji ?? "").trim();
@@ -45,7 +47,9 @@ export function maybeSendAckReaction(params: {
groupActivated: activation === "always",
});
if (!shouldSendReaction()) return;
if (!shouldSendReaction()) {
return;
}
params.info(
{ chatId: params.msg.chatId, messageId: params.msg.id, emoji },

View File

@@ -29,8 +29,12 @@ export async function maybeBroadcastMessage(params: {
) => Promise<boolean>;
}) {
const broadcastAgents = params.cfg.broadcast?.[params.peerId];
if (!broadcastAgents || !Array.isArray(broadcastAgents)) return false;
if (broadcastAgents.length === 0) return false;
if (!broadcastAgents || !Array.isArray(broadcastAgents)) {
return false;
}
if (broadcastAgents.length === 0) {
return false;
}
const strategy = params.cfg.broadcast?.strategy || "parallel";
whatsappInboundLog.info(`Broadcasting message to ${broadcastAgents.length} agents (${strategy})`);

View File

@@ -1,6 +1,8 @@
export function isStatusCommand(body: string) {
const trimmed = body.trim().toLowerCase();
if (!trimmed) return false;
if (!trimmed) {
return false;
}
return trimmed === "/status" || trimmed === "status" || trimmed.startsWith("/status ");
}

View File

@@ -25,13 +25,17 @@ export function createEchoTracker(params: {
const trim = () => {
while (recentlySent.size > maxItems) {
const firstKey = recentlySent.values().next().value;
if (!firstKey) break;
if (!firstKey) {
break;
}
recentlySent.delete(firstKey);
}
};
const rememberText: EchoTracker["rememberText"] = (text, opts) => {
if (!text) return;
if (!text) {
return;
}
recentlySent.add(text);
if (opts.combinedBody && opts.combinedBodySessionKey) {
recentlySent.add(

View File

@@ -21,7 +21,9 @@ export type GroupHistoryEntry = {
function isOwnerSender(baseMentionConfig: MentionConfig, msg: WebInboundMsg) {
const sender = normalizeE164(msg.senderE164 ?? "");
if (!sender) return false;
if (!sender) {
return false;
}
const owners = resolveOwnerList(baseMentionConfig, msg.selfE164 ?? undefined);
return owners.includes(sender);
}

View File

@@ -6,10 +6,14 @@ export function noteGroupMember(
e164?: string,
name?: string,
) {
if (!e164 || !name) return;
if (!e164 || !name) {
return;
}
const normalized = normalizeE164(e164);
const key = normalized ?? e164;
if (!key) return;
if (!key) {
return;
}
let roster = groupMemberNames.get(conversationId);
if (!roster) {
roster = new Map();
@@ -28,9 +32,13 @@ export function formatGroupMembers(params: {
const ordered: string[] = [];
if (participants?.length) {
for (const entry of participants) {
if (!entry) continue;
if (!entry) {
continue;
}
const normalized = normalizeE164(entry) ?? entry;
if (!normalized || seen.has(normalized)) continue;
if (!normalized || seen.has(normalized)) {
continue;
}
seen.add(normalized);
ordered.push(normalized);
}
@@ -38,16 +46,22 @@ export function formatGroupMembers(params: {
if (roster) {
for (const entry of roster.keys()) {
const normalized = normalizeE164(entry) ?? entry;
if (!normalized || seen.has(normalized)) continue;
if (!normalized || seen.has(normalized)) {
continue;
}
seen.add(normalized);
ordered.push(normalized);
}
}
if (ordered.length === 0 && fallbackE164) {
const normalized = normalizeE164(fallbackE164) ?? fallbackE164;
if (normalized) ordered.push(normalized);
if (normalized) {
ordered.push(normalized);
}
}
if (ordered.length === 0) {
return undefined;
}
if (ordered.length === 0) return undefined;
return ordered
.map((entry) => {
const name = roster?.get(entry);

View File

@@ -51,7 +51,9 @@ export function updateLastRouteInBackground(params: {
}
export function awaitBackgroundTasks(backgroundTasks: Set<Promise<unknown>>) {
if (backgroundTasks.size === 0) return Promise.resolve();
if (backgroundTasks.size === 0) {
return Promise.resolve();
}
return Promise.allSettled(backgroundTasks).then(() => {
backgroundTasks.clear();
});

View File

@@ -4,7 +4,9 @@ import type { loadConfig } from "../../../config/config.js";
import type { WebInboundMsg } from "../types.js";
export function formatReplyContext(msg: WebInboundMsg) {
if (!msg.replyToBody) return null;
if (!msg.replyToBody) {
return null;
}
const sender = msg.replyToSender ?? "unknown sender";
const idPart = msg.replyToId ? ` id:${msg.replyToId}` : "";
return `[Replying to ${sender}${idPart}]\n${msg.replyToBody}\n[/Replying]`;

View File

@@ -138,7 +138,9 @@ export function createWebOnMessageHandler(params: {
logVerbose,
replyLogger: params.replyLogger,
});
if (!gating.shouldProcess) return;
if (!gating.shouldProcess) {
return;
}
} else {
// Ensure `peerId` for DMs is stable and stored as E.164 when possible.
if (!msg.senderE164 && peerId && peerId.startsWith("+")) {

View File

@@ -2,8 +2,14 @@ import { jidToE164, normalizeE164 } from "../../../utils.js";
import type { WebInboundMsg } from "../types.js";
export function resolvePeerId(msg: WebInboundMsg) {
if (msg.chatType === "group") return msg.conversationId ?? msg.from;
if (msg.senderE164) return normalizeE164(msg.senderE164) ?? msg.senderE164;
if (msg.from.includes("@")) return jidToE164(msg.from) ?? msg.from;
if (msg.chatType === "group") {
return msg.conversationId ?? msg.from;
}
if (msg.senderE164) {
return normalizeE164(msg.senderE164) ?? msg.senderE164;
}
if (msg.from.includes("@")) {
return jidToE164(msg.from) ?? msg.from;
}
return normalizeE164(msg.from) ?? msg.from;
}

View File

@@ -60,13 +60,17 @@ async function resolveWhatsAppCommandAuthorized(params: {
msg: WebInboundMsg;
}): Promise<boolean> {
const useAccessGroups = params.cfg.commands?.useAccessGroups !== false;
if (!useAccessGroups) return true;
if (!useAccessGroups) {
return true;
}
const isGroup = params.msg.chatType === "group";
const senderE164 = normalizeE164(
isGroup ? (params.msg.senderE164 ?? "") : (params.msg.senderE164 ?? params.msg.from ?? ""),
);
if (!senderE164) return false;
if (!senderE164) {
return false;
}
const configuredAllowFrom = params.cfg.channels?.whatsapp?.allowFrom ?? [];
const configuredGroupAllowFrom =
@@ -74,8 +78,12 @@ async function resolveWhatsAppCommandAuthorized(params: {
(configuredAllowFrom.length > 0 ? configuredAllowFrom : undefined);
if (isGroup) {
if (!configuredGroupAllowFrom || configuredGroupAllowFrom.length === 0) return false;
if (configuredGroupAllowFrom.some((v) => String(v).trim() === "*")) return true;
if (!configuredGroupAllowFrom || configuredGroupAllowFrom.length === 0) {
return false;
}
if (configuredGroupAllowFrom.some((v) => String(v).trim() === "*")) {
return true;
}
return normalizeAllowFromE164(configuredGroupAllowFrom).includes(senderE164);
}
@@ -89,7 +97,9 @@ async function resolveWhatsAppCommandAuthorized(params: {
: params.msg.selfE164
? [params.msg.selfE164]
: [];
if (allowFrom.some((v) => String(v).trim() === "*")) return true;
if (allowFrom.some((v) => String(v).trim() === "*")) {
return true;
}
return normalizeAllowFromE164(allowFrom).includes(senderE164);
}
@@ -221,9 +231,13 @@ export async function processMessage(params: {
const dmRouteTarget =
params.msg.chatType !== "group"
? (() => {
if (params.msg.senderE164) return normalizeE164(params.msg.senderE164);
if (params.msg.senderE164) {
return normalizeE164(params.msg.senderE164);
}
// In direct chats, `msg.from` is already the canonical conversation id.
if (params.msg.from.includes("@")) return jidToE164(params.msg.from);
if (params.msg.from.includes("@")) {
return jidToE164(params.msg.from);
}
return normalizeE164(params.msg.from);
})()
: undefined;