Repository navigation
docs: amend R21 so a chain-integrity field belongs in the signed payload - #108
Merged
Merged
Conversation
Slice 026 put a hybrid logical clock in the signed payload. R21 as written sends anything platform-set to unsigned meta, and a clock is platform-set, so the code contradicted the rule and no amendment had been made. Nothing in the tree enforced R21 either: the nearest thing is a key-set assertion in chain_writer_test.exs commented "the R21 default set", and slice 026 edited that line to add the clock, so the one artifact that could have surfaced the conflict was changed to accommodate it. The owner read R21 and ChainWriter.build_row/5 side by side and ruled that the clock stays. The rule is amended rather than the code, in the owner's words, appended as a third R21 row and dated: Chain-integrity fields generated by this node (seq, prev_hash, clock) are commitments. They stay in the signed payload so a merge cannot be reordered by rewriting unsigned meta. "Platform-set" in the original sentence means revisable transport and operator annotations, not the values that make two chains one. Appended, not rewritten: the 2026-09-24 row stands unchanged above it, so the record still shows what the rule said before. Nothing under lib/ changed. Signed-off-by: Ayla Croft <aylacroft@proton.me>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Slice 026 put a hybrid logical clock in the signed payload. R21 as written sends anything platform-set to unsigned
meta, and a clock is platform-set, so the code contradicted the rule and no amendment had been made.Nothing in the tree enforced R21 either. The nearest thing is a key-set assertion in
chain_writer_test.exscommented "the R21 default set", and slice 026 edited that line to addclock— so the one artifact that could have surfaced the conflict was changed to accommodate it.The ruling
The owner read R21 and
ChainWriter.build_row/5side by side and ruled that the clock stays. The rule is amended, not the code. Appended as a third R21 row, dated, in the owner's words:Appended, not rewritten. The 2026-09-24 row stands unchanged above it, so the record still shows what the rule said before and that it changed.
trinity-private/slices/026-store-and-forward-receipts/NOTES.mdnow points at this amendment and marks the tension it recorded as closed.Nothing under
lib/changed. Docs only.