Batch immutable ancestry reads for historical merge reconciliation #785

Open
toasterson wants to merge 2 commits from fix/external-merge-batch-20261007 into main
Owner

Older merged work could remain open because external-merge verification fetched one commit at a time and exceeded its 30-second deadline. Fetch bounded parent-graph batches and search connected cached paths before expanding side histories, while retaining positive parent-edge proof, exact identities, graph limits, conflict detection, and all existing lifecycle guards.

WI-917: https://anima.wegmueller.it/work-items/01a11508-dd10-7f12-b469-f69db7d9892a
Field case: Akh-Medu WI-305 / PR339. A read-only probe of the revised algorithm proved both ancestry paths in 7 requests / 5.013 seconds; this is not a deployed-server acceptance result.

Validation: 6 ancestry regression tests and 8 actual PostgreSQL lifecycle tests passed; strict Clippy passed for both affected libraries and the integration target. Covers deep history, cached alternate-parent proof, malformed/oversized/conflicting responses, unrelated commits, graph bounds, retained ownership, acceptance locking, idempotency, and unchanged audit/gate evidence.

Native review and CI remain required before merge. No deployment is included.

Older merged work could remain open because external-merge verification fetched one commit at a time and exceeded its 30-second deadline. Fetch bounded parent-graph batches and search connected cached paths before expanding side histories, while retaining positive parent-edge proof, exact identities, graph limits, conflict detection, and all existing lifecycle guards. WI-917: https://anima.wegmueller.it/work-items/01a11508-dd10-7f12-b469-f69db7d9892a Field case: Akh-Medu WI-305 / PR339. A read-only probe of the revised algorithm proved both ancestry paths in 7 requests / 5.013 seconds; this is not a deployed-server acceptance result. Validation: 6 ancestry regression tests and 8 actual PostgreSQL lifecycle tests passed; strict Clippy passed for both affected libraries and the integration target. Covers deep history, cached alternate-parent proof, malformed/oversized/conflicting responses, unrelated commits, graph bounds, retained ownership, acceptance locking, idempotency, and unchanged audit/gate evidence. Native review and CI remain required before merge. No deployment is included.
Some checks failed
CI / conflict-check (push) Failing after 19m23s
CI / test (push) Failing after 1h15m55s
This pull request can be merged automatically.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin fix/external-merge-batch-20261007:fix/external-merge-batch-20261007
git switch fix/external-merge-batch-20261007

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff fix/external-merge-batch-20261007
git switch fix/external-merge-batch-20261007
git rebase main
git switch main
git merge --ff-only fix/external-merge-batch-20261007
git switch fix/external-merge-batch-20261007
git rebase main
git switch main
git merge --no-ff fix/external-merge-batch-20261007
git switch main
git merge --squash fix/external-merge-batch-20261007
git switch main
git merge --ff-only fix/external-merge-batch-20261007
git switch main
git merge fix/external-merge-batch-20261007
git push origin main
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
toasterson/Anima!785
No description provided.