Skip to content

chore(deps): add the fleet dependabot config - #116

Merged
forkwright merged 1 commit into
mainfrom
chore/add-dependabot-config
Aug 24, 2026
Merged

chore(deps): add the fleet dependabot config#116
forkwright merged 1 commit into
mainfrom
chore/add-dependabot-config

Conversation

@forkwright

Copy link
Copy Markdown
Owner

This repository has no .github/dependabot.yml, so it has never received a dependency update.

Eight of fourteen audited fleet repos are in that state — typikon, logismos, epitelesis, koinon, sphragis, kanon, gnomon, dioptron. The absence is silent by nature: a repo with no config looks exactly like one whose dependencies happen to be current.

It cannot be fixed at the org level. Unlike community health files (SECURITY.md, CONTRIBUTING.md), Dependabot does not inherit a config from the .github repository — version updates require a per-repo file.

What this adds

The fleet form, matching aletheia and harmonia:

  • weekly, Monday
  • patch and minor grouped separately, so a green group lands as one PR instead of N
  • github-actions watched alongside the package ecosystem
  • forkwright on review

The warning in the file is load-bearing

Every lockfile needs its own row. A dependency graph watched by no entry never updates, and nothing reports it — thumos lost nine releases of fuzz/Cargo.lock exactly that way, with two path-dependencies missing entirely and invisible to cargo audit and cargo deny the whole time (forkwright/thumos#768).

Where a repo has more than one lockfile the correct form is directories (plural) in one entry, not one entry per directory. Three separate entries cover the same graphs but guarantee a separate PR each, and a bump declared in the root manifest spans all of them — so every PR regenerates one lockfile, leaves the others stale, and fails the repo's drift gates. That is exactly what happened to thumos's smoltcp bump (#923/#924/#925, none mergeable, hand-consolidated into #926, config fixed in #927).

Root cause of the class

kanon#3640: workflow/templates/ci/ ships dependabot-auto-merge.yml — the workflow that merges dependency PRs — and no dependabot.yml to produce any. Every repo scaffolded from canon inherits an auto-merger with nothing to merge. Fixing the template is tracked there; this PR fixes the instance.

Scope

One file. No dependency versions change here — this is the mechanism that will propose them.

This repository had no .github/dependabot.yml, so it has never received a
dependency update. Eight of fourteen audited fleet repos were in that state.
The absence is silent by nature: a repo with no config looks exactly like one
whose dependencies happen to be current.

It cannot be fixed at the org level. Unlike community health files, Dependabot
does not inherit a config from the .github repository -- version updates
require a per-repo file.

Matches the fleet form: weekly, patch and minor grouped separately so a green
group merges as one PR, github-actions watched alongside the package
ecosystem, forkwright on review.

The WARNING about enumerating every lockfile is carried deliberately. A
dependency graph watched by no entry never updates, and nothing reports it --
thumos lost nine releases of fuzz/Cargo.lock exactly that way.

Root cause of the class is kanon#3640: the CI template ships
dependabot-auto-merge.yml, the workflow that MERGES dependency PRs, and no
dependabot.yml to produce any. Every repo scaffolded from canon inherits an
auto-merger with nothing to merge.
@forkwright
forkwright merged commit 3e95a7a into main Aug 24, 2026
7 checks passed
@forkwright
forkwright deleted the chore/add-dependabot-config branch August 24, 2026 16:18
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.

1 participant