You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
PY-PORT: git_patch_id.py -> aprender-ci-tools git-patch-id (child of #4741) #4800
Port scripts/lib/git_patch_id.py (a byte-exact git patch-id --stable|--verbatim|--unstable for gits older than 2.40) into crates/aprender-ci-tools as the git-patch-id subcommand.
Done when:
the subcommand prints byte-identical output to the .py over a shared case table (whitespace, CRLF, binary hunks, \ No newline, several patches with commit/From oids, an empty input, and a bad mode, which both sides refuse);
it equals the golden ids already pinned in scripts/lib/pr_review_patch_id.sh self-test, and the native git patch-id where that git has the mode;
callers keep the .py for now (gate tools use already-released features); switching callers is a later child.
Folded into #4741 as a checklist row (TRIAGE-100, 2026-10-14): the open-ticket cap is 100, so this ticket is now tracked on that master and closed as not planned. Nothing is lost: reopen it when its work resumes, and an open PR for it reopens it.
Activity
noahgift commentedon Oct 14, 2026
Folded into #4741 as a checklist row (TRIAGE-100, 2026-10-14): the open-ticket cap is 100, so this ticket is now tracked on that master and closed as not planned. Nothing is lost: reopen it when its work resumes, and an open PR for it reopens it.
Agent: aprender-clerk