Skip to content

Harden dependency management with Dependabot cooldowns, grouping, and hash-pinned Python requirements#65

Merged
felickz merged 3 commits into
mainfrom
copilot/choresecurity-add-dependabot-cooldown
Jun 1, 2026
Merged

Harden dependency management with Dependabot cooldowns, grouping, and hash-pinned Python requirements#65
felickz merged 3 commits into
mainfrom
copilot/choresecurity-add-dependabot-cooldown

Conversation

Copilot AI commented May 20, 2026

Copy link
Copy Markdown
Contributor

This PR tightens dependency management for the repository by hardening Dependabot behavior (cooldown + grouping) and making the release workflow's Python tooling install deterministic via hash-pinned requirements.

Changes Made

  • .github/dependabot.yml: Added cooldown settings and groups GitHub Actions updates under a single wildcard group. Added a pip ecosystem entry so Dependabot tracks and proposes updates for the hash-pinned requirements.txt dependencies (weekly schedule, 3-day cooldown, grouped under python-deps).
  • .github/workflows/release.yml: Switches release-version parsing dependency install to pip install -r requirements.txt --require-hashes for deterministic, hash-verified installs.
  • requirements.txt: Adds a hash-pinned Python dependency lockfile for yq and its transitive dependencies, intended for deterministic installs in CI.

Copilot AI requested review from Copilot and removed request for Copilot May 20, 2026 21:14
@felickz felickz marked this pull request as ready for review May 20, 2026 22:51
@felickz felickz requested a review from a team as a code owner May 20, 2026 22:51

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR tightens dependency management for the repository by hardening Dependabot behavior (cooldown + grouping) and making the release workflow’s Python tooling install deterministic via hash-pinned requirements.

Changes:

  • Added Dependabot cooldown configuration per ecosystem and grouped GitHub Actions updates into a single wildcard group.
  • Updated the release workflow to install yq (and its deps) from a hash-verified requirements.txt instead of ad-hoc pip install yq.
  • Introduced a new hash-pinned requirements.txt lockfile for the workflow’s Python dependencies.
Show a summary per file
File Description
requirements.txt Adds a hash-pinned Python dependency lockfile intended for deterministic installs.
.github/workflows/release.yml Switches release-version parsing dependency install to pip install -r requirements.txt --require-hashes.
.github/dependabot.yml Adds cooldown settings and groups GitHub Actions updates under a single group.

Copilot's findings

  • Files reviewed: 2/3 changed files
  • Comments generated: 1

Comment thread .github/dependabot.yml

@felickz felickz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 🤖🟢- Tests Pass

@github-actions

github-actions Bot commented May 26, 2026

Copy link
Copy Markdown

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 1 package(s) with unknown licenses.
See the Details below.

Snapshot Warnings

⚠️: The number of snapshots compared for the base SHA (0) and the head SHA (1) do not match. You may see unexpected additions in the diff.
Consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice.

License Issues

requirements.txt

PackageVersionLicenseIssue Type
tomlkit0.15.0NullUnknown License

OpenSSF Scorecard

PackageVersionScoreDetails
pip/argcomplete 3.6.3 UnknownUnknown
pip/pyyaml 6.0.3 UnknownUnknown
pip/tomlkit 0.15.0 UnknownUnknown
pip/xmltodict 1.0.4 UnknownUnknown
pip/yq 3.4.3 🟢 3.1
Details
CheckScoreReason
Maintained⚠️ 00 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Binary-Artifacts🟢 10no binaries found in the repo
Code-Review⚠️ 0Found 0/30 approved changesets -- score normalized to 0
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Security-Policy🟢 10security policy file detected
SAST⚠️ 0no SAST tool detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Packaging⚠️ -1packaging workflow not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ 0Project has not signed or included provenance with any releases.
Branch-Protection⚠️ 0branch protection not enabled on development/release branches

Scanned Files

  • requirements.txt

Copilot AI changed the title chore(security): add Dependabot cooldown/groups and hash-pin release pip installs Harden dependency management with Dependabot cooldowns, grouping, and hash-pinned Python requirements May 26, 2026
Copilot AI requested a review from felickz May 26, 2026 19:47
@felickz felickz merged commit 6c02a1a into main Jun 1, 2026
13 checks passed
@felickz felickz deleted the copilot/choresecurity-add-dependabot-cooldown branch June 1, 2026 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants