Skip to content

Clarify parity disposition and authority refresh flow - #2511

Merged
ryanbr merged 1 commit into
ryanbr:mainfrom
kavemang:fix/parity-disposition-guidance-2163
Sep 27, 2026
Merged

ryanbr merged 1 commit into
ryanbr:mainfrom
kavemang:fix/parity-disposition-guidance-2163

Conversation

@kavemang

Copy link
Copy Markdown

Summary

  • Explain that the ledger's pipe-separated add-unpaired-function finding is a diagnostic from an old twin map, not an identity accepted by the typed disposition registry.
  • Point contributors at the guarded derived-snapshot refresh after choosing a twin or an exact disposition, and make the ledger output give that next step.

Refs #2163

Verification

  • Focused ledger drift and platform-specific disposition tests passed.
  • git diff --check passed.

@ryanbr
ryanbr merged commit 75b0609 into ryanbr:main Sep 27, 2026
4 checks passed
@ryanbr

ryanbr commented Sep 27, 2026

Copy link
Copy Markdown
Owner

Merged as 75b0609.

Worth saying why this one is more than a wording change, @kavemang: the old message misled me four separate times today. FAIL ... has no reviewed compact-baseline disposition reads as an instruction to write a disposition, which is the wrong remedy for an add-unpaired-* finding, and the pipe-separated identity in the message is not the identity the registry accepts either. Both halves of that trap are now named at the point the scan fails.

On #2486, #2487 and #2496 the remedy that actually worked was the one this documents: repair the source, with declared twin references where two twins genuinely moved together, and only then the guarded --refresh-derived. On the constant-pair case --refresh-derived correctly refused, which is exactly the behaviour the new text tells you to expect rather than to work around. So the guidance is confirmed by four independent encounters, not just plausible.

Pinning the new wording in test_parity_ledger.py is the right call too: a diagnostic that tells you the wrong remedy is a defect, so the words belong under test like any other behaviour. 182 tests pass on a clean pick onto main.

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.

2 participants