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

milo-os / service-catalog

Offer your services.

Go · TypeScriptЛіцензію не виявлено★ 0 зірок⑂ 0 форківз квіт. 2026 р.Переглянути на GitHub ↗

milo-os/service-catalog має індекс здоров’я 56 зі 100, що відповідає смузі «Помірний». Найвищий показник — Vitality (83/100), найнижчий — Community & Adoption (12/100). Останнє оновлення було 2 дні тому. Більшість нещодавньої роботи виконує один учасник.

56
загалом / 100
Помірний

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

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

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

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

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

Власність

Milo OSОрганізація
11 підписників30 публічних репозиторіївз квіт. 2026 р.

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

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

РеєстрПакетВерсіяЗавантажень / місВерсіїОстання публікація
Gogo.miloapis.com/service-catalogv0.3.1-440 днів тому

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

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

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

83Добрий · 22% загального індексу
Як обчислюється оцінка
36/36Свіжість push — останній push 2 дн. тому
8.3/36Ритм комітів — 12/52 тижнів із комітами
18/18Обсяг комітів — 152 комітів за останній рік
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Використані вхідні дані
commits_last_year152
human_commit_share1
days_since_last_push2
active_weeks_last_year12
Як обчислюється оцінка
27/27Випускає релізи — опубліковано 4 релізів
36/36Свіжість релізів — останній реліз 33 дн. тому
27/27Ритм релізів — реліз кожні ~7 дн.
0/10OpenSSF Scorecard: Signed-Releases — немає даних
Використані вхідні дані
releases_count4
latest_release_tagv0.3.1
releases_from_tagsні
days_since_latest_release33
mean_days_between_releases7
Виключено з оцінювання (немає даних або не застосовно): OpenSSF Scorecard: Signed-Releases. Залишкові ваги перенормовано.

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

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

12Критичний · 18% загального індексу
Як обчислюється оцінка
0/60Зірки — 0 зірок
0/25Форки — 0 форків
0/15Спостерігачі — 0 спостерігачів
Використані вхідні дані
forks0
stars0
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Як обчислюється оцінка
22.5/22.5README
0/22.5Ліцензія — файлу ліцензії не виявлено
0/18Настанови CONTRIBUTING
0/13.5Кодекс поведінки
0/7.2Шаблон issue
0/6.3Шаблон PR
Використані вхідні дані
has_readmeтак
has_licenseні
has_contributingні
has_issue_templateні
has_code_of_conductні
has_pull_request_templateні

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

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

52Помірний · 24% загального індексу
Як обчислюється оцінка
9/54Бас-фактор — на 1 контриб’ютор(ів) припадає половина всіх комітів
6.7/22.5Розподіл комітів — головний контриб’ютор — автор 70% комітів
8.1/13.5Широта контриб’юторів — 6 контриб’юторів
3/10OpenSSF Scorecard: Contributors — project has 1 contributing companies or organizations -- score normalized to 3
Використані вхідні дані
bus_factor1
contributors_sampled6
top_contributor_share0,704
Як обчислюється оцінка
8.2/46.8Вирішення issue — закрито 18% issue
31.2/38.3Прийняття PR — злито 31/38 вирішених PR
15/15OpenSSF Scorecard: Code-Review — all changesets reviewed
Використані вхідні дані
merged_prs31
open_issues14
closed_issues3
issue_closed_ratio0,176
closed_unmerged_prs7

Власність та опіка

49У зоні ризику
Як обчислюється оцінка
30/30Підтримка власника — у власності організації
0/20Верифікований домен
7.8/25Охоплення власника — 11 підписників у milo-os
11.4/25Послужний список — 30 публічних репозиторіїв, вік облікового запису ~0 р.
Використані вхідні дані
followers11
owner_typeOrganization
is_verified
owner_loginmilo-os
public_repos30
account_age_days93
Як обчислюється оцінка
25/25Опубліковано й доступно — 1 пакет(ів) у go
35/35Свіжість публікацій — остання публікація 40 дн. тому
12/20Історія версій — 4 опублікованих версій
20/20Не застарілий — активний, не deprecated і не yanked
Використані вхідні дані
packagesgo.miloapis.com/service-catalog
ecosystemsgo
any_deprecatedні
min_days_since_publish40

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

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

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

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

65Помірний
Як обчислюється оцінка
30/30README
25/25Каталог документації
0/15Сайт документації / домашня сторінка
10/10Опис репозиторію
0/10Теми
0/10Wiki
Використані вхідні дані
topics
has_wikiні
homepage
has_readmeтак
has_docs_dirтак
has_descriptionтак

Безпека

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

48У зоні ризику · 16% загального індексу

Стан безпеки

42У зоні ризику
Як обчислюється оцінка
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — немає даних
2.5/2.5CI-Tests — 4 out of 4 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
7.5/7.5Code-Review — all changesets reviewed
0.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
0/2.5Ліцензія — license file not detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — немає даних
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — немає даних
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 65 existing vulnerabilities detected
Використані вхідні дані
sourceopenssf_scorecard
checks_evaluated15
scorecard_versionv5.5.0
checks_inconclusive3
scorecard_aggregate4,2
Виключено з оцінювання (немає даних або не застосовно): branch_protection, packaging, signed_releases. Залишкові ваги перенормовано.
Як обчислюється оцінка
14/35Прямі залежності без відомих сповіщень — уражено 1: js-yaml 4.1.1 (high 7.5)
0/25Непрямі залежності без відомих сповіщень — транзитивний набір не відокремлюється від залежностей розробки й тестування в цьому обсязі
40/40Немає задавнених сповіщень — жодне сповіщення не є публічним довше за 90 дн.
Використані вхідні дані
sourceosv
advisories73
affected_packages28
assessed_packages882
unassessed_packages0
affected_by_severitycritical 1, high 11, moderate 11, low 2, unknown 3
direct_affected_packages1
Виключено з оцінювання (немає даних або не застосовно): Непрямі залежності без відомих сповіщень. Залишкові ваги перенормовано. Звірено 882 резолвлених залежностей із OSV. Цей репозиторій не публікує пакета, який резолвить індекс, тож натомість оцінено граф залежностей репозиторію. Цей граф змішує закріплені версії для розробки й тестування зі справді постачаними залежностями, тож оцінюються лише задекларовані runtime-залежності; транзитивні знахідки подаються як контекст і в оцінку не входять. Досяжність не аналізується.

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

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

79Добрий · 0% загального індексу
Як обчислюється оцінка
45/45Інструкції для агентів — CLAUDE.md
0/15Машиночитана документація (llms.txt)
40/40Читабельна історія комітів — намір зазначено у 90 з 100 людських комітів (структурований заголовок або пояснювальний текст)
Використані вхідні дані
has_llms_txtні
legible_history_share0,9
agent_instruction_filesCLAUDE.md
agent_instruction_max_bytes2 859
Як обчислюється оцінка
18/18Розгортання однією командою — Taskfile.yaml, ui/Taskfile.yaml
22/22Автоматизовані тести
11/11Конфігурація лінтера / форматера — .golangci.yml
11/11Статична перевірка типів — ui/tsconfig.json
10/10Відтворюване середовище — Dockerfile, lockfile
10/10Підтверджена практика роботи з агентами — 31 з останніх 100 комітів створено агентом або з його зазначенням
0/8Автоматизоване супроводження — автоматичних оновлень залежностей не виявлено
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Використані вхідні дані
has_nixні
has_testsтак
lockfilesgo.sum, pnpm-lock.yaml
has_dockerfileтак
typed_languageтак
bootstrap_filesTaskfile.yaml, ui/Taskfile.yaml
has_devcontainerні
has_linter_configтак
typecheck_configsui/tsconfig.json
agent_commit_share0,31
toolchain_manifestsgo.mod
dependency_bot_commit_share0
Як обчислюється оцінка
45/45Типізований код — Go (статично типізована)
54.6/55Керовані розміри файлів — 1/137 файлів вихідного коду понад 60 КБ
Використані вхідні дані
primary_languageGo
largest_source_bytes60 415
source_files_sampled137
oversized_source_files1
Як обчислюється оцінка
0/40Схема API (OpenAPI/GraphQL/proto)
0/20Сервер MCP
40/40Придатні до запуску приклади — samples
Використані вхідні дані
example_dirssamples
has_mcp_signalні
api_schema_files

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

0зірок GitHub
6контриб'юторів
152комітів за останні 12 місяців
2днів від останнього пушу
4релізів
1бас-фактор
14відкритих issue
Go, npmпакетних екосистем

Докладніше

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

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

10Binary-Artifactsno binaries found in the repo
н/дBranch-Protectioninternal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
10CI-Tests4 out of 4 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
10Code-Reviewall changesets reviewed
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
0Licenselicense file not detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
н/дPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
н/дSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities65 existing vulnerabilities detected
Прямі залежності 33
РеєстрПакетОбмеження версіїМаніфест
Gogithub.com/go-logr/logrv1.4.3go.mod
Gogithub.com/onsi/ginkgo/v2v2.27.2go.mod
Gogithub.com/onsi/gomegav1.38.2go.mod
Gogithub.com/prometheus/client_golangv1.23.2go.mod
Gogithub.com/prometheus/client_modelv0.6.2go.mod
Gogithub.com/spf13/cobrav1.10.0go.mod
Gogo.miloapis.com/billingv0.2.15go.mod
Gogo.miloapis.com/milov0.31.1go.mod
Gogolang.org/x/termv0.42.0go.mod
Gok8s.io/apiv0.35.0go.mod
Gok8s.io/apimachineryv0.35.0go.mod
Gok8s.io/cli-runtimev0.33.1go.mod
Gok8s.io/client-gov0.35.0go.mod
Gok8s.io/utilsv0.0.0-20251002143259-bc988d571ff4go.mod
Gosigs.k8s.io/controller-runtimev0.23.3go.mod
Gosigs.k8s.io/multicluster-runtimev0.23.3go.mod
Gosigs.k8s.io/yamlv1.6.0go.mod
npm@datum-cloud/datum-ui^0.8.0ui/package.json
npm@remix-run/node^2.15.2ui/package.json
npm@remix-run/react^2.15.2ui/package.json
npm@remix-run/serve^2.15.2ui/package.json
npmclass-variance-authority^0.7.1ui/package.json
npmclsx^2.1.1ui/package.json
npmisbot^5.1.17ui/package.json
npmjs-yaml^4.1.1ui/package.json
npmlucide-react^0.577.0ui/package.json
npmreact^19.2.5ui/package.json
npmreact-dom^19.2.5ui/package.json
npm@tanstack/react-virtual>=3ui/package.json
npmsonner>=2ui/package.json
npmzod>=4ui/package.json
npmtailwind-merge^3.4.0ui/package.json
npmtailwindcss-animate^1.0.7ui/package.json
Усі залежності 882

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

