Skip to content

Долг: мажоры, ждущие upstream — vitest 5, TypeScript 7, Node 26 (+@types/node), @mux/mux-node → @mux/ts #289

Open

Description

@efymd9

Остаток #157 (мажоры из недельной группы Dependabot #150/#218), вынесенный отдельно, чтобы #157 закрылся вместе с @mux/mux-node 15. Всё ниже упирается во внешнее условие — пока его нет, делать нечего; каждый пункт — отдельный PR, когда сигнал загорится.

Проверено 2026-09-25.

1. vitest 5 (+ @vitest/coverage-v8 5, @vitest/browser-playwright 5)

2. TypeScript 7

  • Сейчас: 6.0.3 (последний JS-релиз); последний — 7.0.2.
  • Блокер: TS 7 не экспортирует JS compiler API; typescript-eslint (под eslint-config-next) падает при загрузке. typescript-eslint@8.70.1 объявляет peer typescript >=4.8.4 <6.1.0.
  • Сигнал разблокировки: peer typescript-eslint допускает >=7 (ожидается после стабилизации API в TS 7.1):
    npm view typescript-eslint@latest peerDependencies.typescript
  • Когда загорится: бамп typescript, pnpm lint + pnpm typecheck; снять typescript из ignore; закрыть строку в docs/registry.md («TypeScript stays on 6.0.3»). Мобильный typescript не трогать — он ходит с Expo SDK.

3. Node 26 + @types/node 26 + .nvmrc 26

  • Сейчас: рантайм Vercel — 24.x на обоих проектах (matio, matio-staging, vercel project inspect), .nvmrc = 24 (его читают все workflow), @types/node ^24.13.6 (последний 24.x). @types/node 26 не взят в Долг: мажорные обновления — TypeScript 7, ESLint 10, @types/node 26, @mux/mux-node 15 #157 намеренно: типы описывают рантайм, 26-е типы пустили бы в код API, которых нет на Node 24 в проде.
  • Блокер: Node 26 — ещё «Current»; Active LTS по расписанию nodejs/Release — 2026-10-28. Целевая среда Vercel — LTS.
  • Сигнал разблокировки: Node 26 стал LTS и Vercel предлагает 26.x в настройках проекта (Project Settings → Build and Deployment → Node.js Version).
  • Когда загорится: одним PR и одним окном — переключить Node.js Version на обоих проектах Vercel (действие в панели, владелец/основная сессия), .nvmrc → 26, @types/node → ^26, снять @types/node из ignore; прогнать стенд до релиза.

4. @mux/mux-node → @mux/ts

  • Сейчас: @mux/mux-node 15.3.0 (после Долг: мажорные обновления — TypeScript 7, ESLint 10, @types/node 26, @mux/mux-node 15 #157). С v15 SDK переименован в @mux/ts; @mux/mux-node публикуется тем же артефактом той же версии только для v15 (MIGRATION.md muxinc/mux-ts: «the alias is expected to stop after v15»).
  • Риск: после выхода v16 Dependabot под старым именем ничего не предложит — обновления Mux SDK молча прекратятся.
  • Сигнал разблокировки: первый релиз @mux/ts 16.x (npm view @mux/ts@latest version) — или раньше, по решению владельца (это смена имени пакета в package.json, формально «новая зависимость»).
  • Когда загорится: @mux/mux-node → @mux/ts в package.json, импорты в lib/mux.ts и scripts/backfill-mux-policy.ts, доки (docs/services.md, docs/gotchas.md → «Mux SDK 14+»); если это сразу v16 — прочитать его changelog и повторить проверку Долг: мажорные обновления — TypeScript 7, ESLint 10, @types/node 26, @mux/mux-node 15 #157 (тест подписи вебхука app/api/webhooks/mux/signature.test.ts + одна тестовая загрузка по «ок» владельца).

GDPR: не применимо (зависимости, данных не трогает).

Activity

  1. added
    type:debtТехдолг, рефакторинг, чистка
    domain:webNext.js: страницы, UI, серверные экшены, API-роуты
    p3Когда дойдут руки
    by:agent-claudeIssue завёл рабочий агент
    on Sep 25, 2026
  2. efymd9 commented on Oct 9, 2026

    @efymd9
    OwnerAuthor

    Пункт 1 (vitest 5) — сделан в PR #430 (Closes #424): vitest, @vitest/coverage-v8 и @vitest/browser-playwright → 5.0.3 под @storybook/addon-vitest 10.6.1 (peer vitest ^5), vitest / @vitest/* сняты из ignore в .github/dependabot.yml, строка реестра «vitest stays on 4» закрыта. Голдены Lab на vitest 5 снимаются 1:1 в viewport 1200 px (не 414 — плагин viewport выставляет); разбор и проверка ширины — в теле PR. Остаются пункты 2–4 (TypeScript 7, Node 26, @mux/ts).

  3. efymd9 commented on Oct 9, 2026

    @efymd9
    OwnerAuthor

    Новый факт к пункту @mux/mux-node → @mux/ts (найден при #434 / PR #437): muxinc/mux-ts в 15.6.0 перестал публиковать алиас — 15.5.0 последний релиз @mux/mux-node, пакет помечен deprecated на npm (коммит muxinc/mux-ts@8a8af54, MIGRATION.md: «@mux/mux-node received the same artifact at the same version through 15.5.0, which is its final release… Rename the dependency to @mux/ts to keep receiving releases»). То есть обновления SDK встали уже на 15.5.0, а не «после v15»: @mux/ts 15.6.x уже вышел (Robots track_name), до нас он не дойдёт. Строку docs/registry.md («at the latest when @mux/ts 16.x appears») и docs/gotchas.md («no @mux/mux-node 16») стоит поправить вместе с переименованием — в #437 не трогал (реестр — горячая точка, переименование ждёт «да» владельца).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    by:agent-claudeIssue завёл рабочий агентdomain:webNext.js: страницы, UI, серверные экшены, API-роутыp3Когда дойдут рукиtype:debtТехдолг, рефакторинг, чистка

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions