Not translated yet — page language: Russian

События полёта — журнал от отметки до разбора

Обновлено: 2026-08-15 события отметка расследование incidents краш отказ разбор root cause

События полёта

Раздел События полёта (/events) — журнал того, что случилось в полёте.

Зачем это нужно

«Инцидент» — авиационный термин с негативной окраской: происшествие, ущерб,
протокол. Записать же хочется и то, что просто запомнилось: задел крылом
товарища в групповом полёте, было весело, хочется сохранить и показать.
Поэтому сущность здесь одна — событие, а глубина у неё регулируемая;
инцидент остаётся её частным случаем.

  • Отметка — своя ошибка, причина понятна: борт, дата, тип. Три секунды.
    Ценность не в самой записи, а в накоплении: к концу сезона видно, что
    четыре случая из шести — на посадке. Это зеркало ваших слабых мест, и оно
    работает, даже если никакого учёта вы не ведёте.
  • Расследование — причина непонятна или отказала техника: симптом,
    обстоятельства, логи, версии причин, вывод. Долгое, вечернее,
    с доказательствами. Разворачивается из отметки, отдельной сущности для
    него нет.

Разбора заслуживает непонятное, а не дорогое: даже полная утрата при
собственной ошибке разбора не требует, а отказ техники требует при любом
ущербе.

Записанное помогает не повторять собственные ошибки (история по каждому борту
в Ангаре), учиться на чужом опыте (публичные события
видны всем участникам) и отделять гипотезы от фактов: предполагаемая причина
фиксируется сразу, подтверждённая — по итогам расследования.

Вверху раздела — сводка: всего событий, процент закрытых выводом,
процент полных потерь, ваши события.

Отметка: три секунды

Нажмите + Описать событие (/events/new). Видимая часть формы — и есть
отметка, в ней нет ни одного необязательного поля.

Если вы прямо сейчас в поле, у места падения, форма не нужна и там:
кнопка В поле рядом открывает короткий чеклист, где
не нужно вводить текст вообще, — а описание пишется вечером.

Поле Примечание
Дата и время когда произошло событие; в новой записи уже подставлено «сейчас» — поправьте, если записываете задним числом
Борт из Ангара или вручную — см. ниже
Фаза полёта Предполётная подготовка / Взлёт / Крейсерский полёт / Манёвр / Посадка
Категории теги, можно несколько (до 4): Мотор, Регулятор (ESC), Аккумулятор, Потеря RC-связи, Потеря видеосвязи, Конструкция, ПО / автопилот, Пилотирование, Погода, Неизвестно, Другое

Кнопка Описать событие сохраняет запись. Всё остальное — необязательно и
дописывается позже.

Расследование: то же событие, глубже

Блок «Расследование» в форме (свёрнут при создании, раскрыт при
редактировании) добавляет к отметке то, что нужно разбору:

Поле Примечание
Описание события что произошло, хронология, поведение аппарата
Серьёзность Без последствий / Повреждения / Полная потеря (по умолчанию — без последствий)
Место свободный текст: склон, поле, трасса…
Погода заполняется автоматически по точке и времени (см. ниже), можно править: «Ветер 8–12 м/с, +18 °C»
Предполагаемая причина первая гипотеза — что, по-вашему, отказало
Теги через запятую: inav, autolaunch, esc
Видимость флажок «Публичный — виден всем участникам» (по умолчанию событие приватное)

Уже сохранённая отметка разворачивается в расследование кнопкой
«Развернуть в расследование» на её карточке — она открывает ту же форму
правки с раскрытым блоком.

Категория «Неизвестно» — для случаев, когда причина отказа не установлена:
честнее, чем «Другое», и не искажает статистику категорий.

Категории выбираются тегами: селект «+ Добавить категорию…» добавляет чип,
крестик на чипе убирает его. Причин может быть несколько (например, «Потеря
RC-связи» + «Пилотирование») — все теги видны в журнале и на карточке,
фильтр по категории находит событие по любому из тегов, а ИИ-разбор
учитывает их все.

Борт: из Ангара или вручную

  • Если в Ангаре есть борта — поле Борт показывает селектор
    ваших бортов в формате «имя — модель». Событие привязывается к борту
    и появится на его карточке.
  • Кнопка Ввести вручную переключает на свободный ввод имени борта —
    для чужого аппарата или борта, которого нет в Ангаре. (При редактировании
    переключение в ручной режим отвязывает борт.)
  • Если бортов нет — сразу ручной режим и ссылка «заведите борт в Ангаре».
  • Если открыть форму со страницы конкретного борта (быстрое действие
    «Описать событие» на Обзоре борта), этот борт уже выбран в
    селекторе — не нужно искать его в списке. Предвыбирается только ваш борт;
    посторонняя ссылка на чужой борт просто открывает форму без предвыбора.

Предполагаемая и подтверждённая причина

  • Предполагаемая причина заполняется при создании — рабочая гипотеза.
  • Подтверждённая причина появляется в форме редактирования — заполните её,
    когда расследование завершено (разбор обломков, логи, воспроизведение).

