Skip to content

feat(renovate): dogfood the shipped renovate config on the maintainer repo - #15

Merged
maybebyte merged 4 commits into
mainfrom
chore/dogfood-renovate
Sep 8, 2026
Merged

feat(renovate): dogfood the shipped renovate config on the maintainer repo#15
maybebyte merged 4 commits into
mainfrom
chore/dogfood-renovate

Conversation

@maybebyte

Copy link
Copy Markdown
Owner

Summary

The template ships a Renovate layer that the maintainer repo never carried, so its own uv/mise/Actions pins drifted with nothing to surface it. This lands the scoped renovate.json from the amended dependency-inventory spec and closes Phase 1 of the 2026-07-01 dogfooding audit.

Changes

  • Root renovate.json, verbatim from docs/superpowers/specs/2026-06-25-dependency-inventory-design.md: weekly lockFileMaintenance (the only source of in-range uv.lock refreshes, since every dev dep is a capped range), the pre-commit manager off, and astral-sh/uv disabled via matchPackageNames so both its mise and setup-uv sites stay manual.
  • New policy assertion test_gitleaks_pin_matches_template: the mise.toml gitleaks pin must equal the template's mise.toml.jinja copy and the AGENTS.md literal. Renovate can only see the first, so a gitleaks bump PR stays red until the template and prose follow on the same branch.
  • AGENTS.md gains a Renovate section and drops every "the maintainer has no Renovate" sentence; the audit plan gets a status block recording gap 9 (property tests) and candidate F (CI jobs on the just recipes) as deferred, with reasons.

Testing

  • just fmt-check lint typecheck policy — all pass; policy suite 6 passed (was 5).
  • python3 -m json.tool renovate.json — valid JSON. Renovate's own config validation is not yet run: it happens on the app's first run after install.
  • Full generation matrix (just test) not run locally; CI's test job covers it.

Notes for reviewers

  • Merge does not activate anything. The JSON is inert until the Mend Renovate GitHub App is installed on this repository. Install it after merge, not before: with no config on the default branch Renovate opens an onboarding PR instead of using this one. Expect a Dependency Dashboard issue on the first run.
  • Decision: no customManager for the uvx run-step pins. The only maintainer uvx pins are parity-locked to the rendered template by the generation suite, so a one-sided bump would fail just test.
  • Action digest bumps will land on the maintainer's workflows alone; the template's separately zizmor-audited pins may lag. Accepted, and documented in AGENTS.md.

Related

… repo

Closes gap #6 of the 2026-07-01 dogfooding audit. The config is the
scoped design from the dependency-inventory spec (amended 2026-08-04):
config:recommended + pinGitHubActionDigests, weekly lockFileMaintenance
(the only source of in-range uv.lock refreshes, since every dev dep is a
capped range), the pre-commit manager off (its rev SHA must move with the
template copy, which no manager sees), and astral-sh/uv disabled via
matchPackageNames so both the mise and setup-uv sites stay manual.

The file is inert until the Mend Renovate app is installed on the
repository; that is an operator step after merge.
Renovate re-derives only the maintainer's mise.toml gitleaks pin; the
template's mise.toml.jinja and the AGENTS.md prose literal are invisible
to it. Assert all three agree so a Renovate gitleaks PR stays red until
the template and prose are bumped on the same branch.
Add a Renovate section (scope, the operator install step, how a gitleaks
bump PR interacts with the policy gate, and the divergences from the
template's renovate.json). Retire the "the maintainer has no Renovate"
sentences and name the new parity assertion in the policy-gate scope.
@maybebyte
maybebyte merged commit 5d1b103 into main Sep 8, 2026
10 checks passed
@maybebyte
maybebyte deleted the chore/dogfood-renovate branch September 8, 2026 20:34
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