Context
In 2026, Node 24 is the Long Term Support (LTS) version, and modern GitHub Actions environments support it by default. As a result, the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 environment variable is now obsolete. Furthermore, actions/github-script has reached version 9, which defaults to Node 24 and utilizes an ESM-only environment.
The Problem
The current CI workflows contain legacy overrides (FORCE_JAVASCRIPT_ACTIONS_TO_NODE24) that are no longer necessary and create visual noise. Additionally, several workflows are still using actions/github-script@v8. Keeping these outdated configurations leads to accumulation of technical debt in our CI pipeline.
The Architectural Reality
- The obsolete environment variable is present across 8 workflow files (
data-sync-pipeline.yml, agent-pr-body-lint.yml, close-inactive-issues.yml, prevent-reopen.yml, test.yml, npm-publish.yml, codeql-analysis.yml, pr-base-guard.yml).
actions/github-script@v8 is used in several workflow files (agent-pr-body-lint.yml, prevent-reopen.yml, pr-base-guard.yml).
- Version 9 of
actions/github-script introduces breaking changes as it is ESM-only, meaning previous require calls or manual getOctokit redeclarations might fail.
The Fix
- Strip
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true from all GitHub workflows in .github/workflows/.
- Upgrade
actions/github-script@v8 to actions/github-script@v9 across the CI pipeline.
- Inspect script blocks within updated actions to ensure compatibility with ESM (removing deprecated CommonJS patterns if they exist).
Acceptance Criteria
Out of Scope
- Major logic refactoring of existing GitHub action scripts, unless required to make them compatible with ESM.
Origin Session ID: fc8abc96-ce88-407e-9d92-7fcc494f8236
Context
In 2026, Node 24 is the Long Term Support (LTS) version, and modern GitHub Actions environments support it by default. As a result, the
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24environment variable is now obsolete. Furthermore,actions/github-scripthas reached version 9, which defaults to Node 24 and utilizes an ESM-only environment.The Problem
The current CI workflows contain legacy overrides (
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24) that are no longer necessary and create visual noise. Additionally, several workflows are still usingactions/github-script@v8. Keeping these outdated configurations leads to accumulation of technical debt in our CI pipeline.The Architectural Reality
data-sync-pipeline.yml,agent-pr-body-lint.yml,close-inactive-issues.yml,prevent-reopen.yml,test.yml,npm-publish.yml,codeql-analysis.yml,pr-base-guard.yml).actions/github-script@v8is used in several workflow files (agent-pr-body-lint.yml,prevent-reopen.yml,pr-base-guard.yml).actions/github-scriptintroduces breaking changes as it is ESM-only, meaning previousrequirecalls or manualgetOctokitredeclarations might fail.The Fix
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: truefrom all GitHub workflows in.github/workflows/.actions/github-script@v8toactions/github-script@v9across the CI pipeline.Acceptance Criteria
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24is removed from all workflows.actions/github-scriptis upgraded tov9inagent-pr-body-lint.yml,prevent-reopen.yml, andpr-base-guard.yml.v9execute successfully under the new ESM runtime.Out of Scope
Origin Session ID: fc8abc96-ce88-407e-9d92-7fcc494f8236