ci(dco): add DCO enforcement workflow#425
Conversation
## Summary Add Developer Certificate of Origin (DCO) check for all pull requests using dco-check (PyPI) with SHA-pinned actions and hash-verified pip install. ## Changes - Add .github/workflows/dco.yml with dco-check==0.5.0 (hash-pinned) - Add DCO section to CONTRIBUTING.md with sign-off instructions - Add --signoff requirement to AGENTS.md Key Constraints Signed-off-by: Null;Variant <null@nullvariant.com> 🖥️ IDE: [Cursor](https://cursor.sh) 🔌 Extension: [Claude Code](https://claude.ai/download) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Model-Raw: claude-opus-4-6
🦥 Slow's Code Review 😩...yawn... Do I really have to review this?
| Split it up... reading long files is exhausting.
This review was reluctantly filed by nullvariant-slow[bot] |
🐰 Mimi's Validation Report ✅All checks are looking good! Great job! 🎉 ⏳ Some checks are still running. I will keep watching!
This report was carefully prepared by nullvariant-mimi[bot] |
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Snapshot WarningsEnsure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice. OpenSSF Scorecard
Scanned Files
|
🕊️ Ciel's Mediation 🌤️*~~ floating down from the clouds ~~ The zoo seems a bit noisy today...* 2 zoo members have reviewed this PR.
⚖️ The zoo has mixed opinions. Some are concerned, some are fine with it. Please review each comment carefully and make the final call.
This mediation was peacefully delivered by nullvariant-ciel[bot] |
1 similar comment
🕊️ Ciel's Mediation 🌤️*~~ floating down from the clouds ~~ The zoo seems a bit noisy today...* 2 zoo members have reviewed this PR.
⚖️ The zoo has mixed opinions. Some are concerned, some are fine with it. Please review each comment carefully and make the final call.
This mediation was peacefully delivered by nullvariant-ciel[bot] |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
## Summary Fix DCO Check workflow failure. pip's --hash option is only available via requirements files, not as a CLI argument. ## Changes - Write requirements to temp file with hash, then install via -r flag Signed-off-by: Null;Variant <null@nullvariant.com> 🖥️ IDE: [Cursor](https://cursor.sh) 🔌 Extension: [Claude Code](https://claude.ai/download) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Model-Raw: claude-opus-4-6
## Summary dco-check requires GITHUB_TOKEN to fetch PR commit data via GitHub API. ## Changes - Add GITHUB_TOKEN env to Run DCO Check step Signed-off-by: Null;Variant <null@nullvariant.com> 🖥️ IDE: [Cursor](https://cursor.sh) 🔌 Extension: [Claude Code](https://claude.ai/download) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Model-Raw: claude-opus-4-6
|



Summary
dco-check(PyPI, christophebedard/dco-check) directly in workflow instead ofcncf/dcocheckerwrapper (staleactions/checkout@v2, no version pinning)dcoapp/app(GitHub App) due to external Probot server dependency and override bypass capabilityChanges
.github/workflows/dco.yml: New workflow with SHA-pinned actions and hash-verifiedpip install dco-check==0.5.0CONTRIBUTING.md: Add DCO section with sign-off instructions and DCO v1.1 summaryAGENTS.md: Add--signoffrequirement to Key ConstraintsSecurity
actions/checkout@v6.0.2,actions/setup-python@v6.2.0,step-security/harden-runner@v2.16.1— all SHA-pinnedpip installuses--require-hashes --no-depsfor supply chain integritypermissions: {}at top level,contents: readonly at job levelTest plan
Signed-off-bySigned-off-by🤖 Generated with Claude Code