Repository navigation
coro: retain evaluated receiver inputs through resource delivery - #295
Merged
Merged
Conversation
…sult-state-20261018
cpunion
marked this pull request as ready for review
October 17, 2026 18:30
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.
Pointer-to-value method wrappers evaluate a receiver before resource acquisition. Their cleanup must retain those evaluated inputs when the original pointee changes while a child is pending.
The compiler retains the terminal cleanup arguments in an immutable typed allocation owned by the protected result storage. Exact forwarding chains share the binding. Caller acceptance clears it; cancellation retains it through the existing cleanup drainer's helper completion. Public result tuples, funcval, G/P and scheduler operations keep their ABI.
Library schema v22, guard ABI v5 and delivery tail v3 bind the state requirement. The real retained v21 archive is accepted by its old reader and rejected by the new reader. Reflection/FFI result handoff still rejects resource capability pending its separate implementation.
Validation on exact frozen head
6965ad3e4d5f022063683e86cd75ee2452689a6b:Exact-head CI run
39054986576passes 19/19. The JS/WASM lane first stopped during Go dependency download with a TLS handshake timeout; the same-head job retry passes. Fresh paginated reviews, inline/issue comments and review threads are empty. Implementation-specific merge gates are satisfied; full compatibility remains a separate, incomplete campaign.