Оба поля видны в паспорте события на его карточке.

Статусы расследования

У нового события статус «Открыт». Владелец меняет статус прямо на странице
события
— селектом в ряду бейджей, без открытия формы (статус сохраняется
сразу). Тот же статус доступен и в форме редактирования.

Статус Смысл
Открыт событие зафиксировано, разбор не начат
Расследование идёт анализ логов/обломков, причина уточняется
Закрыт причина установлена, выводы сделаны

Закрытое событие защищено от правок: поля становятся read-only — кнопка
«Редактировать» скрывается, а API отклоняет изменения полей (можно менять
только статус). Чтобы отредактировать закрытое событие, переоткройте его —
смените статус на «Открыт» или «Расследование», редактируемость вернётся.
Комментарии и вложения у закрытого события работают как обычно.

Карточка события

/events/view/{id} — описание, паспорт (борт, дата, фаза, место, погода,
причины), бейджи серьёзности/статуса/категории/видимости и теги. Владельцу
доступны кнопки Редактировать и Удалить. Удаление события
безвозвратно и удаляет вместе с ним все его вложения (фото, видео, логи).

Если событие привязано к борту из вашего Ангара, имя
борта в шапке карточки — кликабельная ссылка на его страницу (AD-961), при
любой тяжести происшествия, а не только при полной потере. Ссылку видит
только владелец борта — для остальных зрителей (в т. ч. владельца самого
события, если борт не его) имя остаётся текстом: чужой Ангар не
раскрывается. Если борт позже удалён из Ангара, событие это переживает —
привязка снимается автоматически, и имя борта показывается обычным текстом
без ссылки (см. «Редактирование и удаление»).

Фото-обложка

Если к событию приложено фото, оно становится обложкой — показывается
миниатюрой в журнале и в шапке карточки. Правила:

  • первое загруженное фото назначается обложкой автоматически;
  • при нескольких фото владелец выбирает главную кнопкой «Сделать обложкой»
    рядом с вложением (текущая помечена бейджем «Обложка»);
  • кнопка «Убрать обложку» на текущей обложке снимает её явно, не удаляя
    само фото-вложение — карточка и журнал переходят на фолбэк (см. ниже), пока
    не будет выбрана новая обложка;
  • при удалении вложения, которое было обложкой, автоматически подставляется
    следующее фото-вложение;
  • если фото-вложений нет (или обложка снята и заменить нечем), используется
    фолбэк: фото привязанного борта из Ангара → фото
    модели борта → стандартный баннер раздела.

Обложку видит каждый, кто видит событие (та же приватность, что у самого
события); состав вашего Ангара при этом не раскрывается.

Вложения

Фото и логи полётных контроллеров прикладываются в блоке Вложения
(только владелец): выберите файлы и нажмите Загрузить. Можно выбрать
несколько файлов сразу — они загрузятся по очереди с индикатором
прогресса; если какой-то файл не прошёл проверку, остальные всё равно
загрузятся, а причины отказа будут перечислены под формой.

Файлы можно и перетащить мышью: вся карточка «Вложения» — 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, bin blackbox,
    архивы), показываются компактной строкой «Файлы» со скачиванием — в
    карусель они не попадают;
  • лимиты: 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-доступа — чужим
событиям и вложениям токен ссылки доступа не даёт.

Ссылки, выданные до этого обновления, могли требовать входа по умолчанию.
Если журнал должен быть открыт всем — проверьте тумблер «Без входа».

Подборки: выделение и шаринг выбранных событий

Если делиться нужно не всем журналом, а несколькими разборами — соберите
подборку:

  1. Отметьте события чекбоксами на карточках журнала (чекбоксы есть
    только у ваших событий — чужие в подборку не попадают).
    Флажок «Выбрать все видимые» отмечает всё, что прошло активные
    фильтры и поиск; кнопка «Сбросить выделение» снимает отметки.
  2. Нажмите «Поделиться выбранными (N)» — откроется диалог подборки:
    - публичная ссылка /events/shared-selection/… создаётся сразу:
    по ней выбранные события видны без входа, только на чтение;
    со страницы подборки открываются и карточки этих событий —
    read-only, с фото и вложениями (в рамках подборки);
    - доступ по email (опционально) — участники платформы из списка
    увидят события подборки в собственном журнале и смогут открывать
    их карточки (чтение и комментарии, как при обычном шаринге).
  3. Кнопка «Создать подборку» сохраняет её и показывает ссылку —
    скопируйте и отправьте.

Активные подборки собраны в диалоге «Мои подборки» (кнопка появляется
рядом с «Поделиться журналом»): для каждой — ссылка, «Перевыпустить»
(мгновенно гасит старую ссылку и выдаёт новую) и «Отозвать» (удаляет
подборку целиком — перестают работать и ссылка, и доступ по email).
В одну подборку помещается до 100 событий; создание и отзыв подборок
фиксируются в вашей истории действий («Моя активность» в настройках).

