Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
cache: "npm"

- name: Provision pinned standards tools
uses: jdx/mise-action@2d8d4cafcbd33be2ea37d2b6f5ad595363d1f1ca # v5.1.1
uses: jdx/mise-action@9b200bcecbfd6303e69a4a261b2e09e3757440a7 # v5.2.0

- name: Install dependencies
run: npm ci
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ jobs:
# must not turn a failed vulnerability gate into a successful publish.
if: ${{ !cancelled() && github.event_name != 'pull_request' }}
continue-on-error: true # kit-self-audit: allow-continue-on-error
uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
uses: github/codeql-action/upload-sarif@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
sarif_file: trivy-results.sarif

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/scorecard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
# Informational metric; Code Scanning is not enabled on this repo, so
# SARIF upload errors should not fail master CI.
continue-on-error: true # kit-self-audit: allow-continue-on-error
uses: ossf/scorecard-action@2d1146689b8cda280b9bc96326124645441f03bc # v2.4.4
uses: ossf/scorecard-action@fa7117db83c52d787ae5a89f350999701505d78e # v2.5.0
with:
results_file: scorecard-results.sarif
results_format: sarif
Expand All @@ -48,6 +48,6 @@ jobs:
# Lands in repo's Security → Code scanning tab.
if: always()
continue-on-error: true # kit-self-audit: allow-continue-on-error
uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
uses: github/codeql-action/upload-sarif@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
sarif_file: scorecard-results.sarif
12 changes: 6 additions & 6 deletions .github/workflows/security.yml
Original file line number Diff line number Diff line change
Expand Up @@ -159,12 +159,12 @@ jobs:
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Initialize CodeQL
uses: github/codeql-action/init@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
uses: github/codeql-action/init@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
languages: javascript-typescript
queries: security-extended
- name: Analyze JavaScript and TypeScript
uses: github/codeql-action/analyze@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
uses: github/codeql-action/analyze@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
category: "/language:javascript-typescript"

Expand Down Expand Up @@ -212,7 +212,7 @@ jobs:
# Don't fail the job if Code Scanning is off — scan result is the gate.
if: always()
continue-on-error: true # kit-self-audit: allow-continue-on-error
uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
uses: github/codeql-action/upload-sarif@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
sarif_file: trivy-results.sarif

Expand All @@ -230,7 +230,7 @@ jobs:
- name: Checkov (terraform + kubernetes)
# Baseline of pre-existing findings in .checkov.yaml skip-check.
# Gating on net-new findings only — see .checkov.yaml header for context.
uses: bridgecrewio/checkov-action@c13aafd679d3814a25067d10fcaf98c4f7594931 # v12.3131.0
uses: bridgecrewio/checkov-action@6f26dc90000b74feb589a906cdfae540f5119895 # v12.3134.0
with:
directory: .
config_file: .checkov.yaml
Expand All @@ -248,7 +248,7 @@ jobs:
# SARIF upload requires Code Scanning enabled in repo settings.
if: always()
continue-on-error: true # kit-self-audit: allow-continue-on-error
uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
uses: github/codeql-action/upload-sarif@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4.39.0
with:
sarif_file: checkov.sarif

