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

Gaucho-Racing / Mapache

Gaucho Racing's bespoke telemetry and data analytics platform.

TypeScript · GoMIT★ 10 зірок⑂ 4 форкиз лист. 2023 р.Переглянути на GitHub ↗

Gaucho-Racing/Mapache має індекс здоров’я 64 зі 100, що відповідає смузі «Помірний». Найвищий показник — Engineering Quality (82/100), найнижчий — Community & Adoption (40/100). Останнє оновлення було 30 днів тому. Більшість нещодавньої роботи виконує один учасник.

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

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

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

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

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

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

Власність

Gaucho RacingОрганізація
46 підписників72 публічні репозиторіїз трав. 2022 р.

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

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

РеєстрПакетВерсіяЗавантажень / місВерсіїОстання публікація
Gogithub.com/Gaucho-Racing/Mapachev3.9.6+incompatible-4032 дні тому
Gogithub.com/gaucho-racing/mapache/mapache-go/v3v3.5.0-835 днів тому
PyPIqueryвказує на інший репозиторій — не оцінюється0.1.47 69554121 день тому
PyPIrigbyвказує на інший репозиторій — не оцінюється0.1.3193404 дні тому
PyPImapache-py3.1.03 211377 днів тому

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

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

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

81Добрий · 22% загального індексу
Як обчислюється оцінка
28.8/36Свіжість push — останній push 30 дн. тому
11.8/36Ритм комітів — 17/52 тижнів із комітами
18/18Обсяг комітів — 454 комітів за останній рік
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Використані вхідні дані
commits_last_year454
human_commit_share1
days_since_last_push30
active_weeks_last_year17
Як обчислюється оцінка
27/27Випускає релізи — опубліковано 46 релізів
36/36Свіжість релізів — останній реліз 32 дн. тому
27/27Ритм релізів — реліз кожні ~0,9 дн.
0/10OpenSSF Scorecard: Signed-Releases — немає даних
Використані вхідні дані
releases_count46
latest_release_tagv3.9.6
releases_from_tagsні
days_since_latest_release32
mean_days_between_releases0,9
Виключено з оцінювання (немає даних або не застосовно): OpenSSF Scorecard: Signed-Releases. Залишкові ваги перенормовано.

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

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

40У зоні ризику · 18% загального індексу
Як обчислюється оцінка
15.5/60Зірки — 10 зірок
4/25Форки — 4 форків
0/15Спостерігачі — 1 спостерігачів
Використані вхідні дані
forks4
stars10
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Як обчислюється оцінка
22.5/22.5README
22.5/22.5Ліцензія — визнана ліцензія (MIT)
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ні
Як обчислюється оцінка
46.8/80Щомісячні завантаження — 3 211 завантажень/місяць у go, pypi
0/20Залежні пакети в реєстрі — ця екосистема цього не повідомляє
Використані вхідні дані
packagesgithub.com/Gaucho-Racing/Mapache, github.com/gaucho-racing/mapache/mapache-go/v3, mapache-py
dependents
ecosystemsgo, pypi
total_downloads
monthly_downloads3 211
Виключено з оцінювання (немає даних або не застосовно): Залежні пакети в реєстрі. Залишкові ваги перенормовано.

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

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

65Помірний · 24% загального індексу
Як обчислюється оцінка
9/54Бас-фактор — на 1 контриб’ютор(ів) припадає половина всіх комітів
4.1/22.5Розподіл комітів — головний контриб’ютор — автор 82% комітів
13.5/13.5Широта контриб’юторів — 10 контриб’юторів
6/10OpenSSF Scorecard: Contributors — project has 2 contributing companies or organizations -- score normalized to 6
Використані вхідні дані
bus_factor1
contributors_sampled10
top_contributor_share0,816
Як обчислюється оцінка
46.8/46.8Вирішення issue — закрито 100% issue
30.1/38.3Прийняття PR — злито 159/202 вирішених PR
1.5/15OpenSSF Scorecard: Code-Review — Found 2/14 approved changesets -- score normalized to 1
Використані вхідні дані
merged_prs159
open_issues0
closed_issues9
issue_closed_ratio1
closed_unmerged_prs43
Як обчислюється оцінка
30/30Підтримка власника — у власності організації
0/20Верифікований домен
12/25Охоплення власника — 46 підписників у Gaucho-Racing
21.4/25Послужний список — 72 публічних репозиторіїв, вік облікового запису ~4 р.
Використані вхідні дані
followers46
owner_typeOrganization
is_verified
owner_loginGaucho-Racing
public_repos72
account_age_days1 529

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

100Відмінний
Як обчислюється оцінка
25/25Опубліковано й доступно — 3 пакет(ів) у go, pypi
35/35Свіжість публікацій — остання публікація 32 дн. тому
20/20Історія версій — 40 опублікованих версій
20/20Не застарілий — активний, не deprecated і не yanked
Використані вхідні дані
packagesgithub.com/Gaucho-Racing/Mapache, github.com/gaucho-racing/mapache/mapache-go/v3, mapache-py
ecosystemsgo, pypi
any_deprecatedні
min_days_since_publish32

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

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

82Добрий · 20% загального індексу
Як обчислюється оцінка
24/24Процеси CI — 10 процес(ів) CI
24/24Наявні тести
16/16Конфігурація лінтера — .eslintrc.cjs
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ні
Як обчислюється оцінка
30/30README
25/25Каталог документації
15/15Сайт документації / домашня сторінка — https://mapache.gauchoracing.com
10/10Опис репозиторію
0/10Теми
0/10Wiki
Використані вхідні дані
topics
has_wikiні
homepagehttps://mapache.gauchoracing.com
has_readmeтак
has_docs_dirтак
has_descriptionтак

Безпека

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

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

Стан безпеки

41У зоні ризику
Як обчислюється оцінка
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
0.8/7.5Code-Review — Found 2/14 approved changesets -- score normalized to 1
1.5/2.5Contributors — project has 2 contributing companies or organizations -- score normalized to 6
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Ліцензія — license file detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
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 — 92 existing vulnerabilities detected
Використані вхідні дані
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate4,1
Виключено з оцінювання (немає даних або не застосовно): branch_protection, signed_releases. Залишкові ваги перенормовано.
Як обчислюється оцінка
6.2/35Прямі залежності без відомих сповіщень — уражено 7: axios 1.17.0 (high 8.2), github.com/golang-jwt/jwt/v4 v4.5.1 (high 7.5), pyjwt 2.12.1 (high 7.4), ще +4
0/25Непрямі залежності без відомих сповіщень — транзитивний набір не відокремлюється від залежностей розробки й тестування в цьому обсязі
25.2/40Немає задавнених сповіщень — 4 пакет(ів) зі сповіщеннями без реакції понад 90 дн.; найдавніше опубліковано 488 дн. тому
Використані вхідні дані
sourceosv
advisories275
affected_packages43
assessed_packages712
unassessed_packages0
affected_by_severitycritical 7, high 13, moderate 14, unknown 9
direct_affected_packages7
Виключено з оцінювання (немає даних або не застосовно): Непрямі залежності без відомих сповіщень. Залишкові ваги перенормовано. Звірено 712 резолвлених залежностей із OSV. Цей репозиторій не публікує пакета, який резолвить індекс, тож натомість оцінено граф залежностей репозиторію. Цей граф змішує закріплені версії для розробки й тестування зі справді постачаними залежностями, тож оцінюються лише задекларовані runtime-залежності; транзитивні знахідки подаються як контекст і в оцінку не входять. Досяжність не аналізується.

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

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

66Помірний · 0% загального індексу
Як обчислюється оцінка
0/45Інструкції для агентів — немає CLAUDE.md / AGENTS.md / правил редактора
0/15Машиночитана документація (llms.txt)
40/40Читабельна історія комітів — намір зазначено у 93 з 100 людських комітів (структурований заголовок або пояснювальний текст)
Використані вхідні дані
has_llms_txtні
legible_history_share0,93
agent_instruction_files
agent_instruction_max_bytes
Як обчислюється оцінка
18/18Розгортання однією командою — gr24/Makefile, gr25/Makefile, query/Makefile
22/22Автоматизовані тести
11/11Конфігурація лінтера / форматера — .eslintrc.cjs
11/11Статична перевірка типів — dashboard/tsconfig.json, mapache-py/src/mapache/py.typed
10/10Відтворюване середовище — Dockerfile, lockfile
0/10Підтверджена практика роботи з агентами — серед останніх 100 комітів немає створених агентом
0/8Автоматизоване супроводження — автоматичних оновлень залежностей не виявлено
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Використані вхідні дані
has_nixні
has_testsтак
lockfilesgo.sum, package-lock.json, poetry.lock, uv.lock
has_dockerfileтак
typed_languageтак
bootstrap_filesgr24/Makefile, gr25/Makefile, query/Makefile
has_devcontainerні
has_linter_configтак
typecheck_configsdashboard/tsconfig.json, mapache-py/src/mapache/py.typed
agent_commit_share0
toolchain_manifestsauth/go.mod, gr24/go.mod, gr25/go.mod, gr26/go.mod, live/go.mod, mapache-go/go.mod, vehicle/go.mod
dependency_bot_commit_share0
Як обчислюється оцінка
45/45Типізований код — TypeScript (статично типізована)
55/55Керовані розміри файлів — 0/349 файлів вихідного коду понад 60 КБ
Використані вхідні дані
primary_languageTypeScript
largest_source_bytes37 615
source_files_sampled349
oversized_source_files0

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

