| name | es-x-snapshot-config-update |
| description | Update eslint-plugin-es-x for a newly finalized yearly ECMAScript/ECMA-402 snapshot in its own dedicated PR. Use when preparing a major release that moves the latest snapshot year forward, updates scripts/rules.ts LATEST_ES_YEAR, regenerates no-new-in-esYYYY and restrict-to-esYYYY configs, refreshes generated docs/index files, adds task-specific release notes, and verifies this PR-sized task. |
ES-X Snapshot Config Update
Workflow
Use this in the eslint-plugin-es-x repository when a yearly ECMAScript snapshot has become the latest stable snapshot. Keep this work separate from Node.js support drops and ESLint support drops unless the user explicitly asks for a combined PR.
- Confirm the repo is clean enough to work with
git status --short.
- Inspect
scripts/rules.ts and find LATEST_ES_YEAR.
- Change
LATEST_ES_YEAR to the new stable snapshot year. This is the one manual source edit.
- Run
npm run update.
- Review generated changes:
- New
lib/configs/no-new-in-esYYYY.js and lib/configs/flat/no-new-in-esYYYY.js.
- New
restrict-to-es{YYYY-1} legacy and flat configs.
no-new-in-esnext* should now contain only post-YYYY rules; it may become empty for Intl API.
lib/index.ts should expose the new config keys and types.
docs/configs/index.md, docs/rules/index.md, and affected rule docs should link to the stable config names.
- Add release notes for this snapshot-config PR through
.agents/es-x-changeset/SKILL.md.
- Verify this snapshot-config PR through
.agents/es-x-release-verification/SKILL.md.
Project Notes
Do not hand-edit generated config or docs files unless the generator is wrong. The source of truth is scripts/rules.ts plus rule metadata in lib/rules/*.
The README policy says major releases update configs when new ECMAScript snapshots are available. Proposal-specific configs stop showing the experimental warning once their category is no longer experimental.
When checking the diff, look for ESYYYY rules moving from no-new-in-esnext to no-new-in-esYYYY, and for older restrict-to-* configs extending or merging the new stable year.