---
# System prepended metadata

title: 109th Meeting of TC39

---

# 109^th^ Meeting of TC39

- Agenda: https://github.com/tc39/agendas/blob/main/2025/07.md
- Reflector: https://github.com/tc39/Reflector/issues/565  (has notes and TCQ)

## Agenda key

When applicable, use these emoji as a prefix to the agenda item topic.

| Emoji | Meaning                                                              |
| :---: | :---                                                                 |
|  ❄️   | hard schedule constraints apply to this agenda item (e.g. presenter) |
|  🔒   | schedule constraints apply to this agenda item                       |
|  ⌛️   | late addition for stage advancement and/or schedule prioritization   |
|  🔁   | continuation of a previous agenda item                               |

## Day 1

<details>

<summary>10:00 to 15:00 America/Los_Angeles on Monday</summary>

### 10:00-12:00 (5m overflow)

- Opening & Welcome (15m, Rob Palmer)
  - Opening of the meeting
  - TC39 follows its Code of Conduct
<!--   - Introduction of attendees -->
<!--   - Host facilities, local logistics -->
  - Overview of communication tools
  - Quick recap of meeting IPR policy
  - Reminder to review GitHub Delegate teams (Jordan Harband)
  - <details>
        <summary>Note about meeting transcriptions</summary>
        A detailed transcript of the meeting is being prepared and will be eventually posted on GitHub. You may edit this at any time during the meeting in Google Docs for accuracy, including deleting comments which you do not wish to appear. You may also request corrections or deletions after the fact, by editing the Google Doc (in the first two weeks after the TC39 meeting) or subsequently making a PR in the notes repository or contacting the TC39 chairs.
    </details>
  - 🗒️ Call for note-takers
  - Adoption of the agenda
    - Presenters: please be on the lookout for messages from chairs; we may need to move topics forward if time frees up.
  - Approval of the minutes from last meeting
  - Next meeting host and logistics