Expand Down Expand Up @@ -382,7 +382,7 @@ jobs:
node-version: "22"
cache: "npm"
- run: npm ci && npm run build
- uses: jdx/mise-action@2d8d4cafcbd33be2ea37d2b6f5ad595363d1f1ca # v5.1.1
- uses: jdx/mise-action@9b200bcecbfd6303e69a4a261b2e09e3757440a7 # v5.2.0
# Triage verifies each tool's upstream repo through the GitHub API. Anonymous calls share
# a 60/hour limit per runner IP, and triage correctly fails closed when it cannot verify.
- name: Provision declared tools via kit install (triage-gated)
Expand Down
4 changes: 2 additions & 2 deletions src/browser-strategy.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ describe("system Chrome selection", () => {
assert.equal(result.status, "blocker");
assert.equal(result.strategy, "none");
} finally {
rmSync(path, { recursive: true, force: true });
rmSync(path, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
});
});
Expand Down Expand Up @@ -224,7 +224,7 @@ describe("system Chrome fallback", () => {
join(second, valid),
);
} finally {
rmSync(root, { recursive: true, force: true });
rmSync(root, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
});
});
2 changes: 1 addition & 1 deletion src/check-secrets-infisical.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ function fallback(
.map((line) => JSON.parse(line)),
};
} finally {
rmSync(dir, { recursive: true, force: true });
rmSync(dir, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
}

Expand Down
4 changes: 2 additions & 2 deletions src/github-codeql-workflow.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { dirname, resolve } from "node:path";
import { fileURLToPath } from "node:url";

const root = resolve(dirname(fileURLToPath(import.meta.url)), "..");
const CODEQL_ACTION_SHA = "24c54180a607b1449ed407dd24f251e4e9147c8d";
const CODEQL_ACTION_SHA = "6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee";

describe("CodeQL workflow action", () => {
it("uses one supported v4 action commit for every CodeQL step", () => {
Expand All @@ -20,7 +20,7 @@ describe("CodeQL workflow action", () => {
assert.ok(references.length > 0, "expected at least one CodeQL action step");
for (const reference of references) {
assert.equal(reference.sha, CODEQL_ACTION_SHA, `${reference.name} has a stale CodeQL pin`);
assert.equal(reference.version, "v4.38.3", `${reference.name} must identify supported major`);
assert.equal(reference.version, "v4.39.0", `${reference.name} must identify supported major`);
}
});
});
2 changes: 1 addition & 1 deletion src/github-workflow-hardening.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ describe("informational CI jobs can still fail", () => {
describe("GitHub workflow standards gate", () => {
it("provisions the pinned standards tools and runs the full standards gate in CI", () => {
const ci = workflow("ci.yml");
assert.match(ci, /uses:\s*jdx\/mise-action@[a-f0-9]{40}\s*#\s*v5\.1\.1/);
assert.match(ci, /uses:\s*jdx\/mise-action@[a-f0-9]{40}\s*#\s*v5\.2\.0/);
assert.match(ci, /run:\s*node dist\/cli\.js standards --enforce/);
assert.doesNotMatch(
ci,
Expand Down
6 changes: 3 additions & 3 deletions src/publish-workflow.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@ describe(
const neutered = script.replace(/exit 1/g, "true");
assert.equal(runScript(neutered, root, { TAG: "v9.9.9" }).status, 0, "the check bites");
} finally {
rmSync(root, { recursive: true, force: true });
rmSync(root, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
});

Expand All @@ -245,7 +245,7 @@ describe(
const neutered = script.replace(/exit 1/g, "true");
assert.equal(runScript(neutered, root, { TAG: "v1.2.4" }).status, 0, "the check bites");
} finally {
rmSync(root, { recursive: true, force: true });
rmSync(root, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
});
},
Expand Down Expand Up @@ -428,7 +428,7 @@ describe("publish.yml — published versions bind to the source tree", () => {
assert.equal(offline.status, 1, offline.stderr);
assert.match(offline.stderr, /registry lookup failed/);
} finally {
rmSync(root, { recursive: true, force: true });
rmSync(root, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
});
});
Expand Down
2 changes: 1 addition & 1 deletion src/triage-cwd.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ async function withServer(
} finally {
await client.close();
await transport.close();
rmSync(root, { recursive: true, force: true });
rmSync(root, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
}

Expand Down
2 changes: 1 addition & 1 deletion src/upgrade-provenance.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ describe("kit upgrade CLI lock provenance", () => {
"committed locks must not contain machine-specific absolute paths",
);
} finally {
rmSync(project, { recursive: true, force: true });
rmSync(project, { recursive: true, force: true, maxRetries: 10, retryDelay: 200 });
}
});
});
Loading