РеєстрПакетВерсіяЗв'язок
Gogithub.com/go-logr/logrv1.4.3пряма
Gogithub.com/onsi/ginkgo/v2v2.27.2пряма
Gogithub.com/onsi/gomegav1.38.2пряма
Gogithub.com/prometheus/client_golangv1.23.2пряма
Gogithub.com/prometheus/client_modelv0.6.2пряма
Gogithub.com/spf13/cobrav1.10.0пряма
Gogo.miloapis.com/billingv0.2.15пряма
Gogo.miloapis.com/milov0.31.1пряма
Gogolang.org/x/termv0.42.0пряма
Gok8s.io/apiv0.35.0пряма
Gok8s.io/apimachineryv0.35.0пряма
Gok8s.io/cli-runtimev0.33.1пряма
Gok8s.io/client-gov0.35.0пряма
Gok8s.io/utilsv0.0.0-20251002143259-bc988d571ff4пряма
Gosigs.k8s.io/controller-runtimev0.23.3пряма
Gosigs.k8s.io/multicluster-runtimev0.23.3пряма
Gosigs.k8s.io/yamlv1.6.0пряма
npm@datum-cloud/datum-ui0.8.1пряма
npm@remix-run/node2.17.4пряма
npm@remix-run/react2.17.4пряма
npm@remix-run/serve2.17.4пряма
npm@tanstack/react-virtual3.13.24пряма
npmclass-variance-authority0.7.1пряма
npmclsx2.1.1пряма
npmisbot5.1.40пряма
npmjs-yaml4.1.1пряма
npmlucide-react0.577.0пряма
npmreact19.2.5пряма
npmreact-dom19.2.5пряма
npmsonner2.0.7пряма
npmtailwind-merge3.5.0пряма
npmtailwindcss-animate1.0.7пряма
npmzod4.4.3пряма
Gocel.dev/exprv0.24.0непряма
Gogithub.com/antlr4-go/antlr/v4v4.13.0непряма
Gogithub.com/azure/go-ansitermv0.0.0-20230124172434-306776ec8161непряма
Gogithub.com/beorn7/perksv1.0.1непряма
Gogithub.com/blang/semver/v4v4.0.0непряма
Gogithub.com/cenkalti/backoff/v4v4.3.0непряма
Gogithub.com/cespare/xxhash/v2v2.3.0непряма
Gogithub.com/davecgh/go-spewv1.1.2-0.20180830191138-d8f796af33ccнепряма
Gogithub.com/emicklei/go-restful/v3v3.12.2непряма
Gogithub.com/evanphx/json-patch/v5v5.9.11непряма
Gogithub.com/felixge/httpsnoopv1.0.4непряма
Gogithub.com/fsnotify/fsnotifyv1.9.0непряма
Gogithub.com/fxamacker/cbor/v2v2.9.0непряма
Gogithub.com/go-errors/errorsv1.4.2непряма
Gogithub.com/go-logr/stdrv1.2.2непряма
Gogithub.com/go-logr/zaprv1.3.0непряма
Gogithub.com/go-openapi/jsonpointerv0.21.1непряма
Gogithub.com/go-openapi/jsonreferencev0.21.0непряма
Gogithub.com/go-openapi/swagv0.23.1непряма
Gogithub.com/go-task/slim-sprig/v3v3.0.0непряма
Gogithub.com/google/btreev1.1.3непряма
Gogithub.com/google/cel-gov0.26.0непряма
Gogithub.com/google/gnostic-modelsv0.7.0непряма
Gogithub.com/google/go-cmpv0.7.0непряма
Gogithub.com/google/pprofv0.0.0-20250403155104-27863c87afa6непряма
Gogithub.com/google/shlexv0.0.0-20191202100458-e7afc7fbc510непряма
Gogithub.com/google/uuidv1.6.0непряма
Gogithub.com/gregjones/httpcachev0.0.0-20190611155906-901d90724c79непряма
Gogithub.com/grpc-ecosystem/grpc-gateway/v2v2.26.3непряма
Gogithub.com/inconshreveable/mousetrapv1.1.0непряма
Gogithub.com/josharian/internv1.0.0непряма
Gogithub.com/json-iterator/gov1.1.12непряма
Gogithub.com/liggitt/tabwriterv0.0.0-20181228230101-89fcab3d43deнепряма
Gogithub.com/mailru/easyjsonv0.9.0непряма
Gogithub.com/masterminds/semver/v3v3.4.0непряма
Gogithub.com/moby/termv0.5.0непряма
Gogithub.com/modern-go/concurrentv0.0.0-20180306012644-bacd9c7ef1ddнепряма
Gogithub.com/modern-go/reflect2v1.0.3-0.20250322232337-35a7c28c31eeнепряма
Gogithub.com/monochromegane/go-gitignorev0.0.0-20200626010858-205db1a8cc00непряма
Gogithub.com/munnerz/goautonegv0.0.0-20191010083416-a7dc8b61c822непряма
Gogithub.com/peterbourgon/diskvv2.0.1+incompatibleнепряма
Gogithub.com/pmezard/go-difflibv1.0.1-0.20181226105442-5d4384ee4fb2непряма
Gogithub.com/prometheus/commonv0.67.5непряма
Gogithub.com/prometheus/procfsv0.20.1непряма
Gogithub.com/spf13/pflagv1.0.9непряма
Gogithub.com/stoewer/go-strcasev1.3.0непряма
Gogithub.com/x448/float16v0.8.4непряма
Gogithub.com/xlab/treeprintv1.2.0непряма
Gogo.opentelemetry.io/auto/sdkv1.2.1непряма
Gogo.opentelemetry.io/contrib/instrumentation/net/http/otelhttpv0.61.0непряма
Gogo.opentelemetry.io/otelv1.43.0непряма
Gogo.opentelemetry.io/otel/exporters/otlp/otlptracev1.34.0непряма
Gogo.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpcv1.34.0непряма
Gogo.opentelemetry.io/otel/metricv1.43.0непряма
Gogo.opentelemetry.io/otel/sdkv1.43.0непряма
Gogo.opentelemetry.io/otel/tracev1.43.0непряма
Gogo.opentelemetry.io/proto/otlpv1.5.0непряма
Gogo.uber.org/multierrv1.11.0непряма
Gogo.uber.org/zapv1.27.0непряма
Gogo.yaml.in/yaml/v2v2.4.4непряма
Gogo.yaml.in/yaml/v3v3.0.4непряма
Gogolang.org/x/expv0.0.0-20240719175910-8a7402abbf56непряма
Gogolang.org/x/modv0.34.0непряма
Gogolang.org/x/netv0.52.0непряма
Gogolang.org/x/oauth2v0.34.0непряма
Gogolang.org/x/syncv0.20.0непряма
Gogolang.org/x/sysv0.43.0непряма
Gogolang.org/x/textv0.36.0непряма
Gogolang.org/x/timev0.15.0непряма
Gogolang.org/x/toolsv0.43.0непряма
Gogomodules.xyz/jsonpatch/v2v2.5.0непряма
Gogoogle.golang.org/genproto/googleapis/apiv0.0.0-20250303144028-a0af3efb3debнепряма
Gogoogle.golang.org/genproto/googleapis/rpcv0.0.0-20250528174236-200df99c418aнепряма
Gogoogle.golang.org/grpcv1.72.2непряма
Gogoogle.golang.org/protobufv1.36.11непряма
Gogopkg.in/evanphx/json-patch.v4v4.13.0непряма
Gogopkg.in/inf.v0v0.9.1непряма
Gogopkg.in/yaml.v3v3.0.1непряма
Gok8s.io/apiextensions-apiserverv0.35.0непряма
Gok8s.io/apiserverv0.35.0непряма
Gok8s.io/component-basev0.35.0непряма
Gok8s.io/klog/v2v2.130.1непряма
Gok8s.io/kube-openapiv0.0.0-20250910181357-589584f1c912непряма
Gosigs.k8s.io/apiserver-network-proxy/konnectivity-clientv0.31.2непряма
Gosigs.k8s.io/jsonv0.0.0-20250730193827-2d320260d730непряма
Gosigs.k8s.io/kustomize/apiv0.19.0непряма
Gosigs.k8s.io/kustomize/kyamlv0.19.0непряма
Gosigs.k8s.io/randfillv1.0.0непряма
Gosigs.k8s.io/structured-merge-diff/v6v6.3.2-0.20260122202528-d9cc6641c482непряма
npm@alloc/quick-lru5.2.0непряма
npm@asamuzakjp/css-color5.1.11непряма
npm@asamuzakjp/dom-selector7.1.1непряма
npm@asamuzakjp/generational-cache1.0.1непряма
npm@asamuzakjp/nwsapi2.3.9непряма
npm@babel/code-frame7.29.0непряма
npm@babel/compat-data7.29.3непряма
npm@babel/core7.29.0непряма
npm@babel/generator7.29.1непряма
npm@babel/helper-annotate-as-pure7.27.3непряма
npm@babel/helper-compilation-targets7.28.6непряма
npm@babel/helper-create-class-features-plugin7.29.3непряма
npm@babel/helper-globals7.28.0непряма
npm@babel/helper-member-expression-to-functions7.28.5непряма
npm@babel/helper-module-imports7.28.6непряма
npm@babel/helper-module-transforms7.28.6непряма
npm@babel/helper-optimise-call-expression7.27.1непряма
npm@babel/helper-plugin-utils7.28.6непряма
npm@babel/helper-replace-supers7.28.6непряма
npm@babel/helper-skip-transparent-expression-wrappers7.27.1непряма
npm@babel/helper-string-parser7.27.1непряма
npm@babel/helper-validator-identifier7.28.5непряма
npm@babel/helper-validator-option7.27.1непряма
npm@babel/helpers7.29.2непряма
npm@babel/parser7.29.3непряма
npm@babel/plugin-syntax-decorators7.28.6непряма
npm@babel/plugin-syntax-jsx7.28.6непряма
npm@babel/plugin-syntax-typescript7.28.6непряма
npm@babel/plugin-transform-modules-commonjs7.28.6непряма
npm@babel/plugin-transform-typescript7.28.6непряма
npm@babel/preset-typescript7.28.5непряма
npm@babel/runtime7.29.2непряма
npm@babel/template7.28.6непряма
npm@babel/traverse7.29.0непряма
npm@babel/types7.29.0непряма
npm@bramus/specificity2.4.2непряма
npm@csstools/color-helpers6.0.2непряма
npm@csstools/css-calc3.2.0непряма
npm@csstools/css-color-parser4.1.0непряма
npm@csstools/css-parser-algorithms4.0.0непряма
npm@csstools/css-syntax-patches-for-csstree1.1.3непряма
npm@csstools/css-tokenizer4.0.0непряма
npm@date-fns/tz1.4.1непряма
npm@dnd-kit/utilities3.2.2непряма
npm@emotion/hash0.9.2непряма
npm@esbuild/aix-ppc640.21.5непряма
npm@esbuild/android-arm0.17.6непряма
npm@esbuild/android-arm0.21.5непряма
npm@esbuild/android-arm640.17.6непряма
npm@esbuild/android-arm640.21.5непряма
npm@esbuild/android-x640.17.6непряма
npm@esbuild/android-x640.21.5непряма
npm@esbuild/darwin-arm640.17.6непряма
npm@esbuild/darwin-arm640.21.5непряма
npm@esbuild/darwin-x640.17.6непряма
npm@esbuild/darwin-x640.21.5непряма
npm@esbuild/freebsd-arm640.17.6непряма
npm@esbuild/freebsd-arm640.21.5непряма
npm@esbuild/freebsd-x640.17.6непряма
npm@esbuild/freebsd-x640.21.5непряма
npm@esbuild/linux-arm0.17.6непряма
npm@esbuild/linux-arm0.21.5непряма
npm@esbuild/linux-arm640.17.6непряма
npm@esbuild/linux-arm640.21.5непряма
npm@esbuild/linux-ia320.17.6непряма
npm@esbuild/linux-ia320.21.5непряма
npm@esbuild/linux-loong640.17.6непряма
npm@esbuild/linux-loong640.21.5непряма
npm@esbuild/linux-mips64el0.17.6непряма
npm@esbuild/linux-mips64el0.21.5непряма
npm@esbuild/linux-ppc640.17.6непряма
npm@esbuild/linux-ppc640.21.5непряма
npm@esbuild/linux-riscv640.17.6непряма
npm@esbuild/linux-riscv640.21.5непряма
npm@esbuild/linux-s390x0.17.6непряма
npm@esbuild/linux-s390x0.21.5непряма
npm@esbuild/linux-x640.17.6непряма
npm@esbuild/linux-x640.21.5непряма
npm@esbuild/netbsd-x640.17.6непряма
npm@esbuild/netbsd-x640.21.5непряма
npm@esbuild/openbsd-x640.17.6непряма
npm@esbuild/openbsd-x640.21.5непряма
npm@esbuild/sunos-x640.17.6непряма
npm@esbuild/sunos-x640.21.5непряма
npm@esbuild/win32-arm640.17.6непряма
npm@esbuild/win32-arm640.21.5непряма
npm@esbuild/win32-ia320.17.6непряма
npm@esbuild/win32-ia320.21.5непряма
npm@esbuild/win32-x640.17.6непряма
npm@esbuild/win32-x640.21.5непряма
npm@exodus/bytes1.15.0непряма
npm@floating-ui/core1.7.5непряма
npm@floating-ui/dom1.7.6непряма
npm@floating-ui/react-dom2.1.8непряма
npm@floating-ui/utils0.2.11непряма
npm@isaacs/cliui8.0.2непряма
npm@jridgewell/gen-mapping0.3.13непряма
npm@jridgewell/remapping2.3.5непряма
npm@jridgewell/resolve-uri3.1.2непряма
npm@jridgewell/sourcemap-codec1.5.5непряма
npm@jridgewell/trace-mapping0.3.31непряма
npm@jspm/core2.1.0непряма
npm@mdx-js/mdx2.3.0непряма
npm@npmcli/fs3.1.1непряма
npm@npmcli/git4.1.0непряма
npm@npmcli/package-json4.0.1непряма
npm@npmcli/promise-spawn6.0.2непряма
npm@pkgjs/parseargs0.11.0непряма
npm@playwright/test1.59.1непряма
npm@radix-ui/number1.1.1непряма
npm@radix-ui/primitive1.1.3непряма
npm@radix-ui/react-arrow1.1.7непряма
npm@radix-ui/react-avatar1.1.11непряма
npm@radix-ui/react-checkbox1.3.3непряма
npm@radix-ui/react-collapsible1.1.12непряма
npm@radix-ui/react-collection1.1.7непряма
npm@radix-ui/react-compose-refs1.1.2непряма
npm@radix-ui/react-context1.1.2непряма
npm@radix-ui/react-context1.1.3непряма
npm@radix-ui/react-dialog1.1.15непряма
npm@radix-ui/react-direction1.1.1непряма
npm@radix-ui/react-dismissable-layer1.1.11непряма
npm@radix-ui/react-dropdown-menu2.1.16непряма
npm@radix-ui/react-focus-guards1.1.3непряма
npm@radix-ui/react-focus-scope1.1.7непряма
npm@radix-ui/react-hover-card1.1.15непряма
npm@radix-ui/react-id1.1.1непряма
npm@radix-ui/react-label2.1.8непряма
npm@radix-ui/react-menu2.1.16непряма
npm@radix-ui/react-popover1.1.15непряма
npm@radix-ui/react-popper1.2.8непряма
npm@radix-ui/react-portal1.1.9непряма
npm@radix-ui/react-presence1.1.5непряма
npm@radix-ui/react-primitive2.1.3непряма
npm@radix-ui/react-primitive2.1.4непряма
npm@radix-ui/react-radio-group1.3.8непряма
npm@radix-ui/react-roving-focus1.1.11непряма
npm@radix-ui/react-select2.2.6непряма
npm@radix-ui/react-separator1.1.8непряма
npm@radix-ui/react-slot1.2.3непряма
npm@radix-ui/react-slot1.2.4непряма
npm@radix-ui/react-switch1.2.6непряма
npm@radix-ui/react-tabs1.1.13непряма
npm@radix-ui/react-tooltip1.2.8непряма
npm@radix-ui/react-use-callback-ref1.1.1непряма
npm@radix-ui/react-use-controllable-state1.2.2непряма
npm@radix-ui/react-use-effect-event0.0.2непряма
npm@radix-ui/react-use-escape-keydown1.1.1непряма
npm@radix-ui/react-use-is-hydrated0.1.0непряма
npm@radix-ui/react-use-layout-effect1.1.1непряма
npm@radix-ui/react-use-previous1.1.1непряма
npm@radix-ui/react-use-rect1.1.1непряма
npm@radix-ui/react-use-size1.1.1непряма
npm@radix-ui/react-visually-hidden1.2.3непряма
npm@radix-ui/react-visually-hidden1.2.4непряма
npm@radix-ui/rect1.1.1непряма
npm@remix-run/dev2.17.4непряма
npm@remix-run/express2.17.4непряма
npm@remix-run/router1.23.2непряма
npm@remix-run/server-runtime2.17.4непряма
npm@remix-run/web-blob3.1.0непряма
npm@remix-run/web-fetch4.4.2непряма
npm@remix-run/web-file3.1.0непряма
npm@remix-run/web-form-data3.1.0непряма
npm@remix-run/web-stream1.1.0непряма
npm@rollup/rollup-android-arm-eabi4.60.3непряма
npm@rollup/rollup-android-arm644.60.3непряма
npm@rollup/rollup-darwin-arm644.60.3непряма
npm@rollup/rollup-darwin-x644.60.3непряма
npm@rollup/rollup-freebsd-arm644.60.3непряма
npm@rollup/rollup-freebsd-x644.60.3непряма
npm@rollup/rollup-linux-arm-gnueabihf4.60.3непряма
npm@rollup/rollup-linux-arm-musleabihf4.60.3непряма
npm@rollup/rollup-linux-arm64-gnu4.60.3непряма
npm@rollup/rollup-linux-arm64-musl4.60.3непряма
npm@rollup/rollup-linux-loong64-gnu4.60.3непряма
npm@rollup/rollup-linux-loong64-musl4.60.3непряма
npm@rollup/rollup-linux-ppc64-gnu4.60.3непряма
npm@rollup/rollup-linux-ppc64-musl4.60.3непряма
npm@rollup/rollup-linux-riscv64-gnu4.60.3непряма
npm@rollup/rollup-linux-riscv64-musl4.60.3непряма
npm@rollup/rollup-linux-s390x-gnu4.60.3непряма
npm@rollup/rollup-linux-x64-gnu4.60.3непряма
npm@rollup/rollup-linux-x64-musl4.60.3непряма
npm@rollup/rollup-openbsd-x644.60.3непряма
npm@rollup/rollup-openharmony-arm644.60.3непряма
npm@rollup/rollup-win32-arm64-msvc4.60.3непряма
npm@rollup/rollup-win32-ia32-msvc4.60.3непряма
npm@rollup/rollup-win32-x64-gnu4.60.3непряма
npm@rollup/rollup-win32-x64-msvc4.60.3непряма
npm@tabby_ai/hijri-converter1.0.5непряма
npm@tailwindcss/node4.2.4непряма
npm@tailwindcss/oxide4.2.4непряма
npm@tailwindcss/oxide-android-arm644.2.4непряма
npm@tailwindcss/oxide-darwin-arm644.2.4непряма
npm@tailwindcss/oxide-darwin-x644.2.4непряма
npm@tailwindcss/oxide-freebsd-x644.2.4непряма
npm@tailwindcss/oxide-linux-arm-gnueabihf4.2.4непряма
npm@tailwindcss/oxide-linux-arm64-gnu4.2.4непряма
npm@tailwindcss/oxide-linux-arm64-musl4.2.4непряма
npm@tailwindcss/oxide-linux-x64-gnu4.2.4непряма
npm@tailwindcss/oxide-linux-x64-musl4.2.4непряма
npm@tailwindcss/oxide-wasm32-wasi4.2.4непряма
npm@tailwindcss/oxide-win32-arm64-msvc4.2.4непряма
npm@tailwindcss/oxide-win32-x64-msvc4.2.4непряма
npm@tailwindcss/postcss4.2.4непряма
npm@tailwindcss/vite4.2.4непряма
npm@tanstack/virtual-core3.14.0непряма
npm@types/acorn4.0.6непряма
npm@types/cookie0.6.0непряма
npm@types/debug4.1.13непряма
npm@types/estree1.0.8непряма
npm@types/estree-jsx1.0.5непряма
npm@types/hast2.3.10непряма
npm@types/js-yaml4.0.9непряма
npm@types/mdast3.0.15непряма
npm@types/mdx2.0.13непряма
npm@types/ms2.1.0непряма
npm@types/node25.6.0непряма
npm@types/react19.2.14непряма
npm@types/react-dom19.2.3непряма
npm@types/trusted-types2.0.7непряма
npm@types/unist2.0.11непряма
npm@vanilla-extract/babel-plugin-debug-ids1.2.2непряма
npm@vanilla-extract/css1.20.1непряма
npm@vanilla-extract/integration6.5.0непряма
npm@vanilla-extract/private1.0.9непряма
npm@web3-storage/multipart-parser1.0.0непряма
npm@zxing/text-encoding0.9.0непряма
npmabort-controller3.0.0непряма
npmaccepts1.3.8непряма
npmacorn8.16.0непряма
npmacorn-jsx5.3.2непряма
npmaggregate-error3.1.0непряма
npmansi-regex5.0.1непряма
npmansi-regex6.2.2непряма
npmansi-styles4.3.0непряма
npmansi-styles6.2.3непряма
npmanymatch3.1.3непряма
npmarg5.0.2непряма
npmargparse2.0.1непряма
npmaria-hidden1.2.6непряма
npmarray-flatten1.1.1непряма
npmastring1.9.0непряма
npmautoprefixer10.5.0непряма
npmavailable-typed-arrays1.0.7непряма
npmbail2.0.2непряма
npmbalanced-match1.0.2непряма
npmbase64-js1.5.1непряма
npmbaseline-browser-mapping2.10.27непряма
npmbasic-auth2.0.1непряма
npmbidi-js1.0.3непряма
npmbinary-extensions2.3.0непряма
npmbl4.1.0непряма
npmbody-parser1.20.5непряма
npmbrace-expansion2.1.0непряма
npmbraces3.0.3непряма
npmbrowserify-zlib0.1.4непряма
npmbrowserslist4.28.2непряма
npmbuffer5.7.1непряма
npmbuffer-from1.1.2непряма
npmbytes3.1.2непряма
npmcac6.7.14непряма
npmcacache17.1.4непряма
npmcall-bind1.0.9непряма
npmcall-bind-apply-helpers1.0.2непряма
npmcall-bound1.0.4непряма
npmcaniuse-lite1.0.30001791непряма
npmccount2.0.1непряма
npmchalk4.1.2непряма
npmcharacter-entities2.0.2непряма
npmcharacter-entities-html42.1.0непряма
npmcharacter-entities-legacy3.0.0непряма
npmcharacter-reference-invalid2.0.1непряма
npmchokidar3.6.0непряма
npmchownr1.1.4непряма
npmchownr2.0.0непряма
npmclean-stack2.2.0непряма
npmcli-cursor3.1.0непряма
npmcli-spinners2.9.2непряма
npmclone1.0.4непряма
npmcmdk1.1.1непряма
npmcolor-convert2.0.1непряма
npmcolor-name1.1.4непряма
npmcomma-separated-tokens2.0.3непряма
npmcompressible2.0.18непряма
npmcompression1.8.1непряма
npmconfbox0.1.8непряма
npmconfbox0.2.4непряма
npmcontent-disposition0.5.4непряма
npmcontent-type1.0.5непряма
npmconvert-source-map2.0.0непряма
npmcookie0.7.2непряма
npmcookie-signature1.0.7непряма
npmcookie-signature1.2.2непряма
npmcore-util-is1.0.3непряма
npmcross-spawn7.0.6непряма
npmcss-tree3.2.1непряма
npmcss-what6.2.2непряма
npmcssesc3.0.0непряма
npmcsstype3.2.3непряма
npmdata-uri-to-buffer3.0.1непряма
npmdata-urls7.0.0непряма
npmdate-fns4.1.0непряма
npmdate-fns-jalali4.1.0-0непряма
npmdebug2.6.9непряма
npmdebug4.4.3непряма
npmdecimal.js10.6.0непряма
npmdecode-named-character-reference1.3.0непряма
npmdedent1.7.2непряма
npmdeep-object-diff1.1.9непряма
npmdeepmerge4.3.1непряма
npmdefaults1.0.4непряма
npmdefine-data-property1.1.4непряма
npmdepd2.0.0непряма
npmdequal2.0.3непряма
npmdestroy1.2.0непряма
npmdetect-libc2.1.2непряма
npmdetect-node-es1.1.0непряма
npmdiff5.2.2непряма
npmdompurify3.4.2непряма
npmdotenv16.6.1непряма
npmdunder-proto1.0.1непряма
npmduplexify3.7.1непряма
npmeastasianwidth0.2.0непряма
npmee-first1.1.1непряма
npmelectron-to-chromium1.5.350непряма
npmemoji-regex8.0.0непряма
npmemoji-regex9.2.2непряма
npmencodeurl2.0.0непряма
npmend-of-stream1.4.5непряма
npmenhanced-resolve5.21.0непряма
npmentities8.0.0непряма
npmerr-code2.0.3непряма
npmes-define-property1.0.1непряма
npmes-errors1.3.0непряма
npmes-module-lexer1.7.0непряма
npmes-object-atoms1.1.1непряма
npmesbuild0.17.6непряма
npmesbuild0.21.5непряма
npmesbuild-plugins-node-modules-polyfill1.8.1непряма
npmescalade3.2.0непряма
npmescape-html1.0.3непряма
npmestree-util-attach-comments2.1.1непряма
npmestree-util-build-jsx2.2.2непряма
npmestree-util-is-identifier-name1.1.0непряма
npmestree-util-is-identifier-name2.1.0непряма
npmestree-util-to-js1.2.0непряма
npmestree-util-value-to-estree1.3.0непряма
npmestree-util-visit1.2.1непряма
npmestree-walker3.0.3непряма
npmetag1.8.1непряма
npmeval0.1.8непряма
npmevent-target-shim5.0.1непряма
npmexeca5.1.1непряма
npmexit-hook2.2.1непряма
npmexpress4.22.1непряма
npmexsolve1.0.8непряма
npmextend3.0.2непряма
npmfault2.0.1непряма
npmfill-range7.1.1непряма
npmfinalhandler1.3.2непряма
npmfind-up5.0.0непряма
npmfor-each0.3.5непряма
npmforeground-child3.3.1непряма
npmformat0.2.2непряма
npmforwarded0.2.0непряма
npmfraction.js5.3.4непряма
npmfresh0.5.2непряма
npmfs-constants1.0.0непряма
npmfs-extra10.1.0непряма
npmfs-minipass2.1.0непряма
npmfs-minipass3.0.3непряма
npmfsevents2.3.2непряма
npmfsevents2.3.3непряма
npmfunction-bind1.1.2непряма
npmgenerator-function2.0.1непряма
npmgeneric-names4.0.0непряма
npmgensync1.0.0-beta.2непряма
npmget-intrinsic1.3.0непряма
npmget-nonce1.0.1непряма
npmget-port5.1.1непряма
npmget-proto1.0.1непряма
npmget-stream6.0.1непряма
npmglob10.5.0непряма
npmglob-parent5.1.2непряма
npmgopd1.2.0непряма
npmgraceful-fs4.2.11непряма
npmgunzip-maybe1.4.2непряма
npmhas-flag4.0.0непряма
npmhas-property-descriptors1.0.2непряма
npmhas-symbols1.1.0непряма
npmhas-tostringtag1.0.2непряма
npmhasown2.0.3непряма
npmhast-util-to-estree2.3.3непряма
npmhast-util-whitespace2.0.1непряма
npmhosted-git-info6.1.3непряма
npmhtml-encoding-sniffer6.0.0непряма
npmhttp-errors2.0.1непряма
npmhuman-signals2.1.0непряма
npmiconv-lite0.4.24непряма
npmicss-utils5.1.0непряма
npmieee7541.2.1непряма
npmimurmurhash0.1.4непряма
npmindent-string4.0.0непряма
npminherits2.0.4непряма
npminline-style-parser0.1.1непряма
npmipaddr.js1.9.1непряма
npmis-alphabetical2.0.1непряма
npmis-alphanumerical2.0.1непряма
npmis-arguments1.2.0непряма
npmis-binary-path2.1.0непряма
npmis-buffer2.0.5непряма
npmis-callable1.2.7непряма
npmis-core-module2.16.2непряма
npmis-decimal2.0.1непряма
npmis-deflate1.0.0непряма
npmis-extglob2.1.1непряма
npmis-fullwidth-code-point3.0.0непряма
npmis-generator-function1.1.2непряма
npmis-glob4.0.3непряма
npmis-gzip1.0.0непряма
npmis-hexadecimal2.0.1непряма
npmis-interactive1.0.0непряма
npmis-number7.0.0непряма
npmis-plain-obj3.0.0непряма
npmis-plain-obj4.1.0непряма
npmis-potential-custom-element-name1.0.1непряма
npmis-reference3.0.3непряма
npmis-regex1.2.1непряма
npmis-stream2.0.1непряма
npmis-typed-array1.1.15непряма
npmis-unicode-supported0.1.0непряма
npmisarray1.0.0непряма
npmisexe2.0.0непряма
npmisomorphic-dompurify3.12.0непряма
npmjackspeak3.4.3непряма
npmjavascript-stringify2.1.0непряма
npmjiti2.7.0непряма
npmjs-tokens4.0.0непряма
npmjsdom29.1.1непряма
npmjsesc3.0.2непряма
npmjson-parse-even-better-errors3.0.2непряма
npmjson52.2.3непряма
npmjsonfile6.2.1непряма
npmkleur4.1.5непряма
npmlightningcss1.32.0непряма
npmlightningcss-android-arm641.32.0непряма
npmlightningcss-darwin-arm641.32.0непряма
npmlightningcss-darwin-x641.32.0непряма
npmlightningcss-freebsd-x641.32.0непряма
npmlightningcss-linux-arm-gnueabihf1.32.0непряма
npmlightningcss-linux-arm64-gnu1.32.0непряма
npmlightningcss-linux-arm64-musl1.32.0непряма
npmlightningcss-linux-x64-gnu1.32.0непряма
npmlightningcss-linux-x64-musl1.32.0непряма
npmlightningcss-win32-arm64-msvc1.32.0непряма
npmlightningcss-win32-x64-msvc1.32.0непряма
npmlilconfig3.1.3непряма
npmloader-utils3.3.1непряма
npmlocal-pkg1.1.2непряма
npmlocate-path6.0.0непряма
npmlodash4.18.1непряма
npmlodash.camelcase4.3.0непряма
npmlodash.debounce4.0.8непряма
npmlog-symbols4.1.0непряма
npmlongest-streak3.1.0непряма
npmlru-cache10.4.3непряма
npmlru-cache11.3.6непряма
npmlru-cache5.1.1непряма
npmlru-cache7.18.3непряма
npmmagic-string0.30.21непряма
npmmarkdown-extensions1.1.1непряма
npmmath-intrinsics1.1.0непряма
npmmdast-util-definitions5.1.2непряма
npmmdast-util-from-markdown1.3.1непряма
npmmdast-util-frontmatter1.0.1непряма
npmmdast-util-mdx2.0.1непряма
npmmdast-util-mdx-expression1.3.2непряма
npmmdast-util-mdx-jsx2.1.4непряма
npmmdast-util-mdxjs-esm1.3.1непряма
npmmdast-util-phrasing3.0.1непряма
npmmdast-util-to-hast12.3.0непряма
npmmdast-util-to-markdown1.5.0непряма
npmmdast-util-to-string3.2.0непряма
npmmdn-data2.27.1непряма
npmmedia-query-parser2.0.2непряма
npmmedia-typer0.3.0непряма
npmmerge-descriptors1.0.3непряма
npmmerge-stream2.0.0непряма
npmmethods1.1.2непряма
npmmicromark3.2.0непряма
npmmicromark-core-commonmark1.1.0непряма
npmmicromark-extension-frontmatter1.1.1непряма
npmmicromark-extension-mdx-expression1.0.8непряма
npmmicromark-extension-mdx-jsx1.0.5непряма
npmmicromark-extension-mdx-md1.0.1непряма
npmmicromark-extension-mdxjs1.0.1непряма
npmmicromark-extension-mdxjs-esm1.0.5непряма
npmmicromark-factory-destination1.1.0непряма
npmmicromark-factory-label1.1.0непряма
npmmicromark-factory-mdx-expression1.0.9непряма
npmmicromark-factory-space1.1.0непряма
npmmicromark-factory-title1.1.0непряма
npmmicromark-factory-whitespace1.1.0непряма
npmmicromark-util-character1.2.0непряма
npmmicromark-util-chunked1.1.0непряма
npmmicromark-util-classify-character1.1.0непряма
npmmicromark-util-combine-extensions1.1.0непряма
npmmicromark-util-decode-numeric-character-reference1.1.0непряма
npmmicromark-util-decode-string1.1.0непряма
npmmicromark-util-encode1.1.0непряма
npmmicromark-util-events-to-acorn1.2.3непряма
npmmicromark-util-html-tag-name1.2.0непряма
npmmicromark-util-normalize-identifier1.1.0непряма
npmmicromark-util-resolve-all1.1.0непряма
npmmicromark-util-sanitize-uri1.2.0непряма
npmmicromark-util-subtokenize1.1.0непряма
npmmicromark-util-symbol1.1.0непряма
npmmicromark-util-types1.1.0непряма
npmmime1.6.0непряма
npmmime-db1.52.0непряма
npmmime-db1.54.0непряма
npmmime-types2.1.35непряма
npmmimic-fn2.1.0непряма
npmminimatch9.0.9непряма
npmminimist1.2.8непряма
npmminipass3.3.6непряма
npmminipass5.0.0непряма
npmminipass7.1.3непряма
npmminipass-collect1.0.2непряма
npmminipass-flush1.0.7непряма
npmminipass-pipeline1.2.4непряма
npmminizlib2.1.2непряма
npmmkdirp1.0.4непряма
npmmkdirp-classic0.5.3непряма
npmmlly1.8.2непряма
npmmodern-ahocorasick1.1.0непряма
npmmorgan1.10.1непряма
npmmri1.2.0непряма
npmmrmime1.0.1непряма
npmms2.0.0непряма
npmms2.1.3непряма
npmnanoid3.3.12непряма
npmnegotiator0.6.3непряма
npmnegotiator0.6.4непряма
npmnode-releases2.0.38непряма
npmnormalize-package-data5.0.0непряма
npmnormalize-path3.0.0непряма
npmnpm-install-checks6.3.0непряма
npmnpm-normalize-package-bin3.0.1непряма
npmnpm-package-arg10.1.0непряма
npmnpm-pick-manifest8.0.2непряма
npmnpm-run-path4.0.1непряма
npmobject-inspect1.13.4непряма
npmon-finished2.3.0непряма
npmon-finished2.4.1непряма
npmon-headers1.1.0непряма
npmonce1.4.0непряма
npmonetime5.1.2непряма
npmora5.4.1непряма
npmoutdent0.8.0непряма
npmp-limit3.1.0непряма
npmp-locate5.0.0непряма
npmp-map4.0.0непряма
npmpackage-json-from-dist1.0.1непряма
npmpako0.2.9непряма
npmparse-entities4.0.2непряма
npmparse-ms2.1.0непряма
npmparse58.0.1непряма
npmparseurl1.3.3непряма
npmpath-exists4.0.0непряма
npmpath-key3.1.1непряма
npmpath-scurry1.11.1непряма
npmpath-to-regexp0.1.13непряма
npmpathe1.1.2непряма
npmpathe2.0.3непряма
npmpeek-stream1.1.3непряма
npmperiscopic3.1.0непряма
npmpicocolors1.1.1непряма
npmpicomatch2.3.2непряма
npmpidtree0.6.0непряма
npmpkg-types1.3.1непряма
npmpkg-types2.3.1непряма
npmplaywright1.59.1непряма
npmplaywright-core1.59.1непряма
npmpossible-typed-array-names1.1.0непряма
npmpostcss8.5.14непряма
npmpostcss-discard-duplicates5.1.0непряма
npmpostcss-load-config4.0.2непряма
npmpostcss-modules6.0.1непряма
npmpostcss-modules-extract-imports3.1.0непряма
npmpostcss-modules-local-by-default4.2.0непряма
npmpostcss-modules-scope3.2.1непряма
npmpostcss-modules-values4.0.0непряма
npmpostcss-selector-parser7.1.1непряма
npmpostcss-value-parser4.2.0непряма
npmprettier2.8.8непряма
npmpretty-ms7.0.1непряма
npmproc-log3.0.0непряма
npmprocess-nextick-args2.0.1непряма
npmpromise-inflight1.0.1непряма
npmpromise-retry2.0.1непряма
npmproperty-information6.5.0непряма
npmproxy-addr2.0.7непряма
npmpump2.0.1непряма
npmpump3.0.4непряма
npmpumpify1.5.1непряма
npmpunycode2.3.1непряма
npmqs6.14.2непряма
npmqs6.15.1непряма
npmquansync0.2.11непряма
npmrange-parser1.2.1непряма
npmraw-body2.5.3непряма
npmreact-day-picker9.14.0непряма
npmreact-refresh0.14.2непряма
npmreact-remove-scroll2.7.2непряма
npmreact-remove-scroll-bar2.3.8непряма
npmreact-router6.30.3непряма
npmreact-router-dom6.30.3непряма
npmreact-style-singleton2.2.3непряма
npmreadable-stream2.3.8непряма
npmreadable-stream3.6.2непряма
npmreaddirp3.6.0непряма
npmremark-frontmatter4.0.1непряма
npmremark-mdx2.3.0непряма
npmremark-mdx-frontmatter1.1.1непряма
npmremark-parse10.0.2непряма
npmremark-rehype10.1.0непряма
npmrequire-from-string2.0.2непряма
npmrequire-like0.1.2непряма
npmresolve.exports2.0.3непряма
npmrestore-cursor3.1.0непряма
npmretry0.12.0непряма
npmrollup4.60.3непряма
npmsade1.8.1непряма
npmsafe-buffer5.1.2непряма
npmsafe-buffer5.2.1непряма
npmsafe-regex-test1.1.0непряма
npmsafer-buffer2.1.2непряма
npmsaxes6.0.0непряма
npmscheduler0.27.0непряма
npmsemver6.3.1непряма
npmsemver7.7.4непряма
npmsend0.19.2непряма
npmserve-static1.16.3непряма
npmset-cookie-parser2.7.2непряма
npmset-function-length1.2.2непряма
npmsetprototypeof1.2.0непряма
npmshebang-command2.0.0непряма
npmshebang-regex3.0.0непряма
npmside-channel1.1.0непряма
npmside-channel-list1.0.1непряма
npmside-channel-map1.0.1непряма
npmside-channel-weakmap1.0.2непряма
npmsignal-exit3.0.7непряма
npmsignal-exit4.1.0непряма
npmsource-map0.6.1непряма
npmsource-map0.7.6непряма
npmsource-map-js1.2.1непряма
npmsource-map-support0.5.21непряма
npmspace-separated-tokens2.0.2непряма
npmspdx-correct3.2.0непряма
npmspdx-exceptions2.5.0непряма
npmspdx-expression-parse3.0.1непряма
npmspdx-license-ids3.0.23непряма
npmssri10.0.6непряма
npmstatuses2.0.2непряма
npmstream-shift1.0.3непряма
npmstream-slice0.1.2непряма
npmstring-hash1.1.3непряма
npmstring-width4.2.3непряма
npmstring-width5.1.2непряма
npmstring_decoder1.1.1непряма
npmstring_decoder1.3.0непряма
npmstringify-entities4.0.4непряма
npmstrip-ansi6.0.1непряма
npmstrip-ansi7.2.0непряма
npmstrip-bom3.0.0непряма
npmstrip-final-newline2.0.0непряма
npmstyle-to-object0.4.4непряма
npmsupports-color7.2.0непряма
npmsymbol-tree3.2.4непряма
npmtailwindcss4.2.4непряма
npmtapable2.3.3непряма
npmtar6.2.1непряма
npmtar-fs2.1.4непряма
npmtar-stream2.2.0непряма
npmthrough22.0.5непряма
npmtldts7.0.30непряма
npmtldts-core7.0.30непряма
npmto-regex-range5.0.1непряма
npmtoidentifier1.0.1непряма
npmtoml3.0.0непряма
npmtough-cookie6.0.1непряма
npmtr466.0.0непряма
npmtrim-lines3.0.1непряма
npmtrough2.2.0непряма
npmtsconfig-paths4.2.0непряма
npmtslib2.8.1непряма
npmturbo-stream2.4.1непряма
npmtw-animate-css1.4.0непряма
npmtype-is1.6.18непряма
npmtypescript5.9.3непряма
npmufo1.6.4непряма
npmundici6.25.0непряма
npmundici7.25.0непряма
npmundici-types7.19.2непряма
npmunified10.1.2непряма
npmunique-filename3.0.0непряма
npmunique-slug4.0.0непряма
npmunist-util-generated2.0.1непряма
npmunist-util-is5.2.1непряма
npmunist-util-position4.0.4непряма
npmunist-util-position-from-estree1.1.2непряма
npmunist-util-remove-position4.0.2непряма
npmunist-util-stringify-position3.0.3непряма
npmunist-util-visit4.1.2непряма
npmunist-util-visit-parents5.1.3непряма
npmuniversalify2.0.1непряма
npmunpipe1.0.0непряма
npmupdate-browserslist-db1.2.3непряма
npmuse-callback-ref1.3.3непряма
npmuse-sidecar1.1.3непряма
npmuse-sync-external-store1.6.0непряма
npmutil0.12.5непряма
npmutil-deprecate1.0.2непряма
npmutils-merge1.0.1непряма
npmuvu0.5.6непряма
npmvalibot1.4.0непряма
npmvalidate-npm-package-license3.0.4непряма
npmvalidate-npm-package-name5.0.1непряма
npmvary1.1.2непряма
npmvfile5.3.7непряма
npmvfile-message3.1.4непряма
npmvite5.4.21непряма
npmvite-node1.6.1непряма
npmvite-node3.2.4непряма
npmw3c-xmlserializer5.0.0непряма
npmwcwidth1.0.1непряма
npmweb-encoding1.1.5непряма
npmweb-streams-polyfill3.3.3непряма
npmwebidl-conversions8.0.1непряма
npmwhatwg-mimetype5.0.0непряма
npmwhatwg-url16.0.1непряма
npmwhich2.0.2непряма
npmwhich3.0.1непряма
npmwhich-typed-array1.1.20непряма
npmwrap-ansi7.0.0непряма
npmwrap-ansi8.1.0непряма
npmwrappy1.0.2непряма
npmws7.5.10непряма
npmxml-name-validator5.0.0непряма
npmxmlchars2.2.0непряма
npmxtend4.0.2непряма
npmyallist3.1.1непряма
npmyallist4.0.0непряма
npmyaml2.8.4непряма
npmyocto-queue0.1.0непряма
npmzwitch2.0.4непряма
Сповіщення про залежності 28

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

