Public record
Software health reportschema 0.27.0 · metrics 1.13.0 · 2026-07-28 14:22 UTC

lysine-dev / okhttp

A meticulous HTTP client for the JVM, Android, and GraalVM.

KotlinApache-2.0★ 47,015 stars⑂ 9,288 forkssince Jul 2012View on GitHub ↗

lysine-dev/okhttp holds a health index of 70 out of 100, placing it in the Good band. It scores highest on Community & Adoption (86/100) and lowest on AI Readiness (58/100). It was last updated today. A single contributor accounts for most of its recent work.

70
overall / 100
Good

Software health index

Metrics are grouped into weighted categories on one standardized 1–100 scale. Overall starts as their weighted mean; when public evidence triggers the High-Risk Jurisdiction Policy, the rating is adjusted and receives an At risk ceiling of 49. AI Readiness sits outside the overall score.

70
Excellent85-100Exemplary; meets essentially all checked criteria
Good70-84Healthy; minor gaps
Moderate50-69Acceptable with notable gaps; review recommended
At risk30-49Significant weaknesses; adoption warrants caution
Critical1-29Severe problems (abandoned, single-maintainer, no hygiene)
VitalityCommunity &AdoptionSustainability &GovernanceEngineeringQualitySecurityAI Readiness

Score profile

Each axis is a category. The shape matters more than the average — a healthy subject fills the whole shape, while a spike-and-crater profile means strength in one dimension is masking risk in another.

Ownership

lysine.devOrganization
108 followers4 public repossince Mar 2026

This repository is backed by an organization — shared, accountable stewardship that can outlive any single maintainer.

Metrics by category

Vitality

Is the project alive — is code being written and are releases shipping?

58Moderate · 22% of overall
How it's scored
36/36Push recency — last push 0 days ago
32.5/36Commit cadence — 47/52 weeks with commits
18/18Commit volume — 385 commits in the last year
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 11 issue activity found in the last 90 days -- score normalized to 10
Inputs used
commits_last_year385
human_commit_share0.53
days_since_last_push0
active_weeks_last_year47
How it's scored
0/27Ships releases — no releases published
0/36Release recency — no releases
0/27Release cadence — no releases
0/10OpenSSF Scorecard: Signed-Releases — no data
Inputs used
releases_count0
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.

Community & Adoption

Does the project have users, downloads, attention, and a welcoming setup for contributors?

86Excellent · 18% of overall
How it's scored
60/60Stars — 47,015 stars
25/25Forks — 9,288 forks
15/15Watchers — 1,616 watchers
Inputs used
forks9,288
stars47,015
watchers1,616
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
How it's scored
22.5/22.5README
22.5/22.5License — recognized license (Apache-2.0)
18/18CONTRIBUTING guide
0/13.5Code of conduct
0/7.2Issue template
0/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
has_contributingyes
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno

Sustainability & Governance

Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?

59Moderate · 24% of overall
How it's scored
9/54Bus factor — 1 contributor(s) cover half of all commits
9.7/22.5Commit distribution — top contributor authored 57% of commits
13.5/13.5Contributor breadth — 99 contributors
10/10OpenSSF Scorecard: Contributors — project has 25 contributing companies or organizations
Inputs used
bus_factor1
contributors_sampled99
top_contributor_share0.568
How it's scored
45.8/46.8Issue resolution — 98% of issues closed
30.9/38.3PR acceptance — 4,109/5,086 decided PRs merged
12/15OpenSSF Scorecard: Code-Review — Found 17/20 approved changesets -- score normalized to 8
Inputs used
merged_prs4,109
open_issues85
closed_issues4,203
issue_closed_ratio0.98
closed_unmerged_prs977
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
14.6/25Owner reach — 108 followers of lysine-dev
5.9/25Track record — 4 public repos, account ~0 yr old
Inputs used
followers108
owner_typeOrganization
is_verified
owner_loginlysine-dev
public_repos4
account_age_days147

Engineering Quality

Are baseline engineering and documentation practices in place?

78Good · 20% of overall
How it's scored
24/24CI workflows — 4 workflow(s)
24/24Tests present
0/16Linter config
0/9.6Pre-commit hooks
6.4/6.4.editorconfig
16/20OpenSSF Scorecard: CI-Tests — 25 out of 30 merged PRs checked by a CI test -- score normalized to 8
Inputs used
has_ciyes
has_testsyes
has_editorconfigyes
has_linter_configno
has_precommit_configno

Documentation

90Excellent
How it's scored
30/30README
25/25Documentation directory
15/15Documentation / homepage site — https://lysine.dev/okhttp/
10/10Repository description
10/10Topics — 4 topics
0/10Wiki
Inputs used
topicsjava, android, kotlin, graalvm
has_wikino
homepagehttps://lysine.dev/okhttp/
has_readmeyes
has_docs_diryes
has_descriptionyes

Security

Are visible security and supply-chain practices strong, without unresolved high-risk jurisdiction exposure?

74Good · 16% of overall
How it's scored
6.8/7.5Binary-Artifacts — binaries present in source code
0/7.5Branch-Protection — no data
2/2.5CI-Tests — 25 out of 30 merged PRs checked by a CI test -- score normalized to 8
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
6/7.5Code-Review — Found 17/20 approved changesets -- score normalized to 8
2.5/2.5Contributors — project has 25 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5License — license file detected
7.5/7.5Maintained — 30 commit(s) and 11 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
3/5SAST — SAST tool is not run on all commits -- score normalized to 6
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — no data
7.5/7.5Token-Permissions — GitHub workflow tokens follow principle of least privilege
0/7.5Vulnerabilities — 46 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate6.7
Excluded from scoring (no data or not applicable): branch_protection, signed_releases. Remaining weights renormalized.
How it's scored
35/35Direct dependencies free of known advisories — no direct dependency carries a known advisory
0/25Indirect dependencies free of known advisories — transitive set not separable from development and test dependencies in this scope
0/40No advisories left outstanding — no advisory carries a publication date
Inputs used
sourceosv
advisories57
affected_packages26
assessed_packages289
unassessed_packages4
affected_by_severitycritical 1, high 19, moderate 5, low 1
direct_affected_packages0
Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 289 resolved dependencies against OSV. 4 could not be assessed — no resolved version, an unsupported ecosystem, or beyond the reported package list. 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.

AI Readiness

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.

58Moderate · 0% of overall
How it's scored
0/45Agent instructions — no CLAUDE.md / AGENTS.md / editor rules
0/15Machine-readable docs (llms.txt)
40/40Legible commit history — 51 of 53 human commits state their intent (structured subject or explanatory body)
Inputs used
has_llms_txtno
legible_history_share0.962
agent_instruction_files
agent_instruction_max_bytes
How it's scored
12.6/18One-command bootstrap — android-test-app/build.gradle.kts, android-test/build.gradle.kts, build-logic/build.gradle.kts (toolchain convention, no task runner)
22/22Automated tests
0/11Lint / format config
11/11Static type checking — Kotlin (statically typed)
10/10Reproducible environment — devcontainer, lockfile
0/10Demonstrated agent practice — no agent-authored commits among the last 100
8/8Automated maintenance — 47 of the last 100 commits are automated dependency updates
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsyes
lockfilesyarn.lock
has_dockerfileno
typed_languageyes
bootstrap_files
has_devcontaineryes
has_linter_configno
typecheck_configs
agent_commit_share0
toolchain_manifestsandroid-test-app/build.gradle.kts, android-test/build.gradle.kts, build-logic/build.gradle.kts, build.gradle.kts, container-tests/build.gradle.kts, maven-tests/pom.xml, mockwebserver-deprecated/build.gradle.kts, mockwebserver-junit4/build.gradle.kts, mockwebserver-junit5/build.gradle.kts, mockwebserver/build.gradle.kts, module-tests/build.gradle.kts, native-image-tests/build.gradle.kts, okcurl/build.gradle.kts, okhttp-bom/build.gradle.kts, okhttp-brotli/build.gradle.kts, okhttp-coroutines/build.gradle.kts, okhttp-dnsoverhttps/build.gradle.kts, okhttp-hpacktests/build.gradle.kts, okhttp-idna-mapping-table/build.gradle.kts, okhttp-java-net-cookiejar/build.gradle.kts, okhttp-logging-interceptor/build.gradle.kts, okhttp-osgi-tests/build.gradle.kts, okhttp-sse/build.gradle.kts, okhttp-testing-support/build.gradle.kts, okhttp-tls/build.gradle.kts, okhttp-urlconnection/build.gradle.kts, okhttp-zstd/build.gradle.kts, okhttp/build.gradle.kts, regression-test/build.gradle.kts, samples/compare/build.gradle.kts, samples/crawler/build.gradle.kts, samples/guide/build.gradle.kts, samples/simple-client/build.gradle.kts, samples/slack/build.gradle.kts, samples/static-server/build.gradle.kts, samples/tlssurvey/build.gradle.kts, samples/unixdomainsockets/build.gradle.kts
dependency_bot_commit_share0.47
How it's scored
45/45Type-checkable code — Kotlin (statically typed)
54.2/55Manageable file sizes — 9/624 source files over 60KB
Inputs used
primary_languageKotlin
largest_source_bytes152,954
source_files_sampled624
oversized_source_files9
How it's scored
0/40API schema (OpenAPI/GraphQL/proto)
0/20MCP server
40/40Runnable examples — recipes, sample, samples
Inputs used
example_dirsrecipes, sample, samples
has_mcp_signalno
api_schema_files

Key facts

47,015GitHub stars
99contributors
385commits, last 12 months
0days since last push
0releases
1bus factor
85open issues
Mavenpackage ecosystems

Data collection warnings

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token
  • Could not fetch maven package 'com.squareup.okhttp3:maven-tests' from its registry

More detail

Star and fork history 0 ★ / 9,288 ⇿
0Stars
9,288Forks

When each star and fork was added, collected from GitHub and bucketed by day. Cumulative growth sits directly above the daily additions it is made of, so the two read against each other: steady organic accretion looks nothing like an abrupt, short-lived burst. Where that difference is measurable, it is reported as growth authenticity.

Only the most recent history is shown — this repository exceeds the collection window, so the earliest history is not captured.

8,2008,4008,6008,8009,0009,2009,4009,288112022-062024-072026-07

Each point covers 4 days.

OpenSSF Scorecard 6.7 / 10
6.7aggregate

Independent, tool-agnostic security assessment from the open-source OpenSSF Scorecard. Each check rewards a security practice, not a specific vendor's tool. Checks Scorecard could not determine are marked n/a and excluded from the security score (never counted as zero).Scorecard v5.5.0 · 2026-07-28 14:21 UTC

9Binary-Artifactsbinaries present in source code
n/aBranch-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
8CI-Tests25 out of 30 merged PRs checked by a CI test -- score normalized to 8
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
8Code-ReviewFound 17/20 approved changesets -- score normalized to 8
10Contributorsproject has 25 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 11 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
6SASTSAST tool is not run on all commits -- score normalized to 6
0Security-Policysecurity policy file not detected
n/aSigned-Releasesno releases found
10Token-PermissionsGitHub workflow tokens follow principle of least privilege
0Vulnerabilities46 existing vulnerabilities detected
Direct dependencies 4
RegistryPackageVersion constraintManifest
Mavencom.squareup.okhttp3:okhttp-bom[5.2.0-SNAPSHOT,6.0.0-SNAPSHOT)maven-tests/pom.xml
Mavencom.squareup.okhttp3:okhttp-jvmmaven-tests/pom.xml
Mavencom.squareup.okhttp3:mockwebserver3maven-tests/pom.xml
Mavencom.squareup.okhttp3:logging-interceptormaven-tests/pom.xml
All dependencies 293

Full resolved dependency set from the GitHub dependency graph: 4 direct and 289 indirect (transitive) packages. The transitive closure is complete when the repository commits a lockfile.

