Публічний реєстр
Звіт про здоров'я програмного забезпеченнясхема 0.26.0 · метрики 1.13.0 · 2026-07-22 00:12 UTC

relevance / rcov

The new home of RCov on GitHub

RubyВласна ліцензія★ 407 зірок⑂ 60 форківаномалія ростуз трав. 2009 р.Переглянути на GitHub ↗

relevance/rcov має індекс здоров’я 20 зі 100, що відповідає смузі «Критичний». Найвищий показник — Sustainability & Governance (56/100), найнижчий — Vitality (1/100). Останнє оновлення було 5166 днів тому. Більшість нещодавньої роботи виконує один учасник.

20
загалом / 100
Критичний

Індекс здоров'я програмного забезпечення

Метрики згруповано у зважені категорії на шкалі 1–100. Загальна оцінка починається як їхнє середнє; коли публічні дані активують Політику юрисдикцій високого ризику, рейтинг коригується й отримує верхню межу 49 («Під ризиком»). Готовність до ШІ не входить до індексу.

20
Відмінний85-100Зразковий; відповідає практично всім перевіреним критеріям
Добрий70-84Здоровий; незначні прогалини
Помірний50-69Прийнятний, але з помітними прогалинами; рекомендовано перевірку
У зоні ризику30-49Суттєві слабкі місця; впровадження потребує обережності
Критичний1-29Серйозні проблеми (покинутий, єдиний мейнтейнер, без базової гігієни)
ЖиттєздатністьСпільнота тавпровадженняСталість таврядуванняІнженернаякістьБезпекаГотовність доШІ

Профіль оцінок

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

Abandonment Policy applies a 60% multiplier to weighted overall health and gives it a ceiling of 49.

Власність

RelevanceОрганізація
8 підписників84 публічні репозиторіїз груд. 2011 р.

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

Метрики за категоріями

Життєздатність

Чи живий проєкт — чи пишеться код і чи виходять релізи?

1Критичний · 22% загального індексу
Як обчислюється оцінка
0/36Свіжість push — останній push 5 166 дн. тому
0/36Ритм комітів — 0/52 тижнів із комітами
0/18Обсяг комітів — 0 комітів за останній рік
0/10OpenSSF Scorecard: Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Використані вхідні дані
commits_last_year0
human_commit_share1
days_since_last_push5 166
active_weeks_last_year0
Як обчислюється оцінка
0/27Випускає релізи — релізів не опубліковано
0/36Свіжість релізів — релізів немає
0/27Ритм релізів — релізів немає
0/10OpenSSF Scorecard: Signed-Releases — немає даних
Використані вхідні дані
releases_count0
Виключено з оцінювання (немає даних або не застосовно): OpenSSF Scorecard: Signed-Releases. Залишкові ваги перенормовано.

Спільнота та впровадження

Чи має проєкт користувачів, завантаження, увагу та влаштовані умови для контриб’юторів?

34У зоні ризику · 18% загального індексу
Як обчислюється оцінка
12.7/60Зірки — 407 зірок, дисконтовано за неорганічний ріст: 191 зірок за 1 дн. від 2009-05-08, 191× до власного денного базового рівня репозиторію
4.4/25Форки — 60 форків, дисконтовано за неорганічний ріст: 191 зірок за 1 дн. від 2009-05-08, 191× до власного денного базового рівня репозиторію
8/15Спостерігачі — 29 спостерігачів
Використані вхідні дані
forks60
stars407
watchers29
growth_statehighly_anomalous
growth_signalsacquisition_burst, fork_divergence, missing_decay, no_released_substance
growth_windows2009-05-08/2009-05-08
growth_peak_days1
growth_factor_pct30
growth_peak_stars191
growth_peak_window2009-05-08
growth_peak_multiple191
growth_top_days_share0,489
growth_baseline_per_day1
growth_history_completeтак
Політика неорганічного росту дисконтує компоненти зірок і форків на 70%. Знахідка описує час публічних подій зі зірками та форками; вона не встановлює, що увагу купували, ані що до цього причетні мейнтейнери.

Здоров'я спільноти

44У зоні ризику
Як обчислюється оцінка
22.5/22.5README
16.9/22.5Ліцензія — файл ліцензії наявний, не є визнаною ліцензією
0/18Настанови CONTRIBUTING
0/13.5Кодекс поведінки
0/7.2Шаблон issue
0/6.3Шаблон PR
Використані вхідні дані
has_readmeтак
has_licenseтак
has_contributingні
has_issue_templateні
has_code_of_conductні
has_pull_request_templateні

Сталість та врядування

Чи переживе проєкт своїх людей — бас-фактор, реактивність, хто за ним стоїть і як супроводжуються пакети?

56Помірний · 24% загального індексу
Як обчислюється оцінка
9/54Бас-фактор — на 1 контриб’ютор(ів) припадає половина всіх комітів
7.9/22.5Розподіл комітів — головний контриб’ютор — автор 65% комітів
13.5/13.5Широта контриб’юторів — 15 контриб’юторів
10/10OpenSSF Scorecard: Contributors — project has 7 contributing companies or organizations
Використані вхідні дані
bus_factor1
contributors_sampled15
top_contributor_share0,649
Як обчислюється оцінка
38.9/46.8Вирішення issue — закрито 83% issue
28.7/38.3Прийняття PR — злито 6/8 вирішених PR
1.5/15OpenSSF Scorecard: Code-Review — Found 3/29 approved changesets -- score normalized to 1
Використані вхідні дані
merged_prs6
open_issues16
closed_issues80
issue_closed_ratio0,833
closed_unmerged_prs2
Як обчислюється оцінка
30/30Підтримка власника — у власності організації
0/20Верифікований домен
6.9/25Охоплення власника — 8 підписників у relevance
25/25Послужний список — 84 публічних репозиторіїв, вік облікового запису ~14 р.
Використані вхідні дані
followers8
owner_typeOrganization
is_verified
owner_loginrelevance
public_repos84
account_age_days5 327

Інженерна якість

Чи наявні базові інженерні практики та документація?

50Помірний · 20% загального індексу
Як обчислюється оцінка
0/24Процеси CI
24/24Наявні тести
0/16Конфігурація лінтера
0/9.6Pre-commit-хуки
0/6.4.editorconfig
0/20OpenSSF Scorecard: CI-Tests — 0 out of 3 merged PRs checked by a CI test -- score normalized to 0
Використані вхідні дані
has_ciні
has_testsтак
has_editorconfigні
has_linter_configні
has_precommit_configні

Документація

90Відмінний
Як обчислюється оцінка
30/30README
25/25Каталог документації
15/15Сайт документації / домашня сторінка — https://github.com/relevance/rcov
10/10Опис репозиторію
0/10Теми
10/10Wiki
Використані вхідні дані
topics
has_wikiтак
homepagehttps://github.com/relevance/rcov
has_readmeтак
has_docs_dirтак
has_descriptionтак

Безпека

Чи міцні видимі практики безпеки й ланцюга постачання, без непослабленої пов’язаності з юрисдикціями високого ризику?

29Критичний · 16% загального індексу

Стан безпеки

29Критичний
Як обчислюється оцінка
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
0/2.5CI-Tests — 0 out of 3 merged PRs checked by a CI test -- score normalized to 0
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0.8/7.5Code-Review — Found 3/29 approved changesets -- score normalized to 1
2.5/2.5Contributors — project has 7 contributing companies or organizations
0/10Dangerous-Workflow — немає даних
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.2/2.5Ліцензія — license file detected
0/7.5Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
0/5Packaging — немає даних
0/5Pinned-Dependencies — немає даних
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — немає даних
0/7.5Token-Permissions — немає даних
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Використані вхідні дані
sourceopenssf_scorecard
checks_evaluated13
scorecard_versionv5.5.0
checks_inconclusive5
scorecard_aggregate2,9
Виключено з оцінювання (немає даних або не застосовно): dangerous_workflow, packaging, pinned_dependencies, signed_releases, token_permissions. Залишкові ваги перенормовано.

Готовність до ШІ

Наскільки репозиторій оснащений для розробки та супроводу за участі ШІ-агентів? Незалежний, експериментальний бейдж — вага 0.0, тож він подається окремо і не впливає на загальний індекс здоров'я.