ПакетВерсіяЗв'язокКритичністьСповіщеньВиправлено в
google.golang.org/grpcv1.72.2непрямакритична31.82.1
js-yaml4.1.1прямависока24.3.0
@remix-run/server-runtime2.17.4непрямависока27.15.1
brace-expansion2.1.0непрямависока25.0.8
postcss8.5.14непрямависока18.5.18
react-router6.30.3непрямависока37.18.0
tar6.2.1непрямависока127.5.21
turbo-stream2.4.1непрямависока17.14.0
undici6.25.0непрямависока48.5.0
undici7.25.0непрямависока78.5.0
vite5.4.21непрямависока38.0.16
ws7.5.10непрямависока18.21.0
dompurify3.4.2непрямапомірна93.4.12
esbuild0.17.6непрямапомірна10.25.0
esbuild0.21.5непрямапомірна10.25.0
estree-util-value-to-estree1.3.0непрямапомірна13.3.3
github.com/google/cel-gov0.26.0непрямапомірна10.29.0
golang.org/x/netv0.52.0непрямапомірна91.26.3
morgan1.10.1непрямапомірна11.11.0
qs6.14.2непрямапомірна16.15.2
qs6.15.1непрямапомірна16.15.2
react-router-dom6.30.3непрямапомірна17.13.0
valibot1.4.0непрямапомірна11.4.2
@babel/core7.29.0непряманизька18.0.0-rc.6
body-parser1.20.5непряманизька12.3.0
go.opentelemetry.io/otelv1.43.0непряманевідома11.44.0
golang.org/x/sysv0.43.0непряманевідома10.44.0
golang.org/x/textv0.36.0непряманевідома10.39.0

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

