Major spec clarifications
Algorithm shorthand and throw semantics — The spec standardized use of throw as shorthand for Return ThrowCompletion(...), updating multiple algorithm steps and examples for consistency.
Module execution flow corrected — ExecuteModule now uses the execution context established by InitializeEnvironment, tightening the module lifecycle wiring.
Comparison and numeric semantics sharpened — IsLessThan was clarified to return undefined whenever operands can’t be coerced to comparable values of the same numeric type, and fixed-size-integer conversions were aligned with ToIntegerOrInfinity. Several related edge cases, including MakeFullYear, were also tightened.
Broader editorial cleanup
Abstract operation types narrowed — Many abstract operation signatures were made more precise, replacing generic values with specific types like function objects, Objects, non-negative integers, finite numbers, and time values.
Placeholder and terminology cleanup — The spec saw a broad pass renaming placeholders and aliases to more descriptive forms, aligning namespace terminology, and removing or rewording a number of notes and conventions that were adding noise.
Tooling and document maintenance — ecmarkup was bumped to 24.1.0, the ES2026 intro summary was added, and several editorial nits were fixed across clauses and examples.
Other misc changes
- Updated the current editors list multiple times throughout the month.
- Marked
JSON.rawJSONas a built-in function. - Removed a few unhelpful notes, fixed small wording/punctuation issues, and updated the PR preview workflow to use
gh-action-mutex.