RegistryPackageVersionRelation
Mavencom.squareup.okhttp3:logging-interceptordirect
Mavencom.squareup.okhttp3:mockwebserver3direct
Mavencom.squareup.okhttp3:okhttp-bomdirect
Mavencom.squareup.okhttp3:okhttp-jvmdirect
Mavenjunit:junit4.13.2indirect
npm@colors/colors1.5.0indirect
npm@discoveryjs/json-ext0.5.7indirect
npm@jridgewell/gen-mapping0.3.1indirect
npm@jridgewell/resolve-uri3.0.7indirect
npm@jridgewell/resolve-uri3.1.0indirect
npm@jridgewell/set-array1.1.1indirect
npm@jridgewell/source-map0.3.5indirect
npm@jridgewell/sourcemap-codec1.4.13indirect
npm@jridgewell/sourcemap-codec1.4.14indirect
npm@jridgewell/trace-mapping0.3.13indirect
npm@jridgewell/trace-mapping0.3.18indirect
npm@socket.io/component-emitter3.1.0indirect
npm@types/cookie0.4.1indirect
npm@types/cors2.8.13indirect
npm@types/eslint8.4.3indirect
npm@types/eslint-scope3.7.4indirect
npm@types/estree0.0.51indirect
npm@types/estree1.0.1indirect
npm@types/json-schema7.0.11indirect
npm@types/node17.0.41indirect
npm@webassemblyjs/ast1.11.6indirect
npm@webassemblyjs/floating-point-hex-parser1.11.6indirect
npm@webassemblyjs/helper-api-error1.11.6indirect
npm@webassemblyjs/helper-buffer1.11.6indirect
npm@webassemblyjs/helper-numbers1.11.6indirect
npm@webassemblyjs/helper-wasm-bytecode1.11.6indirect
npm@webassemblyjs/helper-wasm-section1.11.6indirect
npm@webassemblyjs/ieee7541.11.6indirect
npm@webassemblyjs/leb1281.11.6indirect
npm@webassemblyjs/utf81.11.6indirect
npm@webassemblyjs/wasm-edit1.11.6indirect
npm@webassemblyjs/wasm-gen1.11.6indirect
npm@webassemblyjs/wasm-opt1.11.6indirect
npm@webassemblyjs/wasm-parser1.11.6indirect
npm@webassemblyjs/wast-printer1.11.6indirect
npm@webpack-cli/configtest2.1.1indirect
npm@webpack-cli/info2.0.2indirect
npm@webpack-cli/serve2.0.5indirect
npm@xtuc/ieee7541.2.0indirect
npm@xtuc/long4.2.2indirect
npmabab2.0.6indirect
npmaccepts1.3.8indirect
npmacorn8.10.0indirect
npmacorn8.8.1indirect
npmacorn-import-assertions1.8.0indirect
npmajv6.12.6indirect
npmajv-keywords3.5.2indirect
npmansi-colors4.1.1indirect
npmansi-regex5.0.1indirect
npmansi-styles4.3.0indirect
npmanymatch3.1.2indirect
npmargparse2.0.1indirect
npmbalanced-match1.0.2indirect
npmbase64id2.0.0indirect
npmbinary-extensions2.2.0indirect
npmbody-parser1.20.0indirect
npmbrace-expansion1.1.11indirect
npmbrace-expansion2.0.1indirect
npmbraces3.0.2indirect
npmbrowser-stdout1.3.1indirect
npmbrowserslist4.20.4indirect
npmbuffer-from1.1.2indirect
npmbytes3.1.2indirect
npmcall-bind1.0.2indirect
npmcamelcase6.3.0indirect
npmcaniuse-lite1.0.30001350indirect
npmchalk4.1.2indirect
npmchokidar3.5.3indirect
npmchrome-trace-event1.0.3indirect
npmcliui7.0.4indirect
npmclone-deep4.0.1indirect
npmcolor-convert2.0.1indirect
npmcolor-name1.1.4indirect
npmcolorette2.0.17indirect
npmcommander10.0.1indirect
npmcommander2.20.3indirect
npmconcat-map0.0.1indirect
npmconnect3.7.0indirect
npmcontent-type1.0.4indirect
npmcookie0.4.2indirect
npmcors2.8.5indirect
npmcross-spawn7.0.3indirect
npmcustom-event1.0.1indirect
npmdate-format4.0.14indirect
npmdebug2.6.9indirect
npmdebug4.3.4indirect
npmdecamelize4.0.0indirect
npmdepd2.0.0indirect
npmdestroy1.2.0indirect
npmdi0.0.1indirect
npmdiff5.0.0indirect
npmdom-serialize2.2.1indirect
npmee-first1.1.1indirect
npmelectron-to-chromium1.4.148indirect
npmemoji-regex8.0.0indirect
npmencodeurl1.0.2indirect
npmengine.io6.2.1indirect
npmengine.io-parser5.0.4indirect
npmenhanced-resolve5.15.0indirect
npment2.2.0indirect
npmenvinfo7.8.1indirect
npmes-module-lexer1.3.0indirect
npmescalade3.1.1indirect
npmescape-html1.0.3indirect
npmescape-string-regexp4.0.0indirect
npmeslint-scope5.1.1indirect
npmesrecurse4.3.0indirect
npmestraverse4.3.0indirect
npmestraverse5.3.0indirect
npmeventemitter34.0.7indirect
npmevents3.3.0indirect
npmextend3.0.2indirect
npmfast-deep-equal3.1.3indirect
npmfast-json-stable-stringify2.1.0indirect
npmfastest-levenshtein1.0.12indirect
npmfill-range7.0.1indirect
npmfinalhandler1.1.2indirect
npmfind-up4.1.0indirect
npmfind-up5.0.0indirect
npmflat5.0.2indirect
npmflatted3.2.7indirect
npmfollow-redirects1.15.1indirect
npmformat-util1.0.5indirect
npmfs-extra8.1.0indirect
npmfs.realpath1.0.0indirect
npmfsevents2.3.2indirect
npmfunction-bind1.1.1indirect
npmget-caller-file2.0.5indirect
npmget-intrinsic1.1.2indirect
npmglob7.2.0indirect
npmglob7.2.3indirect
npmglob-parent5.1.2indirect
npmglob-to-regexp0.4.1indirect
npmgraceful-fs4.2.10indirect
npmgraceful-fs4.2.11indirect
npmhas1.0.3indirect
npmhas-flag4.0.0indirect
npmhas-symbols1.0.3indirect
npmhe1.2.0indirect
npmhttp-errors2.0.0indirect
npmhttp-proxy1.18.1indirect
npmiconv-lite0.4.24indirect
npmiconv-lite0.6.3indirect
npmimport-local3.1.0indirect
npminflight1.0.6indirect
npminherits2.0.4indirect
npminterpret3.1.1indirect
npmis-binary-path2.1.0indirect
npmis-core-module2.12.1indirect
npmis-extglob2.1.1indirect
npmis-fullwidth-code-point3.0.0indirect
npmis-glob4.0.3indirect
npmis-number7.0.0indirect
npmis-plain-obj2.1.0indirect
npmis-plain-object2.0.4indirect
npmis-unicode-supported0.1.0indirect
npmisbinaryfile4.0.10indirect
npmisexe2.0.0indirect
npmisobject3.0.1indirect
npmjest-worker27.5.1indirect
npmjs-yaml4.1.0indirect
npmjson-parse-even-better-errors2.3.1indirect
npmjson-schema-traverse0.4.1indirect
npmjsonfile4.0.0indirect
npmkarma6.4.2indirect
npmkarma-chrome-launcher3.2.0indirect
npmkarma-mocha2.0.1indirect
npmkarma-sourcemap-loader0.4.0indirect
npmkarma-webpack5.0.0indirect
npmkind-of6.0.3indirect
npmloader-runner4.3.0indirect
npmlocate-path5.0.0indirect
npmlocate-path6.0.0indirect
npmlodash4.17.21indirect
npmlog-symbols4.1.0indirect
npmlog4js6.7.1indirect
npmmedia-typer0.3.0indirect
npmmerge-stream2.0.0indirect
npmmime2.6.0indirect
npmmime-db1.52.0indirect
npmmime-types2.1.35indirect
npmminimatch3.1.2indirect
npmminimatch5.0.1indirect
npmminimist1.2.6indirect
npmmkdirp0.5.6indirect
npmmocha10.2.0indirect
npmms2.0.0indirect
npmms2.1.2indirect
npmms2.1.3indirect
npmnanoid3.3.3indirect
npmnegotiator0.6.3indirect
npmneo-async2.6.2indirect
npmnode-releases2.0.5indirect
npmnormalize-path3.0.0indirect
npmobject-assign4.1.1indirect
npmobject-inspect1.12.2indirect
npmon-finished2.3.0indirect
npmon-finished2.4.1indirect
npmonce1.4.0indirect
npmp-limit2.3.0indirect
npmp-limit3.1.0indirect
npmp-locate4.1.0indirect
npmp-locate5.0.0indirect
npmp-try2.2.0indirect
npmparseurl1.3.3indirect
npmpath-exists4.0.0indirect
npmpath-is-absolute1.0.1indirect
npmpath-key3.1.1indirect
npmpath-parse1.0.7indirect
npmpicocolors1.0.0indirect
npmpicomatch2.3.1indirect
npmpkg-dir4.2.0indirect
npmpunycode2.1.1indirect
npmqjobs1.2.0indirect
npmqs6.10.3indirect
npmrandombytes2.1.0indirect
npmrange-parser1.2.1indirect
npmraw-body2.5.1indirect
npmreaddirp3.6.0indirect
npmrechoir0.8.0indirect
npmrequire-directory2.1.1indirect
npmrequires-port1.0.0indirect
npmresolve1.22.2indirect
npmresolve-cwd3.0.0indirect
npmresolve-from5.0.0indirect
npmrfdc1.3.0indirect
npmrimraf3.0.2indirect
npmsafe-buffer5.2.1indirect
npmsafer-buffer2.1.2indirect
npmschema-utils3.1.1indirect
npmschema-utils3.3.0indirect
npmserialize-javascript6.0.0indirect
npmserialize-javascript6.0.1indirect
npmsetprototypeof1.2.0indirect
npmshallow-clone3.0.1indirect
npmshebang-command2.0.0indirect
npmshebang-regex3.0.0indirect
npmside-channel1.0.4indirect
npmsocket.io4.5.4indirect
npmsocket.io-adapter2.4.0indirect
npmsocket.io-parser4.2.1indirect
npmsource-map0.6.1indirect
npmsource-map-js1.0.2indirect
npmsource-map-loader4.0.1indirect
npmsource-map-support0.5.21indirect
npmstatuses1.5.0indirect
npmstatuses2.0.1indirect
npmstreamroller3.1.3indirect
npmstring-width4.2.3indirect
npmstrip-ansi6.0.1indirect
npmstrip-json-comments3.1.1indirect
npmsupports-color7.2.0indirect
npmsupports-color8.1.1indirect
npmsupports-preserve-symlinks-flag1.0.0indirect
npmtapable2.2.1indirect
npmterser5.19.2indirect
npmterser-webpack-plugin5.3.9indirect
npmtmp0.2.1indirect
npmto-regex-range5.0.1indirect
npmtoidentifier1.0.1indirect
npmtype-is1.6.18indirect
npmtypescript5.0.4indirect
npmua-parser-js0.7.32indirect
npmuniversalify0.1.2indirect
npmunpipe1.0.0indirect
npmuri-js4.4.1indirect
npmutils-merge1.0.1indirect
npmvary1.1.2indirect
npmvoid-elements2.0.1indirect
npmwatchpack2.4.0indirect
npmwebpack5.82.0indirect
npmwebpack-cli5.1.0indirect
npmwebpack-merge4.2.2indirect
npmwebpack-merge5.8.0indirect
npmwebpack-sources3.2.3indirect
npmwhich1.3.1indirect
npmwhich2.0.2indirect
npmwildcard2.0.0indirect
npmworkerpool6.2.1indirect
npmwrap-ansi7.0.0indirect
npmwrappy1.0.2indirect
npmws8.2.3indirect
npmy18n5.0.8indirect
npmyargs16.2.0indirect
npmyargs-parser20.2.4indirect
npmyargs-parser20.2.9indirect
npmyargs-unparser2.0.0indirect
npmyocto-queue0.1.0indirect
Dependency advisories 26

This repository publishes no package the index resolves, so its own dependency graph was assessed — 289 packages, which also include development and test pins that never ship: 26 carry known advisories, of which 0 are direct. 4 could not be assessed — no resolved version, an unsupported ecosystem, or beyond the reported package list.

PackageVersionRelationSeverityAdvisoriesFixed in
flatted3.2.7indirectcritical23.4.2
body-parser1.20.0indirecthigh22.3.0
brace-expansion1.1.11indirecthigh45.0.8
brace-expansion2.0.1indirecthigh45.0.8
braces3.0.2indirecthigh13.0.3
cross-spawn7.0.3indirecthigh17.0.5
engine.io6.2.1indirecthigh26.6.7
js-yaml4.1.0indirecthigh34.3.0
lodash4.17.21indirecthigh34.18.0
minimatch3.1.2indirecthigh310.2.3
minimatch5.0.1indirecthigh310.2.3
picomatch2.3.1indirecthigh24.0.4
serialize-javascript6.0.0indirecthigh37.0.5
serialize-javascript6.0.1indirecthigh37.0.5
socket.io4.5.4indirecthigh14.6.2
socket.io-parser4.2.1indirecthigh24.2.6
tmp0.2.1indirecthigh20.2.6
ua-parser-js0.7.32indirecthigh11.0.33
webpack5.82.0indirecthigh35.104.1
ws8.2.3indirecthigh38.21.0
ajv6.12.6indirectmoderate18.18.0
diff5.0.0indirectmoderate18.0.3
follow-redirects1.15.1indirectmoderate31.16.0
nanoid3.3.3indirectmoderate15.0.9
qs6.10.3indirectmoderate26.14.2
cookie0.4.2indirectlow10.7.0