25Критичний · 0% загального індексу
Як обчислюється оцінка
0/45Інструкції для агентів — немає CLAUDE.md / AGENTS.md / правил редактора
0/15Машиночитана документація (llms.txt)
11.2/40Читабельна історія комітів — намір зазначено у 21 з 100 людських комітів (структурований заголовок або пояснювальний текст)
Використані вхідні дані
has_llms_txtні
legible_history_share0,21
agent_instruction_files
agent_instruction_max_bytes
Як обчислюється оцінка
0/18Розгортання однією командою
22/22Автоматизовані тести
0/11Конфігурація лінтера / форматера
0/11Статична перевірка типів
0/10Відтворюване середовище
0/10Підтверджена практика роботи з агентами — серед останніх 100 комітів немає створених агентом
0/8Автоматизоване супроводження — автоматичних оновлень залежностей не виявлено
0/10OpenSSF Scorecard: Pinned-Dependencies — немає даних
Використані вхідні дані
has_nixні
has_testsтак
lockfiles
has_dockerfileні
typed_languageні
bootstrap_files
has_devcontainerні
has_linter_configні
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
Виключено з оцінювання (немає даних або не застосовно): OpenSSF Scorecard: Pinned-Dependencies. Залишкові ваги перенормовано.
Як обчислюється оцінка
0/45Типізований код — Ruby без конфігурації перевірки типів
55/55Керовані розміри файлів — 0/47 файлів вихідного коду понад 60 КБ
Використані вхідні дані
primary_languageRuby
largest_source_bytes57 254
source_files_sampled47
oversized_source_files0

Ключові факти

407зірок GitHub
15контриб'юторів
0комітів за останні 12 місяців
5 166днів від останнього пушу
0релізів
1бас-фактор
16відкритих issue
пакетних екосистем

Попередження щодо збору даних

  • No resolved dependencies carried a version and a supported ecosystem

Докладніше

Історія зірок і форків 407 ★ / 60 ⇿
407Зірки
60Форки

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

Затінена смуга позначає сплеск, підтверджений Політикою неорганічного росту. Як оцінюється автентичність росту

0100200300400500407581932008-062016-102025-02

Кожна точка охоплює 16 днів.

OpenSSF Scorecard 2.9 / 10
2.9сукупно

Незалежна, не прив'язана до інструментів оцінка безпеки від відкритого проєкту OpenSSF Scorecard. Кожна перевірка винагороджує практику безпеки, а не інструмент конкретного постачальника. Перевірки, які Scorecard не зміг визначити, позначено н/д і виключено з оцінки безпеки (вони ніколи не зараховуються як нуль).Scorecard v5.5.0 · 2026-07-22 00:12 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
0CI-Tests0 out of 3 merged PRs checked by a CI test -- score normalized to 0
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
1Code-ReviewFound 3/29 approved changesets -- score normalized to 1
10Contributorsproject has 7 contributing companies or organizations
н/дDangerous-Workflowno workflows found
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
9Licenselicense file detected
0Maintained0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
н/дPackagingpackaging workflow not detected
н/дPinned-Dependenciesno dependencies found
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
н/дSigned-Releasesno releases found
н/дToken-PermissionsNo tokens found
10Vulnerabilities0 existing vulnerabilities detected
Усі залежності 1

Повний розв'язаний набір залежностей із графа залежностей GitHub: 0 прямих і 1 непрямих (транзитивних) пакетів. Транзитивне замикання є повним, коли в репозиторії закомічено lockfile.

РеєстрПакетВерсіяЗв'язок
RubyGemsrakeнепряма
Сповіщення про залежності не оцінено

Звірка сповіщень не відбулася для цього звіту: No resolved dependencies carried a version and a supported ecosystem

