Skip to content

🔒 feat: promote examples to real presets and cover every ecosystem - #8

Merged
miccy merged 2 commits into
mainfrom
dev/sub-presets
Aug 22, 2026
Merged

🔒 feat: promote examples to real presets and cover every ecosystem#8
miccy merged 2 commits into
mainfrom
dev/sub-presets

Conversation

@miccy

@miccy miccy commented Aug 22, 2026

Copy link
Copy Markdown
Member

Last step before the transfer to ownctrl/supply-chain.

Presets instead of examples

examples/ was copy-paste material. Promoted to root, referenceable directly:

Preset Reference
base local>ownctrl/supply-chain
lockdown local>ownctrl/supply-chain:lockdown
no-automerge local>ownctrl/supply-chain:no-automerge
aggressive local>ownctrl/supply-chain:aggressive

A sub-preset does not inherit default.json on its own. owner/repo:lockdown resolves lockdown.json alone, so each one extends the base explicitly. I removed those extends at first thinking they were redundant, which silently detached all three from the entire policy — caught before commit, but worth writing down.

Dropped security-hardened: it duplicated the base, and keeping it implied the base was not hardened.

Grouping is now universal

The non-major group carried a manager allowlist, so any ecosystem not named in it got a separate PR per dependency. The allowlist is gone — everything groups by default, and per-language rules split the widely used ones back out.

Added: Go, Python, JVM, .NET, PHP, Ruby, Dart, Swift, Kubernetes — alongside Rust, Nix, Terraform, Ansible, Deno.

Grouping only. No automerge is granted in any of them; production dependencies stay review-gated in every language.

Also

Czech article draft in docs/, marked draft: true. Not finished — it lands properly once the transfer is done and the links are real.

Verification

renovate-config-validator --strict exits 0 over 5 files. Spot-checked that cargo, gomod, poetry and bundler dependencies group correctly and none automerge.

miccy added 2 commits August 22, 2026 23:11
The examples directory was copy-paste material. Promoted to root as presets
that can be referenced directly:

  local>ownctrl/supply-chain:lockdown
  local>ownctrl/supply-chain:no-automerge
  local>ownctrl/supply-chain:aggressive

Each extends the base explicitly. A sub-preset does NOT inherit default.json
on its own -- `owner/repo:lockdown` resolves lockdown.json alone -- so leaving
the extends out would have silently detached them from the whole policy.

Dropped renovate-security-hardened: it duplicated the base, which has been
security-hardened since the audit. Keeping it implied the base was not.

Grouping is now universal. The non-major group carried a manager allowlist, so
any ecosystem not named in it got a separate PR per dependency. With the
allowlist gone every ecosystem groups by default, and per-language rules split
the widely used ones back out: Go, Python, JVM, .NET, PHP, Ruby, Dart, Swift
and Kubernetes join Rust, Nix, Terraform, Ansible and Deno.

These are grouping only. No automerge is granted anywhere in them; production
dependencies stay review-gated whatever language they are written in.

Verified: validator --strict exits 0 over 5 files; cargo, gomod, poetry and
bundler dependencies group correctly and none of them automerge.
Draft, marked draft: true in frontmatter. Built around the four faults the
audit found rather than around the config itself -- a config walkthrough is
forgettable, and each of these four is a general trap that costs someone else
the same afternoon.

Repository links point at ownctrl/supply-chain, which is live only after the
transfer.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@coderabbitai

coderabbitai Bot commented Aug 22, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@miccy, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 42 minutes

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

Wait for the limit to reset, then comment @coderabbitai review or push new commits to the PR.

An organization admin can change what happens after included review limits in Billing.

How do review limits work?

CodeRabbit enforces per-developer PR review limits within each organization.

For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: ec8b5c39-321f-4645-9287-ef093e9cec95

📥 Commits

Reviewing files that changed from the base of the PR and between a35b1b9 and d1357ca.

📒 Files selected for processing (11)
  • .github/workflows/setup-owner.yml
  • .github/workflows/validate.yml
  • README.md
  • aggressive.json
  • default.json
  • docs/clanek-supply-chain-cs.md
  • examples/renovate-no-automerge.json
  • examples/renovate-security-hardened.json
  • examples/renovate.json
  • lockdown.json
  • no-automerge.json

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@miccy miccy self-assigned this Aug 22, 2026
@miccy
miccy merged commit a56d130 into main Aug 22, 2026
5 checks passed
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