01

Дневная сводка: jetbrains — 2026-06-01

1 июня вышли три публикации, охватывающие анализ TypeScript-кода через Qodana, открытие исходного кода AI-модели Mellum2 и руководство по OAuth2 для разработчиков плагинов JetBrains.


Ключевые события и темы

Статический анализ TypeScript с Qodana

Команда Qodana опубликовала детальный разбор пяти ситуаций, где файл-ориентированный ESLint с плагином @typescript-eslint не справляется: распространение неявного any через несколько файлов, операторы non-null assertion (!), floating promises без type-aware анализа, неиспользуемые экспорты и межфайловое дублирование логики. Для каждой ситуации показано, почему ESLint даёт неполный результат и как Qodana закрывает пробел за счёт анализа на уровне всего проекта. Практическая настройка сводится к минимальному qodana.yaml с профилем qodana.recommended; механизм baseline позволяет внедрить инструмент в существующий проект без блокировки PR на накопленный технический долг.

// Пример: явная типизация границы API вместо implicit any
const data: UserResponse = await res.json();

Ссылки:

Mellum2: open-source AI-модель для агентных рабочих процессов

JetBrains открыла исходный код Mellum2 — 12B-параметрической модели с архитектурой Mixture-of-Experts (MoE), в которой активны лишь 2,5B параметров на токен. Модель лицензирована под Apache 2.0 и ориентирована на роль «фокусной модели» в многоагентных системах: маршрутизация запросов, суммаризация контекста в RAG-конвейерах и быстрые специализированные шаги в агентных пайплайнах. Mellum2 обучена только на текстовых и кодовых данных (без мультимодальности), конкурентоспособна с моделями аналогичного размера по задачам кодогенерации, математики и рассуждений. Поддерживается self-hosted деплой для команд с требованиями к приватности данных.

from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("JetBrains/Mellum2")

Ссылки:

OAuth2 с PKCE для плагинов JetBrains IDE

Статья для разработчиков плагинов описывает полную реализацию OAuth2-входа с PKCE вместо ручного создания Personal Access Token. Архитектура состоит из четырёх компонентов: регистрация UI и HTTP-обработчика в plugin.xml, минималистичный UI на Kotlin DSL, AuthRestService — обработчик локального HTTP-колбэка, и AuthService с полным потоком PKCE. Ключевой паттерн — использование CompletableDeferred как моста между HTTP-колбэком и корутиной; токен хранится в PasswordSafe, а не в обычных настройках.

val state = UUID.randomUUID().toString()
val codeVerifier = UUID.randomUUID().toString().padStart(43, '0')
val callback = CompletableDeferred<String>().also { callbacks[state] = it }
BrowserUtil.browse(authorizationUrl(state, codeVerifier))
return exchangeCodeForToken(callback.await(), codeVerifier)

Ссылки:


Итог

1 июня JetBrains одновременно опубликовали материалы для трёх аудиторий: TypeScript-разработчиков (статический анализ уровня проекта через Qodana), AI-инженеров (open-source Mellum2 как компонент агентных систем) и авторов плагинов для IntelliJ Platform (OAuth2/PKCE шаблон). Открытие Mellum2 под Apache 2.0 — наиболее значимое событие дня с точки зрения долгосрочного влияния: компания предоставляет конкурентоспособную альтернативу для высоконагруженных AI-компонентов с поддержкой self-hosting.