Объединённая цифровая платформа

«Цифровое небо 2»

Наблюдение, контроль и управление инфраструктурой беспилотных авиационных систем.

© 2026 ОЦП «Цифровое небо 2» — разработчик ООО «Глория Эйр».

Версия "0.24.88"

Сессия 24 авг.: FP форма/список (локация, вложения, согласование, numpad, list-колонки); превью карты SPA+CSP (0.24.84–85); «Запланировать» без экипажа (диалог); PDF — все вложения + LibreOffice DOC/DOCX (Dockerfile libreoffice-writer, пересборка образа); профиль (crop, 2-col, учётная запись, popup width 0.735, square avatar); админ пользователи (2×2, автологин lowercase); карта диспетчера «Экипаж»; инструктажи БВС tiles; Ремонт пустая таблица; уведомления; visibility Заданий; RBAC 0010; rules: field-processing-form-invariants, map-provider-branding, typography-etalon.

Версия "0.24.56"

Профиль: аватар (stack+initials+onerror) в info-popup; УЗ — шрифты как «Основное»; токены typography etalon (info/FP forms).

Версия "0.24.55"

Типографика info/profile: эталон «Основное»; аватар stack+CSS; УЗ labels = crew-field.

Версия "0.24.54"

Профиль: шестерёнка+аватар — одна кнопка меню; crop поверх info-popup; «Очистить фото» под аватаром; вкладка УЗ — bold login + FP inputs + генератор пароля.

Версия "0.24.52"

FP «Смеси и сроки»: автозаполнение «Срок на обработку (дней)» как inclusive (to−from)+1 при выборе обеих дат начала.

Версия "0.24.51"

FP Локация: Широта/Долгота в value-column .fp-row (не full-bleed), выравнивание с «Наименование локации».

Версия "0.24.50"

Профиль: шестерёнка+аватар — одна кнопка меню; crop поверх info-popup; «Очистить фото» под аватаром; вкладка УЗ — bold login + FP inputs + генератор пароля.

Версия "0.24.49"

FP не-черновик: вкладки locked кроме Вложений/Согласования; add attach + comment; saved delete blocked; audit comment_update / attachment_add.

Версия "0.24.48"

Колокольчик: «Прочитать всё», eye mark-read, красная точка только при unread.

Версия "0.24.47"

FP «Вложения»: блок «Комментарии» под drop zone (flex 3/1), поле comment.

Версия "0.24.46"

FP «Локация»: подписи Широта/Долгота над inputs; одна подсказка справа от долготы; пустая «Ссылка на карту» без тире.

Версия "0.24.45"

FP вкладка «Локация»: lat/lon на всю ширину колонки значений; «Ссылка на карту» без пустого input (тире / кликабельная ссылка).

Версия "0.24.44"

Шапка «Действия»: edit/view/info/open — невидимые спейсеры (выравнивание с рядами); bulk delete/PDF/workflow без изменений.

Версия "0.24.43"

FP список: колонка «Создан»; combobox clear/chevron; черновик auto-width; подсказки после очистки; вкладка Локация (широта+долгота, ссылка на карту).

Версия "0.24.42"

FP «Согласование»: сплошная пунктирная линия карты этапов через utility/divider ряды (без разрывов).

Версия "0.24.41"

Список «Обработка полей»: колонка «Локация», «Тип» после неё; добавлены «Дата начала», «Культура», площадь, норма вылива, красная зона, РЭБ.

Версия "0.24.40"

Чекбокс выбора строки в «Действия» не открывает форму: isEtalonBulkUiTarget + stopImmediatePropagation.

Версия "0.24.39"

Таблицы etalon: иконки «Действия» в шапке всегда видны (0 строк); шапка колонки «Действия» выровнена влево.

Версия "0.24.38"

FP форма заявки: «Широта» / «Долгота» — number pad как «Площадь обработки» (keyboard, compact width); блокировка при выбранном поле.

Версия "0.24.37"

FP форма заявки: «Сохранить черновик» шириной как «Сохранить» (120px); «Закрыть» в primary-цветах как Save.

Версия "0.24.36"

FP форма заявки: подсказки под полями резервируют высоту строки — без вертикального скачка при появлении/скрытии.

Версия "0.24.35"

Профиль (шестерёнка): info-popup chrome, вкладки «Основное» / «Учётная запись»; фото + смена пароля; без «Доступы».

