Інженерні практики вимірюють базову інженерну гігієну: інфраструктуру, що робить зміни безпечними. Безперервна інтеграція та автоматизований набір тестів — дві практики з найсильніше задокументованим зв'язком зі сталою якістю, і разом вони несуть більшу частину цієї метрики.
- Категорія: Інженерна якість (60% у межах категорії)
- Вага в загальному індексі: 12% — друга за вагою метрика репозиторію
- Ключ метрики:
engineering_practices
Як обчислюється значення
Зважений контрольний список видимих доказів практик:
| Компонент | Вага | Підтвердження |
|---|---|---|
| Процеси CI | 24 | наявна конфігурація безперервної інтеграції |
| Наявні тести | 24 | у репозиторії існує набір тестів |
| Конфігурація лінтера | 16 | закомічена конфігурація лінтингу/форматування |
| Pre-commit-хуки | 9.6 | наявна конфігурація pre-commit |
| .editorconfig | 6.4 | закомічені редакторські домовленості |
| OpenSSF Scorecard: CI-Tests | 20 | результат Scorecard 0–10, масштабований до 20 балів |
Чому саме ці п'ять
- CI разом із тестами утворюють цикл верифікації: кожна зміна проганяється через набір тестів до того, як потрапить у код. Їхня сукупна вага 60 відображає те, що жодна інша видима практика його не замінює.
- Лінтинг механічно забезпечує послідовність, зберігаючи увагу рецензентів для суті.
- Pre-commit-хуки та
.editorconfig— менші сигнали проєкту, що інвестував в ергономіку контриб'юторів: зміни надходять уже перевіреними й однаково відформатованими незалежно від того, хто їх написав.
Ті самі докази живлять цикл верифікації для ШІ: інфраструктура, що дає людині-контриб'ютору змогу верифікувати зміну, — це саме те, що дає змогу верифікувати її ШІ-агентові для кодування.
CI-Tests від Scorecard — спільне підтвердження: на відміну від локальних перевірок наявності, воно запитує, чи перевірялися злиті pull request-и в CI. Воно також залишається повноцінним компонентом Безпеки. Докази Scorecard зі статусом n/a або недоступні виключаються.
Як читати результат
- Це сигнали наявності — вони підтверджують, що риштування існує, а не наскільки воно суворе. Відсотки покриття та частка успішних проходжень CI — у плані розвитку методології.
- Відсутній набір тестів — один із найнадійніших негативних сигналів у всій методології; дуже мало дисциплінованих проєктів його не мають.
Як покращити значення
- Додати процес CI, що запускає набір тестів на кожен push і pull request — два найвагоміші компоненти, часто досяжні за один вечір.
- Закомітити конфігурацію лінтера та форматера, яку проєкт уже використовує локально.
- Додати конфігурацію pre-commit та
.editorconfigдля решти балів.
Дивіться також: документація · цикл верифікації для ШІ