An advisory means the version recorded in the dependency graph falls inside an advisory’s affected range. Reachability is not analysed, and the graph includes development and test pins — a finding may concern tooling rather than shipped software.

Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [
        "java",
        "android",
        "kotlin",
        "graalvm"
      ],
      "is_fork": false,
      "size_kb": 67423,
      "has_wiki": false,
      "homepage": "https://lysine.dev/okhttp/",
      "languages": {
        "Java": 23594,
        "Shell": 3130,
        "Kotlin": 4119368
      },
      "pushed_at": "2026-07-28T08:36:36Z",
      "created_at": "2012-07-23T13:42:55Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-28T08:37:14Z",
      "description": "A meticulous HTTP client for the JVM, Android, and GraalVM.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "master",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "Kotlin",
      "significant_languages": [
        "Kotlin"
      ]
    },
    "owner": {
      "blog": null,
      "name": "lysine.dev",
      "type": "Organization",
      "login": "lysine-dev",
      "company": null,
      "location": null,
      "followers": 108,
      "avatar_url": "https://avatars.githubusercontent.com/u/265085928?v=4",
      "created_at": "2026-03-02T17:50:31Z",
      "is_verified": null,
      "public_repos": 4,
      "account_age_days": 147
    },
    "license": {
      "state": "standard",
      "spdx_id": "Apache-2.0",
      "raw_spdx": "Apache-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [],
      "recent_commits": [
        {
          "oid": "f9263c3615907711077b732e5b29e340ac8f4d09",
          "body": "* Update org.bouncycastle\n\n* Upgrade and fix issues with BC versions\n\n---------\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\nCo-authored-by: Yuri Schimke <yuri@schimke.ee>",
          "is_bot": true,
          "headline": "Update org.bouncycastle (#9603)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-28T08:36:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4fcf9fd27ea109b3b801e3707464be59f32df5d3",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update spotless.plugin to v8.9.0 (#9616)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-28T08:06:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "050145b54cd17b759eb6d9a1576790255dad54c4",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update plugin com.diffplug.spotless to v8.9.0 (#9615)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-28T00:51:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b7910e4b4fbb5ff25185c77e0c8cfc638a15d0a2",
          "body": "Document that a pool sized exactly to maxRequests can reject work when\npromotion submits from a still-busy worker thread.",
          "is_bot": false,
          "headline": "Clarify Dispatcher custom executor sizing requirements. (#9613)",
          "author_name": "Hashim Khan",
          "author_login": "Hashim1999164",
          "committed_at": "2026-07-27T14:26:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f2395989e1b17b49e3396ef189a1c27860e7b4b0",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.9.0 (#9612)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-27T14:10:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e005148cce0a1294d5c402df942a3e92150c21ff",
          "body": "* Add a test with network pinning\n\nImplicitly tests the ECH code paths, but not ECH servers on API 37.",
          "is_bot": false,
          "headline": "Add a test with network pinning (#9607)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-26T22:57:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f04ccb003a27875c2097b5a53d2aa3da3132af1d",
          "body": null,
          "is_bot": false,
          "headline": "Fix failing test on Android 37 dur to conscrypt provider (#9610)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-26T21:45:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a7c54497eb6faa3e7a7acb1fae1f75126aaa9c06",
          "body": "Co-authored-by: arpitagarwal1301 <arpitagarwal1301@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Fix java.net cookie jar artifact coordinate (#9609)",
          "author_name": "Arpit Agarwal",
          "author_login": "arpitagarwal1301",
          "committed_at": "2026-07-26T21:31:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "710d6ffbf486a0180993ead6fd650b95d0b50f08",
          "body": "* Add local only EchTests taken from curl",
          "is_bot": false,
          "headline": "Add proper EchTests (#9604) (#9608)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-26T14:45:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "603875cb5ec8d17afdf3e7d8a695046e845e3b01",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update gradle/actions action to v6 (#9589)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-26T11:50:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "517e185b1d74995c60f950f555b68002dcf0602b",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update actions/setup-python action to v7 (#9588)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-26T11:50:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a15acec6ef5c84033431d4d7ddab56870c669d8b",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update shadow.plugin to v9.6.1 (#9587)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-26T11:50:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f77dad6f842accee66f3e1a7e62918839b192200",
          "body": "* Add EchAwareDns as an option on Android 37",
          "is_bot": false,
          "headline": "Add EchAwareDns for Android 37 (#9596)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-26T11:34:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b3c99b6a2fd62642102897ef808ad0c4d5e5d4e",
          "body": "no longer supports TLS 1.0 and 1.1",
          "is_bot": false,
          "headline": "Handle conscrypt changes (#9600)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-26T11:19:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d291c023c9b54834da4f6038b72c9bfe2a786df6",
          "body": "The default cache size is 1,000, which is effectively unbounded\nfor mobile apps, which likely call a few dozen API servers, ad\nnetworks, and analytics systems.\n\nI don't expect DnsOverHttps to be deployed in other environments.\nIf so, it's possible this cache will be problematic, as even\n10-second stale results can be problematic for server\nenvironments. I'll put an appropriate warning about this in our\nrelease notes.",
          "is_bot": false,
          "headline": "Enable in-memory caching in DnsOverHttps and AndroidDns (#9594)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-26T03:18:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "116395312625f4c929da5e060746f8b0e3682198",
          "body": "* Cache empty results on the failure schedule.\n\n* Spotless",
          "is_bot": false,
          "headline": "Cache empty results on the failure schedule. (#9595)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-26T03:17:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23f38965d38bc4db49fd9f53f43772d8d1848ccb",
          "body": "I had attempted to avoid making StateMachineDnsCall have its own\nTaskRunner, instead relying exclusively on the DnsQuery callback\nfor concurrency. This was more complexity than it was worth, and\nit interacted awkwardly with the cache.\n\nNow the DnsOverHttps DnsQuery enforces this invariant, and the\nadjacent code is simpler because of it.",
          "is_bot": false,
          "headline": "Move DoH public/private host rules into the DnsQuery (#9593)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-25T21:53:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f7df360704b62336d8164e59e6a7a1edffc49e7",
          "body": null,
          "is_bot": false,
          "headline": "Fix CI failures (#9597)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-25T21:49:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1fe9db66145ecac91a1108d54968edbabb797dca",
          "body": null,
          "is_bot": false,
          "headline": "Public API for DnsCache (#9592)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-25T07:36:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1682d9bac8c03dffde2969b0b74d47649d0dbb52",
          "body": "* Rearrange new DNS classes without changing behavior\n\nTransport is now DnsQuery.Factory\nCachingTransport is now DnsCache\nStateMachineDnsCall.Query is now DnsQuery\n\nThis is intended to make it possible to have end-users get a DnsCache\ninstance without being exposed to the implementation details of our\ntransports and things.\n\n* Use has-a, not is-a for the MemoryCache\n\n* Update AndroidDns\n\n* Track a test API change\n\n* spotless",
          "is_bot": false,
          "headline": "Rearrange new DNS classes without changing behavior (#9584)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-24T16:36:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a5f8780076c05f78b9be4bc2226a45f9eb66645",
          "body": null,
          "is_bot": false,
          "headline": "read HTTPS mandatory SvcParamKeys as 16-bit values (#9585)",
          "author_name": "Basavaraj S m",
          "author_login": "basavaraj-sm05",
          "committed_at": "2026-07-24T16:35:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "551ef83b265f88b176fe72c45fc3d9a1a8da967e",
          "body": "* Start evicting elements from the DNS memory cache\n\n* Spotless\n\n* Don't use a PriorityQueue constructor that doesn't exist",
          "is_bot": false,
          "headline": "Start evicting elements from the DNS memory cache (#9583)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-24T12:25:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77d4f5a0586bce6b125c43cbe7dbf400a15b5422",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update graalvm (#9514)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-24T11:24:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2007d560c289b044f2b932ac0b30101c5fffc9a8",
          "body": "…ies to v7 (#9502)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency org.mock-server:mockserver-client-java-no-dependenc…",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-24T11:23:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fb13116f75d2cdc0ec245d4a5620fc30a036aff8",
          "body": "* Add Android ECH support via DNS state machine\n\nAdds AndroidDns, backed by the system resolver and Android's DnsResolver\nfor HTTPS/ECH records, driving okhttp's StateMachineDnsCall as a transport.\nAdds Android17SocketAdapter for platform ALPN/session-ticket/ECH setup on\nAPI 37+. Pins Robolectric android-test to SDK 36.",
          "is_bot": false,
          "headline": "Add Android ECH support (#9573)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-24T11:20:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8956946b37b0018d47f5b14b431ad7c9342dd864",
          "body": "* More tests for the new DNS cache\n\n* Spotless\n\n* Rename DnsCallStateMachine to StateMachineDnsCall (#9582)\n\nIt's no longer necessary to have both the call and the state machine,\nthe state machine can implement Dns.Call directly.",
          "is_bot": false,
          "headline": "More tests for the new DNS cache (#9581)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-23T20:03:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f4e198d5f473837ba09501e315b5b0a20a2e977",
          "body": "* Switch to Question as the Transport argument\n\nIt makes caching easier.\n\n* New CachingTransport\n\n* spotless\n\n* Switch to ComparableTimeSource\n\n* Switch from computeIfAbsent to putIfAbsent\n\nThe former isn't available on API 21.",
          "is_bot": false,
          "headline": " New CachingTransport (#9579)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-23T15:28:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "65e3cadbce9e62a4f1d094fd2d6d0053043b83b4",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update spotless.plugin to v8.8.0 (#9521)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-23T15:12:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b25cc3312a75b3eca0968aa18634f6cdd0fd398",
          "body": "* Add a tester just for the DnsCallStateMachine\n\nA very nice perk of extracting it out so it could be reused for Android,\nis that it's also a lot easier to test.\n\n* Spotless",
          "is_bot": false,
          "headline": "Add a tester just for the DnsCallStateMachine (#9578)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-23T11:47:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ff0781bd6d775ee1a2f286d3b2d80f9c5a9a34a",
          "body": null,
          "is_bot": false,
          "headline": "Update to Okio 3.18, including the new APIs (#9577)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-22T17:29:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "afad3bea3edcc067c5d1ebb9a36d22cd0a44442b",
          "body": null,
          "is_bot": false,
          "headline": "Update our security docs with our new signing key (#9575)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-22T14:09:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "06bd0ef676efc1d7cfd49922816eb5a19d7b355d",
          "body": "* Move the DNS call state machine into okhttp\n\n* Missing annotation",
          "is_bot": false,
          "headline": "Move the DNS call state machine into okhttp (#9576)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-22T14:09:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "461b63d036261cf89ab69a79f2a28b344a9146eb",
          "body": "We can rely on R8 to desugar these for us",
          "is_bot": false,
          "headline": "Don't manually implement hashCode on data classes (#9566)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-22T02:22:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1a3ae1ff29b02c9f2f1b530024001a3df7145d94",
          "body": null,
          "is_bot": false,
          "headline": "Move DnsMessage to okhttp core internal (#9571)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-21T20:47:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c38a27dc7080b86f176346b6771c542c1c007e36",
          "body": null,
          "is_bot": false,
          "headline": "Updated guidance for running API 37.0 emulators (#9572)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-07-21T19:10:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ba0c9d13b5b1c57dc41f9870e8f172a667a1a22f",
          "body": null,
          "is_bot": false,
          "headline": "Fix broken/outdated links (#9570)",
          "author_name": "Marcono1234",
          "author_login": "Marcono1234",
          "committed_at": "2026-07-21T19:08:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d120673e399c37a20797971f4d582b48620a3faf",
          "body": "* Split the state machine out of DnsOverHttps\n\nThere's a few things that are a bit awkward, but overall it seems\nlike it'll afford swapping in UDP or Android's resolver.\n\n* Fixup exception text\n\n* Spotless",
          "is_bot": false,
          "headline": "Split the state machine out of DnsOverHttps (#9569)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-21T17:40:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2cbae722dee8222ba3897f4aa657011a0548ecb",
          "body": "* Implement Dns.lookup on Dns.newCall for DnsOverHttps\n\nThe lookup path is no longer exercised by OkHttp itself.\n\nThis reduces potential drift between the two strategies.\n\n* Spotless\n\n* Update okhttp-dnsoverhttps/src/test/java/okhttp3/dnsoverhttps/DnsOverHttpsTest.kt\n\nCo-authored-by: Yuri Schimke <yuri@schimke.ee>\n\n---------\n\nCo-authored-by: Yuri Schimke <yuri@schimke.ee>",
          "is_bot": false,
          "headline": "Implement Dns.lookup on Dns.newCall for DnsOverHttps (#9568)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-21T15:31:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6846f1f6795c393c278aa2c04ed8d4928d7c6520",
          "body": "* Rename includeHttps to includeServiceMetadata\n\n'HTTPS' is way too confusing for DnsOverHttps, because it's about\na DNS record type and not the transport for which records are\nretrieved.\n\n* Fix another includeHttps use",
          "is_bot": false,
          "headline": "Rename includeHttps to includeServiceMetadata (#9565)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-20T01:59:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "25724c1827252e907c69babb603687d93075178c",
          "body": null,
          "is_bot": false,
          "headline": "Reject malformed messages that have infinite loops (#9562)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-19T18:21:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7da9284510cd55c0afb8d501f903af3d96bbcba7",
          "body": "* Create a place for ECH in our configureTlsExtensions API\n\n* Trailing comma",
          "is_bot": false,
          "headline": "Create a place for ECH in our configureTlsExtensions API (#9558)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-19T13:45:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6268afe895fe93136ee022d91af16950e9d97bfa",
          "body": "We had a bug where these calls could be made in parallel. Making\nthem serial is a bit awkward but doesn't require any locks if we're\nclever.",
          "is_bot": false,
          "headline": "Serialize calls to Dns.Callback (#9561)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-19T13:01:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2babee3b0a1b0b724c52883e40b538acaf3b85c3",
          "body": "* Add RFC 1008 (QUERY Method) support\n* Add responseCode to redirectsToGet",
          "is_bot": false,
          "headline": "Add RFC 1008 (QUERY Method) support (#9496)",
          "author_name": "Mario Daniel Ruiz Saavedra",
          "author_login": "desiderantes",
          "committed_at": "2026-07-18T09:18:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "20fcded4b5a00e45836e932913e498b230d68f90",
          "body": "* Start including ECH data in RouteSelector results\n\nThis changes RouteSelector to use our new async API, when it is\navailable.\n\n* Extract the execute() function\n\n* Fixup Https results to use targetName\n\n* Fixup some tests\n\n* Use LinkedBlockingQueue instead of CompletableFuture\n\nCompletableFuture isn't available until Android API 24",
          "is_bot": false,
          "headline": " Start including ECH data in RouteSelector results (#9557)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-17T23:08:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "759a4e5b2d6d2a5b99c243f757de7fcf8903bf88",
          "body": "* Add ECH service metadata to Route.\n\nAlso combine DnsOverHttpsServer with FakeDns, so we can serve metadata\nanywhere we're testing DNS.\n\nAlso move stuff to the 'internal' package in okhttp-dnsoverhttps, so we\ncan make symbols visible to the main okhttp module's tests.\n\n* Fixup tests\n\n* Test DNS returning zero results",
          "is_bot": false,
          "headline": "Add ECH service metadata to Route. (#9556)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-17T20:19:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d0e76d0b9b7bd6b9aff7887957b6a7de92b98c9",
          "body": null,
          "is_bot": false,
          "headline": "Define only one DNS interface (#9554)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-17T15:42:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e14cdaa7a2f78a633f1c9f2e221e6e99130627f9",
          "body": "…irst (#9553)\n\n* New tests for HTTPS records\n\n* Honor resolvePrivateAddresses and resolvePublicAddresses in DnsOverHttps\n\n* Spotless\n\n* Test canceling after a partial success\n\n* Use a volatile to track whether it's canceled\n\n* Spotless",
          "is_bot": false,
          "headline": "DnsOverHttps Fixups: event sequencing, resolvePublicAddresses, IPv6 f…",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-17T13:46:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "71b6f9c493eac1aade4d74e38f70958d61822035",
          "body": null,
          "is_bot": false,
          "headline": "Update all the documentation to prevent broken links everywhere (#9552)",
          "author_name": "Pablo Baxter",
          "author_login": "pablobaxter",
          "committed_at": "2026-07-16T21:11:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f542df894f30a707951b1b74a5cf4d93914182ce",
          "body": "* WIP: Implement Dns2 on DnsOverHttps\n\nObviously this needs more than zero tests.\n\n* Test the new API with the old tests",
          "is_bot": false,
          "headline": "Implement Dns2 on DnsOverHttps (#9550)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-16T13:06:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8bf87e8d2f708f85999519f85e04b2a245436ea9",
          "body": "* Change how we test DnsOverHttps\n\nRather than returning opaque hard-coded response bodies, use our\nnew message encoder so we can test with real value objects.\n\n* Fixup internal API",
          "is_bot": false,
          "headline": "Change how we test DnsOverHttps (#9549)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-16T11:31:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "127cfe25168931aa600fff29c43f96d8d1dd480c",
          "body": null,
          "is_bot": false,
          "headline": "Write DNS messages (#9545)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-14T19:45:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d86233eb454795b54a29b8e3b8f18fc212e1f328",
          "body": "* Decode HTTPS DNS records\n\n* Spotless\n\n* Fix refactor\n\n* apiDump\n\n* Cut some allocations\n\n* animal sniffer",
          "is_bot": false,
          "headline": "Decode HTTPS DNS records (#9543)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-14T16:33:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a1ceb92e60646ed707bcc922c8414a6ecb2137d1",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.8.0 (#9542)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-14T13:51:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "37b3a953a7431ae0538f3a1c65a8ef574cce3bf0",
          "body": "* Write our own DNS message reader\n\n* Spotless\n\n* Avoid hashCode accelerators\n\n* PR feedback",
          "is_bot": false,
          "headline": "Write our own DNS message reader (#9541)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-14T13:14:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0afc65fee707a5df87f28233cba7c24899f236b0",
          "body": "* DnsAsDns2\n\n* Update okhttp/src/commonJvmAndroid/kotlin/okhttp3/internal/dns/DnsAsDns2.kt\n\nCo-authored-by: Jake Wharton <jw@jakewharton.com>\n\n* Spotless\n\n---------\n\nCo-authored-by: Jake Wharton <jw@jakewharton.com>",
          "is_bot": false,
          "headline": "DnsAsDns2 (#9540)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-13T22:24:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a237f781144a7d388c734ab86de7aa52127035b",
          "body": "* WIP: New DNS API\n\nBig new features are support for SVCB and being async.\n\n* Fixup docs\n\n* More API feedback\n\n* Replace data classes with manual equals/hashCode/toString things\n\nWe can't use data classes in public APIs without making backwards-compatibility\nmore difficult.\n\n* apiDump\n\n* Spotless",
          "is_bot": false,
          "headline": "Dns2, the new OkHttp DNS API (#9536)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-07-13T12:55:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "63e3caa7c7248fa38af7ba3375470446e2fb5574",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update ksp monorepo to v2.3.10 (#9532)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-10T04:30:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8ef2d8081a417149fa614fe817bea4af60674718",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update shadow.plugin to v9.5.1 (#9526)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-09T16:14:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc9f43ac2c37412772b05895a0d2c6fcb5c6c2a1",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.github.jnr:jnr-unixsocket to v0.39.2 (#9528)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-07-07T03:49:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1d2c0fe4844fb7143c37198015539eec2fccbd71",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update plugin com.diffplug.spotless to v8.8.0 (#9520)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-30T03:48:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0cadfa2997513d20bf88ca530c963a1266f17af9",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.7.0 (#9518)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-28T19:34:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b3a6e51aaaade843e201fa372a3c88afb5491854",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.github.jnr:jnr-unixsocket to v0.39.1 (#9516)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-28T19:06:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "359febc4e265c5cd98903dc226458de1e7a57808",
          "body": "* Set up API 37 emulator matrix in CI\n\nRefactor the android CI job to drive the emulator matrix off an explicit\ntarget/arch include list and add an experimental, non-blocking API 37\n(16 KB page-size) entry. Warm the Gradle cache by assembling the\ninstrumentation APK instead of running the Robolectri\n[…]\nor suppressed\n  exception) rather than thrown directly; accept any of those shapes.\n\nThese are independent of the Android 17 platform/ECH work, so they can\nland with the emulator CI setup ahead of it.",
          "is_bot": false,
          "headline": "emulator 37 testing (#9515)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-06-27T20:33:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "62ce184cf11abf9a42c743ca32781dac875aa413",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update Gradle to v9.6.1 (#9495)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-26T17:40:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d2aab54668961163b6d063366e2eae19b5f7b2a6",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.github.jnr:jnr-unixsocket to v0.39.0 (#9513)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-26T16:34:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "76bec10403501257b90c30b6e77d2ce9926e786f",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update shadow.plugin to v9.4.3 (#9512)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-26T04:47:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f7ea9ad9f1a2ee271ded865c174347ae08e25667",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency org.gradlex.extra-java-module-info to v1.14.2 (#9511)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-26T03:41:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "04aa831d1345bfe467a503ed95fd7c942d2f151a",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency org.gradlex.extra-java-module-info to v1.14.1 (#9509)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-25T16:07:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "055e69afccaed188e5c5adbca0269444545a9ac5",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update actions/cache action to v6 (#9507)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-23T17:54:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5caff201a9e8ebf64a33204b8046e5d38d324202",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update plugin com.diffplug.spotless to v8.7.0 (#9486)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-23T16:26:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8bb26f537c117b3bbb27a684c0707c1b85322ef4",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update ksp monorepo to v2.3.9 (#9461)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-22T01:07:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0d812ea2ff104a5b9119e3cf2c874778721d84a7",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update lint.gradle to v1.0.0 (#9488)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-22T00:48:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0fef838dc5365cf684ac28f835075efb33d48675",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update maven.publish to v0.37.0 (#9498)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-21T22:44:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9492a3a2604bdd2781564ff69b7e778bdc73924",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update actions/checkout action to v7 (#9494)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-18T21:41:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7ebdb0aca70628862a590fd18244de1265470848",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update spotless.plugin to v8.7.0 (#9487)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-16T10:02:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b6960566a79d5ad33732e8bbcbe845f6c5bd0110",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update graalvm to v1.1.2 (#9460)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-16T02:43:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6abc678ad07aefe055cb1afb6fd897c34a988eb9",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update checkstyle to v13.6.0 (#9485)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-15T12:34:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eef98589a84b2724e8f9ae64f09b9bde43a51eef",
          "body": null,
          "is_bot": false,
          "headline": "Fix the 4.x docs commit (#9484)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-06-09T12:55:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "668794b665a62045605930e03dd7ae0336ce5934",
          "body": "…478)\n\nSigned-off-by: Sai Asish Y <say.apm35@gmail.com>",
          "is_bot": false,
          "headline": "Don't crash route selection when the system proxy selector throws (#9…",
          "author_name": "Sai Asish Y",
          "author_login": "SAY-5",
          "committed_at": "2026-06-09T02:08:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "728e4d575d8e9a09bbab04ef09bb24ff6b1fa0ab",
          "body": null,
          "is_bot": false,
          "headline": "Don't publish docs for internal packages (#9483)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-06-08T21:50:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f00a315b23bc6ed89f67d310c81413a2d897c2b",
          "body": null,
          "is_bot": false,
          "headline": "Fix website publishing (#9482)",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-06-08T21:44:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1cfe02f6bc428e6a5f4f4e1699fc34d1cb16dc62",
          "body": null,
          "is_bot": false,
          "headline": "Prepare next development version.",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-06-08T19:34:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61423f472da24e0ccc42b6a2c0863fb27932fea5",
          "body": null,
          "is_bot": false,
          "headline": "Prepare for release 5.4.0.",
          "author_name": "Jesse Wilson",
          "author_login": "swankjesse",
          "committed_at": "2026-06-08T19:34:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d7e6effcb6852ca848b5f497032546b98b0a6370",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update eclipse.osgi to v3.24.200 (#9480)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-08T10:28:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a350986e3231a7b81cbfcc6e3c185327033422b",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update bnd to v7.3.0 (#9475)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-06-03T20:59:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0c5a45b1174b8f735cc251eb19faaed87b65d868",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.5.0 (#9468)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-30T22:45:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "113ad17f70af6984a1a8b4d46024118e5409c44b",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency macos to v26 (#9457)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-29T08:46:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "84f601af03d047eef3f4b2f0ca6b6f72303dcea1",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update shadow.plugin to v9.4.2 (#9466)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-28T13:42:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7d463f4bcfca91e4466037f2c65c7c700545d64c",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update spotless.plugin to v8.6.0 (#9464)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-27T22:25:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bf00f52921a0727bd18997cd92112dd2e582ed7",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update plugin com.diffplug.spotless to v8.6.0 (#9463)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-27T20:00:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cfc45a3f146d2389797a3d51d405e9118bed56c9",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update spotless.plugin to v8.5.1 (#9456)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T16:06:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "81c5006e336c1cb67870694e38707e2c1c44fb34",
          "body": null,
          "is_bot": false,
          "headline": "Apply gradle lint correctly (#9459)",
          "author_name": "Yuri Schimke",
          "author_login": "yschimke",
          "committed_at": "2026-05-25T10:12:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "003d68d14f3c60e8fb20d08c50281e3410566acc",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update org.bouncycastle to v1.84 (#9421)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T09:17:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fbc810ece6f870aba76533611d89e9c23de37e34",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update kotlinx-coroutines monorepo to v1.11.0 (#9450)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T09:17:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cab07951afccde4c44223c2750f8e3285b000933",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update graalvm (#9427)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T09:16:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "517ecdc9e77f06cf3536355f1df8c4b061cc2bf9",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.github.iherasymenko.jlink to v0.9 (#9441)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T09:16:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1509b260dd0a8dbd4cdb434c453ae7ff69d92444",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update plugin com.diffplug.spotless to v8.5.1 (#9455)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T09:15:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a96d3ef6240d51b483d06a9934d69f50a2f8702",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update Gradle to v9.5.1 (#9448)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-25T08:53:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42995fba4dc50f38ba33777c36da2635a2f75ab6",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update dependency com.puppycrawl.tools:checkstyle to v13.4.2 (#9432)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-24T01:46:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cd011b2a44111871146979d450d4fb9bd5b10c05",
          "body": "Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "Update junit-framework monorepo to v1.14.4 (#9431)",
          "author_name": "renovate[bot]",
          "author_login": "renovate[bot]",
          "committed_at": "2026-05-23T22:01:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 0,
      "commits_last_year": 385,
      "latest_release_at": null,
      "latest_release_tag": null,
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 47,
      "days_since_latest_release": null,
      "mean_days_between_releases": null
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 75,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": []
    },
    "popularity": {
      "forks": 9288,
      "stars": 47015,
      "watchers": 1616,
      "fork_history": {
        "days": [
          {
            "date": "2022-06-13",
            "count": 2
          },
          {
            "date": "2022-06-15",
            "count": 3
          },
          {
            "date": "2022-06-16",
            "count": 2
          },
          {
            "date": "2022-06-18",
            "count": 1
          },
          {
            "date": "2022-06-20",
            "count": 2
          },
          {
            "date": "2022-06-21",
            "count": 2
          },
          {
            "date": "2022-06-22",
            "count": 2
          },
          {
            "date": "2022-06-23",
            "count": 3
          },
          {
            "date": "2022-06-24",
            "count": 2
          },
          {
            "date": "2022-06-25",
            "count": 2
          },
          {
            "date": "2022-06-26",
            "count": 2
          },
          {
            "date": "2022-06-28",
            "count": 2
          },
          {
            "date": "2022-06-30",
            "count": 1
          },
          {
            "date": "2022-07-01",
            "count": 1
          },
          {
            "date": "2022-07-03",
            "count": 2
          },
          {
            "date": "2022-07-05",
            "count": 3
          },
          {
            "date": "2022-07-07",
            "count": 2
          },
          {
            "date": "2022-07-09",
            "count": 1
          },
          {
            "date": "2022-07-11",
            "count": 1
          },
          {
            "date": "2022-07-12",
            "count": 1
          },
          {
            "date": "2022-07-13",
            "count": 2
          },
          {
            "date": "2022-07-15",
            "count": 1
          },
          {
            "date": "2022-07-18",
            "count": 2
          },
          {
            "date": "2022-07-20",
            "count": 2
          },
          {
            "date": "2022-07-21",
            "count": 2
          },
          {
            "date": "2022-07-22",
            "count": 2
          },
          {
            "date": "2022-07-23",
            "count": 1
          },
          {
            "date": "2022-07-25",
            "count": 1
          },
          {
            "date": "2022-07-26",
            "count": 1
          },
          {
            "date": "2022-07-27",
            "count": 2
          },
          {
            "date": "2022-07-28",
            "count": 2
          },
          {
            "date": "2022-07-29",
            "count": 2
          },
          {
            "date": "2022-07-30",
            "count": 5
          },
          {
            "date": "2022-08-02",
            "count": 1
          },
          {
            "date": "2022-08-04",
            "count": 1
          },
          {
            "date": "2022-08-05",
            "count": 4
          },
          {
            "date": "2022-08-08",
            "count": 2
          },
          {
            "date": "2022-08-09",
            "count": 1
          },
          {
            "date": "2022-08-10",
            "count": 1
          },
          {
            "date": "2022-08-11",
            "count": 2
          },
          {
            "date": "2022-08-12",
            "count": 2
          },
          {
            "date": "2022-08-14",
            "count": 1
          },
          {
            "date": "2022-08-15",
            "count": 1
          },
          {
            "date": "2022-08-17",
            "count": 2
          },
          {
            "date": "2022-08-19",
            "count": 1
          },
          {
            "date": "2022-08-23",
            "count": 1
          },
          {
            "date": "2022-08-25",
            "count": 1
          },
          {
            "date": "2022-08-28",
            "count": 1
          },
          {
            "date": "2022-08-30",
            "count": 3
          },
          {
            "date": "2022-08-31",
            "count": 2
          },
          {
            "date": "2022-09-01",
            "count": 2
          },
          {
            "date": "2022-09-02",
            "count": 3
          },
          {
            "date": "2022-09-04",
            "count": 1
          },
          {
            "date": "2022-09-05",
            "count": 2
          },
          {
            "date": "2022-09-06",
            "count": 4
          },
          {
            "date": "2022-09-07",
            "count": 4
          },
          {
            "date": "2022-09-09",
            "count": 1
          },
          {
            "date": "2022-09-15",
            "count": 1
          },
          {
            "date": "2022-09-16",
            "count": 2
          },
          {
            "date": "2022-09-19",
            "count": 1
          },
          {
            "date": "2022-09-20",
            "count": 1
          },
          {
            "date": "2022-09-21",
            "count": 3
          },
          {
            "date": "2022-09-22",
            "count": 1
          },
          {
            "date": "2022-09-26",
            "count": 1
          },
          {
            "date": "2022-09-27",
            "count": 1
          },
          {
            "date": "2022-09-28",
            "count": 2
          },
          {
            "date": "2022-09-29",
            "count": 1
          },
          {
            "date": "2022-10-01",
            "count": 1
          },
          {
            "date": "2022-10-03",
            "count": 1
          },
          {
            "date": "2022-10-06",
            "count": 1
          },
          {
            "date": "2022-10-08",
            "count": 3
          },
          {
            "date": "2022-10-09",
            "count": 2
          },
          {
            "date": "2022-10-11",
            "count": 2
          },
          {
            "date": "2022-10-14",
            "count": 3
          },
          {
            "date": "2022-10-15",
            "count": 2
          },
          {
            "date": "2022-10-16",
            "count": 1
          },
          {
            "date": "2022-10-17",
            "count": 2
          },
          {
            "date": "2022-10-19",
            "count": 1
          },
          {
            "date": "2022-10-20",
            "count": 1
          },
          {
            "date": "2022-10-21",
            "count": 1
          },
          {
            "date": "2022-10-22",
            "count": 2
          },
          {
            "date": "2022-10-23",
            "count": 1
          },
          {
            "date": "2022-10-26",
            "count": 1
          },
          {
            "date": "2022-10-27",
            "count": 1
          },
          {
            "date": "2022-10-28",
            "count": 1
          },
          {
            "date": "2022-10-31",
            "count": 1
          },
          {
            "date": "2022-11-01",
            "count": 1
          },
          {
            "date": "2022-11-03",
            "count": 3
          },
          {
            "date": "2022-11-07",
            "count": 2
          },
          {
            "date": "2022-11-08",
            "count": 1
          },
          {
            "date": "2022-11-09",
            "count": 2
          },
          {
            "date": "2022-11-10",
            "count": 3
          },
          {
            "date": "2022-11-13",
            "count": 2
          },
          {
            "date": "2022-11-15",
            "count": 1
          },
          {
            "date": "2022-11-16",
            "count": 2
          },
          {
            "date": "2022-11-17",
            "count": 1
          },
          {
            "date": "2022-11-20",
            "count": 1
          },
          {
            "date": "2022-11-21",
            "count": 1
          },
          {
            "date": "2022-11-22",
            "count": 1
          },
          {
            "date": "2022-11-23",
            "count": 1
          },
          {
            "date": "2022-11-25",
            "count": 2
          },
          {
            "date": "2022-11-26",
            "count": 1
          },
          {
            "date": "2022-11-27",
            "count": 1
          },
          {
            "date": "2022-11-28",
            "count": 1
          },
          {
            "date": "2022-11-29",
            "count": 1
          },
          {
            "date": "2022-11-30",
            "count": 1
          },
          {
            "date": "2022-12-01",
            "count": 1
          },
          {
            "date": "2022-12-02",
            "count": 1
          },
          {
            "date": "2022-12-03",
            "count": 2
          },
          {
            "date": "2022-12-05",
            "count": 2
          },
          {
            "date": "2022-12-06",
            "count": 2
          },
          {
            "date": "2022-12-07",
            "count": 2
          },
          {
            "date": "2022-12-08",
            "count": 2
          },
          {
            "date": "2022-12-14",
            "count": 2
          },
          {
            "date": "2022-12-15",
            "count": 1
          },
          {
            "date": "2022-12-17",
            "count": 1
          },
          {
            "date": "2022-12-19",
            "count": 1
          },
          {
            "date": "2022-12-20",
            "count": 1
          },
          {
            "date": "2022-12-22",
            "count": 1
          },
          {
            "date": "2022-12-23",
            "count": 2
          },
          {
            "date": "2022-12-24",
            "count": 3
          },
          {
            "date": "2022-12-26",
            "count": 1
          },
          {
            "date": "2022-12-27",
            "count": 1
          },
          {
            "date": "2023-01-01",
            "count": 1
          },
          {
            "date": "2023-01-04",
            "count": 1
          },
          {
            "date": "2023-01-05",
            "count": 1
          },
          {
            "date": "2023-01-08",
            "count": 1
          },
          {
            "date": "2023-01-09",
            "count": 2
          },
          {
            "date": "2023-01-13",
            "count": 2
          },
          {
            "date": "2023-01-14",
            "count": 1
          },
          {
            "date": "2023-01-17",
            "count": 1
          },
          {
            "date": "2023-01-18",
            "count": 1
          },
          {
            "date": "2023-01-19",
            "count": 2
          },
          {
            "date": "2023-01-20",
            "count": 2
          },
          {
            "date": "2023-01-21",
            "count": 1
          },
          {
            "date": "2023-01-24",
            "count": 1
          },
          {
            "date": "2023-01-25",
            "count": 3
          },
          {
            "date": "2023-01-27",
            "count": 1
          },
          {
            "date": "2023-01-28",
            "count": 2
          },
          {
            "date": "2023-01-29",
            "count": 1
          },
          {
            "date": "2023-01-30",
            "count": 2
          },
          {
            "date": "2023-01-31",
            "count": 1
          },
          {
            "date": "2023-02-01",
            "count": 1
          },
          {
            "date": "2023-02-02",
            "count": 2
          },
          {
            "date": "2023-02-03",
            "count": 2
          },
          {
            "date": "2023-02-05",
            "count": 1
          },
          {
            "date": "2023-02-06",
            "count": 1
          },
          {
            "date": "2023-02-08",
            "count": 1
          },
          {
            "date": "2023-02-10",
            "count": 2
          },
          {
            "date": "2023-02-16",
            "count": 2
          },
          {
            "date": "2023-02-17",
            "count": 3
          },
          {
            "date": "2023-02-19",
            "count": 2
          },
          {
            "date": "2023-02-20",
            "count": 1
          },
          {
            "date": "2023-02-21",
            "count": 2
          },
          {
            "date": "2023-02-22",
            "count": 1
          },
          {
            "date": "2023-02-23",
            "count": 1
          },
          {
            "date": "2023-02-24",
            "count": 2
          },
          {
            "date": "2023-02-26",
            "count": 1
          },
          {
            "date": "2023-02-27",
            "count": 2
          },
          {
            "date": "2023-02-28",
            "count": 2
          },
          {
            "date": "2023-03-01",
            "count": 4
          },
          {
            "date": "2023-03-03",
            "count": 1
          },
          {
            "date": "2023-03-05",
            "count": 3
          },
          {
            "date": "2023-03-06",
            "count": 2
          },
          {
            "date": "2023-03-07",
            "count": 2
          },
          {
            "date": "2023-03-10",
            "count": 1
          },
          {
            "date": "2023-03-11",
            "count": 1
          },
          {
            "date": "2023-03-16",
            "count": 4
          },
          {
            "date": "2023-03-17",
            "count": 1
          },
          {
            "date": "2023-03-20",
            "count": 1
          },
          {
            "date": "2023-03-21",
            "count": 1
          },
          {
            "date": "2023-03-22",
            "count": 2
          },
          {
            "date": "2023-03-23",
            "count": 1
          },
          {
            "date": "2023-03-24",
            "count": 1
          },
          {
            "date": "2023-03-25",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 1
          },
          {
            "date": "2023-03-30",
            "count": 3
          },
          {
            "date": "2023-03-31",
            "count": 1
          },
          {
            "date": "2023-04-01",
            "count": 1
          },
          {
            "date": "2023-04-03",
            "count": 1
          },
          {
            "date": "2023-04-04",
            "count": 1
          },
          {
            "date": "2023-04-05",
            "count": 1
          },
          {
            "date": "2023-04-06",
            "count": 2
          },
          {
            "date": "2023-04-09",
            "count": 1
          },
          {
            "date": "2023-04-10",
            "count": 2
          },
          {
            "date": "2023-04-11",
            "count": 2
          },
          {
            "date": "2023-04-12",
            "count": 1
          },
          {
            "date": "2023-04-13",
            "count": 3
          },
          {
            "date": "2023-04-14",
            "count": 4
          },
          {
            "date": "2023-04-15",
            "count": 1
          },
          {
            "date": "2023-04-17",
            "count": 1
          },
          {
            "date": "2023-04-19",
            "count": 3
          },
          {
            "date": "2023-04-20",
            "count": 2
          },
          {
            "date": "2023-04-23",
            "count": 2
          },
          {
            "date": "2023-04-24",
            "count": 2
          },
          {
            "date": "2023-04-25",
            "count": 1
          },
          {
            "date": "2023-04-26",
            "count": 5
          },
          {
            "date": "2023-04-27",
            "count": 1
          },
          {
            "date": "2023-04-29",
            "count": 1
          },
          {
            "date": "2023-04-30",
            "count": 1
          },
          {
            "date": "2023-05-02",
            "count": 1
          },
          {
            "date": "2023-05-04",
            "count": 2
          },
          {
            "date": "2023-05-06",
            "count": 2
          },
          {
            "date": "2023-05-08",
            "count": 1
          },
          {
            "date": "2023-05-10",
            "count": 1
          },
          {
            "date": "2023-05-11",
            "count": 1
          },
          {
            "date": "2023-05-15",
            "count": 1
          },
          {
            "date": "2023-05-17",
            "count": 4
          },
          {
            "date": "2023-05-18",
            "count": 2
          },
          {
            "date": "2023-05-20",
            "count": 1
          },
          {
            "date": "2023-05-22",
            "count": 2
          },
          {
            "date": "2023-05-23",
            "count": 1
          },
          {
            "date": "2023-05-24",
            "count": 2
          },
          {
            "date": "2023-05-26",
            "count": 2
          },
          {
            "date": "2023-05-28",
            "count": 1
          },
          {
            "date": "2023-05-30",
            "count": 2
          },
          {
            "date": "2023-05-31",
            "count": 1
          },
          {
            "date": "2023-06-03",
            "count": 1
          },
          {
            "date": "2023-06-06",
            "count": 1
          },
          {
            "date": "2023-06-07",
            "count": 1
          },
          {
            "date": "2023-06-11",
            "count": 2
          },
          {
            "date": "2023-06-13",
            "count": 1
          },
          {
            "date": "2023-06-14",
            "count": 2
          },
          {
            "date": "2023-06-15",
            "count": 3
          },
          {
            "date": "2023-06-18",
            "count": 1
          },
          {
            "date": "2023-06-19",
            "count": 1
          },
          {
            "date": "2023-06-20",
            "count": 2
          },
          {
            "date": "2023-06-22",
            "count": 2
          },
          {
            "date": "2023-06-26",
            "count": 1
          },
          {
            "date": "2023-06-27",
            "count": 1
          },
          {
            "date": "2023-07-04",
            "count": 1
          },
          {
            "date": "2023-07-06",
            "count": 1
          },
          {
            "date": "2023-07-07",
            "count": 1
          },
          {
            "date": "2023-07-11",
            "count": 1
          },
          {
            "date": "2023-07-12",
            "count": 2
          },
          {
            "date": "2023-07-13",
            "count": 1
          },
          {
            "date": "2023-07-16",
            "count": 1
          },
          {
            "date": "2023-07-17",
            "count": 1
          },
          {
            "date": "2023-07-20",
            "count": 1
          },
          {
            "date": "2023-07-21",
            "count": 1
          },
          {
            "date": "2023-07-23",
            "count": 1
          },
          {
            "date": "2023-07-27",
            "count": 1
          },
          {
            "date": "2023-07-28",
            "count": 1
          },
          {
            "date": "2023-07-29",
            "count": 1
          },
          {
            "date": "2023-08-01",
            "count": 1
          },
          {
            "date": "2023-08-02",
            "count": 2
          },
          {
            "date": "2023-08-05",
            "count": 1
          },
          {
            "date": "2023-08-07",
            "count": 3
          },
          {
            "date": "2023-08-08",
            "count": 3
          },
          {
            "date": "2023-08-09",
            "count": 1
          },
          {
            "date": "2023-08-10",
            "count": 1
          },
          {
            "date": "2023-08-11",
            "count": 2
          },
          {
            "date": "2023-08-18",
            "count": 1
          },
          {
            "date": "2023-08-20",
            "count": 1
          },
          {
            "date": "2023-08-21",
            "count": 2
          },
          {
            "date": "2023-08-24",
            "count": 3
          },
          {
            "date": "2023-08-26",
            "count": 2
          },
          {
            "date": "2023-08-27",
            "count": 1
          },
          {
            "date": "2023-08-29",
            "count": 1
          },
          {
            "date": "2023-08-31",
            "count": 1
          },
          {
            "date": "2023-09-04",
            "count": 1
          },
          {
            "date": "2023-09-05",
            "count": 1
          },
          {
            "date": "2023-09-07",
            "count": 1
          },
          {
            "date": "2023-09-08",
            "count": 2
          },
          {
            "date": "2023-09-09",
            "count": 1
          },
          {
            "date": "2023-09-14",
            "count": 3
          },
          {
            "date": "2023-09-15",
            "count": 1
          },
          {
            "date": "2023-09-18",
            "count": 1
          },
          {
            "date": "2023-09-25",
            "count": 1
          },
          {
            "date": "2023-09-26",
            "count": 1
          },
          {
            "date": "2023-09-27",
            "count": 2
          },
          {
            "date": "2023-10-01",
            "count": 1
          },
          {
            "date": "2023-10-04",
            "count": 2
          },
          {
            "date": "2023-10-06",
            "count": 1
          },
          {
            "date": "2023-10-07",
            "count": 1
          },
          {
            "date": "2023-10-08",
            "count": 1
          },
          {
            "date": "2023-10-10",
            "count": 2
          },
          {
            "date": "2023-10-12",
            "count": 2
          },
          {
            "date": "2023-10-23",
            "count": 1
          },
          {
            "date": "2023-10-25",
            "count": 2
          },
          {
            "date": "2023-10-26",
            "count": 4
          },
          {
            "date": "2023-10-29",
            "count": 1
          },
          {
            "date": "2023-10-31",
            "count": 3
          },
          {
            "date": "2023-11-04",
            "count": 1
          },
          {
            "date": "2023-11-06",
            "count": 2
          },
          {
            "date": "2023-11-09",
            "count": 3
          },
          {
            "date": "2023-11-10",
            "count": 1
          },
          {
            "date": "2023-11-11",
            "count": 1
          },
          {
            "date": "2023-11-12",
            "count": 1
          },
          {
            "date": "2023-11-14",
            "count": 3
          },
          {
            "date": "2023-11-18",
            "count": 1
          },
          {
            "date": "2023-11-19",
            "count": 1
          },
          {
            "date": "2023-11-21",
            "count": 1
          },
          {
            "date": "2023-11-27",
            "count": 2
          },
          {
            "date": "2023-11-29",
            "count": 2
          },
          {
            "date": "2023-11-30",
            "count": 1
          },
          {
            "date": "2023-12-03",
            "count": 2
          },
          {
            "date": "2023-12-04",
            "count": 1
          },
          {
            "date": "2023-12-06",
            "count": 2
          },
          {
            "date": "2023-12-07",
            "count": 3
          },
          {
            "date": "2023-12-08",
            "count": 1
          },
          {
            "date": "2023-12-09",
            "count": 2
          },
          {
            "date": "2023-12-10",
            "count": 1
          },
          {
            "date": "2023-12-13",
            "count": 1
          },
          {
            "date": "2023-12-15",
            "count": 2
          },
          {
            "date": "2023-12-22",
            "count": 2
          },
          {
            "date": "2023-12-26",
            "count": 2
          },
          {
            "date": "2023-12-30",
            "count": 1
          },
          {
            "date": "2023-12-31",
            "count": 1
          },
          {
            "date": "2024-01-05",
            "count": 2
          },
          {
            "date": "2024-01-08",
            "count": 1
          },
          {
            "date": "2024-01-11",
            "count": 2
          },
          {
            "date": "2024-01-13",
            "count": 1
          },
          {
            "date": "2024-01-15",
            "count": 1
          },
          {
            "date": "2024-01-18",
            "count": 1
          },
          {
            "date": "2024-01-19",
            "count": 1
          },
          {
            "date": "2024-01-22",
            "count": 1
          },
          {
            "date": "2024-01-23",
            "count": 1
          },
          {
            "date": "2024-01-24",
            "count": 2
          },
          {
            "date": "2024-01-27",
            "count": 3
          },
          {
            "date": "2024-01-30",
            "count": 4
          },
          {
            "date": "2024-02-02",
            "count": 1
          },
          {
            "date": "2024-02-03",
            "count": 1
          },
          {
            "date": "2024-02-04",
            "count": 1
          },
          {
            "date": "2024-02-05",
            "count": 2
          },
          {
            "date": "2024-02-06",
            "count": 3
          },
          {
            "date": "2024-02-08",
            "count": 1
          },
          {
            "date": "2024-02-09",
            "count": 2
          },
          {
            "date": "2024-02-12",
            "count": 1
          },
          {
            "date": "2024-02-13",
            "count": 1
          },
          {
            "date": "2024-02-14",
            "count": 1
          },
          {
            "date": "2024-02-16",
            "count": 2
          },
          {
            "date": "2024-02-17",
            "count": 3
          },
          {
            "date": "2024-02-18",
            "count": 1
          },
          {
            "date": "2024-02-21",
            "count": 1
          },
          {
            "date": "2024-02-22",
            "count": 1
          },
          {
            "date": "2024-02-23",
            "count": 1
          },
          {
            "date": "2024-02-25",
            "count": 1
          },
          {
            "date": "2024-02-26",
            "count": 2
          },
          {
            "date": "2024-02-27",
            "count": 1
          },
          {
            "date": "2024-02-29",
            "count": 3
          },
          {
            "date": "2024-03-01",
            "count": 1
          },
          {
            "date": "2024-03-07",
            "count": 2
          },
          {
            "date": "2024-03-08",
            "count": 1
          },
          {
            "date": "2024-03-12",
            "count": 1
          },
          {
            "date": "2024-03-13",
            "count": 1
          },
          {
            "date": "2024-03-15",
            "count": 3
          },
          {
            "date": "2024-03-16",
            "count": 2
          },
          {
            "date": "2024-03-17",
            "count": 2
          },
          {
            "date": "2024-03-19",
            "count": 1
          },
          {
            "date": "2024-03-21",
            "count": 3
          },
          {
            "date": "2024-03-22",
            "count": 2
          },
          {
            "date": "2024-03-23",
            "count": 1
          },
          {
            "date": "2024-03-25",
            "count": 2
          },
          {
            "date": "2024-03-26",
            "count": 2
          },
          {
            "date": "2024-03-31",
            "count": 1
          },
          {
            "date": "2024-04-03",
            "count": 1
          },
          {
            "date": "2024-04-06",
            "count": 1
          },
          {
            "date": "2024-04-07",
            "count": 1
          },
          {
            "date": "2024-04-08",
            "count": 1
          },
          {
            "date": "2024-04-09",
            "count": 1
          },
          {
            "date": "2024-04-10",
            "count": 1
          },
          {
            "date": "2024-04-11",
            "count": 2
          },
          {
            "date": "2024-04-13",
            "count": 1
          },
          {
            "date": "2024-04-16",
            "count": 1
          },
          {
            "date": "2024-04-19",
            "count": 1
          },
          {
            "date": "2024-04-21",
            "count": 1
          },
          {
            "date": "2024-04-22",
            "count": 1
          },
          {
            "date": "2024-04-25",
            "count": 1
          },
          {
            "date": "2024-04-26",
            "count": 1
          },
          {
            "date": "2024-04-30",
            "count": 1
          },
          {
            "date": "2024-05-03",
            "count": 1
          },
          {
            "date": "2024-05-05",
            "count": 1
          },
          {
            "date": "2024-05-08",
            "count": 1
          },
          {
            "date": "2024-05-09",
            "count": 2
          },
          {
            "date": "2024-05-10",
            "count": 2
          },
          {
            "date": "2024-05-13",
            "count": 1
          },
          {
            "date": "2024-05-14",
            "count": 2
          },
          {
            "date": "2024-05-20",
            "count": 1
          },
          {
            "date": "2024-05-22",
            "count": 2
          },
          {
            "date": "2024-05-27",
            "count": 1
          },
          {
            "date": "2024-05-28",
            "count": 3
          },
          {
            "date": "2024-05-29",
            "count": 1
          },
          {
            "date": "2024-05-30",
            "count": 2
          },
          {
            "date": "2024-06-04",
            "count": 3
          },
          {
            "date": "2024-06-05",
            "count": 1
          },
          {
            "date": "2024-06-09",
            "count": 1
          },
          {
            "date": "2024-06-10",
            "count": 1
          },
          {
            "date": "2024-06-11",
            "count": 1
          },
          {
            "date": "2024-06-13",
            "count": 1
          },
          {
            "date": "2024-06-16",
            "count": 1
          },
          {
            "date": "2024-06-17",
            "count": 1
          },
          {
            "date": "2024-06-18",
            "count": 1
          },
          {
            "date": "2024-06-21",
            "count": 3
          },
          {
            "date": "2024-06-23",
            "count": 1
          },
          {
            "date": "2024-06-24",
            "count": 1
          },
          {
            "date": "2024-06-25",
            "count": 1
          },
          {
            "date": "2024-07-02",
            "count": 1
          },
          {
            "date": "2024-07-03",
            "count": 2
          },
          {
            "date": "2024-07-04",
            "count": 1
          },
          {
            "date": "2024-07-07",
            "count": 1
          },
          {
            "date": "2024-07-09",
            "count": 1
          },
          {
            "date": "2024-07-12",
            "count": 2
          },
          {
            "date": "2024-07-13",
            "count": 1
          },
          {
            "date": "2024-07-21",
            "count": 1
          },
          {
            "date": "2024-07-22",
            "count": 1
          },
          {
            "date": "2024-07-23",
            "count": 1
          },
          {
            "date": "2024-07-25",
            "count": 2
          },
          {
            "date": "2024-07-26",
            "count": 1
          },
          {
            "date": "2024-07-28",
            "count": 1
          },
          {
            "date": "2024-07-29",
            "count": 1
          },
          {
            "date": "2024-07-30",
            "count": 3
          },
          {
            "date": "2024-08-01",
            "count": 1
          },
          {
            "date": "2024-08-04",
            "count": 1
          },
          {
            "date": "2024-08-05",
            "count": 1
          },
          {
            "date": "2024-08-06",
            "count": 1
          },
          {
            "date": "2024-08-07",
            "count": 1
          },
          {
            "date": "2024-08-09",
            "count": 2
          },
          {
            "date": "2024-08-10",
            "count": 1
          },
          {
            "date": "2024-08-18",
            "count": 1
          },
          {
            "date": "2024-08-25",
            "count": 1
          },
          {
            "date": "2024-08-27",
            "count": 2
          },
          {
            "date": "2024-08-30",
            "count": 1
          },
          {
            "date": "2024-08-31",
            "count": 2
          },
          {
            "date": "2024-09-02",
            "count": 1
          },
          {
            "date": "2024-09-03",
            "count": 2
          },
          {
            "date": "2024-09-04",
            "count": 1
          },
          {
            "date": "2024-09-08",
            "count": 2
          },
          {
            "date": "2024-09-11",
            "count": 1
          },
          {
            "date": "2024-09-20",
            "count": 1
          },
          {
            "date": "2024-09-21",
            "count": 1
          },
          {
            "date": "2024-09-23",
            "count": 1
          },
          {
            "date": "2024-09-24",
            "count": 1
          },
          {
            "date": "2024-09-25",
            "count": 1
          },
          {
            "date": "2024-09-27",
            "count": 1
          },
          {
            "date": "2024-09-30",
            "count": 1
          },
          {
            "date": "2024-10-04",
            "count": 1
          },
          {
            "date": "2024-10-08",
            "count": 2
          },
          {
            "date": "2024-10-10",
            "count": 1
          },
          {
            "date": "2024-10-11",
            "count": 1
          },
          {
            "date": "2024-10-14",
            "count": 1
          },
          {
            "date": "2024-10-15",
            "count": 1
          },
          {
            "date": "2024-10-17",
            "count": 2
          },
          {
            "date": "2024-10-20",
            "count": 1
          },
          {
            "date": "2024-10-21",
            "count": 1
          },
          {
            "date": "2024-10-28",
            "count": 1
          },
          {
            "date": "2024-10-29",
            "count": 1
          },
          {
            "date": "2024-10-30",
            "count": 1
          },
          {
            "date": "2024-10-31",
            "count": 1
          },
          {
            "date": "2024-11-01",
            "count": 2
          },
          {
            "date": "2024-11-06",
            "count": 1
          },
          {
            "date": "2024-11-09",
            "count": 1
          },
          {
            "date": "2024-11-18",
            "count": 2
          },
          {
            "date": "2024-11-20",
            "count": 2
          },
          {
            "date": "2024-11-21",
            "count": 1
          },
          {
            "date": "2024-11-22",
            "count": 1
          },
          {
            "date": "2024-11-24",
            "count": 1
          },
          {
            "date": "2024-11-25",
            "count": 2
          },
          {
            "date": "2024-11-27",
            "count": 1
          },
          {
            "date": "2024-11-30",
            "count": 1
          },
          {
            "date": "2024-12-02",
            "count": 1
          },
          {
            "date": "2024-12-04",
            "count": 1
          },
          {
            "date": "2024-12-06",
            "count": 2
          },
          {
            "date": "2024-12-07",
            "count": 1
          },
          {
            "date": "2024-12-08",
            "count": 1
          },
          {
            "date": "2024-12-10",
            "count": 1
          },
          {
            "date": "2024-12-11",
            "count": 1
          },
          {
            "date": "2024-12-13",
            "count": 2
          },
          {
            "date": "2024-12-16",
            "count": 1
          },
          {
            "date": "2024-12-18",
            "count": 1
          },
          {
            "date": "2024-12-19",
            "count": 1
          },
          {
            "date": "2024-12-29",
            "count": 1
          },
          {
            "date": "2024-12-30",
            "count": 1
          },
          {
            "date": "2024-12-31",
            "count": 2
          },
          {
            "date": "2025-01-01",
            "count": 1
          },
          {
            "date": "2025-01-06",
            "count": 1
          },
          {
            "date": "2025-01-09",
            "count": 1
          },
          {
            "date": "2025-01-10",
            "count": 2
          },
          {
            "date": "2025-01-12",
            "count": 1
          },
          {
            "date": "2025-01-14",
            "count": 1
          },
          {
            "date": "2025-01-20",
            "count": 1
          },
          {
            "date": "2025-01-21",
            "count": 1
          },
          {
            "date": "2025-01-23",
            "count": 1
          },
          {
            "date": "2025-01-29",
            "count": 1
          },
          {
            "date": "2025-01-30",
            "count": 1
          },
          {
            "date": "2025-02-04",
            "count": 1
          },
          {
            "date": "2025-02-05",
            "count": 1
          },
          {
            "date": "2025-02-10",
            "count": 3
          },
          {
            "date": "2025-02-13",
            "count": 1
          },
          {
            "date": "2025-02-15",
            "count": 3
          },
          {
            "date": "2025-02-16",
            "count": 1
          },
          {
            "date": "2025-02-19",
            "count": 1
          },
          {
            "date": "2025-02-24",
            "count": 1
          },
          {
            "date": "2025-02-25",
            "count": 1
          },
          {
            "date": "2025-02-28",
            "count": 1
          },
          {
            "date": "2025-03-02",
            "count": 1
          },
          {
            "date": "2025-03-03",
            "count": 1
          },
          {
            "date": "2025-03-04",
            "count": 1
          },
          {
            "date": "2025-03-17",
            "count": 1
          },
          {
            "date": "2025-03-18",
            "count": 1
          },
          {
            "date": "2025-03-19",
            "count": 1
          },
          {
            "date": "2025-03-21",
            "count": 2
          },
          {
            "date": "2025-03-23",
            "count": 1
          },
          {
            "date": "2025-03-25",
            "count": 1
          },
          {
            "date": "2025-03-26",
            "count": 1
          },
          {
            "date": "2025-03-27",
            "count": 1
          },
          {
            "date": "2025-03-29",
            "count": 2
          },
          {
            "date": "2025-03-31",
            "count": 1
          },
          {
            "date": "2025-04-01",
            "count": 1
          },
          {
            "date": "2025-04-02",
            "count": 2
          },
          {
            "date": "2025-04-04",
            "count": 1
          },
          {
            "date": "2025-04-05",
            "count": 1
          },
          {
            "date": "2025-04-07",
            "count": 1
          },
          {
            "date": "2025-04-09",
            "count": 1
          },
          {
            "date": "2025-04-15",
            "count": 1
          },
          {
            "date": "2025-04-17",
            "count": 1
          },
          {
            "date": "2025-04-18",
            "count": 4
          },
          {
            "date": "2025-04-22",
            "count": 1
          },
          {
            "date": "2025-05-01",
            "count": 1
          },
          {
            "date": "2025-05-02",
            "count": 1
          },
          {
            "date": "2025-05-06",
            "count": 1
          },
          {
            "date": "2025-05-07",
            "count": 1
          },
          {
            "date": "2025-05-14",
            "count": 1
          },
          {
            "date": "2025-05-20",
            "count": 1
          },
          {
            "date": "2025-05-21",
            "count": 1
          },
          {
            "date": "2025-05-28",
            "count": 2
          },
          {
            "date": "2025-06-07",
            "count": 1
          },
          {
            "date": "2025-06-11",
            "count": 1
          },
          {
            "date": "2025-06-12",
            "count": 1
          },
          {
            "date": "2025-06-14",
            "count": 1
          },
          {
            "date": "2025-06-16",
            "count": 1
          },
          {
            "date": "2025-06-17",
            "count": 1
          },
          {
            "date": "2025-06-18",
            "count": 1
          },
          {
            "date": "2025-06-19",
            "count": 1
          },
          {
            "date": "2025-06-23",
            "count": 3
          },
          {
            "date": "2025-06-24",
            "count": 1
          },
          {
            "date": "2025-06-25",
            "count": 2
          },
          {
            "date": "2025-06-27",
            "count": 1
          },
          {
            "date": "2025-06-29",
            "count": 1
          },
          {
            "date": "2025-06-30",
            "count": 2
          },
          {
            "date": "2025-07-02",
            "count": 1
          },
          {
            "date": "2025-07-07",
            "count": 1
          },
          {
            "date": "2025-07-09",
            "count": 2
          },
          {
            "date": "2025-07-10",
            "count": 1
          },
          {
            "date": "2025-07-11",
            "count": 1
          },
          {
            "date": "2025-07-13",
            "count": 1
          },
          {
            "date": "2025-07-14",
            "count": 1
          },
          {
            "date": "2025-07-15",
            "count": 2
          },
          {
            "date": "2025-07-17",
            "count": 1
          },
          {
            "date": "2025-07-18",
            "count": 1
          },
          {
            "date": "2025-07-19",
            "count": 1
          },
          {
            "date": "2025-07-20",
            "count": 1
          },
          {
            "date": "2025-07-21",
            "count": 1
          },
          {
            "date": "2025-07-22",
            "count": 1
          },
          {
            "date": "2025-07-25",
            "count": 1
          },
          {
            "date": "2025-08-04",
            "count": 3
          },
          {
            "date": "2025-08-05",
            "count": 1
          },
          {
            "date": "2025-08-06",
            "count": 1
          },
          {
            "date": "2025-08-12",
            "count": 1
          },
          {
            "date": "2025-08-13",
            "count": 2
          },
          {
            "date": "2025-08-15",
            "count": 1
          },
          {
            "date": "2025-08-18",
            "count": 2
          },
          {
            "date": "2025-08-19",
            "count": 1
          },
          {
            "date": "2025-08-21",
            "count": 1
          },
          {
            "date": "2025-08-24",
            "count": 1
          },
          {
            "date": "2025-08-26",
            "count": 1
          },
          {
            "date": "2025-08-27",
            "count": 1
          },
          {
            "date": "2025-08-28",
            "count": 2
          },
          {
            "date": "2025-08-30",
            "count": 1
          },
          {
            "date": "2025-08-31",
            "count": 2
          },
          {
            "date": "2025-09-01",
            "count": 1
          },
          {
            "date": "2025-09-05",
            "count": 1
          },
          {
            "date": "2025-09-10",
            "count": 1
          },
          {
            "date": "2025-09-15",
            "count": 1
          },
          {
            "date": "2025-09-18",
            "count": 2
          },
          {
            "date": "2025-09-21",
            "count": 1
          },
          {
            "date": "2025-09-22",
            "count": 3
          },
          {
            "date": "2025-09-23",
            "count": 2
          },
          {
            "date": "2025-09-28",
            "count": 2
          },
          {
            "date": "2025-09-29",
            "count": 1
          },
          {
            "date": "2025-09-30",
            "count": 1
          },
          {
            "date": "2025-10-03",
            "count": 2
          },
          {
            "date": "2025-10-05",
            "count": 2
          },
          {
            "date": "2025-10-06",
            "count": 1
          },
          {
            "date": "2025-10-09",
            "count": 1
          },
          {
            "date": "2025-10-11",
            "count": 2
          },
          {
            "date": "2025-10-13",
            "count": 1
          },
          {
            "date": "2025-10-18",
            "count": 1
          },
          {
            "date": "2025-10-20",
            "count": 1
          },
          {
            "date": "2025-10-21",
            "count": 1
          },
          {
            "date": "2025-10-22",
            "count": 1
          },
          {
            "date": "2025-10-27",
            "count": 1
          },
          {
            "date": "2025-11-03",
            "count": 1
          },
          {
            "date": "2025-11-04",
            "count": 1
          },
          {
            "date": "2025-11-05",
            "count": 1
          },
          {
            "date": "2025-11-06",
            "count": 1
          },
          {
            "date": "2025-11-07",
            "count": 1
          },
          {
            "date": "2025-11-11",
            "count": 3
          },
          {
            "date": "2025-11-12",
            "count": 1
          },
          {
            "date": "2025-11-13",
            "count": 1
          },
          {
            "date": "2025-11-16",
            "count": 1
          },
          {
            "date": "2025-11-18",
            "count": 1
          },
          {
            "date": "2025-11-21",
            "count": 2
          },
          {
            "date": "2025-11-28",
            "count": 2
          },
          {
            "date": "2025-12-05",
            "count": 2
          },
          {
            "date": "2025-12-07",
            "count": 1
          },
          {
            "date": "2025-12-13",
            "count": 1
          },
          {
            "date": "2025-12-18",
            "count": 3
          },
          {
            "date": "2026-01-03",
            "count": 1
          },
          {
            "date": "2026-01-04",
            "count": 2
          },
          {
            "date": "2026-01-06",
            "count": 1
          },
          {
            "date": "2026-01-10",
            "count": 1
          },
          {
            "date": "2026-01-18",
            "count": 1
          },
          {
            "date": "2026-01-21",
            "count": 2
          },
          {
            "date": "2026-01-26",
            "count": 1
          },
          {
            "date": "2026-01-28",
            "count": 1
          },
          {
            "date": "2026-02-02",
            "count": 1
          },
          {
            "date": "2026-02-04",
            "count": 1
          },
          {
            "date": "2026-02-07",
            "count": 1
          },
          {
            "date": "2026-02-09",
            "count": 1
          },
          {
            "date": "2026-02-10",
            "count": 1
          },
          {
            "date": "2026-02-11",
            "count": 1
          },
          {
            "date": "2026-02-12",
            "count": 1
          },
          {
            "date": "2026-02-13",
            "count": 1
          },
          {
            "date": "2026-02-14",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 1
          },
          {
            "date": "2026-02-19",
            "count": 1
          },
          {
            "date": "2026-02-20",
            "count": 1
          },
          {
            "date": "2026-02-21",
            "count": 1
          },
          {
            "date": "2026-02-23",
            "count": 1
          },
          {
            "date": "2026-02-25",
            "count": 1
          },
          {
            "date": "2026-02-27",
            "count": 1
          },
          {
            "date": "2026-02-28",
            "count": 1
          },
          {
            "date": "2026-03-02",
            "count": 1
          },
          {
            "date": "2026-03-05",
            "count": 2
          },
          {
            "date": "2026-03-06",
            "count": 2
          },
          {
            "date": "2026-03-07",
            "count": 2
          },
          {
            "date": "2026-03-10",
            "count": 2
          },
          {
            "date": "2026-03-13",
            "count": 3
          },
          {
            "date": "2026-03-15",
            "count": 1
          },
          {
            "date": "2026-03-18",
            "count": 3
          },
          {
            "date": "2026-03-20",
            "count": 2
          },
          {
            "date": "2026-03-23",
            "count": 2
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-30",
            "count": 1
          },
          {
            "date": "2026-04-02",
            "count": 1
          },
          {
            "date": "2026-04-03",
            "count": 1
          },
          {
            "date": "2026-04-04",
            "count": 1
          },
          {
            "date": "2026-04-05",
            "count": 1
          },
          {
            "date": "2026-04-06",
            "count": 1
          },
          {
            "date": "2026-04-07",
            "count": 1
          },
          {
            "date": "2026-04-10",
            "count": 1
          },
          {
            "date": "2026-04-13",
            "count": 2
          },
          {
            "date": "2026-04-17",
            "count": 1
          },
          {
            "date": "2026-04-22",
            "count": 1
          },
          {
            "date": "2026-05-02",
            "count": 1
          },
          {
            "date": "2026-05-07",
            "count": 1
          },
          {
            "date": "2026-05-08",
            "count": 1
          },
          {
            "date": "2026-05-10",
            "count": 1
          },
          {
            "date": "2026-05-11",
            "count": 1
          },
          {
            "date": "2026-05-15",
            "count": 2
          },
          {
            "date": "2026-05-18",
            "count": 1
          },
          {
            "date": "2026-05-22",
            "count": 1
          },
          {
            "date": "2026-05-24",
            "count": 1
          },
          {
            "date": "2026-05-30",
            "count": 1
          },
          {
            "date": "2026-05-31",
            "count": 1
          },
          {
            "date": "2026-06-06",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 1
          },
          {
            "date": "2026-06-11",
            "count": 1
          },
          {
            "date": "2026-06-14",
            "count": 1
          },
          {
            "date": "2026-06-18",
            "count": 1
          },
          {
            "date": "2026-06-20",
            "count": 1
          },
          {
            "date": "2026-06-21",
            "count": 2
          },
          {
            "date": "2026-06-23",
            "count": 1
          },
          {
            "date": "2026-06-24",
            "count": 2
          },
          {
            "date": "2026-06-25",
            "count": 2
          },
          {
            "date": "2026-07-05",
            "count": 2
          },
          {
            "date": "2026-07-06",
            "count": 3
          },
          {
            "date": "2026-07-11",
            "count": 1
          },
          {
            "date": "2026-07-12",
            "count": 2
          },
          {
            "date": "2026-07-14",
            "count": 1
          },
          {
            "date": "2026-07-16",
            "count": 1
          },
          {
            "date": "2026-07-18",
            "count": 3
          },
          {
            "date": "2026-07-19",
            "count": 4
          },
          {
            "date": "2026-07-20",
            "count": 1
          },
          {
            "date": "2026-07-23",
            "count": 1
          },
          {
            "date": "2026-07-26",
            "count": 1
          },
          {
            "date": "2026-07-27",
            "count": 4
          },
          {
            "date": "2026-07-28",
            "count": 1
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_forks": 9288
      },
      "star_history": null,
      "open_issues_and_prs": 129
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "recipes",
        "sample",
        "samples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": true,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "android-test-app/build.gradle.kts",
        "android-test/build.gradle.kts",
        "build-logic/build.gradle.kts",
        "build.gradle.kts",
        "container-tests/build.gradle.kts",
        "maven-tests/pom.xml",
        "mockwebserver-deprecated/build.gradle.kts",
        "mockwebserver-junit4/build.gradle.kts",
        "mockwebserver-junit5/build.gradle.kts",
        "mockwebserver/build.gradle.kts",
        "module-tests/build.gradle.kts",
        "native-image-tests/build.gradle.kts",
        "okcurl/build.gradle.kts",
        "okhttp-bom/build.gradle.kts",
        "okhttp-brotli/build.gradle.kts",
        "okhttp-coroutines/build.gradle.kts",
        "okhttp-dnsoverhttps/build.gradle.kts",
        "okhttp-hpacktests/build.gradle.kts",
        "okhttp-idna-mapping-table/build.gradle.kts",
        "okhttp-java-net-cookiejar/build.gradle.kts",
        "okhttp-logging-interceptor/build.gradle.kts",
        "okhttp-osgi-tests/build.gradle.kts",
        "okhttp-sse/build.gradle.kts",
        "okhttp-testing-support/build.gradle.kts",
        "okhttp-tls/build.gradle.kts",
        "okhttp-urlconnection/build.gradle.kts",
        "okhttp-zstd/build.gradle.kts",
        "okhttp/build.gradle.kts",
        "regression-test/build.gradle.kts",
        "samples/compare/build.gradle.kts",
        "samples/crawler/build.gradle.kts",
        "samples/guide/build.gradle.kts",
        "samples/simple-client/build.gradle.kts",
        "samples/slack/build.gradle.kts",
        "samples/static-server/build.gradle.kts",
        "samples/tlssurvey/build.gradle.kts",
        "samples/unixdomainsockets/build.gradle.kts"
      ],
      "largest_source_bytes": 152954,
      "source_files_sampled": 624,
      "oversized_source_files": 9,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "android-test-app/build.gradle.kts",
        "android-test/build.gradle.kts",
        "build-logic/build.gradle.kts",
        "build.gradle.kts",
        "container-tests/build.gradle.kts",
        "maven-tests/pom.xml",
        "mockwebserver-deprecated/build.gradle.kts",
        "mockwebserver-junit4/build.gradle.kts",
        "mockwebserver-junit5/build.gradle.kts",
        "mockwebserver/build.gradle.kts",
        "module-tests/build.gradle.kts",
        "native-image-tests/build.gradle.kts",
        "okcurl/build.gradle.kts",
        "okhttp-bom/build.gradle.kts",
        "okhttp-brotli/build.gradle.kts",
        "okhttp-coroutines/build.gradle.kts",
        "okhttp-dnsoverhttps/build.gradle.kts",
        "okhttp-hpacktests/build.gradle.kts",
        "okhttp-idna-mapping-table/build.gradle.kts",
        "okhttp-java-net-cookiejar/build.gradle.kts",
        "okhttp-logging-interceptor/build.gradle.kts",
        "okhttp-osgi-tests/build.gradle.kts",
        "okhttp-sse/build.gradle.kts",
        "okhttp-testing-support/build.gradle.kts",
        "okhttp-tls/build.gradle.kts",
        "okhttp-urlconnection/build.gradle.kts",
        "okhttp-zstd/build.gradle.kts",
        "okhttp/build.gradle.kts",
        "regression-test/build.gradle.kts"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "flatted",
            "direct": false,
            "version": "3.2.7",
            "severity": "critical",
            "ecosystem": "npm",
            "cvss_score": 9.8,
            "advisory_ids": [
              "GHSA-25h7-pfq9-p65f",
              "GHSA-rf6f-7fwh-wjgh"
            ],
            "fixed_version": "3.4.2",
            "advisory_count": 2,
            "oldest_advisory_days": 136
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-qwcr-r2fm-qrc7",
              "GHSA-v422-hmwv-36x6"
            ],
            "fixed_version": "2.3.0",
            "advisory_count": 2,
            "oldest_advisory_days": 685
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.11",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-f886-m6hf-6m8v",
              "GHSA-mh99-v99m-4gvg",
              "GHSA-v6h2-p8h4-qcjw"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 4,
            "oldest_advisory_days": 413
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp",
              "GHSA-f886-m6hf-6m8v",
              "GHSA-mh99-v99m-4gvg",
              "GHSA-v6h2-p8h4-qcjw"
            ],
            "fixed_version": "5.0.8",
            "advisory_count": 4,
            "oldest_advisory_days": 413
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.2",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-grv7-fg5c-xmjg"
            ],
            "fixed_version": "3.0.3",
            "advisory_count": 1,
            "oldest_advisory_days": 804
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3xgq-45jj-v275"
            ],
            "fixed_version": "7.0.5",
            "advisory_count": 1,
            "oldest_advisory_days": 627
          },
          {
            "name": "engine.io",
            "direct": false,
            "version": "6.2.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-q9mw-68c2-j6m5",
              "GHSA-r635-g3xr-vw7x"
            ],
            "fixed_version": "6.6.7",
            "advisory_count": 2,
            "oldest_advisory_days": 1181
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m",
              "GHSA-h67p-54hq-rp68",
              "GHSA-mh29-5h37-fv8m"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 3,
            "oldest_advisory_days": 255
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.17.21",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.1,
            "advisory_ids": [
              "GHSA-f23m-r3pf-42rh",
              "GHSA-r5fr-rjxr-66jc",
              "GHSA-xxjr-mmjv-4gpg"
            ],
            "fixed_version": "4.18.0",
            "advisory_count": 3,
            "oldest_advisory_days": 187
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.2",
            "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": 159
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.0.1",
            "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": 159
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3v7f-55p6-f55p",
              "GHSA-c2c7-rcm5-vvqj"
            ],
            "fixed_version": "4.0.4",
            "advisory_count": 2,
            "oldest_advisory_days": 124
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.1,
            "advisory_ids": [
              "GHSA-5c6j-r48x-rmvq",
              "GHSA-76p7-773f-r4q5",
              "GHSA-qj8w-gfj5-8c6v"
            ],
            "fixed_version": "7.0.5",
            "advisory_count": 3,
            "oldest_advisory_days": 532
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 8.1,
            "advisory_ids": [
              "GHSA-5c6j-r48x-rmvq",
              "GHSA-76p7-773f-r4q5",
              "GHSA-qj8w-gfj5-8c6v"
            ],
            "fixed_version": "7.0.5",
            "advisory_count": 3,
            "oldest_advisory_days": 532
          },
          {
            "name": "socket.io",
            "direct": false,
            "version": "4.5.4",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.3,
            "advisory_ids": [
              "GHSA-25hc-qcg6-38wj"
            ],
            "fixed_version": "4.6.2",
            "advisory_count": 1,
            "oldest_advisory_days": 768
          },
          {
            "name": "socket.io-parser",
            "direct": false,
            "version": "4.2.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-677m-j7p3-52f9",
              "GHSA-cqmj-92xf-r6r9"
            ],
            "fixed_version": "4.2.6",
            "advisory_count": 2,
            "oldest_advisory_days": 1161
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.2.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52f5-9888-hmc6",
              "GHSA-ph9p-34f9-6g65"
            ],
            "fixed_version": "0.2.6",
            "advisory_count": 2,
            "oldest_advisory_days": 355
          },
          {
            "name": "ua-parser-js",
            "direct": false,
            "version": "0.7.32",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-fhg7-m89q-25r3"
            ],
            "fixed_version": "1.0.33",
            "advisory_count": 1,
            "oldest_advisory_days": 1280
          },
          {
            "name": "webpack",
            "direct": false,
            "version": "5.82.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.6,
            "advisory_ids": [
              "GHSA-38r7-794h-5758",
              "GHSA-4vvj-4cpr-p986",
              "GHSA-8fgc-7cc6-rx7x"
            ],
            "fixed_version": "5.104.1",
            "advisory_count": 3,
            "oldest_advisory_days": 699
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.2.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3h5v-q93c-6h6q",
              "GHSA-58qx-3vcg-4xpx",
              "GHSA-96hv-2xvq-fx4p"
            ],
            "fixed_version": "8.21.0",
            "advisory_count": 3,
            "oldest_advisory_days": 770
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-2g4f-4pwh-qvx6"
            ],
            "fixed_version": "8.18.0",
            "advisory_count": 1,
            "oldest_advisory_days": 166
          },
          {
            "name": "diff",
            "direct": false,
            "version": "5.0.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-73rr-hh4g-fpgx"
            ],
            "fixed_version": "8.0.3",
            "advisory_count": 1,
            "oldest_advisory_days": 194
          },
          {
            "name": "follow-redirects",
            "direct": false,
            "version": "1.15.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-cxjh-pqwp-8mfp",
              "GHSA-jchw-25xp-jwwc",
              "GHSA-r4q5-vmmm-2653"
            ],
            "fixed_version": "1.16.0",
            "advisory_count": 3,
            "oldest_advisory_days": 938
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.3",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 4.3,
            "advisory_ids": [
              "GHSA-mwcw-c2x4-8c55"
            ],
            "fixed_version": "5.0.9",
            "advisory_count": 1,
            "oldest_advisory_days": 596
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.10.3",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-6rw7-vpxm-498p",
              "GHSA-w7fw-mjwx-w883"
            ],
            "fixed_version": "6.14.2",
            "advisory_count": 2,
            "oldest_advisory_days": 209
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.4.2",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": null,
            "advisory_ids": [
              "GHSA-pxg6-pf52-xh8x"
            ],
            "fixed_version": "0.7.0",
            "advisory_count": 1,
            "oldest_advisory_days": 661
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "high": 19,
          "critical": 1,
          "moderate": 5
        },
        "advisory_count": 57,
        "affected_count": 26,
        "assessed_count": 289,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 4,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "maven"
      ],
      "dependencies": [
        {
          "name": "com.squareup.okhttp3:okhttp-bom",
          "manifest": "maven-tests/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "[5.2.0-SNAPSHOT,6.0.0-SNAPSHOT)"
        },
        {
          "name": "com.squareup.okhttp3:okhttp-jvm",
          "manifest": "maven-tests/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "com.squareup.okhttp3:mockwebserver3",
          "manifest": "maven-tests/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "com.squareup.okhttp3:logging-interceptor",
          "manifest": "maven-tests/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "com.squareup.okhttp3:logging-interceptor",
            "direct": true,
            "version": null,
            "ecosystem": "maven"
          },
          {
            "name": "com.squareup.okhttp3:mockwebserver3",
            "direct": true,
            "version": null,
            "ecosystem": "maven"
          },
          {
            "name": "com.squareup.okhttp3:okhttp-bom",
            "direct": true,
            "version": null,
            "ecosystem": "maven"
          },
          {
            "name": "com.squareup.okhttp3:okhttp-jvm",
            "direct": true,
            "version": null,
            "ecosystem": "maven"
          },
          {
            "name": "junit:junit",
            "direct": false,
            "version": "4.13.2",
            "ecosystem": "maven"
          },
          {
            "name": "@colors/colors",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@discoveryjs/json-ext",
            "direct": false,
            "version": "0.5.7",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/set-array",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/source-map",
            "direct": false,
            "version": "0.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.4.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.4.14",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.18",
            "ecosystem": "npm"
          },
          {
            "name": "@socket.io/component-emitter",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/cookie",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/cors",
            "direct": false,
            "version": "2.8.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/eslint",
            "direct": false,
            "version": "8.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/eslint-scope",
            "direct": false,
            "version": "3.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "0.0.51",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "17.0.41",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/ast",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/floating-point-hex-parser",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-api-error",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-buffer",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-numbers",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-wasm-bytecode",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/helper-wasm-section",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/ieee754",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/leb128",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/utf8",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-edit",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-gen",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-opt",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wasm-parser",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webassemblyjs/wast-printer",
            "direct": false,
            "version": "1.11.6",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/configtest",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/info",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@webpack-cli/serve",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@xtuc/ieee754",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xtuc/long",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "abab",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-import-assertions",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.12.6",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-keywords",
            "direct": false,
            "version": "3.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.1",
            "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": "anymatch",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64id",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "browser-stdout",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.20.4",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001350",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-trace-event",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "clone-deep",
            "direct": false,
            "version": "4.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": "colorette",
            "direct": false,
            "version": "2.0.17",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "connect",
            "direct": false,
            "version": "3.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "content-type",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "cors",
            "direct": false,
            "version": "2.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "custom-event",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "date-format",
            "direct": false,
            "version": "4.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "destroy",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "di",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serialize",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.4.148",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "engine.io",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "engine.io-parser",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ent",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "envinfo",
            "direct": false,
            "version": "7.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "events",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fastest-levenshtein",
            "direct": false,
            "version": "1.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "follow-redirects",
            "direct": false,
            "version": "1.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "format-util",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.0",
            "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-to-regexp",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.10",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "has",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy",
            "direct": false,
            "version": "1.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "import-local",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "interpret",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-object",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "isbinaryfile",
            "direct": false,
            "version": "4.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isobject",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jest-worker",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "karma",
            "direct": false,
            "version": "6.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "karma-chrome-launcher",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "karma-mocha",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "karma-sourcemap-loader",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "karma-webpack",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "kind-of",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "loader-runner",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.17.21",
            "ecosystem": "npm"
          },
          {
            "name": "log-symbols",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "log4js",
            "direct": false,
            "version": "6.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "merge-stream",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "2.6.0",
            "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": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "mocha",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "neo-async",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.5",
            "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-inspect",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-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": "picocolors",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-dir",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "qjobs",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "randombytes",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "2.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "rechoir",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "requires-port",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.2",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-cwd",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfdc",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "schema-utils",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "schema-utils",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-javascript",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "shallow-clone",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "socket.io",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "socket.io-adapter",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "socket.io-parser",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-loader",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "streamroller",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "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": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "8.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "terser",
            "direct": false,
            "version": "5.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "terser-webpack-plugin",
            "direct": false,
            "version": "5.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "1.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ua-parser-js",
            "direct": false,
            "version": "0.7.32",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "utils-merge",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "void-elements",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "watchpack",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack",
            "direct": false,
            "version": "5.82.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-cli",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-merge",
            "direct": false,
            "version": "4.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-merge",
            "direct": false,
            "version": "5.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-sources",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "wildcard",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "workerpool",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "16.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "20.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "20.2.9",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-unparser",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 293,
        "direct_count": 4,
        "indirect_count": 289
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 44,
        "merged_prs": 4109,
        "open_issues": 85,
        "closed_ratio": 0.98,
        "closed_issues": 4203,
        "closed_unmerged_prs": 977
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "swankjesse",
          "commits": 2926,
          "avatar_url": "https://avatars.githubusercontent.com/u/133019?v=4"
        },
        {
          "type": "User",
          "login": "yschimke",
          "commits": 820,
          "avatar_url": "https://avatars.githubusercontent.com/u/231923?v=4"
        },
        {
          "type": "User",
          "login": "JakeWharton",
          "commits": 784,
          "avatar_url": "https://avatars.githubusercontent.com/u/66577?v=4"
        },
        {
          "type": "User",
          "login": "amirlivneh",
          "commits": 73,
          "avatar_url": "https://avatars.githubusercontent.com/u/724254?v=4"
        },
        {
          "type": "User",
          "login": "nfuller",
          "commits": 56,
          "avatar_url": "https://avatars.githubusercontent.com/u/6388721?v=4"
        },
        {
          "type": "User",
          "login": "dave-r12",
          "commits": 55,
          "avatar_url": "https://avatars.githubusercontent.com/u/1520761?v=4"
        },
        {
          "type": "User",
          "login": "Goooler",
          "commits": 54,
          "avatar_url": "https://avatars.githubusercontent.com/u/10363352?v=4"
        },
        {
          "type": "User",
          "login": "oldergod",
          "commits": 35,
          "avatar_url": "https://avatars.githubusercontent.com/u/1767669?v=4"
        },
        {
          "type": "User",
          "login": "monkey-mas",
          "commits": 24,
          "avatar_url": "https://avatars.githubusercontent.com/u/5261677?v=4"
        },
        {
          "type": "User",
          "login": "mescortes",
          "commits": 21,
          "avatar_url": "https://avatars.githubusercontent.com/u/1553664?v=4"
        }
      ],
      "contributors_sampled": 99,
      "top_contributor_share": 0.568
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "build.yml",
        "containers.yml",
        "docs.yml",
        "publish.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": true,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "yarn.lock"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 9,
            "reason": "binaries present in source code",
            "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": 8,
            "reason": "25 out of 30 merged PRs checked by a CI test -- score normalized to 8",
            "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": 8,
            "reason": "Found 17/20 approved changesets -- score normalized to 8",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 25 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "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 11 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": 6,
            "reason": "SAST tool is not run on all commits -- score normalized to 6",
            "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": 10,
            "reason": "GitHub workflow tokens follow principle of least privilege",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "46 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "f9263c3615907711077b732e5b29e340ac8f4d09",
        "ran_at": "2026-07-28T14:21:23Z",
        "aggregate_score": 6.7,
        "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-28T08:52:42Z",
      "oldest_open_prs": [
        {
          "number": 7845,
          "created_at": "2023-05-21T10:50:09Z",
          "last_comment_at": "2026-04-05T14:52:44Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 8376,
          "created_at": "2024-04-20T11:46:19Z",
          "last_comment_at": "2026-04-05T14:31:57Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 8386,
          "created_at": "2024-04-24T17:15:17Z",
          "last_comment_at": "2025-08-04T07:33:05Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 8565,
          "created_at": "2024-10-31T14:46:52Z",
          "last_comment_at": "2025-09-29T08:36:42Z",
          "last_comment_author": "p1gp1g"
        },
        {
          "number": 8944,
          "created_at": "2025-07-16T15:37:37Z",
          "last_comment_at": "2025-07-27T15:17:53Z",
          "last_comment_author": "swankjesse"
        },
        {
          "number": 8996,
          "created_at": "2025-08-04T07:54:09Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9088,
          "created_at": "2025-09-27T10:21:18Z",
          "last_comment_at": "2025-10-03T18:06:23Z",
          "last_comment_author": "JakeWharton"
        },
        {
          "number": 9100,
          "created_at": "2025-10-03T01:43:56Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9193,
          "created_at": "2025-11-14T09:03:06Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9214,
          "created_at": "2025-11-29T06:45:54Z",
          "last_comment_at": "2026-01-02T14:53:16Z",
          "last_comment_author": "MukjepScarlet"
        },
        {
          "number": 9241,
          "created_at": "2026-01-04T12:57:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9246,
          "created_at": "2026-01-10T13:22:46Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9315,
          "created_at": "2026-02-05T22:53:13Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9321,
          "created_at": "2026-02-07T21:18:25Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9339,
          "created_at": "2026-02-22T12:31:06Z",
          "last_comment_at": "2026-02-23T20:40:54Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 9395,
          "created_at": "2026-03-30T02:25:59Z",
          "last_comment_at": "2026-06-23T04:12:45Z",
          "last_comment_author": "iVamsi"
        },
        {
          "number": 9396,
          "created_at": "2026-03-30T12:54:43Z",
          "last_comment_at": "2026-04-05T09:45:34Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 9407,
          "created_at": "2026-04-06T14:45:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 9410,
          "created_at": "2026-04-07T19:42:39Z",
          "last_comment_at": "2026-06-09T13:36:23Z",
          "last_comment_author": "eyupcanakman"
        },
        {
          "number": 9417,
          "created_at": "2026-04-12T13:19:46Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-28T08:36:34Z",
      "ci_last_conclusion": "FAILURE",
      "oldest_open_issues": [
        {
          "number": 3918,
          "created_at": "2018-03-09T16:50:34Z",
          "last_comment_at": "2024-12-09T21:53:42Z",
          "last_comment_author": "bt90"
        },
        {
          "number": 4655,
          "created_at": "2019-02-24T16:10:30Z",
          "last_comment_at": "2025-08-03T21:00:17Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 5500,
          "created_at": "2019-09-26T13:51:23Z",
          "last_comment_at": "2025-08-03T21:14:18Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 5627,
          "created_at": "2019-12-02T09:48:25Z",
          "last_comment_at": "2025-02-25T15:49:32Z",
          "last_comment_author": "ntrp"
        },
        {
          "number": 6171,
          "created_at": "2020-07-06T02:35:26Z",
          "last_comment_at": "2020-07-06T03:00:36Z",
          "last_comment_author": "swankjesse"
        },
        {
          "number": 6357,
          "created_at": "2020-10-31T11:49:45Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 6363,
          "created_at": "2020-10-31T13:43:37Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 6700,
          "created_at": "2021-06-08T11:32:19Z",
          "last_comment_at": "2025-06-24T03:10:27Z",
          "last_comment_author": "freeleeq"
        },
        {
          "number": 6702,
          "created_at": "2021-06-11T15:06:19Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 6790,
          "created_at": "2021-07-29T14:32:00Z",
          "last_comment_at": "2023-12-09T14:59:26Z",
          "last_comment_author": "swankjesse"
        },
        {
          "number": 7122,
          "created_at": "2022-02-27T15:19:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 7362,
          "created_at": "2022-06-30T19:43:27Z",
          "last_comment_at": "2024-11-17T18:19:09Z",
          "last_comment_author": "swankjesse"
        },
        {
          "number": 7470,
          "created_at": "2022-10-03T14:49:22Z",
          "last_comment_at": "2025-07-26T13:36:02Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 7692,
          "created_at": "2023-02-13T10:55:10Z",
          "last_comment_at": "2023-02-13T11:32:20Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 7904,
          "created_at": "2023-06-20T13:41:33Z",
          "last_comment_at": "2023-06-24T16:36:06Z",
          "last_comment_author": "yschimke"
        },
        {
          "number": 7963,
          "created_at": "2023-07-27T19:22:02Z",
          "last_comment_at": "2024-08-05T00:26:05Z",
          "last_comment_author": "Viacheslav-Romanov"
        },
        {
          "number": 7989,
          "created_at": "2023-08-21T06:57:57Z",
          "last_comment_at": "2026-01-16T09:42:25Z",
          "last_comment_author": "fbricon"
        },
        {
          "number": 8014,
          "created_at": "2023-09-07T09:01:34Z",
          "last_comment_at": "2025-12-18T08:28:58Z",
          "last_comment_author": "alex859"
        },
        {
          "number": 8032,
          "created_at": "2023-09-21T10:15:57Z",
          "last_comment_at": "2023-10-22T15:36:10Z",
          "last_comment_author": "MagicWang0907"
        },
        {
          "number": 8037,
          "created_at": "2023-09-26T13:16:26Z",
          "last_comment_at": "2025-08-12T09:14:15Z",
          "last_comment_author": "yschimke"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/lysine-dev/okhttp",
    "host": "github.com",
    "name": "okhttp",
    "owner": "lysine-dev"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 70,
      "inputs": {
        "security": 74,
        "vitality": 58,
        "community": 86,
        "governance": 59,
        "engineering": 78
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "moderate",
        "name": "Vitality",
        "value": 58,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 96,
            "inputs": {
              "commits_last_year": 385,
              "human_commit_share": 0.53,
              "days_since_last_push": 0,
              "active_weeks_last_year": 47
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "47/52 weeks with commits",
                "points": 32.5,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 47
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "385 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 385
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 11 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "critical",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 1,
            "inputs": {
              "releases_count": 0
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "no releases published",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases_published",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "no releases",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_releases",
                    "params": {}
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "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": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 86,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "forks": 9288,
              "stars": 47015,
              "watchers": 1616,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "47,015 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 47015
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "9,288 forks",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 9288
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1,616 watchers",
                "points": 15,
                "status": "met",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1616
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 70,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "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 (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 59,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 42,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 99,
              "top_contributor_share": 0.568
            },
            "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 57% of commits",
                "points": 9.7,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 57
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "99 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 99
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 25 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 89,
            "inputs": {
              "merged_prs": 4109,
              "open_issues": 85,
              "closed_issues": 4203,
              "issue_closed_ratio": 0.98,
              "closed_unmerged_prs": 977
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "98% of issues closed",
                "points": 45.8,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 98
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "4109/5086 decided PRs merged",
                "points": 30.9,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 4109,
                      "decided": 5086
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 17/20 approved changesets -- score normalized to 8",
                "points": 12,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "followers": 108,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "lysine-dev",
              "public_repos": 4,
              "account_age_days": 147
            },
            "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": "108 followers of lysine-dev",
                "points": 14.6,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 108,
                      "login": "lysine-dev"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "4 public repos, account ~0 yr old",
                "points": 5.9,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 4
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 78,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 70,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "4 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "25 out of 30 merged PRs checked by a CI test -- score normalized to 8",
                "points": 16,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "java",
                "android",
                "kotlin",
                "graalvm"
              ],
              "has_wiki": false,
              "homepage": "https://lysine.dev/okhttp/",
              "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://lysine.dev/okhttp/",
                "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": "4 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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": "good",
        "name": "Security",
        "value": 74,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "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": 67,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 6.7
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "binaries present in source code",
                "points": 6.8,
                "status": "partial",
                "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": "25 out of 30 merged PRs checked by a CI test -- score normalized to 8",
                "points": 2,
                "status": "partial",
                "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 17/20 approved changesets -- score normalized to 8",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 25 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "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 11 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 6",
                "points": 3,
                "status": "partial",
                "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": "GitHub workflow tokens follow principle of least privilege",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "46 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 289 resolved dependencies against OSV; 4 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). 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",
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 289
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 4
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 57,
              "affected_packages": 26,
              "assessed_packages": 289,
              "unassessed_packages": 4,
              "affected_by_severity": "critical 1, high 19, moderate 5, low 1",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "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": 289,
              "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": 9
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 58,
        "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.962,
              "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": "51 of 53 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 51,
                      "sampled": 53
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 64,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "yarn.lock"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": true,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "android-test-app/build.gradle.kts",
                "android-test/build.gradle.kts",
                "build-logic/build.gradle.kts",
                "build.gradle.kts",
                "container-tests/build.gradle.kts",
                "maven-tests/pom.xml",
                "mockwebserver-deprecated/build.gradle.kts",
                "mockwebserver-junit4/build.gradle.kts",
                "mockwebserver-junit5/build.gradle.kts",
                "mockwebserver/build.gradle.kts",
                "module-tests/build.gradle.kts",
                "native-image-tests/build.gradle.kts",
                "okcurl/build.gradle.kts",
                "okhttp-bom/build.gradle.kts",
                "okhttp-brotli/build.gradle.kts",
                "okhttp-coroutines/build.gradle.kts",
                "okhttp-dnsoverhttps/build.gradle.kts",
                "okhttp-hpacktests/build.gradle.kts",
                "okhttp-idna-mapping-table/build.gradle.kts",
                "okhttp-java-net-cookiejar/build.gradle.kts",
                "okhttp-logging-interceptor/build.gradle.kts",
                "okhttp-osgi-tests/build.gradle.kts",
                "okhttp-sse/build.gradle.kts",
                "okhttp-testing-support/build.gradle.kts",
                "okhttp-tls/build.gradle.kts",
                "okhttp-urlconnection/build.gradle.kts",
                "okhttp-zstd/build.gradle.kts",
                "okhttp/build.gradle.kts",
                "regression-test/build.gradle.kts",
                "samples/compare/build.gradle.kts",
                "samples/crawler/build.gradle.kts",
                "samples/guide/build.gradle.kts",
                "samples/simple-client/build.gradle.kts",
                "samples/slack/build.gradle.kts",
                "samples/static-server/build.gradle.kts",
                "samples/tlssurvey/build.gradle.kts",
                "samples/unixdomainsockets/build.gradle.kts"
              ],
              "dependency_bot_commit_share": 0.47
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "android-test-app/build.gradle.kts, android-test/build.gradle.kts, build-logic/build.gradle.kts (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "android-test-app/build.gradle.kts, android-test/build.gradle.kts, build-logic/build.gradle.kts"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "Kotlin (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Kotlin"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "devcontainer, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "devcontainer, 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": "47 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 47,
                      "sampled": 100
                    }
                  }
                ],
                "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": 99,
            "inputs": {
              "primary_language": "Kotlin",
              "largest_source_bytes": 152954,
              "source_files_sampled": 624,
              "oversized_source_files": 9
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Kotlin (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Kotlin"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "9/624 source files over 60KB",
                "points": 54.2,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 624,
                      "oversized": 9
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "recipes",
                "sample",
                "samples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "recipes, sample, samples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "recipes, sample, samples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
    "Could not fetch maven package 'com.squareup.okhttp3:maven-tests' from its registry"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-28T14:22:00.387058Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/lysine-dev/okhttp.svg",
  "full_name": "lysine-dev/okhttp",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

Scores are signals, not warranties. They reflect publicly visible practices on GitHub — not a code audit, and not a security guarantee.

Missing data is excluded and weights renormalized, never scored as zero. Methodology is versioned and open: metrics v1.13.0, schema v0.27.0 — full methodology · metrics wiki.

How one result sits in the wider record: aggregate statistics.