Публічний реєстр
Звіт про здоров'я програмного забезпеченнясхема 0.27.0 · метрики 2.2.0 · 2026-08-02 03:25 UTC

raullenchai / Rapid-MLX

The fastest local AI engine for Apple Silicon. 4.2x faster than Ollama, 0.08s cached TTFT, 100% tool calling. 17 tool parsers, prompt cache, reasoning separation, cloud routing. Drop-in OpenAI replacement. Works with Claude Code, Cursor, Aider.

PythonApache-2.0★ 3 392 зірки⑂ 388 форківз лют. 2026 р.Переглянути на GitHub ↗

raullenchai/Rapid-MLX має індекс здоров’я 93 зі 100, що відповідає смузі «Винятковий». Найвищий показник — Engineering Quality (96/100), найнижчий — AI Readiness (54/100). Останнє оновлення — сьогодні. Більшість нещодавньої роботи виконує один учасник.

93
загалом / 100
Винятковий

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

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

93
Винятковий93-100Верхній щабель реєстру (≈ топ-5%); відповідає практично всім перевіреним критеріям
Відмінний80-92Сильний за всіма напрямами; незначні прогалини
Добрий65-79Здоровий; прогалини обмежені та керовані
Помірний50-64Прийнятний, але з помітними прогалинами; рекомендовано перевірку
Слабкий35-49Суттєві недоліки в кількох сферах
У зоні ризику20-34Суттєві слабкі місця; впровадження потребує обережності
Критичний1-19Серйозні проблеми (покинутий, єдиний мейнтейнер, без базової гігієни)
ЖиттєздатністьСпільнота тавпровадженняСталість таврядуванняІнженернаякістьБезпекаГотовність доШІ

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

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

Зважений загальний бал 79 калібровано до 93 за шкалою опублікованого індексу (калібрування реєстру 2026-08-02).

Власність

Raullen ChaiОсобистий обліковий запис
935 підписників134 публічні репозиторіїз серп. 2011 р.

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

Пакетні екосистеми

РеєстрПакетВерсіяЗавантажень / місВерсіїОстання публікаціяТеги
PyPIrapid-mlx0.11.6-1790 днів томуllmmlxapple-siliconinferencetransformers

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

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

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

91Відмінний · 21% загального індексу
Як обчислюється оцінка
36/36Свіжість push — останній push 0 дн. тому
22.2/36Ритм комітів — 32/52 тижнів із комітами
18/18Обсяг комітів — 1 311 комітів за останній рік
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10
Використані вхідні дані
commits_last_year1 311
human_commit_share1
days_since_last_push0
active_weeks_last_year32
Як обчислюється оцінка
27/27Випускає релізи — опубліковано 100 релізів
36/36Свіжість релізів — останній реліз 0 дн. тому
27/27Ритм релізів — реліз кожні ~1,3 дн.
8/10OpenSSF Scorecard: Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
Використані вхідні дані
releases_count100
latest_release_tagv0.11.6
releases_from_tagsні
days_since_latest_release0
mean_days_between_releases1,3

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

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

83Відмінний · 17% загального індексу
Як обчислюється оцінка
57.3/60Зірки — 3 392 зірок
21.6/25Форки — 388 форків
10/15Спостерігачі — 64 спостерігачів
Використані вхідні дані
forks388
stars3 392
watchers64
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Як обчислюється оцінка
22.5/22.5README
22.5/22.5Ліцензія — визнана ліцензія (Apache-2.0)
18/18Настанови CONTRIBUTING
0/13.5Кодекс поведінки
0/7.2Шаблон issue
6.3/6.3Шаблон PR
Використані вхідні дані
has_readmeтак
has_licenseтак
readme_badges
has_contributingтак
has_issue_templateні
has_code_of_conductні
readme_badge_services
has_pull_request_templateтак

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

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

67Добрий · 23% загального індексу
Як обчислюється оцінка
9/54Бас-фактор — на 1 контриб’ютор(ів) припадає половина всіх комітів
3.2/22.5Розподіл комітів — головний контриб’ютор — автор 86% комітів
13.5/13.5Широта контриб’юторів — 38 контриб’юторів
10/10OpenSSF Scorecard: Contributors — project has 11 contributing companies or organizations
Використані вхідні дані
bus_factor1
contributors_sampled38
top_contributor_share0,857
Як обчислюється оцінка
37/42Вирішення issue — закрито 88% issue
27.7/30Прийняття PR — злито 974/1 053 вирішених PR
0/13Newcomer PR acceptance — за 30 дн. не вирішено жодного PR від новачка
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Використані вхідні дані
merged_prs974
open_issues31
closed_issues227
prs_merged_7d
prs_decided_7d
prs_merged_30d
prs_decided_30d
issue_closed_ratio0,88
closed_unmerged_prs79
first_time_authors_30d
first_time_prs_merged_30d
first_time_prs_decided_30d
Виключено з оцінювання (немає даних або не застосовно): newcomer_pr_acceptance. Залишкові ваги перенормовано.
Як обчислюється оцінка
10/30Підтримка власника — особистий (користувацький) обліковий запис
0/20Верифікований домен — не застосовно до користувацьких облікових записів
21.4/25Охоплення власника — 935 підписників у raullenchai
25/25Послужний список — 134 публічних репозиторіїв, вік облікового запису ~14 р.
Використані вхідні дані
followers935
owner_typeUser
is_verified
owner_loginraullenchai
public_repos134
account_age_days5 462
Виключено з оцінювання (немає даних або не застосовно): Верифікований домен. Залишкові ваги перенормовано.

Супровід пакетів

100Винятковий
Як обчислюється оцінка
25/25Опубліковано й доступно — 1 пакет(ів) у pypi
35/35Свіжість публікацій — остання публікація 0 дн. тому
20/20Історія версій — 179 опублікованих версій
20/20Не застарілий — активний, не deprecated і не yanked
Використані вхідні дані
packagesrapid-mlx
ecosystemspypi
any_deprecatedні
min_days_since_publish0

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

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

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

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

100Винятковий
Як обчислюється оцінка
30/30README
25/25Каталог документації
15/15Сайт документації / домашня сторінка — https://pypi.org/project/rapid-mlx
10/10Опис репозиторію
10/10Теми — 19 тем
10/10Wiki
Використані вхідні дані
topicsapple-silicon, fastapi, inference, llm, local-llm, macos, mlx, openai-api, python, tool-calling, hacktoberfest, ollama-alternative, m1, m2, m3, qwen, deepseek, claude-code, cursor
has_wikiтак
homepagehttps://pypi.org/project/rapid-mlx
has_readmeтак
has_docs_dirтак
has_descriptionтак

Безпека

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

61Помірний · 16% загального індексу

Стан безпеки

61Помірний
Як обчислюється оцінка
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
2.5/2.5CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 11 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Ліцензія — license file detected
7.5/7.5Maintained — 30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
1/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 2
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
5/5Security-Policy — security policy file detected
6/7.5Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
6.8/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Використані вхідні дані
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate6,1

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

Наскільки репозиторій оснащений для розробки та супроводу за участі ШІ-агентів? Має свідомо малу вагу (4%): агентний інструментарій — реальний сигнал супроводу, але репозиторій без нього все одно може отримати 100/100.

54Помірний · 4% загального індексу
Як обчислюється оцінка
0/45Інструкції для агентів — немає CLAUDE.md / AGENTS.md / правил редактора
0/15Машиночитана документація (llms.txt)
40/40Читабельна історія комітів — намір зазначено у 100 з 100 людських комітів (структурований заголовок або пояснювальний текст)
Використані вхідні дані
has_llms_txtні
legible_history_share1
agent_instruction_files
agent_instruction_max_bytes
Як обчислюється оцінка
18/18Розгортання однією командою — Makefile, mise.toml
22/22Автоматизовані тести
11/11Конфігурація лінтера / форматера
0/11Статична перевірка типів
0/10Відтворюване середовище
10/10Підтверджена практика роботи з агентами — 38 з останніх 100 комітів створено агентом або з його зазначенням
0/8Автоматизоване супроводження — автоматичних оновлень залежностей не виявлено
2/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 2
Використані вхідні дані
has_nixні
has_testsтак
lockfiles
has_dockerfileні
typed_languageні
bootstrap_filesMakefile, mise.toml
has_devcontainerні
has_linter_configтак
typecheck_configs
agent_commit_share0,38
toolchain_manifests
dependency_bot_commit_share0
Як обчислюється оцінка
0/45Типізований код — Python без конфігурації перевірки типів
51.3/55Керовані розміри файлів — 61/897 файлів вихідного коду понад 60 КБ
Використані вхідні дані
primary_languagePython
largest_source_bytes404 100
source_files_sampled897
oversized_source_files61
Як обчислюється оцінка
0/40Схема API (OpenAPI/GraphQL/proto)
20/20Сервер MCP
40/40Придатні до запуску приклади — examples
Використані вхідні дані
example_dirsexamples
has_mcp_signalтак
api_schema_files

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

3 392зірок GitHub
38контриб'юторів
1 311комітів за останні 12 місяців
0днів від останнього пушу
100релізів
1бас-фактор
31відкритих issue
PyPIпакетних екосистем

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

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository
  • deps.dev does not index pypi:rapid-mlx@0.11.6; advisories assessed against the repository dependency graph instead

Докладніше

Історія зірок і форків 0 ★ / 388 ⇿
0Зірки
388Форки
98Релізи

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

0100200300400378632026-032026-052026-08
Мажорні 0Мінорні 5Патчі 93
OpenSSF Scorecard 6.1 / 10
6.1сукупно

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

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
10Contributorsproject has 11 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
2Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 2
0SASTSAST tool is not run on all commits -- score normalized to 0
10Security-Policysecurity policy file detected
8Signed-Releases5 out of the last 5 releases have a total of 5 signed artifacts.
9Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
Прямі залежності 20
РеєстрПакетОбмеження версіїМаніфест
PyPImlx>=0.31.2pyproject.toml
PyPImlx-lm>=0.31.3pyproject.toml
PyPItransformers>=5.0.0,<5.13pyproject.toml
PyPItokenizers>=0.19.0pyproject.toml
PyPIhuggingface-hub>=0.23.0pyproject.toml
PyPInumpy>=1.24.0pyproject.toml
PyPItqdm>=4.66.0pyproject.toml
PyPIpyyaml>=6.0pyproject.toml
PyPIrequests>=2.28.0pyproject.toml
PyPIrich>=13.8.0pyproject.toml
PyPItabulate>=0.9.0pyproject.toml
PyPIpsutil>=5.9.0pyproject.toml
PyPIfastapi>=0.100.0pyproject.toml
PyPIuvicorn>=0.23.0pyproject.toml
PyPImcp>=1.9.3pyproject.toml
PyPIjsonschema>=4.0.0pyproject.toml
PyPIargcomplete>=3.6pyproject.toml
PyPIwebsockets>=12.0pyproject.toml
PyPIopenai-harmony>=0.0.8pyproject.toml
PyPIllguidance>=1.7.6pyproject.toml
Усі залежності не зібрано

Не вдалося зібрати розв'язаний набір залежностей для цього звіту: GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository

