{"date":"2025-07-03T20:50:21Z","repo":{"name":"github.com/coder/coder","commit":"369bccd52a3c7aab026d7cc74f25ef7a41069da6"},"scorecard":{"version":"v5.2.1","commit":"ab2f6e92482462fe66246d9e32f642855a691dc1"},"score":9.1,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#security-policy"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 20 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#maintained"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: Dependabot: .github/dependabot.yaml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dependency-update-tool"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/ci.yaml:1525","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/dependabot.yaml:22","Warn: jobLevel 'packages' permission set to 'write': .github/workflows/docker-base.yaml:36","Warn: jobLevel 'packages' permission set to 'write': .github/workflows/pr-cleanup.yaml:19","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yaml:121","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/stale.yaml:96","Warn: jobLevel 'actions' permission set to 'write': .github/workflows/stale.yaml:118","Info: topLevel 'contents' permission set to 'read': .github/workflows/ci.yaml:12","Info: topLevel 'contents' permission set to 'read': .github/workflows/contrib.yaml:19","Info: topLevel 'contents' permission set to 'read': .github/workflows/dependabot.yaml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/docker-base.yaml:24","Info: topLevel 'contents' permission set to 'read': .github/workflows/docs-ci.yaml:19","Info: topLevel 'contents' permission set to 'read': .github/workflows/pr-cleanup.yaml:12","Info: topLevel 'contents' permission set to 'read': .github/workflows/pr-deploy.yaml:33","Info: topLevel 'contents' permission set to 'read': .github/workflows/release-validation.yaml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/release.yaml:21","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:9","Info: topLevel 'actions' permission set to 'read': .github/workflows/security.yaml:4","Info: topLevel 'contents' permission set to 'read': .github/workflows/security.yaml:5","Info: topLevel 'contents' permission set to 'read': .github/workflows/stale.yaml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/weekly-docs.yaml:14"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":5,"reason":"badge detected: Passing","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#cii-best-practices"}},{"name":"SAST","score":-1,"reason":"internal error: internal error: Client.Checks.ListCheckRunsForRef: error during graphqlHandler.setupCheckRuns: Although you appear to have the correct authorization credentials, the `bridgecrewio` organization has an IP allow list enabled, and your IP address is not permitted to access this resource.","details":null,"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#sast"}},{"name":"CI-Tests","score":-1,"reason":"internal error: internal error: Client.Repositories.ListCheckRunsForRef: error during graphqlHandler.setupCheckRuns: Although you appear to have the correct authorization credentials, the `bridgecrewio` organization has an IP allow list enabled, and your IP address is not permitted to access this resource.","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#ci-tests"}},{"name":"Pinned-Dependencies","score":9,"reason":"dependency not pinned by hash detected -- score normalized to 9","details":["Warn: containerImage not pinned by hash: examples/parameters/build/Dockerfile:1: pin your Docker image by updating ubuntu to ubuntu@sha256:440dcf6a5640b2ae5c77724e68787a906afb8ddee98bf86db94eea8528c2c076","Warn: containerImage not pinned by hash: scripts/Dockerfile:9","Warn: containerImage not pinned by hash: scripts/Dockerfile.base:4: pin your Docker image by updating alpine:3.21.3 to alpine:3.21.3@sha256:a8560b36e8b8210634f77d9f7f9efd7ffa463e380b75e2e74aff4511df3ef88c","Warn: containerImage not pinned by hash: scripts/ironbank/Dockerfile:5","Warn: goCommand not pinned by hash: dogfood/coder/Dockerfile:27-87","Warn: npmCommand not pinned by hash: dogfood/coder/Dockerfile:256","Warn: npmCommand not pinned by hash: dogfood/coder/Dockerfile:257","Warn: downloadThenRun not pinned by hash: examples/jfrog/docker/build/Dockerfile:25","Warn: downloadThenRun not pinned by hash: .devcontainer/filebrowser/install.sh:11","Warn: npmCommand not pinned by hash: .devcontainer/scripts/post_create.sh:4","Warn: downloadThenRun not pinned by hash: .github/workflows/ci.yaml:213","Warn: goCommand not pinned by hash: .github/workflows/security.yaml:100","Info: 63 out of 63 GitHub-owned GitHubAction dependencies pinned","Info: 97 out of 97 third-party GitHubAction dependencies pinned","Info: 6 out of 10 containerImage dependencies pinned","Info: 26 out of 28 goCommand dependencies pinned","Info: 0 out of 3 npmCommand dependencies pinned","Info: 0 out of 3 downloadThenRun dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#pinned-dependencies"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/ci.yaml:1160"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#packaging"}},{"name":"Fuzzing","score":10,"reason":"project is fuzzed","details":["Info: GoBuiltInFuzzer integration found: agent/agentrsa/key_test.go:40","Info: GoBuiltInFuzzer integration found: provisionersdk/proto/dataupload_test.go:16"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU Affero General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#license"}},{"name":"Signed-Releases","score":8,"reason":"5 out of the last 5 releases have a total of 5 signed artifacts.","details":["Info: signed release artifact: coder_2.24.1_checksums.txt.asc: https://github.com/coder/coder/releases/tag/v2.24.1","Info: signed release artifact: coder_2.24.0_checksums.txt.asc: https://github.com/coder/coder/releases/tag/v2.24.0","Info: signed release artifact: coder_2.23.2_checksums.txt.asc: https://github.com/coder/coder/releases/tag/v2.23.2","Info: signed release artifact: coder_2.23.1_checksums.txt.asc: https://github.com/coder/coder/releases/tag/v2.23.1","Info: signed release artifact: coder_2.23.0_checksums.txt.asc: https://github.com/coder/coder/releases/tag/v2.23.0","Warn: release artifact v2.24.1 does not have provenance: https://api.github.com/repos/coder/coder/releases/229530014","Warn: release artifact v2.24.0 does not have provenance: https://api.github.com/repos/coder/coder/releases/229241630","Warn: release artifact v2.23.2 does not have provenance: https://api.github.com/repos/coder/coder/releases/228925202","Warn: release artifact v2.23.1 does not have provenance: https://api.github.com/repos/coder/coder/releases/224368833","Warn: release artifact v2.23.0 does not have provenance: https://api.github.com/repos/coder/coder/releases/222886314"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during GetBranch(release/2.24): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#branch-protection"}},{"name":"Contributors","score":10,"reason":"project has 22 contributing companies or organizations","details":["Info: found contributions from: COMP6991UNSW, CryptidID, FactoidAuthority, MyFactomWallet, NixOS, UMass-CPL, aerial-framework, amfphp, cdr, coder, coder formerly @smashgg, coder technologies @coder, coder.com, hocus-dev, hodlzone, istio, mindisle games, parts with presley, pegnet, pion, soapbox-io, split-learning"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#contributors"}},{"name":"Vulnerabilities","score":3,"reason":"7 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GO-2022-0635","Warn: Project is vulnerable to: GO-2022-0646","Warn: Project is vulnerable to: GHSA-vrw8-fxc6-2r93","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-v88g-cgmw-v5xw","Warn: Project is vulnerable to: GHSA-6vfc-qv3f-vr6c","Warn: Project is vulnerable to: GHSA-p9pc-299p-vxgp"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#vulnerabilities"}}]}