ref:main

Add reflog support #5

open Opened by cole.christensen@gmail.com

Links

No links yet.

Problem

No reflog exists. When a ref is updated (branch move, force-push, HEAD change), the previous value is lost. There is no operation history to inspect or recover from.

Impact

  • Cannot recover from accidental ref updates
  • No audit trail for ref changes
  • git reflog equivalent unavailable for debugging

Acceptance Criteria

  • Ref updates automatically append to a per-ref log
  • Reflog entries include: old SHA, new SHA, actor, timestamp, message
  • API to read reflog entries (with pagination)
  • API to expire old reflog entries
  • Storage behaviour extended for reflog operations
  • Works across filesystem and memory backends (S3 optional/best-effort)