{"date":"2026-08-21T13:46:53Z","repo":{"name":"github.com/verl-project/verl","commit":"890dfc3ebdd5647f7ea9730375414b1e3fb4e9a6"},"scorecard":{"version":"v4.13.1","commit":"49c0eed3a423f00c872b5c3c9f1bbca9e8aae799"},"score":6.1,"checks":[{"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/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#binary-artifacts"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during GetBranch(release/v0.9.0): 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/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#branch-protection"}},{"name":"CI-Tests","score":9,"reason":"27 out of 30 merged PRs checked by a CI test -- score normalized to 9","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#ci-tests"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#cii-best-practices"}},{"name":"Code-Review","score":9,"reason":"found 2 unreviewed changesets out of 30 -- score normalized to 9","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/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#code-review"}},{"name":"Contributors","score":10,"reason":"24 different organizations found -- score normalized to 10","details":["Info: contributors work for IBus-Customize,NVIDIAGameWorks,NixOS,OpenRLHF,TransferQueue,aaltouniversity,apache,bytedance,bytedance seed,cmu-db,dmlc,fossasia,huawei,linkedin,millennium science school,nvidia,openSUSE,radixark,the university of hong kong,the-seeds,uestc-msc,usc -> bytedance,zhejiang university,zhejiang university -> huawei"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#contributors"}},{"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/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#dangerous-workflow"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: tool 'Dependabot' is used: .github/dependabot.yml:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#dependency-update-tool"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no OSSFuzz integration found: Follow the steps in https://github.com/google/oss-fuzz to integrate fuzzing for your project.\nOver time, try to add fuzzing for more functionalities of your project. (High effort)","Warn: no OneFuzz integration found: Follow the steps in https://github.com/microsoft/onefuzz to start fuzzing for your project.\nOver time, try to add fuzzing for more functionalities of your project. (High effort)","Warn: no GoBuiltInFuzzer integration found: Follow the steps in https://go.dev/doc/fuzz/ to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no PythonAtherisFuzzer integration found: Follow the steps in https://github.com/google/atheris to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no CLibFuzzer integration found: Follow the steps in https://llvm.org/docs/LibFuzzer.html to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no CppLibFuzzer integration found: Follow the steps in https://llvm.org/docs/LibFuzzer.html to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no SwiftLibFuzzer integration found: Follow the steps in https://google.github.io/oss-fuzz/getting-started/new-project-guide/swift-lang/ to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no RustCargoFuzzer integration found: Follow the steps in https://rust-fuzz.github.io/book/cargo-fuzz.html to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no JavaJazzerFuzzer integration found: Follow the steps in https://github.com/CodeIntelligenceTesting/jazzer to enable fuzzing on your project.\nOver time, try to add fuzzing for more functionalities of your project. (Medium effort)","Warn: no ClusterFuzzLite integration found: Follow the steps in https://github.com/google/clusterfuzzlite to integrate fuzzing as part of CI.\nOver time, try to add fuzzing for more functionalities of your project. (High effort)","Warn: no HaskellPropertyBasedTesting integration found: Use one of the following frameworks to fuzz your project:\nQuickCheck: https://hackage.haskell.org/package/QuickCheck\nhedgehog: https://hedgehog.qa/\nvalidity: https://github.com/NorfairKing/validity\nsmallcheck: https://hackage.haskell.org/package/smallcheck\nhspec: https://hspec.github.io/\ntasty: https://hackage.haskell.org/package/tasty (High effort)","Warn: no TypeScriptPropertyBasedTesting integration found: Use fast-check: https://github.com/dubzzz/fast-check (High effort)","Warn: no JavaScriptPropertyBasedTesting integration found: Use fast-check: https://github.com/dubzzz/fast-check (High effort)"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: License file found in expected location: LICENSE:1","Info: FSF or OSI recognized license: LICENSE:1"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#license"}},{"name":"Maintained","score":10,"reason":"30 commit(s) out of 30 and 12 issue activity out of 30 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/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#maintained"}},{"name":"Packaging","score":10,"reason":"publishing workflow detected","details":["Info: GitHub/GitLab publishing workflow used in run https://api.github.com/repos/verl-project/verl/actions/runs/32392905582: .github/workflows/docker-build-ascend-a2.yml:209"],"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/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#packaging"}},{"name":"Pinned-Dependencies","score":-1,"reason":"internal error: error parsing shell code: docker/Dockerfile.isaaclab230:1:32: unclosed here-document 'EOP'","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 1 commits out of 30 are checked with a SAST tool","Warn: CodeQL tool not detected"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#sast"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected: On GitHub:\nEnable private vulnerability disclosure in your repository settings https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository\nAdd a section in your SECURITY.md indicating you have enabled private reporting, and tell them to follow the steps in https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability to report vulnerabilities.\nOn GitLab:\nAdd a section in your SECURITY.md indicating the process to disclose vulnerabilities for your project.\nExamples: https://github.com/ossf/scorecard/blob/main/SECURITY.md, https://github.com/slsa-framework/slsa-github-generator/blob/main/SECURITY.md, https://github.com/sigstore/.github/blob/main/SECURITY.md.\nFor additional information on vulnerability disclosure, see https://github.com/ossf/oss-vulnerability-guide/blob/main/maintainer-guide.md. (Medium effort)","Warn: no security file to analyze: On GitHub:\nEnable private vulnerability disclosure in your repository settings https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository\nAdd a section in your SECURITY.md indicating you have enabled private reporting, and tell them to follow the steps in https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability to report vulnerabilities.\nOn GitLab:\nProvide a point of contact in your SECURITY.md.\nExamples: https://github.com/ossf/scorecard/blob/main/SECURITY.md, https://github.com/slsa-framework/slsa-github-generator/blob/main/SECURITY.md, https://github.com/sigstore/.github/blob/main/SECURITY.md. (Low effort)","Warn: no security file to analyze: On GitHub:\nEnable private vulnerability disclosure in your repository settings https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository\nAdd a section in your SECURITY.md indicating you have enabled private reporting, and tell them to follow the steps in https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability to report vulnerabilities.\nOn GitLab:\nAdd a section in your SECURITY.md indicating the process to disclose vulnerabilities for your project.\nExamples: https://github.com/ossf/scorecard/blob/main/SECURITY.md, https://github.com/slsa-framework/slsa-github-generator/blob/main/SECURITY.md, https://github.com/sigstore/.github/blob/main/SECURITY.md. (Low effort)","Warn: no security file to analyze: On GitHub:\nEnable private vulnerability disclosure in your repository settings https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository\nAdd a section in your SECURITY.md indicating you have enabled private reporting, and tell them to follow the steps in https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability to report vulnerabilities.\nOn GitLab:\nAdd a section in your SECURITY.md indicating the process to disclose vulnerabilities for your project.\nExamples: https://github.com/ossf/scorecard/blob/main/SECURITY.md, https://github.com/slsa-framework/slsa-github-generator/blob/main/SECURITY.md, https://github.com/sigstore/.github/blob/main/SECURITY.md. (Low effort)"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#security-policy"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":["Warn: no GitHub releases found"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/check-pr-title.yml:1: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/check-pr-title.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Info: topLevel 'contents' permission set to 'read': .github/workflows/cpu_unit_tests.yml:57","Info: topLevel 'contents' permission set to 'read': .github/workflows/doc.yml:58","Warn: no topLevel permission defined: .github/workflows/docker-build-ascend-a2.yml:1: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/docker-build-ascend-a2.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docker-build-ascend-a2.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docker-build-ascend-a2.yml:134","Warn: no topLevel permission defined: .github/workflows/docker-build-ascend-a3.yml:1: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/docker-build-ascend-a3.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docker-build-ascend-a3.yml:134","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docker-build-ascend-a3.yml:31","Warn: no topLevel permission defined: .github/workflows/docker-build-ascend-sglang-a2.yml:1: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/docker-build-ascend-sglang-a2.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Warn: no topLevel permission defined: .github/workflows/docker-build-ascend-sglang-a3.yml:1: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/docker-build-ascend-sglang-a3.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ascend.yml:64","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_grpo_trainer_trtllm.yml:92","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer.yml:53","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_fsdp_turbo_vllm.yml:84","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_sglang.yml:86","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_sglang_2.yml:86","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_sglang_2_ascend.yml:86","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_sglang_ascend.yml:86","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_vllm.yml:87","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_vllm_2.yml:87","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_vllm_2_ascend.yml:87","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_megatron_vllm_rocm.yml:87","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_veomni_vllm.yml:82","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_ppo_trainer_veomni_vllm_ascend.yml:84","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_sft_llm.yml:69","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_sft_llm_ascend.yml:69","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_sft_vlm.yml:69","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_v1_separate_async.yml:53","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_v1_separate_async_ascend.yml:61","Info: topLevel 'contents' permission set to 'read': .github/workflows/e2e_v1_separate_async_opd.yml:57","Info: topLevel 'contents' permission set to 'read': .github/workflows/gpu_unit_tests.yml:71","Info: topLevel 'contents' permission set to 'read': .github/workflows/model.yml:57","Info: topLevel 'contents' permission set to 'read': .github/workflows/model_ascend.yml:61","Info: topLevel 'contents' permission set to 'read': .github/workflows/nightly_ascend.yml:46","Info: topLevel 'contents' permission set to 'read': .github/workflows/nightly_ascend_multinode.yml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/npu_unit_tests.yml:73","Info: topLevel 'contents' permission set to 'read': .github/workflows/pre-commit.yml:18","Warn: topLevel 'contents' permission set to 'write': .github/workflows/precommit-autofix.yml:10: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/precommit-autofix.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Info: topLevel 'contents' permission set to 'read': .github/workflows/reward_model_sglang.yml:59","Info: topLevel 'contents' permission set to 'read': .github/workflows/reward_model_sglang_ascend.yml:59","Info: topLevel 'contents' permission set to 'read': .github/workflows/reward_model_vllm.yml:60","Info: topLevel 'contents' permission set to 'read': .github/workflows/reward_model_vllm_ascend.yml:59","Info: topLevel 'contents' permission set to 'read': .github/workflows/sanity.yml:58","Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:20","Info: topLevel 'contents' permission set to 'read': .github/workflows/secrets_scan.yml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/sgl.yml:74","Info: topLevel 'contents' permission set to 'read': .github/workflows/sgl_ascend.yml:74","Warn: no topLevel permission defined: .github/workflows/type-coverage-check.yml:1: Visit https://app.stepsecurity.io/secureworkflow/verl-project/verl/type-coverage-check.yml/main?enable=permissions\nTick the 'Restrict permissions for GITHUB_TOKEN'\nUntick other options\nNOTE: If you want to resolve multiple issues at once, you can visit https://app.stepsecurity.io/securerepo instead. (Low effort)","Info: topLevel 'contents' permission set to 'read': .github/workflows/vllm.yml:75","Info: topLevel 'contents' permission set to 'read': .github/workflows/vllm_ascend.yml:72","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#token-permissions"}},{"name":"Vulnerabilities","score":0,"reason":"18 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2026-3716","Warn: Project is vulnerable to: GHSA-8h2j-cgx8-6xv7 / PYSEC-2021-100","Warn: Project is vulnerable to: PYSEC-2024-38","Warn: Project is vulnerable to: PYSEC-2020-73","Warn: Project is vulnerable to: GHSA-rgxp-2hwp-jwgg / PYSEC-2026-113","Warn: Project is vulnerable to: GHSA-3pww-qvr8-6mhp / PYSEC-2026-515","Warn: Project is vulnerable to: GHSA-6cxr-8q3m-jwrr / PYSEC-2026-516","Warn: Project is vulnerable to: GHSA-6wgj-66m2-xxp2 / PYSEC-2026-517","Warn: Project is vulnerable to: GHSA-gx77-xgc2-4888 / PYSEC-2026-518","Warn: Project is vulnerable to: GHSA-h3xg-wv58-5p43 / PYSEC-2026-519","Warn: Project is vulnerable to: GHSA-hhrp-gw25-jr43 / PYSEC-2026-2273","Warn: Project is vulnerable to: GHSA-j3mh-qmjj-xp83 / PYSEC-2026-130","Warn: Project is vulnerable to: GHSA-q279-jhrf-cc6v / PYSEC-2026-520","Warn: Project is vulnerable to: GHSA-q5fh-2hc8-f6rq / PYSEC-2026-2271","Warn: Project is vulnerable to: GHSA-w4rh-fgx7-q63m / PYSEC-2025-23","Warn: Project is vulnerable to: PYSEC-2026-2272","Warn: Project is vulnerable to: GHSA-33c7-2mpw-hg34 / PYSEC-2020-150","Warn: Project is vulnerable to: GHSA-f97h-2pfx-f59f / PYSEC-2020-151"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/49c0eed3a423f00c872b5c3c9f1bbca9e8aae799/docs/checks.md#vulnerabilities"}}]}
