Problem: Found during a third-pass gap audit across Miner Waves 1-4. Every local ledger (claim-ledger, event-ledger, governor-ledger, attempt-log, prediction-ledger) is deliberately insert-only — zero DELETE FROM anywhere in any of them — and none of their CLI wrappers expose a way to purge a specific repo's or miner-login's rows. There's no operator-facing way to fully remove a repo's or a contributor's local history (e.g. after offboarding, a mistaken target, or a privacy request).
Area: AMS / Miner (local stores)
Proposal: Add a gittensory-miner purge --repo <owner/repo> [--miner-login <login>] [--dry-run] [--json] command that deletes every row referencing the given repo (optionally scoped further to a miner login) across claim-ledger, event-ledger, governor-ledger, attempt-log, and prediction-ledger.
Deliverables:
Acceptance criteria:
Problem: Found during a third-pass gap audit across Miner Waves 1-4. Every local ledger (claim-ledger, event-ledger, governor-ledger, attempt-log, prediction-ledger) is deliberately insert-only — zero
DELETE FROManywhere in any of them — and none of their CLI wrappers expose a way to purge a specific repo's or miner-login's rows. There's no operator-facing way to fully remove a repo's or a contributor's local history (e.g. after offboarding, a mistaken target, or a privacy request).Area: AMS / Miner (local stores)
Proposal: Add a
gittensory-miner purge --repo <owner/repo> [--miner-login <login>] [--dry-run] [--json]command that deletes every row referencing the given repo (optionally scoped further to a miner login) across claim-ledger, event-ledger, governor-ledger, attempt-log, and prediction-ledger.Deliverables:
purgecommand deleting matching rows from all five ledgers.--dry-runsupport (matching the existing pattern from Add a--dry-run/ simulate mode across the miner CLI #4847) reporting row counts per store before any delete.Acceptance criteria:
--dry-runmakes zero writes and reports what would be deleted.