fix: satisfy gate checks

This commit is contained in:
Peter Steinberger
2026-01-04 01:16:53 +01:00
parent e3c543ec06
commit 8724c2aea8
8 changed files with 29 additions and 30 deletions

View File

@@ -262,11 +262,14 @@ export function waitForEmbeddedPiRunEnd(
const waiters = EMBEDDED_RUN_WAITERS.get(sessionId) ?? new Set();
const waiter: EmbeddedRunWaiter = {
resolve,
timer: setTimeout(() => {
waiters.delete(waiter);
if (waiters.size === 0) EMBEDDED_RUN_WAITERS.delete(sessionId);
resolve(false);
}, Math.max(100, timeoutMs)),
timer: setTimeout(
() => {
waiters.delete(waiter);
if (waiters.size === 0) EMBEDDED_RUN_WAITERS.delete(sessionId);
resolve(false);
},
Math.max(100, timeoutMs),
),
};
waiters.add(waiter);
EMBEDDED_RUN_WAITERS.set(sessionId, waiters);

View File

@@ -8,7 +8,7 @@ export {
isEmbeddedPiRunActive,
isEmbeddedPiRunStreaming,
queueEmbeddedPiMessage,
waitForEmbeddedPiRunEnd,
resolveEmbeddedSessionLane,
runEmbeddedPiAgent,
waitForEmbeddedPiRunEnd,
} from "./pi-embedded-runner.js";

View File

@@ -1777,8 +1777,10 @@ function applySessionDefaults(cfg: ClawdisConfig): ClawdisConfig {
if (!session || session.mainKey === undefined) return cfg;
const trimmed = session.mainKey.trim();
const next: ClawdisConfig = { ...cfg, session: { ...session } };
next.session.mainKey = "main";
const next: ClawdisConfig = {
...cfg,
session: { ...session, mainKey: "main" },
};
if (trimmed && trimmed !== "main" && !warnedMainKeyOverride) {
warnedMainKeyOverride = true;

View File

@@ -103,9 +103,9 @@ export function resolveStorePath(store?: string) {
return path.resolve(store);
}
export function resolveMainSessionKey(
cfg?: { session?: { scope?: SessionScope; mainKey?: string } },
): string {
export function resolveMainSessionKey(cfg?: {
session?: { scope?: SessionScope; mainKey?: string };
}): string {
if (cfg?.session?.scope === "global") return "global";
return "main";
}

View File

@@ -2,12 +2,6 @@ import { randomUUID } from "node:crypto";
import fs from "node:fs";
import { DEFAULT_MODEL, DEFAULT_PROVIDER } from "../agents/defaults.js";
import type { ModelCatalogEntry } from "../agents/model-catalog.js";
import {
abortEmbeddedPiRun,
isEmbeddedPiRunActive,
resolveEmbeddedSessionLane,
waitForEmbeddedPiRunEnd,
} from "../agents/pi-embedded.js";
import {
buildAllowedModelSet,
buildModelAliasIndex,
@@ -16,6 +10,12 @@ import {
resolveModelRefFromString,
resolveThinkingDefault,
} from "../agents/model-selection.js";
import {
abortEmbeddedPiRun,
isEmbeddedPiRunActive,
resolveEmbeddedSessionLane,
waitForEmbeddedPiRunEnd,
} from "../agents/pi-embedded.js";
import { normalizeGroupActivation } from "../auto-reply/group-activation.js";
import {
normalizeThinkLevel,
@@ -44,8 +44,8 @@ import {
loadVoiceWakeConfig,
setVoiceWakeTriggers,
} from "../infra/voicewake.js";
import { defaultRuntime } from "../runtime.js";
import { clearCommandLane } from "../process/command-queue.js";
import { defaultRuntime } from "../runtime.js";
import { normalizeSendPolicy } from "../sessions/send-policy.js";
import { buildMessageWithAttachments } from "./chat-attachments.js";
import {

View File

@@ -4,8 +4,8 @@ import path from "node:path";
import { describe, expect, test } from "vitest";
import {
connectOk,
installGatewayTestHooks,
embeddedRunMock,
installGatewayTestHooks,
piSdkMock,
rpcReq,
startServerWithClient,

View File

@@ -39,7 +39,7 @@ export type BridgeStartOpts = {
>;
};
const hoisted = vi.hoisted(() => ({
const hoisted = vi.hoisted(() => ({
bridgeStartCalls: [] as BridgeStartOpts[],
bridgeInvoke: vi.fn(async () => ({
type: "invoke-res",
@@ -292,9 +292,9 @@ vi.mock("../config/config.js", async () => {
});
vi.mock("../agents/pi-embedded.js", async () => {
const actual = await vi.importActual<typeof import("../agents/pi-embedded.js")>(
"../agents/pi-embedded.js",
);
const actual = await vi.importActual<
typeof import("../agents/pi-embedded.js")
>("../agents/pi-embedded.js");
return {
...actual,
isEmbeddedPiRunActive: (sessionId: string) =>

View File

@@ -67,13 +67,7 @@ export async function sendMessageWhatsApp(
? { gifPlayback: true }
: undefined;
const result = sendOptions
? await active.sendMessage(
to,
text,
mediaBuffer,
mediaType,
sendOptions,
)
? await active.sendMessage(to, text, mediaBuffer, mediaType, sendOptions)
: await active.sendMessage(to, text, mediaBuffer, mediaType);
const messageId =
(result as { messageId?: string })?.messageId ?? "unknown";