Skip to content

Check acknowledged metadata in terminal Jepsen views - #17

Merged
jeregrine merged 1 commit into
mainfrom
fix-jepsen-terminal-metadata
Sep 15, 2026
Merged

jeregrine merged 1 commit into
mainfrom
fix-jepsen-terminal-metadata

Conversation

@jeregrine

Copy link
Copy Markdown
Member

Problem

Terminal snapshots reduced registry and process-group entries to owner tokens. A receiver could retain revision 1 after its owner acknowledged revision 2 and still match the independent model, even when every internal index agreed with the stale value.

Fix

Carry the full public metadata map through snapshot EDN and construct the expected registry and PG values from each owner's acknowledged revision. Compare metadata exactly while retaining incarnation-scoped tokens for lifecycle and orphan detection.

Executable capture qualification repeatedly updates real owners, injects stale, missing, wrong-type, wrong-owner and extra metadata into consistent materialized indexes, and feeds actual captured EDN to the independent checker. The capture qualification is part of the normal Mix gate and remains separate from the Java-only pure checker.

Supporting information

This changes the terminal evidence schema: public values are metadata maps instead of token strings. Token-only historical captures cannot qualify as exact metadata evidence. Owner identity remains scoped by node, boot, logical owner and incarnation; raw PIDs are not exported.

@jeregrine
jeregrine merged commit 5a3ab53 into main Sep 15, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant