События полёта
Раздел События полёта (/events) — журнал того, что случилось в полёте.
Зачем это нужно
«Инцидент» — авиационный термин с негативной окраской: происшествие, ущерб, протокол. Записать же хочется и то, что просто запомнилось: задел крылом товарища в групповом полёте, было весело, хочется сохранить и показать. Поэтому сущность здесь одна — событие, а глубина у неё регулируемая; инцидент остаётся её частным случаем.
- Отметка — своя ошибка, причина понятна: борт, дата, тип. Три секунды. Ценность не в самой записи, а в накоплении: к концу сезона видно, что четыре случая из шести — на посадке. Это зеркало ваших слабых мест, и оно работает, даже если никакого учёта вы не ведёте.
- Расследование — причина непонятна или отказала техника: симптом, обстоятельства, логи, версии причин, вывод. Долгое, вечернее, с доказательствами. Разворачивается из отметки, отдельной сущности для него нет.
Разбора заслуживает непонятное, а не дорогое: даже полная утрата при собственной ошибке разбора не требует, а отказ техники требует при любом ущербе.
Записанное помогает не повторять собственные ошибки (история по каждому борту в Ангаре), учиться на чужом опыте (публичные события видны всем участникам) и отделять гипотезы от фактов: предполагаемая причина фиксируется сразу, подтверждённая — по итогам расследования.
Вверху раздела — сводка: всего событий, процент закрытых выводом, процент полных потерь, ваши события.
Отметка: три секунды
Нажмите + Описать событие (/events/new). Видимая часть формы — и есть
отметка, в ней нет ни одного необязательного поля.
Если вы прямо сейчас в поле, у места падения, форма не нужна и там: кнопка В поле рядом открывает короткий чеклист, где не нужно вводить текст вообще, — а описание пишется вечером.
| Поле | Примечание |
|---|---|
| Дата и время | когда произошло событие; в новой записи уже подставлено «сейчас» — поправьте, если записываете задним числом |
| Борт | из Ангара или вручную — см. ниже |
| Фаза полёта | Предполётная подготовка / Взлёт / Крейсерский полёт / Манёвр / Посадка |
| Категории | теги, можно несколько (до 4): Мотор, Регулятор (ESC), Аккумулятор, Потеря RC-связи, Потеря видеосвязи, Конструкция, ПО / автопилот, Пилотирование, Погода, Неизвестно, Другое |
Кнопка Описать событие сохраняет запись. Всё остальное — необязательно и дописывается позже.
Расследование: то же событие, глубже
Блок «Расследование» в форме (свёрнут при создании, раскрыт при редактировании) добавляет к отметке то, что нужно разбору:
| Поле | Примечание |
|---|---|
| Описание события | что произошло, хронология, поведение аппарата |
| Серьёзность | Без последствий / Повреждения / Полная потеря (по умолчанию — без последствий) |
| Место | свободный текст: склон, поле, трасса… |
| Погода | заполняется автоматически по точке и времени (см. ниже), можно править: «Ветер 8–12 м/с, +18 °C» |
| Предполагаемая причина | первая гипотеза — что, по-вашему, отказало |
| Теги | через запятую: inav, autolaunch, esc |
| Видимость | флажок «Публичный — виден всем участникам» (по умолчанию событие приватное) |
Уже сохранённая отметка разворачивается в расследование кнопкой «Развернуть в расследование» на её карточке — она открывает ту же форму правки с раскрытым блоком.
Категория «Неизвестно» — для случаев, когда причина отказа не установлена: честнее, чем «Другое», и не искажает статистику категорий.
Категории выбираются тегами: селект «+ Добавить категорию…» добавляет чип, крестик на чипе убирает его. Причин может быть несколько (например, «Потеря RC-связи» + «Пилотирование») — все теги видны в журнале и на карточке, фильтр по категории находит событие по любому из тегов, а ИИ-разбор учитывает их все.
Борт: из Ангара или вручную
- Если в Ангаре есть борта — поле Борт показывает селектор ваших бортов в формате «имя — модель». Событие привязывается к борту и появится на его карточке.
- Кнопка Ввести вручную переключает на свободный ввод имени борта — для чужого аппарата или борта, которого нет в Ангаре. (При редактировании переключение в ручной режим отвязывает борт.)
- Если бортов нет — сразу ручной режим и ссылка «заведите борт в Ангаре».
- Если открыть форму со страницы конкретного борта (быстрое действие «Описать событие» на Обзоре борта), этот борт уже выбран в селекторе — не нужно искать его в списке. Предвыбирается только ваш борт; посторонняя ссылка на чужой борт просто открывает форму без предвыбора.
Предполагаемая и подтверждённая причина
- Предполагаемая причина заполняется при создании — рабочая гипотеза.
- Подтверждённая причина появляется в форме редактирования — заполните её, когда расследование завершено (разбор обломков, логи, воспроизведение).
Оба поля видны в паспорте события на его карточке.
Статусы расследования
У нового события статус «Открыт». Владелец меняет статус прямо на странице события — селектом в ряду бейджей, без открытия формы (статус сохраняется сразу). Тот же статус доступен и в форме редактирования.
| Статус | Смысл |
|---|---|
| Открыт | событие зафиксировано, разбор не начат |
| Расследование | идёт анализ логов/обломков, причина уточняется |
| Закрыт | причина установлена, выводы сделаны |
Закрытое событие защищено от правок: поля становятся read-only — кнопка «Редактировать» скрывается, а API отклоняет изменения полей (можно менять только статус). Чтобы отредактировать закрытое событие, переоткройте его — смените статус на «Открыт» или «Расследование», редактируемость вернётся. Комментарии и вложения у закрытого события работают как обычно.
Карточка события
/events/view/{id} — описание, паспорт (борт, дата, фаза, место, погода,
причины), бейджи серьёзности/статуса/категории/видимости и теги. Владельцу
доступны кнопки Редактировать и Удалить. Удаление события
безвозвратно и удаляет вместе с ним все его вложения (фото, видео, логи).
Если событие привязано к борту из вашего Ангара, имя борта в шапке карточки — кликабельная ссылка на его страницу, при любой тяжести происшествия, а не только при полной потере. Ссылку видит только владелец борта — для остальных зрителей (в т. ч. владельца самого события, если борт не его) имя остаётся текстом: чужой Ангар не раскрывается. Если борт позже удалён из Ангара, событие это переживает — привязка снимается автоматически, и имя борта показывается обычным текстом без ссылки (см. «Редактирование и удаление»).
Фото-обложка
Если к событию приложено фото, оно становится обложкой — показывается миниатюрой в журнале и в шапке карточки. Правила:
- первое загруженное фото назначается обложкой автоматически;
- при нескольких фото владелец выбирает главную кнопкой «Сделать обложкой» рядом с вложением (текущая помечена бейджем «Обложка»);
- кнопка «Убрать обложку» на текущей обложке снимает её явно, не удаляя само фото-вложение — карточка и журнал переходят на фолбэк (см. ниже), пока не будет выбрана новая обложка;
- при удалении вложения, которое было обложкой, автоматически подставляется следующее фото-вложение;
- если фото-вложений нет (или обложка снята и заменить нечем), используется фолбэк: фото привязанного борта из Ангара → фото модели борта → стандартный баннер раздела.
Обложку видит каждый, кто видит событие (та же приватность, что у самого события); состав вашего Ангара при этом не раскрывается.
Вложения
Фото и логи полётных контроллеров прикладываются в блоке Вложения (только владелец): выберите файлы и нажмите Загрузить. Можно выбрать несколько файлов сразу — они загрузятся по очереди с индикатором прогресса; если какой-то файл не прошёл проверку, остальные всё равно загрузятся, а причины отказа будут перечислены под формой.
Файлы можно и перетащить мышью: вся карточка «Вложения» — drop-зона. При перетаскивании она подсвечивается с подсказкой «Отпустите, чтобы загрузить»; сброшенные файлы уходят тем же конвейером, что и кнопка — с тем же прогрессом, проверками типов/лимитов и общим отчётом об ошибках. Кнопка выбора файлов никуда не девается — на телефонах и планшетах без drag&drop всё работает как раньше.
- Допустимые типы:
- фото —
jpg,jpeg,png,webp,heic; - видео —
mp4,mov(другие контейнеры — mkv, avi и т. п. — отклоняются с пояснением; конвертируйте в MP4/MOV); - логи —
bin,bbl(Betaflight blackbox),log,tlog(ArduPilot),ulg(PX4),txt,csv; - архивы —
zip(например, набор логов одним файлом); - содержимое проверяется по сигнатуре файла, а не только по расширению —
видео, переименованное в
.jpg, будет отклонено; - фото автоматически сжимаются: длинная сторона до 2560 px, JPEG — детали повреждений сохраняются, а место экономится (оригинал не хранится; HEIC сохраняется как есть);
- фото и видео показываются единой сеткой миниатюр (в порядке загрузки); у видео на миниатюре — первый кадр со значком ▶. Клик открывает полноэкранный просмотр с листанием по всем медиа подряд (стрелки, свайп, Esc): фото — картинкой, видео — встроенным плеером с перемоткой прямо в карусели (хранится без перекодирования). На публичных shared-страницах карусель работает так же, только на чтение;
- действия на миниатюрах (только владелец): «Сделать обложкой» / «Убрать обложку» (у фото — кнопка переключается в зависимости от того, обложка это сейчас или нет), «Скачать» и «Удалить» (с подтверждением) — всё применяется сразу, без перезагрузки страницы;
- файлы, которые не фото и не видео (логи
txt/csv,binblackbox, архивы), показываются компактной строкой «Файлы» со скачиванием — в карусель они не попадают; - лимиты: 25 МБ на файл (видео — 200 МБ), до 20 файлов и 500 МБ суммарно на одно событие; текущий суммарный объём показан над сеткой вложений;
- скачать вложение может каждый, кто видит событие (в строке «Файлы» — ссылкой, у медиа владельцу доступна кнопка «Скачать» на миниатюре).
Лимиты настраиваются переменными окружения INCIDENT_ATTACHMENT_MAX_BYTES,
INCIDENT_VIDEO_MAX_BYTES, INCIDENT_ATTACHMENT_MAX_FILES,
INCIDENT_ATTACHMENT_MAX_TOTAL_BYTES и INCIDENT_ATTACHMENT_ALLOWED_EXTENSIONS.
Сверх лимитов ОДНОГО события действует ОБЩАЯ квота хранилища — 5 ГБ на все ваши файлы платформы сразу (см. «Ангар» → общая квота хранилища); загрузка сверх неё отклоняется, даже если у самого события лимит ещё не исчерпан.
Трек полёта и место падения
Если событие привязано к борту из Ангара, на карточке появляется блок «Трек полёта» — маршрут полёта, закончившегося событием, на карте (та же карта, что во вкладке «Журнал полётов» борта).
Связь идёт через ОБЩИЙ трек — файл лога не копируется: и полёт в
«Журнале полётов» борта, и событие ссылаются на ОДИН и тот же загруженный трек
(track_id). Загрузили лог один раз — распоряжайтесь им из любой карточки.
- Выбор трека. Владелец выбирает один из уже загруженных треков борта в выпадающем списке — маршрут сразу отрисуется (старт/финиш маркерами, авто-зум по границам).
- Загрузка нового трека прямо из события: кнопка «Загрузить трек»
принимает файл GPX, KML, blackbox-лог или ArduPilot DataFlash-лог
(
.bin/.log), разбирает его и СРАЗУ привязывает к событию — платформа автоматически заводит по этому логу полноценный полёт (тот жеPOST .../tracks, что и загрузка в «Журнале полётов»), трек при этом появляется и там — он живёт у борта, файл не копируется. - Лог уже приложен к событию? Не грузите его повторно. Если лог
полётного контроллера (например, ArduPilot
.bin) уже загружен в блок «Вложения» (см. выше), рядом с ним в строке «Файлы» есть кнопка 🛩️ «Создать полёт из этого лога» — она читает байты ТОГО ЖЕ вложения, без повторной загрузки файла, и сразу заводит полёт борта + привязывает его к событию (тот же итог, что у «Загрузить трек» выше). Кнопка видна только владельцу, только у вложений, чьё расширение похоже на лог полёта, и только когда событие привязано к борту. - Обратное направление — из журнала полётов. В «Журнале полётов» борта у каждого полёта есть кнопка «Отметить событие в этом полёте» (уже отмеченные события показаны внутри полёта ссылками): открывает форму создания с уже выбранным бортом и предзаполненным временем происшествия (конец GPS-трека, см. ниже) — после сохранения событие сразу свяжется с этим треком. Это ОБЫЧНАЯ форма, а не тихое создание события за пользователя — серьёзность, категории и описание всё равно заполняются осознанно.
- Место падения. Отдельной красной булавкой с крестом отмечается точка краша. По умолчанию это последняя точка трека; можно кликнуть по карте, чтобы переставить маркер в нужное место. «Отвязать» убирает и трек, и метку.
- Приватность — как у события. Приватное событие и его трек видит только владелец; у публичного события трек и место падения видны всем, кто открыл карточку, — даже если сам борт им недоступен. Выбирать/загружать треки и ставить метку может только владелец.
- Точное время из GPS-лога. Если у привязанного трека есть GPS-время и оно заметно отличается от даты/времени, указанных в форме события, под картой появляется подсказка «Использовать это время» — берётся момент конца записанного маршрута (обычно ближе к посадке/крашу, чем то, что вспомнили и вписали вручную). Подсказка ничего не меняет сама — только по явному клику владельца; поле occurred_at, введённое руками, никогда не перезаписывается молча. Если у трека нет GPS-времени (KML без меток, blackbox без фикса спутников) — подсказка не показывается.
- Удаление одной стороны не рвёт другую. Трек принадлежит борту, а не событию — удаление события НЕ удаляет трек (он остаётся в «Журнале полётов»). А если удалить сам трек (или весь борт) — платформа честно отвязывает его от события (трек и место падения пропадают из карточки события вместо битой ссылки), само событие остаётся.
Комментарии
Комментарий может оставить любой залогиненный пользователь, который видит событие (владелец — всегда; остальные — если событие публичное). Авторы подписываются как «Вы», «Автор разбора» или «Участник» — без раскрытия личных данных.
Текст комментария понимает markdown: заголовки (## Хронология), списки
(- пункт), таблицы, выделение (**важно**) и блоки кода (```) — удобно
для разборов логов и чек-листов. Обычный текст писать тоже можно: переносы
строк сохраняются как есть. HTML-теги из комментария вырезаются.
Редактировать / Удалить свой комментарий можно в любой момент — кнопки
показываются только под СВОИМИ комментариями (чужие, включая комментарии
владельца события к его же событию, недоступны для правки другому
участнику). Отредактированный комментарий помечается меткой «(edited)»
рядом с датой. Через API: PUT/DELETE /api/incidents/{id}/comments/{comment_id}
(редактируется поле body); ACL — только автор комментария, не обязательно
владелец события.
Комментарии учитываются ИИ-разбором: и одиночный разбор события, и сводный анализ читают обсуждение (с ограничением количества и длины) — версии и наблюдения участников попадают в контекст модели. Имена и email в промпт не передаются, только роль («автор события» / «участник»).
Разбор ИИ
Разбор одного события
В карточке события кнопка «Разобрать (ИИ)» запускает локальную модель в три шага. Сначала из полей события, текстовых логов вложений (LOG, TXT, CSV, BBL), фото (если доступна модель зрения) и комментариев извлекаются факты и хронология — строго то, что есть в данных. Затем причины раскладываются по ролям: что запустило происшествие (триггер) и какая ОДНА причина решила исход (решающий фактор — например, «RTH не был настроен» это НЕ то же самое, что «RTH не сработал», и модели запрещено их путать), плюс отягчающие обстоятельства и что могло бы смягчить исход. Наконец формулируется профилактика — каждая рекомендация привязана к конкретной причине, а не звучит общей фразой вроде «быть внимательнее». Модель честно помечает недостающие данные (лог не приложен, причина не подтверждена и т.п.), а не додумывает их, и не оценивает личные качества пилота. Итог — вероятные причины, рекомендации и чек-лист перед следующим полётом; разбор сохраняется в событии, кнопка «Обновить разбор» перезапускает его.
Статус показывается живьём: «В очереди (N)» → «Анализирую…» → результат. Страницу можно закрыть или уйти на другую — разбор продолжится в фоне, а при возвращении карточка сама переподхватит запущенную задачу и покажет результат. Если разбор упал, пока вы отсутствовали, карточка покажет текст ошибки, а не промолчит.
Массовый разбор
На странице журнала (если у вас есть неразобранные события) — кнопка «Разобрать неразобранные (N)». Задачи ставятся в очередь автоматически, порциями в рамках лимита очереди (следующие подаются по мере завершения предыдущих); прогресс — «Разобрано N из M». Ошибки отдельных разборов не прерывают остальные и показываются итоговым сообщением.
Сводный разбор
Кнопка «Сводный разбор (ИИ)» смотрит на весь ваш журнал как инструктор: не «какой узел сломался», а какой навык подтянуть. Отчёт кэшируется и показывается при открытии списка; «Обновить сводку» пересобирает его. Запущенная сводка переживает перезагрузку страницы — отчёт дорисуется при возвращении.
Что показывает отчёт (коучинговый порядок):
- Слабая сторона №1 — самый дорогой управляемый кластер ошибок с пометкой, повторяется ли он во времени (если да — навык ещё не закрыт).
- Зоны роста мастерства — по осям навыков (пилотирование, инженерия и постройка, предполётная подготовка): что вы делаете не так и что тренировать, с частотой («9 из 33») и ранжиром по покрытию и тяжести.
- Профиль ошибок по навыкам — распределение событий по осям (частоты считает программа, не модель).
- Повторяющиеся паттерны — только подтверждённые ≥ 3 событиями (для событий с полной потерей аппарата — ≥ 2); всё, что реже, уходит в единичные случаи — наблюдать, а не в «системные ошибки».
- Топ-рекомендации — привязаны к паттернам, отсортированы по покрытию и тяжести.
- Осторожность — внешние факторы (погода, среда): это не навык, поэтому в зоны роста не попадает и разбирается отдельным блоком.
- Разрезы — по бортам (борт-рекордсмен виден сразу), фазам полёта, тяжести и свежести (последние полгода / 6–12 месяцев / старше года).
Частоты, профиль навыков и разрезы считает программа по вашим событиям — модель их не выдумывает, а формулирует выводы по готовой статистике; отдельный проверочный проход следит, чтобы у каждого паттерна была подтверждающая частота. Сводка опирается на индивидуальные ИИ-разборы событий (см. выше) — чем больше событий разобрано по отдельности, тем точнее выводы; у ещё не разобранных берутся описание и комментарии.
Как только разбор одного события завершается, программа раскладывает его причины по компактным меткам (например, «не настроен failsafe», «потеря RC-связи», «износ узла») — без нового обращения к модели. Эти метки и есть та ось, по которой считается «причинный профиль»: сколько событий приходится на каждую метку триггера/решающего фактора/итога, — число, а не пересказ. События без индивидуального разбора и разборы, сделанные до этого улучшения, по-прежнему попадают в статистику по своим полям (фаза, тяжесть, борт) — просто менее детально, а не исчезают из подсчёта.
Время ответа локальной модели ограничено (переменная окружения
LLM_JOB_TIMEOUT_S, по умолчанию 180 секунд); при превышении лимита
сообщение об ошибке показывает фактическое значение. Одновременно в очереди
может стоять не более LLM_MAX_QUEUED_PER_USER задач (по умолчанию 3) —
массовый разбор учитывает это сам.
Фильтры, поиск и сортировка списка
Над панелью — переключатель «Все / Только мои»: «Все» показывает ваши события и публичные события сообщества, «Только мои» скрывает чужие. Выбор запоминается в браузере и комбинируется с фильтрами ниже; кнопка Сбросить возвращает «Все».
Панель фильтров применяется мгновенно, без перезагрузки страницы:
- Поиск — живой, посимвольный: по имени борта, модели и описанию;
- Статус — открыт / расследование / закрыт;
- Модель — модели бортов вашего флота; фильтр появляется, когда среди событий есть привязанные к Ангару борта;
- Борт — конкретный экземпляр: привязанный борт из Ангара или имя, введённое вручную;
- Серьёзность, Категория (совпадение по любому из тегов события), Фаза полёта — по значению.
Фильтры и поиск комбинируются (логика И); кнопка Сбросить возвращает полный список. Если по выбранным условиям ничего не нашлось — появится заглушка «Ничего не найдено по фильтрам» с кнопкой сброса.
Над панелью — счётчик «Показано N из M»: N — записи, видимые после применения фильтров, поиска и вкладки «Все / Только мои», M — все записи журнала. Счётчик пересчитывается мгновенно при каждой смене условий. Количество событий показывается и на публичных страницах: у shared-ссылки на весь журнал и у подборки — бейдж «Событий: N».
Сортировка — в той же панели: по дате (по умолчанию, новые сверху), серьёзности, борту/модели или статусу; направление переключается кнопкой ↑/↓. Выбор сортировки запоминается в браузере.
Фильтры работают и как query-параметры API
(/api/incidents?category=…&severity=…&flight_phase=…&status=…), дополнительно
API принимает tag и aircraft_id. Те же параметры у страницы /events
подсвечивают соответствующие фильтры панели (deep-link).
Приватность
- По умолчанию событие приватный — виден только вам.
- Сменить видимость можно в диалоге «Поделиться» — переключатель «Публичный — виден всем пользователям платформы» (доступен и у закрытого события: это управление доступом, а не правка полей). Публичность не зависит от списка участников e-mail-шаринга.
- Публичный событие видят все залогиненные пользователи (чтение и комментарии); править и удалять его можете только вы.
- Опубликовать разбор без входа — ВТОРОЙ, отдельный переключатель в том же
диалоге (появляется, когда событие уже публичное). Он открывает разбор
всем, включая поисковики: событие попадает в общий список
публичных разборов и получает собственную страницу
/events/public/…. Сам по себе он не включается никогда — публикация не наследуется от «Публичный», и уже заведённые события задним числом никуда не попадают. - Что именно видно без входа: дата, имя аппарата, фаза полёта, категории, серьёзность, статус, описание, версия и подтверждённая причина, условия погоды, вывод «чем кончилось» и связка (мотор/регулятор/винт) из снимка конфигурации на момент события. НЕ публикуются фотографии, вложения, комментарии, координаты и место (площадка), трек полёта, разбор ИИ, полевая голосовая заметка и список участников шаринга.
- Выключили «Публичный» — публикация без входа снимается вместе с ним (обратно сама не включится: понадобится снова поставить обе галочки).
- Привязанный борт другим пользователям показывается только по имени — состав вашего Ангара не раскрывается.
Шаринг всего журнала
Открыть панель управления шарингом можно двумя путями: кнопкой
«Поделиться журналом» на /events или кликом по бейджу
«Журнал поделён (N)» (N — сколько человек получили доступ по email).
В панели:
- Ссылка на журнал — тумблер выдаёт read-only ссылку
/events/shared/…на весь журнал (включая приватные записи). Новая ссылка сразу открыта: журнал увидит любой, у кого она есть, без входа — только чтение (журнал событий не секрет, вы сами решаете делиться). Строка ссылки — с кнопкой «Копировать». - Без входа — тумблер режима доступа. По умолчанию включён (ссылка открыта всем). Выключите его, чтобы пускать по ссылке только участников из списка email ниже (и вас) после входа; анонима такая ссылка отправит на страницу входа, а залогиненного не из списка — на «ссылка недействительна».
- Срок действия ссылки — авто-отзыв по таймеру: «Бессрочно» (по умолчанию) либо 7 / 30 / 90 дней. По истечении срока ссылка перестаёт открываться (отдаёт «ссылка недействительна»), как отозванная. Статус ссылки виден тут же: «Ссылка активна · действует до …» или «Срок действия ссылки истёк».
- «Перевыпустить» — меняет только адрес ссылки: старый URL мгновенно перестаёт работать, а режим доступа и срок действия сохраняются.
- «Закрыть доступ» — полный отзыв: гасит и ссылку, и весь доступ по email разом.
- Доступ по email — участники платформы из списка видят все ваши события в собственном журнале, могут читать и комментировать. Кнопка «Сохранить» применяет список; счётчик на бейдже обновляется сразу, без перезагрузки страницы.
Выдача, отзыв, перевыпуск и смена настроек ссылки фиксируются в вашей истории действий («Моя активность» в настройках).
Со shared-страницы журнала можно переходить в карточки событий — они открываются в том же режиме доступа, только на чтение (без форм комментария и LLM-разбора). Фото, видео и прочие вложения, а также обложки показываются и скачиваются в рамках этого же shared-доступа — чужим событиям и вложениям токен ссылки доступа не даёт.
Ссылки, выданные до этого обновления, могли требовать входа по умолчанию. Если журнал должен быть открыт всем — проверьте тумблер «Без входа».
Подборки: выделение и шаринг выбранных событий
Если делиться нужно не всем журналом, а несколькими разборами — соберите подборку:
- Отметьте события чекбоксами на карточках журнала (чекбоксы есть только у ваших событий — чужие в подборку не попадают). Флажок «Выбрать все видимые» отмечает всё, что прошло активные фильтры и поиск; кнопка «Сбросить выделение» снимает отметки.
- Нажмите «Поделиться выбранными (N)» — откроется диалог подборки:
- публичная ссылка
/events/shared-selection/…создаётся сразу: по ней выбранные события видны без входа, только на чтение; со страницы подборки открываются и карточки этих событий — read-only, с фото и вложениями (в рамках подборки); - доступ по email (опционально) — участники платформы из списка увидят события подборки в собственном журнале и смогут открывать их карточки (чтение и комментарии, как при обычном шаринге). - Кнопка «Создать подборку» сохраняет её и показывает ссылку — скопируйте и отправьте.
Активные подборки собраны в диалоге «Мои подборки» (кнопка появляется рядом с «Поделиться журналом»): для каждой — ссылка, «Перевыпустить» (мгновенно гасит старую ссылку и выдаёт новую) и «Отозвать» (удаляет подборку целиком — перестают работать и ссылка, и доступ по email). В одну подборку помещается до 100 событий; создание и отзыв подборок фиксируются в вашей истории действий («Моя активность» в настройках).
Карта места и автопогода
Точку события можно указать на карте (кнопка Указать на карте в форме; без настроенного ключа Яндекс.Карт — ручные поля широты/долготы). Флажок «Место примерное» помечает координаты как неточные.
Погода подтягивается автоматически: как только вы применили место («Готово» в модале карты или ввели пару координат вручную) и указана дата, поле «Погода» заполняется сводкой по точке и времени события. Смена даты/времени при выставленной точке обновляет сводку. Поле остаётся редактируемым: если вы поправили текст руками, автоподстановка его не перезапишет до следующего применения места. Если погода недоступна (нет ключа WeatherAPI, дата старше 7 дней, сбой сервиса) — причина показывается подсказкой под полем, введённый текст не затирается.
Конфигурация на момент события
Слова «у меня тоже такое было» без версии прошивки, настроек и состава железа выводов не дают. Поэтому событие с привязанным бортом само запоминает конфигурацию: версию и ветку прошивки, плату, настройки полётного контроллера из сохранённого бэкапа и состав из активной конфигурации борта. Блок «Конфигурация на момент события» показывает это на карточке.
Ключевое — это снимок, а не ссылка на текущее состояние борта. Борт живёт: перепрошивка, замена мотора, правка настроек — через месяц ссылка описывала бы уже другой аппарат. Берётся самый свежий бэкап настроек, снятый не позже момента события; бэкап, сделанный уже после падения (типичный случай — «сняли дамп, когда разбирались»), в снимок не идёт, и карточка честно говорит об этом.
Чего собрать не удалось — перечислено прямо в блоке: нет бэкапа на тот момент, не привязан полётный контроллер, у борта нет конфигурации с составом. Пустое поле без такой пометки было бы неотличимо от «данных не было».
Если бэкап или полётный контроллер появились позже, нажмите «Пересобрать конфигурацию» — снимок соберётся заново, но всё равно на момент события. Пересобрать может только владелец; закрытому событию это не мешает — это добор улик, а не правка описания.
Снимок едет вместе с событием: его видит тот же круг, что и само событие (вы — всегда, вошедшие читатели — если событие публичное, участники — если вы им его расшарили). Видимость карточки борта на это не влияет — то есть, публикуя событие, вы публикуете и настройки с составом. Происхождение снимка (из какого бэкапа и какой конфигурации он собран) остаётся только вам.
Чем кончилось
Вывод по событию — отдельное поле, а не запись в обсуждении: комментарий не найти фильтром и не посчитать в сводке. В блоке «Чем кончилось» владелец выбирает исход и, если нужно, коротко пишет, что сделал:
| Исход | Смысл |
|---|---|
| Починили | причина устранена |
| Заменили деталь | помогла замена |
| Изменили настройки или прошивку | помогла правка конфигурации |
| Больше не повторялось, причина не найдена | после вмешательства не воспроизводится |
| Борт списан | восстановление невозможно/нецелесообразно |
| Причина не найдена, отказ остаётся | проблема жива |
Последние два — разные вещи, и схлопывать их нельзя: иначе сводка выдаст нерешённые случаи за решённые. Вывод записывается и у закрытого события — он как раз тогда и появляется.
Сводка по симптому
Блок «Сопоставимые случаи» на карточке отвечает не «есть ли похожие», а «что из них следует»: сколько случаев этого симптома вам видно, что у них общего в конфигурации, что различается и на каких ветках прошивки симптом не встречается. Даже без окончательной причины «все семь случаев на одной ветке, на предыдущей ни одного» — уже применимый вывод.
Сводка честно говорит о границах данных, а не молчит:
- случаев с конфигурацией меньше двух — сравнивать не с чем, «общее» не считается;
- часть случаев без конфигурации — они посчитаны отдельно;
- никто не записал, чем кончилось;
- данных мало для утверждения об отсутствии — «на этой ветке не встречается» звучит, только если события на этой ветке в базе вообще есть, и всегда вместе с их числом.
В сводку попадают только события, которые вам и так видны: свои, публичные и расшаренные вам. Чужие борта, их идентификаторы и состав того, кто событие не публиковал, в неё не попадают.
Заведение через ИИ-ассистента (MCP)
Событие можно завести не только через форму, но и словами — через Claude,
подключённый к MCP-серверу платформы:
инструмент create_event (борт, фаза полёта, категории, серьёзность,
описание — как в форме). На странице журнала об этом напоминает бейдж
✨ ИИ, а на карточке события под заголовком стоит строка «Записано
ассистентом». Серьёзность обязательна: если из вашей фразы она неясна
(например, «борт цел»), ассистент сначала спросит, были ли повреждения, и не
подставит значение сам.
Сопоставление тоже доступно словами: incident_symptom_summary («сравни мои
отказы моторов: что общего в конфигурациях?»), set_incident_resolution
(записать, чем кончилось) и capture_incident_config_snapshot (пересобрать
конфигурацию, если бэкап или полётный контроллер появились позже).
Следующие шаги
- Захват события в поле — чеклист вместо формы на месте падения: видео до подъёма, комплектность, голосовая заметка, медиа по времени
- Ангар — заведите борта, чтобы привязывать события
- Обзор платформы — обзор всех разделов