fix(ci): fallback to setup-node v3 (v5 broken on act, v4 lstat bug) #24

Merged
slaid098 merged 1 commit from fix/setup-node-v3 into main 2026-08-07 18:37:33 +03:00
Owner

Что сделано

Понижение actions/setup-node@v5@v3 в обоих workflow (ci.yml + deploy.yml).

Изменение

# Было (PR #23):
- uses: actions/setup-node@v5
# Стало:
- uses: actions/setup-node@v3

Почему

История блокера:

  • v4 (PR #16, #18, #21): lstat eslint.config.mjs: no such file or directory — act-эмуляция v4 ищет eslint.config.mjs для problem matchers при cache-miss в tool cache. Баг не связан с cache опцией (cache убран в PR #21, lstat всё равно вызывается).
  • v5 (PR #23): Cannot find module .../dist/setup/index.js — v5 имеет другую структуру dist/, act не находит compiled action. deploy.yml работал (Found in cache @ /opt/hostedtoolcache — случайно разогрет), ci.yml упал.
  • v3: стабильная версия, широко используется, не имеет problem matchers бага (другая архитектура) и dist/ бага. Поддерживает node-version: 22.

Итог по версиям на act runner:

Version ci.yml push deploy.yml push Причина
v4 success (nondeterministic) failure lstat eslint.config.mjs при cache-miss
v5 failure success (nondeterministic) Cannot find module dist/setup/index.js
v3 ? (тест) ? (тест) ожидается success

Watch out

  • CI на этом PR: pull_request триггерит ci.yml с setup-node@v3. Если v3 работает — success. deploy.yml проверится на push после merge.
  • v3 node 22: v3 поддерживает node 22 (вышел в 2024, v3 обновляется). Если node-version: 22 не найден в tool cache — v3 скачает (без lstat бага).
  • Если v3 тоже падает: self-hosted runner (инфра-решение, отдельная задача).

Pending

  • Проверить после merge: push на main → ci.yml + deploy.yml success. Сайт обновлён.
  • Обновить memory: v4/v5 нестабильны на act, v3 — рабочий fallback.

Closes #22

## Что сделано Понижение `actions/setup-node@v5` → `@v3` в обоих workflow (ci.yml + deploy.yml). ### Изменение ```yaml # Было (PR #23): - uses: actions/setup-node@v5 # Стало: - uses: actions/setup-node@v3 ``` ## Почему **История блокера:** - **v4** (PR #16, #18, #21): `lstat eslint.config.mjs: no such file or directory` — act-эмуляция v4 ищет `eslint.config.mjs` для problem matchers при cache-miss в tool cache. Баг не связан с `cache` опцией (cache убран в PR #21, lstat всё равно вызывается). - **v5** (PR #23): `Cannot find module .../dist/setup/index.js` — v5 имеет другую структуру `dist/`, act не находит compiled action. deploy.yml работал (Found in cache @ /opt/hostedtoolcache — случайно разогрет), ci.yml упал. - **v3**: стабильная версия, широко используется, не имеет problem matchers бага (другая архитектура) и dist/ бага. Поддерживает `node-version: 22`. **Итог по версиям на act runner:** | Version | ci.yml push | deploy.yml push | Причина | |---|---|---|---| | v4 | success (nondeterministic) | failure | lstat eslint.config.mjs при cache-miss | | v5 | failure | success (nondeterministic) | Cannot find module dist/setup/index.js | | v3 | ? (тест) | ? (тест) | ожидается success | ## Watch out - **CI на этом PR**: pull_request триггерит ci.yml с `setup-node@v3`. Если v3 работает — success. deploy.yml проверится на push после merge. - **v3 node 22**: v3 поддерживает node 22 (вышел в 2024, v3 обновляется). Если `node-version: 22` не найден в tool cache — v3 скачает (без lstat бага). - **Если v3 тоже падает**: self-hosted runner (инфра-решение, отдельная задача). ## Pending - Проверить после merge: push на main → ci.yml + deploy.yml success. Сайт обновлён. - Обновить memory: v4/v5 нестабильны на act, v3 — рабочий fallback. Closes #22
fix(ci): fallback to setup-node v3 (v5 broken on act, v4 lstat bug)
All checks were successful
CI / check (pull_request) Successful in 2m13s
1c7f9ac85c
v5: Cannot find module dist/setup/index.js (act не находит compiled action)

v4: lstat eslint.config.mjs (act problem matchers баг при cache-miss)

v3: стабильная, не имеет этих багов, широко используется

блокер: deploy работал на v5 случайно (Found in cache), ci.yml упал

Closes #22
slaid098 deleted branch fix/setup-node-v3 2026-08-07 18:37:33 +03:00
Sign in to join this conversation.
No reviewers
No labels
bug
performance
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
slaid098/slaid098-dev!24
No description provided.