Карта места и автопогода

Точку события можно указать на карте (кнопка Указать на карте в форме;
без настроенного ключа Яндекс.Карт — ручные поля широты/долготы). Флажок
«Место примерное» помечает координаты как неточные.

Погода подтягивается автоматически: как только вы применили место
(«Готово» в модале карты или ввели пару координат вручную) и указана дата,
поле «Погода» заполняется сводкой по точке и времени события. Смена
даты/времени при выставленной точке обновляет сводку. Поле остаётся
редактируемым: если вы поправили текст руками, автоподстановка его не
перезапишет до следующего применения места. Если погода недоступна
(нет ключа WeatherAPI, дата старше 7 дней, сбой сервиса) — причина
показывается подсказкой под полем, введённый текст не затирается.

Конфигурация на момент события

Слова «у меня тоже такое было» без версии прошивки, настроек и состава железа
выводов не дают. Поэтому событие с привязанным бортом само запоминает
конфигурацию: версию и ветку прошивки, плату, настройки полётника из
сохранённого бэкапа и состав из активной конфигурации борта. Блок
«Конфигурация на момент события» показывает это на карточке.

Ключевое — это снимок, а не ссылка на текущее состояние борта. Борт живёт:
перепрошивка, замена мотора, правка настроек — через месяц ссылка описывала бы
уже другой аппарат. Берётся самый свежий бэкап настроек, снятый не позже
момента события; бэкап, сделанный уже после падения (типичный случай — «сняли
дамп, когда разбирались»), в снимок не идёт, и карточка честно говорит об этом.

Чего собрать не удалось — перечислено прямо в блоке: нет бэкапа на тот момент,
не привязан полётник, у борта нет конфигурации с составом. Пустое поле без
такой пометки было бы неотличимо от «данных не было».

Если бэкап или полётник появились позже, нажмите «Пересобрать конфигурацию»
— снимок соберётся заново, но всё равно на момент события. Пересобрать
может только владелец; закрытому событию это не мешает — это добор улик, а не
правка описания.

Снимок едет вместе с событием: его видит тот же круг, что и само событие
(вы — всегда, вошедшие читатели — если событие публичное, участники — если вы
им его расшарили). Видимость карточки борта на это не влияет — то есть,
публикуя событие, вы публикуете и настройки с составом. Происхождение снимка
(из какого бэкапа и какой конфигурации он собран) остаётся только вам.

Чем кончилось

Вывод по событию — отдельное поле, а не запись в обсуждении: комментарий не
найти фильтром и не посчитать в сводке. В блоке «Чем кончилось» владелец
выбирает исход и, если нужно, коротко пишет, что сделал:

Исход Смысл
Починили причина устранена
Заменили деталь помогла замена
Изменили настройки или прошивку помогла правка конфигурации
Больше не повторялось, причина не найдена после вмешательства не воспроизводится
Борт списан восстановление невозможно/нецелесообразно
Причина не найдена, отказ остаётся проблема жива

Последние два — разные вещи, и схлопывать их нельзя: иначе сводка выдаст
нерешённые случаи за решённые. Вывод записывается и у закрытого события —
он как раз тогда и появляется.

Сводка по симптому

Блок «Сопоставимые случаи» на карточке отвечает не «есть ли похожие», а
«что из них следует»: сколько случаев этого симптома вам видно, что у них
общего
в конфигурации, что различается и на каких ветках прошивки
симптом не встречается
. Даже без окончательной причины «все семь случаев на
одной ветке, на предыдущей ни одного» — уже применимый вывод.

Сводка честно говорит о границах данных, а не молчит:

  • случаев с конфигурацией меньше двух — сравнивать не с чем, «общее» не
    считается;
  • часть случаев без конфигурации — они посчитаны отдельно;
  • никто не записал, чем кончилось;
  • данных мало для утверждения об отсутствии — «на этой ветке не
    встречается» звучит, только если события на этой ветке в базе вообще есть, и
    всегда вместе с их числом.

В сводку попадают только события, которые вам и так видны: свои, публичные и
расшаренные вам. Чужие борта, их идентификаторы и состав того, кто событие не
публиковал, в неё не попадают.

Заведение через ИИ-ассистента (MCP)

Событие можно завести не только через форму, но и словами — через Claude,
подключённый к MCP-серверу платформы:
инструмент create_event (борт, фаза полёта, категории, серьёзность,
описание — как в форме). На странице журнала об этом напоминает бейдж
✨ ИИ.

Сопоставление тоже доступно словами: incident_symptom_summary («сравни мои
отказы моторов: что общего в конфигурациях?»), set_incident_resolution
(записать, чем кончилось) и capture_incident_config_snapshot (пересобрать
конфигурацию, если бэкап или полётник появились позже).

Следующие шаги

  • Захват события в поле — чеклист вместо формы на месте
    падения: видео до подъёма, комплектность, голосовая заметка, медиа по времени
  • Ангар — заведите борта, чтобы привязывать события
  • Платформа Skyforge — обзор всех разделов