Skip to content

docs: correct the keystore history cleanup procedure - #48

Merged
machamy merged 1 commit into
mainfrom
docs/keystore-history-cleanup
Aug 16, 2026
Merged

machamy merged 1 commit into
mainfrom
docs/keystore-history-cleanup

Conversation

@machamy

@machamy machamy commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

Why

The README's cleanup command does not run — --sensitive-data-removal is not a flag in current git-filter-repo, so following the documented procedure fails before rewriting anything.

The rewrite was performed on 2026-08-16. This documents what was actually done and three consequences that only surfaced during the run.

What changed

  • Correct command, plus the mirror-clone-and-backup and ruleset-toggle steps the procedure actually requires.
  • refs/pull/* cannot be rewritten. GitHub rejects writes to those refs, so old commits stay pinned. A fresh clone is clean, but the leaked blob is still reachable by SHA through the API. Fully removing it requires a GitHub Support request.
  • Force-pushing tags retriggers Android Release Build for every tag. Those runs were cancelled; left alone they would have rebuilt and promoted v1.1.1/v1.1.2, which are deliberately prereleases.
  • Local branches in an existing clone still point at old history, so pushing one restores the leak.

Also notes that the leaked key is permanently retired and the current upload key is a separate one generated on 2026-08-16.

🤖 Generated with Claude Code

The documented command does not run: --sensitive-data-removal is not a flag
in current git-filter-repo, so following the README as written fails before
it rewrites anything.

Replace it with the procedure actually used on 2026-08-16, and record the
three things that were not obvious until it was run:

refs/pull/* cannot be rewritten. GitHub rejects writes to them, so the old
commits stay pinned and the leaked blob is still reachable by its SHA
through the API even though a fresh clone no longer contains it. Removing it
completely needs a GitHub Support request.

Force pushing the tags retriggers Android Release Build for every existing
tag, which would have rebuilt and promoted releases that were deliberately
demoted to prereleases.

Local branches in an existing clone keep pointing at the old history, so
pushing one restores the leak.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@machamy
machamy merged commit 13da905 into main Aug 16, 2026
7 checks passed
@machamy
machamy deleted the docs/keystore-history-cleanup branch August 16, 2026 20:13
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