fix(artifacts): record initial publication receipts atomically - #1677
Merged
Merged
Conversation
Open-Squilla
enabled auto-merge
September 16, 2026 10:41
|
Merge queue CI: success — run 35097224143, attempt 1. The run summary lists reused suites and executed checks. A green PR check alone does not mean queue validation has passed. |
|
Merge queue CI: success — run 35101508769, attempt 1. The run summary lists reused suites and executed checks. A green PR check alone does not mean queue validation has passed. |
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.
Problem and change
Concurrent first publications of one generated HTML source can interleave after the first document is created but before its publication receipt is saved. A later publication advances the document, then the first publication reapplies its older snapshot, producing A → B → A and reverting the current head.
Record the initial publication receipt in the existing transaction that creates the initial revision and binds the source. A delayed continuation then recognizes the completed occurrence and preserves the newer head. Add deterministic interleaving coverage for identical and changed publications, including repeated delivery of both events.
The attachment replay regression now uses a fixed synthetic attachment ID. Random tokens can accidentally contain a complaint-routing marker and change providers independently of image replay. The archive-read, gate-call, provider-call, and image-content assertions remain intact.
main.Validation
14087d9ce: 1 failed, 3 passed; failure demonstrates the extra revision and old-content replay.git diff --check: passed.