Версия "0.23.34"

Культура: дефолтная иконка — колос пшеницы (меню + карточки/таблица/info), без person.

Версия "0.23.33"

Контрагенты: дефолтная иконка — офисное здание (меню + аватар списка/info), без person/search и handshake.

Версия "0.23.32"

FP «Согласование»: заголовок «Ответственные»; без thead у таблицы; разделитель перед «История»; stage rail — равномерные точки (radial-gradient).

Версия "0.23.31"

Таблицы: чекбокс и массовые действия в шапке колонки «Действия» (etalon / renderEtalonTable).

Версия "0.23.29"

FP форма: хозяйство/поле + кнопка в одном ряду; без подсказок у автополей; placeholders combobox; без заголовка «Ответственные»; stage rail dotted.

Версия "0.23.27"

FP заявка: дата документа locked; сроки ≥ сегодня; срок (дней) numpad; combobox хозяйство/поле/экипаж; «Поле обработки»*; подсказки.

Версия "0.23.26"

FP «Согласование»: ответственные — эталон-таблица (Этап / ФИО); «Создал заявку», «Запланировал (ОПП)».

Версия "0.23.25"

FP форма → «Вложения»: кнопка «+ Добавить вложения» в одном ряду с заголовком справа; одна полноразмерная drop-zone без вложенной рамки.

Версия "0.23.24"

FP «Культура»: площадь и норма вылива — min: 0 на number pad; отрицательное при выходе из поля → 0.

Версия "0.23.23"

Info-popup: убрана вкладка «Комплектация» у Типы ТМЦ / ТМЦ / Камеры / Культура / Типы БВС; Хозяйства → «Поля обработки» — «Название поля» min 2.5× (500px), «Адрес / локация» — leftover fill.

Версия "0.23.22"

FP форма → «Культура»: фильтр комбобокса (partial match, без free-text); numpad площади/нормы — калькуляторная сетка с tall +/↵.

Версия "0.23.21"

Справочники → Культура: исправлен откат на «Должности» (cultures добавлен в allowlist embed-подвкладок).

Версия "0.23.18"

Карта диспетчера: кнопки «Назад»/«Вперёд» в окне информации об объекте (история только для переходов внутри панели).

Версия "0.23.17"

Map object info → «Экипаж»: removed duplicate vehicle plate/mini-card; MRK complektation matches table (БВС/генератор/АКБ) with compact/full toggle.

Версия "0.23.16"

FP list: after «Обновлено» — «Тип» (treatment types); after «Поле / локация» — actor columns like Tasks (Менеджер / Создал / Коммерческий / Принял / Закрыл).

Версия "0.23.15"

Employees table: «Состав» min 200px / «Комплектация» min 100px via allowWidthOverride (content td paints override so Complekt CSS 400px no longer wins).

Версия "0.23.11"

Header/admin avatars: FIO initials (КА) from linked employee, not System Admin label; header avatar 90% size.

Версия "0.23.10"

Employees table: «Фото» column (avatar); «Состав» min 200px + grouping switch in header; «Комплектация» min 100px override.

Версия "0.17.25"

Map label clusters: compact-only overlap (exclude expanded details); vertical seps between summary buckets; hover/select z-index front; cache label-cluster-3.

Версия "0.17.24"

Cluster summary: buckets = type × connection × motion; status as icons only ([conn][motion][type] ×N); cache label-cluster-2.

Версия "0.17.23"

Map label clusters: atomic detach (no flash under cluster on poll); clear stuck --expanded on remount; cache label-cluster-1.

Версия "0.17.22"

Map label clustering: visual overlap ≥ map.markers.cluster.overlap_percent (default 15%, intersection/min(A,B)); centroid pointer; rebuild on zoom/pan.

Версия "0.17.20"

Map label expand: coords+copy on motion row; one gray sep before compact label; copy click fixed (ymaps + clipboard fallback); cache label-expand-4.

Версия "0.17.19"

Dispatch map labels: recreate with docker-compose.dev.yml bind so live JS serves expand hints (pills + «Отслеживание» + gray sep) for cars and UAVs; cache label-expand-3.

Версия "0.17.18"

Map labels (vehicles + UAV): hover/select expand; status pills; follow checkbox; coords link+copy; gray separator.

Версия "0.17.17"

