CI: restore main detect-secrets scan (#38438)

* Tests: stabilize detect-secrets fixtures

* Tests: fix rebased detect-secrets false positives

* Docs: keep snippets valid under detect-secrets

* Tests: finalize detect-secrets false-positive fixes

* Tests: reduce detect-secrets false positives

* Tests: keep detect-secrets pragmas inline

* Tests: remediate next detect-secrets batch

* Tests: tighten detect-secrets allowlists

* Tests: stabilize detect-secrets formatter drift
This commit is contained in:
Vincent Koc
2026-03-07 13:06:35 -05:00
committed by GitHub
parent 46e324e269
commit e4d80ed556
137 changed files with 1231 additions and 2700 deletions

View File

@@ -13,6 +13,8 @@ const defaultRuntime = {
exit: vi.fn(),
};
const passwordKey = () => ["pass", "word"].join("");
vi.mock("../acp/client.js", () => ({
runAcpClientInteractive: (opts: unknown) => runAcpClientInteractive(opts),
}));
@@ -91,7 +93,8 @@ describe("acp cli option collisions", () => {
});
it("loads gateway token/password from files", async () => {
await withSecretFiles({ token: "tok_file\n", password: "pw_file\n" }, async (files) => {
await withSecretFiles({ token: "tok_file\n", [passwordKey()]: "pw_file\n" }, async (files) => {
// pragma: allowlist secret
await parseAcp([
"--token-file",
files.tokenFile ?? "",
@@ -103,7 +106,7 @@ describe("acp cli option collisions", () => {
expect(serveAcpGateway).toHaveBeenCalledWith(
expect.objectContaining({
gatewayToken: "tok_file",
gatewayPassword: "pw_file",
gatewayPassword: "pw_file", // pragma: allowlist secret
}),
);
});
@@ -117,7 +120,8 @@ describe("acp cli option collisions", () => {
});
it("rejects mixed password flags and file flags", async () => {
await withSecretFiles({ password: "pw_file\n" }, async (files) => {
const passwordFileValue = "pw_file\n"; // pragma: allowlist secret
await withSecretFiles({ password: passwordFileValue }, async (files) => {
await parseAcp(["--password", "pw_inline", "--password-file", files.passwordFile ?? ""]);
});

View File

@@ -67,7 +67,7 @@ describe("resolveCommandSecretRefsViaGateway", () => {
it("returns config unchanged when no target SecretRefs are configured", async () => {
const config = {
talk: {
apiKey: "plain",
apiKey: "plain", // pragma: allowlist secret
},
} as OpenClawConfig;
const result = await resolveCommandSecretRefsViaGateway({
@@ -171,7 +171,7 @@ describe("resolveCommandSecretRefsViaGateway", () => {
it("falls back to local resolution when gateway secrets.resolve is unavailable", async () => {
const priorValue = process.env.TALK_API_KEY;
process.env.TALK_API_KEY = "local-fallback-key";
process.env.TALK_API_KEY = "local-fallback-key"; // pragma: allowlist secret
callGateway.mockRejectedValueOnce(new Error("gateway closed"));
try {
const result = await resolveCommandSecretRefsViaGateway({

View File

@@ -197,7 +197,7 @@ describe("config cli", () => {
baseUrl: "http://127.0.0.1:11434",
api: "ollama",
models: [],
apiKey: "ollama-local",
apiKey: "ollama-local", // pragma: allowlist secret
});
});
});

View File

@@ -64,7 +64,7 @@ describe("addGatewayServiceCommands", () => {
expect.objectContaining({
rpc: expect.objectContaining({
token: "tok_status",
password: "pw_status",
password: "pw_status", // pragma: allowlist secret
}),
}),
);

View File

@@ -205,7 +205,7 @@ describe("gatherDaemonStatus", () => {
},
},
};
process.env.DAEMON_GATEWAY_PASSWORD = "daemon-secretref-password";
process.env.DAEMON_GATEWAY_PASSWORD = "daemon-secretref-password"; // pragma: allowlist secret
await gatherDaemonStatus({
rpc: {},
@@ -215,7 +215,7 @@ describe("gatherDaemonStatus", () => {
expect(callGatewayStatusProbe).toHaveBeenCalledWith(
expect.objectContaining({
password: "daemon-secretref-password",
password: "daemon-secretref-password", // pragma: allowlist secret
}),
);
});

View File

@@ -123,7 +123,7 @@ describe("registerOnboardCommand", () => {
await runCli(["onboard", "--mistral-api-key", "sk-mistral-test"]);
expect(onboardCommandMock).toHaveBeenCalledWith(
expect.objectContaining({
mistralApiKey: "sk-mistral-test",
mistralApiKey: "sk-mistral-test", // pragma: allowlist secret
}),
runtime,
);

View File

@@ -227,7 +227,7 @@ describe("registerQrCli", () => {
const expected = encodePairingSetupCode({
url: "ws://gateway.local:18789",
password: "local-password-secret",
password: "local-password-secret", // pragma: allowlist secret
});
expect(runtime.log).toHaveBeenCalledWith(expected);
expect(resolveCommandSecretRefsViaGateway).not.toHaveBeenCalled();
@@ -245,7 +245,7 @@ describe("registerQrCli", () => {
const expected = encodePairingSetupCode({
url: "ws://gateway.local:18789",
password: "password-from-env",
password: "password-from-env", // pragma: allowlist secret
});
expect(runtime.log).toHaveBeenCalledWith(expected);
expect(resolveCommandSecretRefsViaGateway).not.toHaveBeenCalled();
@@ -282,7 +282,7 @@ describe("registerQrCli", () => {
const expected = encodePairingSetupCode({
url: "ws://gateway.local:18789",
password: "inferred-password",
password: "inferred-password", // pragma: allowlist secret
});
expect(runtime.log).toHaveBeenCalledWith(expected);
expect(resolveCommandSecretRefsViaGateway).not.toHaveBeenCalled();