- Secretary's Report ([slides](TBD)) (15m, Samina Husain)
- Project Editors’ Reports
  - [ECMA262](https://github.com/tc39/ecma262) Status Updates (5m, Kevin Gibbons)
  - [ECMA402](https://github.com/tc39/ecma402) Status Updates (5m, Ujjwal Sharma)
  - [ECMA404](https://www.ecma-international.org/publications/standards/Ecma-404.htm) Status Updates (1m, Chip Morningstar)
  - [Test262](https://github.com/tc39/test262) Status Updates (5m, Richard Gibson)
- Task Group Reports
  - TG3: Security (1m, Chris de Almeida)
  - TG4: Source Maps (5m, Nicolò Ribaudo)
  - TG5: Experiments in Programming Language Standardization (5m, Mikhail Barash)
- Updates from the [CoC Committee](https://tc39.es/code-of-conduct/#code-of-conduct-committee) (1m, Chris de Almeida)
- Preparing Summary and Conclusions ([slides](https://github.com/tc39/agendas/blob/main/2025/tc39-2025-030.pdf)) (Samina Husain & Aki Rose Braun, 30m)
- F.p.toString incompat for builtin accessors (https://github.com/tc39/ecma262/issues/3652) (Keith Miller, 20m)
- Spec/implementations divergence on module evaluation promises settlement order ([tc39/ecma262/#3589](https://github.com/tc39/ecma262/issues/3589), [slides](https://docs.google.com/presentation/d/1g3JGIazNuA1Tuk35t_M4qxJD8ajNsYiTcWpTrXQnEns)) (Nicolò Ribaudo, 20m)
- TypedArray `copyWithin` inconsistently responds to midstream shrinking (https://github.com/tc39/ecma262/pull/3619) (Richard Gibson, 20m)

### Lunch (60 minutes)

### 13:00-15:00 (full)

- Missing name property for `%IntlSegmentsPrototype%[%Symbol.iterator%]` ([tc39/ecma402#1015](https://github.com/tc39/ecma402/pull/1015), [slides](https://notes.igalia.com/p/Nouz41CnU#/)) (Ujjwal Sharma, 10m)
- Freezing the Array Iterator ([slides](https://docs.google.com/presentation/d/1SHqRJDEujG3OVOxs9c3CEnXpHdkzyVrz9qUFyaXrQWA/)) (Kevin Gibbons, 30m)
- Proposed code of conduct addition: "write your own comments" ([issue](https://github.com/tc39/code-of-conduct/issues/62) / [slides](https://docs.google.com/presentation/d/1bGwg5fEYa_q65-o-qr8nbSZs5FuDHEeawTf_xGVwk4w/)) (Kevin Gibbons, 30m)
- [Math.sumPrecise](https://github.com/tc39/proposal-math-sum/) for Stage 4 ([spec PR](https://github.com/tc39/ecma262/pull/3654)) (Kevin Gibbons, 5m)
- [Temporal](https://github.com/tc39/proposal-temporal) normative PR ([slides](https://docs.google.com/presentation/d/1xaHux5EvR9zXQWnnr0r76ffCdDejmy383XrkrmSPStk/edit?slide=id.p#slide=id.p)) (Nicolò Ribaudo, 20m)
- 🔒 [Uint8Array base64+hex](https://github.com/tc39/proposal-arraybuffer-base64) for Stage 4 ([spec PR](https://github.com/tc39/ecma262/pull/3655)) (Kevin Gibbons, 5m)
- [Iterator Sequencing](https://github.com/tc39/proposal-iterator-sequencing) for Stage 3 ([slides](https://docs.google.com/presentation/d/12zBgwq7qSpf-GXySU0q6t46vTdYAyFxaKW26J8D5IiE)) (Michael Ficarra, 15m)
- [Upsert](https://github.com/tc39/proposal-upsert) for Stage 3 ([slides](https://docs.google.com/presentation/d/15J_tgYqrh-aPat0klS78BcDVGYJ88HOCC_SBsYkR4QY/)) (Daniel Minor, 15m)
- [AsyncContext](https://github.com/tc39/proposal-async-context/) web integration update ([slides](https://docs.google.com/presentation/d/1d64udRyuYplXajTCMQkGrVh2jff464_7D75dZ6pSxiE/edit?usp=sharing)) (Andreu Botella, 5m)

</details>

## Day 2

<details>

<summary>10:00 to 15:00 America/Los_Angeles on Tuesday</summary>

### 10:00-12:00 (full)
    
- ❄️ *How* to make thenables safer? [(in-progress-slides)](https://docs.google.com/presentation/d/1_RCnI7dzyA1COgi_Ib7GkmHioV1nVSEMmZvy0bvJ8Kk/edit?usp=sharing) (Matthew Gaudet (Mozilla), 30m)
- [Error.captureStackTrace](https://github.com/tc39/proposal-error-capturestacktrace) for Stage 2 ([slides](https://docs.google.com/presentation/d/1RGNDcJee_6N2II0SeGyMVglvjhJbuqDX02LLzBqyCWI/)) (Daniel Minor, 30m)
- ❄️ [Non-extensible Applies to Private](https://github.com/tc39/proposal-nonextensible-applies-to-private) status update ([slides.key](https://github.com/tc39/proposal-nonextensible-applies-to-private/blob/main/no-stamping-talks/non-extensible-applies-to-private-update.key), [slides.pdf](https://github.com/tc39/proposal-nonextensible-applies-to-private/blob/main/no-stamping-talks/non-extensible-applies-to-private-update.pdf)) (Mark Miller, 30m)
- [Immutable ArrayBuffer](https://github.com/tc39/proposal-immutable-arraybuffer) for stage 3 ([slides](https://docs.google.com/presentation/d/18JnyoJsovfw7Y_HGa0cZOOUCHY2MTO4_M72zKj7PUWo/edit?usp=sharing)) (Richard Gibson, Peter Hoddie, 30m)

### Lunch (60 minutes)

### 13:00-15:00 (full)

- [Iterator Chunking](https://github.com/tc39/proposal-iterator-chunking) for Stage 2.7 ([slides](https://docs.google.com/presentation/d/17qDtY-2Qawt7SeKoY7Rezea-A_hAuwhx2QHJ9MCZ7as)) (Michael Ficarra, 30m)
- ❄️ [Keep trailing zeros in Intl.NumberFormat and Intl.PluralRules](https://github.com/tc39/proposal-intl-keep-trailing-zeros) for Stage 2 or 2.7 ([slides](https://docs.google.com/presentation/d/1hKJFrDfiGeqPWm51fQFQb4M4CeYm3ultB7Opef1BVuE/edit?usp=sharing)) (Eemeli Aro, 30m)
- ❄️ [~~Measure~~Amount](https://github.com/tc39/proposal-measure) for Stage 2 ([slides](https://docs.google.com/presentation/d/1my6X1ODDckzJmtcWcFI9hRF_I06Z4RQwrq81lbo8wPM/edit?usp=sharing)) (Eemeli Aro/Jesse Alama, 60m)

</details>

## Day 3

<details>

<summary>10:00 to 15:00 America/Los_Angeles on Wednesday</summary>

### 10:00-12:00 (15m overflow)

- [Intl Era and Month Code](https://github.com/tc39/proposal-intl-era-monthcode) for Stage 2.7 ([slides](https://docs.google.com/presentation/d/1dAbacNvhPL_iUJKZNPDbQVyfg8a6-OHUuh2OiftMu1A/edit?slide=id.p#slide=id.p)) (Ujjwal Sharma, 45m)
- [Module Import Hook](https://github.com/endojs/proposal-import-hook) and [new Global](https://github.com/endojs/proposal-new-global) for Stage 1 ([slides](https://github.com/endojs/proposal-new-global/tree/main/slides)) (Zbyszek Tenerowicz, Kris Kowal, 60m)
- [Import Buffer](https://github.com/styfle/proposal-import-buffer) for Stage 1 ([slides](https://proposal-import-buffer.vercel.app)) (Steven Salat, 30m)

### Lunch (60 minutes)

### 13:00-15:00 ()

- 🔁 Continuation: How to make thenables safer? (Matthew Gaudet, 30m)
- 🔁 Continuation: Keep trailing zeros in Intl.NumberFormat and Intl.PluralRules for Stage 2.7 (Eemeli Aro, 15m)
- 🔁 Continuation: [Module Import Hook](https://github.com/endojs/proposal-import-hook) and [new Global](https://github.com/endojs/proposal-new-global) for Stage 1 ([slides](https://github.com/endojs/proposal-new-global/tree/main/slides)) (Zbyszek Tenerowicz, Kris Kowal, 30m)
- 🔁 Continuation: Non-extensible Applies to Private (Olivier Flückiger, 15m)
- 🔁 Continuation: [~~Measure~~Amount](https://github.com/tc39/proposal-measure) for Stage 2 ([slides](https://docs.google.com/presentation/d/1my6X1ODDckzJmtcWcFI9hRF_I06Z4RQwrq81lbo8wPM/edit?usp=sharing)) (Eemeli Aro/Jesse Alama, 20m)
- Revisiting limits on Intl Mathematical Value (re: amount) (Shane F. Carr, 20m)

</details>

## Day 4

<details open>

<summary>10:00 to 15:00 America/Los_Angeles on Thursday</summary>

### 10:00-12:00 (full)
    
- ❄️ [Object.propertyCount](https://github.com/tc39/proposal-object-property-count) for Stage 2 (slides TBD) (Ruben Bridgewater, 30m)
- ❄️ [Array.isSparse](https://github.com/BridgeAR/isSparse) for Stage 1 (slides TBD) (Ruben Bridgewater, 30m)
- ❄️ [Array.getNonIndexStringProperties](https://github.com/BridgeAR/array-get-non-index-string-properties) for Stage 1 (slides TBD) (Ruben Bridgewater, 30m)
- ❄️ [Object.getOwnPropertySymbols options](https://github.com/BridgeAR/object-get-own-property-symbols-options) for Stage 1 (slides TBD) (Ruben Bridgewater, 30m)

### Lunch (60 minutes)

### 13:00-15:00

</details>

***

## Overflow

### From agenda

### Timebox overrun

## Schedule constraints

- Eemeli will be available on Day 1 from 11:30 onwards, and will not be available on Day 4.
  He would prefer to present on keep-trailing-zeros before the Measure/Amount presentation.
- Ruben will be able to attend one day only. It is not important which one.
  He would prefer to present all four proposals in one go, especially, since they are all somewhat related to each other.
- KG would like the base64 item scheduled after the Temporal normative PR item (not necessarily immediately after).
- The presentations for New Global and Import Hooks are in fact one presentation and should be scheduled together.
- Matthew Gaudet will have intermittent availability Monday due to life things, and so can't present '*How* to make thenables safer?' that day.
- Mark Miller will not be ready to present [Non-extensible Applies to Private](https://github.com/tc39/proposal-nonextensible-applies-to-private) on Monday. Any other day is fine.

<style>summary { font-weight: bold; }</style>