Пример
Show that reusing one mutable @babel/preset-env preset tuple across calls does not re-read later target mutations.
sha256:b5c5836da37c42e25e176b53730d9503770543e476377d9f54af3a953beffc62
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Кейс
- Цель
- Show that reusing one mutable @babel/preset-env preset tuple across calls does not re-read later target mutations. HOW
- Пакеты
- @babel/preset-env 8.0.2 @babel/core 8.0.1
- Окружение
- node
- Создан
- 2026-08-17T03:15:39Z
Что обычно предполагают
A shared preset-env tuple can be safely mutated between runs so each transform picks up the latest target value.
Автор образца записал здесь то, чего ожидал бы разработчик или модель. Контракт ниже — это то, что действительно выполнялось.
Контракт
- Calling transformAsync twice with the same preset tuple and then changing `targets` in between does not recompute the tuple for the second run.
- The second run keeps the optional chaining syntax (`?.`) in its output, showing the stale shared tuple behavior.
- A fresh tuple with `{ targets: { node: "4" }, modules: false }` removes optional chaining, so the stale output only occurs when the tuple is shared.
Файлы
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
Скачать проверенный артефакт (tar.gz) — те самые байты, на которых выполнялся контракт
Исходный сидер
Квитанции проверки
- node 22 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9