10зірок GitHub
10контриб'юторів
454комітів за останні 12 місяців
30днів від останнього пушу
46релізів
1бас-фактор
0відкритих issue
Go, npm, PyPIпакетних екосистем

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

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • pypi package 'query' points at a different repository (http://github.com/boydgreenfield/query/); excluded from ecosystem scoring
  • pypi package 'rigby' points at a different repository (https://github.com/lothartj/rigby); excluded from ecosystem scoring
  • Advisory severity resolved for 120 of 136 advisories (lookup cap); the remainder are reported as unknown severity

Докладніше

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

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

1223344412024-052025-032025-12

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

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

Незалежна, не прив'язана до інструментів оцінка безпеки від відкритого проєкту OpenSSF Scorecard. Кожна перевірка винагороджує практику безпеки, а не інструмент конкретного постачальника. Перевірки, які Scorecard не зміг визначити, позначено н/д і виключено з оцінки безпеки (вони ніколи не зараховуються як нуль).Scorecard v5.5.0 · 2026-07-23 04:28 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
1Code-ReviewFound 2/14 approved changesets -- score normalized to 1
6Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow 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
0Vulnerabilities92 existing vulnerabilities detected
Прямі залежності 124
РеєстрПакетОбмеження версіїМаніфест
Gogithub.com/fatih/colorv1.18.0auth/go.mod
Gogithub.com/gin-contrib/corsv1.7.6auth/go.mod
Gogithub.com/gin-gonic/ginv1.12.0auth/go.mod
Gogithub.com/golang-jwt/jwt/v4v4.5.1auth/go.mod
Gogithub.com/lestrrat-go/jwxv1.2.30auth/go.mod
Gogo.uber.org/zapv1.27.1auth/go.mod
Gogorm.io/driver/postgresv1.6.0auth/go.mod
Gogorm.io/gormv1.31.1auth/go.mod
npm@fortawesome/fontawesome-svg-core6.6.0dashboard/package.json
npm@fortawesome/free-brands-svg-icons6.6.0dashboard/package.json
npm@fortawesome/free-regular-svg-icons6.6.0dashboard/package.json
npm@fortawesome/free-solid-svg-icons6.6.0dashboard/package.json
npm@fortawesome/react-fontawesome0.2.0dashboard/package.json
npm@hello-pangea/dnd^18.0.1dashboard/package.json
npm@radix-ui/react-alert-dialog^1.1.16dashboard/package.json
npm@radix-ui/react-avatar^1.1.12dashboard/package.json
npm@radix-ui/react-checkbox^1.3.4dashboard/package.json
npm@radix-ui/react-dialog^1.0.5dashboard/package.json
npm@radix-ui/react-dropdown-menu^2.1.17dashboard/package.json
npm@radix-ui/react-icons^1.3.2dashboard/package.json
npm@radix-ui/react-label^2.1.9dashboard/package.json
npm@radix-ui/react-menubar^1.1.17dashboard/package.json
npm@radix-ui/react-popover^1.1.16dashboard/package.json
npm@radix-ui/react-progress^1.1.9dashboard/package.json
npm@radix-ui/react-scroll-area^1.2.11dashboard/package.json
npm@radix-ui/react-select^2.3.0dashboard/package.json
npm@radix-ui/react-separator^1.1.9dashboard/package.json
npm@radix-ui/react-slot^1.0.2dashboard/package.json
npm@radix-ui/react-switch^1.3.0dashboard/package.json
npm@radix-ui/react-tabs^1.1.14dashboard/package.json
npm@radix-ui/react-toast^1.2.16dashboard/package.json
npm@radix-ui/react-tooltip^1.2.9dashboard/package.json
npm@types/mapbox-gl^3.4.1dashboard/package.json
npm@uiw/react-json-view^2.0.0-alpha.32dashboard/package.json
npm@xyflow/react^12.11.0dashboard/package.json
npmaxios^1.17.0dashboard/package.json
npmchrono-node^2.9.1dashboard/package.json
npmclass-variance-authority^0.7.1dashboard/package.json
npmclsx^2.1.1dashboard/package.json
npmcmdk^1.1.1dashboard/package.json
npmcrypto-js^4.2.0dashboard/package.json
npmdate-fns^3.6.0dashboard/package.json
npmdotenv^16.6.1dashboard/package.json
npmecharts^5.6.0dashboard/package.json
npmecharts-gl^2.1.0dashboard/package.json
npmfuse.js^7.4.2dashboard/package.json
npmlucide-react^0.453.0dashboard/package.json
npmmapbox-gl^3.24.0dashboard/package.json
npmmoment^2.30.1dashboard/package.json
npmnext-themes^0.2.1dashboard/package.json
npmreact^18.3.1dashboard/package.json
npmreact-day-picker^8.10.2dashboard/package.json
npmreact-dom^18.3.1dashboard/package.json
npmreact-json-view-lite^2.5.0dashboard/package.json
npmreact-router-dom^6.30.4dashboard/package.json
npmreact-superstore^0.1.4dashboard/package.json
npmreact-use-websocket^4.13.0dashboard/package.json
npmrecharts^2.15.4dashboard/package.json
npmsonner^1.7.4dashboard/package.json
npmtailwind-merge^2.6.1dashboard/package.json
npmtailwindcss-animate^1.0.7dashboard/package.json
npmtypescript-eslint^8.61.0dashboard/package.json
Gogithub.com/bk1031/rincon-gov1.1.2gr24/go.mod
Gogithub.com/eclipse/paho.mqtt.golangv1.4.3gr24/go.mod
Gogithub.com/fatih/colorv1.17.0gr24/go.mod
Gogithub.com/gaucho-racing/mapache-gov1.3.0gr24/go.mod
Gogithub.com/gin-gonic/ginv1.10.0gr24/go.mod
Gogithub.com/google/uuidv1.6.0gr24/go.mod
Gogithub.com/gorilla/websocketv1.5.0gr24/go.mod
Gogithub.com/singlestore-labs/gorm-singlestorev1.2.0gr24/go.mod
Gogo.uber.org/zapv1.27.0gr24/go.mod
Gogorm.io/gormv1.25.10gr24/go.mod
Gogithub.com/bk1031/rincon-go/v2v2.0.0gr25/go.mod
Gogithub.com/eclipse/paho.mqtt.golangv1.5.0gr25/go.mod
Gogithub.com/gin-gonic/ginv1.10.0gr25/go.mod
Gogithub.com/gorilla/websocketv1.5.3gr25/go.mod
Gogo.uber.org/zapv1.27.0gr25/go.mod
Gogorm.io/gormv1.25.7gr25/go.mod
Gogithub.com/fatih/colorv1.18.0gr25/go.mod
Gogithub.com/gaucho-racing/mapache-gov1.8.0gr25/go.mod
Gogithub.com/gin-contrib/corsv1.7.3gr25/go.mod
Gogithub.com/singlestore-labs/gorm-singlestorev1.2.0gr25/go.mod
Gogithub.com/ClickHouse/clickhouse-go/v2v2.46.0gr26/go.mod
Gogithub.com/aws/aws-sdk-go-v2v1.41.11gr26/go.mod
Gogithub.com/aws/aws-sdk-go-v2/configv1.32.22gr26/go.mod
Gogithub.com/aws/aws-sdk-go-v2/service/s3v1.103.1gr26/go.mod
Gogithub.com/eclipse/paho.golangv0.23.0gr26/go.mod
Gogithub.com/fatih/colorv1.18.0gr26/go.mod
Gogithub.com/gaucho-racing/mapache/mapache-go/v3v3.5.0gr26/go.mod
Gogithub.com/gaucho-racing/ulid-gov1.1.0gr26/go.mod
Gogithub.com/gin-contrib/corsv1.7.6gr26/go.mod
Gogithub.com/gin-gonic/ginv1.12.0gr26/go.mod
Gogithub.com/parquet-go/parquet-gov0.30.1gr26/go.mod
Gogo.uber.org/zapv1.27.1gr26/go.mod
Gogithub.com/eclipse/paho.golangv0.23.0live/go.mod
Gogithub.com/fatih/colorv1.18.0live/go.mod
Gogithub.com/gaucho-racing/mapache/mapache-go/v3v3.5.0live/go.mod
Gogithub.com/gin-contrib/corsv1.7.6live/go.mod
Gogithub.com/gin-gonic/ginv1.12.0live/go.mod
Gogithub.com/gorilla/websocketv1.5.3live/go.mod
Gogo.uber.org/zapv1.27.1live/go.mod
PyPIfastapi>=0.115.10,<0.116.0query/pyproject.toml
PyPIuvicorn>=0.34.0,<0.35.0query/pyproject.toml
PyPIdotenv>=0.9.9,<0.10.0query/pyproject.toml
PyPIsqlalchemy>=2.0.38,<3.0.0query/pyproject.toml
PyPIpsycopg2-binary>=2.9.10,<3.0.0query/pyproject.toml
PyPIclickhouse-connect>=0.8.0,<0.9.0query/pyproject.toml
PyPIloguru>=0.7.3,<0.8.0query/pyproject.toml
PyPIrequests>=2.32.3,<3.0.0query/pyproject.toml
PyPIpyjwt>=2.11.0,<3.0.0query/pyproject.toml
PyPImapache-py>=3.0.1,<4.0.0query/pyproject.toml
PyPIgr-ulid>=1.1.2,<2.0.0query/pyproject.toml
PyPIpandas>=3.0.3query/pyproject.toml
PyPInumpy>=2.4.6query/pyproject.toml
PyPIpaho-mqtt^1.6.1rigby/pyproject.toml
PyPInumpy^1.26.4rigby/pyproject.toml
Gogithub.com/fatih/colorv1.18.0vehicle/go.mod
Gogithub.com/gaucho-racing/mapache/mapache-go/v3v3.5.0vehicle/go.mod
Gogithub.com/gaucho-racing/ulid-gov1.1.0vehicle/go.mod
Gogithub.com/gin-contrib/corsv1.7.6vehicle/go.mod
Gogithub.com/gin-gonic/ginv1.12.0vehicle/go.mod
Gogo.uber.org/zapv1.27.1vehicle/go.mod
Gogorm.io/gormv1.31.1vehicle/go.mod
Gogorm.io/driver/postgresv1.6.0vehicle/go.mod
Усі залежності 712

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

РеєстрПакетВерсіяЗв'язок
Gogithub.com/aws/aws-sdk-go-v2v1.41.11пряма
Gogithub.com/aws/aws-sdk-go-v2/configv1.32.22пряма
Gogithub.com/aws/aws-sdk-go-v2/service/s3v1.103.1пряма
Gogithub.com/bk1031/rincon-go1.1.2пряма
Gogithub.com/bk1031/rincon-go/v22.0.0пряма
Gogithub.com/clickhouse/clickhouse-go/v2v2.46.0пряма
Gogithub.com/eclipse/paho.golangv0.23.0пряма
Gogithub.com/eclipse/paho.mqtt.golang1.4.3пряма
Gogithub.com/eclipse/paho.mqtt.golang1.5.0пряма
Gogithub.com/fatih/color1.17.0пряма
Gogithub.com/fatih/colorv1.18.0пряма
Gogithub.com/gaucho-racing/mapache-go1.3.0пряма
Gogithub.com/gaucho-racing/mapache-go1.8.0пряма
Gogithub.com/gaucho-racing/mapache/mapache-go/v3v3.5.0пряма
Gogithub.com/gaucho-racing/ulid-gov1.1.0пряма
Gogithub.com/gin-contrib/cors1.7.3пряма
Gogithub.com/gin-contrib/corsv1.7.6пряма
Gogithub.com/gin-gonic/gin1.10.0пряма
Gogithub.com/gin-gonic/ginv1.12.0пряма
Gogithub.com/golang-jwt/jwt/v4v4.5.1пряма
Gogithub.com/google/uuid1.6.0пряма
Gogithub.com/google/uuidv1.6.0пряма
Gogithub.com/gorilla/websocket1.5.0пряма
Gogithub.com/gorilla/websocket1.5.3пряма
Gogithub.com/gorilla/websocketv1.5.3пряма
Gogithub.com/lestrrat-go/jwxv1.2.30пряма
Gogithub.com/parquet-go/parquet-gov0.30.1пряма
Gogithub.com/singlestore-labs/gorm-singlestore1.2.0пряма
Gogo.uber.org/zap1.27.0пряма
Gogo.uber.org/zapv1.27.1пряма
Gogorm.io/driver/postgresv1.6.0пряма
Gogorm.io/gorm1.25.10пряма
Gogorm.io/gorm1.25.7пряма
Gogorm.io/gormv1.31.1пряма
npm@fortawesome/fontawesome-svg-core6.6.0пряма
npm@fortawesome/free-brands-svg-icons6.6.0пряма
npm@fortawesome/free-regular-svg-icons6.6.0пряма
npm@fortawesome/free-solid-svg-icons6.6.0пряма
npm@fortawesome/react-fontawesome0.2.0пряма
npm@hello-pangea/dnd18.0.1пряма
npm@radix-ui/react-alert-dialog1.1.16пряма
npm@radix-ui/react-avatar1.1.12пряма
npm@radix-ui/react-checkbox1.3.4пряма
npm@radix-ui/react-dialog1.1.16пряма
npm@radix-ui/react-dropdown-menu2.1.17пряма
npm@radix-ui/react-icons1.3.2пряма
npm@radix-ui/react-label2.1.9пряма
npm@radix-ui/react-menubar1.1.17пряма
npm@radix-ui/react-popover1.1.16пряма
npm@radix-ui/react-progress1.1.9пряма
npm@radix-ui/react-scroll-area1.2.11пряма
npm@radix-ui/react-select2.3.0пряма
npm@radix-ui/react-separator1.1.9пряма
npm@radix-ui/react-slot1.2.5пряма
npm@radix-ui/react-switch1.3.0пряма
npm@radix-ui/react-tabs1.1.14пряма
npm@radix-ui/react-toast1.2.16пряма
npm@radix-ui/react-tooltip1.2.9пряма
npm@types/mapbox-gl3.4.1пряма
npm@uiw/react-json-view2.0.0-alpha.43пряма
npm@xyflow/react12.11.0пряма
npmaxios1.17.0пряма
npmchrono-node2.9.1пряма
npmclass-variance-authority0.7.1пряма
npmclsx2.1.1пряма
npmcmdk1.1.1пряма
npmcrypto-js4.2.0пряма
npmdate-fns3.6.0пряма
npmdotenv16.6.1пряма
npmecharts5.6.0пряма
npmecharts-gl2.1.0пряма
npmfuse.js7.4.2пряма
npmlucide-react0.453.0пряма
npmmapbox-gl3.24.0пряма
npmmoment2.30.1пряма
npmnext-themes0.2.1пряма
npmreact18.3.1пряма
npmreact-day-picker8.10.2пряма
npmreact-dom18.3.1пряма
npmreact-json-view-lite2.5.0пряма
npmreact-router-dom6.30.4пряма
npmreact-superstore0.1.4пряма
npmreact-use-websocket4.13.0пряма
npmrecharts2.15.4пряма
npmsonner1.7.4пряма
npmtailwind-merge2.6.1пряма
npmtailwindcss-animate1.0.7пряма
npmtypescript-eslint8.61.0пряма
PyPIclickhouse-connect0.8.18пряма
PyPIdotenv0.9.9пряма
PyPIfastapi0.115.14пряма
PyPIgr-ulid1.1.2пряма
PyPIloguru0.7.3пряма
PyPImapache-py3.1.0пряма
PyPInumpy1.26.4пряма
PyPInumpy2.4.6пряма
PyPIpaho-mqtt1.6.1пряма
PyPIpandas3.0.3пряма
PyPIpsycopg2-binary2.9.11пряма
PyPIpyjwt2.12.1пряма
PyPIrequests2.32.5пряма
PyPIsqlalchemy2.0.48пряма
PyPIuvicorn0.34.3пряма
Gogithub.com/andybalholm/brotliv1.2.0непряма
Gogithub.com/aws/aws-sdk-go-v2/aws/protocol/eventstreamv1.7.12непряма
Gogithub.com/aws/aws-sdk-go-v2/credentialsv1.19.21непряма
Gogithub.com/aws/aws-sdk-go-v2/feature/ec2/imdsv1.18.27непряма
Gogithub.com/aws/aws-sdk-go-v2/internal/configsourcesv1.4.27непряма
Gogithub.com/aws/aws-sdk-go-v2/internal/endpoints/v2v2.7.27непряма
Gogithub.com/aws/aws-sdk-go-v2/internal/v4av1.4.28непряма
Gogithub.com/aws/aws-sdk-go-v2/service/internal/accept-encodingv1.13.11непряма
Gogithub.com/aws/aws-sdk-go-v2/service/internal/checksumv1.9.20непряма
Gogithub.com/aws/aws-sdk-go-v2/service/internal/presigned-urlv1.13.27непряма
Gogithub.com/aws/aws-sdk-go-v2/service/internal/s3sharedv1.19.27непряма
Gogithub.com/aws/aws-sdk-go-v2/service/signinv1.1.3непряма
Gogithub.com/aws/aws-sdk-go-v2/service/ssov1.31.1непряма
Gogithub.com/aws/aws-sdk-go-v2/service/ssooidcv1.36.4непряма
Gogithub.com/aws/aws-sdk-go-v2/service/stsv1.43.1непряма
Gogithub.com/aws/smithy-gov1.27.0непряма
Gogithub.com/bytedance/gopkgv0.1.3непряма
Gogithub.com/bytedance/sonic1.11.6непряма
Gogithub.com/bytedance/sonic1.12.6непряма
Gogithub.com/bytedance/sonicv1.15.0непряма
Gogithub.com/bytedance/sonic/loader0.1.1непряма
Gogithub.com/bytedance/sonic/loader0.2.1непряма
Gogithub.com/bytedance/sonic/loaderv0.5.0непряма
Gogithub.com/cespare/xxhash/v2v2.3.0непряма
Gogithub.com/clickhouse/ch-gov0.71.0непряма
Gogithub.com/cloudwego/base64x0.1.4непряма
Gogithub.com/cloudwego/base64xv0.1.6непряма
Gogithub.com/cloudwego/iasm0.2.0непряма
Gogithub.com/decred/dcrd/dcrec/secp256k1/v4v4.3.0непряма
Gogithub.com/gabriel-vasile/mimetype1.4.3непряма
Gogithub.com/gabriel-vasile/mimetype1.4.7непряма
Gogithub.com/gabriel-vasile/mimetypev1.4.12непряма
Gogithub.com/gabriel-vasile/mimetypev1.4.13непряма
Gogithub.com/gin-contrib/sse0.1.0непряма
Gogithub.com/gin-contrib/ssev1.1.0непряма
Gogithub.com/go-faster/cityv1.0.1непряма
Gogithub.com/go-faster/errorsv0.7.1непряма
Gogithub.com/go-playground/localesv0.14.1непряма
Gogithub.com/go-playground/universal-translatorv0.18.1непряма
Gogithub.com/go-playground/validator/v1010.20.0непряма
Gogithub.com/go-playground/validator/v1010.23.0непряма
Gogithub.com/go-playground/validator/v10v10.30.1непряма
Gogithub.com/go-sql-driver/mysql1.7.0непряма
Gogithub.com/goccy/go-json0.10.2непряма
Gogithub.com/goccy/go-json0.10.4непряма
Gogithub.com/goccy/go-jsonv0.10.5непряма
Gogithub.com/goccy/go-yamlv1.19.2непряма
Gogithub.com/google/go-cmp0.5.9непряма
Gogithub.com/jackc/pgpassfilev1.0.0непряма
Gogithub.com/jackc/pgservicefilev0.0.0-20240606120523-5a60cdf6a761непряма
Gogithub.com/jackc/pgx/v5v5.6.0непряма
Gogithub.com/jackc/pgx/v5v5.8.0непряма
Gogithub.com/jackc/puddle/v2v2.2.2непряма
Gogithub.com/jinzhu/inflectionv1.0.0непряма
Gogithub.com/jinzhu/nowv1.1.5непряма
Gogithub.com/json-iterator/gov1.1.12непряма
Gogithub.com/klauspost/compressv1.18.3непряма
Gogithub.com/klauspost/cpuid/v22.2.7непряма
Gogithub.com/klauspost/cpuid/v22.2.9непряма
Gogithub.com/klauspost/cpuid/v2v2.3.0непряма
Gogithub.com/leodido/go-urnv1.4.0непряма
Gogithub.com/lestrrat-go/backoff/v2v2.0.8непряма
Gogithub.com/lestrrat-go/blackmagicv1.0.2непряма
Gogithub.com/lestrrat-go/httpccv1.0.1непряма
Gogithub.com/lestrrat-go/iterv1.0.2непряма
Gogithub.com/lestrrat-go/optionv1.0.1непряма
Gogithub.com/mattn/go-colorablev0.1.13непряма
Gogithub.com/mattn/go-colorablev0.1.14непряма
Gogithub.com/mattn/go-isattyv0.0.20непряма
Gogithub.com/modern-go/concurrentv0.0.0-20180306012644-bacd9c7ef1ddнепряма
Gogithub.com/modern-go/reflect2v1.0.2непряма
Gogithub.com/parquet-go/bitpackv1.0.0непряма
Gogithub.com/parquet-go/jsonlitev1.0.0непряма
Gogithub.com/paulmach/orbv0.12.0непряма
Gogithub.com/pelletier/go-toml/v22.2.2непряма
Gogithub.com/pelletier/go-toml/v22.2.3непряма
Gogithub.com/pelletier/go-toml/v2v2.2.4непряма
Gogithub.com/pierrec/lz4/v4v4.1.25непряма
Gogithub.com/pkg/errorsv0.9.1непряма
Gogithub.com/quic-go/qpackv0.6.0непряма
Gogithub.com/quic-go/quic-gov0.59.0непряма
Gogithub.com/segmentio/asmv1.2.1непряма
Gogithub.com/shopspring/decimalv1.4.0непряма
Gogithub.com/twitchyliquid64/golang-asmv0.15.1непряма
Gogithub.com/twpayne/go-geomv1.6.1непряма
Gogithub.com/ugorji/go/codec1.2.12непряма
Gogithub.com/ugorji/go/codecv1.3.1непряма
Gogo.mongodb.org/mongo-driver/v2v2.5.0непряма
Gogo.opentelemetry.io/otelv1.41.0непряма
Gogo.opentelemetry.io/otel/tracev1.41.0непряма
Gogo.uber.org/multierrv1.10.0непряма
Gogo.uber.org/multierrv1.11.0непряма
Gogo.yaml.in/yaml/v3v3.0.4непряма
Gogolang.org/x/arch0.12.0непряма
Gogolang.org/x/arch0.8.0непряма
Gogolang.org/x/archv0.22.0непряма
Gogolang.org/x/archv0.25.0непряма
Gogolang.org/x/crypto0.23.0непряма
Gogolang.org/x/crypto0.31.0непряма
Gogolang.org/x/cryptov0.48.0непряма
Gogolang.org/x/cryptov0.49.0непряма
Gogolang.org/x/net0.25.0непряма
Gogolang.org/x/net0.33.0непряма
Gogolang.org/x/netv0.51.0непряма
Gogolang.org/x/netv0.52.0непряма
Gogolang.org/x/sync0.1.0непряма
Gogolang.org/x/sync0.10.0непряма
Gogolang.org/x/syncv0.19.0непряма
Gogolang.org/x/syncv0.20.0непряма
Gogolang.org/x/sys0.20.0непряма
Gogolang.org/x/sys0.28.0непряма
Gogolang.org/x/sysv0.41.0непряма
Gogolang.org/x/sysv0.42.0непряма
Gogolang.org/x/text0.15.0непряма
Gogolang.org/x/text0.21.0непряма
Gogolang.org/x/textv0.34.0непряма
Gogolang.org/x/textv0.35.0непряма
Gogoogle.golang.org/protobuf1.34.1непряма
Gogoogle.golang.org/protobuf1.36.1непряма
Gogoogle.golang.org/protobufv1.36.10непряма
Gogoogle.golang.org/protobufv1.36.11непряма
Gogopkg.in/yaml.v33.0.1непряма
npm@alloc/quick-lru5.2.0непряма
npm@babel/runtime7.29.7непряма
npm@esbuild/aix-ppc640.21.5непряма
npm@esbuild/android-arm0.21.5непряма
npm@esbuild/android-arm640.21.5непряма
npm@esbuild/android-x640.21.5непряма
npm@esbuild/darwin-arm640.21.5непряма
npm@esbuild/darwin-x640.21.5непряма
npm@esbuild/freebsd-arm640.21.5непряма
npm@esbuild/freebsd-x640.21.5непряма
npm@esbuild/linux-arm0.21.5непряма
npm@esbuild/linux-arm640.21.5непряма
npm@esbuild/linux-ia320.21.5непряма
npm@esbuild/linux-loong640.21.5непряма
npm@esbuild/linux-mips64el0.21.5непряма
npm@esbuild/linux-ppc640.21.5непряма
npm@esbuild/linux-riscv640.21.5непряма
npm@esbuild/linux-s390x0.21.5непряма
npm@esbuild/linux-x640.21.5непряма
npm@esbuild/netbsd-x640.21.5непряма
npm@esbuild/openbsd-x640.21.5непряма
npm@esbuild/sunos-x640.21.5непряма
npm@esbuild/win32-arm640.21.5непряма
npm@esbuild/win32-ia320.21.5непряма
npm@esbuild/win32-x640.21.5непряма
npm@eslint-community/eslint-utils4.9.1непряма
npm@eslint-community/regexpp4.12.2непряма
npm@eslint/eslintrc2.1.4непряма
npm@eslint/js8.57.1непряма
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@fortawesome/fontawesome-common-types6.6.0непряма
npm@humanwhocodes/config-array0.13.0непряма
npm@humanwhocodes/module-importer1.0.1непряма
npm@humanwhocodes/object-schema2.0.3непряма
npm@jridgewell/gen-mapping0.3.13непряма
npm@jridgewell/resolve-uri3.1.2непряма
npm@jridgewell/sourcemap-codec1.5.5непряма
npm@jridgewell/trace-mapping0.3.31непряма
npm@mapbox/mapbox-gl-supported3.0.0непряма
npm@mapbox/point-geometry1.1.0непряма
npm@mapbox/tiny-sdf2.2.0непряма
npm@mapbox/unitbezier0.0.1непряма
npm@mapbox/vector-tile2.0.5непряма
npm@next/env16.2.7непряма
npm@nodelib/fs.scandir2.1.5непряма
npm@nodelib/fs.stat2.0.5непряма
npm@nodelib/fs.walk1.2.8непряма
npm@radix-ui/number1.1.2непряма
npm@radix-ui/primitive1.1.4непряма
npm@radix-ui/react-arrow1.1.9непряма
npm@radix-ui/react-collection1.1.9непряма
npm@radix-ui/react-compose-refs1.1.3непряма
npm@radix-ui/react-context1.1.4непряма
npm@radix-ui/react-direction1.1.2непряма
npm@radix-ui/react-dismissable-layer1.1.12непряма
npm@radix-ui/react-focus-guards1.1.4непряма
npm@radix-ui/react-focus-scope1.1.9непряма
npm@radix-ui/react-id1.1.2непряма
npm@radix-ui/react-menu2.1.17непряма
npm@radix-ui/react-popper1.3.0непряма
npm@radix-ui/react-portal1.1.11непряма
npm@radix-ui/react-presence1.1.6непряма
npm@radix-ui/react-primitive2.1.5непряма
npm@radix-ui/react-roving-focus1.1.12непряма
npm@radix-ui/react-use-callback-ref1.1.2непряма
npm@radix-ui/react-use-controllable-state1.2.3непряма
npm@radix-ui/react-use-effect-event0.0.3непряма
npm@radix-ui/react-use-escape-keydown1.1.2непряма
npm@radix-ui/react-use-is-hydrated0.1.1непряма
npm@radix-ui/react-use-layout-effect1.1.2непряма
npm@radix-ui/react-use-previous1.1.2непряма
npm@radix-ui/react-use-rect1.1.2непряма
npm@radix-ui/react-use-size1.1.2непряма
npm@radix-ui/react-visually-hidden1.2.5непряма
npm@radix-ui/rect1.1.2непряма
npm@remix-run/router1.23.3непряма
npm@rolldown/pluginutils1.0.0-beta.27непряма
npm@rollup/rollup-android-arm-eabi4.61.1непряма
npm@rollup/rollup-android-arm644.61.1непряма
npm@rollup/rollup-darwin-arm644.61.1непряма
npm@rollup/rollup-darwin-x644.61.1непряма
npm@rollup/rollup-freebsd-arm644.61.1непряма
npm@rollup/rollup-freebsd-x644.61.1непряма
npm@rollup/rollup-linux-arm-gnueabihf4.61.1непряма
npm@rollup/rollup-linux-arm-musleabihf4.61.1непряма
npm@rollup/rollup-linux-arm64-gnu4.61.1непряма
npm@rollup/rollup-linux-arm64-musl4.61.1непряма
npm@rollup/rollup-linux-loong64-gnu4.61.1непряма
npm@rollup/rollup-linux-loong64-musl4.61.1непряма
npm@rollup/rollup-linux-ppc64-gnu4.61.1непряма
npm@rollup/rollup-linux-ppc64-musl4.61.1непряма
npm@rollup/rollup-linux-riscv64-gnu4.61.1непряма
npm@rollup/rollup-linux-riscv64-musl4.61.1непряма
npm@rollup/rollup-linux-s390x-gnu4.61.1непряма
npm@rollup/rollup-linux-x64-gnu4.61.1непряма
npm@rollup/rollup-linux-x64-musl4.61.1непряма
npm@rollup/rollup-openbsd-x644.61.1непряма
npm@rollup/rollup-openharmony-arm644.61.1непряма
npm@rollup/rollup-win32-arm64-msvc4.61.1непряма
npm@rollup/rollup-win32-ia32-msvc4.61.1непряма
npm@rollup/rollup-win32-x64-gnu4.61.1непряма
npm@rollup/rollup-win32-x64-msvc4.61.1непряма
npm@swc/core1.15.40непряма
npm@swc/core-darwin-arm641.15.40непряма
npm@swc/core-darwin-x641.15.40непряма
npm@swc/core-linux-arm-gnueabihf1.15.40непряма
npm@swc/core-linux-arm64-gnu1.15.40непряма
npm@swc/core-linux-arm64-musl1.15.40непряма
npm@swc/core-linux-ppc64-gnu1.15.40непряма
npm@swc/core-linux-s390x-gnu1.15.40непряма
npm@swc/core-linux-x64-gnu1.15.40непряма
npm@swc/core-linux-x64-musl1.15.40непряма
npm@swc/core-win32-arm64-msvc1.15.40непряма
npm@swc/core-win32-ia32-msvc1.15.40непряма
npm@swc/core-win32-x64-msvc1.15.40непряма
npm@swc/counter0.1.3непряма
npm@swc/helpers0.5.15непряма
npm@swc/types0.1.26непряма
npm@types/crypto-js4.2.2непряма
npm@types/d3-array3.2.2непряма
npm@types/d3-color3.1.3непряма
npm@types/d3-drag3.0.7непряма
npm@types/d3-ease3.0.2непряма
npm@types/d3-interpolate3.0.4непряма
npm@types/d3-path3.1.1непряма
npm@types/d3-scale4.0.9непряма
npm@types/d3-selection3.0.11непряма
npm@types/d3-shape3.1.8непряма
npm@types/d3-time3.0.4непряма
npm@types/d3-timer3.0.2непряма
npm@types/d3-transition3.0.9непряма
npm@types/d3-zoom3.0.8непряма
npm@types/estree1.0.9непряма
npm@types/geojson7946.0.16непряма
npm@types/geojson-vt3.2.5непряма
npm@types/json-schema7.0.15непряма
npm@types/leaflet1.9.21непряма
npm@types/node20.19.42непряма
npm@types/pbf3.0.5непряма
npm@types/prop-types15.7.15непряма
npm@types/react18.3.31непряма
npm@types/react-dom18.3.7непряма
npm@types/semver7.7.1непряма
npm@types/supercluster7.1.3непряма
npm@types/use-sync-external-store0.0.6непряма
npm@typescript-eslint/eslint-plugin6.21.0непряма
npm@typescript-eslint/eslint-plugin8.61.0непряма
npm@typescript-eslint/parser6.21.0непряма
npm@typescript-eslint/parser8.61.0непряма
npm@typescript-eslint/project-service8.61.0непряма
npm@typescript-eslint/scope-manager6.21.0непряма
npm@typescript-eslint/scope-manager8.61.0непряма
npm@typescript-eslint/tsconfig-utils8.61.0непряма
npm@typescript-eslint/type-utils6.21.0непряма
npm@typescript-eslint/type-utils8.61.0непряма
npm@typescript-eslint/types6.21.0непряма
npm@typescript-eslint/types8.61.0непряма
npm@typescript-eslint/typescript-estree6.21.0непряма
npm@typescript-eslint/typescript-estree8.61.0непряма
npm@typescript-eslint/utils6.21.0непряма
npm@typescript-eslint/utils8.61.0непряма
npm@typescript-eslint/visitor-keys6.21.0непряма
npm@typescript-eslint/visitor-keys8.61.0непряма
npm@ungap/structured-clone1.3.1непряма
npm@vitejs/plugin-react-swc3.11.0непряма
npm@xyflow/system0.0.77непряма
npmacorn8.16.0непряма
npmacorn-jsx5.3.2непряма
npmagent-base6.0.2непряма
npmajv6.15.0непряма
npmansi-regex5.0.1непряма
npmansi-styles4.3.0непряма
npmany-promise1.3.0непряма
npmanymatch3.1.3непряма
npmarg5.0.2непряма
npmargparse2.0.1непряма
npmaria-hidden1.2.6непряма
npmarray-union2.1.0непряма
npmasynckit0.4.0непряма
npmautoprefixer10.5.0непряма
npmbalanced-match1.0.2непряма
npmbalanced-match4.0.4непряма
npmbaseline-browser-mapping2.10.34непряма
npmbinary-extensions2.3.0непряма
npmbrace-expansion1.1.15непряма
npmbrace-expansion2.1.1непряма
npmbrace-expansion5.0.6непряма
npmbraces3.0.3непряма
npmbrowserslist4.28.2непряма
npmcall-bind-apply-helpers1.0.2непряма
npmcallsites3.1.0непряма
npmcamelcase-css2.0.1непряма
npmcaniuse-lite1.0.30001797непряма
npmchalk4.1.2непряма
npmcheap-ruler4.0.0непряма
npmchokidar3.6.0непряма
npmclasscat5.0.5непряма
npmclaygl1.3.0непряма
npmclient-only0.0.1непряма
npmcolor-convert2.0.1непряма
npmcolor-name1.1.4непряма
npmcombined-stream1.0.8непряма
npmcommander4.1.1непряма
npmconcat-map0.0.1непряма
npmcross-spawn7.0.6непряма
npmcss-box-model1.2.1непряма
npmcsscolorparser1.0.3непряма
npmcssesc3.0.0непряма
npmcsstype3.2.3непряма
npmd3-array3.2.4непряма
npmd3-color3.1.0непряма
npmd3-dispatch3.0.1непряма
npmd3-drag3.0.0непряма
npmd3-ease3.0.1непряма
npmd3-format3.1.2непряма
npmd3-interpolate3.0.1непряма
npmd3-path3.1.0непряма
npmd3-scale4.0.2непряма
npmd3-selection3.0.0непряма
npmd3-shape3.2.0непряма
npmd3-time3.1.0непряма
npmd3-time-format4.1.0непряма
npmd3-timer3.0.1непряма
npmd3-transition3.0.1непряма
npmd3-zoom3.0.0непряма
npmdebug4.4.3непряма
npmdecimal.js-light2.5.1непряма
npmdeep-is0.1.4непряма
npmdelayed-stream1.0.0непряма
npmdetect-node-es1.1.0непряма
npmdidyoumean1.2.2непряма
npmdir-glob3.0.1непряма
npmdlv1.1.3непряма
npmdoctrine3.0.0непряма
npmdom-helpers5.2.1непряма
npmdunder-proto1.0.1непряма
npmearcut3.0.2непряма
npmelectron-to-chromium1.5.369непряма
npmes-define-property1.0.1непряма
npmes-errors1.3.0непряма
npmes-object-atoms1.1.2непряма
npmes-set-tostringtag2.1.0непряма
npmesbuild0.21.5непряма
npmescalade3.2.0непряма
npmescape-string-regexp4.0.0непряма
npmeslint8.57.1непряма
npmeslint-plugin-react-hooks4.6.2непряма
npmeslint-plugin-react-refresh0.4.26непряма
npmeslint-scope7.2.2непряма
npmeslint-visitor-keys3.4.3непряма
npmeslint-visitor-keys5.0.1непряма
npmespree9.6.1непряма
npmesquery1.7.0непряма
npmesrecurse4.3.0непряма
npmestraverse5.3.0непряма
npmesutils2.0.3непряма
npmeventemitter34.0.7непряма
npmfast-deep-equal3.1.3непряма
npmfast-equals5.4.0непряма
npmfast-glob3.3.3непряма
npmfast-json-stable-stringify2.1.0непряма
npmfast-levenshtein2.0.6непряма
npmfastq1.20.1непряма
npmfdir6.5.0непряма
npmfile-entry-cache6.0.1непряма
npmfill-range7.1.1непряма
npmfind-up5.0.0непряма
npmflat-cache3.2.0непряма
npmflatted3.4.2непряма
npmfollow-redirects1.16.0непряма
npmform-data4.0.5непряма
npmfraction.js5.3.4непряма
npmfs.realpath1.0.0непряма
npmfsevents2.3.3непряма
npmfunction-bind1.1.2непряма
npmgeojson-vt4.0.3непряма
npmget-intrinsic1.3.0непряма
npmget-nonce1.0.1непряма
npmget-proto1.0.1непряма
npmgl-matrix3.4.4непряма
npmglob7.2.3непряма
npmglob-parent5.1.2непряма
npmglob-parent6.0.2непряма
npmglobals13.24.0непряма
npmglobby11.1.0непряма
npmgopd1.2.0непряма
npmgraphemer1.4.0непряма
npmhas-flag4.0.0непряма
npmhas-symbols1.1.0непряма
npmhas-tostringtag1.0.2непряма
npmhasown2.0.4непряма
npmhttps-proxy-agent5.0.1непряма
npmignore5.3.2непряма
npmignore7.0.5непряма
npmimport-fresh3.3.1непряма
npmimurmurhash0.1.4непряма
npminflight1.0.6непряма
npminherits2.0.4непряма
npminternmap2.0.3непряма
npmis-binary-path2.1.0непряма
npmis-core-module2.16.2непряма
npmis-extglob2.1.1непряма
npmis-glob4.0.3непряма
npmis-number7.0.0непряма
npmis-path-inside3.0.3непряма
npmisexe2.0.0непряма
npmjiti1.21.7непряма
npmjs-tokens4.0.0непряма
npmjs-yaml4.2.0непряма
npmjson-buffer3.0.1непряма
npmjson-schema-traverse0.4.1непряма
npmjson-stable-stringify-without-jsonify1.0.1непряма
npmkdbush4.1.0непряма
npmkeyv4.5.4непряма
npmleaflet1.9.4непряма
npmlevn0.4.1непряма
npmlilconfig3.1.3непряма
npmlines-and-columns1.2.4непряма
npmlocate-path6.0.0непряма
npmlodash4.18.1непряма
npmlodash.merge4.6.2непряма
npmloose-envify1.4.0непряма
npmmartinez-polygon-clipping0.8.1непряма
npmmath-intrinsics1.1.0непряма
npmmerge21.4.1непряма
npmmicromatch4.0.8непряма
npmmime-db1.52.0непряма
npmmime-types2.1.35непряма
npmminimatch10.2.5непряма
npmminimatch3.1.5непряма
npmminimatch9.0.3непряма
npmms2.1.3непряма
npmmurmurhash-js1.0.0непряма
npmmz2.7.0непряма
npmnanoid3.3.12непряма
npmnatural-compare1.4.0непряма
npmnext16.2.7непряма
npmnode-releases2.0.47непряма
npmnormalize-path3.0.0непряма
npmobject-assign4.1.1непряма
npmobject-hash3.0.0непряма
npmonce1.4.0непряма
npmoptionator0.9.4непряма
npmp-limit3.1.0непряма
npmp-locate5.0.0непряма
npmparent-module1.0.1непряма
npmpath-exists4.0.0непряма
npmpath-is-absolute1.0.1непряма
npmpath-key3.1.1непряма
npmpath-parse1.0.7непряма
npmpath-type4.0.0непряма
npmpbf4.0.2непряма
npmpicocolors1.1.1непряма
npmpicomatch2.3.2непряма
npmpicomatch4.0.4непряма
npmpify2.3.0непряма
npmpirates4.0.7непряма
npmpostcss8.4.31непряма
npmpostcss8.5.15непряма
npmpostcss-import15.1.0непряма
npmpostcss-js4.1.0непряма
npmpostcss-load-config6.0.1непряма
npmpostcss-nested6.2.0непряма
npmpostcss-selector-parser6.1.2непряма
npmpostcss-value-parser4.2.0непряма
npmpotpack2.1.0непряма
npmprelude-ls1.2.1непряма
npmprettier3.8.3непряма
npmprettier-plugin-tailwindcss0.5.14непряма
npmprop-types15.8.1непряма
npmprotocol-buffers-schema3.6.1непряма
npmproxy-from-env2.1.0непряма
npmpunycode2.3.1непряма
npmqueue-microtask1.2.3непряма
npmquickselect3.0.0непряма
npmraf-schd4.0.3непряма
npmreact-is16.13.1непряма
npmreact-is18.3.1непряма
npmreact-redux9.3.0непряма
npmreact-remove-scroll2.7.2непряма
npmreact-remove-scroll-bar2.3.8непряма
npmreact-router6.30.4непряма
npmreact-smooth4.0.4непряма
npmreact-style-singleton2.2.3непряма
npmreact-transition-group4.4.5непряма
npmread-cache1.0.0непряма
npmreaddirp3.6.0непряма
npmrecharts-scale0.4.5непряма
npmredux5.0.1непряма
npmresolve1.22.12непряма
npmresolve-from4.0.0непряма
npmresolve-protobuf-schema2.1.0непряма
npmreusify1.1.0непряма
npmrimraf3.0.2непряма
npmrobust-predicates2.0.4непряма
npmrollup4.61.1непряма
npmrun-parallel1.2.0непряма
npmscheduler0.23.2непряма
npmsemver7.8.3непряма
npmshebang-command2.0.0непряма
npmshebang-regex3.0.0непряма
npmslash3.0.0непряма
npmsource-map-js1.2.1непряма
npmsplaytree0.1.4непряма
npmstrip-ansi6.0.1непряма
npmstrip-json-comments3.1.1непряма
npmstyled-jsx5.1.6непряма
npmsucrase3.35.1непряма
npmsupercluster8.0.1непряма
npmsupports-color7.2.0непряма
npmsupports-preserve-symlinks-flag1.0.0непряма
npmtailwindcss3.4.19непряма
npmtext-table0.2.0непряма
npmthenify3.3.1непряма
npmthenify-all1.6.0непряма
npmtiny-invariant1.3.3непряма
npmtinyglobby0.2.17непряма
npmtinyqueue3.0.0непряма
npmto-regex-range5.0.1непряма
npmts-api-utils1.4.3непряма
npmts-api-utils2.5.0непряма
npmts-interface-checker0.1.13непряма
npmtslib2.3.0непряма
npmtslib2.8.1непряма
npmtype-check0.4.0непряма
npmtype-fest0.20.2непряма
npmtypescript5.9.3непряма
npmundici-types6.21.0непряма
npmupdate-browserslist-db1.2.3непряма
npmuri-js4.4.1непряма
npmuse-callback-ref1.3.3непряма
npmuse-sidecar1.1.3непряма
npmuse-sync-external-store1.6.0непряма
npmutil-deprecate1.0.2непряма
npmvictory-vendor36.9.2непряма
npmvite5.4.21непряма
npmwhich2.0.2непряма
npmword-wrap1.2.5непряма
npmwrappy1.0.2непряма
npmyocto-queue0.1.0непряма
npmzrender5.6.1непряма
npmzustand4.5.7непряма
PyPIannotated-types0.7.0непряма
PyPIanyio4.12.1непряма
PyPIcertifi2026.2.25непряма
PyPIcffi2.0.0непряма
PyPIcharset-normalizer3.4.5непряма
PyPIclick8.3.1непряма
PyPIcolorama0.4.6непряма
PyPIcoverage7.4.4непряма
PyPIcryptography46.0.5непряма
PyPIexceptiongroup1.2.0непряма
PyPIgreenlet3.3.2непряма
PyPIh110.16.0непряма
PyPIhttpcore1.0.9непряма
PyPIhttpx0.28.1непряма
PyPIidna3.11непряма
PyPIiniconfig2.0.0непряма
PyPIiniconfig2.3.0непряма
PyPIlz44.4.5непряма
PyPIpackaging24.0непряма
PyPIpackaging26.2непряма
PyPIpluggy1.4.0непряма
PyPIpluggy1.6.0непряма
PyPIpycparser3.0непряма
PyPIpydantic2.12.5непряма
PyPIpydantic-core2.41.5непряма
PyPIpygments2.20.0непряма
PyPIpytest8.1.1непряма
PyPIpytest8.4.2непряма
PyPIpytest-cov5.0.0непряма
PyPIpython-dateutil2.9.0.post0непряма
PyPIpython-dotenv1.2.2непряма
PyPIpytz2026.1.post1непряма
PyPIquery3.9.0непряма
PyPIsix1.17.0непряма
PyPIstarlette0.46.2непряма
PyPItomli2.0.1непряма
PyPItyping-extensions4.15.0непряма
PyPItyping-inspection0.4.2непряма
PyPItzdata2026.2непряма
PyPIurllib32.6.3непряма
PyPIwin32-setctime1.2.0непряма
PyPIzstandard0.25.0непряма
Сповіщення про залежності 43

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

ПакетВерсіяЗв'язокКритичністьСповіщеньВиправлено в
cryptography46.0.5непрямакритична548.0.1
github.com/jackc/pgx/v5v5.6.0непрямакритична65.9.2
github.com/jackc/pgx/v5v5.8.0непрямакритична65.9.2
golang.org/x/crypto0.23.0непрямакритична360.52.0
golang.org/x/crypto0.31.0непрямакритична340.52.0
golang.org/x/cryptov0.48.0непрямакритична270.52.0
golang.org/x/cryptov0.49.0непрямакритична270.52.0
axios1.17.0прямависока101.18.0
github.com/golang-jwt/jwt/v4v4.5.1прямависока25.2.2
pyjwt2.12.1прямависока92.13.0
brace-expansion1.1.15непрямависока15.0.7
brace-expansion2.1.1непрямависока15.0.7
brace-expansion5.0.6непрямависока15.0.7
click8.3.1непрямависока18.3.3
form-data4.0.5непрямависока14.0.6
js-yaml4.2.0непрямависока14.3.0
minimatch9.0.3непрямависока310.2.3
next16.2.7непрямависока916.2.11
starlette0.46.2непрямависока140.49.1
vite5.4.21непрямависока38.0.16
echarts5.6.0прямапомірна16.1.0
github.com/eclipse/paho.mqtt.golang1.4.3прямапомірна21.5.1
github.com/eclipse/paho.mqtt.golang1.5.0прямапомірна21.5.1
requests2.32.5прямапомірна22.33.0
esbuild0.21.5непрямапомірна10.25.0
github.com/quic-go/quic-gov0.59.0непрямапомірна20.59.1
golang.org/x/net0.25.0непрямапомірна161.26.3
golang.org/x/net0.33.0непрямапомірна151.26.3
golang.org/x/netv0.51.0непрямапомірна91.26.3
golang.org/x/netv0.52.0непрямапомірна91.26.3
idna3.11непрямапомірна23.15
postcss8.4.31непрямапомірна18.5.10
pytest8.1.1непрямапомірна29.0.3
pytest8.4.2непрямапомірна29.0.3
golang.org/x/sys0.20.0непряманевідома10.44.0
golang.org/x/sys0.28.0непряманевідома10.44.0
golang.org/x/sysv0.41.0непряманевідома10.44.0
golang.org/x/sysv0.42.0непряманевідома10.44.0
golang.org/x/text0.15.0непряманевідома10.39.0
golang.org/x/text0.21.0непряманевідома10.39.0
golang.org/x/textv0.34.0непряманевідома10.39.0
golang.org/x/textv0.35.0непряманевідома10.39.0
urllib32.6.3непряманевідома4

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

Звіт у форматі JSON машиночитний
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 35056,
      "has_wiki": false,
      "homepage": "https://mapache.gauchoracing.com",
      "languages": {
        "Go": 506966,
        "CSS": 6794,
        "HTML": 1001,
        "Shell": 16197,
        "Python": 138850,
        "Makefile": 581,
        "Dockerfile": 3681,
        "JavaScript": 3078,
        "TypeScript": 815115
      },
      "pushed_at": "2026-06-22T18:32:27Z",
      "created_at": "2023-11-07T04:12:45Z",
      "owner_type": "Organization",
      "updated_at": "2026-06-22T18:32:30Z",
      "description": "Gaucho Racing's bespoke telemetry and data analytics platform.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript",
        "Go"
      ]
    },
    "owner": {
      "blog": "https://gauchoracing.com/",
      "name": "Gaucho Racing",
      "type": "Organization",
      "login": "Gaucho-Racing",
      "company": null,
      "location": "United States of America",
      "followers": 46,
      "avatar_url": "https://avatars.githubusercontent.com/u/105606238?v=4",
      "created_at": "2022-05-15T19:06:10Z",
      "is_verified": null,
      "public_repos": 72,
      "account_age_days": 1529
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v3.9.6",
          "kind": "patch",
          "published_at": "2026-06-20T15:14:24Z"
        },
        {
          "tag": "v3.9.5",
          "kind": "patch",
          "published_at": "2026-06-20T14:40:05Z"
        },
        {
          "tag": "v3.9.4",
          "kind": "patch",
          "published_at": "2026-06-20T05:44:27Z"
        },
        {
          "tag": "v3.9.3",
          "kind": "patch",
          "published_at": "2026-06-20T05:13:52Z"
        },
        {
          "tag": "v3.9.2",
          "kind": "patch",
          "published_at": "2026-06-19T21:51:36Z"
        },
        {
          "tag": "v3.9.1",
          "kind": "patch",
          "published_at": "2026-06-19T21:30:38Z"
        },
        {
          "tag": "v3.9.0",
          "kind": "minor",
          "published_at": "2026-06-17T23:47:12Z"
        },
        {
          "tag": "mapache-go/v3.5.0",
          "kind": "other",
          "published_at": "2026-06-17T18:15:30Z"
        },
        {
          "tag": "v3.8.0",
          "kind": "minor",
          "published_at": "2026-06-15T22:44:44Z"
        },
        {
          "tag": "v3.7.0",
          "kind": "minor",
          "published_at": "2026-06-12T03:06:36Z"
        },
        {
          "tag": "v3.6.1",
          "kind": "patch",
          "published_at": "2026-06-07T05:08:55Z"
        },
        {
          "tag": "v3.6.0",
          "kind": "minor",
          "published_at": "2026-06-07T01:20:26Z"
        },
        {
          "tag": "v3.5.1",
          "kind": "patch",
          "published_at": "2026-06-05T22:02:51Z"
        },
        {
          "tag": "v3.5.0",
          "kind": "minor",
          "published_at": "2026-06-05T18:05:50Z"
        },
        {
          "tag": "v3.4.7",
          "kind": "patch",
          "published_at": "2026-06-05T10:04:06Z"
        },
        {
          "tag": "v3.4.6",
          "kind": "patch",
          "published_at": "2026-06-05T09:45:58Z"
        },
        {
          "tag": "v3.4.5",
          "kind": "patch",
          "published_at": "2026-06-05T07:07:47Z"
        },
        {
          "tag": "v3.4.4",
          "kind": "patch",
          "published_at": "2026-06-05T06:28:37Z"
        },
        {
          "tag": "mapache-go/v3.4.0",
          "kind": "other",
          "published_at": "2026-06-05T01:19:42Z"
        },
        {
          "tag": "v3.4.3",
          "kind": "patch",
          "published_at": "2026-06-04T11:59:20Z"
        },
        {
          "tag": "v3.4.2",
          "kind": "patch",
          "published_at": "2026-06-04T11:44:38Z"
        },
        {
          "tag": "v3.4.1",
          "kind": "patch",
          "published_at": "2026-06-04T11:20:38Z"
        },
        {
          "tag": "v3.4.0",
          "kind": "minor",
          "published_at": "2026-06-04T10:19:05Z"
        },
        {
          "tag": "v3.3.0",
          "kind": "minor",
          "published_at": "2026-06-03T10:21:48Z"
        },
        {
          "tag": "v3.2.0",
          "kind": "minor",
          "published_at": "2026-06-01T04:52:04Z"
        },
        {
          "tag": "v3.1.6",
          "kind": "patch",
          "published_at": "2026-06-01T02:25:18Z"
        },
        {
          "tag": "v3.1.5",
          "kind": "patch",
          "published_at": "2026-05-30T21:33:56Z"
        },
        {
          "tag": "v3.1.4",
          "kind": "patch",
          "published_at": "2026-05-30T08:51:03Z"
        },
        {
          "tag": "v3.1.3",
          "kind": "patch",
          "published_at": "2026-05-30T04:23:08Z"
        },
        {
          "tag": "v3.1.2",
          "kind": "patch",
          "published_at": "2026-05-30T03:40:14Z"
        },
        {
          "tag": "mapache-go/v3.3.0",
          "kind": "other",
          "published_at": "2026-05-29T22:19:57Z"
        },
        {
          "tag": "v3.1.1",
          "kind": "patch",
          "published_at": "2026-05-29T21:06:15Z"
        },
        {
          "tag": "v3.1.0",
          "kind": "minor",
          "published_at": "2026-05-26T07:54:50Z"
        },
        {
          "tag": "v3.0.9",
          "kind": "patch",
          "published_at": "2026-05-26T07:20:12Z"
        },
        {
          "tag": "v3.0.8",
          "kind": "patch",
          "published_at": "2026-05-24T23:56:15Z"
        },
        {
          "tag": "v3.0.7",
          "kind": "patch",
          "published_at": "2026-05-24T03:49:02Z"
        },
        {
          "tag": "v3.0.6",
          "kind": "patch",
          "published_at": "2026-05-14T03:55:58Z"
        },
        {
          "tag": "v3.0.5",
          "kind": "patch",
          "published_at": "2026-05-14T03:12:39Z"
        },
        {
          "tag": "v3.0.4",
          "kind": "patch",
          "published_at": "2026-05-06T08:05:46Z"
        },
        {
          "tag": "mapache-go/v3.2.0",
          "kind": "other",
          "published_at": "2026-05-06T08:01:49Z"
        },
        {
          "tag": "mapache-go/v3.1.0",
          "kind": "other",
          "published_at": "2026-05-06T07:59:00Z"
        },
        {
          "tag": "mapache-py/v3.1.0",
          "kind": "other",
          "published_at": "2026-05-06T07:56:53Z"
        },
        {
          "tag": "v3.0.3",
          "kind": "patch",
          "published_at": "2026-05-06T07:52:30Z"
        },
        {
          "tag": "v3.0.2",
          "kind": "patch",
          "published_at": "2026-05-06T07:15:31Z"
        },
        {
          "tag": "v3.0.1",
          "kind": "patch",
          "published_at": "2026-03-13T23:47:05Z"
        },
        {
          "tag": "v3.0.0",
          "kind": "major",
          "published_at": "2026-03-13T23:13:52Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "a64a619db07d20a730017f29ebb5e46acc4cbb7d",
          "body": "feat(gr26/ingest): register DCDC status message decoder",
          "is_bot": false,
          "headline": "Merge pull request #218 from Gaucho-Racing/jake/dcdc",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-22T18:32:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b4bce807a524aacd8f265a17df5b950c3ae1ad8f",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.6",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T15:14:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11eaee524228e2296a34b11f659eaa9c0fed3655",
          "body": null,
          "is_bot": false,
          "headline": "fix(widgets): pin Mapbox basemap to light-v11",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T15:12:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "026a8b80739be33526ac40752c5c9d8c55e4e773",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.5",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T14:40:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe1771401101b53327c5b4de390155238522161b",
          "body": "- index.css gets a real light palette under :root (shadcn defaults);\n  .dark holds the existing dark palette. Both share the gr-pink /\n  gr-purple gradient accents so the brand reads the same in either\n  mode.\n- ThemeProvider (next-themes) mounted with defaultTheme=\"dark\", class\n  attribute, and a `\n[…]\n follow-up): the ~45 hardcoded color\nclasses scattered through pages (bg-neutral-9xx, text-white, etc.)\nthat don't read CSS vars. Most look fine on either theme; the few\nthat don't can be swept later.",
          "is_bot": false,
          "headline": "feat(settings): light-mode toggle",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T14:39:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e20172d21a088f6a08218cbbedb0a62fbecd926d",
          "body": "…ce-widget\n\nfeat(dashboard): add battery endurance tracker widget",
          "is_bot": false,
          "headline": "Merge pull request #219 from Gaucho-Racing/jacobjurek/battery-enduran…",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T14:36:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "693c748d439008f5c550a0399c73083adc9d0515",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into jacobjurek/battery-endurance-widget",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T14:35:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2add640e3790373d76f675d5f5f678b76aabfba5",
          "body": null,
          "is_bot": false,
          "headline": "fix(config): hardcode public Mapbox token so maps work out of the box",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T14:34:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ec26ad1d60b50ceafaf6aa657f0df7a5c6aad599",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into jacobjurek/battery-endurance-widget",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T14:30:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "17e4a5c728bd763e71c49696771c13eb8c52845a",
          "body": "…tor-write\n\nfix(vehicle/sessions): upsert via ON CONFLICT so editor saves persist",
          "is_bot": false,
          "headline": "Merge pull request #216 from Gaucho-Racing/jacobjurek/fix-session-edi…",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T14:29:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b75c0f9e95adaca141705a431cdcc869eaf42404",
          "body": "Lap-by-lap SOC, min cell voltage, and max cell temperature with boundary projections (laps until >60C, <20% SOC, 0% SOC), per-lap deltas/% change, event statistics, and a 0-35 min voltage/temperature graph with regression projection lines. Manual lap capture persists to localStorage so the table survives page refresh and Sentinel token expiry. Registered as a full-width gr26 BCU widget.",
          "is_bot": false,
          "headline": "feat(dashboard): add battery endurance tracker widget",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T14:28:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1920fa1768249c8c5157cbb23622305cacc9b99d",
          "body": "Map msgID 0x012 (GRCAN node 0x2A, frame 0x2A01202) to DCDCStatus so DCDC\nframes decode into dcdc_* signals instead of being stored as unknown_can_id.",
          "is_bot": false,
          "headline": "feat(gr26/ingest): register DCDC status message decoder",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T13:57:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d6af05c57c946d8453f0d05d75a611c5366ae547",
          "body": null,
          "is_bot": false,
          "headline": "fix(widgets): graceful fallback when MAPBOX_ACCESS_TOKEN is empty",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T12:49:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b074e4b8e241273b135c6521ba099d25cdf0339c",
          "body": "Matches the renderer the gr24 MapWidget already uses — same access\ntoken, same `mapbox/dark-v10` style, same [lng, lat] coordinate\nordering. The marker stays the same pink pulse styled via inline CSS\n(no Leaflet divIcon equivalent on Mapbox; you hand it a DOM element\ndirectly). flyTo's cubic ease is swapped for the cheaper easeTo so\nthe marker glides on every sample without re-zooming.\n\nleaflet + @types/leaflet drop out of package.json — DgpsPositionWidget\nwas the only consumer.",
          "is_bot": false,
          "headline": "feat(widgets/gr26): port DgpsPositionWidget from Leaflet to Mapbox",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T12:44:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "042f0c3c9d4830d6680246bf04534b2196d86c01",
          "body": "feat(signals): Modify menu + dotted-field grammar",
          "is_bot": false,
          "headline": "Merge pull request #215 from Gaucho-Racing/bk1031/signals-modify-menu",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T11:48:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "01782b6905d340b0b539aa50025d8218ae4f0145",
          "body": "The chip-builder row already carries its own inline-editable MQL line\nat the bottom, so the global mode swap to a single-textarea editor was\nduplicate surface. Removes the toggle button + the `editAsMql` state +\nthe `MqlEditor` import. The `textToQueries` helper from the same module\nis still used elsewhere so the module itself stays.",
          "is_bot": false,
          "headline": "feat(signals): drop \"Edit as MQL\" toggle",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T11:37:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2a1b1259405593d6fc1b2ea46b5605288da869fa",
          "body": "The session-editor save path (SaveSessionAnalysisAndLaps) caught a\nduplicate-key error and retried as an UPDATE inside an explicit\ntransaction. Postgres aborts the whole transaction on a constraint\nviolation, so the fallback UPDATE always failed and every save 500'd.\nThe session row always exists by\n[…]\nrts it first), so the INSERT always conflicted.\n\nReplace the insert-then-update pattern in CreateSession and\nSaveSessionAnalysisAndLaps with a single ON CONFLICT upsert, matching\nCreateVehicle/config.",
          "is_bot": false,
          "headline": "fix(vehicle/sessions): upsert via ON CONFLICT so editor saves persist",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T10:31:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8723731dd47cb7e0cac9c15ce966cc1a6ee6ce32",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.4",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:44:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "43de287e35c1e11a9188ea842b047c2da0a2dd50",
          "body": "VITE_SENTINEL_CLIENT_ID is a Vite compile-time env, but\ndashboard.yml never injects it as a build-arg, so the prod bundle\nships with the empty-string fallback and the OAuth URL renders\nwith client_id=, which Sentinel rejects.\n\nMirror the BACKEND_URL pattern (also in this file): keep the env\noverride for dev, default to the prod client_id. Client_id isn't\nsecret -- it's visible in the OAuth authorize URL on every login.",
          "is_bot": false,
          "headline": "fix(dashboard): hardcode Sentinel v5 prod client_id fallback",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:40:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e89428f9cfc4ae5c463bcd26f9aa881dab05dfb",
          "body": "Widget header used to carry 4-5 icon buttons crammed in the top-right\n(chart-type, optional map toggle, optional export, hide, delete) with\nmixed semantics — chart content vs widget operations competing for the\nsame corner.\n\n- Widget-level operations collapse into a single MoreVertical kebab:\n  Expo\n[…]\n canvas. Conceptually it's a\n  chart-content choice (what to draw), not a widget operation, so it\n  belongs with the chart-content controls.\n- Header now reads \"title / metadata · ⋮\" — Datadog-shaped.",
          "is_bot": false,
          "headline": "feat(signals): kebab menu in header, chart-type moves above canvas",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:38:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4ca8c4f404f03330a1a856a41404e54ce1ba44ee",
          "body": null,
          "is_bot": false,
          "headline": "fix(signals): \"+ Modifier\" text button instead of Σ icon",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:19:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "836e57a195f696f303698227236929e48c140d04",
          "body": "User-facing renames; internal Reject* type names stay the same since\nthey describe the AST shape (sigma comparison, value range, boolean\ntree) regardless of what the keyword is called.\n\n- MQL grammar: `.reject(...)` becomes `.filter(...)` in both parsers\n  and the serializer. Error messages updated \n[…]\nclause. The chip cluster itself is what selects signals\n  by name, so `signal` is the more direct label.\n\nDocstring examples updated to the new keywords + the dotted-field\ngrammar that landed earlier.",
          "is_bot": false,
          "headline": "fix(signals): rename .reject→.filter; signal-name button → \"+ signal\"",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:16:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ae1ce9dcb99093c7ae0551cfc2d888c71e68447c",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.3",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T05:13:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca282e11c15175f53b972959e74613b307c45611",
          "body": null,
          "is_bot": false,
          "headline": "fix(signals): drop redundant \"name is\" from filter chip",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:04:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2407c7162827ce3d2d84f3a5b1d124db357b3855",
          "body": null,
          "is_bot": false,
          "headline": "fix(signals): inline Modify button instead of right-flush",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:04:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61f33c185e2394e60eb027bdbc3d2e0ae817447e",
          "body": "Restructures the chip row from the sentence form (\"Show <agg> of\n<field> where <filters> …\") to Datadog's left-to-right layout:\n\n  [Signal]   from  [filter chips] [+ filter]   |   avg of signal.value\n  [optional modifiers: by name / rollup / reject / fill]                   Σ\n\n- Source pill (\"Signal\n[…]\nName series\" input above the row stays put — Datadog doesn't\nneed an equivalent because its metric names are unique by construction,\nbut Mapache derived expressions need a referenceable variable name.",
          "is_bot": false,
          "headline": "feat(signals): Datadog-style query row",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T05:02:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "07ca85017e059e4e6fc6c9c683ba6d606d83e4a8",
          "body": "- Renames the bucket-width method from `.every(...)` to `.rollup(...)`\n  in both parsers (TS + Python) and in the serializer. The reverse\n  migration helper (`{ rollup: \"every\" }` → unknown-method error) is\n  gone; this is a new system, no need to carry the migration stub.\n- \"Name series\" comes out \n[…]\nve with\n  `.by(name)`. Deletes the LabelChip + its useEffect-driven popover\n  draft handling.\n- Modify menu now has 4 entries: by / rollup / reject / fill, each\n  still showing a one-line description.",
          "is_bot": false,
          "headline": "fix(signals): rename .every→.rollup, pull series name out of menu",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T04:57:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8b9ce7fa63b3ed21f9830c5bcd4061ba2b83d558",
          "body": null,
          "is_bot": false,
          "headline": "fix(signals): use MQL method names as Modify menu titles",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T04:51:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dc817ff4783aa791ce5aac10737e4e205e45fd76",
          "body": null,
          "is_bot": false,
          "headline": "fix(signals): match Modify button height to other chips (h-7)",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T04:50:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a3007873a88c9030ee6cf4c3162864ee56df411e",
          "body": "Two coupled changes on the Signals page query builder:\n\nModify menu (UX): the always-visible chip row was reading as one long\nsentence with five optional knobs (breakout, rollup, reject, fill,\nlabel) crowded next to the core `Show <agg> of <field> where ...`.\nCollapses to:\n\n  Show <agg> of <field> w\n[…]\nt files + test infrastructure across the repo\n(vitest in dashboard, pytest in query / mapache-py / rigby) and the\nmatching CI Test jobs. Per project convention this repo doesn't carry\nautomated tests.",
          "is_bot": false,
          "headline": "feat(signals): Modify menu + dotted-field grammar; remove tests",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T04:48:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f27a1c5a6ffae9cacc606b85f914bd2ca93823b2",
          "body": "feat(dashboard/jobs): gate enqueue on MapacheJobRunners group",
          "is_bot": false,
          "headline": "Merge pull request #213 from Gaucho-Racing/bk1031/job-runners-gate",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T04:19:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d5315ca6a8e0166feafbd83dedfec5eb7108822",
          "body": "The \"New Job\" button on the jobs page and the EnqueueJobDialog only\nrender for users whose Sentinel groups include MapacheJobRunners.\n\nFrontend-only gate — the foreman endpoint behind /api/foreman/jobs is\nstill reachable to anyone holding a valid bearer. Real backend\nenforcement (a Mapache-side proxy that validates the group before\nforwarding to foreman) is a follow-up.",
          "is_bot": false,
          "headline": "feat(dashboard/jobs): gate job-enqueue on MapacheJobRunners group",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T04:17:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc91f597d0fbebe73b67f515cf4524230f20eb17",
          "body": "fix(sessions): repair dashboard build in session editor",
          "is_bot": false,
          "headline": "Merge pull request #214 from Gaucho-Racing/jake/fix-session-editor-build",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T04:06:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8df64d64f29c63d77d905c7068768e026f96e2ff",
          "body": "persistAndNavigate still called the removed saveSessionAnalysis and\nsaveSessionLaps helpers, breaking the dashboard build (tsc TS2304/TS2552).\nCollapse them into the single transactional saveSessionAnalysisWithLaps\ncall the import already references.",
          "is_bot": false,
          "headline": "fix(sessions): use saveSessionAnalysisWithLaps in editor save",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-20T04:02:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "feef914365d6cd4d7cc8e945417cb21c6535d94a",
          "body": null,
          "is_bot": false,
          "headline": "chore(example.env): populate dev Sentinel v5 creds",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T03:46:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c3aa98fec154a8ebbe4b32c88a663915dbd6b550",
          "body": "feat(auth,dashboard): migrate to Sentinel v5",
          "is_bot": false,
          "headline": "Merge pull request #212 from Gaucho-Racing/bk1031/sentinel-v5",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T03:40:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aedd9f2d9dc4285c03bffa6a565f6df369eac13a",
          "body": null,
          "is_bot": false,
          "headline": "fix(query): translate auth failures to 401 instead of 500",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-20T03:16:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dd5857c8f8ffec0b27f51b8f0a1b761578c91e6a",
          "body": null,
          "is_bot": false,
          "headline": "fix(dashboard): trim OAuth scope to user:read + groups:read",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-19T23:43:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "02dffdc9fad8366cd63bf2364f02e262283544d0",
          "body": null,
          "is_bot": false,
          "headline": "fix(example.env): use kerbecs port for local OAuth redirect",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-19T23:33:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d733b1c67ec501b8b1c23710628945b488a7832e",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.2",
          "author_name": "Andrey",
          "author_login": "an0tv",
          "committed_at": "2026-06-19T21:51:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "094939bddc2f0077f36a3b2a83c150f2ec5d27b9",
          "body": null,
          "is_bot": false,
          "headline": "added dcdc to mapach",
          "author_name": "Andrey",
          "author_login": "an0tv",
          "committed_at": "2026-06-19T21:51:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0ea79a5c499c60f3d804167d84c50c2ac201981e",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.1",
          "author_name": "Andrey",
          "author_login": "an0tv",
          "committed_at": "2026-06-19T21:30:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "987a9c3cadea9b28fc4cefce1d06e36684575c11",
          "body": null,
          "is_bot": false,
          "headline": "quick patch",
          "author_name": "Andrey",
          "author_login": "an0tv",
          "committed_at": "2026-06-19T21:28:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4119360f83b7460e5ef70f9fa007435934758833",
          "body": "Removes the SKIP_AUTH_CHECK escape hatch from the auth, query, and\ndashboard compose entries so local dev exercises the same token-\nvalidation path prod does. Local Mapache validates against prod\nSentinel (no second compose stack to bring up); devs populate the\nclient_id/secret/SA token in their own\n[…]\n in the first migration commit:\n- main.py hardcoded the v4 issuer; now reads Config.SENTINEL_ISSUER\n- Config drops SENTINEL_JWKS_URL; main.py builds the path from\n  SENTINEL_URL (\"$URL/api/core/keys\")",
          "is_bot": false,
          "headline": "chore(compose): wire local dev through Sentinel v5",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-19T16:51:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c1bbae5b16bb3ef6df9c60a4da3164fb84371e84",
          "body": "Sentinel v5 reshaped the auth surface: a new public base URL, the\nentity/user split, group-based access in place of v4 role strings,\nand an /api/ prefix on every backend endpoint. This wires Mapache\nthrough that flow end to end.\n\nBackend (auth/):\n- Sentinel config keeps the env-var shape but renames\n[…]\nNTINEL_REDIRECT_URI=https://mapache.gauchoracing.com/auth/login\n  SENTINEL_SA_TOKEN=<service account JWT issued to Mapache's app>\n  VITE_SENTINEL_CLIENT_ID=<same as SENTINEL_CLIENT_ID, baked at build>",
          "is_bot": false,
          "headline": "feat(auth,dashboard): migrate to Sentinel v5",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-19T16:37:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a878f2eeed6c6fc2ffcc1dee54c3e6a4f1b8fbd4",
          "body": "…hardening\n\nSignals/sessions/MQL: QoL, correctness fixes, and consolidation",
          "is_bot": false,
          "headline": "Merge pull request #211 from Gaucho-Racing/jake/signals-sessions-mql-…",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-19T16:26:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "13cd950b647d38e2877abd1d0bf8c7e8ad0fe3c8",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into jake/signals-sessions-mql-hardening",
          "author_name": "Bharat Kathi",
          "author_login": "BK1031",
          "committed_at": "2026-06-19T16:26:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0af938254f584970629bd3cfa31de849474862b7",
          "body": "The T0-T11 tracker is finished and references a private ~/.claude/ path no\nteammate can read; it has no place in the repo.",
          "is_bot": false,
          "headline": "chore: remove completed SIGNALS-OVERHAUL tracker",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1262f1c3940cc5de98ea29d7e9972fefc19c94c8",
          "body": "The module is pure interfaces/types with zero JSX, so the .tsx extension was\nmisleading. Importers use the extensionless @/models/session specifier and are\nunaffected.",
          "is_bot": false,
          "headline": "refactor(dashboard): rename models/session.tsx to .ts",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3267993a71c17be17b6f43a94388b02c2bbb929",
          "body": "…terms\n\nRename the LapacheMode session-editor type to SessionMode (and its usages in\nSessionEditorPage) and reword the stale 'Lapache' references in comments/docstrings\n(vehicle.go, clusters.py, cluster.py) to the Sessions-editor platform vocabulary.\nMechanical only; no logic change.",
          "is_bot": false,
          "headline": "refactor: rename leftover Lapache desktop-app vocabulary to platform …",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a5f60c8df58de4ffde8321a2912f3c322f966b7c",
          "body": "config.VERSION was 4.0.0 while pyproject and every other service report 3.9.0;\nthe /ping version banner was reporting a release that does not exist.",
          "is_bot": false,
          "headline": "fix(query): align service VERSION with pyproject at 3.9.0",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9756d0064db6a4b8576153f7c6aa22f521fbc6e9",
          "body": "cluster._iso_utc_z reimplemented the same trailing-Z ISO-8601 formatting now\nprovided by json_safe.iso_utc_z. Import the shared helper and drop the local\ncopy; output is byte-identical (same strftime + 'Z').",
          "is_bot": false,
          "headline": "refactor(query): dedupe cluster ISO formatting onto shared helper",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a9db9b38a56e6395e4a001ed43ec8a70590483f",
          "body": "Both /query/pairs (service/query.py, pandas merge_asof) and\n/query/signals/data (service/raw_signal.py, pure-ClickHouse) decimated per\n(name, time-bucket) with separately-implemented SQL. Extract the shared\ndecimation query into service/decimate (bucket_seconds, bucket_micros,\nbuild_decimation_sql) \n[…]\nared json_safe.iso_utc_z and drop raw_signal._iso_z in favor of it.\n\nAdd tests/test_query_pairs.py covering the decimation SQL shape, the\nfull-resolution branch, and the merge_asof alignment contract.",
          "is_bot": false,
          "headline": "refactor(query): share signal decimation query and ISO-UTC-Z helper",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6d9928496416328bd54b2caa1c2b489f4d15a9ac",
          "body": "…Charts core\n\nRebuild the calibration-mode signals-vs-time chart on useEchartInstance +\nechartsTheme PALETTE instead of Recharts, preserving behavior exactly:\nmulti-signal smooth line series, the normalized (0-1 rescale) toggle with raw\nvalues in the tooltip, the crop overlay (Recharts ReferenceArea\n[…]\nn the session editor in calibration mode, plot several signals, toggle\nnormalize, and drag the timeline crop to confirm the lines, axes, tooltip, crop\nshading, and boundary lines all render as before.",
          "is_bot": false,
          "headline": "refactor(sessions): migrate SignalTimeChart from Recharts to shared E…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f83c552b26bb64bd7b8bf5a24cccce680d680db3",
          "body": "…b/sessions\n\nMove the pure deriveLapInputs (+ its tsToIso helper) into\nlib/sessions/lapInputs.ts and the import-marker re-projection math (source XY\n-> geo -> target XY, padded-bounds overlap test) into\nlib/sessions/importMarkers.ts as reprojectImportedSegments. SessionEditorPage\nimports both; the async fetch + state mutation in handleImportMarkers stay in\nthe page. Adds vitest coverage for both lifted functions. No behavior change.",
          "is_bot": false,
          "headline": "refactor(sessions): lift lap-input + import-reprojection math into li…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b64e283eb6bc895bb60fc2da34cbef2e9bf79b2",
          "body": "Pull the /query/run effect (with its stale-response cancellation guard,\nresults/errors/rejectStats/latency), the /query/pairs effect, and the\nin-browser derive/highlight evaluation out of SignalWidget into\nuseRunSeries / usePairsData / useDerived (components/signals/useSignalData.ts).\nThe two fetch effects keep one shared loading flag (useRunSeries owns it,\nusePairsData drives it), and effect deps + cancellation semantics are\nunchanged. Pure mechanical extraction, no behavior change.",
          "is_bot": false,
          "headline": "refactor(signals): extract SignalWidget data pipelines into hooks",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3ee0638e3f7491354f118b1fad1074b81467077f",
          "body": "…ad editor\n\nRelocate the pure derived-series helpers (NamedSeries, buildSeriesVariables,\ncompileAgainstSeries, computeDerivedSeries, et al.) from\ncomponents/signals/DerivedTraces.tsx into lib/derived.ts, repoint importers\n(SignalWidget, Highlights, named-series tests), and delete the never-rendered\nDerivedTraces React component. Helper logic is unchanged.",
          "is_bot": false,
          "headline": "refactor(signals): move derived-trace helpers to lib/derived, drop de…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dd58b8791c4c122f1c0f58fe08314b6087978328",
          "body": "Consolidate the duplicated ECharts init + echarts.connect(groupId) +\nResizeObserver + onReady wiring + dispose into lib/useEchartInstance,\nreturning the instance ref. PlotChart uses the plain form; QueryChart\npasses its brush-to-select zrender wiring through the hook's onInit so it\nkeeps the exact a\n[…]\n (they differ per chart and stay in\nthe components): the notMerge option-push effects, QueryChart's dataZoom\nzoom-preservation across rebuilds, and PlotChart's basemap\nreconciliation + resize effects.",
          "is_bot": false,
          "headline": "refactor(signals): extract useEchartInstance lifecycle hook",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7b41a359c5b8558283bd8ab2fe064fe6208254f2",
          "body": "Replace the duplicated local-text<->serialized guard in MqlEditor and\nQueryBuilder's MQL line with a shared useTextMirror hook; its decision\nrule (mirrorNext) is a pure, unit-tested function. QueryBuilder's\nLabelChip is intentionally left alone: it commits on popover-close\nrather than per-keystroke, so it is a different abstraction.",
          "is_bot": false,
          "headline": "refactor(signals): extract useTextMirror caret-preservation hook",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4d400e8fcbe6e905c7bf6e60f787984f3835a3ba",
          "body": "Dedupe the yyyy-MM-dd day-key helper (DateSelector.dayKey,\nFuzzyDateInput.toDayKey, SessionsPage.dayKey) into lib/date.ts as a\nsingle dayKey accepting Date | string, plus parseDayKeys for the\nduplicated 'available dates' parser. Importers (SessionSidebar,\nSessionEditorPage) now pull from lib/date. Raw DayPicker renderers left\nas-is to avoid a visual change; calendar-wrapper standardization\ndeferred.",
          "is_bot": false,
          "headline": "refactor(date): extract one dayKey/parseDayKeys util",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b5b64013ac4ad11d7a45591d3e3974beee12fd79",
          "body": "Introduce lib/http.ts (axios.create + bearer-token request interceptor\nsourcing lib/auth's new getAccessToken) and migrate the newest call\nsites onto it: lib/pairs, lib/sessions/api, and SignalWidget's\n/query/run. Per-endpoint envelope reads (.data.data vs .data.data.data)\nare unchanged since the cl\n[…]\nntionally does not unwrap success\nbodies. The ~12 other sentinel_access_token sites are left for an\napp-wide follow-up (noted in http.ts). lib/export.ts has no HTTP calls,\nso nothing to migrate there.",
          "is_bot": false,
          "headline": "refactor(http): add shared authenticated axios client",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bee6a64dc642fcb6a09394f03547b218d65d4511",
          "body": "Extract one formatMetric (lib/format.ts) replacing the divergent\nformatCount copies in QueryChart, SignalWidget, and SignalsPage. The\nk/M shape and QueryChart's sub-1000 2-decimal precision are preserved, so\ndisplayed axis/tooltip/total/count values are unchanged; a sweep test\npins parity with the old per-site formula. job-stream's formatCount is\nleft as the abbreviator for the job/debug count displays.",
          "is_bot": false,
          "headline": "refactor(signals): unify the compact metric formatter",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "815e65601cc56efb97fba0961d6b031e636e257c",
          "body": "Consolidate the duplicated PALETTE, cssHsl, and seriesTotal into\nlib/echartsTheme.ts and point QueryChart, PlotChart, ExportDialog,\nDebugPage, and SignalTimeChart at it. Removes the forked DebugPage\npalette and SignalTimeChart CHART_COLORS so every signals chart shares\none color sequence.",
          "is_bot": false,
          "headline": "refactor(signals): extract shared echarts theme module",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b3c58a015cbfc6e2c9ed3d42c495d67e51e88a5e",
          "body": "Design-only (no parser/executor code). Records the additive plan for moving\ncross-series math server-side: a LinkRef AST leaf plus a referent-aware\nrun_query that executes each referent through the existing single-query path\nand joins their outputs on the canonical zero-filled INTERVALS bucket axis.\nNotes why this is additive (single-aggregator Query stays the leaf) and why\npairs/clusters are the wrong substrate (no correlation/join, only a shared DB\nclient).",
          "is_bot": false,
          "headline": "docs(query): design server-side MQL link queries (LinkRef)",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "091b6a220db1eb394692ff66d6d29f2e308c55a8",
          "body": "Cross-series math previously resolved a series' -> name only via the\nlabel-derived friendly-alias heuristic, which silently flat-lined when the\nlabel collided or sanitized differently. Thread the explicit -> name through\nthe expr variable pool as a real, first-class alias (NamedSeries), kept\nalongsi\n[…]\ntrace pair.\n\nAlso document the join invariant in SignalWidget: cross-series linking aligns\nby bucket index and requires one shared interval per widget — the contract any\nfuture link feature builds on.",
          "is_bot": false,
          "headline": "feat(signals): make -> name a first-class validated series variable",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T22:10:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1340cfa15b11ec28af42039cc326d9cccd6da205",
          "body": "The list pages a flat start_time DESC feed but groups by day. Grouping keys a\nMap by dayKey across all loaded sessions, so a day spanning a page boundary\nalready merges into one header (the reported split-header case does not\nreproduce); document that invariant. Add aria-sort to the sortable column\n\n[…]\n row and role=status empty/loading states (the body had no\nloading state and missed aria-sort), and a stable start_time-then-id tiebreaker\nso equal sort keys keep a deterministic order across renders.",
          "is_bot": false,
          "headline": "fix(sessions): make day-grouped session list honest under pagination",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:52:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6da421b921394c1262d3d3f4377af5e3e2c585d7",
          "body": "… MAD)\n\nThe detector ran a per-axis z-score on lat and lon independently using a\nnon-robust mean/std that included the outliers, so a far point inflated the\nthreshold meant to catch it (masking) and diagonal excursions could slip\nthrough either 1-D test. Replace the sigma path with a robust 2-D radi\n[…]\nsigmas, where the spread is\nthe MAD of the distances scaled by 1.4826. The public signature, config, and\nboolean[] return shape are unchanged; the hard max-distance limit is kept. Add\nvitest coverage.",
          "is_bot": false,
          "headline": "fix(sessions): use robust 2-D GPS outlier detector (median centroid +…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:52:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1e60de914eeb6c18a9b2628286944d025a368680",
          "body": "WGS84 and Custom scale stretched lat/lon independently, so they misregistered\nagainst the satellite underlay; only local cartesian is metric (equal-scale\nmeters from the centroid). Remove the distorting NormMode options and collapse\nbuildTransform/normalizeCoordinates onto local cartesian, so legacy analyses\nwith a WGS84/Custom-scale norm_mode fall back to the metric transform. Export\nthe m-per-degree constants + mPerDegLon helper so the outlier detector shares\none degrees-to-meters scaling.",
          "is_bot": false,
          "headline": "fix(sessions): drop anamorphic projections, default to local cartesian",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:52:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3f879ac9b2f29a1166020fe122d757e06b3df0ce",
          "body": "is_best was set per-lap via durationS === bestTime, so when two laps shared\nthe minimum duration both were flagged best. Compute the first index whose\ntime equals the minimum and flag only that lap.",
          "is_bot": false,
          "headline": "fix(sessions): flag only the first tied-minimum lap as is_best",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:52:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e26655bf2e00aba9d5234654dada005140a0853e",
          "body": "The editor saved analysis (POST /sessions/:id) and laps (PUT /sessions/:id/\nlaps) as two separate calls; a failure between them left the analysis blob\nand the session_lap table inconsistent. Add POST /sessions/:id/analysis,\nwhich upserts the session and replaces its laps in a single GORM transaction\n[…]\nllers.\n\nAlso drop the duplicated laps/summary blob from the analysis payload: the\nsession_lap table is canonical (the detail page reads it via fetchSessionLaps\nand the backend-aggregated lap_summary).",
          "is_bot": false,
          "headline": "feat(sessions): save analysis and laps in one transaction",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:51:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4682a274fdec69bcca226fdaf84a52471084b492",
          "body": "populateSession assigned Session.Markers and Session.Segments (the latter\nvia DeriveSegments) on every read, but both are gorm:\"-\" (never persisted),\nno Go caller reads them, and the frontend Session model has no markers/\nsegments fields. Drop the dead population/compute; keep DeriveSegments for\nits direct callers/tests.",
          "is_bot": false,
          "headline": "perf(sessions): stop computing DeriveSegments on every session read",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:50:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07824ef42cba976736f9763b796e35567dbc4541",
          "body": "COALESCE(AVG(duration_ms),0) was scanned into an int64, flooring the\nfractional millisecond. Wrap AVG in ROUND so the average is rounded.",
          "is_bot": false,
          "headline": "fix(sessions): round avg_ms in lap summary to avoid sub-ms truncation",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:49:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c2c3d33519b296afa80bdd34fe8d12ddc87f1672",
          "body": "The /query/run effect had no cancellation, so a fast timeframe change\ncould let an earlier Promise.all resolve last and overwrite the newer\nseries. Mirror the pairs effect: thread a shouldApply guard into\nrunFetches and flip a cancelled flag in the effect cleanup.",
          "is_bot": false,
          "headline": "fix(dashboard): cancel stale /query/run results in SignalWidget",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:33:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a7edc52a9b94ef135f23cd21d070240bec603cc6",
          "body": "…en-find\n\nAdd fetchSession(id) hitting GET /sessions/:id (returns null on 404).\nSessionDetailPage no longer fetches every session for the vehicle just to\n.find() one; SessionEditorPage edit bootstrap fetches the routed session\nby id rather than scanning the loaded list.",
          "is_bot": false,
          "headline": "feat(dashboard): fetch a single session by id instead of fetch-all-th…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:33:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5ec613a3d1eaa6d0ead3a437e5192a0a47953fbf",
          "body": "looksLikeFetchQuery classified any aggregator-named call as a fetch, but\nmin/max are also expr.ts functions, so `min(s0, s1) -> lo` was misrouted\nto /query/run and failed. Require the first call argument to be a known\nfetch field (signal/value/raw_value); anything else routes to the expr\nevaluator. \n[…]\nid but otherwise-broken fetch stays a fetch so its\nparse error still surfaces inline.\n\nAdds vitest (test script + config; test files excluded from the tsc\nbuild) and unit tests covering both routings.",
          "is_bot": false,
          "headline": "fix(dashboard): route min/max derived exprs to the expression evaluator",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:33:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e01266c680c50fff0c3bb43de92c732ecdc0f6c8",
          "body": "- Restore the dev dependency group (pytest>=8.0,<9, httpx) in both\n  [dependency-groups] (uv) and [project.optional-dependencies] (pip), so\n  `uv run pytest` and `pip install -e \".[dev]\"` both work; pin\n  [tool.pytest.ini_options].testpaths.\n- Add tests/ against the CURRENT method-chain grammar: tok\n[…]\n in/not-in grouping, the window-global sigma path,\n  and JSON-safe coercion. ClickHouse client is monkeypatched (no live DB).\n- Add a Test job to query.yml mirroring mapache-py.yml; Docker build kept.",
          "is_bot": false,
          "headline": "test(query): add MQL parser/executor test gate and CI Test job",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:28:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ce16770671fffb73ed962be82bef303dcb2caea8",
          "body": "The executor computes sigma via avg/stddevPop OVER (PARTITION BY\ngroup-by) across the whole queried window, but the REJECT_METRICS\ncomment implied a per-bucket mean. State the window-global semantics\nexplicitly (behavior unchanged).",
          "is_bot": false,
          "headline": "docs(query): clarify sigma reject is window-global, not per-bucket",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:28:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "230b5bb5a96a0fb02b169671f6fca4cf5644941e",
          "body": "Two correctness fixes in query_exec.py:\n\n- _leaf swapped * -> % but never escaped literal _/%/\\\\ in the value, so\n  a filter like name = \"ecu_acc*\" matched ecuXacc... (the _ acted as a\n  LIKE single-char wildcard). Escape \\\\, %, _ in the literal portion\n  before translating * -> %. Values stay param\n[…]\n- _coerce_number could emit NaN/Inf (e.g. an agg over an all-NULL\n  bucket), which trips JSONResponse(allow_nan=False). Route numbers\n  through the existing json_safe so non-finite floats become None.",
          "is_bot": false,
          "headline": "fix(query): escape LIKE metachars and JSON-safe coerce non-finite floats",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:27:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8c85b6918891ba82942983f61236dfce6cb09677",
          "body": "The default (limit<=0) routed to GetAllSessionsByVehicleID, an unbounded\n.Where().Find() with a per-row N+1, materializing a vehicle's entire\nsession history. Route the default through the existing paged path with\nthe maxSessionsPageLimit (200) cap the global branch already uses;\nexplicit limits are unchanged.",
          "is_bot": false,
          "headline": "fix(vehicle): cap default vehicle-scoped sessions read to a page",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T19:21:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "437ded46707b4e8ee15e8c633b984bd5ffe373d0",
          "body": "Drive interactionMode through a lightweight dataZoom merge update instead of\nthe full chart option memo, so flipping select/pan no longer rebuilds every\nseries and re-renders the synced panels.",
          "is_bot": false,
          "headline": "perf(signals): make select/pan toggle instant",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T18:55:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bb3a58934b75c1de9312289f738ffe27de11c536",
          "body": "…op basemap crash\n\n- detect GPS-like plots with lat/lon in either trace order; broaden name matching\n- reorient to lon-X/lat-Y when the basemap is on so the static map aligns\n- reconcile the basemap graphic in the option effect (notMerge) instead of a\n  racing second effect, removing the $action:\"remove\" path that crashed ECharts",
          "is_bot": false,
          "headline": "fix(signals): show map toggle regardless of lat/lon axis order and st…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T04:15:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db30a369fab2cb17d4fbd9757f18cd8d42ebc790",
          "body": "…t-type button\n\n- chart-type button now shows the selected graph's icon + name instead of \"Traces\"\n- move select/pan toggle from page header to just above each time-series chart\n- fill the freed header space with the visible (zoomed) window duration + time range\n- fix crash on non-time-series plots from removing a never-added basemap graphic",
          "is_bot": false,
          "headline": "feat(signals): relocate select/pan, show zoom window span, label char…",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T03:57:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7b7acb124b8f9d6c14c66e0ea938fe87986cb5db",
          "body": "- signals: opt-in Mapbox basemap for GPS scatter/path plots (auto-detected lat/lon)\n- signals: register TitleComponent so PNG/clipboard exports include title & axis labels\n- signals/sessions: allow clearing numeric inputs mid-edit (sigma, max distance, upload key)\n- sessions: import lap markers (segments) from another session with spatial-overlap warning\n- query: sanitize NaN/Inf floats in /query/signals/data to fix JSON serialization crash",
          "is_bot": false,
          "headline": "feat: session/signals quality-of-life batch",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T03:38:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7b9eb8dc3fbac02aa42f3f362afb3047213c78e2",
          "body": "fix(sessions): use cropped window for session start/end times",
          "is_bot": false,
          "headline": "Merge pull request #210 from Gaucho-Racing/jake/sessions-bug",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T02:20:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c5903002426ff109247d55ccd697d318f7599d6d",
          "body": "Session create (lap/GPS) and edit-mode save used the full data-cluster\nwindow instead of the cropped range, so the stored end time defaulted to\nthe end of the raw data rather than the trimmed session. Set start/end\nfrom the crop timestamps in both flows.",
          "is_bot": false,
          "headline": "fix(sessions): use cropped window for session start/end times",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-18T02:15:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef40646f979af87ee0ef87ec2347a41ca9aef889",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache v3.9.0",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T23:47:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f0fc4c9458b2d7fdd3be92f00df950229803b5a9",
          "body": "feat(sessions): GPS outlier removal and lat/lon signal autofill",
          "is_bot": false,
          "headline": "Merge pull request #209 from Gaucho-Racing/jake/session-outliers",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T21:00:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d9f103bed4e3efcb9dd4f4cf75ce2ab744cdff27",
          "body": "- Detect lat/lon outliers client-side (z-score + max-distance) before\n  normalization so bus noise can't collapse the track; show excluded\n  count, an expandable list, and red ticks on the timeline\n- Autofill lat/lon pickers from the first matching signal when a session\n  has no saved analysis",
          "is_bot": false,
          "headline": "feat(sessions): add GPS outlier removal and lat/lon signal autofill",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T19:56:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2e6c179058d887eaad91fcfad13de5f6ff2d7987",
          "body": "feat(signals): integrate sessions and polish chart controls",
          "is_bot": false,
          "headline": "Merge pull request #208 from Gaucho-Racing/jake/signals-sessions-polish",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T19:34:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5a7384d21170d30e4b5cfdabee1f7d212ce46dbe",
          "body": "- session picker in the timeframe popover sets the window and loads laps\n  (searchable via Fuse.js); fix StrictMode loading deadlock\n- highlight by lap: add `%` to expr, inject a `lap` pseudo-variable, and an\n  \"alternate by lap\" shortcut\n- replace the 3 inline chart-type icons with a single \"Traces\n[…]\npage\n- fix \"is not\" filter chip wrapping (whitespace-nowrap)\n- surface a summary of samples cut by outlier rejection (reject_stats)\n- export: CSV/JSON header-row toggle and PNG title/axis-label option",
          "is_bot": false,
          "headline": "feat(signals): integrate sessions and polish chart controls",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T19:26:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8b2182afdcdff1be4685fc66f91bf3276160f1bd",
          "body": "feat(sessions): sessions service with lap-analysis editor and base-map track view",
          "is_bot": false,
          "headline": "Merge pull request #206 from Gaucho-Racing/jake/sessions-service",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T18:22:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d31aeb787006a74f3e328863507bdd81be8ffecd",
          "body": "# Conflicts:\n#\tvehicle/go.sum",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into jake/sessions-service",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T18:19:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80fed73e69a77c89118f999161679306d79f2a4c",
          "body": null,
          "is_bot": false,
          "headline": "chore: bump mapache-go to v3.5.0 in services",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T18:16:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c81180dfab61c21f2ea32fe176d652035c2c9f0",
          "body": null,
          "is_bot": false,
          "headline": "release: mapache-go v3.5.0",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T18:15:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "de332ff84a51088cf74f2ef7690862d53e233967",
          "body": "feat(mapache-go): add Lap, Sector, LapSummary types",
          "is_bot": false,
          "headline": "Merge pull request #207 from Gaucho-Racing/jake/mapache-go-lap-types",
          "author_name": "Jacob Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T18:12:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ccb7a7f6b0763fd82ad29a3086c799e0f63eb3d",
          "body": null,
          "is_bot": false,
          "headline": "feat(mapache-go): add Lap, Sector, LapSummary types",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T18:08:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4eb2f7aa8b15dd00dbd917cd1f73451a00198e7f",
          "body": "# Conflicts:\n#\tquery/query/main.py",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into jake/sessions-service",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T08:50:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "702badebe254e139c5dbc63077c80ba2d70fd335",
          "body": "Default to LocalCartesian projection so the GPS track is not squished\neast-west and registers with the satellite imagery. Render the base map\nover the full canvas by mapping the viewport corners to a lat/lon bbox,\nand add a Satellite/Streets/None base-map selector.",
          "is_bot": false,
          "headline": "fix(sessions): fill canvas with base map and correct track projection",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T08:49:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9a55bef4f7aac6b3ffae260641c9cdd126fd7897",
          "body": "- query: require a bounded window and clamp max_points (<=50k) on the decimated\n  signal read; drop the un-decimated full-table branch that streamed every raw\n  sample into memory\n- vehicle: cap the unfiltered GET /sessions to a paged result instead of\n  materializing the whole session table; remove the unbounded GetAllSessions\n- vehicle: add a 10 MiB request body limit so oversized JSON payloads (e.g. a\n  huge laps array) can't be buffered wholesale",
          "is_bot": false,
          "headline": "fix(sessions): harden unbounded reads against OOM",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T08:22:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a510ca92391c523dd0f0cd792447bf7b8d91021",
          "body": "- Add Mapbox satellite static-image underlay to the GPS track canvas with a\n  \"Satellite view\" on/off toggle (loads fresh per view bounds, no cache)\n- Rename editor mode label \"Calibration\" to \"Others\"\n- Paginate the sessions list (preload 20 + \"Load more\"); add limit/offset to\n  the sessions API and a paged backend query\n- Fix best-lap badge alignment on the session detail page",
          "is_bot": false,
          "headline": "feat(sessions): satellite track view, sessions pagination, editor polish",
          "author_name": "Jake Jurek",
          "author_login": "jacobjurek",
          "committed_at": "2026-06-17T08:18:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 46,
      "commits_last_year": 454,
      "latest_release_at": "2026-06-20T15:14:24Z",
      "latest_release_tag": "v3.9.6",
      "releases_from_tags": false,
      "days_since_last_push": 30,
      "active_weeks_last_year": 17,
      "days_since_latest_release": 32,
      "mean_days_between_releases": 0.9
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 37,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "github.com/Gaucho-Racing/Mapache",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/Gaucho-Racing/Mapache",
          "is_deprecated": false,
          "latest_version": "v3.9.6+incompatible",
          "repository_url": "https://github.com/Gaucho-Racing/Mapache",
          "versions_count": 40,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-20T15:14:04Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 32
        },
        {
          "name": "github.com/gaucho-racing/mapache/mapache-go/v3",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/gaucho-racing/mapache/mapache-go/v3",
          "is_deprecated": false,
          "latest_version": "v3.5.0",
          "repository_url": "https://github.com/gaucho-racing/mapache",
          "versions_count": 8,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-06-17T18:15:27Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 35
        },
        {
          "name": "query",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "Development Status :: 4 - Beta",
            "Environment :: Web Environment",
            "Framework :: IPython",
            "Intended Audience :: Developers",
            "License :: OSI Approved :: MIT License",
            "Operating System :: OS Independent",
            "Programming Language :: Python",
            "Topic :: Database",
            "Topic :: Database :: Front-Ends"
          ],
          "ecosystem": "pypi",
          "matches_repo": false,
          "registry_url": "https://pypi.org/project/query/",
          "is_deprecated": false,
          "latest_version": "0.1.4",
          "repository_url": "http://github.com/boydgreenfield/query/",
          "versions_count": 5,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 7695,
          "first_published_at": "2014-05-09T06:48:17.458511Z",
          "latest_published_at": "2015-04-10T18:51:23.028937Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4121
        },
        {
          "name": "rigby",
          "exists": true,
          "license": null,
          "keywords": [
            "License :: OSI Approved :: MIT License",
            "Operating System :: OS Independent",
            "Programming Language :: Python :: 3"
          ],
          "ecosystem": "pypi",
          "matches_repo": false,
          "registry_url": "https://pypi.org/project/rigby/",
          "is_deprecated": false,
          "latest_version": "0.1.3",
          "repository_url": "https://github.com/lothartj/rigby",
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 19,
          "first_published_at": "2025-06-13T11:49:08.290128Z",
          "latest_published_at": "2025-06-13T13:12:57.494339Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 404
        },
        {
          "name": "mapache-py",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "License :: OSI Approved :: MIT License",
            "Operating System :: OS Independent",
            "Programming Language :: Python :: 3",
            "Programming Language :: Python :: 3.10",
            "Programming Language :: Python :: 3.11",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Programming Language :: Python :: 3.14"
          ],
          "ecosystem": "pypi",
          "matches_repo": null,
          "registry_url": "https://pypi.org/project/mapache-py/",
          "is_deprecated": false,
          "latest_version": "3.1.0",
          "repository_url": null,
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": 3211,
          "first_published_at": "2026-03-13T23:48:16.852126Z",
          "latest_published_at": "2026-05-06T07:57:12.838775Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 77
        }
      ]
    },
    "popularity": {
      "forks": 4,
      "stars": 10,
      "watchers": 1,
      "fork_history": {
        "days": [
          {
            "date": "2024-05-31",
            "count": 1
          },
          {
            "date": "2025-02-21",
            "count": 1
          },
          {
            "date": "2025-02-28",
            "count": 1
          },
          {
            "date": "2025-12-20",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 4,
        "total_forks": 4
      },
      "star_history": null,
      "open_issues_and_prs": 7
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "gr24/Makefile",
        "gr25/Makefile",
        "query/Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "dashboard/tsconfig.json",
        "mapache-py/src/mapache/py.typed"
      ],
      "toolchain_manifests": [
        "auth/go.mod",
        "gr24/go.mod",
        "gr25/go.mod",
        "gr26/go.mod",
        "live/go.mod",
        "mapache-go/go.mod",
        "vehicle/go.mod"
      ],
      "largest_source_bytes": 37615,
      "source_files_sampled": 349,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "auth/go.mod",
        "dashboard/package.json",
        "gr24/go.mod",
        "gr25/go.mod",
        "gr26/go.mod",
        "live/go.mod",
        "mapache-go/go.mod",
        "mapache-py/pyproject.toml",
        "query/pyproject.toml",
        "rigby/pyproject.toml",
        "vehicle/go.mod"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "cryptography",
            "direct": false,
            "version": "46.0.5",
            "severity": "critical",
            "ecosystem": "pypi",
            "cvss_score": 9.8,
            "advisory_ids": [
              "GHSA-537c-gmf6-5ccf",
              "GHSA-m959-cc7f-wv43",
              "GHSA-p423-j2cm-9vmq",
              "PYSEC-2026-35",
              "PYSEC-2026-36"
            ],
            "fixed_version": "48.0.1",
            "advisory_count": 5,
            "oldest_advisory_days": 117
          },
          {
            "name": "github.com/jackc/pgx/v5",
            "direct": false,
            "version": "v5.6.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 9.8,
            "advisory_ids": [
              "GHSA-9jj7-4m8r-rfcm",
              "GHSA-j88v-2chj-qfwx",
              "GHSA-xgrm-4fwx-7qm8",
              "GO-2026-4771",
              "GO-2026-4772",
              "GO-2026-5004"
            ],
            "fixed_version": "5.9.2",
            "advisory_count": 6,
            "oldest_advisory_days": 106
          },
          {
            "name": "github.com/jackc/pgx/v5",
            "direct": false,
            "version": "v5.8.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 9.8,
            "advisory_ids": [
              "GHSA-9jj7-4m8r-rfcm",
              "GHSA-j88v-2chj-qfwx",
              "GHSA-xgrm-4fwx-7qm8",
              "GO-2026-4771",
              "GO-2026-4772",
              "GO-2026-5004"
            ],
            "fixed_version": "5.9.2",
            "advisory_count": 6,
            "oldest_advisory_days": 106
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "0.23.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-f6x5-jh6r-wrfv",
              "GHSA-hcg3-q754-cr77",
              "GHSA-j5w8-q4qc-rx2x",
              "GHSA-jppx-rxg9-jmrx"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 36,
            "oldest_advisory_days": 588
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "0.31.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-f6x5-jh6r-wrfv",
              "GHSA-hcg3-q754-cr77",
              "GHSA-j5w8-q4qc-rx2x",
              "GHSA-jppx-rxg9-jmrx"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 34,
            "oldest_advisory_days": 512
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.48.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-jppx-rxg9-jmrx",
              "GHSA-q4h4-gmj2-qvw2",
              "GHSA-qpw4-5x99-6vjp",
              "GHSA-rm3j-f69w-wqmq"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 27,
            "oldest_advisory_days": 62
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.49.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-jppx-rxg9-jmrx",
              "GHSA-q4h4-gmj2-qvw2",
              "GHSA-qpw4-5x99-6vjp",
              "GHSA-rm3j-f69w-wqmq"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 27,
            "oldest_advisory_days": 62
          },
          {
            "name": "axios",
            "direct": true,
            "version": "1.17.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.2,
            "advisory_ids": [
              "GHSA-42h9-826w-cgv3",
              "GHSA-7q8q-rj6j-mhjq",
              "GHSA-f4gw-2p7v-4548",
              "GHSA-gcfj-64vw-6mp9",
              "GHSA-hcpx-6fm6-wx23",
              "GHSA-jqh4-m9w3-8hp9",
              "GHSA-mmx7-hfxf-jppx",
              "GHSA-mwf2-3pr3-8698",
              "GHSA-pmv8-rq9r-6j72",
              "GHSA-xj6q-8x83-jv6g"
            ],
            "fixed_version": "1.18.0",
            "advisory_count": 10,
            "oldest_advisory_days": 2
          },
          {
            "name": "github.com/golang-jwt/jwt/v4",
            "direct": true,
            "version": "v4.5.1",
            "severity": "high",
            "ecosystem": "go",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh63-6h87-95cp",
              "GO-2025-3553"
            ],
            "fixed_version": "5.2.2",
            "advisory_count": 2,
            "oldest_advisory_days": 488
          },
          {
            "name": "pyjwt",
            "direct": true,
            "version": "2.12.1",
            "severity": "high",
            "ecosystem": "pypi",
            "cvss_score": 7.4,
            "advisory_ids": [
              "GHSA-993g-76c3-p5m4",
              "GHSA-fhv5-28vv-h8m8",
              "GHSA-jq35-7prp-9v3f",
              "GHSA-w7vc-732c-9m39",
              "GHSA-xgmm-8j9v-c9wx",
              "PYSEC-2026-175",
              "PYSEC-2026-177",
              "PYSEC-2026-178",
              "PYSEC-2026-179"
            ],
            "fixed_version": "2.13.0",
            "advisory_count": 9,
            "oldest_advisory_days": 55
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.15",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.3.1",
            "severity": "high",
            "ecosystem": "pypi",
            "cvss_score": 7.2,
            "advisory_ids": [
              "PYSEC-2026-2132"
            ],
            "fixed_version": "8.3.3",
            "advisory_count": 1,
            "oldest_advisory_days": 83
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "4.0.5",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-hmw2-7cc7-3qxx"
            ],
            "fixed_version": "4.0.6",
            "advisory_count": 1,
            "oldest_advisory_days": 37
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.2.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-23c5-xmqv-rm74",
              "GHSA-3ppc-4f35-3m26",
              "GHSA-7r86-cg39-jmmj"
            ],
            "fixed_version": "10.2.3",
            "advisory_count": 3,
            "oldest_advisory_days": 154
          },
          {
            "name": "next",
            "direct": false,
            "version": "16.2.7",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.2,
            "advisory_ids": [
              "GHSA-4633-3j49-mh5q",
              "GHSA-4c39-4ccg-62r3",
              "GHSA-68g3-v927-f742",
              "GHSA-6gpp-xcg3-4w24",
              "GHSA-89xv-2m56-2m9x",
              "GHSA-955p-x3mx-jcvp",
              "GHSA-m99w-x7hq-7vfj",
              "GHSA-p9j2-gv94-2wf4",
              "GHSA-q8wf-6r8g-63ch"
            ],
            "fixed_version": "16.2.11",
            "advisory_count": 9,
            "oldest_advisory_days": 0
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "0.46.2",
            "severity": "high",
            "ecosystem": "pypi",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-2c2j-9gv5-cj73",
              "GHSA-7f5h-v6xp-fcq8",
              "GHSA-82w8-qh3p-5jfq",
              "GHSA-86qp-5c8j-p5mr",
              "GHSA-jp82-jpqv-5vv3",
              "GHSA-wqp7-x3pw-xc5r",
              "GHSA-x746-7m8f-x49c",
              "PYSEC-2026-161",
              "PYSEC-2026-1941",
              "PYSEC-2026-1942"
            ],
            "fixed_version": "0.49.1",
            "advisory_count": 14,
            "oldest_advisory_days": 366
          },
          {
            "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": 107
          },
          {
            "name": "echarts",
            "direct": true,
            "version": "5.6.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.1,
            "advisory_ids": [
              "GHSA-fgmj-fm8m-jvvx"
            ],
            "fixed_version": "6.1.0",
            "advisory_count": 1,
            "oldest_advisory_days": 57
          },
          {
            "name": "github.com/eclipse/paho.mqtt.golang",
            "direct": true,
            "version": "1.4.3",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-32fw-gq77-f2f2",
              "GO-2025-4173"
            ],
            "fixed_version": "1.5.1",
            "advisory_count": 2,
            "oldest_advisory_days": 232
          },
          {
            "name": "github.com/eclipse/paho.mqtt.golang",
            "direct": true,
            "version": "1.5.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-32fw-gq77-f2f2",
              "GO-2025-4173"
            ],
            "fixed_version": "1.5.1",
            "advisory_count": 2,
            "oldest_advisory_days": 232
          },
          {
            "name": "requests",
            "direct": true,
            "version": "2.32.5",
            "severity": "moderate",
            "ecosystem": "pypi",
            "cvss_score": 5.5,
            "advisory_ids": [
              "GHSA-gc5v-m9x4-r6x2",
              "PYSEC-2026-2275"
            ],
            "fixed_version": "2.33.0",
            "advisory_count": 2,
            "oldest_advisory_days": 119
          },
          {
            "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": 527
          },
          {
            "name": "github.com/quic-go/quic-go",
            "direct": false,
            "version": "v0.59.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-vvgj-x9jq-8cj9",
              "GO-2026-5676"
            ],
            "fixed_version": "0.59.1",
            "advisory_count": 2,
            "oldest_advisory_days": 49
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "0.25.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-5cv4-jp36-h3mw",
              "GHSA-qxp5-gwg8-xv66",
              "GHSA-vvgc-356p-c3xw",
              "GO-2024-3333",
              "GO-2025-3503",
              "GO-2025-3595",
              "GO-2026-4440",
              "GO-2026-4441",
              "GO-2026-4918",
              "GO-2026-5025"
            ],
            "fixed_version": "1.26.3",
            "advisory_count": 16,
            "oldest_advisory_days": 581
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "0.33.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-5cv4-jp36-h3mw",
              "GHSA-qxp5-gwg8-xv66",
              "GHSA-vvgc-356p-c3xw",
              "GO-2025-3503",
              "GO-2025-3595",
              "GO-2026-4440",
              "GO-2026-4441",
              "GO-2026-4918",
              "GO-2026-5025",
              "GO-2026-5026"
            ],
            "fixed_version": "1.26.3",
            "advisory_count": 15,
            "oldest_advisory_days": 497
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.51.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": 76
          },
          {
            "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": 76
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.11",
            "severity": "moderate",
            "ecosystem": "pypi",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-65pc-fj4g-8rjx",
              "PYSEC-2026-215"
            ],
            "fixed_version": "3.15",
            "advisory_count": 2,
            "oldest_advisory_days": 64
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.4.31",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.1,
            "advisory_ids": [
              "GHSA-qx2v-qp2m-jg93"
            ],
            "fixed_version": "8.5.10",
            "advisory_count": 1,
            "oldest_advisory_days": 89
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "8.1.1",
            "severity": "moderate",
            "ecosystem": "pypi",
            "cvss_score": 6.8,
            "advisory_ids": [
              "GHSA-6w46-j5rx-g56g",
              "PYSEC-2026-1845"
            ],
            "fixed_version": "9.0.3",
            "advisory_count": 2,
            "oldest_advisory_days": 181
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "8.4.2",
            "severity": "moderate",
            "ecosystem": "pypi",
            "cvss_score": 6.8,
            "advisory_ids": [
              "GHSA-6w46-j5rx-g56g",
              "PYSEC-2026-1845"
            ],
            "fixed_version": "9.0.3",
            "advisory_count": 2,
            "oldest_advisory_days": 181
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "0.20.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 61
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "0.28.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 61
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.41.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 61
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.42.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 61
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "0.15.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 8
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "0.21.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 8
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.34.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 8
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.35.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 8
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.6.3",
            "severity": "unknown",
            "ecosystem": "pypi",
            "cvss_score": null,
            "advisory_ids": [
              "GHSA-mf9v-mfxr-j63j",
              "GHSA-qccp-gfcp-xxvc",
              "PYSEC-2026-141",
              "PYSEC-2026-142"
            ],
            "fixed_version": null,
            "advisory_count": 4,
            "oldest_advisory_days": null
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 13,
          "unknown": 9,
          "critical": 7,
          "moderate": 14
        },
        "advisory_count": 275,
        "affected_count": 43,
        "assessed_count": 712,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 7
      },
      "ecosystems": [
        "go",
        "npm",
        "pypi"
      ],
      "dependencies": [
        {
          "name": "github.com/fatih/color",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.18.0"
        },
        {
          "name": "github.com/gin-contrib/cors",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.6"
        },
        {
          "name": "github.com/gin-gonic/gin",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.12.0"
        },
        {
          "name": "github.com/golang-jwt/jwt/v4",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v4.5.1"
        },
        {
          "name": "github.com/lestrrat-go/jwx",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.2.30"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.1"
        },
        {
          "name": "gorm.io/driver/postgres",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "gorm.io/gorm",
          "manifest": "auth/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.31.1"
        },
        {
          "name": "@fortawesome/fontawesome-svg-core",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "6.6.0"
        },
        {
          "name": "@fortawesome/free-brands-svg-icons",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "6.6.0"
        },
        {
          "name": "@fortawesome/free-regular-svg-icons",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "6.6.0"
        },
        {
          "name": "@fortawesome/free-solid-svg-icons",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "6.6.0"
        },
        {
          "name": "@fortawesome/react-fontawesome",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "0.2.0"
        },
        {
          "name": "@hello-pangea/dnd",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^18.0.1"
        },
        {
          "name": "@radix-ui/react-alert-dialog",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.16"
        },
        {
          "name": "@radix-ui/react-avatar",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.12"
        },
        {
          "name": "@radix-ui/react-checkbox",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.3.4"
        },
        {
          "name": "@radix-ui/react-dialog",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.5"
        },
        {
          "name": "@radix-ui/react-dropdown-menu",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.17"
        },
        {
          "name": "@radix-ui/react-icons",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.3.2"
        },
        {
          "name": "@radix-ui/react-label",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.9"
        },
        {
          "name": "@radix-ui/react-menubar",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.17"
        },
        {
          "name": "@radix-ui/react-popover",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.16"
        },
        {
          "name": "@radix-ui/react-progress",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.9"
        },
        {
          "name": "@radix-ui/react-scroll-area",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.11"
        },
        {
          "name": "@radix-ui/react-select",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.3.0"
        },
        {
          "name": "@radix-ui/react-separator",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.9"
        },
        {
          "name": "@radix-ui/react-slot",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.2"
        },
        {
          "name": "@radix-ui/react-switch",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.3.0"
        },
        {
          "name": "@radix-ui/react-tabs",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.14"
        },
        {
          "name": "@radix-ui/react-toast",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.16"
        },
        {
          "name": "@radix-ui/react-tooltip",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.9"
        },
        {
          "name": "@types/mapbox-gl",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.4.1"
        },
        {
          "name": "@uiw/react-json-view",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.0-alpha.32"
        },
        {
          "name": "@xyflow/react",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^12.11.0"
        },
        {
          "name": "axios",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.17.0"
        },
        {
          "name": "chrono-node",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.9.1"
        },
        {
          "name": "class-variance-authority",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.7.1"
        },
        {
          "name": "clsx",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.1"
        },
        {
          "name": "cmdk",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.1"
        },
        {
          "name": "crypto-js",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.2.0"
        },
        {
          "name": "date-fns",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.6.0"
        },
        {
          "name": "dotenv",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^16.6.1"
        },
        {
          "name": "echarts",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.6.0"
        },
        {
          "name": "echarts-gl",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.0"
        },
        {
          "name": "fuse.js",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^7.4.2"
        },
        {
          "name": "lucide-react",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.453.0"
        },
        {
          "name": "mapbox-gl",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.24.0"
        },
        {
          "name": "moment",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.30.1"
        },
        {
          "name": "next-themes",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.1"
        },
        {
          "name": "react",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^18.3.1"
        },
        {
          "name": "react-day-picker",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.10.2"
        },
        {
          "name": "react-dom",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^18.3.1"
        },
        {
          "name": "react-json-view-lite",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.5.0"
        },
        {
          "name": "react-router-dom",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.30.4"
        },
        {
          "name": "react-superstore",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.1.4"
        },
        {
          "name": "react-use-websocket",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.13.0"
        },
        {
          "name": "recharts",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.15.4"
        },
        {
          "name": "sonner",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.7.4"
        },
        {
          "name": "tailwind-merge",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.6.1"
        },
        {
          "name": "tailwindcss-animate",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.7"
        },
        {
          "name": "typescript-eslint",
          "manifest": "dashboard/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.61.0"
        },
        {
          "name": "github.com/bk1031/rincon-go",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.1.2"
        },
        {
          "name": "github.com/eclipse/paho.mqtt.golang",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.4.3"
        },
        {
          "name": "github.com/fatih/color",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.17.0"
        },
        {
          "name": "github.com/gaucho-racing/mapache-go",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.3.0"
        },
        {
          "name": "github.com/gin-gonic/gin",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.10.0"
        },
        {
          "name": "github.com/google/uuid",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "github.com/gorilla/websocket",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.0"
        },
        {
          "name": "github.com/singlestore-labs/gorm-singlestore",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.2.0"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.0"
        },
        {
          "name": "gorm.io/gorm",
          "manifest": "gr24/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.25.10"
        },
        {
          "name": "github.com/bk1031/rincon-go/v2",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.0"
        },
        {
          "name": "github.com/eclipse/paho.mqtt.golang",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.0"
        },
        {
          "name": "github.com/gin-gonic/gin",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.10.0"
        },
        {
          "name": "github.com/gorilla/websocket",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.3"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.0"
        },
        {
          "name": "gorm.io/gorm",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.25.7"
        },
        {
          "name": "github.com/fatih/color",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.18.0"
        },
        {
          "name": "github.com/gaucho-racing/mapache-go",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.8.0"
        },
        {
          "name": "github.com/gin-contrib/cors",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.3"
        },
        {
          "name": "github.com/singlestore-labs/gorm-singlestore",
          "manifest": "gr25/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.2.0"
        },
        {
          "name": "github.com/ClickHouse/clickhouse-go/v2",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.46.0"
        },
        {
          "name": "github.com/aws/aws-sdk-go-v2",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.41.11"
        },
        {
          "name": "github.com/aws/aws-sdk-go-v2/config",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.32.22"
        },
        {
          "name": "github.com/aws/aws-sdk-go-v2/service/s3",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.103.1"
        },
        {
          "name": "github.com/eclipse/paho.golang",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.23.0"
        },
        {
          "name": "github.com/fatih/color",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.18.0"
        },
        {
          "name": "github.com/gaucho-racing/mapache/mapache-go/v3",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.5.0"
        },
        {
          "name": "github.com/gaucho-racing/ulid-go",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.1.0"
        },
        {
          "name": "github.com/gin-contrib/cors",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.6"
        },
        {
          "name": "github.com/gin-gonic/gin",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.12.0"
        },
        {
          "name": "github.com/parquet-go/parquet-go",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.30.1"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "gr26/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.1"
        },
        {
          "name": "github.com/eclipse/paho.golang",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.23.0"
        },
        {
          "name": "github.com/fatih/color",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.18.0"
        },
        {
          "name": "github.com/gaucho-racing/mapache/mapache-go/v3",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.5.0"
        },
        {
          "name": "github.com/gin-contrib/cors",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.6"
        },
        {
          "name": "github.com/gin-gonic/gin",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.12.0"
        },
        {
          "name": "github.com/gorilla/websocket",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.3"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "live/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.1"
        },
        {
          "name": "fastapi",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.115.10,<0.116.0"
        },
        {
          "name": "uvicorn",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.34.0,<0.35.0"
        },
        {
          "name": "dotenv",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.9.9,<0.10.0"
        },
        {
          "name": "sqlalchemy",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.0.38,<3.0.0"
        },
        {
          "name": "psycopg2-binary",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.9.10,<3.0.0"
        },
        {
          "name": "clickhouse-connect",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.8.0,<0.9.0"
        },
        {
          "name": "loguru",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=0.7.3,<0.8.0"
        },
        {
          "name": "requests",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.32.3,<3.0.0"
        },
        {
          "name": "pyjwt",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.11.0,<3.0.0"
        },
        {
          "name": "mapache-py",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.0.1,<4.0.0"
        },
        {
          "name": "gr-ulid",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=1.1.2,<2.0.0"
        },
        {
          "name": "pandas",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=3.0.3"
        },
        {
          "name": "numpy",
          "manifest": "query/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": ">=2.4.6"
        },
        {
          "name": "paho-mqtt",
          "manifest": "rigby/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "^1.6.1"
        },
        {
          "name": "numpy",
          "manifest": "rigby/pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "^1.26.4"
        },
        {
          "name": "github.com/fatih/color",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.18.0"
        },
        {
          "name": "github.com/gaucho-racing/mapache/mapache-go/v3",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.5.0"
        },
        {
          "name": "github.com/gaucho-racing/ulid-go",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.1.0"
        },
        {
          "name": "github.com/gin-contrib/cors",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.7.6"
        },
        {
          "name": "github.com/gin-gonic/gin",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.12.0"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.1"
        },
        {
          "name": "gorm.io/gorm",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.31.1"
        },
        {
          "name": "gorm.io/driver/postgres",
          "manifest": "vehicle/go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "github.com/aws/aws-sdk-go-v2",
            "direct": true,
            "version": "v1.41.11",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/config",
            "direct": true,
            "version": "v1.32.22",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/s3",
            "direct": true,
            "version": "v1.103.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bk1031/rincon-go",
            "direct": true,
            "version": "1.1.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bk1031/rincon-go/v2",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/clickhouse/clickhouse-go/v2",
            "direct": true,
            "version": "v2.46.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/eclipse/paho.golang",
            "direct": true,
            "version": "v0.23.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/eclipse/paho.mqtt.golang",
            "direct": true,
            "version": "1.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/eclipse/paho.mqtt.golang",
            "direct": true,
            "version": "1.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fatih/color",
            "direct": true,
            "version": "1.17.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fatih/color",
            "direct": true,
            "version": "v1.18.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gaucho-racing/mapache-go",
            "direct": true,
            "version": "1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gaucho-racing/mapache-go",
            "direct": true,
            "version": "1.8.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gaucho-racing/mapache/mapache-go/v3",
            "direct": true,
            "version": "v3.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gaucho-racing/ulid-go",
            "direct": true,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gin-contrib/cors",
            "direct": true,
            "version": "1.7.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gin-contrib/cors",
            "direct": true,
            "version": "v1.7.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gin-gonic/gin",
            "direct": true,
            "version": "1.10.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gin-gonic/gin",
            "direct": true,
            "version": "v1.12.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/golang-jwt/jwt/v4",
            "direct": true,
            "version": "v4.5.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": true,
            "version": "1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gorilla/websocket",
            "direct": true,
            "version": "1.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gorilla/websocket",
            "direct": true,
            "version": "1.5.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gorilla/websocket",
            "direct": true,
            "version": "v1.5.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lestrrat-go/jwx",
            "direct": true,
            "version": "v1.2.30",
            "ecosystem": "go"
          },
          {
            "name": "github.com/parquet-go/parquet-go",
            "direct": true,
            "version": "v0.30.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/singlestore-labs/gorm-singlestore",
            "direct": true,
            "version": "1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/zap",
            "direct": true,
            "version": "1.27.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/zap",
            "direct": true,
            "version": "v1.27.1",
            "ecosystem": "go"
          },
          {
            "name": "gorm.io/driver/postgres",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "gorm.io/gorm",
            "direct": true,
            "version": "1.25.10",
            "ecosystem": "go"
          },
          {
            "name": "gorm.io/gorm",
            "direct": true,
            "version": "1.25.7",
            "ecosystem": "go"
          },
          {
            "name": "gorm.io/gorm",
            "direct": true,
            "version": "v1.31.1",
            "ecosystem": "go"
          },
          {
            "name": "@fortawesome/fontawesome-svg-core",
            "direct": true,
            "version": "6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@fortawesome/free-brands-svg-icons",
            "direct": true,
            "version": "6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@fortawesome/free-regular-svg-icons",
            "direct": true,
            "version": "6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@fortawesome/free-solid-svg-icons",
            "direct": true,
            "version": "6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@fortawesome/react-fontawesome",
            "direct": true,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@hello-pangea/dnd",
            "direct": true,
            "version": "18.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-alert-dialog",
            "direct": true,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-avatar",
            "direct": true,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-checkbox",
            "direct": true,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": true,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dropdown-menu",
            "direct": true,
            "version": "2.1.17",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-icons",
            "direct": true,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-label",
            "direct": true,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-menubar",
            "direct": true,
            "version": "1.1.17",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popover",
            "direct": true,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-progress",
            "direct": true,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-scroll-area",
            "direct": true,
            "version": "1.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-select",
            "direct": true,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-separator",
            "direct": true,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": true,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-switch",
            "direct": true,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tabs",
            "direct": true,
            "version": "1.1.14",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-toast",
            "direct": true,
            "version": "1.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tooltip",
            "direct": true,
            "version": "1.2.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mapbox-gl",
            "direct": true,
            "version": "3.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@uiw/react-json-view",
            "direct": true,
            "version": "2.0.0-alpha.43",
            "ecosystem": "npm"
          },
          {
            "name": "@xyflow/react",
            "direct": true,
            "version": "12.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "axios",
            "direct": true,
            "version": "1.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "chrono-node",
            "direct": true,
            "version": "2.9.1",
            "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": "cmdk",
            "direct": true,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "crypto-js",
            "direct": true,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "date-fns",
            "direct": true,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": true,
            "version": "16.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "echarts",
            "direct": true,
            "version": "5.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "echarts-gl",
            "direct": true,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fuse.js",
            "direct": true,
            "version": "7.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": true,
            "version": "0.453.0",
            "ecosystem": "npm"
          },
          {
            "name": "mapbox-gl",
            "direct": true,
            "version": "3.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "moment",
            "direct": true,
            "version": "2.30.1",
            "ecosystem": "npm"
          },
          {
            "name": "next-themes",
            "direct": true,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": true,
            "version": "18.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-day-picker",
            "direct": true,
            "version": "8.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": true,
            "version": "18.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-json-view-lite",
            "direct": true,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-router-dom",
            "direct": true,
            "version": "6.30.4",
            "ecosystem": "npm"
          },
          {
            "name": "react-superstore",
            "direct": true,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "react-use-websocket",
            "direct": true,
            "version": "4.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "recharts",
            "direct": true,
            "version": "2.15.4",
            "ecosystem": "npm"
          },
          {
            "name": "sonner",
            "direct": true,
            "version": "1.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": true,
            "version": "2.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss-animate",
            "direct": true,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": true,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "clickhouse-connect",
            "direct": true,
            "version": "0.8.18",
            "ecosystem": "pypi"
          },
          {
            "name": "dotenv",
            "direct": true,
            "version": "0.9.9",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi",
            "direct": true,
            "version": "0.115.14",
            "ecosystem": "pypi"
          },
          {
            "name": "gr-ulid",
            "direct": true,
            "version": "1.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "loguru",
            "direct": true,
            "version": "0.7.3",
            "ecosystem": "pypi"
          },
          {
            "name": "mapache-py",
            "direct": true,
            "version": "3.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": true,
            "version": "1.26.4",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": true,
            "version": "2.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "paho-mqtt",
            "direct": true,
            "version": "1.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": true,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "psycopg2-binary",
            "direct": true,
            "version": "2.9.11",
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": true,
            "version": "2.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": true,
            "version": "2.32.5",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": true,
            "version": "2.0.48",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": true,
            "version": "0.34.3",
            "ecosystem": "pypi"
          },
          {
            "name": "github.com/andybalholm/brotli",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream",
            "direct": false,
            "version": "v1.7.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/credentials",
            "direct": false,
            "version": "v1.19.21",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/feature/ec2/imds",
            "direct": false,
            "version": "v1.18.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/internal/configsources",
            "direct": false,
            "version": "v1.4.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2",
            "direct": false,
            "version": "v2.7.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/internal/v4a",
            "direct": false,
            "version": "v1.4.28",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding",
            "direct": false,
            "version": "v1.13.11",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/internal/checksum",
            "direct": false,
            "version": "v1.9.20",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/internal/presigned-url",
            "direct": false,
            "version": "v1.13.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/internal/s3shared",
            "direct": false,
            "version": "v1.19.27",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/signin",
            "direct": false,
            "version": "v1.1.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/sso",
            "direct": false,
            "version": "v1.31.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/ssooidc",
            "direct": false,
            "version": "v1.36.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/aws-sdk-go-v2/service/sts",
            "direct": false,
            "version": "v1.43.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/aws/smithy-go",
            "direct": false,
            "version": "v1.27.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/gopkg",
            "direct": false,
            "version": "v0.1.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/sonic",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/sonic",
            "direct": false,
            "version": "1.12.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/sonic",
            "direct": false,
            "version": "v1.15.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/sonic/loader",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/sonic/loader",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bytedance/sonic/loader",
            "direct": false,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cespare/xxhash/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/clickhouse/ch-go",
            "direct": false,
            "version": "v0.71.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cloudwego/base64x",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cloudwego/base64x",
            "direct": false,
            "version": "v0.1.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cloudwego/iasm",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/decred/dcrd/dcrec/secp256k1/v4",
            "direct": false,
            "version": "v4.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gabriel-vasile/mimetype",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gabriel-vasile/mimetype",
            "direct": false,
            "version": "1.4.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gabriel-vasile/mimetype",
            "direct": false,
            "version": "v1.4.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gabriel-vasile/mimetype",
            "direct": false,
            "version": "v1.4.13",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gin-contrib/sse",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gin-contrib/sse",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-faster/city",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-faster/errors",
            "direct": false,
            "version": "v0.7.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/locales",
            "direct": false,
            "version": "v0.14.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/universal-translator",
            "direct": false,
            "version": "v0.18.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/validator/v10",
            "direct": false,
            "version": "10.20.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/validator/v10",
            "direct": false,
            "version": "10.23.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/validator/v10",
            "direct": false,
            "version": "v10.30.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-sql-driver/mysql",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/goccy/go-json",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/goccy/go-json",
            "direct": false,
            "version": "0.10.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/goccy/go-json",
            "direct": false,
            "version": "v0.10.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/goccy/go-yaml",
            "direct": false,
            "version": "v1.19.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-cmp",
            "direct": false,
            "version": "0.5.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgpassfile",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgservicefile",
            "direct": false,
            "version": "v0.0.0-20240606120523-5a60cdf6a761",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgx/v5",
            "direct": false,
            "version": "v5.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/pgx/v5",
            "direct": false,
            "version": "v5.8.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackc/puddle/v2",
            "direct": false,
            "version": "v2.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jinzhu/inflection",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jinzhu/now",
            "direct": false,
            "version": "v1.1.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/json-iterator/go",
            "direct": false,
            "version": "v1.1.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/klauspost/compress",
            "direct": false,
            "version": "v1.18.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/klauspost/cpuid/v2",
            "direct": false,
            "version": "2.2.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/klauspost/cpuid/v2",
            "direct": false,
            "version": "2.2.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/klauspost/cpuid/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/leodido/go-urn",
            "direct": false,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lestrrat-go/backoff/v2",
            "direct": false,
            "version": "v2.0.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lestrrat-go/blackmagic",
            "direct": false,
            "version": "v1.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lestrrat-go/httpcc",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lestrrat-go/iter",
            "direct": false,
            "version": "v1.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lestrrat-go/option",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-colorable",
            "direct": false,
            "version": "v0.1.13",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-colorable",
            "direct": false,
            "version": "v0.1.14",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-isatty",
            "direct": false,
            "version": "v0.0.20",
            "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.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/parquet-go/bitpack",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/parquet-go/jsonlite",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/paulmach/orb",
            "direct": false,
            "version": "v0.12.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pelletier/go-toml/v2",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pelletier/go-toml/v2",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pelletier/go-toml/v2",
            "direct": false,
            "version": "v2.2.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pierrec/lz4/v4",
            "direct": false,
            "version": "v4.1.25",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pkg/errors",
            "direct": false,
            "version": "v0.9.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/quic-go/qpack",
            "direct": false,
            "version": "v0.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/quic-go/quic-go",
            "direct": false,
            "version": "v0.59.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/segmentio/asm",
            "direct": false,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/shopspring/decimal",
            "direct": false,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/twitchyliquid64/golang-asm",
            "direct": false,
            "version": "v0.15.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/twpayne/go-geom",
            "direct": false,
            "version": "v1.6.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ugorji/go/codec",
            "direct": false,
            "version": "1.2.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ugorji/go/codec",
            "direct": false,
            "version": "v1.3.1",
            "ecosystem": "go"
          },
          {
            "name": "go.mongodb.org/mongo-driver/v2",
            "direct": false,
            "version": "v2.5.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel",
            "direct": false,
            "version": "v1.41.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/trace",
            "direct": false,
            "version": "v1.41.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/multierr",
            "direct": false,
            "version": "v1.10.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/multierr",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "go.yaml.in/yaml/v3",
            "direct": false,
            "version": "v3.0.4",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/arch",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/arch",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/arch",
            "direct": false,
            "version": "v0.22.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/arch",
            "direct": false,
            "version": "v0.25.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "0.31.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.48.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": false,
            "version": "v0.49.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "0.33.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.51.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.52.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "v0.19.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": false,
            "version": "v0.20.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "0.20.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.41.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.42.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "0.21.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.34.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.35.0",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "1.34.1",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "1.36.1",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "v1.36.10",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "v1.36.11",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "@alloc/quick-lru",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "8.57.1",
            "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": "@fortawesome/fontawesome-common-types",
            "direct": false,
            "version": "6.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/config-array",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/object-schema",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "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": "@mapbox/mapbox-gl-supported",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/point-geometry",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/tiny-sdf",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/unitbezier",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/vector-tile",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@next/env",
            "direct": false,
            "version": "16.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/number",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/primitive",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-arrow",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collection",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-compose-refs",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-context",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-direction",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dismissable-layer",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-guards",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-scope",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-id",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-menu",
            "direct": false,
            "version": "2.1.17",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popper",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-portal",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-presence",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-roving-focus",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-callback-ref",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-controllable-state",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-effect-event",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-escape-keydown",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-is-hydrated",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-layout-effect",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-previous",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-rect",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-size",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-visually-hidden",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/rect",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@remix-run/router",
            "direct": false,
            "version": "1.23.3",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.0-beta.27",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-darwin-arm64",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-darwin-x64",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-arm64-gnu",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-arm64-musl",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-ppc64-gnu",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-s390x-gnu",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-x64-gnu",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-x64-musl",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-win32-arm64-msvc",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-win32-ia32-msvc",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-win32-x64-msvc",
            "direct": false,
            "version": "1.15.40",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/counter",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/helpers",
            "direct": false,
            "version": "0.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/types",
            "direct": false,
            "version": "0.1.26",
            "ecosystem": "npm"
          },
          {
            "name": "@types/crypto-js",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-array",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-color",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-drag",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-ease",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-interpolate",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-path",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-scale",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-selection",
            "direct": false,
            "version": "3.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-shape",
            "direct": false,
            "version": "3.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-time",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-timer",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-transition",
            "direct": false,
            "version": "3.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/d3-zoom",
            "direct": false,
            "version": "3.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/geojson",
            "direct": false,
            "version": "7946.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@types/geojson-vt",
            "direct": false,
            "version": "3.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/leaflet",
            "direct": false,
            "version": "1.9.21",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "20.19.42",
            "ecosystem": "npm"
          },
          {
            "name": "@types/pbf",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/prop-types",
            "direct": false,
            "version": "15.7.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "18.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "18.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/semver",
            "direct": false,
            "version": "7.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/supercluster",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/use-sync-external-store",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.61.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react-swc",
            "direct": false,
            "version": "3.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xyflow/system",
            "direct": false,
            "version": "0.0.77",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "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-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "asynckit",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.34",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase-css",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001797",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "cheap-ruler",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "classcat",
            "direct": false,
            "version": "5.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "claygl",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "client-only",
            "direct": false,
            "version": "0.0.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": "combined-stream",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "css-box-model",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "csscolorparser",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "d3-array",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "d3-color",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-dispatch",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-drag",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-ease",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-format",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-interpolate",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-path",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-scale",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "d3-selection",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-shape",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-time",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-time-format",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "d3-timer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-transition",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "d3-zoom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js-light",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "delayed-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node-es",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "didyoumean",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dlv",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "doctrine",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dom-helpers",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "earcut",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.369",
            "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-object-atoms",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "es-set-tostringtag",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "8.57.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-react-hooks",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-react-refresh",
            "direct": false,
            "version": "0.4.26",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "7.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "9.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-equals",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "follow-redirects",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "fraction.js",
            "direct": false,
            "version": "5.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "geojson-vt",
            "direct": false,
            "version": "4.0.3",
            "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-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "gl-matrix",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "13.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graphemer",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "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.4",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "internmap",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-path-inside",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "1.21.7",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "kdbush",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "leaflet",
            "direct": false,
            "version": "1.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "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.merge",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "loose-envify",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "martinez-polygon-clipping",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "murmurhash-js",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "next",
            "direct": false,
            "version": "16.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.47",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-hash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "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": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pbf",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.4.31",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-import",
            "direct": false,
            "version": "15.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-js",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-nested",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "potpack",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "3.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "prettier-plugin-tailwindcss",
            "direct": false,
            "version": "0.5.14",
            "ecosystem": "npm"
          },
          {
            "name": "prop-types",
            "direct": false,
            "version": "15.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "protocol-buffers-schema",
            "direct": false,
            "version": "3.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-from-env",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "quickselect",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "raf-schd",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "react-is",
            "direct": false,
            "version": "16.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-is",
            "direct": false,
            "version": "18.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-redux",
            "direct": false,
            "version": "9.3.0",
            "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.4",
            "ecosystem": "npm"
          },
          {
            "name": "react-smooth",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "react-style-singleton",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "react-transition-group",
            "direct": false,
            "version": "4.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "read-cache",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "recharts-scale",
            "direct": false,
            "version": "0.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "redux",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.12",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-protobuf-schema",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "robust-predicates",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.3",
            "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": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "splaytree",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "styled-jsx",
            "direct": false,
            "version": "5.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.1",
            "ecosystem": "npm"
          },
          {
            "name": "supercluster",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "3.4.19",
            "ecosystem": "npm"
          },
          {
            "name": "text-table",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-invariant",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tinyqueue",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.20.2",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "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-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "victory-vendor",
            "direct": false,
            "version": "36.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "5.4.21",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "zrender",
            "direct": false,
            "version": "5.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "zustand",
            "direct": false,
            "version": "4.5.7",
            "ecosystem": "npm"
          },
          {
            "name": "annotated-types",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2026.2.25",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": false,
            "version": "3.4.5",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "colorama",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "coverage",
            "direct": false,
            "version": "7.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "46.0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "exceptiongroup",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "greenlet",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "h11",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpcore",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.11",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "lz4",
            "direct": false,
            "version": "4.4.5",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "24.0",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "26.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.12.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.41.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "8.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-cov",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": false,
            "version": "2.9.0.post0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2026.1.post1",
            "ecosystem": "pypi"
          },
          {
            "name": "query",
            "direct": false,
            "version": "3.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "0.46.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": "4.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2026.2",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "win32-setctime",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 712,
        "direct_count": 103,
        "indirect_count": 609
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 7,
        "merged_prs": 159,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 9,
        "closed_unmerged_prs": 43
      },
      "bus_factor": 1,
      "bot_contributors": 0,
      "top_contributors": [
        {
          "type": "User",
          "login": "BK1031",
          "commits": 1008,
          "avatar_url": "https://avatars.githubusercontent.com/u/33289435?v=4"
        },
        {
          "type": "User",
          "login": "jacobjurek",
          "commits": 152,
          "avatar_url": "https://avatars.githubusercontent.com/u/150409999?v=4"
        },
        {
          "type": "User",
          "login": "an0tv",
          "commits": 34,
          "avatar_url": "https://avatars.githubusercontent.com/u/55926138?v=4"
        },
        {
          "type": "User",
          "login": "austeyen",
          "commits": 15,
          "avatar_url": "https://avatars.githubusercontent.com/u/147582674?v=4"
        },
        {
          "type": "User",
          "login": "gauchoracing",
          "commits": 14,
          "avatar_url": "https://avatars.githubusercontent.com/u/153126024?v=4"
        },
        {
          "type": "User",
          "login": "dchansen06",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/105574022?v=4"
        },
        {
          "type": "User",
          "login": "Felpix-Studios",
          "commits": 4,
          "avatar_url": "https://avatars.githubusercontent.com/u/24510312?v=4"
        },
        {
          "type": "User",
          "login": "devmam999",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/107886293?v=4"
        },
        {
          "type": "User",
          "login": "Colin-Bickel",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/147775312?v=4"
        },
        {
          "type": "User",
          "login": "samc005",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/113663437?v=4"
        }
      ],
      "contributors_sampled": 10,
      "top_contributor_share": 0.816
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "auth.yml",
        "dashboard.yml",
        "deploy.yml",
        "gr26.yml",
        "live.yml",
        "mapache-go.yml",
        "mapache-py.yml",
        "publish.yml",
        "query.yml",
        "vehicle.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".eslintrc.cjs"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum",
        "package-lock.json",
        "poetry.lock",
        "uv.lock"
      ],
      "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": 1,
            "reason": "Found 2/14 approved changesets -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 6,
            "reason": "project has 2 contributing companies or organizations -- score normalized to 6",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 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": 10,
            "reason": "packaging workflow 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": "92 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "a64a619db07d20a730017f29ebb5e46acc4cbb7d",
        "ran_at": "2026-07-23T04:28:11Z",
        "aggregate_score": 4.1,
        "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-22T05:21:43Z",
      "oldest_open_prs": [
        {
          "number": 180,
          "created_at": "2026-06-04T10:22:31Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 186,
          "created_at": "2026-06-05T01:23:36Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 187,
          "created_at": "2026-06-05T02:17:17Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 191,
          "created_at": "2026-06-05T18:06:09Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 193,
          "created_at": "2026-06-07T00:58:35Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 199,
          "created_at": "2026-06-10T00:40:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 204,
          "created_at": "2026-06-15T22:47:33Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-06-22T18:32:25Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/Gaucho-Racing/Mapache",
    "host": "github.com",
    "name": "Mapache",
    "owner": "Gaucho-Racing"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 64,
      "inputs": {
        "security": 41,
        "vitality": 81,
        "community": 40,
        "governance": 65,
        "engineering": 82
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 81,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 69,
            "inputs": {
              "commits_last_year": 454,
              "human_commit_share": 1,
              "days_since_last_push": 30,
              "active_weeks_last_year": 17
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 30 days ago",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "17/52 weeks with commits",
                "points": 11.8,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 17
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "454 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 454
                    }
                  }
                ],
                "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": 46,
              "latest_release_tag": "v3.9.6",
              "releases_from_tags": false,
              "days_since_latest_release": 32,
              "mean_days_between_releases": 0.9
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "46 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 46
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 32 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 32
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~0.9 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 0.9
                    }
                  }
                ],
                "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": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 30,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 30 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 30
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 40,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 20,
            "inputs": {
              "forks": 4,
              "stars": 10,
              "watchers": 1,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "10 stars",
                "points": 15.5,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "4 forks",
                "points": 4,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "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
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "moderate",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 58,
            "inputs": {
              "packages": [
                "github.com/Gaucho-Racing/Mapache",
                "github.com/gaucho-racing/mapache/mapache-go/v3",
                "mapache-py"
              ],
              "dependents": null,
              "ecosystems": "go, pypi",
              "total_downloads": null,
              "monthly_downloads": 3211
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "3,211 downloads/month across go, pypi",
                "points": 46.8,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 3211,
                      "ecosystems": "go, pypi"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 65,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 33,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 10,
              "top_contributor_share": 0.816
            },
            "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 82% of commits",
                "points": 4.1,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 82
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "10 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 78,
            "inputs": {
              "merged_prs": 159,
              "open_issues": 0,
              "closed_issues": 9,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 43
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "159/202 decided PRs merged",
                "points": 30.1,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 159,
                      "decided": 202
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 2/14 approved changesets -- score normalized to 1",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 63,
            "inputs": {
              "followers": 46,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "Gaucho-Racing",
              "public_repos": 72,
              "account_age_days": 1529
            },
            "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": "46 followers of Gaucho-Racing",
                "points": 12,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 46,
                      "login": "Gaucho-Racing"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "72 public repos, account ~4 yr old",
                "points": 21.4,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 72
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 4
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "github.com/Gaucho-Racing/Mapache",
                "github.com/gaucho-racing/mapache/mapache-go/v3",
                "mapache-py"
              ],
              "ecosystems": "go, pypi",
              "any_deprecated": false,
              "min_days_since_publish": 32
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "3 package(s) on go, pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 3,
                      "ecosystems": "go, pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 32 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 32
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "40 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 40
                    }
                  }
                ],
                "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": 82,
        "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": "10 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "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": ".eslintrc.cjs",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc.cjs"
                    }
                  }
                ],
                "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": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "topics": [],
              "has_wiki": false,
              "homepage": "https://mapache.gauchoracing.com",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://mapache.gauchoracing.com",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 41,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Branch-Protection, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "branch_protection",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 41,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 4.1
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "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": "Found 2/14 approved changesets -- score normalized to 1",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 1.5,
                "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 detected",
                "points": 2.5,
                "status": "met",
                "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 detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 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": "92 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "at_risk",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 712 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": 712
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 42,
            "inputs": {
              "source": "osv",
              "advisories": 275,
              "affected_packages": 43,
              "assessed_packages": 712,
              "unassessed_packages": 0,
              "affected_by_severity": "critical 7, high 13, moderate 14, unknown 9",
              "direct_affected_packages": 7
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "7 affected: axios 1.17.0 (high 8.2), github.com/golang-jwt/jwt/v4 v4.5.1 (high 7.5), pyjwt 2.12.1 (high 7.4), +4 more",
                "points": 6.2,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 7,
                      "packages": "axios 1.17.0 (high 8.2), github.com/golang-jwt/jwt/v4 v4.5.1 (high 7.5), pyjwt 2.12.1 (high 7.4)"
                    }
                  },
                  {
                    "code": "advisories_affected_more",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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": "4 advisory-carrying package(s) unaddressed past 90 days; oldest published 488 days ago",
                "points": 25.2,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 4,
                      "oldest": 488
                    }
                  }
                ],
                "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": 712,
              "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": 5
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 66,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.93,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "93 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 93,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 72,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum",
                "package-lock.json",
                "poetry.lock",
                "uv.lock"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "gr24/Makefile",
                "gr25/Makefile",
                "query/Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "dashboard/tsconfig.json",
                "mapache-py/src/mapache/py.typed"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "auth/go.mod",
                "gr24/go.mod",
                "gr25/go.mod",
                "gr26/go.mod",
                "live/go.mod",
                "mapache-go/go.mod",
                "vehicle/go.mod"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "gr24/Makefile, gr25/Makefile, query/Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "gr24/Makefile, gr25/Makefile, query/Makefile"
                    }
                  }
                ],
                "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": ".eslintrc.cjs",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc.cjs"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "dashboard/tsconfig.json, mapache-py/src/mapache/py.typed",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "dashboard/tsconfig.json, mapache-py/src/mapache/py.typed"
                    }
                  }
                ],
                "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": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "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": "TypeScript",
              "largest_source_bytes": 37615,
              "source_files_sampled": 349,
              "oversized_source_files": 0
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "0/349 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 349,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "pypi package 'query' points at a different repository (http://github.com/boydgreenfield/query/); excluded from ecosystem scoring",
    "pypi package 'rigby' points at a different repository (https://github.com/lothartj/rigby); excluded from ecosystem scoring",
    "Advisory severity resolved for 120 of 136 advisories (lookup cap); the remainder are reported as unknown severity"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-23T04:28:29.845336Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/g/Gaucho-Racing/Mapache.svg",
  "full_name": "Gaucho-Racing/Mapache",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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

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

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