Read the shapes the user's own repositories are actually in #105
Loading…
Reference in a new issue
No description provided.
Delete branch "worktree-agent-a19a2c32f2479908a"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The strip cleared its removals against one clone and the five server repositories; the user's other clones in ~/code/rad were never opened. This re-audits every event.json in every collab ref of every repository there — 534 events, 5 repositories with collab refs — and restores exactly what that data holds.
The audit: eitri holds 17 patch.create with no commit/tree, 21 patch.review with no revision, 1 patch.revise and 17 patch.merge with no commit; waystty holds 22, 12, 0 and 6 of the same plus 11 bare patches/ refs; mux, nono and claudealong are clean. That is 100% of the patches in both, and it is why eitri printed 17 warnings and 'No patches found.' The failing field was patch.create, not patch.merge — 'missing field commit at line 14 column 3' is the closing brace of its action object.
Restored, each because data someone holds is in that shape and no migration can invent what was never recorded: PatchCreate/PatchRevision commit and tree default to empty and skip when empty (the argument Revision.base was already kept on); PatchReview.revision as Option — the field, not the DAG-position attribution, which issue
33b5e541is about and which stays gone, with None as its own bucket in vote supersession; patch.revise as its own variant rather than a serde alias, because an alias re-serializes under the new name and verification compares re-serialized bytes, so it would read the patch locally and have sync reject it as unsigned; and the bare patches/ layout, read and left alone, with sync reconciling into whichever ref is already there and a clone with no copy taking the remote's layout rather than migrating it inbound — otherwise it could read a project and never push to it.Left stripped, zero occurrences in the audit: the PatchCreate variant name, the head_commit alias, singular-string relates_to, PatchState.labels serde(default), resolve_head's refs/heads/ fallback, the ref layout migration and git-collab-server migrate, and the /r/ numbering — a revision ref rather than a DAG, so reading it would yield nothing to read.
Two messages rewritten, both of which offered a remedy that cannot be followed when every copy is old. The layout error no longer says to fetch a newer copy; it says the shape predates the current naming, that fixing it is local, and prints the git update-ref that does it. resolve_head now distinguishes 'recorded and not here' from 'never recorded', and says the rest of the patch reads normally.
Verified in the repository that reported this: eitri lists all 17 patches with no warnings and syncs both remotes clean — 17 reconciled, 17 pushed — with its refs byte-identical before and after. waystty's 11 bare refs read too. Full suite green, clippy silent, tui_review_test 23/23 on two consecutive runs.
Migrated from git-collab patche
2cb9ca9638792d3e842a457fcb616df001ab1758.Original author: a73x dev@a73x.sh.
Fixes #104
Revision 1:
9cfb8ccf74987d25e415015b1ce48476c7ff6315; base8bbdad3e73547570048f78f0ace837f3278a2253