fix: honor signal default setup status

This commit is contained in:
Tak Hoffman
2026-04-03 15:39:46 -05:00
parent 40ae49effa
commit dbb0164934
2 changed files with 28 additions and 6 deletions

View File

@@ -178,6 +178,33 @@ describe("probeSignal", () => {
expect(status.statusLines).toContain("signal-cli: missing (/tmp/work-signal-cli)");
});
it("uses configured defaultAccount for omitted setup configured state", async () => {
const status = await getSignalSetupStatus({
cfg: {
channels: {
signal: {
defaultAccount: "work",
cliPath: "/tmp/root-signal-cli",
accounts: {
alerts: {
cliPath: "/tmp/alerts-signal-cli",
},
work: {
cliPath: "",
account: "",
httpHost: "",
httpUrl: "",
},
},
},
},
} as OpenClawConfig,
accountOverrides: {},
});
expect(status.configured).toBe(false);
});
});
describe("signal outbound", () => {

View File

@@ -28,12 +28,7 @@ export const signalSetupWizard: ChannelSetupWizard = {
unconfiguredHint: "signal-cli missing",
configuredScore: 1,
unconfiguredScore: 0,
resolveConfigured: ({ cfg, accountId }) =>
accountId
? resolveSignalAccount({ cfg, accountId }).configured
: listSignalAccountIds(cfg).some(
(resolvedAccountId) => resolveSignalAccount({ cfg, accountId: resolvedAccountId }).configured,
),
resolveConfigured: ({ cfg, accountId }) => resolveSignalAccount({ cfg, accountId }).configured,
resolveBinaryPath: ({ cfg, accountId }) =>
resolveSignalAccount({ cfg, accountId }).config.cliPath ?? "signal-cli",
detectBinary,