Звіт у форматі JSON машиночитний
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 606525,
      "has_wiki": false,
      "homepage": null,
      "languages": {
        "Go": 695957,
        "CSS": 2441,
        "Shell": 2509,
        "Dockerfile": 2011,
        "JavaScript": 2545,
        "TypeScript": 254039
      },
      "pushed_at": "2026-07-24T13:01:13Z",
      "created_at": "2026-04-16T17:55:07Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-24T13:02:28Z",
      "description": "Offer your services.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "main",
      "license_spdx_raw": null,
      "primary_language": "Go",
      "significant_languages": [
        "Go",
        "TypeScript"
      ]
    },
    "owner": {
      "blog": "https://milo-os.com",
      "name": "Milo OS",
      "type": "Organization",
      "login": "milo-os",
      "company": null,
      "location": "United States of America",
      "followers": 11,
      "avatar_url": "https://avatars.githubusercontent.com/u/278872061?v=4",
      "created_at": "2026-04-24T04:03:06Z",
      "is_verified": null,
      "public_repos": 30,
      "account_age_days": 93
    },
    "license": {
      "state": "absent",
      "spdx_id": null,
      "raw_spdx": null,
      "file_present": false,
      "scorecard_found": false,
      "profile_has_license": false
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.3.1",
          "kind": "patch",
          "published_at": "2026-06-22T16:44:18Z"
        },
        {
          "tag": "v0.3.0",
          "kind": "minor",
          "published_at": "2026-06-05T19:15:06Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2026-06-01T22:45:17Z"
        },
        {
          "tag": "v0.1.0",
          "kind": "minor",
          "published_at": "2026-06-01T19:29:33Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "b9c74bbaa8b0a1f25e1f44ecc2dc3ebd398c339d",
          "body": "…ontract-for-managed-services\n\nfeat(consumer): add non-destructive Suspend/Resume hooks for project suspension",
          "is_bot": false,
          "headline": "Merge pull request #59 from milo-os/55-integrate-once-suspendresume-c…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-24T13:01:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d6e7d1b6dc21cc489f4d6b183f491e19d73904d7",
          "body": "…-managed-services",
          "is_bot": false,
          "headline": "Merge branch 'main' into 55-integrate-once-suspendresume-contract-for…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-24T12:51:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9bce65e6abbc55cb280824284804ceff2752f570",
          "body": "Gate project deletion on provider teardown via a deprovisioning finalizer",
          "is_bot": false,
          "headline": "Merge pull request #58 from milo-os/feat/provider-teardown-finalizer",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-24T08:49:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2de05cdc0c4921602c4602fd1b5e8c8d26ef7b9d",
          "body": "…e hooks with a conformance test harness",
          "is_bot": false,
          "headline": "feat(consumer): implement standardized, non-destructive Suspend/Resum…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-23T18:38:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ea0d514a08ad081cb2e0aca95a0ead52eb330dda",
          "body": "…izer\n\nProvider teardown was best-effort and poll-based: when a project was\ndeleted, nothing held the deletion open until each provider serving it\nconfirmed it had torn down the resources it created on the project's\nbehalf. A hard project deletion could therefore complete while provider\nresources st\n[…]\nothing set no\nfinalizer and are unaffected; providers already implementing the teardown\nhook get the guarantee with no code change.\n\nCloses #57\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Gate project deletion on provider teardown via a deprovisioning final…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-22T22:12:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1719b40dd09fc9aaac6ececfb09346f00b7e93c7",
          "body": "feat: consumer-scoped projection — engage consumer projects only while the service is enabled",
          "is_bot": false,
          "headline": "Merge pull request #38 from milo-os/feat/consumer-multicluster-provider",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-22T20:50:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cc1ede438a84969b46c0cba66136e6e117ac13dc",
          "body": "The /services list page renders its title via the datum-ui <PageTitle>\ncomponent, which emits a <span data-e2e=\"page-title\"> rather than an\nARIA heading. The demo scene asserted getByRole('heading', {name:\n/services/i}), which never matched and timed out, failing the UI Demo\nRecording job. Match the sibling services.spec.ts scene by locating\n[data-e2e=\"page-title\"] instead.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "test(ui): fix full-walkthrough demo locator for /services page title",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-22T15:38:44Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "b75bf24f4774cf314a0d2ae23c1f412db3abbbc0",
          "body": "…ate-a-project-platform-primitive\n\nfeat: propagate project suspension to ServiceConsumers, with an e2e suite to prove it",
          "is_bot": false,
          "headline": "Merge pull request #56 from milo-os/718-reversibly-suspend-and-reinst…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-18T20:06:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93bae72c21e0739db49c9ff2146e56e869960f64",
          "body": "…y-suspend-and-reinstate-a-project-platform-primitive",
          "is_bot": false,
          "headline": "Merge branch 'feat/consumer-multicluster-provider' into 718-reversibl…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-17T19:49:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "440619906876834bcc03479330f72f1ee6da6f91",
          "body": "…rviceConsumer status conditions",
          "is_bot": false,
          "headline": "feat: propagate project suspension state to ServiceEntitlement and Se…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-17T19:22:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cab26bc56cee0086427df0a94e52de22b6d137b3",
          "body": null,
          "is_bot": false,
          "headline": "chore: upgrade go.miloapis.com/milo to v0.31.1",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-17T15:09:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6abb67f58f45d75a2debc168b082893324b3e5bf",
          "body": null,
          "is_bot": false,
          "headline": "feat: follow latest billing tag",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-17T12:03:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6562994915ca6783ee3de859533c8edc2c4e7495",
          "body": "…y-suspend-and-reinstate-a-project-platform-primitive",
          "is_bot": false,
          "headline": "Merge branch 'feat/consumer-multicluster-provider' into 718-reversibl…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-17T00:07:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d1f21719e400e5d3fc08e60694bea7c67f034d5",
          "body": "…tor Taskfile for automated environment setup",
          "is_bot": false,
          "headline": "feat: add e2e test suite for project suspension propagation and refac…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T23:29:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1762dcd77383a010eda20439ce827e6a50c115b2",
          "body": null,
          "is_bot": false,
          "headline": "feat: add e2esingle multicluster provider for e2e tests",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T23:29:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cb7ce46fc126447e6c57ad3ff63dfeabae2266b2",
          "body": null,
          "is_bot": false,
          "headline": "feat: implement project suspension in service entitlement controller",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T23:27:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2366d12757542dc5d0a6e723f05709633be7b2f",
          "body": null,
          "is_bot": false,
          "headline": "feat: implement ProjectSuspensionPropagation controller",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T23:26:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c356e14926b51fcd9dee8b2f36373f42e81eb17",
          "body": "This fields indicates that the ServiceConsumer has been suspended",
          "is_bot": false,
          "headline": "feat: add suspended field",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T23:24:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e9a0970caaa5de16473eedd331565980bbd5961",
          "body": null,
          "is_bot": false,
          "headline": "feat: scope DeleteAllOf for namespaced resources",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-16T16:45:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cccc92221056ec04c14ed6572155ddaa9fd203fc",
          "body": "Needed to get the ProjectSuspensions API",
          "is_bot": false,
          "headline": "chore: bump go.miloapis.com/milo dependency to v0.31.0",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T14:50:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "30a3c3371c923c4e5662b6159845a312b1b39bd4",
          "body": null,
          "is_bot": false,
          "headline": "chore: format code",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-07-16T14:48:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0707b911354eb3f929c4bb5ab6649d73af4e1e30",
          "body": null,
          "is_bot": false,
          "headline": "feat: propagate client scheme to teardown",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-16T11:25:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7e5685db005161032016072f6a3a036e311c396f",
          "body": null,
          "is_bot": false,
          "headline": "feat: read services from a rootClient",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-15T17:00:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e583dd04d2ccb2efb9c41ad5e8bb5e0d190ef236",
          "body": null,
          "is_bot": false,
          "headline": "feat: implement ProviderRunnable on consumer provider",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-15T14:57:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6fef50acf28d7c66122c3db16cf67b9e320ae7cd",
          "body": null,
          "is_bot": false,
          "headline": "dep: bump go version in container",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T15:09:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6119d5879347e01ab895bd4f5bdff2e8e23056ab",
          "body": null,
          "is_bot": false,
          "headline": "dep: bump billing",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T15:04:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a4773b41029f0a1ee6a472218cc5df23b7eb7eda",
          "body": null,
          "is_bot": false,
          "headline": "ci: track go.mod version",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T15:03:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dbf2bfb221f57570b72c174403721c515d31bcab",
          "body": null,
          "is_bot": false,
          "headline": "ci: bump golangci lint version",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T11:15:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fae0547b2f7f21bc0e85c7517725a52a6c8d98d5",
          "body": null,
          "is_bot": false,
          "headline": "ci: bump go version in actions",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T11:09:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d2b6e956938c04eeefde49c701eca4193370a05",
          "body": "Updates milo to latest version. This also pulls in multicluster-runtime\nv0.23.3, aligning with compute.",
          "is_bot": false,
          "headline": "deps: bump milo to v0.30.3 (multicluster-runtime to v0.23.3)",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T11:01:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef200bfa54afc09a0cfae9b60bd6dc4e56ca3361",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into feat/consumer-multicluster-provider",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T09:23:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "209f418ecf458d046090b3f01a4eb3830c24f7b3",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into feat/consumer-multicluster-provider",
          "author_name": "Alex Savanovich",
          "author_login": "savme",
          "committed_at": "2026-07-14T09:10:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a3cddd298b0f62109333bf6c1caa8168269ff0c",
          "body": null,
          "is_bot": false,
          "headline": "Merge pull request #52 from milo-os/feat/pkg-cmd-services",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-14T00:52:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a002414738b73bffa75313facd31d2fa4180f40f",
          "body": "ServicesCommandOptions.Project was a static string captured when the host\nCLI built the command tree, before cobra parsed any flags. A --project flag\non the actual invocation was therefore ignored. Make it a func() (string,\nerror) resolver called at RunE time, mirroring CatalogRESTConfig/\nProjectRESTConfig, so live scope (including a parsed --project) is reflected.",
          "is_bot": false,
          "headline": "fix(cmd): resolve Project lazily so a host --project flag takes effect",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-14T00:01:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e594afc9fae945c683c182863db3c4b53049d8d6",
          "body": "docs: product enhancement doc for the services CLI",
          "is_bot": false,
          "headline": "Merge pull request #54 from milo-os/feat/enablement-cli-docs-standalone",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T23:40:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "29666be67d415cbd628634d2aa24bcf30eaf49f5",
          "body": "Add pkg/activation: a shared SDK for service enablement",
          "is_bot": false,
          "headline": "Merge pull request #51 from milo-os/feat/pkg-activation",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T23:40:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5bbf63519b48e20bc689a43dd3c96e2e776fa9d0",
          "body": "Uses the datum-cloud/enhancements KEP-style template. Explains why a\nconsistent, correct enablement experience is a platform-level gap\ntoday (every consumer-facing surface re-derives what an entitlement's\nstate means on its own), what the proposed services command group and\nauto-enrollment check look like for a consumer, and how they fit\nalongside the ServiceEntitlement/Service APIs and service-catalog#51/#52.",
          "is_bot": false,
          "headline": "docs(enhancements): add enhancement doc for the services CLI experience",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T23:34:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e30920134e00291514661a96b5d7c9ab4e5e6b87",
          "body": "Adds NewServicesCommand (list/enable/status subcommands) so a host CLI\ncan offer datumctl services list/enable/status instead of every plugin\nhand-rolling its own access command. Mirrors activity/pkg/cmd's\nOptions-struct + New*Command constructor conventions, but takes two\nlazy *rest.Config resolver\n[…]\nt the project's entitlements via activation.JoinCatalog; enable\nand status resolve a <name> argument against the catalog (canonical\nname, then object name) before driving activation.Requester/Observe.",
          "is_bot": false,
          "headline": "feat(cmd): add pkg/cmd, the services CLI command group",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T23:23:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "08b2d8d991c2b93e50e6176d69673bf9d60991c3",
          "body": "…fields\n\nConfig duplicated three of ServiceInfo's four identity fields and was the\nonly way to build one, while ServiceInfo.Description and .EnablementMode\nwere populated but read nowhere and Config.SupportURL could never be set —\nits two guarded message branches were permanently dead.\n\nDelete Confi\n[…]\nor: the not-requested gate prompt\nnow promises provider approval only for a GatedByProvider service and\nimmediate enablement otherwise, and the status view prints the service\ndescription when present.",
          "is_bot": false,
          "headline": "refactor(activation): fold Config into ServiceInfo and wire its dead …",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T23:21:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "28462859fb5d77fc89c713aab3cc78bfbd2036fe",
          "body": "golangci-lint's errcheck flags unchecked writes to IOStreams.Err (a\nbest-effort progress/status stream where a write failure has nothing\nuseful to recover into); explicitly discard those returns. Also point\nthe join end-to-end test at newCatalogFake instead of hand-building the\ncatalog client, so the helper isn't reported unused.",
          "is_bot": false,
          "headline": "fix(activation): satisfy errcheck and use the newCatalogFake helper",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T20:46:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7758dc96544d0c1053878ea1bfb0155dab0c3919",
          "body": "…ment\n\nCLI tools that let a consumer request and check access to a Datum service\n(datumctl compute access today, more to follow) each hand-rolled their own\ncopy of the ServiceEntitlement state machine, drifting out of sync with\nwhat the API actually does. Two real bugs shipped that way: preferring t\n[…]\nll be closed once\nthis lands, and is a prerequisite for datum-cloud/compute#113. A follow-up\nPR in this repo will add the `datumctl services` CLI commands (list/enable/\nstatus) on top of this package.",
          "is_bot": false,
          "headline": "feat(activation): add pkg/activation, a shared SDK for service enable…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-13T20:27:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1b5d53f6bad05fc435fe0a0060ca884fd28ce40e",
          "body": "feat(client): generated typed clientset for services.miloapis.com/v1alpha1",
          "is_bot": false,
          "headline": "Merge pull request #50 from milo-os/feat/generated-clientset",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-10T17:33:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef9a1b2c5b200513ffc04afa13009390c87a9f1c",
          "body": "…alpha1\n\nConsumers of the services API (CLIs, SDKs) hand-roll a controller-runtime\nclient and register the scheme themselves. Add a generated typed clientset —\nand its fake for tests — so they get services.miloapis.com/v1alpha1 access\nwith no client or scheme boilerplate. The datumctl compute activa\n[…]\nceEntitlement Ready condition type and reason constants\n  from api/v1alpha1 so clients branch on named constants instead of\n  string-matching the controller output; the controller now references them.",
          "is_bot": false,
          "headline": "feat(client): generate a typed clientset for services.miloapis.com/v1…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-07-10T00:21:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cb37826229981f358636caa9811dcb0f6af4b3b2",
          "body": "…-matching\n\nfix: activate the customer's entitlement when a gated service request is approved",
          "is_bot": false,
          "headline": "Merge pull request #43 from milo-os/fix/issue-42-consumer-entitlement…",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-15T21:29:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bf139bb8a70293406529bc6dcf8e0cab3137022",
          "body": "docs: remove implemented downstream-push-architecture enhancement doc",
          "is_bot": false,
          "headline": "Merge pull request #34 from milo-os/docs/remove-downstream-push",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-15T15:21:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76c5d9f8416e45bd17eace495baedfeb6b3f3ad7",
          "body": "Only engage consumer projects that have actually enabled the service",
          "is_bot": false,
          "headline": "Merge pull request #31 from milo-os/docs/consumer-multicluster-provider",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-15T15:13:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e945f83ee4bc27ad4bd90973c98f1a7ce4b166e",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into fix/issue-42-consumer-entitlement-matching",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-15T14:32:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df0eed72e7923c0c0fb106c29179dbc8a0e25a5d",
          "body": "…ounded pending latency\n\nTwo hardening changes to the ServiceEntitlement reconciler:\n\nThe CreateOrUpdate mutate fn unconditionally assigned spec.serviceRef\nand spec.consumerProjectRef on every reconcile, but the ServiceConsumer\nwebhook makes both fields immutable after creation for everyone,\nincludi\n[…]\ns dedup scan (full list plus loop on\nstatus.serviceName) to the same indexed lookup so all entitlement\nmatching goes through the field selector.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(controller): harden entitlement reconcile against wedging and unb…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-11T14:21:27Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9357c3a09c10737128b2342b98d24c31746fb373",
          "body": "…ace relay failures\n\nSince ec1f0e5 (PR #37) the entitlement reconciler mirrors the caller's\nverbatim serviceRef (e.g. \"compute\") into the ServiceConsumer spec and\nstamps the canonical service name (e.g. \"compute.miloapis.com\") on\nstatus.serviceName of both the entitlement and the consumer. The\nServi\n[…]\nse, and a no-match case\nasserting the error. The fake-client builder registers the new index so\nfield-selector lists work under test.\n\nFixes #42\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(controller): match entitlement by canonical service name and surf…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-11T14:21:26Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8ec617970221ea7fd96fe0615712393dc6f81809",
          "body": null,
          "is_bot": false,
          "headline": "Merge pull request #41 from milo-os/feat/quota-limit-display-metadata",
          "author_name": "Yahya Fakhroji",
          "author_login": "yahyafakhroji",
          "committed_at": "2026-06-11T09:59:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ded8902ce5a7cce65ac7d89b9c070304204c62ef",
          "body": "…ration\n\nAdd DisplayName/Description to QuotaLimitSpec and stamp them as\nkubernetes.io/display-name and kubernetes.io/description annotations on the\nResourceRegistration objects produced by the quota fan-out. Portals and\ndashboards (e.g. cloud-portal Quotas) can then render human-readable names\nand \n[…]\n-out sets the annotations when present, omitting\n  them entirely when unset.\n- crd: regenerated schema for the new fields.\n- test: assert annotations propagate and are absent without display metadata.",
          "is_bot": false,
          "headline": "feat(quota): propagate quota limit display metadata to ResourceRegist…",
          "author_name": "Yahya Fakhroji",
          "author_login": "yahyafakhroji",
          "committed_at": "2026-06-11T01:12:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "079499e834543e081f5e26a5c9f3137cec2c6fad",
          "body": "feat(quota): materialize org-scoped default grants from ServiceConfiguration",
          "is_bot": false,
          "headline": "Merge pull request #40 from milo-os/feat/org-scoped-default-grants",
          "author_name": "Matt Jenkinson",
          "author_login": "mattdjenkinson",
          "committed_at": "2026-06-10T12:31:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5742a2ce35e0e5766400805df05c7f68cf6c8e60",
          "body": "…gurations\n\nThe reconciler previously skipped every non-Published configuration in\nthe desired-set walk, which sent its grants into the prune sweep at the\nend of Reconcile. That over-prunes Deprecated configurations: the\ntype-level contract says \"existing references continue to work\" but\nthe impleme\n[…]\n the\n  quota disappearing is consistent; Retired is terminal.\n\nTwo new tests cover the Deprecated paths (preserves existing,\nsuppresses new issuance).\n\nAddresses review feedback from @savme on PR #40.",
          "is_bot": false,
          "headline": "fix(controller): preserve existing grants for Deprecated ServiceConfi…",
          "author_name": "Matt Jenkinson",
          "author_login": "mattdjenkinson",
          "committed_at": "2026-06-09T13:57:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ebc234ac1c47685466f6ff46fb883712aea01ed9",
          "body": "…uration\n\nAdd OrganizationDefaultsReconciler. ServiceConfiguration's\ndefaultLimit field has always declared the per-consumer floor for a\nquota metric, but the existing fan-out only emits ResourceGrants for\nlimits whose ConsumerType.Kind is Project — Organization-typed limits\nwere silently skipped. T\n[…]\n\nThe existing multi-billing-accounts-feature-grant policy keeps\nemitting an override grant of 99 in milo-system, so opted-in orgs\ncontinue to receive an effective cap of 100 (1 default + 99 override).",
          "is_bot": false,
          "headline": "feat(quota): materialize org-scoped default grants from ServiceConfig…",
          "author_name": "Matt Jenkinson",
          "author_login": "mattdjenkinson",
          "committed_at": "2026-06-08T10:39:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8e759a28b6e787720edd2dc201b81d06a280cbfe",
          "body": "feat(billing): support per-metric dimensions in ServiceConfiguration",
          "is_bot": false,
          "headline": "Merge pull request #39 from milo-os/feat/metric-dimensions",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-06-05T19:14:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0516a9cdd57b0f811c05bafd967d6b568b031893",
          "body": "Add a `dimensions` field to ServiceConfiguration's MetricSpec and fan it\nout to MeterDefinition.spec.measurement.dimensions. The billing central\nvalidator quarantines usage events whose data.dimensions keys aren't\ndeclared on the meter, so producers cannot attach a dimension (e.g.\n`model` for per-mo\n[…]\nptional, MaxItems=32, atomic list)\n- billing_fanout copies metric.Dimensions into Measurement.Dimensions\n- regenerated deepcopy + CRD manifests\n- unit tests for pass-through and the no-dimensions case",
          "is_bot": false,
          "headline": "feat(billing): support per-metric dimensions in ServiceConfiguration",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-06-05T19:07:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6a9e0286de24016e7d564a07547013af4f32e494",
          "body": "…rator config\n\nWire the catalog to the consumer provider behind an opt-in\nconsumerScopedProjection config block (nil = off = today's all-projects\nbehavior, byte-for-byte). When enabled, LocationBindingReconciler runs on the\nconsumer-scoped manager and the provider engages consumer projects by active\n[…]\ncluster;\n  exercising the path needs a multicluster harness)\n- Dockerfile copies pkg/ so the binary build resolves the new package\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(integration): gate consumer-scoped projection behind ServicesOpe…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T20:46:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "61714465ae42c852700d4220888ed0dcd9715cab",
          "body": "…rovider\n\nAdd a reusable provider at pkg/multicluster-runtime/consumer that engages a\nconsumer project's control plane only while it has at least one active\nServiceConsumer for one of the operator's services, and disengages — tearing\ndown the resources projected there — when the last one goes away.\n\n[…]\n engaged-cluster + teardown-failure Prometheus metrics; package docs\n\nOperator-agnostic; the service catalog is the first adopter.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(consumer): add consumer-scoped multicluster-runtime projection p…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T20:46:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "35b35de461510a8b162bdf45f96a36875754dc18",
          "body": "…t finalize\n\nThe shared, hash-named ServiceConsumer (keyed on service + consumer\nproject) can be referenced by multiple ServiceEntitlements — e.g. a direct\nentitlement and a dependency entitlement for the same service.\nreconcileDelete previously deleted it unconditionally on any entitlement\nfinalize\n[…]\nlist the consumer project's entitlements, skip those being\ndeleted, and delete the consumer only when none remain for the service.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(controller): reference-count ServiceConsumer delete on entitlemen…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T20:46:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2b41463939816f4f986ce9dd6e7e9acc4322d628",
          "body": "Propose a reusable library that engages a consumer project's control plane\nonly while it has an active consumer for the operator's service, and cleans\nup the operator's projected resources when the last consumer goes away.\nCovers the engagement/cleanup model, the operator-declared managed-resource\nc\n[…]\ntion.\n\nIncludes C4-PlantUML diagrams (engagement/cleanup + two-manager topology)\nrendered with the datum-cloud enhancements theme.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: add consumer multi-cluster runtime provider enhancement",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T03:35:51Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "dc7551cf8fc0d8d5d7141a38b3e7208f4f949983",
          "body": "…ignment\n\nService enablement: surface the canonical service name and keep enablement from getting stuck",
          "is_bot": false,
          "headline": "Merge pull request #37 from milo-os/fix/serviceconsumer-serviceref-al…",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T02:10:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bd2ecfe1733eb42bbecb2b259c4534e143cc213",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into fix/serviceconsumer-serviceref-alignment",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T00:45:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec1f0e5c701a03090dcd24bad117a1fa89274367",
          "body": "… on status.serviceName\n\nThe reconciler wrote the resolved canonical serviceName into the immutable\nServiceConsumer.spec.serviceRef. This diverged from the convention\nServiceEntitlement already uses — spec holds the caller's ref; status.serviceName\nholds the resolved canonical — and wedged reconcili\n[…]\ncarrying the canonical value in spec.serviceRef must be\ndeleted and recreated to migrate (serviceRef is immutable).\n\nRefs #33, #36\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(serviceconsumer): mirror entitlement serviceRef; expose canonical…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-04T00:38:25Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "310ca9d96108a32a3704c85ebb458e70d375fbeb",
          "body": "Private beta service enablement — access requests, approvals, and quota provisioning",
          "is_bot": false,
          "headline": "Merge pull request #33 from milo-os/feat/private-beta-backend",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-03T22:40:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef3a87b02e37f9d315aaecb5626c8294b1410258",
          "body": "The downstream push (services operator applying billing MeterDefinition /\nMonitoredResourceType) is implemented, so the point-in-time design/plan doc\nno longer earns its keep. Remove it and clean up the five inbound links in\nservice-enablement-architecture.md and service-enablement.md, inlining a\none-line description of the push pattern where the prose relied on it.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: remove downstream-push-architecture enhancement doc",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-03T20:43:36Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "f03704c313841e59010f505ab8560c460f9dce55",
          "body": "…consumer webhook/RBAC\n\nBackend half of the private-beta service-enablement work, split out of the\nUI PR (#17) into its own change off main. Everything that is not the React UI.\n\nQuota provisioning\n- Provision one per-project ResourceGrant per published quota limit when a\n  ServiceEntitlement become\n[…]\n\n  objects are not orphaned; drop the legacy value next release.\n\n- Multicluster provider plumbing; e2e overlay and seed-dev data.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat: entitlement quota provisioning, canonical-name resolution, and …",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-03T20:29:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7b71613245e1e7a3155382a15eaf0d32aad2d0a8",
          "body": "Automatically show consumers which locations are available when they enable a service",
          "is_bot": false,
          "headline": "Merge pull request #29 from milo-os/feat/location-binding-reconciler",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-06-01T22:44:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "62e91f870110c3a9f142bdf5c024473af86962c9",
          "body": "The Milo multicluster provider runs a \"projectcontrolplane\" controller\nthat watches resourcemanager.miloapis.com/Project to discover project\ncontrol planes. In e2e that CRD is absent and the controller-manager\nServiceAccount also lacks list/watch on projects, so the informer never\nsyncs. After the ~\n[…]\n.\") — the human-friendly\nmessage refactor changed the text but not the test; the crash-loop had\nbeen masking this stale assertion.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(e2e): stop manager crash-loop by granting Project RBAC + CRD",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-01T21:58:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1f9ba10b90d105758fbd6d82e2c58af6b421b897",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into feat/location-binding-reconciler",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-01T21:15:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "835b3f10e55c746e92a21aacbe2f5ff76a53b746",
          "body": "Add product overview for the service catalog",
          "is_bot": false,
          "headline": "Merge pull request #19 from milo-os/docs/service-catalog-overview",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-06-01T19:17:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c1eb006865d411da7b48835709a761adbbc7220d",
          "body": "Let service operators declare where their service is deployed and ready",
          "is_bot": false,
          "headline": "Merge pull request #25 from milo-os/feat/service-availability",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-06-01T19:16:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e45533d96ea0efbfba2a651c36c3eead2528db99",
          "body": "…econciler",
          "is_bot": false,
          "headline": "Merge branch 'feat/service-availability' into feat/location-binding-r…",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-06-01T19:15:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9d1fd78f1ffceee665ad1e62a04059bca92c5555",
          "body": "…lity\n\n# Conflicts:\n#\tconfig/base/webhook/kustomization.yaml",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into feat/service-availabi…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-01T18:18:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0926e863cf67bb3eebd1d78fec338db0c06afd7b",
          "body": "…ents\n\nfix: restore ServiceEntitlement & ServiceConsumer admission on the control plane",
          "is_bot": false,
          "headline": "Merge pull request #30 from milo-os/fix/webhook-clientconfig-replacem…",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-06-01T18:13:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1d07636d63734764639d450aa9d20bf8f2a1753a",
          "body": "The dev overlay redirects webhooks to host.docker.internal:9443 for a\ncontroller running on the host, but the move/remove ops only touched\n`/webhooks/0`, so only the `service` resource's webhooks worked locally;\ncreating a ServiceEntitlement/ServiceConsumer/etc. hit a dead in-cluster\nService. Conver\n[…]\nrge\npatches (service: null drops the mutually-exclusive service block), so\nlocal dev covers every webhook and survives reordering.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(webhook): key dev URL rewrite by webhook name, not index",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-29T18:47:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "58cca211e96d5374d1452ae8b7fa52e88f9b1d16",
          "body": "The validating/mutating webhook clientConfig service name and namespace\nwere rewritten from controller-gen's `webhook-service`/`system`\nplaceholders to `services-webhook`/`services-system` with index-based\nJSON6902 patches (`/webhooks/N/...`). The index list drifted out of sync\nwhen webhooks were ad\n[…]\nbhook clientConfig.\n\nRemoves the now-redundant kustomizeconfig.yaml nameReference (no Service\nexists in this bundle to anchor it).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(webhook): rewrite clientConfig via wildcard replacements",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-29T18:47:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b15da03e4a93675bb62de18e4e2edc2ccbfb9e90",
          "body": "Rewrite the user-facing detail of every validation/admission message in\ninternal/validation and the ServiceConsumer webhook so callers running\nkubectl/datumctl apply get plain, actionable explanations instead of\ninternal jargon (DNS-1123, \"is immutable\", \"fan out\", spec field-path\nreferences, raw SA\n[…]\nused reasonConsumerPending constant (dead code).\nUpdates the two dependency-cycle test assertions to match the new\n\"loop\" wording.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "refactor: make admission/validation messages human-friendly",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-29T03:06:37Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "809b6c6e4d919bf9c834359459087c8ad09c638d",
          "body": "Rewrite every status condition Message across the service-catalog\nreconcilers (Service, ServiceConfiguration, ServiceAvailability,\nServiceEntitlement, ServiceConsumer, LocationBinding) to use plain,\nproduct-focused language for service providers and consumers reading\nthem via kubectl/datumctl descri\n[…]\n names) and raw Go errors from messages; Reason tokens are\nunchanged so automation stays stable. Raw errors remain in logs/events.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "refactor: make status condition messages human-friendly",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-29T02:53:10Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5c68c017eb49812d7f200155b84594ad2c02d1f8",
          "body": "…nding\n\nThe LocationBindingReconciler projected bindings without spec.topology, so\ndownstream consumers (compute's workload webhook) computed zero valid city\ncodes and rejected every location-scoped deploy. The reconciler already\nfetches the referenced Location for the readiness gate, so copy its\nsp\n[…]\nys are not in the\nnetworking.datumapis.com LocationBinding schema and were silently stripped;\nthe canonical home is spec.topology.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(locationbinding): mirror Location spec.topology onto projected bi…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-29T02:28:17Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "86b2bd16e7e7585fdf31654afea3a1b1b05fec75",
          "body": "The staging project `owner` role inherits\n`services.miloapis.com-entitlement-admin` (infra commit 2582cbf), but\nthat role was never defined — service-catalog only shipped\n`-entitlement-viewer`. Milo's Role controller treats an unresolved\ninherited role as an all-or-nothing failure: the owner role's \n[…]\n+ serviceconsumers) and adds\nserviceentitlements.{create,update,patch,delete} so project owners can\nadminister their entitlements.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(iam): add services.miloapis.com-entitlement-admin role",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-29T01:56:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ebd3dbe2de739e3550b919d989648db9e4aacd95",
          "body": "The ServiceConsumer validating webhook decided whether a caller could\nwrite the full spec (vs. spec.approval only) by string-matching the\nusername in IsServicesControllerCaller (system:serviceaccount: prefix or\na \"services-controller\" substring). The controller actually authenticates\nas system:contr\n[…]\n permission on the serviceconsumer\n  ProtectedResource (registers the OpenFGA relation) and grant it in the\n  services admin role.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: authorize ServiceConsumer writes by permission, not username",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T22:52:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d321dbac54f25c32143552b16429959a7da14b12",
          "body": "The Milo multicluster provider created each engaged project cluster\nwithout a scheme, so its cache fell back to the client-go global scheme,\nwhich lacks the services.miloapis.com/v1alpha1 types. Every\nServiceEntitlement, ServiceConsumer, and LocationBinding watch then\nfailed in a tight retry loop wi\n[…]\nd engaged a\nproject.\n\nPass the operator scheme through Options.ClusterOptions so the\nper-project cluster caches can map our types.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: register app scheme on engaged project clusters",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T22:23:00Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "652f149ff2532e2837ef01f0957690e2e8609b97",
          "body": "Location is now cluster-scoped in the platform\n(datum-cloud/network-services-operator#171), so the namespace field on\nLocationRef no longer carries meaning. Remove it from the API type,\nregenerate the ServiceAvailability CRD/deepcopy, fetch Locations by name\nonly in the ServiceAvailability and LocationBinding reconcilers, and drop\nthe field from samples and test fixtures.\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: drop Namespace from LocationRef (Location is cluster-scoped)",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:38:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "9c61b6fe7bb37b84452281c6392d10a7a82ba249",
          "body": "Project VCPs are themselves the isolation boundary, so namespaces add\nno value. Write LocationBinding as cluster-scoped (matching\nServiceEntitlement and ServiceConsumer): drop the projectBindingNamespace\n\"default\" workaround, stop setting a namespace on projected objects, and\nremove the namespace from List/Get calls. The e2e CRD switches to\nscope: Cluster.\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: make LocationBinding cluster-scoped within project VCPs",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:38:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "0d6cdae03f70b53b04754b130f97cd12d9045200",
          "body": "… topology map\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: revert incorrect field-path changes; NSO Location uses v1alpha +…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:38:03Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "4f553921455755b192d2010cdfb367866a47256b",
          "body": "Cross-PR review against the milo networking types (milo-os/milo#625):\n\n- The Location and LocationBinding GVKs used apiVersion v1alpha; the milo\n  types define v1alpha1. Fix both (Location GVK is shared with the\n  ServiceAvailability reconciler) and the e2e LocationBinding CRD.\n- extractLocationFiel\n[…]\npec.topology map with\n  topology.datum.net/* keys; the Location type exposes spec.city and\n  spec.region as direct fields. Read those directly.\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: correct networking GVK version and Location city/region paths",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:38:03Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "34263ca8143d180d552ce76fdea87c15f7faf587",
          "body": "Project platform Locations into entitled projects as consumer-facing\nLocationBinding objects, combining the three location gates:\n\n  gate 1: Location class in active ServiceConfiguration supportedClasses\n  gate 2: Location.status.conditions[Ready]=True\n  gate 3: ServiceAvailability.status.conditions\n[…]\n is not Available get no binding, and\norphaned bindings are pruned. Adds RBAC, main.go wiring, and a hand-authored\nLocationBinding CRD for e2e.\n\nCo-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat: add LocationBindingReconciler (locations Phase 1)",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:38:03Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9e33a72a3701da5782cd45d758db946385377ec0",
          "body": "…bility\n\nAdding vserviceavailability.kb.io inserted a new webhook alphabetically\nbetween vservice and vserviceconfiguration, shifting vserviceconfiguration\nfrom index 1 to index 2. The existing patches only covered indices 0-1, so\nvserviceconfiguration (and all subsequent webhooks) retained the controller-gen\nplaceholder service name/namespace and broke e2e tests.\n\nExtend the ValidatingWebhookConfiguration patch to cover all 5 indices.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: patch all validating webhook indices after adding vserviceavaila…",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:37:58Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "b87153b41e579ef300a171e4fce780fa447f1a61",
          "body": "Introduces the ServiceAvailability resource type, enabling service providers\nto express per-location availability as a first-class platform primitive.\n\n- ServiceAvailability (cluster-scoped) with spec.serviceRef + spec.locationRef\n- Three-gate reconciler: Service published → Location exists → Locati\n[…]\nocation filtering\n- IAM roles, discovery policy, and ProtectedResource config\n- Design doc: docs/enhancements/locations-platform-primitive.md\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat: add ServiceAvailability CRD and controller",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:37:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7f34a94d440d4eb2e5b79c32b601886a4b505d2b",
          "body": "Explains that Services and ServiceConfigurations are global platform\nresources owned by producer projects, while ServiceEntitlements are\nscoped to consumer projects and ServiceConsumers appear in the\nprovider's project.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: add Projects and Ownership section to overview",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:25:02Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "659d7b9b8410effb255115d71d3dcbf60bede57b",
          "body": "Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: use descriptive link text instead of file paths",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:25:02Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "b3a88ed42acddf6efd1aac8a407b61a33b7bb9e5",
          "body": "The previous README tried to be both a product overview and an\nengineering reference. Now that docs/overview.md covers the product\ncontext, the README can focus on orientation: what this repo is, where\nto read more, and how to run it.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: slim README down to a thin landing page",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:25:02Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d6097a526069a58b89dc12a173631787d63fea5c",
          "body": "Adds docs/overview.md explaining what the service catalog is, how it\nfits into the Milo platform, the core resources and their relationships,\nthe service lifecycle, and example flows for providers and consumers\n(including a private beta gated-access walkthrough).\n\nLinks the new doc from README.md under Further reading.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: add product overview for the service catalog",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-28T16:25:02Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "f8aeca1538798f055083849506ff9dd28a69a272",
          "body": "feat: skip service configuration prefix validation during dry-run",
          "is_bot": false,
          "headline": "Merge pull request #28 from milo-os/fix/failing-dry-run-validation",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-05-27T22:11:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42017e966557c4fd36412b818bc23c2d073cf7bc",
          "body": "…uests\n\nDry-run request should not depend on the cluster state",
          "is_bot": false,
          "headline": "feat: skip service configuration prefix validation during dry-run req…",
          "author_name": "Jose Szychowski",
          "author_login": "JoseSzycho",
          "committed_at": "2026-05-27T21:36:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "712fcec79443cf5e93e656f6e9f84b81dcc6a31b",
          "body": "fix(ci): publish container as service-catalog to match kustomize bundle",
          "is_bot": false,
          "headline": "Merge pull request #26 from milo-os/fix/publish-image-name-rename",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-05-27T17:41:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80b8945b5aabc0dfd823fc15cd0c029e4e134c16",
          "body": "The repo rename in 48fc8a3 updated the kustomize bundle reference and\nmanager image path, but missed the image-name input on the docker\npublish job — so the container kept publishing as\nghcr.io/milo-os/services:<tag> while the kustomize bundle was patched\nto reference ghcr.io/milo-os/service-catalog\n[…]\n, an image that was\nnever produced.\n\nResult: any cluster pulling the renamed bundle hits ImagePullBackOff\non the controller pod. Align the publish job's image-name so both\nartifacts use the same name.",
          "is_bot": false,
          "headline": "fix(ci): publish container as service-catalog to match kustomize bundle",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-05-27T17:31:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "866abf86189163c8adb90e0c8dd19aba76087162",
          "body": "feat(iam): add entitlement-viewer and approver roles",
          "is_bot": false,
          "headline": "Merge pull request #22 from milo-os/feat/staff-iam-roles",
          "author_name": "Kevin",
          "author_login": "kevwilliams",
          "committed_at": "2026-05-27T14:40:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b8c2715f60be3ca0339abc421c19b554cd24e486",
          "body": "…eref",
          "is_bot": false,
          "headline": "Merge pull request #23 from milo-os/fix/claim-creation-policy-resourc…",
          "author_name": "Scot Schuchert-Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-27T13:28:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "308ad8c7d5f502f9580d3ebb008ac594eddb30b4",
          "body": "Now that milo-os/milo#623 makes ResourceClaimSpec.ResourceRef a pointer,\nencoding/json correctly omits the field when nil. Switch the\napplyClaimCreationPolicies implementation back to the typed\n*quotav1alpha1.ClaimCreationPolicy and remove the unstructured workaround.\n\nKey changes:\n- Replace *unstru\n[…]\nnch commit)\n- Rewrite unit test to assert on typed fields rather than raw map keys\n\nThe regression test still verifies that ResourceRef is nil on the\npatched object, preserving the original invariant.",
          "is_bot": false,
          "headline": "refactor: use typed ClaimCreationPolicy instead of unstructured",
          "author_name": "Scot Wells",
          "author_login": "scotwells",
          "committed_at": "2026-05-27T02:40:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 4,
      "commits_last_year": 152,
      "latest_release_at": "2026-06-22T16:44:18Z",
      "latest_release_tag": "v0.3.1",
      "releases_from_tags": false,
      "days_since_last_push": 2,
      "active_weeks_last_year": 12,
      "days_since_latest_release": 33,
      "mean_days_between_releases": 7
    },
    "community": {
      "has_readme": true,
      "has_license": false,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 25,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "go.miloapis.com/service-catalog",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": null,
          "registry_url": "https://pkg.go.dev/go.miloapis.com/service-catalog",
          "is_deprecated": false,
          "latest_version": "v0.3.1",
          "repository_url": null,
          "versions_count": 4,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-15T21:29:12Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 40
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 0,
      "watchers": 0,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_stars": 0,
        "collected_at": null
      },
      "open_issues_and_prs": 19
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "samples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "Taskfile.yaml",
        "ui/Taskfile.yaml"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "ui/tsconfig.json"
      ],
      "toolchain_manifests": [
        "go.mod"
      ],
      "largest_source_bytes": 60415,
      "source_files_sampled": 137,
      "oversized_source_files": 1,
      "agent_instruction_files": [
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 2859
    },
    "dependencies": {
      "manifests": [
        "go.mod",
        "ui/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "google.golang.org/grpc",
            "direct": false,
            "version": "v1.72.2",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 9.1,
            "advisory_ids": [
              "GHSA-hrxh-6v49-42gf",
              "GHSA-p77j-4mvh-x3m3",
              "GO-2026-4762"
            ],
            "fixed_version": "1.82.1",
            "advisory_count": 3,
            "oldest_advisory_days": 129
          },
          {
            "name": "js-yaml",
            "direct": true,
            "version": "4.1.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 2,
            "oldest_advisory_days": 40
          },
          {
            "name": "@remix-run/server-runtime",
            "direct": false,
            "version": "2.17.4",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-84g9-w2xq-vcv6",
              "GHSA-8x6r-g9mw-2r78"
            ],
            "fixed_version": "7.15.1",
            "advisory_count": 2,
            "oldest_advisory_days": 52
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-mh99-v99m-4gvg"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 2,
            "oldest_advisory_days": 5
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.14",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-r28c-9q8g-f849"
            ],
            "fixed_version": "8.5.18",
            "advisory_count": 1,
            "oldest_advisory_days": 1
          },
          {
            "name": "react-router",
            "direct": false,
            "version": "6.30.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-2j2x-hqr9-3h42",
              "GHSA-337j-9hxr-rhxg",
              "GHSA-wrjc-x8rr-h8h6"
            ],
            "fixed_version": "7.18.0",
            "advisory_count": 3,
            "oldest_advisory_days": 52
          },
          {
            "name": "tar",
            "direct": false,
            "version": "6.2.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.8,
            "advisory_ids": [
              "GHSA-23hp-3jrh-7fpw",
              "GHSA-34x7-hfp2-rc4v",
              "GHSA-83g3-92jg-28cx",
              "GHSA-8qq5-rm4j-mr97",
              "GHSA-8x88-c5mf-7j5w",
              "GHSA-9ppj-qmqm-q256",
              "GHSA-gvwx-54wh-qm9j",
              "GHSA-qffp-2rhf-9h96",
              "GHSA-r292-9mhp-454m",
              "GHSA-r6q2-hw4h-h46w"
            ],
            "fixed_version": "7.5.21",
            "advisory_count": 12,
            "oldest_advisory_days": 190
          },
          {
            "name": "turbo-stream",
            "direct": false,
            "version": "2.4.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-rxv8-25v2-qmq8"
            ],
            "fixed_version": "7.14.0",
            "advisory_count": 1,
            "oldest_advisory_days": 51
          },
          {
            "name": "undici",
            "direct": false,
            "version": "6.25.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-35p6-xmwp-9g52",
              "GHSA-g8m3-5g58-fq7m",
              "GHSA-p88m-4jfj-68fv",
              "GHSA-vxpw-j846-p89q"
            ],
            "fixed_version": "8.5.0",
            "advisory_count": 4,
            "oldest_advisory_days": 37
          },
          {
            "name": "undici",
            "direct": false,
            "version": "7.25.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-35p6-xmwp-9g52",
              "GHSA-g8m3-5g58-fq7m",
              "GHSA-hm92-r4w5-c3mj",
              "GHSA-p88m-4jfj-68fv",
              "GHSA-pr7r-676h-xcf6",
              "GHSA-vmh5-mc38-953g",
              "GHSA-vxpw-j846-p89q"
            ],
            "fixed_version": "8.5.0",
            "advisory_count": 7,
            "oldest_advisory_days": 38
          },
          {
            "name": "vite",
            "direct": false,
            "version": "5.4.21",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-4w7w-66w2-5vf9",
              "GHSA-fx2h-pf6j-xcff",
              "GHSA-v6wh-96g9-6wx3"
            ],
            "fixed_version": "8.0.16",
            "advisory_count": 3,
            "oldest_advisory_days": 110
          },
          {
            "name": "ws",
            "direct": false,
            "version": "7.5.10",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-96hv-2xvq-fx4p"
            ],
            "fixed_version": "8.21.0",
            "advisory_count": 1,
            "oldest_advisory_days": 40
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.1,
            "advisory_ids": [
              "GHSA-76mc-f452-cxcm",
              "GHSA-c2j3-45gr-mqc4",
              "GHSA-cmwh-pvxp-8882",
              "GHSA-gvmj-g25r-r7wr",
              "GHSA-hpcv-96wg-7vj8",
              "GHSA-r47g-fvhr-h676",
              "GHSA-rp9w-3fw7-7cwq",
              "GHSA-vxr8-fq34-vvx9",
              "GHSA-x4vx-rjvf-j5p4"
            ],
            "fixed_version": "3.4.12",
            "advisory_count": 9,
            "oldest_advisory_days": 40
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.17.6",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-67mh-4wv8-2f99"
            ],
            "fixed_version": "0.25.0",
            "advisory_count": 1,
            "oldest_advisory_days": 530
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.21.5",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-67mh-4wv8-2f99"
            ],
            "fixed_version": "0.25.0",
            "advisory_count": 1,
            "oldest_advisory_days": 530
          },
          {
            "name": "estree-util-value-to-estree",
            "direct": false,
            "version": "1.3.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-f7f6-9jq7-3rqj"
            ],
            "fixed_version": "3.3.3",
            "advisory_count": 1,
            "oldest_advisory_days": 474
          },
          {
            "name": "github.com/google/cel-go",
            "direct": false,
            "version": "v0.26.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-gcjh-h69q-9w9g"
            ],
            "fixed_version": "0.29.0",
            "advisory_count": 1,
            "oldest_advisory_days": 1
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.52.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-5cv4-jp36-h3mw",
              "GO-2026-4918",
              "GO-2026-5025",
              "GO-2026-5026",
              "GO-2026-5027",
              "GO-2026-5028",
              "GO-2026-5029",
              "GO-2026-5030",
              "GO-2026-5942"
            ],
            "fixed_version": "1.26.3",
            "advisory_count": 9,
            "oldest_advisory_days": 79
          },
          {
            "name": "morgan",
            "direct": false,
            "version": "1.10.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-4vj7-5mj6-jm8m"
            ],
            "fixed_version": "1.11.0",
            "advisory_count": 1,
            "oldest_advisory_days": 16
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.14.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-q8mj-m7cp-5q26"
            ],
            "fixed_version": "6.15.2",
            "advisory_count": 1,
            "oldest_advisory_days": 64
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-q8mj-m7cp-5q26"
            ],
            "fixed_version": "6.15.2",
            "advisory_count": 1,
            "oldest_advisory_days": 64
          },
          {
            "name": "react-router-dom",
            "direct": false,
            "version": "6.30.3",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.9,
            "advisory_ids": [
              "GHSA-jjmj-jmhj-qwj2"
            ],
            "fixed_version": "7.13.0",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "valibot",
            "direct": false,
            "version": "1.4.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-5qjj-4xww-7phc"
            ],
            "fixed_version": "1.4.2",
            "advisory_count": 1,
            "oldest_advisory_days": 1
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.2,
            "advisory_ids": [
              "GHSA-4x5r-pxfx-6jf8"
            ],
            "fixed_version": "8.0.0-rc.6",
            "advisory_count": 1,
            "oldest_advisory_days": 40
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.5",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 3.7,
            "advisory_ids": [
              "GHSA-v422-hmwv-36x6"
            ],
            "fixed_version": "2.3.0",
            "advisory_count": 1,
            "oldest_advisory_days": 5
          },
          {
            "name": "go.opentelemetry.io/otel",
            "direct": false,
            "version": "v1.43.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5158"
            ],
            "fixed_version": "1.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 1
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.43.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 64
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.36.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 11
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 2,
          "high": 11,
          "unknown": 3,
          "critical": 1,
          "moderate": 11
        },
        "advisory_count": 73,
        "affected_count": 28,
        "assessed_count": 882,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 1
      },
      "ecosystems": [
        "go",
        "npm"
      ],
      "dependencies": [
        {
          "name": "github.com/go-logr/logr",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.4.3"
        },
        {
          "name": "github.com/onsi/ginkgo/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.27.2"
        },
        {
          "name": "github.com/onsi/gomega",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.38.2"
        },
        {
          "name": "github.com/prometheus/client_golang",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.23.2"
        },
        {
          "name": "github.com/prometheus/client_model",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.6.2"
        },
        {
          "name": "github.com/spf13/cobra",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.10.0"
        },
        {
          "name": "go.miloapis.com/billing",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.15"
        },
        {
          "name": "go.miloapis.com/milo",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.31.1"
        },
        {
          "name": "golang.org/x/term",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.42.0"
        },
        {
          "name": "k8s.io/api",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.35.0"
        },
        {
          "name": "k8s.io/apimachinery",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.35.0"
        },
        {
          "name": "k8s.io/cli-runtime",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.33.1"
        },
        {
          "name": "k8s.io/client-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.35.0"
        },
        {
          "name": "k8s.io/utils",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20251002143259-bc988d571ff4"
        },
        {
          "name": "sigs.k8s.io/controller-runtime",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.23.3"
        },
        {
          "name": "sigs.k8s.io/multicluster-runtime",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.23.3"
        },
        {
          "name": "sigs.k8s.io/yaml",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "@datum-cloud/datum-ui",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.8.0"
        },
        {
          "name": "@remix-run/node",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.15.2"
        },
        {
          "name": "@remix-run/react",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.15.2"
        },
        {
          "name": "@remix-run/serve",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.15.2"
        },
        {
          "name": "class-variance-authority",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.7.1"
        },
        {
          "name": "clsx",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.1"
        },
        {
          "name": "isbot",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.1.17"
        },
        {
          "name": "js-yaml",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.1.1"
        },
        {
          "name": "lucide-react",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.577.0"
        },
        {
          "name": "react",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.5"
        },
        {
          "name": "react-dom",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.5"
        },
        {
          "name": "@tanstack/react-virtual",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": ">=3"
        },
        {
          "name": "sonner",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": ">=2"
        },
        {
          "name": "zod",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": ">=4"
        },
        {
          "name": "tailwind-merge",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.4.0"
        },
        {
          "name": "tailwindcss-animate",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.7"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "github.com/go-logr/logr",
            "direct": true,
            "version": "v1.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/onsi/ginkgo/v2",
            "direct": true,
            "version": "v2.27.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/onsi/gomega",
            "direct": true,
            "version": "v1.38.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/client_golang",
            "direct": true,
            "version": "v1.23.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/client_model",
            "direct": true,
            "version": "v0.6.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/cobra",
            "direct": true,
            "version": "v1.10.0",
            "ecosystem": "go"
          },
          {
            "name": "go.miloapis.com/billing",
            "direct": true,
            "version": "v0.2.15",
            "ecosystem": "go"
          },
          {
            "name": "go.miloapis.com/milo",
            "direct": true,
            "version": "v0.31.1",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/term",
            "direct": true,
            "version": "v0.42.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/api",
            "direct": true,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/apimachinery",
            "direct": true,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/cli-runtime",
            "direct": true,
            "version": "v0.33.1",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/client-go",
            "direct": true,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/utils",
            "direct": true,
            "version": "v0.0.0-20251002143259-bc988d571ff4",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/controller-runtime",
            "direct": true,
            "version": "v0.23.3",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/multicluster-runtime",
            "direct": true,
            "version": "v0.23.3",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/yaml",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "@datum-cloud/datum-ui",
            "direct": true,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/node",
            "direct": true,
            "version": "2.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/react",
            "direct": true,
            "version": "2.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/serve",
            "direct": true,
            "version": "2.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/react-virtual",
            "direct": true,
            "version": "3.13.24",
            "ecosystem": "npm"
          },
          {
            "name": "class-variance-authority",
            "direct": true,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": true,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "isbot",
            "direct": true,
            "version": "5.1.40",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": true,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": true,
            "version": "0.577.0",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": true,
            "version": "19.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": true,
            "version": "19.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "sonner",
            "direct": true,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": true,
            "version": "3.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss-animate",
            "direct": true,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": true,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "cel.dev/expr",
            "direct": false,
            "version": "v0.24.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/antlr4-go/antlr/v4",
            "direct": false,
            "version": "v4.13.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/azure/go-ansiterm",
            "direct": false,
            "version": "v0.0.0-20230124172434-306776ec8161",
            "ecosystem": "go"
          },
          {
            "name": "github.com/beorn7/perks",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/blang/semver/v4",
            "direct": false,
            "version": "v4.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cenkalti/backoff/v4",
            "direct": false,
            "version": "v4.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cespare/xxhash/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/davecgh/go-spew",
            "direct": false,
            "version": "v1.1.2-0.20180830191138-d8f796af33cc",
            "ecosystem": "go"
          },
          {
            "name": "github.com/emicklei/go-restful/v3",
            "direct": false,
            "version": "v3.12.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/evanphx/json-patch/v5",
            "direct": false,
            "version": "v5.9.11",
            "ecosystem": "go"
          },
          {
            "name": "github.com/felixge/httpsnoop",
            "direct": false,
            "version": "v1.0.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fsnotify/fsnotify",
            "direct": false,
            "version": "v1.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fxamacker/cbor/v2",
            "direct": false,
            "version": "v2.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-errors/errors",
            "direct": false,
            "version": "v1.4.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logr/stdr",
            "direct": false,
            "version": "v1.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logr/zapr",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-openapi/jsonpointer",
            "direct": false,
            "version": "v0.21.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-openapi/jsonreference",
            "direct": false,
            "version": "v0.21.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-openapi/swag",
            "direct": false,
            "version": "v0.23.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-task/slim-sprig/v3",
            "direct": false,
            "version": "v3.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/btree",
            "direct": false,
            "version": "v1.1.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/cel-go",
            "direct": false,
            "version": "v0.26.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/gnostic-models",
            "direct": false,
            "version": "v0.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-cmp",
            "direct": false,
            "version": "v0.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/pprof",
            "direct": false,
            "version": "v0.0.0-20250403155104-27863c87afa6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/shlex",
            "direct": false,
            "version": "v0.0.0-20191202100458-e7afc7fbc510",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": false,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gregjones/httpcache",
            "direct": false,
            "version": "v0.0.0-20190611155906-901d90724c79",
            "ecosystem": "go"
          },
          {
            "name": "github.com/grpc-ecosystem/grpc-gateway/v2",
            "direct": false,
            "version": "v2.26.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/inconshreveable/mousetrap",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/josharian/intern",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/json-iterator/go",
            "direct": false,
            "version": "v1.1.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/liggitt/tabwriter",
            "direct": false,
            "version": "v0.0.0-20181228230101-89fcab3d43de",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mailru/easyjson",
            "direct": false,
            "version": "v0.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/masterminds/semver/v3",
            "direct": false,
            "version": "v3.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/moby/term",
            "direct": false,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/modern-go/concurrent",
            "direct": false,
            "version": "v0.0.0-20180306012644-bacd9c7ef1dd",
            "ecosystem": "go"
          },
          {
            "name": "github.com/modern-go/reflect2",
            "direct": false,
            "version": "v1.0.3-0.20250322232337-35a7c28c31ee",
            "ecosystem": "go"
          },
          {
            "name": "github.com/monochromegane/go-gitignore",
            "direct": false,
            "version": "v0.0.0-20200626010858-205db1a8cc00",
            "ecosystem": "go"
          },
          {
            "name": "github.com/munnerz/goautoneg",
            "direct": false,
            "version": "v0.0.0-20191010083416-a7dc8b61c822",
            "ecosystem": "go"
          },
          {
            "name": "github.com/peterbourgon/diskv",
            "direct": false,
            "version": "v2.0.1+incompatible",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pmezard/go-difflib",
            "direct": false,
            "version": "v1.0.1-0.20181226105442-5d4384ee4fb2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/common",
            "direct": false,
            "version": "v0.67.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/procfs",
            "direct": false,
            "version": "v0.20.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/pflag",
            "direct": false,
            "version": "v1.0.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/stoewer/go-strcase",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/x448/float16",
            "direct": false,
            "version": "v0.8.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/xlab/treeprint",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/auto/sdk",
            "direct": false,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",
            "direct": false,
            "version": "v0.61.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace",
            "direct": false,
            "version": "v1.34.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc",
            "direct": false,
            "version": "v1.34.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/metric",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/sdk",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/trace",
            "direct": false,
            "version": "v1.43.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/proto/otlp",
            "direct": false,
            "version": "v1.5.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/multierr",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/zap",
            "direct": false,
            "version": "v1.27.0",
            "ecosystem": "go"
          },
          {
            "name": "go.yaml.in/yaml/v2",
            "direct": false,
            "version": "v2.4.4",
            "ecosystem": "go"
          },
          {
            "name": "go.yaml.in/yaml/v3",
            "direct": false,
            "version": "v3.0.4",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/exp",
            "direct": false,
            "version": "v0.0.0-20240719175910-8a7402abbf56",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/mod",
            "direct": false,
            "version": "v0.34.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.52.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/oauth2",
            "direct": false,
            "version": "v0.34.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "v0.20.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.43.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.36.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/time",
            "direct": false,
            "version": "v0.15.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/tools",
            "direct": false,
            "version": "v0.43.0",
            "ecosystem": "go"
          },
          {
            "name": "gomodules.xyz/jsonpatch/v2",
            "direct": false,
            "version": "v2.5.0",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto/googleapis/api",
            "direct": false,
            "version": "v0.0.0-20250303144028-a0af3efb3deb",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto/googleapis/rpc",
            "direct": false,
            "version": "v0.0.0-20250528174236-200df99c418a",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/grpc",
            "direct": false,
            "version": "v1.72.2",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "v1.36.11",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/evanphx/json-patch.v4",
            "direct": false,
            "version": "v4.13.0",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/inf.v0",
            "direct": false,
            "version": "v0.9.1",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": false,
            "version": "v3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/apiextensions-apiserver",
            "direct": false,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/apiserver",
            "direct": false,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/component-base",
            "direct": false,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/klog/v2",
            "direct": false,
            "version": "v2.130.1",
            "ecosystem": "go"
          },
          {
            "name": "k8s.io/kube-openapi",
            "direct": false,
            "version": "v0.0.0-20250910181357-589584f1c912",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/apiserver-network-proxy/konnectivity-client",
            "direct": false,
            "version": "v0.31.2",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/json",
            "direct": false,
            "version": "v0.0.0-20250730193827-2d320260d730",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/kustomize/api",
            "direct": false,
            "version": "v0.19.0",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/kustomize/kyaml",
            "direct": false,
            "version": "v0.19.0",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/randfill",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "sigs.k8s.io/structured-merge-diff/v6",
            "direct": false,
            "version": "v6.3.2-0.20260122202528-d9cc6641c482",
            "ecosystem": "go"
          },
          {
            "name": "@alloc/quick-lru",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/css-color",
            "direct": false,
            "version": "5.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/dom-selector",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/generational-cache",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/nwsapi",
            "direct": false,
            "version": "2.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-annotate-as-pure",
            "direct": false,
            "version": "7.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-create-class-features-plugin",
            "direct": false,
            "version": "7.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-member-expression-to-functions",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-optimise-call-expression",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-replace-supers",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-skip-transparent-expression-wrappers",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-decorators",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-jsx",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-typescript",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-modules-commonjs",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-typescript",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/preset-typescript",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@bramus/specificity",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/color-helpers",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-calc",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-color-parser",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-parser-algorithms",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-syntax-patches-for-csstree",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-tokenizer",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@date-fns/tz",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@dnd-kit/utilities",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emotion/hash",
            "direct": false,
            "version": "0.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@exodus/bytes",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/core",
            "direct": false,
            "version": "1.7.5",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/dom",
            "direct": false,
            "version": "1.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/react-dom",
            "direct": false,
            "version": "2.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/utils",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@jspm/core",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mdx-js/mdx",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@npmcli/fs",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@npmcli/git",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@npmcli/package-json",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@npmcli/promise-spawn",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": false,
            "version": "1.59.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/number",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/primitive",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-arrow",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-avatar",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-checkbox",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collapsible",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collection",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-compose-refs",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-context",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-context",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-direction",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dismissable-layer",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dropdown-menu",
            "direct": false,
            "version": "2.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-guards",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-scope",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-hover-card",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-id",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-label",
            "direct": false,
            "version": "2.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-menu",
            "direct": false,
            "version": "2.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popover",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popper",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-portal",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-presence",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-radio-group",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-roving-focus",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-select",
            "direct": false,
            "version": "2.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-separator",
            "direct": false,
            "version": "1.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-switch",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tabs",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tooltip",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-callback-ref",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-controllable-state",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-effect-event",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-escape-keydown",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-is-hydrated",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-layout-effect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-previous",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-rect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-size",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-visually-hidden",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-visually-hidden",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/rect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/dev",
            "direct": false,
            "version": "2.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/express",
            "direct": false,
            "version": "2.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/router",
            "direct": false,
            "version": "1.23.2",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/server-runtime",
            "direct": false,
            "version": "2.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/web-blob",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/web-fetch",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/web-file",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/web-form-data",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/web-stream",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tabby_ai/hijri-converter",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/node",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-android-arm64",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-arm64",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-x64",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-freebsd-x64",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-gnu",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-musl",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-gnu",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-musl",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-wasm32-wasi",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-arm64-msvc",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-x64-msvc",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/postcss",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/vite",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/virtual-core",
            "direct": false,
            "version": "3.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/acorn",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/cookie",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "2.3.10",
            "ecosystem": "npm"
          },
          {
            "name": "@types/js-yaml",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "3.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdx",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "19.2.14",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "19.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@vanilla-extract/babel-plugin-debug-ids",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vanilla-extract/css",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vanilla-extract/integration",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vanilla-extract/private",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@web3-storage/multipart-parser",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@zxing/text-encoding",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "abort-controller",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "aggregate-error",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "arg",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-hidden",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "array-flatten",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "astring",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "available-typed-arrays",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.27",
            "ecosystem": "npm"
          },
          {
            "name": "basic-auth",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "bidi-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "bl",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserify-zlib",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.2",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "cacache",
            "direct": false,
            "version": "17.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bound",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001791",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "clean-stack",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-spinners",
            "direct": false,
            "version": "2.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "clone",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cmdk",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "compressible",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "npm"
          },
          {
            "name": "compression",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "content-disposition",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "content-type",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-signature",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-signature",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "date-fns",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "date-fns-jalali",
            "direct": false,
            "version": "4.1.0-0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "dedent",
            "direct": false,
            "version": "1.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "deep-object-diff",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "deepmerge",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "defaults",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "define-data-property",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "destroy",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node-es",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "16.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "duplexify",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.350",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "9.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "err-code",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.17.6",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild-plugins-node-modules-polyfill",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-attach-comments",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-build-jsx",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-to-js",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-value-to-estree",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-visit",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "etag",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "eval",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "event-target-shim",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "execa",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "exit-hook",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": false,
            "version": "4.22.1",
            "ecosystem": "npm"
          },
          {
            "name": "exsolve",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fault",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "for-each",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "format",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fraction.js",
            "direct": false,
            "version": "5.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "fresh",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-constants",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-minipass",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-minipass",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "generator-function",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "generic-names",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-nonce",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-port",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "gunzip-maybe",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-property-descriptors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-tostringtag",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-estree",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hosted-git-info",
            "direct": false,
            "version": "6.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "human-signals",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "icss-utils",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "indent-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "inline-style-parser",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-arguments",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-buffer",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "is-callable",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-deflate",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-generator-function",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-gzip",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-interactive",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-potential-custom-element-name",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-reference",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-regex",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-stream",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-typed-array",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isomorphic-dompurify",
            "direct": false,
            "version": "3.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "javascript-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "29.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "4.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "loader-utils",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "local-pkg",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.camelcase",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.debounce",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "log-symbols",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "10.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "7.18.3",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-extensions",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-definitions",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-frontmatter",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "12.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "media-query-parser",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "merge-stream",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "methods",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-frontmatter",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-expression",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdx-md",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-mdxjs-esm",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-mdx-expression",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-events-to-acorn",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.54.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-collect",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-flush",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "minipass-pipeline",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "minizlib",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp-classic",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "modern-ahocorasick",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "morgan",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "mri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mrmime",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.38",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-package-data",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "npm-install-checks",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "npm-normalize-package-bin",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "npm-package-arg",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "npm-pick-manifest",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "npm-run-path",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "on-headers",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "ora",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "outdent",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "0.2.9",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse-ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "peek-stream",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "periscopic",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "pidtree",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.59.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.59.1",
            "ecosystem": "npm"
          },
          {
            "name": "possible-typed-array-names",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.14",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-discard-duplicates",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-extract-imports",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-local-by-default",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-scope",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-modules-values",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "pretty-ms",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "proc-log",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "promise-inflight",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "promise-retry",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-addr",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pumpify",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.14.2",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "react-day-picker",
            "direct": false,
            "version": "9.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-refresh",
            "direct": false,
            "version": "0.14.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll",
            "direct": false,
            "version": "2.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll-bar",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "react-router",
            "direct": false,
            "version": "6.30.3",
            "ecosystem": "npm"
          },
          {
            "name": "react-router-dom",
            "direct": false,
            "version": "6.30.3",
            "ecosystem": "npm"
          },
          {
            "name": "react-style-singleton",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-frontmatter",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-mdx",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-mdx-frontmatter",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-rehype",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "require-like",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "resolve.exports",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.3",
            "ecosystem": "npm"
          },
          {
            "name": "sade",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safe-regex-test",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "send",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "serve-static",
            "direct": false,
            "version": "1.16.3",
            "ecosystem": "npm"
          },
          {
            "name": "set-cookie-parser",
            "direct": false,
            "version": "2.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "set-function-length",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-map",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-weakmap",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-correct",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-exceptions",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-expression-parse",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "spdx-license-ids",
            "direct": false,
            "version": "3.0.23",
            "ecosystem": "npm"
          },
          {
            "name": "ssri",
            "direct": false,
            "version": "10.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "stream-shift",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stream-slice",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "string-hash",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-final-newline",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "symbol-tree",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tar",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "tar-fs",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "through2",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "tldts",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toml",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tsconfig-paths",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "turbo-stream",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "tw-animate-css",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "1.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "6.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "7.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "10.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unique-filename",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unique-slug",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-generated",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position-from-estree",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-remove-position",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "5.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-callback-ref",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sidecar",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sync-external-store",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "util",
            "direct": false,
            "version": "0.12.5",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "utils-merge",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "uvu",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "valibot",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "validate-npm-package-license",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "validate-npm-package-name",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "5.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "5.4.21",
            "ecosystem": "npm"
          },
          {
            "name": "vite-node",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "vite-node",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-encoding",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "web-streams-polyfill",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "16.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "which-typed-array",
            "direct": false,
            "version": "1.1.20",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "7.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "xtend",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.8.4",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 882,
        "direct_count": 33,
        "indirect_count": 849
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 5,
        "merged_prs": 31,
        "open_issues": 14,
        "closed_ratio": 0.176,
        "closed_issues": 3,
        "closed_unmerged_prs": 7
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "scotwells",
          "commits": 107,
          "avatar_url": "https://avatars.githubusercontent.com/u/6007097?v=4"
        },
        {
          "type": "User",
          "login": "JoseSzycho",
          "commits": 17,
          "avatar_url": "https://avatars.githubusercontent.com/u/77838520?v=4"
        },
        {
          "type": "User",
          "login": "savme",
          "commits": 13,
          "avatar_url": "https://avatars.githubusercontent.com/u/40720931?v=4"
        },
        {
          "type": "User",
          "login": "kevwilliams",
          "commits": 10,
          "avatar_url": "https://avatars.githubusercontent.com/u/1724763?v=4"
        },
        {
          "type": "User",
          "login": "mattdjenkinson",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/75292329?v=4"
        },
        {
          "type": "User",
          "login": "yahyafakhroji",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/3510868?v=4"
        }
      ],
      "contributors_sampled": 6,
      "top_contributor_share": 0.704
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "e2e.yml",
        "lint.yml",
        "publish.yaml",
        "test.yml",
        "ui-demo.yml",
        "validate-kustomize.yaml",
        "verify.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".golangci.yml"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum",
        "pnpm-lock.yaml"
      ],
      "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": null,
            "reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "4 out of 4 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": 10,
            "reason": "all changesets reviewed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "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": 0,
            "reason": "license file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 0 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": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "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": 0,
            "reason": "65 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "b9c74bbaa8b0a1f25e1f44ecc2dc3ebd398c339d",
        "ran_at": "2026-07-26T15:14:32Z",
        "aggregate_score": 4.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-24T13:05:00Z",
      "oldest_open_prs": [
        {
          "number": 9,
          "created_at": "2026-05-13T12:23:16Z",
          "last_comment_at": "2026-05-28T16:20:18Z",
          "last_comment_author": "scotwells"
        },
        {
          "number": 17,
          "created_at": "2026-05-20T01:51:50Z",
          "last_comment_at": "2026-05-20T02:14:38Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 20,
          "created_at": "2026-05-24T18:18:08Z",
          "last_comment_at": "2026-05-28T16:20:11Z",
          "last_comment_author": "scotwells"
        },
        {
          "number": 44,
          "created_at": "2026-06-20T13:37:08Z",
          "last_comment_at": "2026-06-25T12:38:38Z",
          "last_comment_author": "JoseSzycho"
        },
        {
          "number": 49,
          "created_at": "2026-07-03T14:43:33Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-24T13:01:11Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 3,
          "created_at": "2026-05-04T23:39:11Z",
          "last_comment_at": "2026-05-05T01:27:58Z",
          "last_comment_author": "scotwells"
        },
        {
          "number": 4,
          "created_at": "2026-05-05T01:27:53Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 5,
          "created_at": "2026-05-06T01:46:31Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 6,
          "created_at": "2026-05-06T23:41:24Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 21,
          "created_at": "2026-05-26T09:39:20Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 24,
          "created_at": "2026-05-27T14:15:00Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 32,
          "created_at": "2026-06-03T12:38:13Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 35,
          "created_at": "2026-06-03T21:56:06Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 36,
          "created_at": "2026-06-03T22:41:12Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 45,
          "created_at": "2026-06-28T17:00:09Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 46,
          "created_at": "2026-06-28T17:00:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 47,
          "created_at": "2026-06-28T17:00:11Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 48,
          "created_at": "2026-07-01T23:43:30Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 60,
          "created_at": "2026-07-23T22:00:08Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/milo-os/service-catalog",
    "host": "github.com",
    "name": "service-catalog",
    "owner": "milo-os"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 56,
      "inputs": {
        "security": 48,
        "vitality": 83,
        "community": 12,
        "governance": 52,
        "engineering": 76
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 83,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 72,
            "inputs": {
              "commits_last_year": 152,
              "human_commit_share": 1,
              "days_since_last_push": 2,
              "active_weeks_last_year": 12
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 2 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 2
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "12/52 weeks with commits",
                "points": 8.3,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 12
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "152 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 152
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 4,
              "latest_release_tag": "v0.3.1",
              "releases_from_tags": false,
              "days_since_latest_release": 33,
              "mean_days_between_releases": 7
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "4 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 33 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 33
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~7 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 7
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "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": "critical",
        "name": "Community & Adoption",
        "value": 12,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 0,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "0 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "0 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "critical",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 25,
            "inputs": {
              "has_readme": true,
              "has_license": false,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "no license file detected",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "license_absent",
                    "params": {}
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 52,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 27,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 6,
              "top_contributor_share": 0.704
            },
            "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 70% of commits",
                "points": 6.7,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 70
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "6 contributors",
                "points": 8.1,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 54,
            "inputs": {
              "merged_prs": 31,
              "open_issues": 14,
              "closed_issues": 3,
              "issue_closed_ratio": 0.176,
              "closed_unmerged_prs": 7
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "18% of issues closed",
                "points": 8.2,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 18
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "31/38 decided PRs merged",
                "points": 31.2,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 31,
                      "decided": 38
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "all changesets reviewed",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 49,
            "inputs": {
              "followers": 11,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "milo-os",
              "public_repos": 30,
              "account_age_days": 93
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "11 followers of milo-os",
                "points": 7.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 11,
                      "login": "milo-os"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "30 public repos, account ~0 yr old",
                "points": 11.4,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 30
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "packages": [
                "go.miloapis.com/service-catalog"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 40
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 40 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 40
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "4 published versions",
                "points": 12,
                "status": "partial",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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": "good",
        "name": "Engineering Quality",
        "value": 76,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "7 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 7
                    }
                  }
                ],
                "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": ".golangci.yml",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "4 out of 4 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "topics": [],
              "has_wiki": false,
              "homepage": null,
              "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 48,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "branch_protection",
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 42,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 15,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 3,
              "scorecard_aggregate": 4.2
            },
            "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": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "4 out of 4 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": "all changesets reviewed",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "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 not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 0 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 not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "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 not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "65 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "good",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 882 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 882
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 72,
            "inputs": {
              "source": "osv",
              "advisories": 73,
              "affected_packages": 28,
              "assessed_packages": 882,
              "unassessed_packages": 0,
              "affected_by_severity": "critical 1, high 11, moderate 11, low 2, unknown 3",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: js-yaml 4.1.1 (high 7.5)",
                "points": 14,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "js-yaml 4.1.1 (high 7.5)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory has been public longer than 90 days",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "advisories_none_stale",
                    "params": {
                      "days": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 882,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 6
            },
            "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": "good",
        "name": "AI Readiness",
        "value": 79,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.9,
              "agent_instruction_files": [
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 2859
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "CLAUDE.md"
                    }
                  }
                ],
                "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": "90 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 90,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 82,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum",
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "Taskfile.yaml",
                "ui/Taskfile.yaml"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "ui/tsconfig.json"
              ],
              "agent_commit_share": 0.31,
              "toolchain_manifests": [
                "go.mod"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Taskfile.yaml, ui/Taskfile.yaml",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Taskfile.yaml, ui/Taskfile.yaml"
                    }
                  }
                ],
                "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": ".golangci.yml",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "ui/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "ui/tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "31 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 31,
                      "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 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "Go",
              "largest_source_bytes": 60415,
              "source_files_sampled": 137,
              "oversized_source_files": 1
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Go (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "1/137 source files over 60KB",
                "points": 54.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 137,
                      "oversized": 1
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "samples"
              ],
              "has_mcp_signal": false,
              "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "samples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "samples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-26T15:14:48.617971Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/milo-os/service-catalog.svg",
  "full_name": "milo-os/service-catalog",
  "license_state": "absent",
  "license_spdx": null
}

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

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

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