feat(doctor): origin is jo.et0.pw, sr is retired, immutable trunk-only, fastlane defaults align #80

Merged
larandar merged 1 commit from agent.teyla/Jostoph:feat/doctor-origin-immutable-default-branch into main 2026-08-13 09:02:27 +00:00
Owner

Four rulings, one commit (owner, 2026-08-13):

  • origin must resolve to jo.et0.pw, not a forge-named ssh remote or
    anything else — the estate is moving every repo onto one name over the
    host the credential helper already trusts. Derived from whatever et0.pw
    remote already exists (any name, any protocol) and fixed in place; a
    leftover sr remote (the sr.ht mirror, now retired) is removed outright.

  • immutable_heads() drops tags(glob:"v*") — a release tag marking a
    commit isn't the same claim as that commit being unrewritable forever,
    and treating it as a wall is what forced a manual branch-protection
    detour to correct a curated push earlier today. trunk() alone still
    protects the one thing that actually needs protecting.

  • A repo whose forge carries a fastlane bookmark is now checked
    (read-only — this never calls the Forgejo API) against its forge-side
    default branch, which should be fastlane, not main. midgard/-owned
    repos are exempted: those are mirror repos and follow their upstream's
    convention, not this estate's. A drifted default is reported, not
    patched — that write belongs to the nixops-forgejo provider, applied
    declaratively.

Both new checks join check, remotes, and default-branch under
doctor.

Four rulings, one commit (owner, 2026-08-13): - `origin` must resolve to jo.et0.pw, not a `forge`-named ssh remote or anything else — the estate is moving every repo onto one name over the host the credential helper already trusts. Derived from whatever et0.pw remote already exists (any name, any protocol) and fixed in place; a leftover `sr` remote (the sr.ht mirror, now retired) is removed outright. - `immutable_heads()` drops `tags(glob:"v*")` — a release tag marking a commit isn't the same claim as that commit being unrewritable forever, and treating it as a wall is what forced a manual branch-protection detour to correct a curated push earlier today. `trunk()` alone still protects the one thing that actually needs protecting. - A repo whose forge carries a `fastlane` bookmark is now checked (read-only — this never calls the Forgejo API) against its forge-side default branch, which should be `fastlane`, not `main`. `midgard/`-owned repos are exempted: those are mirror repos and follow their upstream's convention, not this estate's. A drifted default is reported, not patched — that write belongs to the nixops-forgejo provider, applied declaratively. Both new checks join `check`, `remotes`, and `default-branch` under `doctor`.
Four rulings, one commit (owner, 2026-08-13):

- `origin` must resolve to jo.et0.pw, not a `forge`-named ssh remote or
  anything else — the estate is moving every repo onto one name over the
  host the credential helper already trusts. Derived from whatever et0.pw
  remote already exists (any name, any protocol) and fixed in place; a
  leftover `sr` remote (the sr.ht mirror, now retired) is removed outright.

- `immutable_heads()` drops `tags(glob:"v*")` — a release tag marking a
  commit isn't the same claim as that commit being unrewritable forever,
  and treating it as a wall is what forced a manual branch-protection
  detour to correct a curated push earlier today. `trunk()` alone still
  protects the one thing that actually needs protecting.

- A repo whose forge carries a `fastlane` bookmark is now checked
  (read-only — this never calls the Forgejo API) against its forge-side
  default branch, which should be `fastlane`, not `main`. `midgard/`-owned
  repos are exempted: those are mirror repos and follow their upstream's
  convention, not this estate's. A drifted default is reported, not
  patched — that write belongs to the nixops-forgejo provider, applied
  declaratively.

Both new checks join `check`, `remotes`, and `default-branch` under
`doctor`.
larandar deleted branch feat/doctor-origin-immutable-default-branch 2026-08-13 09:02:27 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Ting/Jostoph!80
No description provided.