Поняття

Індекс здоров'я

Як inspect.software обчислює індекс здоров'я відкритого коду 1–100 — компоненти, метрики, зважені категорії та правила для відсутніх даних.

Методологія v1.13.0Оновлено 2026-07-13

Кожен репозиторій у публічному реєстрі має індекс здоров'я: єдине ціле число від 1 до 100, що підсумовує публічно видиму практику інженерії, супроводу, безпеки та врядування. Індекс існує для того, щоб бібліотеку можна було з одного погляду порівняти з альтернативами — але він є вершиною повністю прозорої ієрархії, а не чорною скринькою.

Сигнали, а не гарантії. Високий індекс відображає публічно видиму добру практику. Це не аудит коду й не гарантія безпеки — див. як читати результати.

Трирівнева ієрархія

Індекс згортається через три задокументовані рівні:

  1. Компоненти — окремі спостережувані факти (файл ліцензії існує, останній реліз вийшов 40 днів тому, бас-фактор дорівнює 3). Кожен компонент має фіксовану вагу всередині своєї метрики.
  2. Метрики — зважені суми компонентів, кожна — ціле число в діапазоні 1–100. Приклади: активність розробки, стійкість мейнтейнерів, стан безпеки.
  3. Категорії — зважені середні своїх метрик, також у діапазоні 1–100. П'ять зважених категорій: Життєздатність, Спільнота та впровадження, Сталість та врядування, Інженерна якість та Безпека. Шоста, Готовність до ШІ, є незалежним бейджем із вагою 0.

Загальний індекс здоров'я — це зважене середнє доступних категорій:

Ефективна вага метрики в загальному індексі — це вага категорії × вага в межах категорії. Кожен звіт показує цю цифру на картці кожної метрики, і кожне опубліковане значення відповідає одному з п'яти діапазонів рейтингу.

Відсутні дані — це ніколи не нуль

Якщо базові дані компонента недоступні — реєстр не публікує цифр завантажень, список контриб'юторів неможливо вибрати — компонент виключається, а ваги решти перенормовуються. Те саме правило діє рівнем вище: метрика без даних стає null, і її категорія перерозподіляє вагу; категорія без жодної оцінюваної метрики випадає із загального індексу.

Це правило є осердям справедливості. Проєкт вимірюється лише за тим, що справді можна спостерігати, а відсутність доказів звітується як відсутність — поле note метрики фіксує кожну перенормалізацію, тож читач завжди знає, що було виміряно, а що ні.

Як читати звіт

  • Читайте профіль, а не лише число. 74 на збалансованих категоріях — це інша пропозиція, ніж 74, що маскує значення Безпеки 25. Радарна діаграма звіту робить профілі з піками та проваллями видимими одразу.
  • Перевіряйте діапазони. Значення відповідають п'яти стандартизованим діапазонам від excellent до critical; пороги діапазонів є частиною версіонованої методології.
  • Переобчислюйте будь-що. Кожна метрика відтворює у звіті свої вхідні дані та бали за компонентами, тож будь-яке опубліковане значення можна верифікувати вручну за розділом data JSON-звіту.

Версіонування

Формули, ваги та пороги діапазонів версіонуються як єдине ціле. Будь-яка зміна підвищує версію метрик, зафіксовану в кожному звіті, а повна історія публічна — див. версії методології. Частини методології можна вимикати для окремого сканування; звіт тоді документує, що саме було вимкнено — див. конфігурацію сканування.