The estate's forge settings disagree with the law and with each other: default branch, merge styles, label names #33
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Meta/Campaign
Meta/Epic
Meta/Session
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
Reviewed/Confirmed
Reviewed/Curated
Reviewed/Duplicate
Reviewed/Invalid
Reviewed/Won't Fix
Scope/Campaign
Status/Abandoned
Status/Blocked
Status/Conflicted
Status/In Progress
Status/In Review
Status/Need Grooming
Status/Need More Info
Status/Ready
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Ting/Jostoph#33
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found during a forge-wide survey of Ratification in practice, 2026-08-11. Sibling of the protections ticket; this one is about settings that exist but are inconsistent, rather than mechanism that is absent.
1. Default branch is inconsistent across the estate
fastlane:swarm/sleipnir,swarm/vordr,lar.ad/flake-ops,lar.ad/nixops4-providersmain:swarm/hydramem,lar.ad/modron,lar.ad/dendrite,larandar/flaky-mesh,Ting/Ting,Ting/JostophThe default branch decides what a PR targets when nobody chooses, what a clone lands on, and what the forge shows first. With
mainas default, law 1's "every PR sits on fastlane tip" is one unchecked dropdown away from being violated by accident — seelarandar/flaky-mesh#39, open againstmainsince 2026-08-07.2. Two repos cannot execute law 10
Law 10: "Squash raw PRs; preserve speaker-curated lines (rebase/ff-merge)."
larandar/flaky-meshhasallow_squash_merge: falseandallow_merge_commits: false— rebase is the only style available, so an uncurated PR cannot be squashed at all.default_merge_stylestill reportsmerge, which law 10 wants nowhere. Aslar.ad/flake-ops#88established, aDEFAULT_*in app.ini only reaches repos created after it is set, so the instance-level ruling in #22 will not touch a single existing repo. Per-repo conformance is the only path to them.3. One meaning, two label names
From #20's own out-of-scope note:
Law 13 closes with "no hand-created labels, no renames outside the spec", so two names for one law-10 verdict is exactly the ambiguity the spec exists to prevent. Deferred deliberately, still deferred.
4. Three repositories exist twice across orgs
dendrite,jostoph-rsandnixops4-providerseach exist under bothmidgardandlar.ad, with differing merge-style settings between the copies (midgard/dendritedefaults torebase,lar.ad/dendritetofast-forward-only). If these are mirrors, only one is governed and the other should say so; if both are live, the conformance surface is doubled and law 8's per-org seat cap applies twice to one codebase.In scope
Per-repo desired state in
nix/forgejo.nixfor default branch and allowed/default merge styles, reconciled the way labels and the webhook already are; a ruling on thecurated/Reviewed/Curatedcollision; and a statement of which of each duplicated pair is authoritative.Out of scope
Boundary
nix/forgejo.nixand its checks. No Rust, no policy judgment.Acceptance
fastlanewhere one exists.flaky-mesh's squash is re-enabled or its inability is declared as deviation.Filed by
agent.odin, 2026-08-11.