diff --git a/packages/actions/threatcrush-scan/README.md b/packages/actions/threatcrush-scan/README.md index 277fe33b..8407deb8 100644 --- a/packages/actions/threatcrush-scan/README.md +++ b/packages/actions/threatcrush-scan/README.md @@ -14,7 +14,7 @@ sh1pt actions install threatcrush-scan --repo owner/name --pr | --- | --- | --- | | `scanPath` | `.` | Path to scan, relative to the repository root. | | `nodeVersion` | `20` | See *Node 20, deliberately*, below. | -| `threatcrushPackageSpec` | `@profullstack/threatcrush@latest` | npm spec used to install the CLI. | +| `threatcrushPackageSpec` | `@profullstack/threatcrush@0.11.0` | npm spec used to install the CLI. Pinned rather than `@latest` so one bad publish cannot break every consumer at once; bump it in a pack release. | | `failOn` | *(empty)* | Comma-separated severities that fail the job, e.g. `critical,high`. Empty is report-only. | | `uploadSarif` | `true` | Upload to the Security tab. | diff --git a/packages/actions/threatcrush-scan/sh1pt.actionpack.yaml b/packages/actions/threatcrush-scan/sh1pt.actionpack.yaml index a556f44f..7f213877 100644 --- a/packages/actions/threatcrush-scan/sh1pt.actionpack.yaml +++ b/packages/actions/threatcrush-scan/sh1pt.actionpack.yaml @@ -5,7 +5,7 @@ description: >- Scans pull requests for hardcoded credentials, injection, SSRF, unsafe deserialisation and dependency tampering, and uploads SARIF to the Security tab. -version: 1.1.0 +version: 1.2.0 publisher: profullstack visibility: public license: MIT @@ -32,8 +32,14 @@ inputs: that fails without a full toolchain. threatcrushPackageSpec: type: string - default: '@profullstack/threatcrush@latest' - description: npm spec used to install the CLI. + default: '@profullstack/threatcrush@0.11.0' + description: >- + npm spec used to install the CLI. Pinned, not `@latest`: a scanner that + runs on every pull request is a dependency, and `@latest` means one bad + publish breaks CI in every repo that installed this pack at once — which + is exactly what a `workspace:` protocol slip in 0.7.0/0.7.1 did. Bump this + deliberately, in a pack release, so the fleet re-syncs consumers to a + version that was checked first. failOn: type: string default: ''