Звіт у форматі JSON машиночитний
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 909,
      "has_wiki": true,
      "homepage": "https://github.com/relevance/rcov",
      "languages": {
        "C": 12951,
        "Java": 12347,
        "Ruby": 131457,
        "Emacs Lisp": 5062,
        "JavaScript": 1122,
        "Vim Script": 914
      },
      "pushed_at": "2012-05-29T05:15:09Z",
      "created_at": "2009-05-08T13:24:03Z",
      "owner_type": "Organization",
      "updated_at": "2026-03-05T16:10:47Z",
      "description": "The new home of RCov on GitHub",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "master",
      "license_spdx_raw": "NOASSERTION",
      "primary_language": "Ruby",
      "significant_languages": [
        "Ruby"
      ]
    },
    "owner": {
      "blog": "http://thinkrelevance.com/",
      "name": "Relevance",
      "type": "Organization",
      "login": "relevance",
      "company": null,
      "location": null,
      "followers": 8,
      "avatar_url": "https://avatars.githubusercontent.com/u/1276170?v=4",
      "created_at": "2011-12-20T21:03:19Z",
      "is_verified": null,
      "public_repos": 84,
      "account_age_days": 5327
    },
    "license": {
      "state": "custom",
      "spdx_id": null,
      "raw_spdx": "NOASSERTION",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [],
      "recent_commits": [
        {
          "oid": "66a5bf5d76c4312a62862a86e048731203669961",
          "body": "Issue #93: Right-justify line numbers",
          "is_bot": false,
          "headline": "Merge pull request #94 from wapcaplet/93-right-align-line-numbers",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-03-09T21:24:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d1eca64df171a929bace0237e0fff637e29e344",
          "body": "This commit causes the line numbers in HTML source listings to be\nright-justified, allowing the code indentation to appear more\nconsistent.",
          "is_bot": false,
          "headline": "Issue #93: Right-justify line numbers",
          "author_name": "Eric Pierce",
          "author_login": "wapcaplet",
          "committed_at": "2012-03-09T20:09:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c96ab56895bb86200afd9f93e5b0cc0c615563d3",
          "body": null,
          "is_bot": false,
          "headline": "add travis build status to readme",
          "author_name": "Gabriel Horner",
          "author_login": null,
          "committed_at": "2012-02-24T23:29:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ee1c8bde4235c51b6bbca66db3c020906fdf078a",
          "body": null,
          "is_bot": false,
          "headline": "update gemspec with rake and use gemspec for travis",
          "author_name": "Gabriel Horner",
          "author_login": "cldwalker",
          "committed_at": "2012-02-11T00:18:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e87696101cd1a4565f42a362f8b852b5832f8ac8",
          "body": null,
          "is_bot": false,
          "headline": "add travis config",
          "author_name": "Gabriel Horner",
          "author_login": "cldwalker",
          "committed_at": "2012-02-11T00:07:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e7c1821b50bef0f933ef857278bf82e9c24638e4",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:relevance/rcov",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-21T05:48:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dea676c0b45f6d09b5ad99d3b3d6069018d35728",
          "body": null,
          "is_bot": false,
          "headline": "Major cleanup. Temporarily breaking JRuby support",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-21T05:48:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f01265bef12f893ffd99bc1be270b7530241bae",
          "body": "Custom formatters",
          "is_bot": false,
          "headline": "Merge pull request #67 from smangelsdorf/custom_formatters",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-19T23:45:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dcb920fab48188a085b67970a2ebad6e08272bae",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:relevance/rcov",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-19T19:47:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b119746a386d01aae20ed0a3fa5225ee626e3b70",
          "body": null,
          "is_bot": false,
          "headline": "Updating README",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-19T19:47:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "60969b0656c79c49b2894ed864a32ebefed61371",
          "body": "Faster filtering",
          "is_bot": false,
          "headline": "Merge pull request #68 from wapcaplet/faster-filtering",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-19T04:31:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "087092cc62a5ac41da2f5cc1613b3b6157387d6f",
          "body": null,
          "is_bot": false,
          "headline": "Adding messages around Ruby 1.9",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-19T03:33:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d8973a9ec0532df8a02279e51059dcfc435f562",
          "body": null,
          "is_bot": false,
          "headline": "Fixes #78",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-17T21:52:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6cf40b105acdcdcbaf1cf27f502aace680ac224f",
          "body": null,
          "is_bot": false,
          "headline": "fixing tests for 1.8.7",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-17T21:01:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4ee14bb1412331ca70a8e77a4525089cadbd5286",
          "body": "…before 1.8.7 fixes",
          "is_bot": false,
          "headline": "Looking at code coverage analyzer. A little reformatting and cleanup …",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-17T16:13:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0753e8e91cbf1cb9d60f0183c80cfb9f7d637701",
          "body": null,
          "is_bot": false,
          "headline": "Rereading rcovrt, removing 1.9 'support', style fixes",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2012-01-17T15:56:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b5513cae5ea3348d97c21a3c324d8e8a7768e814",
          "body": null,
          "is_bot": false,
          "headline": "Bump to version 0.9.11",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-10-07T19:23:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "601d38c9ec191f00059ef040940a4b6cf244c6ce",
          "body": "  - better cross platform compatibility\n  - closes #83",
          "is_bot": false,
          "headline": "Use PATH_SEPARATOR instead of hard-coded colon:",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-10-07T19:17:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aaea6dd632d7242534fc297c319bda5338975cf5",
          "body": null,
          "is_bot": false,
          "headline": "Bumping version for Java gem",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T14:47:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae310361587896817bb2b596aea9678d2dfb3f94",
          "body": null,
          "is_bot": false,
          "headline": "Rcov isn't meant for 1.9 !! Use something that is",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T14:41:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "582cfc998a505cf6611c6727cb3a08c39051ba33",
          "body": null,
          "is_bot": false,
          "headline": "Bumping version to 0.9.10",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T14:28:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "48914ba67a2cbac2790be57f78ea7a8e972193f2",
          "body": null,
          "is_bot": false,
          "headline": "Don't try this on 1.8.x",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T14:24:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "045f19535b7d599c11b5cb7220c10fcd4659368e",
          "body": "…S-ASCII\n\nFix invalid byte sequence in us ascii",
          "is_bot": false,
          "headline": "Merge pull request #62 from alexdreher/fix-invalid-byte-sequence-in-U…",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T14:22:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "33167b5ae41d5e6cd0d223f77f5b3ddb14f04254",
          "body": "  - only do the jruby check if the constant is defined",
          "is_bot": false,
          "headline": "Don't blow up if we aren't in JRuby",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T14:16:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1fc5469d6b806f402f19618bf8d48afbd8d25425",
          "body": "Remove `has_rdoc=` and `default_executable=` \r\n\r\n  they have been deprecated in Rubygems 1.7+",
          "is_bot": false,
          "headline": "Merge pull request #75 from nono/patch-1",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T13:53:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ce46946088a6fd3e9c94e5ce5ea51aacb7af332",
          "body": null,
          "is_bot": false,
          "headline": "rcov does not work on 1.9 - making this more obvious in the readme.",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-08-05T13:52:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c51771126ff5502c59931220a4d5f07488dcb252",
          "body": "… deprecated",
          "is_bot": false,
          "headline": "As of Rubygems 1.7.0, `has_rdoc=` and `default_executable=` have been…",
          "author_name": "Bruno Michel",
          "author_login": "nono",
          "committed_at": "2011-05-08T19:43:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77b7cae1ddb703a998c203627b0e127571efc227",
          "body": null,
          "is_bot": false,
          "headline": "Update readme to reflect reality",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2011-03-07T16:28:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f44b17fa2e2207fa39f817e8d657cfabe3798384",
          "body": null,
          "is_bot": false,
          "headline": "Allow a custom library to be 'require'd via command line argument.",
          "author_name": "Shaun Mangelsdorf",
          "author_login": "smangelsdorf",
          "committed_at": "2010-12-12T23:33:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a6945bd6b1da6bf51cc8f27459649c94cc313cf5",
          "body": "Custom formatter is specified as a Ruby code expression, and evaluated\nas-is with no sanity checking. The expression would return a Class\nobject that matched the interface of Rcov::BaseFormatter",
          "is_bot": false,
          "headline": "Allow a custom formatter to be appended via command line argument.",
          "author_name": "Shaun Mangelsdorf",
          "author_login": "smangelsdorf",
          "committed_at": "2010-12-12T23:27:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19cbd05687ade1c8194a6839e04acce1548b0a23",
          "body": "This patch improves the filtering efficienfy of the index.html coverage\nreport, by leveraging JQuery's selectors. First, the class names of\npercentage coverage have been changed from '10', '20' etc. to include a\nleading underscore ('_10', '_20' etc.), making them valid CSS class\nnames. Then in the J\n[…]\nws and using split() and indexOf(), the\nJQuery 'not' and 'filter' methods are used to show and hide the relevant\nrows.\n\nThe result is substantially faster filtering, and more readable\nJavascript code.",
          "is_bot": false,
          "headline": "Faster filtering in index.html",
          "author_name": "Eric Pierce",
          "author_login": "wapcaplet",
          "committed_at": "2010-11-24T19:15:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4647a084fbba892526132998932ca362fa09c8c7",
          "body": null,
          "is_bot": false,
          "headline": "ruby19 issue: invalid byte sequence in US-ASCII; fixes #issue/31",
          "author_name": "Alexander Dreher",
          "author_login": null,
          "committed_at": "2010-11-10T14:49:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31f64ec4827790c15cc118699cbb795edfdcbee1",
          "body": "… into fj-topic/correct-misspelling",
          "is_bot": false,
          "headline": "Merge branch 'topic/correct-misspelling' of http://github.com/fj/rcov…",
          "author_name": "Jay McGaffigan",
          "author_login": "hooligan495",
          "committed_at": "2010-09-24T13:02:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b01d161f6cab16772891bd1eea01c7df44d8b0af",
          "body": null,
          "is_bot": false,
          "headline": "Correct misspelling/poor phrasing on failure reports",
          "author_name": "John Feminella",
          "author_login": null,
          "committed_at": "2010-09-22T20:27:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9d199b221ab2131327ce1da54d82cf9d7f57afee",
          "body": null,
          "is_bot": false,
          "headline": "merged in denofevil's commit 7932695ef00d0a6045b9",
          "author_name": "Jay McGaffigan",
          "author_login": null,
          "committed_at": "2010-09-17T18:42:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e4baa0cb4c7544ff6f040e7310503d134a53222",
          "body": "… teh fixes for issues 34 and 37",
          "is_bot": false,
          "headline": "undoing some merge issues with hooligan495.  I just wanted to pull in…",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2010-06-17T18:03:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7ef65c3a77aeb892467f411c1780caa535849131",
          "body": null,
          "is_bot": false,
          "headline": "Issue 37 properly escaping",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2010-05-18T13:33:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "523995ef76db27e83f6fddebcf14ff86fbe73c28",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of git://github.com/relevance/rcov",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2010-05-18T13:29:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "850486b76f23c42900923f87db516e293c77b9f9",
          "body": null,
          "is_bot": false,
          "headline": "remove RunCodeRun link",
          "author_name": "Rob Sanheim",
          "author_login": "rsanheim",
          "committed_at": "2010-04-30T13:11:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "680b75f61124187a426a20f26913d7e823aee5fb",
          "body": "…report is one of the formatters",
          "is_bot": false,
          "headline": "modifying the formatters checking logic for ensuring that the failur_…",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2010-04-27T18:54:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ee4465e68d0cd2e4cf385eb874771abecd6dcc31",
          "body": null,
          "is_bot": false,
          "headline": "merging head",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2010-04-06T15:51:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "001db738f1ec13dd4dbc265c17d70046af7a9093",
          "body": null,
          "is_bot": false,
          "headline": "Trying to track down a partial testing issue",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2010-04-06T15:50:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4d94640ac1ff79c272c78307437ecccc93fedabe",
          "body": null,
          "is_bot": false,
          "headline": "update readme",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2010-02-28T20:42:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e1a0a9fe592dcbac4fb708e48d0da3d12121ff0a",
          "body": null,
          "is_bot": false,
          "headline": "bumping version",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2010-02-28T20:23:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e635ba364e43e725ec69165f01d0390edd418026",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:relevance/rcov",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2010-02-28T20:21:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "711d7fd235b0a1c5926a1a2a6d3b7dcd13584a80",
          "body": null,
          "is_bot": false,
          "headline": "add warning message about ruby 1.9 support",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2010-02-28T20:21:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "440f5dc2fc108ef1e57dcca3cd8087946ba0fc5d",
          "body": "…ther sourceline is valid.\n\nThis is related to commit e3918d63e739fa58c8b4a20c2455011f8ce6c6de.",
          "is_bot": false,
          "headline": "Fix SEGV. sometimes Kernel#eval pass invalid sourceline, so check whe…",
          "author_name": "Katsuya Oda",
          "author_login": null,
          "committed_at": "2010-02-28T20:09:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "154f4a62564832cd46690a27733255bda4d26c15",
          "body": null,
          "is_bot": false,
          "headline": "JRuby 1.4.0 fixed the multiple call reference bug. This fixes GH #44",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2010-02-28T19:59:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "241b56ca33afe5b1d803014f463825534663bbff",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of git://github.com/relevance/rcov",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-12-29T19:49:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72fc77c920418f38c4b4fe25cc93b127aca31ff1",
          "body": null,
          "is_bot": false,
          "headline": "bumping version",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-12-29T15:46:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "83ba01eab0c9e230e0ecf74bb08217f54d718774",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'jgeiger/master'",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-12-29T15:44:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "058478984574401d3002d545f7c97f49cec1b754",
          "body": null,
          "is_bot": false,
          "headline": "release 0.9.7",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-12-27T17:14:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b553aa953382c9a746970c830d05a4b2f83dca9e",
          "body": null,
          "is_bot": false,
          "headline": "Resolve gh issue #36 - add missing files to gem so users can run tests.",
          "author_name": "Matthew Kent",
          "author_login": "mdkent",
          "committed_at": "2009-12-07T06:02:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19540aaa49bb287de493c4834cbf3c2ea5324ab7",
          "body": null,
          "is_bot": false,
          "headline": "Merge commit 'relevance/master'",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-11-17T20:03:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4c18ed51d642a91ea0dd67516b919e50c76f5c0e",
          "body": null,
          "is_bot": false,
          "headline": "resolves gh issue #30 (from @kkaempf)",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-10-23T14:31:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a92aa9f38ee2bdd0ecf8ecfa6c9c594c823cf97",
          "body": null,
          "is_bot": false,
          "headline": "specific rcov_page_title to avoid conflicts",
          "author_name": "jgeiger",
          "author_login": "jgeiger",
          "committed_at": "2009-10-21T19:36:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5da8e3c98e5ff6fc89135551d21aa9639cc953bf",
          "body": "…it be ignored by rcov",
          "is_bot": false,
          "headline": "Adding the ability to surround code with '#:nocov:' comments to have …",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-10-16T14:13:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6e3075e21ae3d1192e34f092e0ed773fd6215ebe",
          "body": null,
          "is_bot": false,
          "headline": "Removed mkmf dependency to resolve GH#28\"",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-10-16T13:31:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "16f1020468353b7c42b83067350a7152328cd7ae",
          "body": null,
          "is_bot": false,
          "headline": "Adding sdoc",
          "author_name": "Chad Humphries",
          "author_login": "spicycode",
          "committed_at": "2009-10-09T17:31:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4cbfc969092c7ff1c9c40910b594c2b9eab3e73e",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of git://github.com/relevance/rcov",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-25T18:59:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d4ae40cd184ba7cc21ad2163b644945aa0682e0",
          "body": null,
          "is_bot": false,
          "headline": "fixing aggregate_data bug in 1.9 thanks to @dguettler",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-09-25T15:15:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "276e311a81aaece6753c345645f561aca490364f",
          "body": null,
          "is_bot": false,
          "headline": "bumping version",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-09-18T14:26:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b12ea34b4d7737f372a4ba23092685a14a557ea4",
          "body": null,
          "is_bot": false,
          "headline": "fixing exclusion bug and bumping version",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-09-18T14:21:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1b6d008120eb0b0526f5dd73fb01fd1b5a1f5a42",
          "body": null,
          "is_bot": false,
          "headline": "cleanup",
          "author_name": "Aaron Bedra / Jay McGaffigan",
          "author_login": "clojure-site",
          "committed_at": "2009-09-12T14:33:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "32cdb63fc8301a4052b108e39a967cf92b1a6940",
          "body": null,
          "is_bot": false,
          "headline": "trying to force a build of this gem.",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-12T00:22:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca2e5a779597dde232b0572918bf2c8f64bcd395",
          "body": null,
          "is_bot": false,
          "headline": "force build of gemspec",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-12T00:13:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cfea6cffded4db5ecb208e70706c315a34d2f804",
          "body": null,
          "is_bot": false,
          "headline": "For tasks that shell out rcov, jruby needs to have the --debug flag set.",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-11T19:19:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c52b94ae43038b0991d671a4c3249f5be9578236",
          "body": null,
          "is_bot": false,
          "headline": "bumping version",
          "author_name": "Aaron Bedra / Jay McGaffigan",
          "author_login": "clojure-site",
          "committed_at": "2009-09-11T18:45:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1cc67a4d2568de5390ec4848a399ec01d9fc8648",
          "body": null,
          "is_bot": false,
          "headline": "fixing tests for both platforms",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-09-11T18:39:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4360baa39898d29be7b2e82cf9209de4d925bec8",
          "body": "… separate file so that github will create the 2 different gems.  (one for MRI and one for jruby)",
          "is_bot": false,
          "headline": "added new gemspec for creating the rcov-java gem.  This needs to be a…",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-10T20:17:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6f9c91829448cdd7665a12f692c3849d725085dc",
          "body": null,
          "is_bot": false,
          "headline": "looking at creating the gem also",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-10T18:03:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "012d98bdb998be865135c9d80c1c93622ec0011b",
          "body": null,
          "is_bot": false,
          "headline": "updating todo.",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-10T17:53:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c2dfe6f93bbbfe7f21a41b30423337a69462a479",
          "body": "…ounts)",
          "is_bot": false,
          "headline": "updated tests to handle jruby counts (which are different from ruby c…",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-10T17:47:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "423cc9afc420cfa41f3832e269bb1dab15352655",
          "body": "…o clean up.",
          "is_bot": false,
          "headline": "integrated JRuby RCov with Relevance's RCov.  Still have some tests t…",
          "author_name": "Jay",
          "author_login": null,
          "committed_at": "2009-09-10T15:31:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "132189c0d4a25032fd94e88a65137c3c50fdae38",
          "body": null,
          "is_bot": false,
          "headline": "bumping version after ui enhancements",
          "author_name": "Aaron Bedra / Corey Ehmke",
          "author_login": "clojure-site",
          "committed_at": "2009-08-30T18:25:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d41c0db37114329d6546921f63381eea4ffee34b",
          "body": null,
          "is_bot": false,
          "headline": "finishing touches on the ui tweaks",
          "author_name": "Aaron Bedra / Corey Ehmke",
          "author_login": "clojure-site",
          "committed_at": "2009-08-30T18:18:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77abc316a95cc079a126338ecb62ddbab42d9016",
          "body": null,
          "is_bot": false,
          "headline": "fixing rspec verify rcov task compatibility",
          "author_name": "Aaron Bedra / Corey Ehmke",
          "author_login": "clojure-site",
          "committed_at": "2009-08-30T17:52:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1734057c80a38fa95bdab5eab59bf7342a1cb62d",
          "body": "…n div to enforce minimum width; fixed issue with filters in IE (no native indexOf support...);",
          "is_bot": false,
          "headline": "Restored README; restored authors in gemspec; wrapped report tables i…",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-25T04:10:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d8f9fd389a791ef1a64546be123ea3fa4c09a906",
          "body": null,
          "is_bot": false,
          "headline": "Minor tweak to README.",
          "author_name": "Bantik",
          "author_login": null,
          "committed_at": "2009-08-24T04:24:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "edec6139d0e87e7077e939aed436ee1e97a30a26",
          "body": null,
          "is_bot": false,
          "headline": "Updated README. (I think my work here is done.)",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-24T04:22:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3f399ef8edbfdac8ecb2f4b8f970aad49028f301",
          "body": "…y a custom CSS file to use for HTML output.",
          "is_bot": false,
          "headline": "Support for new command-line option --css which allows user to specif…",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-24T03:59:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "512b8a15e60dba555170b95218de70284b6dfac2",
          "body": "…n non-JS-enabled browsers; hide filter controls from non-JS-enabled browsers.",
          "is_bot": false,
          "headline": "Moved initial table striping back into ERB for graceful degradation i…",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-23T23:35:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "486da88eb970f9d6abdde804dd0112eaa1d1bd0c",
          "body": null,
          "is_bot": false,
          "headline": "Small fix for print stylesheet.",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-23T22:42:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c51242f6a82d4915e1d19d78f9afe58206c2ed60",
          "body": null,
          "is_bot": false,
          "headline": "Finished print style sheet. Fixed validation errors.",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-23T22:38:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9ebedfcad282c2ced7df5c36cde96e88ee22c0e1",
          "body": null,
          "is_bot": false,
          "headline": "Finished tweaking details page; minor CSS changes.",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-23T22:17:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3dae67f6c26d73e56a8c66febf518e2d61391ffb",
          "body": "…t params to clean up the HTML index view; created methods for generating CSS classes for code coverage and file filters; moved generation of code coverage graphs to method in html_erb_template; both file and code coverage filters in index HTML view now work. Modified overall color schemes to look consistent and distinct in full color and b&w (including accommodating colorblind users).",
          "is_bot": false,
          "headline": "INTERIM CHECKIN - NOT FOR USE. Separated total and files into distinc…",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-23T07:14:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d208ca0412b473df3e3c4fdae849f06774170c8d",
          "body": null,
          "is_bot": false,
          "headline": "INTERIM CHECKIN - NOT FOR USE. Updated TODO.",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-22T18:20:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b94e5f3e654bbb8e766d98139722670ebeccaf20",
          "body": "… cleaned up display of project name; renamed :title to :page_title to prevent namespace collision (!); explicitly set charset in HTML files for validation; sorting enabled on main coverage page; preliminary support for file filtering and coverage threshold filtering; cleaned up table code on main coverage page; other minor HTML and CSS tweaks.",
          "is_bot": false,
          "headline": "INTERIM CHECKIN - NOT FOR USE. Added jquery and tablesorter js files;…",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-22T18:17:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "41ff934b736538705f09318a40206dbfe5c6f52a",
          "body": "…copied to coverage directory; added light/dark row alteration in index.html; initial merge of screen.css; stub print style sheet.",
          "is_bot": false,
          "headline": "INITIAL WORK - NOT READY. Fixed issue in which rcov.js was not being …",
          "author_name": "Corey",
          "author_login": null,
          "committed_at": "2009-08-16T00:34:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72921dc54346b4c920b4650b550f98900189cf49",
          "body": null,
          "is_bot": false,
          "headline": "separating rcov.rb classes into separate files",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-08-11T00:45:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6c4d27fafa54c2e7ceef39b133d77c4f6506d9cc",
          "body": null,
          "is_bot": false,
          "headline": "a little bit of space consistency",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-08-11T00:24:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b253807f2cb3c2d929c9f6611471d0b1b21e48fa",
          "body": "…threshold",
          "is_bot": false,
          "headline": "adding notification to users if coverage increases too far above the …",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-08-10T12:41:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c25977a76aec13f9b236622f79c8794ecd1004fc",
          "body": null,
          "is_bot": false,
          "headline": "fixing heredoc space issue from github issue #9",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-08-07T21:17:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "de9e7cb093f9a2dd43b0bfa712aecc58e5948df1",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of github.com:relevance/rcov",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-08-07T14:08:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "265e8492447bf29c9cc6e79a589ca4b7c567117b",
          "body": null,
          "is_bot": false,
          "headline": "adding failure-threshold option to make verifying coverage a breeze",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-08-07T14:08:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b7aa7117434d6386fc37cc57a951b9f28862e95",
          "body": null,
          "is_bot": false,
          "headline": "removing some noise in Rakefile",
          "author_name": "Aaron Bedra",
          "author_login": "abedra",
          "committed_at": "2009-07-31T22:37:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bbf88530ae405e92ac8cbbf504b372eff4e23a50",
          "body": null,
          "is_bot": false,
          "headline": "fFxes No file to analyze was found errorr. Taken from @valo.",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-07-31T16:08:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8f12c950ad04767549b4f85c0b0da805269d3784",
          "body": null,
          "is_bot": false,
          "headline": "updating docs",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-07-31T14:56:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "734afd173d537ab1ee5ad5a58fd2fffd3a9a2594",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'master' of git@github.com:relevance/rcov",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-07-31T13:36:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "43b362ec0f182867332fdb94154dc380410fc5bd",
          "body": null,
          "is_bot": false,
          "headline": "fixes github issue #15",
          "author_name": "Aaron Bedra",
          "author_login": null,
          "committed_at": "2009-07-31T13:34:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 0,
      "commits_last_year": 0,
      "latest_release_at": null,
      "latest_release_tag": null,
      "releases_from_tags": false,
      "days_since_last_push": 5166,
      "active_weeks_last_year": 0,
      "days_since_latest_release": null,
      "mean_days_between_releases": null
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 37,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": []
    },
    "popularity": {
      "forks": 60,
      "stars": 407,
      "watchers": 29,
      "fork_history": {
        "days": [
          {
            "date": "2008-06-13",
            "count": 1
          },
          {
            "date": "2008-07-17",
            "count": 1
          },
          {
            "date": "2008-08-29",
            "count": 1
          },
          {
            "date": "2008-09-20",
            "count": 1
          },
          {
            "date": "2008-12-16",
            "count": 1
          },
          {
            "date": "2009-05-29",
            "count": 1
          },
          {
            "date": "2009-06-08",
            "count": 1
          },
          {
            "date": "2009-08-06",
            "count": 1
          },
          {
            "date": "2009-08-18",
            "count": 1
          },
          {
            "date": "2009-08-30",
            "count": 1
          },
          {
            "date": "2009-09-09",
            "count": 1
          },
          {
            "date": "2009-10-19",
            "count": 1
          },
          {
            "date": "2009-10-29",
            "count": 1
          },
          {
            "date": "2009-12-03",
            "count": 1
          },
          {
            "date": "2009-12-07",
            "count": 1
          },
          {
            "date": "2009-12-21",
            "count": 1
          },
          {
            "date": "2009-12-29",
            "count": 1
          },
          {
            "date": "2010-02-22",
            "count": 1
          },
          {
            "date": "2010-03-01",
            "count": 1
          },
          {
            "date": "2010-03-12",
            "count": 1
          },
          {
            "date": "2010-05-05",
            "count": 1
          },
          {
            "date": "2010-06-29",
            "count": 1
          },
          {
            "date": "2010-07-29",
            "count": 1
          },
          {
            "date": "2010-09-22",
            "count": 1
          },
          {
            "date": "2010-11-10",
            "count": 1
          },
          {
            "date": "2010-11-24",
            "count": 1
          },
          {
            "date": "2010-11-29",
            "count": 1
          },
          {
            "date": "2010-12-01",
            "count": 1
          },
          {
            "date": "2010-12-04",
            "count": 1
          },
          {
            "date": "2011-01-27",
            "count": 1
          },
          {
            "date": "2011-02-17",
            "count": 1
          },
          {
            "date": "2011-02-22",
            "count": 1
          },
          {
            "date": "2011-04-15",
            "count": 1
          },
          {
            "date": "2011-05-08",
            "count": 1
          },
          {
            "date": "2011-05-23",
            "count": 1
          },
          {
            "date": "2011-07-20",
            "count": 1
          },
          {
            "date": "2011-08-12",
            "count": 1
          },
          {
            "date": "2011-09-24",
            "count": 1
          },
          {
            "date": "2011-12-15",
            "count": 1
          },
          {
            "date": "2012-03-22",
            "count": 1
          },
          {
            "date": "2012-04-10",
            "count": 1
          },
          {
            "date": "2012-08-01",
            "count": 1
          },
          {
            "date": "2012-12-13",
            "count": 2
          },
          {
            "date": "2012-12-28",
            "count": 1
          },
          {
            "date": "2013-02-14",
            "count": 1
          },
          {
            "date": "2013-07-19",
            "count": 1
          },
          {
            "date": "2013-07-31",
            "count": 1
          },
          {
            "date": "2014-01-30",
            "count": 1
          },
          {
            "date": "2014-05-16",
            "count": 1
          },
          {
            "date": "2014-05-26",
            "count": 1
          },
          {
            "date": "2015-02-11",
            "count": 1
          },
          {
            "date": "2015-08-02",
            "count": 1
          },
          {
            "date": "2015-08-24",
            "count": 1
          },
          {
            "date": "2015-12-16",
            "count": 1
          },
          {
            "date": "2016-03-23",
            "count": 1
          },
          {
            "date": "2016-09-19",
            "count": 1
          },
          {
            "date": "2019-09-08",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 58,
        "total_forks": 60
      },
      "star_history": {
        "days": [
          {
            "date": "2009-05-08",
            "count": 191
          },
          {
            "date": "2009-05-10",
            "count": 1
          },
          {
            "date": "2009-05-14",
            "count": 1
          },
          {
            "date": "2009-05-19",
            "count": 1
          },
          {
            "date": "2009-05-20",
            "count": 1
          },
          {
            "date": "2009-05-21",
            "count": 1
          },
          {
            "date": "2009-05-26",
            "count": 1
          },
          {
            "date": "2009-05-28",
            "count": 1
          },
          {
            "date": "2009-06-01",
            "count": 1
          },
          {
            "date": "2009-06-02",
            "count": 1
          },
          {
            "date": "2009-06-04",
            "count": 1
          },
          {
            "date": "2009-06-08",
            "count": 1
          },
          {
            "date": "2009-06-10",
            "count": 1
          },
          {
            "date": "2009-06-11",
            "count": 1
          },
          {
            "date": "2009-06-15",
            "count": 1
          },
          {
            "date": "2009-06-27",
            "count": 1
          },
          {
            "date": "2009-06-30",
            "count": 2
          },
          {
            "date": "2009-07-06",
            "count": 1
          },
          {
            "date": "2009-07-12",
            "count": 1
          },
          {
            "date": "2009-07-15",
            "count": 1
          },
          {
            "date": "2009-07-28",
            "count": 1
          },
          {
            "date": "2009-07-29",
            "count": 1
          },
          {
            "date": "2009-07-31",
            "count": 1
          },
          {
            "date": "2009-08-03",
            "count": 1
          },
          {
            "date": "2009-08-06",
            "count": 2
          },
          {
            "date": "2009-08-10",
            "count": 1
          },
          {
            "date": "2009-08-14",
            "count": 1
          },
          {
            "date": "2009-08-21",
            "count": 1
          },
          {
            "date": "2009-08-22",
            "count": 1
          },
          {
            "date": "2009-08-25",
            "count": 1
          },
          {
            "date": "2009-08-29",
            "count": 1
          },
          {
            "date": "2009-08-30",
            "count": 1
          },
          {
            "date": "2009-09-01",
            "count": 1
          },
          {
            "date": "2009-09-08",
            "count": 1
          },
          {
            "date": "2009-09-15",
            "count": 1
          },
          {
            "date": "2009-09-18",
            "count": 1
          },
          {
            "date": "2009-09-19",
            "count": 1
          },
          {
            "date": "2009-09-25",
            "count": 1
          },
          {
            "date": "2009-10-03",
            "count": 1
          },
          {
            "date": "2009-10-13",
            "count": 1
          },
          {
            "date": "2009-10-16",
            "count": 1
          },
          {
            "date": "2009-10-21",
            "count": 2
          },
          {
            "date": "2009-10-23",
            "count": 1
          },
          {
            "date": "2009-11-15",
            "count": 1
          },
          {
            "date": "2009-12-10",
            "count": 1
          },
          {
            "date": "2009-12-31",
            "count": 1
          },
          {
            "date": "2010-01-27",
            "count": 1
          },
          {
            "date": "2010-01-30",
            "count": 1
          },
          {
            "date": "2010-02-02",
            "count": 2
          },
          {
            "date": "2010-02-03",
            "count": 1
          },
          {
            "date": "2010-02-10",
            "count": 1
          },
          {
            "date": "2010-02-14",
            "count": 1
          },
          {
            "date": "2010-02-20",
            "count": 1
          },
          {
            "date": "2010-02-24",
            "count": 1
          },
          {
            "date": "2010-02-25",
            "count": 1
          },
          {
            "date": "2010-03-06",
            "count": 1
          },
          {
            "date": "2010-04-06",
            "count": 1
          },
          {
            "date": "2010-04-07",
            "count": 1
          },
          {
            "date": "2010-04-15",
            "count": 1
          },
          {
            "date": "2010-04-19",
            "count": 1
          },
          {
            "date": "2010-04-25",
            "count": 1
          },
          {
            "date": "2010-04-29",
            "count": 1
          },
          {
            "date": "2010-04-30",
            "count": 1
          },
          {
            "date": "2010-05-19",
            "count": 1
          },
          {
            "date": "2010-05-24",
            "count": 1
          },
          {
            "date": "2010-06-01",
            "count": 1
          },
          {
            "date": "2010-06-29",
            "count": 1
          },
          {
            "date": "2010-07-21",
            "count": 1
          },
          {
            "date": "2010-07-28",
            "count": 2
          },
          {
            "date": "2010-08-13",
            "count": 1
          },
          {
            "date": "2010-08-16",
            "count": 1
          },
          {
            "date": "2010-08-23",
            "count": 1
          },
          {
            "date": "2010-09-02",
            "count": 1
          },
          {
            "date": "2010-09-20",
            "count": 1
          },
          {
            "date": "2010-10-15",
            "count": 1
          },
          {
            "date": "2010-10-18",
            "count": 1
          },
          {
            "date": "2010-10-19",
            "count": 1
          },
          {
            "date": "2010-10-20",
            "count": 2
          },
          {
            "date": "2010-10-24",
            "count": 1
          },
          {
            "date": "2010-10-25",
            "count": 1
          },
          {
            "date": "2010-10-29",
            "count": 2
          },
          {
            "date": "2010-11-28",
            "count": 1
          },
          {
            "date": "2010-12-16",
            "count": 1
          },
          {
            "date": "2011-01-10",
            "count": 1
          },
          {
            "date": "2011-01-29",
            "count": 1
          },
          {
            "date": "2011-02-02",
            "count": 1
          },
          {
            "date": "2011-02-24",
            "count": 2
          },
          {
            "date": "2011-03-10",
            "count": 1
          },
          {
            "date": "2011-03-12",
            "count": 1
          },
          {
            "date": "2011-03-16",
            "count": 1
          },
          {
            "date": "2011-05-12",
            "count": 1
          },
          {
            "date": "2011-05-13",
            "count": 1
          },
          {
            "date": "2011-05-19",
            "count": 1
          },
          {
            "date": "2011-06-02",
            "count": 1
          },
          {
            "date": "2011-07-25",
            "count": 1
          },
          {
            "date": "2011-07-30",
            "count": 1
          },
          {
            "date": "2011-08-19",
            "count": 1
          },
          {
            "date": "2011-10-21",
            "count": 1
          },
          {
            "date": "2012-03-08",
            "count": 1
          },
          {
            "date": "2012-04-07",
            "count": 1
          },
          {
            "date": "2012-07-03",
            "count": 1
          },
          {
            "date": "2013-02-14",
            "count": 1
          },
          {
            "date": "2013-02-15",
            "count": 1
          },
          {
            "date": "2013-02-20",
            "count": 1
          },
          {
            "date": "2013-02-21",
            "count": 1
          },
          {
            "date": "2013-03-06",
            "count": 1
          },
          {
            "date": "2013-03-12",
            "count": 1
          },
          {
            "date": "2013-04-25",
            "count": 1
          },
          {
            "date": "2013-05-31",
            "count": 2
          },
          {
            "date": "2013-06-18",
            "count": 1
          },
          {
            "date": "2013-06-21",
            "count": 1
          },
          {
            "date": "2013-06-25",
            "count": 1
          },
          {
            "date": "2013-07-15",
            "count": 1
          },
          {
            "date": "2013-07-18",
            "count": 1
          },
          {
            "date": "2013-08-07",
            "count": 1
          },
          {
            "date": "2013-08-11",
            "count": 1
          },
          {
            "date": "2013-09-04",
            "count": 1
          },
          {
            "date": "2013-09-10",
            "count": 1
          },
          {
            "date": "2013-10-14",
            "count": 1
          },
          {
            "date": "2013-10-16",
            "count": 1
          },
          {
            "date": "2013-10-22",
            "count": 1
          },
          {
            "date": "2013-11-10",
            "count": 1
          },
          {
            "date": "2013-11-25",
            "count": 1
          },
          {
            "date": "2013-12-02",
            "count": 1
          },
          {
            "date": "2013-12-10",
            "count": 1
          },
          {
            "date": "2013-12-18",
            "count": 1
          },
          {
            "date": "2013-12-26",
            "count": 1
          },
          {
            "date": "2014-01-02",
            "count": 1
          },
          {
            "date": "2014-02-06",
            "count": 1
          },
          {
            "date": "2014-02-27",
            "count": 2
          },
          {
            "date": "2014-03-17",
            "count": 1
          },
          {
            "date": "2014-04-23",
            "count": 1
          },
          {
            "date": "2014-05-21",
            "count": 1
          },
          {
            "date": "2014-06-03",
            "count": 1
          },
          {
            "date": "2014-06-10",
            "count": 1
          },
          {
            "date": "2014-06-23",
            "count": 1
          },
          {
            "date": "2014-06-29",
            "count": 1
          },
          {
            "date": "2014-06-30",
            "count": 1
          },
          {
            "date": "2014-08-19",
            "count": 1
          },
          {
            "date": "2014-09-05",
            "count": 1
          },
          {
            "date": "2014-09-17",
            "count": 1
          },
          {
            "date": "2014-09-27",
            "count": 1
          },
          {
            "date": "2014-10-02",
            "count": 1
          },
          {
            "date": "2014-10-18",
            "count": 1
          },
          {
            "date": "2014-10-31",
            "count": 1
          },
          {
            "date": "2014-11-20",
            "count": 1
          },
          {
            "date": "2014-12-01",
            "count": 1
          },
          {
            "date": "2014-12-04",
            "count": 1
          },
          {
            "date": "2014-12-09",
            "count": 1
          },
          {
            "date": "2014-12-23",
            "count": 1
          },
          {
            "date": "2015-01-13",
            "count": 1
          },
          {
            "date": "2015-01-25",
            "count": 1
          },
          {
            "date": "2015-02-04",
            "count": 1
          },
          {
            "date": "2015-02-24",
            "count": 1
          },
          {
            "date": "2015-03-02",
            "count": 1
          },
          {
            "date": "2015-03-21",
            "count": 1
          },
          {
            "date": "2015-03-31",
            "count": 1
          },
          {
            "date": "2015-04-01",
            "count": 1
          },
          {
            "date": "2015-04-20",
            "count": 1
          },
          {
            "date": "2015-05-12",
            "count": 1
          },
          {
            "date": "2015-05-13",
            "count": 1
          },
          {
            "date": "2015-06-14",
            "count": 1
          },
          {
            "date": "2015-06-25",
            "count": 1
          },
          {
            "date": "2015-07-02",
            "count": 1
          },
          {
            "date": "2015-08-10",
            "count": 1
          },
          {
            "date": "2015-08-13",
            "count": 1
          },
          {
            "date": "2015-09-20",
            "count": 1
          },
          {
            "date": "2015-11-05",
            "count": 1
          },
          {
            "date": "2015-11-26",
            "count": 1
          },
          {
            "date": "2015-12-11",
            "count": 1
          },
          {
            "date": "2016-01-06",
            "count": 1
          },
          {
            "date": "2016-01-08",
            "count": 1
          },
          {
            "date": "2016-01-17",
            "count": 1
          },
          {
            "date": "2016-01-27",
            "count": 1
          },
          {
            "date": "2016-02-05",
            "count": 1
          },
          {
            "date": "2016-02-12",
            "count": 1
          },
          {
            "date": "2016-03-01",
            "count": 1
          },
          {
            "date": "2016-03-15",
            "count": 1
          },
          {
            "date": "2016-03-16",
            "count": 2
          },
          {
            "date": "2016-03-21",
            "count": 1
          },
          {
            "date": "2016-05-20",
            "count": 1
          },
          {
            "date": "2016-08-09",
            "count": 1
          },
          {
            "date": "2016-08-24",
            "count": 1
          },
          {
            "date": "2016-09-05",
            "count": 1
          },
          {
            "date": "2016-09-14",
            "count": 1
          },
          {
            "date": "2016-10-10",
            "count": 1
          },
          {
            "date": "2016-11-15",
            "count": 1
          },
          {
            "date": "2016-12-18",
            "count": 1
          },
          {
            "date": "2017-03-04",
            "count": 1
          },
          {
            "date": "2017-03-29",
            "count": 1
          },
          {
            "date": "2017-04-25",
            "count": 1
          },
          {
            "date": "2017-06-08",
            "count": 1
          },
          {
            "date": "2017-06-22",
            "count": 1
          },
          {
            "date": "2017-08-22",
            "count": 1
          },
          {
            "date": "2017-12-06",
            "count": 1
          },
          {
            "date": "2018-06-07",
            "count": 1
          },
          {
            "date": "2018-12-25",
            "count": 1
          },
          {
            "date": "2019-01-11",
            "count": 1
          },
          {
            "date": "2019-03-21",
            "count": 1
          },
          {
            "date": "2019-04-26",
            "count": 1
          },
          {
            "date": "2019-06-26",
            "count": 1
          },
          {
            "date": "2019-06-28",
            "count": 1
          },
          {
            "date": "2019-08-08",
            "count": 1
          },
          {
            "date": "2019-11-21",
            "count": 1
          },
          {
            "date": "2024-03-27",
            "count": 1
          },
          {
            "date": "2025-02-26",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 407,
        "total_stars": 407
      },
      "open_issues_and_prs": 17
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 57254,
      "source_files_sampled": 47,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [],
      "advisories": {
        "error": "No resolved dependencies carried a version and a supported ecosystem",
        "scope": "repository_graph",
        "source": null,
        "findings": [],
        "collected": false,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 0,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 1,
        "direct_affected_count": 0
      },
      "ecosystems": [],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "rake",
            "direct": false,
            "version": null,
            "ecosystem": "rubygems"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1,
        "direct_count": 0,
        "indirect_count": 1
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 6,
        "open_issues": 16,
        "closed_ratio": 0.833,
        "closed_issues": 80,
        "closed_unmerged_prs": 2
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "mfp",
          "commits": 296,
          "avatar_url": "https://avatars.githubusercontent.com/u/31913?v=4"
        },
        {
          "type": "User",
          "login": "spicycode",
          "commits": 49,
          "avatar_url": "https://avatars.githubusercontent.com/u/222?v=4"
        },
        {
          "type": "User",
          "login": "abedra",
          "commits": 33,
          "avatar_url": "https://avatars.githubusercontent.com/u/2090?v=4"
        },
        {
          "type": "User",
          "login": "rsanheim",
          "commits": 32,
          "avatar_url": "https://avatars.githubusercontent.com/u/69?v=4"
        },
        {
          "type": "User",
          "login": "rubikitch",
          "commits": 28,
          "avatar_url": "https://avatars.githubusercontent.com/u/42140?v=4"
        },
        {
          "type": "User",
          "login": "clojure-site",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/16310059?v=4"
        },
        {
          "type": "User",
          "login": "wapcaplet",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/238395?v=4"
        },
        {
          "type": "User",
          "login": "cldwalker",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/11994?v=4"
        },
        {
          "type": "User",
          "login": "kofno",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/19907?v=4"
        },
        {
          "type": "User",
          "login": "smangelsdorf",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/6358?v=4"
        }
      ],
      "contributors_sampled": 15,
      "top_contributor_share": 0.649
    },
    "quality_signals": {
      "has_ci": false,
      "has_tests": true,
      "ci_workflows": [],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 0,
            "reason": "0 out of 3 merged PRs checked by a CI test -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 1,
            "reason": "Found 3/29 approved changesets -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 7 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": null,
            "reason": "no workflows found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 9,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": null,
            "reason": "no dependencies found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": null,
            "reason": "No tokens found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 10,
            "reason": "0 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "66a5bf5d76c4312a62862a86e048731203669961",
        "ran_at": "2026-07-22T00:12:01Z",
        "aggregate_score": 2.9,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": null,
      "oldest_open_prs": [
        {
          "number": 86,
          "created_at": "2011-12-15T14:53:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2012-03-09T21:24:37Z",
      "ci_last_conclusion": null,
      "oldest_open_issues": [
        {
          "number": 41,
          "created_at": "2009-12-29T19:24:08Z",
          "last_comment_at": "2012-01-23T21:05:16Z",
          "last_comment_author": "hooligan495"
        },
        {
          "number": 43,
          "created_at": "2010-01-13T06:02:10Z",
          "last_comment_at": "2012-01-18T03:21:17Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 50,
          "created_at": "2010-03-17T21:20:02Z",
          "last_comment_at": "2012-01-18T03:18:06Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 52,
          "created_at": "2010-05-20T12:32:18Z",
          "last_comment_at": "2012-01-23T20:27:11Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 58,
          "created_at": "2010-08-22T17:21:26Z",
          "last_comment_at": "2012-01-23T13:41:22Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 59,
          "created_at": "2010-08-23T11:25:31Z",
          "last_comment_at": "2012-12-08T04:30:06Z",
          "last_comment_author": "azimux"
        },
        {
          "number": 70,
          "created_at": "2011-03-17T08:08:32Z",
          "last_comment_at": "2012-01-23T20:30:01Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 72,
          "created_at": "2011-04-08T23:08:14Z",
          "last_comment_at": "2013-01-23T20:15:58Z",
          "last_comment_author": "lolindrath"
        },
        {
          "number": 76,
          "created_at": "2011-05-24T07:00:27Z",
          "last_comment_at": "2012-03-24T07:18:05Z",
          "last_comment_author": "evilrich"
        },
        {
          "number": 91,
          "created_at": "2012-02-01T13:28:32Z",
          "last_comment_at": "2012-02-03T16:11:58Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 93,
          "created_at": "2012-03-09T18:24:05Z",
          "last_comment_at": "2012-03-09T18:34:56Z",
          "last_comment_author": "abedra"
        },
        {
          "number": 97,
          "created_at": "2012-05-30T22:37:09Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 98,
          "created_at": "2012-07-13T03:20:48Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 102,
          "created_at": "2015-09-23T02:48:02Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 103,
          "created_at": "2018-05-01T15:28:42Z",
          "last_comment_at": "2022-11-21T12:42:54Z",
          "last_comment_author": "bublik"
        },
        {
          "number": 104,
          "created_at": "2020-07-23T02:03:17Z",
          "last_comment_at": "2021-07-26T18:15:12Z",
          "last_comment_author": "ryandesign"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/relevance/rcov",
    "host": "github.com",
    "name": "rcov",
    "owner": "relevance"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "critical",
      "name": "Overall health",
      "note": "Abandonment Policy applies a 60% multiplier to weighted overall health and gives it a ceiling of 49.",
      "notes": [
        {
          "code": "abandonment_overall_adjustment",
          "params": {
            "cap": 49,
            "pct": 60
          }
        }
      ],
      "value": 20,
      "inputs": {
        "security": 29,
        "vitality": 1,
        "community": 34,
        "governance": 56,
        "engineering": 50,
        "abandonment_cap": 49,
        "abandonment_state": "likely_abandoned",
        "abandonment_multiplier": 60,
        "weighted_overall_before_abandonment": 34,
        "overall_after_abandonment_multiplier": 20
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "critical",
        "name": "Vitality",
        "value": 1,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "critical",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "commits_last_year": 0,
              "human_commit_share": 1,
              "days_since_last_push": 5166,
              "active_weeks_last_year": 0
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 5166 days ago",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 5166
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "0/52 weeks with commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "0 commits in the last year",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "critical",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "releases_count": 0
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "no releases published",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases_published",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "moderate",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "cap": 49,
              "state": "likely_abandoned",
              "guards": [],
              "signals": [
                "issue_rot",
                "scorecard_unmaintained",
                "sole_maintainer_gone"
              ],
              "red_flag": true,
              "multiplier_pct": 60,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": 1,
              "unanswered_open_issues": 9,
              "days_since_last_merged_pr": 5247,
              "days_since_last_human_commit": 5247,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "no human commit for 5247 days; 3 unmet obligation(s): issues unanswered, Scorecard reports it unmaintained, its sole maintainer absent",
                "points": 60,
                "status": "partial",
                "details": [
                  {
                    "code": "abandonment_flagged",
                    "params": {
                      "days": 5247,
                      "count": 3,
                      "signals": "issues unanswered, Scorecard reports it unmaintained, its sole maintainer absent"
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 34,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": "Inorganic Growth Policy discounts the stars and forks components by 70%. The finding describes the timing of public star and fork events; it does not establish that attention was purchased, or that the maintainers were involved.",
            "notes": [
              {
                "code": "growth_policy_discount",
                "params": {
                  "pct": 70
                }
              }
            ],
            "value": 25,
            "inputs": {
              "forks": 60,
              "stars": 407,
              "watchers": 29,
              "growth_state": "highly_anomalous",
              "growth_signals": [
                "acquisition_burst",
                "fork_divergence",
                "missing_decay",
                "no_released_substance"
              ],
              "growth_windows": [
                "2009-05-08/2009-05-08"
              ],
              "growth_peak_days": 1,
              "growth_factor_pct": 30,
              "growth_peak_stars": 191,
              "growth_peak_window": "2009-05-08",
              "growth_peak_multiple": 191,
              "growth_top_days_share": 0.489,
              "growth_baseline_per_day": 1,
              "growth_history_complete": true
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "407 stars, discounted for inorganic growth: 191 stars over 1 day(s) from 2009-05-08, 191× the repository's own daily baseline",
                "points": 12.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 407
                    }
                  },
                  {
                    "code": "discounted_for_inorganic_growth",
                    "params": {
                      "days": 1,
                      "stars": 191,
                      "window": "2009-05-08",
                      "multiple": 191
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "60 forks, discounted for inorganic growth: 191 stars over 1 day(s) from 2009-05-08, 191× the repository's own daily baseline",
                "points": 4.4,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 60
                    }
                  },
                  {
                    "code": "discounted_for_inorganic_growth",
                    "params": {
                      "days": 1,
                      "stars": 191,
                      "window": "2009-05-08",
                      "multiple": 191
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "29 watchers",
                "points": 8,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 29
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "at_risk",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 44,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file present, not a recognized license",
                "points": 16.9,
                "status": "partial",
                "details": [
                  {
                    "code": "license_custom",
                    "params": {}
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 56,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 15,
              "top_contributor_share": 0.649
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 65% of commits",
                "points": 7.9,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 65
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "15 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 15
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 7 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 69,
            "inputs": {
              "merged_prs": 6,
              "open_issues": 16,
              "closed_issues": 80,
              "issue_closed_ratio": 0.833,
              "closed_unmerged_prs": 2
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "83% of issues closed",
                "points": 38.9,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 83
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "6/8 decided PRs merged",
                "points": 28.7,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 6,
                      "decided": 8
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 3/29 approved changesets -- score normalized to 1",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "followers": 8,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "relevance",
              "public_repos": 84,
              "account_age_days": 5327
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "8 followers of relevance",
                "points": 6.9,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 8,
                      "login": "relevance"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "84 public repos, account ~14 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 84
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 14
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "moderate",
        "name": "Engineering Quality",
        "value": 50,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "critical",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 24,
            "inputs": {
              "has_ci": false,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "0 out of 3 merged PRs checked by a CI test -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": "https://github.com/relevance/rcov",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://github.com/relevance/rcov",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "critical",
        "name": "Security",
        "value": 29,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "critical",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Dangerous-Workflow, Packaging, Pinned-Dependencies, Signed-Releases, Token-Permissions. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "dangerous_workflow",
                    "packaging",
                    "pinned_dependencies",
                    "signed_releases",
                    "token_permissions"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 29,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 13,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 5,
              "scorecard_aggregate": 2.9
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "0 out of 3 merged PRs checked by a CI test -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 3/29 approved changesets -- score normalized to 1",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 7 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no workflows found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "No tokens found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "0 existing vulnerabilities detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 9
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "critical",
        "name": "AI Readiness",
        "value": 25,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "critical",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 11,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.21,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "21 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 11.2,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 21,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "critical",
            "name": "Verify loop (build / test / typecheck)",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Pinned-Dependencies. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_pinned_dependencies"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 24,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "no dependencies found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "primary_language": "Ruby",
              "largest_source_bytes": 57254,
              "source_files_sampled": 47,
              "oversized_source_files": 0
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Ruby without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "Ruby"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "0/47 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 47,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "No resolved dependencies carried a version and a supported ecosystem"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-22T00:12:14.431030Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/relevance/rcov.svg",
  "full_name": "relevance/rcov",
  "license_state": "custom",
  "license_spdx": null
}

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

Відсутні дані виключаються, а ваги перенормовуються — нуль за відсутність ніколи не ставиться. Методологія версіонована й відкрита: метрики v1.13.0, схема v0.26.0 — повна методологія · вікі метрик.

Як окремий результат виглядає на тлі всього реєстру: сукупна статистика.