chore(ci): use --mirror so GitHub branch deletes propagate #192

Merged
chihlasm merged 3 commits from chore/mirror-prune-deletes into main 2026-05-29 18:21:30 +00:00
Owner

Summary

One-line workflow change: replace git push --all --force + git push --tags --force with git push --mirror so branch + tag deletions on Gitea propagate to the GitHub mirror.

Why

Today's branch cleanup surfaced 14 branches that existed on GitHub but had been deleted on Gitea over the past month. --all --force updates and creates refs but never removes ones the source doesn't have, so the mirror drifted forever. --mirror (which is --all --tags --prune --force rolled into one) makes GitHub a true reflection of Gitea — deletes flow through automatically.

No behavior change for normal pushes. First firing after merge will be a no-op since today's manual cleanup already aligned both sides (11 branches each).

Test plan

  • Diff inspected
  • On merge, watch the next mirror job complete cleanly
  • Confirm a future Gitea branch deletion auto-prunes on GitHub
## Summary One-line workflow change: replace `git push --all --force` + `git push --tags --force` with `git push --mirror` so branch + tag *deletions* on Gitea propagate to the GitHub mirror. ## Why Today's branch cleanup surfaced 14 branches that existed on GitHub but had been deleted on Gitea over the past month. `--all --force` updates and creates refs but never removes ones the source doesn't have, so the mirror drifted forever. `--mirror` (which is `--all --tags --prune --force` rolled into one) makes GitHub a true reflection of Gitea — deletes flow through automatically. No behavior change for normal pushes. First firing after merge will be a no-op since today's manual cleanup already aligned both sides (11 branches each). ## Test plan - [x] Diff inspected - [ ] On merge, watch the next `mirror` job complete cleanly - [ ] Confirm a future Gitea branch deletion auto-prunes on GitHub
chihlasm added 1 commit 2026-05-29 17:24:48 +00:00
chore(ci): mirror to GitHub with --mirror so deletes propagate
Some checks failed
Mirror to GitHub / mirror (push) Failing after 5s
CI / frontend (pull_request) Successful in 6m55s
CI / e2e (pull_request) Successful in 10m28s
CI / backend (pull_request) Successful in 12m57s
84dc9b07bf
Today's cleanup surfaced 14 branches that existed on GitHub but had
been deleted on Gitea — the previous `--all --force` + `--tags --force`
pair pushes refs but never deletes missing ones, so the mirror drifted
over time.

Switching to `git push --mirror` (equivalent to --all --tags --prune
--force) makes the GitHub side a true reflection of Gitea: branch and
tag deletes propagate automatically.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
chihlasm added 1 commit 2026-05-29 17:29:25 +00:00
chore: gitignore .mcp.json
Some checks failed
Mirror to GitHub / mirror (push) Failing after 6s
CI / frontend (pull_request) Successful in 7m5s
CI / backend (pull_request) Successful in 12m56s
CI / e2e (pull_request) Successful in 10m3s
16a07e1682
`.mcp.json` is per-machine MCP server config (e.g. the GitHub MCP block
added during today's session). It references local env vars for auth
rather than embedding secrets, but the file itself is workstation-specific
— what servers a contributor connects depends on which MCPs they've set
up locally.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
chihlasm added 1 commit 2026-05-29 17:34:26 +00:00
fix(ci): mirror — push refs/heads + refs/tags, not all refs
All checks were successful
Mirror to GitHub / mirror (push) Successful in 6s
CI / frontend (pull_request) Successful in 6m59s
CI / backend (pull_request) Successful in 11m37s
CI / e2e (pull_request) Successful in 9m56s
d5d4405ac2
`git push --mirror` pushes everything under refs/* including refs/pull/*,
which GitHub rejects with "deny updating a hidden ref" — GitHub manages
its own refs/pull/N/head namespace and won't let outside pushers touch it.

Switching to `--all --prune --force` + `--tags --prune --force` scopes the
push to refs/heads/* and refs/tags/* only (same as the original lines)
while keeping --prune so branch/tag deletions still propagate.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
chihlasm merged commit 87236b57d2 into main 2026-05-29 18:21:30 +00:00
Sign in to join this conversation.