Звіт у форматі JSON машиночитний
{
  "data": {
    "repo": {
      "topics": [
        "apple-silicon",
        "fastapi",
        "inference",
        "llm",
        "local-llm",
        "macos",
        "mlx",
        "openai-api",
        "python",
        "tool-calling",
        "hacktoberfest",
        "ollama-alternative",
        "m1",
        "m2",
        "m3",
        "qwen",
        "deepseek",
        "claude-code",
        "cursor"
      ],
      "is_fork": false,
      "size_kb": 35506,
      "has_wiki": true,
      "homepage": "https://pypi.org/project/rapid-mlx",
      "languages": {
        "HTML": 13811,
        "Metal": 8284,
        "Shell": 143973,
        "Python": 20059239,
        "Makefile": 3973
      },
      "pushed_at": "2026-08-02T03:22:57Z",
      "created_at": "2026-02-25T00:41:44Z",
      "owner_type": "User",
      "updated_at": "2026-08-02T03:23:04Z",
      "description": "The fastest local AI engine for Apple Silicon. 4.2x faster than Ollama, 0.08s cached TTFT, 100% tool calling. 17 tool parsers, prompt cache, reasoning separation, cloud routing. Drop-in OpenAI replacement. Works with Claude Code, Cursor, Aider.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "Python",
      "significant_languages": [
        "Python"
      ]
    },
    "owner": {
      "blog": null,
      "name": "Raullen Chai",
      "type": "User",
      "login": "raullenchai",
      "company": null,
      "location": "San Francisco",
      "followers": 935,
      "avatar_url": "https://avatars.githubusercontent.com/u/989846?v=4",
      "created_at": "2011-08-18T22:56:57Z",
      "is_verified": null,
      "public_repos": 134,
      "account_age_days": 5462
    },
    "license": {
      "state": "standard",
      "spdx_id": "Apache-2.0",
      "raw_spdx": "Apache-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.11.6",
          "kind": "patch",
          "published_at": "2026-08-02T03:16:46Z"
        },
        {
          "tag": "v0.11.5",
          "kind": "patch",
          "published_at": "2026-08-01T06:07:29Z"
        },
        {
          "tag": "v0.11.4",
          "kind": "patch",
          "published_at": "2026-07-31T15:00:06Z"
        },
        {
          "tag": "v0.11.3",
          "kind": "patch",
          "published_at": "2026-07-30T23:40:40Z"
        },
        {
          "tag": "v0.11.1",
          "kind": "patch",
          "published_at": "2026-07-28T05:27:59Z"
        },
        {
          "tag": "v0.11.0",
          "kind": "minor",
          "published_at": "2026-07-24T15:09:54Z"
        },
        {
          "tag": "v0.10.18",
          "kind": "patch",
          "published_at": "2026-07-24T01:09:12Z"
        },
        {
          "tag": "v0.10.17",
          "kind": "patch",
          "published_at": "2026-07-22T21:59:48Z"
        },
        {
          "tag": "v0.10.16",
          "kind": "patch",
          "published_at": "2026-07-22T17:28:27Z"
        },
        {
          "tag": "v0.10.15",
          "kind": "patch",
          "published_at": "2026-07-21T13:06:58Z"
        },
        {
          "tag": "v0.10.14",
          "kind": "patch",
          "published_at": "2026-07-21T12:26:27Z"
        },
        {
          "tag": "v0.10.12",
          "kind": "patch",
          "published_at": "2026-07-17T16:22:26Z"
        },
        {
          "tag": "v0.10.10",
          "kind": "patch",
          "published_at": "2026-07-15T13:54:57Z"
        },
        {
          "tag": "v0.10.9",
          "kind": "patch",
          "published_at": "2026-07-12T03:35:34Z"
        },
        {
          "tag": "v0.10.8",
          "kind": "patch",
          "published_at": "2026-07-11T20:38:01Z"
        },
        {
          "tag": "v0.10.7",
          "kind": "patch",
          "published_at": "2026-07-11T00:00:30Z"
        },
        {
          "tag": "v0.10.5",
          "kind": "patch",
          "published_at": "2026-07-08T14:54:13Z"
        },
        {
          "tag": "v0.10.3",
          "kind": "patch",
          "published_at": "2026-07-07T18:39:08Z"
        },
        {
          "tag": "v0.10.2",
          "kind": "patch",
          "published_at": "2026-07-07T01:04:10Z"
        },
        {
          "tag": "v0.10.1",
          "kind": "patch",
          "published_at": "2026-07-05T14:09:07Z"
        },
        {
          "tag": "v0.10.0",
          "kind": "minor",
          "published_at": "2026-07-04T17:37:26Z"
        },
        {
          "tag": "v0.9.14",
          "kind": "patch",
          "published_at": "2026-07-04T15:38:46Z"
        },
        {
          "tag": "v0.9.13",
          "kind": "patch",
          "published_at": "2026-07-04T07:42:52Z"
        },
        {
          "tag": "v0.9.12",
          "kind": "patch",
          "published_at": "2026-07-03T06:05:51Z"
        },
        {
          "tag": "v0.9.11",
          "kind": "patch",
          "published_at": "2026-07-03T04:08:02Z"
        },
        {
          "tag": "v0.9.10",
          "kind": "patch",
          "published_at": "2026-07-01T16:53:14Z"
        },
        {
          "tag": "v0.9.9",
          "kind": "patch",
          "published_at": "2026-06-30T19:06:01Z"
        },
        {
          "tag": "v0.9.8",
          "kind": "patch",
          "published_at": "2026-06-28T17:24:45Z"
        },
        {
          "tag": "v0.9.7",
          "kind": "patch",
          "published_at": "2026-06-26T14:21:08Z"
        },
        {
          "tag": "v0.9.6",
          "kind": "patch",
          "published_at": "2026-06-26T07:51:22Z"
        },
        {
          "tag": "v0.9.5",
          "kind": "patch",
          "published_at": "2026-06-26T07:37:46Z"
        },
        {
          "tag": "v0.9.4",
          "kind": "patch",
          "published_at": "2026-06-26T07:25:55Z"
        },
        {
          "tag": "v0.9.3",
          "kind": "patch",
          "published_at": "2026-06-26T07:13:57Z"
        },
        {
          "tag": "v0.9.2",
          "kind": "patch",
          "published_at": "2026-06-26T06:52:20Z"
        },
        {
          "tag": "v0.9.1",
          "kind": "patch",
          "published_at": "2026-06-26T06:41:13Z"
        },
        {
          "tag": "v0.9.0",
          "kind": "minor",
          "published_at": "2026-06-26T06:20:16Z"
        },
        {
          "tag": "v0.8.19",
          "kind": "patch",
          "published_at": "2026-06-25T05:12:25Z"
        },
        {
          "tag": "v0.8.18",
          "kind": "patch",
          "published_at": "2026-06-24T18:56:57Z"
        },
        {
          "tag": "v0.8.16",
          "kind": "patch",
          "published_at": "2026-06-24T07:43:44Z"
        },
        {
          "tag": "v0.8.15",
          "kind": "patch",
          "published_at": "2026-06-24T06:06:21Z"
        },
        {
          "tag": "v0.8.14",
          "kind": "patch",
          "published_at": "2026-06-24T05:03:22Z"
        },
        {
          "tag": "v0.8.13",
          "kind": "patch",
          "published_at": "2026-06-24T04:09:29Z"
        },
        {
          "tag": "v0.8.12",
          "kind": "patch",
          "published_at": "2026-06-23T21:04:27Z"
        },
        {
          "tag": "v0.8.11",
          "kind": "patch",
          "published_at": "2026-06-23T16:56:37Z"
        },
        {
          "tag": "v0.8.10",
          "kind": "patch",
          "published_at": "2026-06-22T11:11:17Z"
        },
        {
          "tag": "v0.8.9",
          "kind": "patch",
          "published_at": "2026-06-22T09:22:29Z"
        },
        {
          "tag": "v0.8.8",
          "kind": "patch",
          "published_at": "2026-06-22T06:58:39Z"
        },
        {
          "tag": "v0.8.7",
          "kind": "patch",
          "published_at": "2026-06-22T05:23:38Z"
        },
        {
          "tag": "v0.8.6",
          "kind": "patch",
          "published_at": "2026-06-22T03:46:44Z"
        },
        {
          "tag": "v0.8.5",
          "kind": "patch",
          "published_at": "2026-06-22T01:18:06Z"
        },
        {
          "tag": "v0.8.4",
          "kind": "patch",
          "published_at": "2026-06-21T23:39:36Z"
        },
        {
          "tag": "v0.8.3",
          "kind": "patch",
          "published_at": "2026-06-21T22:48:20Z"
        },
        {
          "tag": "v0.8.2",
          "kind": "patch",
          "published_at": "2026-06-21T14:28:08Z"
        },
        {
          "tag": "v0.8.1",
          "kind": "patch",
          "published_at": "2026-06-21T00:28:53Z"
        },
        {
          "tag": "v0.8.0",
          "kind": "minor",
          "published_at": "2026-06-20T17:30:15Z"
        },
        {
          "tag": "v0.7.41",
          "kind": "patch",
          "published_at": "2026-06-19T21:26:01Z"
        },
        {
          "tag": "v0.7.37",
          "kind": "patch",
          "published_at": "2026-06-19T15:09:06Z"
        },
        {
          "tag": "v0.7.32",
          "kind": "patch",
          "published_at": "2026-06-19T00:16:41Z"
        },
        {
          "tag": "v0.7.31",
          "kind": "patch",
          "published_at": "2026-06-18T21:14:43Z"
        },
        {
          "tag": "v0.7.29",
          "kind": "patch",
          "published_at": "2026-06-18T05:39:02Z"
        },
        {
          "tag": "v0.7.28",
          "kind": "patch",
          "published_at": "2026-06-18T00:59:05Z"
        },
        {
          "tag": "v0.7.27",
          "kind": "patch",
          "published_at": "2026-06-17T20:48:05Z"
        },
        {
          "tag": "v0.7.26",
          "kind": "patch",
          "published_at": "2026-06-17T04:27:27Z"
        },
        {
          "tag": "v0.7.20",
          "kind": "patch",
          "published_at": "2026-06-16T21:50:21Z"
        },
        {
          "tag": "v0.7.15",
          "kind": "patch",
          "published_at": "2026-06-16T17:42:43Z"
        },
        {
          "tag": "v0.7.13",
          "kind": "patch",
          "published_at": "2026-06-16T13:46:49Z"
        },
        {
          "tag": "v0.7.12",
          "kind": "patch",
          "published_at": "2026-06-16T12:54:44Z"
        },
        {
          "tag": "v0.7.11",
          "kind": "patch",
          "published_at": "2026-06-16T00:34:22Z"
        },
        {
          "tag": "v0.7.9",
          "kind": "patch",
          "published_at": "2026-06-15T21:20:49Z"
        },
        {
          "tag": "v0.7.7",
          "kind": "patch",
          "published_at": "2026-06-15T20:38:49Z"
        },
        {
          "tag": "v0.7.6",
          "kind": "patch",
          "published_at": "2026-06-15T06:54:08Z"
        },
        {
          "tag": "v0.7.3",
          "kind": "patch",
          "published_at": "2026-06-12T05:06:41Z"
        },
        {
          "tag": "v0.7.2",
          "kind": "patch",
          "published_at": "2026-06-11T23:18:01Z"
        },
        {
          "tag": "v0.7.1",
          "kind": "patch",
          "published_at": "2026-06-11T06:06:55Z"
        },
        {
          "tag": "v0.7.0",
          "kind": "minor",
          "published_at": "2026-06-10T01:57:00Z"
        },
        {
          "tag": "v0.6.83",
          "kind": "patch",
          "published_at": "2026-06-09T05:49:44Z"
        },
        {
          "tag": "v0.6.82",
          "kind": "patch",
          "published_at": "2026-06-07T17:11:03Z"
        },
        {
          "tag": "v0.6.81",
          "kind": "patch",
          "published_at": "2026-06-07T14:40:56Z"
        },
        {
          "tag": "v0.6.80",
          "kind": "patch",
          "published_at": "2026-06-06T19:19:01Z"
        },
        {
          "tag": "v0.6.79",
          "kind": "patch",
          "published_at": "2026-06-06T16:31:23Z"
        },
        {
          "tag": "v0.6.78",
          "kind": "patch",
          "published_at": "2026-06-06T15:23:43Z"
        },
        {
          "tag": "v0.6.77",
          "kind": "patch",
          "published_at": "2026-06-06T05:29:18Z"
        },
        {
          "tag": "v0.6.76",
          "kind": "patch",
          "published_at": "2026-06-05T21:30:44Z"
        },
        {
          "tag": "v0.6.75",
          "kind": "patch",
          "published_at": "2026-06-05T04:57:52Z"
        },
        {
          "tag": "v0.6.74",
          "kind": "patch",
          "published_at": "2026-06-04T13:12:41Z"
        },
        {
          "tag": "v0.6.73",
          "kind": "patch",
          "published_at": "2026-06-04T01:37:09Z"
        },
        {
          "tag": "v0.6.72",
          "kind": "patch",
          "published_at": "2026-06-03T21:45:16Z"
        },
        {
          "tag": "v0.6.71",
          "kind": "patch",
          "published_at": "2026-06-01T23:30:53Z"
        },
        {
          "tag": "v0.6.70",
          "kind": "patch",
          "published_at": "2026-06-01T13:57:49Z"
        },
        {
          "tag": "v0.6.69",
          "kind": "patch",
          "published_at": "2026-05-30T03:53:15Z"
        },
        {
          "tag": "v0.6.68",
          "kind": "patch",
          "published_at": "2026-05-28T15:54:42Z"
        },
        {
          "tag": "v0.6.66",
          "kind": "patch",
          "published_at": "2026-05-23T01:53:45Z"
        },
        {
          "tag": "v0.6.65",
          "kind": "patch",
          "published_at": "2026-05-22T19:59:46Z"
        },
        {
          "tag": "v0.6.64",
          "kind": "patch",
          "published_at": "2026-05-21T22:48:39Z"
        },
        {
          "tag": "v0.6.63",
          "kind": "patch",
          "published_at": "2026-05-21T21:26:48Z"
        },
        {
          "tag": "v0.6.62",
          "kind": "patch",
          "published_at": "2026-05-21T18:41:22Z"
        },
        {
          "tag": "v0.6.61",
          "kind": "patch",
          "published_at": "2026-05-20T20:59:55Z"
        },
        {
          "tag": "v0.6.60",
          "kind": "patch",
          "published_at": "2026-05-20T06:01:51Z"
        },
        {
          "tag": "v0.6.59",
          "kind": "patch",
          "published_at": "2026-05-19T17:55:06Z"
        },
        {
          "tag": "v0.6.58",
          "kind": "patch",
          "published_at": "2026-05-19T05:12:52Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "b8ab5c5e7f9cde0e7ca55e5e9f4cec88ed85252f",
          "body": null,
          "is_bot": false,
          "headline": "chore: bump version to 0.11.7",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-02T03:22:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2e9b12fa031b878f1d92d31d1cb125045ec814e2",
          "body": "…w (#1384)\n\nMerge PR #1384: prove G7 guard fail-loud with bash-driven boundary + exit shadow",
          "is_bot": false,
          "headline": "test: prove G7 guard fail-loud with bash-driven boundary + exit shado…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-02T03:17:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7f0ffba993951504b9df5305715dd5ac08049dc9",
          "body": null,
          "is_bot": false,
          "headline": "chore: bump version to 0.11.6",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-02T03:10:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d6e0148b93df407d61cbbb8052f060819e9983ff",
          "body": null,
          "is_bot": false,
          "headline": "fix(cache): persist and reuse DeepSeek V4 prefixes across restarts",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-02T03:07:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ff54ad47d0b41e2b00e6ea0476667bdcebd01f78",
          "body": "…1382)\n\nThe test previously located the G7 SDK integration section by an exact\nbanner string (#-------------------- G7 SDK integration). A harmless\nbanner-format change (# --- G7 SDK integration (three tests, each its\nown job) ---) broke the test before it could check the real invariant:\nthat the RA\n[…]\nual test_anthropic_sdk.py invocation.\n\nAdd a regression that verifies the section is locatable across several\nbanner formats, so harmless banner-spacing changes no longer break the\ntest. Closes #1370.",
          "is_bot": false,
          "headline": "test: make G7 RAPID_MLX_BASE_URL guard test banner-format agnostic (#…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-02T02:34:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "55f983b957b8341f60e646e036e0e86b5d3f00ab",
          "body": "* fix(deepseek-v4): adopt protocol-aware reasoning parser\n\n* fix(cache): reuse strict prefix on exact prompts\n\n* fix(deepseek-v4): default implicit output to reasoning\n\n* fix(cache): keep unusable exact entries cold\n\n* fix(reasoning): fail closed on parser setup\n\n* fix(deepseek-v4): keep truncated reasoning private\n\n* fix(reasoning): suppress disabled DeepSeek scratch\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(deepseek-v4): cut warm TTFT and contain reasoning (#1383)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-02T00:46:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef495bf47a50c7a25d5767e556e474f31f172f75",
          "body": "* feat(deepseek): add native DSpark decoding\n\n* fix(deepseek): preserve Codex prefix cache across tool rounds\n\n* style: format DeepSeek DSpark changes\n\n* fix(dspark): restore caches on fallback and early stop\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(deepseek): add native DSpark speculative decoding (#1379)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-01T20:36:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "585ae36d1b64d6bd3b4dbbfbab56615aa7005f4d",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(agent): stop long repetition loops earlier (#1378)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-01T15:35:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0796ea7cec218a060fb4c6f547696ef092b908c7",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(agent): stop runaway exact repetition loops (#1377)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-01T14:51:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3bc1d78ba0e6e5d39291250ef5bdf12e6d2b560",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.5",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-01T06:01:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c1b59a9088bfab75f7690a0f9583b28074fab11a",
          "body": "* fix DeepSeek DSML leakage in Responses streams\n\n* address validation feedback\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "Fix DeepSeek DSML leakage in Responses streams (#1373)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-01T04:37:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80fa5eb3614d84e2b48dc6f9909c2215adbbd998",
          "body": "* fix(cache): accelerate repeated DeepSeek V4 prompts\n\n* fix(cache): preserve unsegmented prompt snapshots\n\n* fix(cache): scope and confirm N-1 snapshots\n\n* fix(cache): handle aligned internal boundaries\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(cache): make DeepSeek V4 prefix reuse effective (#1371)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-08-01T01:35:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "845270faeb2970afbdce653c02e0cf2073b04491",
          "body": "* fix: stabilize DeepSeek V4 Flash 0731 serving\n\n* fix: address DeepSeek V4 review findings\n\n* fix: preserve DeepSeek V4 batched mask semantics\n\n* fix: harden DeepSeek V4 pooling cache edges\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix: stabilize DeepSeek V4 Flash 0731 serving (#1369)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T23:58:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c51b7da0c6131df9e6b6a80d2822e57506752b2e",
          "body": "… canary (#1250) (#1266)\n\nPhase A (client) of the post-release garbage/empty-rate alert. Adds one\nderived boolean to the request telemetry event: did the completion look\ndegenerate (repetition / single-token collapse) per the LOCAL\nlooks_like_garbage heuristic? This is the signal that catches the #1\n[…]\nor). The server-side per-version aggregation + alert is\nPhase B.\n\nRefs #1250.\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(telemetry): client-side output_degenerate signal for per-version…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T23:48:21Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "98991c46837d61078c122f702140cfac15568a50",
          "body": "… (Qwen+Llama)\n\nAdd an L1 release-flow gate: a small-model GPU coherence + tool-call format\nsmoke on the FREE macos-14 hosted runner (real Metal GPU, $0 on a public repo),\nrunning on every PR to catch gross engine/parser breakage before the expensive\nStudio (L2) gate.\n\n- Matrix over two families exe\n[…]\nprove-before-enforce.\n\nExpanding past two families is gated on #1367 (mlx-vlm text-lane bug for the\nonly small Gemma/Mistral models, which are multimodal).\n\nVerified green on the real macos-14 runner.",
          "is_bot": false,
          "headline": "ci: L1 small-model GPU smoke on free macos-14 — coherence + tool-call…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T21:04:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f91116ba1ecef10bb3c64625871a05d2e498ff4d",
          "body": "* fix: support mixed-length DeepSeek V4 batches\n\n* test: skip DeepSeek V4 MLX cases off macOS\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix: support mixed-length DeepSeek V4 batches (#1365)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T18:41:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b65cddbecbaf3fad371c1093de8c0e5c8caa3fbc",
          "body": "* feat: support DeepSeek V4 Flash 0731\n\n* fix: harden DeepSeek V4 streaming boundaries\n\n* fix: load official DeepSeek V4 MXFP checkpoint\n\n* test: document DeepSeek V4 matrix exemption\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat: support DeepSeek V4 Flash 0731 (#1364)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T18:21:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df70f8752f020c56663caadd1e3191d920e31301",
          "body": "Re-trigger auto-release for 0.11.4 with the ssh-localhost Tier-1 gate fix on main (PR #1362). pyproject already at 0.11.4; carries the fixed tests/integrations/agent_smoke.sh so the tier1-agent-gate runs the 35B model in a login-session GPU perf state.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.4",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T14:49:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "834103b6c50534d3e12ae1762a3f7cfe3fa361f3",
          "body": "Manual-dispatch-only diagnostic to root-cause why 35B large-context\nprefill runs ~100x slower ONLY inside the self-hosted Tier-1 gate runner\n(warmup + all 4 agents time out) vs 3-10s in every interactive test.\n\nProbes, in the real runner execution context:\n- arch / Rosetta translation state\n- MLX de\n[…]\nlash + completion timing\n\nRuns no agents; never touches ~/.codex or ~/.hermes. Shares the gate's\nconcurrency group so it can't overlap a real release gate. Safe to delete\nonce the root cause is fixed.",
          "is_bot": false,
          "headline": "ci(diag): throwaway runner large-ctx latency probe (#1361)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T14:03:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7b36ed4833739db37983c0ae2ae423661b59b11c",
          "body": "Re-trigger auto-release for 0.11.4 with the hardened tier1-agent-gate (retrying dual-route large-context kernel warmup + job cap 55->90). pyproject is already 0.11.4; this squash subject re-fires detect. Harness/workflow only — no product code. See PR #1360.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.4 (#1360)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T12:04:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1dbc1274cbb898868def99c0a74096b65fafb341",
          "body": "Harness-only: warm the large-context Metal kernel before the timed Tier-1 agents so the first agent request lands on warm kernels — fixes the cold-compile gate hang that stalled the 0.11.4 auto-release. pyproject is already 0.11.4 (#1355); this re-triggers auto-release to run the fixed gate and tag v0.11.4. Engine core byte-identical v0.11.3..main; validated end-to-end (4/4 Tier-1 agents PASS).",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.4 (#1358)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T10:42:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "71367c952b77792589906bcc6e4591c48d2a6158",
          "body": "Ship 0.11.4 by making tier1-agent-gate reliable: serve the gate model with --no-thinking to bound each hybrid-reasoning turn (thinking-on runaway CoT blew the per-agent budget). Pairs with the serial-execution fix (#1356). Validated end-to-end on the Studio: all four Tier-1 agents PASS, no turn >26s, ~6 min total. Re-triggers auto-release with the fixed gate to tag v0.11.4.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.4 (#1357)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T09:48:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9491cb8fb4e8ff192ec3e2484f9f0642b5a7eee7",
          "body": "Ship 0.11.4 by making the self-hosted tier1-agent-gate reliable: run the four Tier-1 agents serially instead of concurrently (#1348 oversubscribed the single GPU). pyproject already at 0.11.4 (#1355); this merge's subject re-triggers auto-release with the fixed gate. Validated end-to-end on the Studio box: claude 273s / codex 133s / hermes 54s / aider 5s, all PASS, 465s total.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.4 (#1356)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T08:28:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "73867739602748b158700ef66e9d27cc7e13d2eb",
          "body": "Release 0.11.4. Publishes accumulated audio/video features (#1340/#1343/#1346/#1347/#1349) plus release-tooling hardening (#1348/#1354) to PyPI. Bumps pyproject 0.11.3 -> 0.11.4.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.4",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T06:43:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a4520b2a3c48472e44d24a0ee77797fd2f9c7c37",
          "body": "…et pre-flight (#1354)\n\nThe local release gauntlet (`make release-check-m3`, scripts/release_check_m3.sh)\nran every live-server gate strictly serially and had a recurring \"bumpy release\"\nfailure mode where a concurrent workflow silently corrupted a run. This makes three\nchanges — a pre-flight guard,\n[…]\nl-fast, #1247); G5 stress\nand G9 latency stay SOLO (their verdicts need an uncontended server); G8 parser\nmicrobench stays serial (pure CPU). No engine or shipped code changes — gauntlet\ntooling only.",
          "is_bot": false,
          "headline": "perf(release): parallelize light correctness gates + harden M3 gauntl…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T06:33:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "da8504a1c8009454c1ad3fc24ee11b3f019925b0",
          "body": "#1351 (mine, merged 28 seconds after #1349) said the LTX section's\ncheckpoint \"emits synchronized audio alongside the frames, which the\nother two backends do not\". That was true of the pipeline and false of\nwhat the API returns: #1349 added an unconditional _remove_audio_track()\nat the end of the LT\n[…]\nsound. Also says plainly that\nnone of the three backends return audio, so nobody goes looking for it\non Wan or CogVideoX-Fun either.\n\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(video): LTX does not return audio — #1349 strips it (#1353)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T05:14:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a879bccc3f7fd4bdd25981333fb8b7ec5416f888",
          "body": "Three things were wrong or missing after 0.11.3:\n\n- The alias count read \"165+ text aliases + 26 audio across 30+ families\".\n  0.11.3 registers 41 audio, and the 8 video aliases were never counted at\n  all. Now \"165 text + 41 audio + 8 video aliases, 214 total\".\n- The video section was titled \"LTX-2\n[…]\nized audio — the one thing the other two backends do not do).\n\nVerified: every alias cited in the README resolves in the registries.\n\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(readme): README still described the 0.11.1 feature set (#1351)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T03:36:04Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "37bb90bac0149b12fa56556707f9f6503c18932a",
          "body": "* fix: omit silent audio from LTX videos\n\n* fix: use owned temporary video output\n\n* fix: preserve remux errors during cleanup\n\n* fix: preserve LTX output permissions\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix: omit silent audio from LTX videos (#1349)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T03:35:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fd807c0c510b30ea659d9f8636b713db930c7dfb",
          "body": "* feat: lock VoiceDesign voices with seeds\n\n* fix: isolate VoiceDesign random sampling\n\n* fix: preserve TTSEngine positional arguments\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat: lock VoiceDesign voices with deterministic seeds (#1347)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T03:04:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bcc5e1573cde27b2757d1ba8922183ee10b2a72f",
          "body": "…ix cache\n\nThe Tier-1 agent gate (auto-release.yml, self-hosted Studio, 55-minute job) drove\nClaude Code / Codex / Hermes / Aider through the bug-fix task strictly serially,\nso its wall-clock was ~sum of the four agent runs. Two changes cut that without\nweakening the gate:\n\n1. Run the four agents CO\n[…]\n cache), total wall 311s bounded by the slowest agent instead of the sum\nof the four.\n\nRelease-gate tooling only; no product code paths change.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "perf(release): run the four Tier-1 agents concurrently + disable pref…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T02:58:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "99520f3f6811abe9edfbbb4105798462aea7395d",
          "body": "* feat: configure audio output format\n\n* fix: preserve native audio and validate codecs\n\n* perf: avoid audio conversion object expansion\n\n* fix: preserve native audio duration metadata\n\n* fix: make audio layout contract explicit\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat: configure audio output sample rate and channels (#1346)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T00:50:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4b0b600472955b0755c2566892ef658b6f39038c",
          "body": "vllm_mlx/audio/aliases.json registers 41 aliases across 12 families.\ndocs/guides/audio.md documented 7 of those families and 28 aliases —\nQwen3-TTS (8), F5-TTS, SenseVoice (2) and Qwen3-ForcedAligner (2) were\nabsent from the alias table, the header bullets and the model tables,\ndespite having shippe\n[…]\nches modes\n\nVerified programmatically: all 41 registry aliases now appear in the\nguide, and all 12 families are named in the header.\n\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(audio): the guide was missing five whole model families (#1345)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T00:30:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "93289002fff9b16c90f9a6d7ef651d14a0f39f5a",
          "body": "* feat: expose video capability limits\n\n* fix: align advertised Wan sizes with limits\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat: expose video capability limits (#1343)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T00:09:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae3d8e9d05d2094fe777366d71109f1b62ec7dfb",
          "body": "…out headroom (#1344)\n\nThe Tier-1 agent gate (auto-release.yml) false-negated the 0.11.3 cut 4/4 — not\non a product regression, but on two defects in its own harness.\n\n1. `agents {codex,hermes} --setup` was called without `--base-url`, so setup\n   probed the default localhost:8000 (empty in this run\n[…]\n6-35b-8bit @ 0.11.3:\nall four Tier-1 agents (Claude Code, Codex, Hermes, Aider) PASS.\n\nRelease-gate tooling only; no product code paths change.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(release): agent-smoke hermes/codex --base-url + cold-compile time…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-31T00:01:40Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b9bc50bf19ebcb58b0c0c239218ff9233fded70a",
          "body": "* feat: expose video motion controls\n\n* fix: preserve video backend defaults\n\n* fix: honor CogVideoX frame controls\n\n* test: cover conditioning strength upload\n\n* fix: validate LTX temporal controls\n\n* test: cover CogVideoX workload ceiling\n\n* fix: make frames the temporal source of truth\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat: expose video motion controls on /v1/videos (#1340)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T23:17:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae147252d0616a227d369c407a38833f6f5ce569",
          "body": "Cuts the 0.11.3 release (= intended 0.11.2 payload + agent-gate serve-budget fix #1341). Triggers auto-release.yml.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.3",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T22:15:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "83f2e2e34f0dab97c872c3ffcd1af53c6ecc45b9",
          "body": "…d start (#1341)\n\nThe Tier-1 agent gate (auto-release.yml) serves the default 35B hybrid model\n(Qwen3.6-35B-A3B, GatedDeltaNet) into a fresh venv. Its first cold serve on the\nStudio compiles the hybrid GatedDeltaNet Metal kernels, which pushes cold start\nto ~240s — right on the old 240s serve-ready \n[…]\nob timeout with room for\nthe four agent runs. A genuine never-binds hang still fails.\n\nRelease-gate tooling only; no product code paths change.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(release): widen agent-smoke serve-ready budget for 35B hybrid col…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T22:12:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5d0571db6c9f6b217a16c8322f84ce818c828fa1",
          "body": "Cuts the 0.11.2 release (audio + video generation wave + KV-quant/scheduler quality work, 33 commits since v0.11.1). Triggers auto-release.yml.",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.2",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T21:34:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db05ce1215e95a9b5bc4d2e6216e7e83cc1e7798",
          "body": "G12 (scripts/release_check_m3_random.py) reached completion for the first time\nduring the 0.11.2 cut and false-failed — none of the failures a product\nregression (the 0.11.2 range touches no parser/inference code). Two gate\ncalibration defects were surfaced and are fixed here:\n\n- Stale per-round tim\n[…]\nchange. The deeper\nsize-based-eligibility redesign (and the still-in-pool reasoning model\ndeepseek-r1-8b-4bit) is tracked in a follow-up issue.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(release): calibrate G12 random-coverage gate (#1332)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T21:31:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1c0a20b69828e7cd2b627cc9af47b8537fea818f",
          "body": "The consolidated `bench --tier harness` step of release_check_m3.sh\nfalse-fails the release gauntlet on the hermes profile in three ways,\nall surfaced during the 0.11.2 cut. None is a product regression.\n\n- test_hermes_code_review ran away past 600s: the open-ended prompt\n  drives the 9B gauntlet mo\n[…]\nstays untouched for\n  non-gauntlet/standalone callers. Env-overridable.\n\nTest-harness / release-gauntlet only; no production code paths change.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(release): stabilize G7b hermes gauntlet profile (#1330)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T19:43:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "03e7341338e97493fd22ca1229454c98ccdf96e2",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(video): bundle CogVideoX runtime (#1329)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T17:44:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c2878a0f2a1ab5ea91bb2b76b8d5692063d52caf",
          "body": "* test(batching): warm concurrent kernel shapes\n\n* test(batching): tolerate subsecond timing noise\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "test(batching): warm concurrent kernel shapes (#1328)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T17:30:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d114b350ed668b76fa23f90c657419e6a73ce2cf",
          "body": "* fix(audio): harden async generation lanes\n\n* fix(audio): satisfy route contract checks\n\n* test(audio): make F5 soundfile fake hermetic\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(audio): harden async generation lanes (#1327)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T17:20:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8973a004956071a06b1162bb44a78e48dde378cb",
          "body": "test_hermes_read_file passed hermes only the file basename, which the\n9B gauntlet model (qwen3.5-9b-4bit) cannot reliably resolve against its\nworking directory. It non-deterministically either asks a clarifying\nquestion and never reads the file (marker absent -> FAIL) or launches an\nagentic file sea\n[…]\n(os.getcwd(), ...))\ninstead of the basename. Still exercises hermes -> read_file tool -> echo\ncontents; only removes path-resolution ambiguity.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(test): hermes read_file passes absolute path (#1326)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T17:15:18Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "87dca1be70d7bfca7a77c6594037d937d7b6b469",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(video): preserve Python 3.10 core compatibility (#1325)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T16:55:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8c16e8aa5516f879c4e30e556ed7e12aeb3a9931",
          "body": "…pes (#1324)\n\nThe G0a output-coherence sweep boots each release-fleet model with\n`--no-thinking` and exact-matches a terse golden answer within a small\ntoken budget. `deepseek-r1-32b-4bit` scores 0/6 -- not because it is\nbroken, but because it is a DeepSeek-R1-Distill reasoning model that does\nnot h\n[…]\nptance and integration\ncoverage (the 56-cell matrix is unchanged).\n\nThe flag is retired once the coherence gate is reasoning-aware.\n\nRefs #1323\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(release): exclude DeepSeek-R1 from the coherence sweep in all sco…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T15:45:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5533791cc76353a021bbe985e378933d33f9857d",
          "body": "…ons (#1317)\n\nRebase of feat/align-route-hardening onto main (afe41c41), resolving the\noverlap with #1299 (word-timestamps) and #1301 (in-place alignment):\n\n- `_run_stt_request` is now ASR-only. Its former in-place `align()`\n  branch is deleted; forced alignment is dispatched separately by\n  `create\n[…]\ntask-cancellation shutdown sweeps and absorbs\n  repeated cancels.\n- ci.yml apple-silicon allowlist gains test_forced_alignment_route_hardening.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audio): harden the forced-alignment lane on /v1/audio/transcripti…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T15:08:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "08a9eaeaf8ea102474856e8339a03aa8b54015fa",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(video): add Wan 2.1 and 2.2 generation (#1322)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T14:36:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "afe41c41dddf77dc28b0afb96470c71dca732e7c",
          "body": "…ls [skip-version-bump] (#1319)\n\n* fix(cli): stop weightless-stub notice mis-firing on cached video models [skip-version-bump]\n\n`rapid-mlx serve <video-alias>` printed a false \"config cached but its\nmodel weights are missing — serving will start by downloading the missing\nweights first\" on EVERY sta\n[…]\nrectory-named component and symlink-to-directory component both\nstay stubs.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(cli): stop weightless-stub notice mis-firing on cached video mode…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T06:11:03Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b410fe0ac627ece6305f57aecaaad7707beab645",
          "body": "…ion-bump] (#1321)\n\n`tests/test_model_sizes.py::test_every_audio_alias_has_a_manifest_entry`\nis RED on `main` — a release blocker. The IndexTTS zero-shot voice\ncloning aliases (#1318) point at `mlx-community/IndexTTS-1.5` but the\nsize manifest was never regenerated, so the audio-alias coverage test\n\n[…]\n interpreter) at its sorted\nposition — the exact value + placement `gen_model_sizes.py` would\nproduce. One-line diff; no other entries touched.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(models): add IndexTTS-1.5 to model_sizes.json manifest [skip-vers…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T06:08:50Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "0090a392c7b996749d97f02eea9fc5270b1ba422",
          "body": "…] (#1320)\n\nThe Kokoro espeak self-test repair (#1312/#1314) added RAPID_MLX_ESPEAK_LIB\nand RAPID_MLX_ESPEAK_DATA path-override knobs to audio/probe.py but never\nallowlisted them in ALLOWED_RAPID_MLX_ENV_VARS, leaving\ntest_no_routing_shaped_rapid_mlx_env_vars RED on main (a release blocker).\n\nThese \n[…]\nelf-test — they never select a model, parser, or routing tier. Allowlist\nthem with a comment per the test's own guidance for non-routing knobs.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "test: allowlist RAPID_MLX_ESPEAK_LIB/DATA env vars [skip-version-bump…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T05:58:31Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "125945cd04bcf4a1f8af626502d6765a7120c032",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(audio): add IndexTTS zero-shot voice cloning (#1318)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T05:27:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e0f37a6107c9536b4d925813f3cc337858387861",
          "body": "`main` has carried `MusicEngine` and the vendored Stable Audio 3 tree since\n#1307, but with no HTTP surface: the only way to reach text→music was to\nimport the class. This adds the route, ported from PR #1300 (which landed on\nthe now-retired `mvp/content-farm-local` branch and never reached `main`).\n[…]\ning from the same\nsource PR is a separate change against the same file.\n\nCo-authored-by: Raullen Chai <nextmindsfoundation@gmail.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audio): expose MusicEngine over HTTP — POST /v1/audio/music (#1316)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T05:07:09Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5ef40e850dfaccfad94195d99637a6dc1ec18d6d",
          "body": "…version-bump] (#1299)\n\nWhy: this is the STT/captions lane of the audio-POC absorption. The\ncontent-farm automation tier needs OpenAI-compatible caption/subtitle\nplumbing — word-level timings let downstream tooling build karaoke-style\ncaptions and precise subtitle cuts without a second forced-alignm\n[…]\non-empty, monotonic `words[]` with\nexactly `{word, start, end}` keys. `scripts/dev_test.py unit`,\n`ruff check`, and `ruff format --check` pass.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audio): word-level timestamps on /v1/audio/transcriptions [skip-…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T04:56:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "394e5cc731e3949474e494270e4b1f6838db35ad",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix video upload body-limit response (#1315)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T04:32:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1ac339113d8687b61ad932dd63b69efc23eb8c98",
          "body": "…-out [skip-version-bump] (#1314)\n\n* fix(audio): harden Kokoro espeak probe against 500s + candidate crowd-out [skip-version-bump]\n\nFollow-up to #1312. Two robustness gaps in the espeak readiness probe:\n\n1. _probe_espeak_readiness could let unexpected exceptions from\n   _discover_system_espeak (file\n[…]\n false negative.\n\nTests reworked: anti-diagonal order, sweep iterates all candidates, malformed\ncandidate skipped, single-data covers all libs, single-lib covers all data,\nproduct truncated to budget.",
          "is_bot": false,
          "headline": "fix(audio): harden Kokoro espeak probe against 500s + candidate crowd…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T03:43:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0605a71829f25da3aad2d5070219635977bde93d",
          "body": "* feat(video): add experimental CogVideoX-Fun backend\n\n* fix(video): address CogVideoX review findings\n\n* fix(video): clean partial CogVideoX outputs\n\n* test(video): cover CogVideoX worker boundaries\n\n* fix(video): bound CogVideoX worker shutdown\n\n* fix(video): clean cancelled CogVideoX results\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(video): add experimental CogVideoX-Fun backend (#1313)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T03:41:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b82423c9f7a8b9f704051b862f2a00b04823682",
          "body": "…skip-version-bump] (#1312)\n\nOn a fresh `pip install 'rapid-mlx[audio]'`, the espeak-ng dylib shipped by\n`espeakng-loader` can fail to locate its `espeak-ng-data` (the compiled data\npath points at the wheel's CI build dir). misaki's English G2P falls back to\nespeak for out-of-dictionary words, so th\n[…]\nst\n`RemoteDisconnected`-crashed the server; post-fix it returns valid 24 kHz\naudio and the server survives. New hermetic tests cover bundled-ok,\nsystem-repair, and unfixable-503 branches plus caching.",
          "is_bot": false,
          "headline": "fix(audio): repair Kokoro espeak G2P instead of crashing the worker […",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T03:15:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "65e3f3a1ef0f775c9e76606b30e353dc8c4ef486",
          "body": "…udio 3) [draft POC] (#1307)\n\n* feat(audio): MusicEngine — local text-to-music via vendored MLX Stable Audio 3\n\nThird audio lane alongside TTSEngine/STTEngine: text->music/SFX, fully local on\nApple Silicon. Vendors Stability's official torch-free MLX Stable Audio 3\n(vllm_mlx/audio/sa3/, +680K source\n[…]\nns (e.g. 0.003s) to 0.00 (empty\n  clip). Add regression tests for both.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audio): MusicEngine — local text-to-music (vendored MLX Stable A…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T00:35:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "19ae69b89617bc6a19f41a1f7fa5aeb58a52fa29",
          "body": "…gn) (#1309)\n\nAdd the VoiceDesign sibling of the qwen3_tts family: the voice is authored\nin natural language via the OpenAI instructions field (mapped to mlx_audio's\nmandatory generate_voice_design instruct arg) instead of a named speaker.\nVoiceDesign checkpoints reuse the qwen3_tts loader/generate \n[…]\nariant detection, mandatory-instruct forwarding + fallback,\n  and the describe voice surface on engine and route\n\nNo version bump.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audio): Qwen3-TTS VoiceDesign (natural-language voice/style desi…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T00:13:37Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "46bc30e643361d07b420229b662e63321956cfbd",
          "body": "…licit paths (#1310)\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(pr_validate): pass --force-exclude so ruff honors excludes on exp…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-30T00:02:02Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "7e358d75cb65662b20024f568aed259856fddcaf",
          "body": "* feat(audio): SenseVoice Chinese STT family [draft POC]\n\nAdd the FunAudioLLM SenseVoice Small model as a new STT family alongside\nWhisper (multilingual) and Parakeet (English), giving Chinese/Asian ASR a\ndedicated fast option. SenseVoice is a ~234M non-autoregressive CTC model\n(strong on zh/yue/ja/\n[…]\nct\n\n* test(audio): cover SenseVoice metadata override\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(audio): add MLX-native SenseVoice STT (#1308)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T23:37:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ed7871d8d948dd78b08387e9eabb495f371bc357",
          "body": "…ce cloning [skip-version-bump] (#1303)\n\nExposes Chatterbox's exaggeration (emotion/intensity) knob + zero-shot ref_audio cloning end-to-end over POST /v1/audio/speech: adds the exaggeration request field (bounded, Chatterbox-only), forwards it and ref_audio through a dedicated chatterbox engine branch (never leaks voice/speed/lang_code), and admits Chatterbox to the clone-capability gate. Codex CLEAN; pr_validate MERGE-SAFE; merged result re-ran full unit gate green.",
          "is_bot": false,
          "headline": "feat(audio): Chatterbox expressiveness (exaggeration) + zero-shot voi…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T23:01:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "927ae4aacb7771bcf2cff1fe0042121f1a5bb51f",
          "body": "…downmix, channel bound) (#1304)\n\nAddresses PR #1297 codex review findings on the merged F5-TTS path plus\nhardening surfaced during review. No version bump.\n\n- Silent/near-silent reference: the RMS-normalization step\n  `aud * TARGET_RMS / rms` divides by ~0 (NaN/inf) or amplifies noise to\n  full sca\n[…]\nmory\nio.BytesIO (no predictable temp path), and speed is already wired into\nestimated_duration() and self.model.sample(speed=...).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audio): harden F5-TTS _generate_f5 (silent-ref RMS floor, stereo …",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T22:54:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ac395408269fe5c90a92ac569b7323f3e5c6d4c2",
          "body": "…-bump] (#1301)\n\nForced alignment (audio + KNOWN transcript -> per-character start/end times) via Qwen3-ForcedAligner, exposed over POST /v1/audio/transcriptions with an optional 'text' field (dispatches to align() for aligner models; back-compat transcribe path unchanged). Segments flow through exi\n[…]\ne_json/srt/vtt serializers. Guards fail fast (aligner-without-text, text-vs-non-aligner) before upload drains. Codex CLEAN; pr_validate MERGE-SAFE; merged result re-ran unit gate green (14296 passed).",
          "is_bot": false,
          "headline": "feat(audio): forced-alignment STT (Qwen3-ForcedAligner) [skip-version…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T22:37:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d9a2c5b8059c9da108b1faaae0a986ce2e7fc3f7",
          "body": "…p] (#1305)\n\nZero-shot Chinese/multilingual voice cloning via Qwen3-TTS Base, wired end-to-end through POST /v1/audio/speech (ref_audio + ref_text inline base64). Adds route clone-capability gating, model_sizes manifest entry, and full HTTP-path tests. Codex CLEAN; pr_validate MERGE-SAFE.",
          "is_bot": false,
          "headline": "feat(audio): Qwen3-TTS Base zero-shot voice cloning [skip-version-bum…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T22:27:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2cfa146686a4a0e4fa6d2b127c5e94062ac2a9e1",
          "body": "## Why\nThe `voxcpm` alias (`mlx-community/VoxCPM1.5`) advertised \"Chinese/English\nhigh-quality TTS\", but empirically the current MLX port is broken for\nChinese: Chinese input produces Thai-script gibberish plus long runaway\ngeneration. The registry therefore steered users toward a language path\nthat\n[…]\n structured metadata / needs model weights + eval path).\n\n## AI-assisted\nThis change was drafted and validated with AI assistance.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audio): de-advertise broken voxcpm Chinese support (#1302)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T22:21:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3529e39495fb341fb4ddae3ffaf346d909316c30",
          "body": "* feat(video): add MLX-native LTX-2.3 generation\n\n* fix(video): serialize jobs without executor starvation\n\n* fix(video): harden job cleanup and cancellation\n\n* fix(video): make queue lifecycle cancellation-safe\n\n* fix(video): detach cleanup from cancellation\n\n* fix(video): bound generation workload\n[…]\no): accept OpenAI 720p sizes\n\n* fix(video): bound ffmpeg crop time\n\n* fix(video): guard multipart admission before parsing\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(video): add MLX-native LTX-2.3 generation (#1298)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T22:04:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "59f44d2e30ff560ca5974f18082eb1ce743f73e3",
          "body": "* feat(audio): wire F5-TTS (pure-MLX) — Chinese expressive TTS + zero-shot cloning\n\nFills the Chinese expressive/cloneable-TTS gap the demo probe surfaced (Qwen3-TTS\nis clear-but-flat, Chatterbox English-only, IndexTTS/CosyVoice don't load).\nf5-tts-mlx is a standalone PURE-MLX package (no torch) — E\n[…]\nim batched F5 output correctly\n\n* fix(audio): bound F5 reference decoding\n\n* test(audio): pin decoded F5 waveform contract\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(audio): wire F5-TTS Chinese cloning (#1297)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T19:59:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2c6847127cb05b6531aaaffb2e52418c23d533e0",
          "body": "…ersion-bump] (#1296)\n\nTwo P3 loose ends found dogfooding main:HEAD (0.11.1 → all 24 PRs since 0.11.1).\n\n#1294 — scripts/kv_quant_quality_gate.py crashed with a raw mlx ValueError when\na model's head_dim was not divisible by the requested KV-quant group size (the\ndefault 64 vs Phi-3's head_dim=96), \n[…]\n to the on-macOS chip detection (already via\nthe sysctl fallback). Advisory tooling only. Regression tests pin both.\n\nCloses #1294\nCloses #1295\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: kv-quant gate head_dim guard + chip_tier dangling import [skip-v…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T17:35:27Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "668d47a7b0cec0a1cfe85cf999b5807018d0455b",
          "body": "…ump] (#1293)\n\nCloses #1286. Adds a Size column to `rapid-mlx models` (text+audio) and a Download-size line to `rapid-mlx info <alias>`, sourced from a checked-in model_sizes.json manifest (offline, instant). Codex 0/0/0; full CI green.",
          "is_bot": false,
          "headline": "feat(cli): show model download size in models listing [skip-version-b…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T15:05:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e1878506a5df0f613e9340d252bc84a12e8445ff",
          "body": "* Remove legacy branding from public surfaces\n\n* Preserve benchmark and upstream provenance\n\n* Limit branding guard to public text files\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "Remove legacy branding from public surfaces (#1292)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T14:11:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7f38e696ae2142037c548a79b6b0adf986a164f5",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "refactor: remove unused cloud routing (#1290)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T05:08:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "46beeab6ee85be3ddf8c3370f76c2df474793794",
          "body": "…ier [skip-version-bump] (#1289)\n\n* feat(quality): KV-quant differential quality gate + chip-tier classifier [skip-version-bump]\n\nAbsorb-list #4 + #5. Advisory (measure-first), offline, model-download-free.\n\n#4: scripts/kv_quant_quality_gate.py runs the SAME model twice on the SAME\nprompts (bf16-KV \n[…]\n to True.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(quality): KV-quant differential quality gate + chip-tier classif…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T04:57:03Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "84ffef0753b55a521efdfa01ad84b3860beadfb4",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "refactor: remove unused vLLM platform prototype (#1288)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T04:01:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "541b5b3225061912e7436bf4d483590316d57dde",
          "body": "* feat(audio): add Qwen3-TTS CustomVoice with emotion control\n\nWire Alibaba's Qwen3-TTS 1.7B CustomVoice into the TTS lane. It ships\nmultilingual predefined speakers (Chinese: Vivian/Serena/Uncle_Fu/Dylan/\nEric, English: Ryan/Aiden) and — unlike the existing Kokoro/VibeVoice/etc\nfamilies — supports \n[…]\nith a separate CustomVoice-accepted case (codex).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audio): add Qwen3-TTS CustomVoice with emotion control (#1287)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T03:35:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c45666a2a51d7508302b6ded75160a9001e5b879",
          "body": "…rim-lie [skip-version-bump] (#1285)\n\nClose two latent correctness gaps in prefix-cache reuse gating, plus a\nsibling instance in the legacy trie cache. All are defense-in-depth: no\nreachable class is in aliases.json, and the fix has ZERO behavior change\nfor currently-supported models.\n\nGAP 1 (produc\n[…]\ns so allowlist drift or an mlx_lm rename of the one\nhostable class is caught.\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(cache): lock sliding-window prefix reuse against ChunkedKVCache t…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T03:34:29Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3ae9eb54128a5e3fb4fdb5c898a3d5cc4da07937",
          "body": "* fix(cli): ship official rmlx short command\n\n* fix(installer): expose rmlx on PATH\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(cli): ship official rmlx short command (#1284)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-29T00:31:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80ec3c30e55eb3408f7464941b56f41cad1656f7",
          "body": "* feat(scheduler): architecture-aware per-token KV byte estimate (skip-version-bump)\n\nRoute the D-METAL-CAP admission projection through a new pure-function KV\nfootprint estimator (`vllm_mlx/kv_estimation.py`) that classifies each layer\ninstead of counting every layer as a full-growth attention laye\n[…]\nallback).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(scheduler): architecture-aware per-token KV byte estimate (#1276)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T22:53:25Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "decad552d261b01ea3862ee45c8bcd8697b580b2",
          "body": "…Connectors 0 tools) (#1281)\n\n* fix(mcp): handle mcp 1.x→2.0 camelCase→snake_case model attr rename\n\nmcp 2.0 renamed InitializeResult/Tool/CallToolResult Python attributes from\ncamelCase to snake_case (camelCase kept only as a serialization alias). The\ndev/CI env pins mcp 1.x, but a fresh sidecar bu\n[…]\noreply@anthropic.com>\n\n* fix(mcp): cover chat runtime SDK 2 fields\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(mcp): handle mcp 1.x→2.0 camelCase→snake_case model attr rename (…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T22:32:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "12c5b9b13e7db0e21bc9f02430dc3da3112fcfa9",
          "body": "* docs: RELEASE.md + emergency force_release escape hatch\n\n- RELEASE.md at repo root documents the full pipeline for colleagues: how to\n  cut a release (merge a version-bump commit), the detect -> tier1-agent-gate\n  -> release flow, the self-hosted Studio runner (+ security model), what to do\n  when\n[…]\nforced path unless GITHUB_REF == refs/heads/main.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: RELEASE.md + emergency force_release escape hatch (#1283)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T22:13:55Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "52fbcdc0ace7ebf0a314edb85aeb50519b2c1957",
          "body": "* fix(mllm): accept mlx-vlm native KV caches\n\n* test(mllm): exercise missing vision dependency\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(mllm): accept mlx-vlm native KV caches (#1277)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T22:13:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3ed3225092dfbcc2cc79ae077b58fa713a175f8",
          "body": "…ate) (#1282)\n\nSplit auto-release.yml into detect -> tier1-agent-gate -> release. The release\njob now `needs: [tier1-agent-gate]`, so a version bump cannot tag/publish\nunless the four Tier-1 agents (Claude Code / Codex / Hermes / Aider) re-verify\ngreen on the self-hosted Apple-Silicon runner (the St\n[…]\n on the Studio runner via the manual\nagent-gate.yml (#1280). The gate-blocks-release path exercises on the next\nreal version bump.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci(release): gate auto-release on Tier-1 agent smoke (Phase 2, hard g…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T22:00:52Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "20237227a644da004c9c736da98ed27e5389d32a",
          "body": "…(#1280)\n\n* ci: Tier-1 agent gate on self-hosted Apple Silicon (Phase 1, manual)\n\nRe-verify the 4 Tier-1 (flagship) agents — Claude Code, Codex, Hermes, Aider\n— end-to-end against a real local model on Apple Silicon. GitHub-hosted\nrunners structurally cannot do this (no Metal, no weights, no agent b\n[…]\nadroom; a passing run still finishes in ~5-8 min.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: Tier-1 agent gate on self-hosted Apple Silicon (Phase 1, manual) …",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T21:42:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2ca0c22ede18461ce2544577934d51330c559c21",
          "body": "…-2 (#1278)\n\nThe website integration matrix now distinguishes 4 Tier-1 agents from the\nrest, but the README branded all 11 as 'Tier-1 Support', so the two\nsurfaces contradicted each other. Reframe:\n- '## Tier-1 Support' -> '## Agent Support'; '#tier-1-support' anchor\n  reference updated to '#agent-s\n[…]\nrdian per wire); the other seven are Tier-2 (matrix\n  wire-verified, on-demand). Keeps the '11 wire-verified every release' claim.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(readme): reconcile agent tiers — 11 supported, 4 Tier-1 + 7 Tier…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T20:15:00Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f17290e9b1ebdf14597d0ba964e3c41b550719d3",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "test(auth): harden route success assertions (#1275)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T17:46:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9bddf755a637caed96a62d10fabce0231f4da45c",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "docs(patches): require production-path install tests (#1274)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T17:43:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "793ee446c10395dde8783e26394b8bf4ec01ee96",
          "body": "…vation funnel, #1272) (#1273)\n\nLights up the `/admin` activation funnel's last pending stage (\"Server\nfirst run\") and makes the first-run wizard's contribution attributable.\nBoth new fields are session METADATA booleans on `session_start` — derived\nfrom session context, never from a prompt or gener\n[…]\netry-worker\nrollup of distinct first_session/day, then landing `/admin` flips the stage\npending→live with a liveKey.\n\nCloses #1272\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(telemetry): first_session + auto_selected on session_start (acti…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T17:37:09Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3b994a4b96ba838b67d84f04a11180fe3ddb6837",
          "body": "…271)\n\n* harden API key comparisons\n\n* test skip auth imports without MLX\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(auth): reject malformed API keys without timing short-circuit (#1…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T17:05:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "594a4754b16ec93e5b83991edd5e5b78efb4219c",
          "body": "* fix MTP runtime status display\n\n* test skip MTP status check without MLX\n\n* fix explicit MTP status for unknown profiles\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix(mtp): show explicit runtime mode in profile summary (#1270)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T16:49:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47f285f7d189c644dc6bcfb7b1f72a39d4dfb4db",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "fix doctor audio version check (#1269)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T16:43:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "36b9bb98901bf3b06ca886bd1d800023156fca14",
          "body": "Exclude only generated random IDs from the caller-agent privacy scan so UUID substrings cannot cause false failures while the rest of the telemetry envelope remains covered.",
          "is_bot": false,
          "headline": "test(telemetry): scope caller-agent leak assertion (#1268)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T15:31:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "67f0e34c253aa5e5f9d0125227e890d9ce00fb0d",
          "body": "Move per-entry persistence detail to DEBUG while keeping concise save/load summaries at INFO.\n\nCloses #1257.",
          "is_bot": false,
          "headline": "fix(cache): summarize prefix persistence logs (#1267)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T15:24:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "798dd1f05cf6284eee0bb5a840c0b38ea854a140",
          "body": "…laky) (#1232)\n\nEliminate a random UUID substring false positive in the telemetry leak test while keeping the assertion scoped to the user-derived session payload.",
          "is_bot": false,
          "headline": "fix(telemetry): scope session_start leak check to session sub-dict (f…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T15:02:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "206ed0e03b7b6fc7b3b2e6f68a7b60467f6e5abe",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "chore: bump version to 0.11.1 (#1265)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T05:27:41Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "4f0f104463adbc9ac9633e8fca989827ffb0965f",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "test(release): restore benchmark baselines (#1264)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T04:01:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae89aac6b2af434f869b0439769243a98378dd3e",
          "body": "…rs (#1263)\n\nFirst-impression cold-start polish (batched into the pending 0.11.1; skip-version-bump).\n\n## What\n- **P1 — dead air.** A `⠋ Resolving <model> …` spinner now covers the ~3.4s of\n  silent HF round-trips (download-gate size probe + disk-space check + mirror\n  metadata + catalog fetch) befo\n[…]\nic regression test. The e2e test was also rewritten to assert the real\nsuppress-progress discrimination without forcing feature support.\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)",
          "is_bot": false,
          "headline": "fix(first-run): kill cold-start dead air + mute leaked HF progress ba…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-28T00:05:35Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6a445517007ffd14fcefdf58cbfca2008da1c5f0",
          "body": "Co-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>",
          "is_bot": false,
          "headline": "feat(release): centralize fleet coverage (#1262)",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-27T23:26:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e94059cdf1fb1f4902ba41483fae3bee3deea004",
          "body": "…uick Start step (#1261)\n\nTwo Quick Start changes, both aligning the README with the rest of the\nproduct's touchpoints:\n\n1. Flip step 1 to lead with the `curl … install.sh | bash` one-liner\n   (recommended), Homebrew second. The website hero and /download page\n   both already lead with curl — it's t\n[…]\n\n   (claude-code preferred); this brings the README to parity so the\n   60-second path ends at a working, fully local Claude Code.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(readme): curl-first install + first-class \"launch claude-code\" Q…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-27T22:45:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b56871c0d35e000a19bb7324da85b37adca9f635",
          "body": "…260)\n\n* fix(first-run): silence HF unauthenticated-download advisory (#3)\n\nhuggingface_hub logs a server-sent X-HF-Warning header (\"You are sending\nunauthenticated requests to the HF Hub. Please set a HF_TOKEN ...\") at\nWARNING level from huggingface_hub.utils._http on the first anonymous\nfile downl\n[…]\nible (1).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Raullen <raullenstudio@Raullens-Mac-Studio.local>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(first-run): silence HF unauthenticated-download advisory (#3) (#1…",
          "author_name": "Raullen Chai",
          "author_login": "raullenchai",
          "committed_at": "2026-07-27T19:46:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        }
      ],
      "releases_count": 100,
      "commits_last_year": 1311,
      "latest_release_at": "2026-08-02T03:16:46Z",
      "latest_release_tag": "v0.11.6",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 32,
      "days_since_latest_release": 0,
      "mean_days_between_releases": 1.3
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 85,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "rapid-mlx",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "llm",
            "mlx",
            "apple-silicon",
            "inference",
            "transformers",
            "Development Status :: 4 - Beta",
            "Intended Audience :: Developers",
            "Intended Audience :: Science/Research",
            "License :: OSI Approved :: Apache Software License",
            "Operating System :: MacOS",
            "Programming Language :: Python :: 3",
            "Programming Language :: Python :: 3.10",
            "Programming Language :: Python :: 3.11",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Topic :: Scientific/Engineering :: Artificial Intelligence"
          ],
          "ecosystem": "pypi",
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/rapid-mlx/",
          "is_deprecated": false,
          "latest_version": "0.11.6",
          "repository_url": "https://github.com/raullenchai/Rapid-MLX",
          "versions_count": 179,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": "2026-03-21T12:11:28.093363Z",
          "latest_published_at": "2026-08-02T03:17:39.418728Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 0
        }
      ]
    },
    "popularity": {
      "forks": 388,
      "stars": 3392,
      "watchers": 64,
      "fork_history": {
        "days": [
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-03-09",
            "count": 1
          },
          {
            "date": "2026-03-11",
            "count": 1
          },
          {
            "date": "2026-03-20",
            "count": 3
          },
          {
            "date": "2026-03-21",
            "count": 5
          },
          {
            "date": "2026-03-22",
            "count": 3
          },
          {
            "date": "2026-03-23",
            "count": 11
          },
          {
            "date": "2026-03-24",
            "count": 5
          },
          {
            "date": "2026-03-25",
            "count": 11
          },
          {
            "date": "2026-03-26",
            "count": 2
          },
          {
            "date": "2026-03-28",
            "count": 8
          },
          {
            "date": "2026-03-31",
            "count": 1
          },
          {
            "date": "2026-04-03",
            "count": 1
          },
          {
            "date": "2026-04-06",
            "count": 1
          },
          {
            "date": "2026-04-11",
            "count": 3
          },
          {
            "date": "2026-04-13",
            "count": 1
          },
          {
            "date": "2026-04-14",
            "count": 1
          },
          {
            "date": "2026-04-18",
            "count": 4
          },
          {
            "date": "2026-04-20",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-04-23",
            "count": 1
          },
          {
            "date": "2026-04-25",
            "count": 2
          },
          {
            "date": "2026-04-28",
            "count": 1
          },
          {
            "date": "2026-04-29",
            "count": 2
          },
          {
            "date": "2026-05-02",
            "count": 1
          },
          {
            "date": "2026-05-03",
            "count": 11
          },
          {
            "date": "2026-05-04",
            "count": 63
          },
          {
            "date": "2026-05-05",
            "count": 39
          },
          {
            "date": "2026-05-06",
            "count": 18
          },
          {
            "date": "2026-05-07",
            "count": 13
          },
          {
            "date": "2026-05-08",
            "count": 6
          },
          {
            "date": "2026-05-09",
            "count": 4
          },
          {
            "date": "2026-05-10",
            "count": 6
          },
          {
            "date": "2026-05-11",
            "count": 2
          },
          {
            "date": "2026-05-12",
            "count": 3
          },
          {
            "date": "2026-05-13",
            "count": 5
          },
          {
            "date": "2026-05-14",
            "count": 2
          },
          {
            "date": "2026-05-15",
            "count": 4
          },
          {
            "date": "2026-05-16",
            "count": 2
          },
          {
            "date": "2026-05-17",
            "count": 1
          },
          {
            "date": "2026-05-18",
            "count": 1
          },
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-05-20",
            "count": 1
          },
          {
            "date": "2026-05-22",
            "count": 1
          },
          {
            "date": "2026-05-23",
            "count": 1
          },
          {
            "date": "2026-05-24",
            "count": 2
          },
          {
            "date": "2026-05-25",
            "count": 1
          },
          {
            "date": "2026-05-26",
            "count": 2
          },
          {
            "date": "2026-05-27",
            "count": 2
          },
          {
            "date": "2026-05-28",
            "count": 30
          },
          {
            "date": "2026-05-29",
            "count": 3
          },
          {
            "date": "2026-05-30",
            "count": 4
          },
          {
            "date": "2026-05-31",
            "count": 1
          },
          {
            "date": "2026-06-02",
            "count": 3
          },
          {
            "date": "2026-06-03",
            "count": 1
          },
          {
            "date": "2026-06-05",
            "count": 1
          },
          {
            "date": "2026-06-06",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 2
          },
          {
            "date": "2026-06-09",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 3
          },
          {
            "date": "2026-06-12",
            "count": 3
          },
          {
            "date": "2026-06-15",
            "count": 2
          },
          {
            "date": "2026-06-16",
            "count": 1
          },
          {
            "date": "2026-06-17",
            "count": 4
          },
          {
            "date": "2026-06-18",
            "count": 1
          },
          {
            "date": "2026-06-19",
            "count": 3
          },
          {
            "date": "2026-06-20",
            "count": 4
          },
          {
            "date": "2026-06-21",
            "count": 3
          },
          {
            "date": "2026-06-22",
            "count": 2
          },
          {
            "date": "2026-06-23",
            "count": 1
          },
          {
            "date": "2026-06-24",
            "count": 1
          },
          {
            "date": "2026-06-26",
            "count": 1
          },
          {
            "date": "2026-06-27",
            "count": 1
          },
          {
            "date": "2026-06-28",
            "count": 2
          },
          {
            "date": "2026-06-30",
            "count": 1
          },
          {
            "date": "2026-07-02",
            "count": 1
          },
          {
            "date": "2026-07-04",
            "count": 3
          },
          {
            "date": "2026-07-05",
            "count": 1
          },
          {
            "date": "2026-07-06",
            "count": 3
          },
          {
            "date": "2026-07-07",
            "count": 2
          },
          {
            "date": "2026-07-08",
            "count": 2
          },
          {
            "date": "2026-07-09",
            "count": 3
          },
          {
            "date": "2026-07-10",
            "count": 2
          },
          {
            "date": "2026-07-13",
            "count": 2
          },
          {
            "date": "2026-07-14",
            "count": 2
          },
          {
            "date": "2026-07-15",
            "count": 1
          },
          {
            "date": "2026-07-16",
            "count": 1
          },
          {
            "date": "2026-07-17",
            "count": 1
          },
          {
            "date": "2026-07-18",
            "count": 1
          },
          {
            "date": "2026-07-22",
            "count": 2
          },
          {
            "date": "2026-07-23",
            "count": 2
          },
          {
            "date": "2026-07-24",
            "count": 1
          },
          {
            "date": "2026-07-26",
            "count": 1
          },
          {
            "date": "2026-07-28",
            "count": 1
          },
          {
            "date": "2026-07-29",
            "count": 1
          },
          {
            "date": "2026-07-31",
            "count": 1
          },
          {
            "date": "2026-08-01",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 378,
        "total_forks": 388
      },
      "star_history": null,
      "open_issues_and_prs": 46
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": true,
      "bootstrap_files": [
        "Makefile",
        "mise.toml"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 404100,
      "source_files_sampled": 897,
      "oversized_source_files": 61,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "pyproject.toml"
      ],
      "advisories": {
        "error": null,
        "scope": null,
        "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": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [
        {
          "name": "mlx",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.31.2"
        },
        {
          "name": "mlx-lm",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.31.3"
        },
        {
          "name": "transformers",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=5.0.0,<5.13"
        },
        {
          "name": "tokenizers",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.19.0"
        },
        {
          "name": "huggingface-hub",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.23.0"
        },
        {
          "name": "numpy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.24.0"
        },
        {
          "name": "tqdm",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=4.66.0"
        },
        {
          "name": "pyyaml",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=6.0"
        },
        {
          "name": "requests",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.28.0"
        },
        {
          "name": "rich",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=13.8.0"
        },
        {
          "name": "tabulate",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.9.0"
        },
        {
          "name": "psutil",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=5.9.0"
        },
        {
          "name": "fastapi",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.100.0"
        },
        {
          "name": "uvicorn",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.23.0"
        },
        {
          "name": "mcp",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.9.3"
        },
        {
          "name": "jsonschema",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=4.0.0"
        },
        {
          "name": "argcomplete",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.6"
        },
        {
          "name": "websockets",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=12.0"
        },
        {
          "name": "openai-harmony",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.0.8"
        },
        {
          "name": "llguidance",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.7.6"
        }
      ],
      "all_dependencies": {
        "error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
        "source": null,
        "packages": [],
        "collected": false,
        "truncated": false,
        "total_count": null,
        "direct_count": null,
        "indirect_count": null
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 15,
        "merged_prs": 974,
        "open_issues": 31,
        "closed_ratio": 0.88,
        "closed_issues": 227,
        "closed_unmerged_prs": 79
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "raullenchai",
          "commits": 955,
          "avatar_url": "https://avatars.githubusercontent.com/u/989846?v=4"
        },
        {
          "type": "User",
          "login": "waybarrios",
          "commits": 98,
          "avatar_url": "https://avatars.githubusercontent.com/u/6794828?v=4"
        },
        {
          "type": "User",
          "login": "janhilgard",
          "commits": 12,
          "avatar_url": "https://avatars.githubusercontent.com/u/89418784?v=4"
        },
        {
          "type": "User",
          "login": "masonjames",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/297610?v=4"
        },
        {
          "type": "User",
          "login": "angusgastle",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/89532008?v=4"
        },
        {
          "type": "User",
          "login": "pierre427",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/4698223?v=4"
        },
        {
          "type": "User",
          "login": "ersintarhan",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/8283049?v=4"
        },
        {
          "type": "User",
          "login": "kol22",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/74475667?v=4"
        },
        {
          "type": "User",
          "login": "selimrecep",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/16990318?v=4"
        },
        {
          "type": "User",
          "login": "66Ton99",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/383739?v=4"
        }
      ],
      "contributors_sampled": 38,
      "top_contributor_share": 0.857
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "agent-gate.yml",
        "aggregate-bench.yml",
        "auto-release.yml",
        "ci.yml",
        "pages.yml",
        "pr-validate.yml",
        "publish.yml",
        "release-artifact-matrix.yml",
        "release-preflight.yml",
        "spam-issue-guard.yml",
        "validate-community-submission.yml",
        "version-check.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "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": 10,
            "reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "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": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 11 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "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": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 2,
            "reason": "dependency not pinned by hash detected -- score normalized to 2",
            "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": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 8,
            "reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 9,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "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": "b8ab5c5e7f9cde0e7ca55e5e9f4cec88ed85252f",
        "ran_at": "2026-08-02T03:25:16Z",
        "aggregate_score": 6.1,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": true,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-08-02T03:23:12Z",
      "oldest_open_prs": [
        {
          "number": 1162,
          "created_at": "2026-07-21T21:40:37Z",
          "last_comment_at": "2026-07-21T21:41:40Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1216,
          "created_at": "2026-07-25T03:34:56Z",
          "last_comment_at": "2026-07-26T16:05:42Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 1222,
          "created_at": "2026-07-25T23:00:34Z",
          "last_comment_at": "2026-07-25T23:01:47Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1223,
          "created_at": "2026-07-25T23:06:58Z",
          "last_comment_at": "2026-07-27T19:26:44Z",
          "last_comment_author": "pierre427"
        },
        {
          "number": 1224,
          "created_at": "2026-07-25T23:06:59Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1227,
          "created_at": "2026-07-25T23:07:03Z",
          "last_comment_at": "2026-07-27T13:46:15Z",
          "last_comment_author": "pierre427"
        },
        {
          "number": 1228,
          "created_at": "2026-07-25T23:07:05Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1229,
          "created_at": "2026-07-25T23:07:06Z",
          "last_comment_at": "2026-07-26T17:10:17Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 1230,
          "created_at": "2026-07-25T23:07:08Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1245,
          "created_at": "2026-07-27T16:30:25Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1246,
          "created_at": "2026-07-27T16:38:54Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1291,
          "created_at": "2026-07-29T05:15:22Z",
          "last_comment_at": "2026-07-29T14:19:45Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 1368,
          "created_at": "2026-07-31T22:12:48Z",
          "last_comment_at": "2026-07-31T22:13:30Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1376,
          "created_at": "2026-08-01T14:20:14Z",
          "last_comment_at": "2026-08-01T14:21:07Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1386,
          "created_at": "2026-08-02T02:59:49Z",
          "last_comment_at": "2026-08-02T03:00:37Z",
          "last_comment_author": "github-actions"
        }
      ],
      "last_merged_pr_at": "2026-08-02T03:22:57Z",
      "ci_last_conclusion": null,
      "oldest_open_issues": [
        {
          "number": 54,
          "created_at": "2026-03-26T19:09:52Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 63,
          "created_at": "2026-04-06T09:33:48Z",
          "last_comment_at": "2026-07-24T14:52:53Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 150,
          "created_at": "2026-04-19T19:09:14Z",
          "last_comment_at": "2026-07-24T14:52:44Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 153,
          "created_at": "2026-04-20T01:34:49Z",
          "last_comment_at": "2026-04-20T02:52:54Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 236,
          "created_at": "2026-05-05T21:46:13Z",
          "last_comment_at": "2026-05-11T23:21:30Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 241,
          "created_at": "2026-05-06T04:18:14Z",
          "last_comment_at": "2026-07-11T17:50:12Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 319,
          "created_at": "2026-05-08T05:16:04Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 320,
          "created_at": "2026-05-08T05:19:15Z",
          "last_comment_at": "2026-07-27T16:48:08Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 337,
          "created_at": "2026-05-09T15:34:34Z",
          "last_comment_at": "2026-07-29T05:17:19Z",
          "last_comment_author": "2005rishabh"
        },
        {
          "number": 386,
          "created_at": "2026-05-14T16:35:46Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 658,
          "created_at": "2026-06-17T23:35:29Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 707,
          "created_at": "2026-06-19T14:17:55Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1041,
          "created_at": "2026-07-07T00:01:33Z",
          "last_comment_at": "2026-07-07T00:23:20Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 1247,
          "created_at": "2026-07-27T16:47:47Z",
          "last_comment_at": "2026-07-28T15:31:58Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 1248,
          "created_at": "2026-07-27T16:47:48Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1250,
          "created_at": "2026-07-27T16:47:56Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1254,
          "created_at": "2026-07-27T17:27:40Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1255,
          "created_at": "2026-07-27T17:27:40Z",
          "last_comment_at": "2026-07-28T16:50:09Z",
          "last_comment_author": "raullenchai"
        },
        {
          "number": 1256,
          "created_at": "2026-07-27T17:27:41Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1258,
          "created_at": "2026-07-27T17:27:42Z",
          "last_comment_at": "2026-07-28T16:50:09Z",
          "last_comment_author": "raullenchai"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/raullenchai/Rapid-MLX",
    "host": "github.com",
    "name": "Rapid-MLX",
    "owner": "raullenchai"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "exceptional",
      "name": "Overall health",
      "note": "The weighted overall 79 is calibrated to 93 on the published index scale (record calibration 2026-08-02).",
      "notes": [
        {
          "code": "overall_calibration",
          "params": {
            "raw": 79,
            "calibrated": 93,
            "calibration": "2026-08-02"
          }
        }
      ],
      "value": 93,
      "inputs": {
        "security": 61,
        "vitality": 91,
        "community": 83,
        "governance": 67,
        "calibration": "2026-08-02",
        "engineering": 96,
        "ai_readiness": 54,
        "weighted_overall_raw": 79
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 91,
        "weight": 0.21,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 86,
            "inputs": {
              "commits_last_year": 1311,
              "human_commit_share": 1,
              "days_since_last_push": 0,
              "active_weeks_last_year": 32
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "32/52 weeks with commits",
                "points": 22.2,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 32
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "1311 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 1311
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "exceptional",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "v0.11.6",
              "releases_from_tags": false,
              "days_since_latest_release": 0,
              "mean_days_between_releases": 1.3
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~1.3 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 1.3
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 8,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "exceptional",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 83,
        "weight": 0.17,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 89,
            "inputs": {
              "forks": 388,
              "stars": 3392,
              "watchers": 64,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "3,392 stars",
                "points": 57.3,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 3392
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "388 forks",
                "points": 21.6,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 388
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "64 watchers",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 64
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "readme_badges": null,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "readme_badge_services": [],
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "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": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 67,
        "weight": 0.23,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "weak",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 36,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 38,
              "top_contributor_share": 0.857
            },
            "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 86% of commits",
                "points": 3.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 86
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "38 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 38
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 11 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": "Excluded from scoring (no data or not applicable): Newcomer PR acceptance. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "newcomer_pr_acceptance"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 74,
            "inputs": {
              "merged_prs": 974,
              "open_issues": 31,
              "closed_issues": 227,
              "prs_merged_7d": null,
              "prs_decided_7d": null,
              "prs_merged_30d": null,
              "prs_decided_30d": null,
              "issue_closed_ratio": 0.88,
              "closed_unmerged_prs": 79,
              "first_time_authors_30d": null,
              "first_time_prs_merged_30d": null,
              "first_time_prs_decided_30d": null
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "88% of issues closed",
                "points": 37,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 88
                    }
                  }
                ],
                "max_points": 42
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "974/1053 decided PRs merged",
                "points": 27.7,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 974,
                      "decided": 1053
                    }
                  }
                ],
                "max_points": 30
              },
              {
                "key": "newcomer_pr_acceptance",
                "name": "Newcomer PR acceptance",
                "detail": "no first-time contributor's PR decided in 30d",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_newcomer_prs",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 13
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "verified_domain"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 70,
            "inputs": {
              "followers": 935,
              "owner_type": "User",
              "is_verified": null,
              "owner_login": "raullenchai",
              "public_repos": 134,
              "account_age_days": 5462
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "personal (user) account",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_personal",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": "not applicable to user accounts",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_applicable_to_user_accounts",
                    "params": {}
                  }
                ],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "935 followers of raullenchai",
                "points": 21.4,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 935,
                      "login": "raullenchai"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "134 public repos, account ~14 yr old",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 134
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 14
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "exceptional",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "rapid-mlx"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 0
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 0 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "179 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 179
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "exceptional",
        "name": "Engineering Quality",
        "value": 96,
        "weight": 0.19,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "exceptional",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "12 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "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": 16,
                "status": "met",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "exceptional",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "topics": [
                "apple-silicon",
                "fastapi",
                "inference",
                "llm",
                "local-llm",
                "macos",
                "mlx",
                "openai-api",
                "python",
                "tool-calling",
                "hacktoberfest",
                "ollama-alternative",
                "m1",
                "m2",
                "m3",
                "qwen",
                "deepseek",
                "claude-code",
                "cursor"
              ],
              "has_wiki": true,
              "homepage": "https://pypi.org/project/rapid-mlx",
              "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://pypi.org/project/rapid-mlx",
                "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": "19 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 19
                    }
                  }
                ],
                "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": "moderate",
        "name": "Security",
        "value": 61,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 6.1
            },
            "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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "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 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 11 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "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.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 28 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 2",
                "points": 1,
                "status": "partial",
                "details": [],
                "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 detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 6.8,
                "status": "partial",
                "details": [],
                "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": "exceptional",
            "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"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 15
            },
            "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": "moderate",
        "name": "AI Readiness",
        "value": 54,
        "weight": 0.04,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "weak",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "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": "100 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 100,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 63,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": false,
              "typed_language": false,
              "bootstrap_files": [
                "Makefile",
                "mise.toml"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0.38,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile, mise.toml",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile, mise.toml"
                    }
                  }
                ],
                "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": 11,
                "status": "met",
                "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": "38 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 38,
                      "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": "dependency not pinned by hash detected -- score normalized to 2",
                "points": 2,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "moderate",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 51,
            "inputs": {
              "primary_language": "Python",
              "largest_source_bytes": 404100,
              "source_files_sampled": 897,
              "oversized_source_files": 61
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Python without a type-check config",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_typecheck_config_language",
                    "params": {
                      "language": "Python"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "61/897 source files over 60KB",
                "points": 51.3,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 897,
                      "oversized": 61
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
      }
    ],
    "metrics_version": "2.2.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
    "deps.dev does not index pypi:rapid-mlx@0.11.6; advisories assessed against the repository dependency graph instead"
  ],
  "report_type": "repository",
  "generated_at": "2026-08-02T03:25:43.520121Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/raullenchai/Rapid-MLX.svg",
  "full_name": "raullenchai/Rapid-MLX",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

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

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

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