Подзадача #4203. Реализация: PR 15968985.
Задача
На внутренней странице All Clusters (/home/clusters) дать запускать Diagnostics и Fix прямо из Healthcheck, без перехода на страницу кластера. В запрос передавать выбранный кластер и показанный snapshot.
Критерии
- Кнопки доступны только при включённом AI-эксперименте, viewer-доступе meta и выбранного кластера и
enable_ai_assistant. При загрузке, ошибке или запрете скрыты; права A не переносятся на B.
- Первый запрос, продолжение, Retry и подтверждение используют правильную цель. Контекст предыдущей страницы не подмешивается.
- Явный запуск для другой цели начинает новую беседу; первый запрос и следующие ходы имеют один новый
conversationId. Во время генерации смена цели не запускает второй запрос.
- Закрытие Healthcheck сохраняет чат и историю, снимая активный контекст. Закрытие и повторное открытие текущего чата не прерывают ответ и не создают дубль.
- Accept all недоступна на списке и для закреплённого запроса после SPA-перехода. Обычный чат сохраняет прежние правила.
- Событие
agent_healthcheck_action различает точку входа через entry_point, без имён ресурсов и диагностических текстов.
Правка ограничена внутренней обёрткой. My Databases, Cloud/EM, backend и публичный API не расширяются. Передача цели drawer через OSS-контракт — отдельная связанная задача #4446 / PR #4421.
Проверки
Тесты доступности, изоляции A → B → A, Retry/подтверждений, закрытия и tracing ID; typecheck, линтеры и сборка. На Farm — тот же сценарий до/после с синтетическими кластерами и mock /api/chat, без реальных AI-инструментов.
Реализация находится в PR; merge и выкладка ещё не подтверждены. Проверки конкретных ревизий не считать подтверждением production-поведения.
Подзадача #4203. Реализация: PR 15968985.
Задача
На внутренней странице All Clusters (
/home/clusters) дать запускать Diagnostics и Fix прямо из Healthcheck, без перехода на страницу кластера. В запрос передавать выбранный кластер и показанный snapshot.Критерии
enable_ai_assistant. При загрузке, ошибке или запрете скрыты; права A не переносятся на B.conversationId. Во время генерации смена цели не запускает второй запрос.agent_healthcheck_actionразличает точку входа черезentry_point, без имён ресурсов и диагностических текстов.Правка ограничена внутренней обёрткой. My Databases, Cloud/EM, backend и публичный API не расширяются. Передача цели drawer через OSS-контракт — отдельная связанная задача #4446 / PR #4421.
Проверки
Тесты доступности, изоляции A → B → A, Retry/подтверждений, закрытия и tracing ID; typecheck, линтеры и сборка. На Farm — тот же сценарий до/после с синтетическими кластерами и mock
/api/chat, без реальных AI-инструментов.Реализация находится в PR; merge и выкладка ещё не подтверждены. Проверки конкретных ревизий не считать подтверждением production-поведения.