Skip to content

Dependabot has no auto-merge policy and doesn't keep both Cargo.lock files in sync #941

Description

@Ejirowebfi

🔴 Critical · .github/dependabot.yml, contracts/Cargo.lock, contracts/token-factory/fuzz/Cargo.lock (implied by the fuzz crate being a separate workspace member)

Description

contracts/token-factory/fuzz is its own Cargo project (has its own Cargo.toml, likely its own lockfile, per standard cargo-fuzz project layout) alongside the main contracts/Cargo.lock. Dependabot configuration (existence confirmed, contents not reviewed in depth) needs to cover both lockfiles independently, or a dependency bump in the main contract workspace can silently leave the fuzz workspace pinned to older, potentially-vulnerable transitive dependencies that cargo audit's main-workspace run (per issue #31) wouldn't necessarily catch if security-audit.yml's cargo audit step doesn't separately target the fuzz workspace.

Tasks

  • Review .github/dependabot.yml and confirm it has a package-ecosystem entry covering contracts/token-factory/fuzz specifically, not just contracts/.
  • Confirm (or add) a cargo audit step in security-audit.yml that runs against the fuzz workspace's lockfile too, not just the main contract workspace.
  • Establish an explicit policy for auto-merging Dependabot PRs (e.g. auto-merge patch-level bumps that pass CI unattended; require manual review for minor/major) and configure it via GitHub's auto-merge + branch protection, rather than leaving every Dependabot PR to accumulate unreviewed indefinitely (a common source of the exact "known vulnerability sits unpatched for months" problem security scanning is meant to prevent).
  • Document the policy in CONTRIBUTING.md.

Acceptance Criteria

  • Both contracts/Cargo.lock and the fuzz workspace's lockfile receive Dependabot coverage and are independently audited in CI.
  • A documented, configured auto-merge policy exists for low-risk dependency updates.

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26bugSomething isn't workingcriticalCritical severity — address immediatelydevopsreleasedtesting

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions