Back to list

GitHub Actions lacks lockfile dependency management

9/10 Critical

GitHub Actions has no lockfile system to pin exact versions of third-party actions. Every workflow run re-resolves dependencies from the manifest without recording what was actually chosen, creating non-deterministic builds and enabling supply chain attacks. This is a fundamental gap compared to mature package managers.

Category
dependency
Workaround
hack
Stage
deploy
Freshness
persistent
Scope
single_lib
Upstream
wontfix
Recurring
Yes
Buyer Type
team
Maintainer
slow

Sources

Collection History

Query: “What are the most common pain points with GitHub Actions in 2025?3/27/2026

The core problem is the lack of a lockfile. Every other package manager figured this out decades ago: you declare loose constraints in a manifest, the resolver picks specific versions, and the lockfile records exactly what was chosen. GitHub Actions has no equivalent. Every run re-resolves from your workflow file, and the results can change without any modification to your code.

Created: 3/27/2026Updated: 3/27/2026