Map labels: compact by default; expand details (link+time, lat/lon, gray sep) only on hover/selection — never always-on.

Версия "0.17.15"

UAV object-info card schematic restyled to match car palette (thick rounded X-arms, pale fill, medium-blue outline, darker rotors).

Версия "0.17.8"

TABLE etalon: «Комплектация» min-width 400px (--ui-table-col-min-complekt) in content + etalon; Название/Статус floors via --ui-table-col-min-name 200px.

Версия "0.17.5"

Fix mojibake in shell/header: restore UTF-8 in config.json + Docker overlay after version-bump re-encoding; guard test test_config_utf8_encoding.py.

Версия "0.16.1614"

Column-header template markers on etalon tables; restore Data bulk Export/Import coexistence with markers toggle after SPA linker remount.

Версия "0.16.1611"

Dev markers toggle: compact legend (sample + RU labels) appears next to «Маркеры шаблонов» when ON; hidden when OFF.

Версия "0.16.1610"

Dev template/override markers UI-wide: three kinds + admin-tools toggle (default OFF, administrator/system_admin); Registry in docs/DEV_TEMPLATE_OVERRIDE_MARKERS.md.

Версия "0.16.1609"

Admin catalog JSON IO restored: both Export + Import; bulk package data-catalogs (Справочники + Экипажи + Автопарк + БВС). Docs ADMIN_TOOLS.md.

Версия "0.16.1608"

Dev template/override markers: doc + Registry docs/DEV_TEMPLATE_OVERRIDE_MARKERS.md; stub shared/devOverrideMarkers.js + .dev-override-marker* CSS (inactive, no placements).

Версия "0.16.1606"

Entity info popup: left media column sticky / non-scrolling; only .entity-related-popover-body scrolls. Info-block Иконка/Тип hug max 200px; Название leftover; row-click hint; removed «Состав» parent helper line.

Версия "0.16.1605"

Info-block tables: Иконка/Тип hug content max 200px (fix: no longer fp-col-data 100px floor); Название leftover fill; row-click hint «открыть блок информации карточки»; removed «Состав» subtitle on Основное.

Версия "0.16.1576"

Данные → Отряды / Список экипажей: иконка меню = default card (группа людей, crewListIconHtml); раздел «Состав экипажа» переименован в «Комплектация экипажей».

Версия "0.16.1575"

Данные → БВС: таблица — колонки «Статус-иконки» + «Статус» (liveStatus) как X-Keeper устройства; связь/движение из X-Keeper; lifecycle-колонка → «Состояние».

Версия "0.16.1574"

Fix: «Отряды» — renderSquadsCards rowMapper: const members = squad.members || [] (ReferenceError ломал таблицу).

Версия "0.16.1573"

TABLE etalon: «Название» / «Телефон» — body left (isLeftTextColumn); «Название» min 200px via isPrimaryNameColumn.

Версия "0.16.1572"

TABLE etalon: comp-list — пустой заголовок UI (без текста; tooltip на <th>); Комплектация min 200px max 400px из шаблона.

Версия "0.16.1571"

TABLE etalon: comp-list — colgroup/tfoot на etalonColumns (fix смещения col → min 200px у пустой колонки); label «Список комплектации».

Версия "0.16.1570"

TABLE etalon: ФИО/Сотрудник/Ответственный — min 150px max 200px (fp-col-person-name); «Название» — min 200px (fp-col-name).

Версия "0.16.1569"

TABLE etalon: «Название» — body center; ФИО/Сотрудник/Ответственный — body left (engine isCenteredTitleColumn / isLeftPersonNameColumn).

Версия "0.16.1568"

TABLE etalon: comp-list — fixed width 1× action icon (26px), padding-x 0; col/td/th + colgroup via --ui-table-action-btn.

Версия "0.16.1567"

TABLE etalon: comp-list «Список комплектации» — иконка clipboard как action icon (26×26); Состав/Комплектация left; comp-list center; пустой header без toggle.

Версия "0.16.1566"

Единая модель документов (этапы 0–5): декларативный реестр процессов, права на переходы, available_actions, unified document_audit, шапка documents, маршрут FP→Задания, база SR/PT.

Версия "0.16.1565"

Контрагенты перенесены из «Документы» в «Данные → Справочники»; URL /lists/contractors (редirect с /documents/contractors); права page:data-contractors / data:contractors:*.

