Skip to content

[TS] Preserve Promise executor closures and settlement arguments - #622

Open
CaelmBleidd wants to merge 1 commit into
caelmbleidd/ts-safe-value-materializationfrom
caelmbleidd/ts-promise-settlement-arguments
Open

CaelmBleidd wants to merge 1 commit into
caelmbleidd/ts-safe-value-materializationfrom
caelmbleidd/ts-promise-settlement-arguments

Conversation

@CaelmBleidd

Copy link
Copy Markdown
Member

Promise construction currently drops the materialized executor closure/receiver. Settlement requires exactly one argument, rejecting valid omitted values and ignoring extra-argument evaluation. Preserve the executor environment, use undefined for a missing settlement value, and evaluate extra arguments before ignoring them. First settlement still wins.

Relevant regression coverage: 9 source-level Promise regressions.

Combined-stack validation at c46aa3f8b: 65 TS regressions and 22 Calls tests passed; TS and Calls Detekt main/test passed. These checks ran under the exclusive local build lock. This PR head has its own CI; the combined-stack check is not a standalone-head CI claim.

Stack: targets caelmbleidd/ts-safe-value-materialization; the diff contains only this layer. Merge/rebase prerequisites first, then move this own range onto current main. Frozen experiment artifacts and runtime files are unchanged.

@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/ts-promise-settlement-arguments branch from 8c8eeac to d8b0052 Compare October 20, 2026 09:41
@CaelmBleidd
CaelmBleidd force-pushed the caelmbleidd/ts-promise-settlement-arguments branch from d8b0052 to 0ab6234 Compare October 20, 2026 09:52
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