Сравнение сканирований и SBOM
На странице Сравнение сканов можно сопоставить два успешных SCA-сканирования одного проекта: увидеть сводные метрики обоих сканов и различия в составе SBOM в формате CycloneDX.
Сравниваются сканирования любых версий одного родительского проекта — например, разные ветки, теги или повторные запуски одной версии.
Как открыть сравнение
Сравнение открывается кнопкой Сравнить сканирования:
- на вкладке SCA страницы проекта — в блоке метрик последнего сканирования;
- на странице истории сканирований SCA — в заголовке списка.

Выбор сканирований
- Выберите Версия 1 и Скан 1.
- Выберите Версия 2 и Скан 2.
- Нажмите Сравнить.
В списках сканирований отображаются только успешно завершённые SCA-анализы выбранной версии (по дате начала, от новых к старым).

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

Различия SBOM
Ниже обзора отображается блок Различия SBOM — unified diff нормализованного SBOM в формате CycloneDX v1.6 JSON.
Перед сравнением из SBOM исключаются нестабильные поля (serialNumber, metadata.timestamp), а списки компонентов и связанных объектов упорядочиваются. Это снижает шум от повторной генерации и делает видимыми изменения состава, версий, лицензий и уязвимостей.
По кнопке Экспорт можно скачать файл diff (sbom_diff_<дата скана 1>_vs_<дата скана 2>.diff).

Если нормализованные SBOM совпадают, блок различий будет пустым.
Ограничения
- Сравниваются только успешные SCA-сканирования версий одного проекта.
- Diff строится по пересобранному из результатов анализа SBOM, а не по исходному загруженному файлу.
- В интерфейсе для diff используется формат CycloneDX v1.6 JSON.
- Сравнение произвольных SBOM без привязки к сканам проекта в платформе недоступно — для этого используйте импорт SBOM в CLI-проект с последующим сравнением полученных сканов или сравнение BOM в IDE.