Версия "0.16.1564"

Заявки (Обработка полей, Ремонт и обслуживание, Задания, Авиапроисшествия, ДТП): list-таблицы на едином etalon — liveStatus + statusTextBadgeHtml, без tdClass/width:NN%; audit «Детали» вместо «Статус»; CSS audit без % ширин.

Версия "0.16.1563"

StarLine / X-Keeper устройства: таблицы — колонка «Комментарии» (leftover fill); Actions ~92px / Status-icons ~64px как у автомобилей; без лишнего type-icon в status-icons.

Версия "0.16.1561"

Table etalon: Комплектация max 400px; «Статус-текст» max 200px; Состав без compact/full toggle (always compact ×N); выравнивание tbody — default center, plain-text колонки (text:true / comments) left.

Версия "0.16.1560"

Единый table etalon для Данные + Заявки: все list-таблицы через catalogViewMode.js renderEtalonTable; с Заявок сняты width:"NN%" (Обработка полей, Производство, Документы, авиа, ДТП); per-row height (Data rule), не stretch.

Версия "0.16.1559"

Данные → таблицы: Комплектация min-width 200px (--ui-table-col-min-complekt); колонка live-status в UI — «Статус» (автомобили, StarLine, X-Keeper); sortKey liveStatus без изменений.

Версия "0.16.1558"

Данные: колонки «Быстрый список» (чекбокс), МРК «Статус» сразу после статус-иконок с fp-badge, автомобили/X-Keeper/StarLine — «Статус-текст» и иконка движения; у сотрудников убрана иконка подвала; StarLine: объявлен devices.

Версия "0.16.1557"

Данные → таблицы: default min-width колонок 100px (--ui-table-col-min-default); исключения — Действия (3×), Статус-иконки (2×), Комментарии (последняя, leftover до края pane). Состав/Комплектация min 100px; Комплектация max 7×. Добавлены «Комментарии» в Экипажи и Контрагенты.

Версия "0.16.1556"

Данные → таблицы: etalon column sizing — auto width/height; default min 1× icon (26px); Состав min 3× (~82px); Комплектация min 3× max 7× (~194px) с wrap; убраны per-section width: "NN%".

Данные → таблицы: колонка «Действие» shrink-to-content (width:1% + min 3 иконки), без растягивания на leftover %.

Данные → Типы БВС/БВС: таблицы унифицированы под etalon (sticky «Действие»/«Статус-иконки» и sheet-fill).

Документы → Контрагенты: колонка «№» убрана; клик по строке открывает info-popup; «Ответственный» — список сотрудников; недостающие ФИО из Excel созданы как «Менеджер».

Состав экипажа: карточки сотрудников в пикере — только ФИО, должность и один экипаж; у списков экипажей — в каком экипаже сейчас список.

История хозяйства: пустые строки «Система / Изменение» больше не пишутся (no-op PATCH карточки без диффа полей) и скрыты в уже сохранённом журнале.

Состав экипажа: убрана подсказка «Если выбран список экипажей, вкладка «Сотрудники» игнорируется.»

Редактор области/поля на карте: высота окна 750→600px (−20%) за счёт комментария 290→140px; POI/точка назначения без изменений; ширина 450px.

Карта хозяйства: адрес поля при create/переносе/ресайзе; тулбар edit/resize как контекстное меню; ресайз не клонирует объект.

Окна редактора объектов на карте диспетчера (область / POI / точка назначения): минимум ×1.5, лишнее место — в комментарии.

Вкладка «Поля обработки» в editor хозяйства: Дата → Обновлено → Название поля → Адрес; даты по содержимому, имя/адрес поровну с переносом.

История хозяйства: текст во всех колонках по вертикали по центру строки.

Состав экипажа: на «Общее» без марки/VIN/года/цвета (они на «Документы»); вкладка «Ответственный»; в таблице «Гос. номер», «Группа» и «Статус» по центру. Автомобили без этих сдвигов.

Состав экипажа: заголовки «Редактирование / Добавление карточки состава экипажа»; вкладка StarLine только у автомобиля.

История хозяйства: колонки «Дата / время» и «Действие» по содержимому, «Сотрудник» шире с переносом. Удаление поля на карте хозяйства откладывается до «Сохранить»; «Отмена» восстанавливает.