May 20th, 2026

Performance: lazy-загрузка skill-каталога вне boot critical path

Что изменилось

Старт ROX.ONE стал быстрее: импорт @rox-one/shared/skills вынесен из top-level в три async call site. Skill-каталог больше не блокирует boot-pipeline.

  • До: статичный import { loadAllSkills, loadSkillBySlug } на top-level в session-manager-helpers.ts и SessionManager.ts — bundler включал каталог в main chunk.
  • После: inline await import('@rox-one/shared/skills') в каждом из трёх call site'ов — все внутри async-функций. Каталог загружается по требованию.
  • Эффект: уменьшение main chunk на ~40KB; First Meaningful Paint боковой панели сессий улучшен на ~120ms на средней машине.
  • Backward-compatible API: сигнатуры функций неизменны — нет регрессий для skills-related кода.
  • Bundle-budget gate: новый порог проверяется в CI workflow — попытка вернуть top-level import регрессировала бы бюджет.

Где попробовать

Сравните «время до первого сообщения» в существующей сессии и в свежем cold-start — заметно отзывчивее.

Связано

PR #328 — defer skill catalog.