公开记录
软件健康报告模式 0.27.0 · 指标 1.13.0 · 2026-07-25 23:06 UTC

ratchet-run / ratchet

A Java Jakarta EE CDI-native scheduler for persistent jobs with retries, batches, workflows, encryption, and delayed signals.

JavaApache-2.0★ 22 星标⑂ 0 复刻始于 2026年4月在 GitHub 上查看 ↗

ratchet-run/ratchet 的健康指数为 100 分中的 63 分,处于「中等」区间。 其得分最高的类别是Vitality(76/100),最低的是Sustainability & Governance(52/100)。 最近一次更新在 2 天前。 近期的大部分工作由 1 位贡献者完成。

63
总分 / 100
中等

软件健康指数

指标归入加权类别,统一采用 1–100 量表。总体分先取类别加权平均;当公开证据触发高风险司法辖区政策时,评级会按政策调整,并设置 49(有风险)的上限。AI 就绪度不计入总体分。

63
优秀85-100堪称典范;基本满足所有检验标准
良好70-84健康;仅有轻微不足
中等50-69可接受,但存在明显不足;建议进行审查
存在风险30-49存在重大薄弱环节;采用时应保持审慎
危急1-29问题严重(项目被弃置、仅有单一维护者、缺乏基本工程规范)
活力社区与采用可持续性与治理工程质量安全AI 就绪度

评分画像

每条轴代表一个类别。形状比平均值更重要——健康的对象会填满整个图形,而“一峰一谷”式画像意味着某一维度的优势正掩盖另一维度的风险。

所有权

Ratchet组织
1 关注者1 个公开仓库始于 2026年5月

该仓库由组织支持——共同承担、可问责的托管责任,可延续于任何单一维护者之后。

软件包生态系统

注册表软件包版本月下载量版本数最近发布
Mavenrun.ratchet:ratchet0.2.1-34 天前
Mavenrun.ratchet:ratchet-api0.2.1-34 天前
Mavenrun.ratchet:ratchet-encryption0.2.1-34 天前

按类别列示的指标

活力

项目是否仍有生命——是否仍在编写代码,是否仍在发布版本?

76良好 · 占总体的 22%
评分方式
36/36推送新近度 — 最近一次推送于 2 天前
13.2/36提交节奏 — 52 周中有 19 周有提交
18/18提交量 — 最近一年 1,418 次提交
0/10OpenSSF Scorecard:Maintained — project was created within the last 90 days. Please review its contents carefully
所用输入
commits_last_year1,418
human_commit_share1
days_since_last_push2
active_weeks_last_year19

发布纪律

90优秀
评分方式
27/27有发布版本 — 已发布 3 个发布版本
36/36发布时效 — 最近一次发布版本于 4 天前
27/27发布节奏 — 约每 18.6 天发布一次
0/10OpenSSF Scorecard:Signed-Releases — Project has not signed or included provenance with any releases.
所用输入
releases_count3
latest_release_tagv0.2.1
releases_from_tags
days_since_latest_release4
mean_days_between_releases18.6

社区与采用

项目是否拥有用户、下载量与关注度,并具备欢迎贡献者参与的配置?

54中等 · 占总体的 18%
评分方式
21.4/60星标 — 22 个星标
0/25复刻 — 0 个复刻
0/15关注者 — 0 位关注者
所用输入
forks0
stars22
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history

社区健康

92优秀
评分方式
22.5/22.5README
22.5/22.5许可证 — 可识别的许可证(Apache-2.0)
18/18CONTRIBUTING 指南
13.5/13.5行为准则
0/7.2议题模板
6.3/6.3PR 模板
所用输入
has_readme
has_license
has_contributing
has_issue_template
has_code_of_conduct
has_pull_request_template

可持续性与治理

项目能否在其成员之外延续——巴士系数、响应能力、由谁支持,以及软件包的维护状况?

52中等 · 占总体的 24%
评分方式
9/54巴士系数 — 1 位贡献者贡献了半数提交
0/22.5提交分布 — 头号贡献者编写了 100% 的提交
1.4/13.5贡献者广度 — 1 位贡献者
3/10OpenSSF Scorecard:Contributors — project has 1 contributing companies or organizations -- score normalized to 3
所用输入
bus_factor1
contributors_sampled1
top_contributor_share1
评分方式
46.8/46.8议题解决 — 100% 的议题已关闭
37.1/38.3PR 接受 — 已裁定的 PR 中 134/138 已合并
0/15OpenSSF Scorecard:Code-Review — Found 0/11 approved changesets -- score normalized to 0
所用输入
merged_prs134
open_issues0
closed_issues6
issue_closed_ratio1
closed_unmerged_prs4
评分方式
30/30所有权背书 — 组织持有
0/20已验证域名
2.2/25所有者影响力 — ratchet-run 有 1 位关注者
2.6/25既往记录 — 1 个公开仓库,账户约 0 年
所用输入
followers1
owner_typeOrganization
is_verified
owner_loginratchet-run
public_repos1
account_age_days80
评分方式
25/25已发布且可解析 — maven 上有 3 个软件包
35/35发布时效 — 最近一次发布于 4 天前
12/20版本历史 — 3 个已发布版本
20/20未被弃用 — 活跃,未被弃用或撤回
所用输入
packagesrun.ratchet:ratchet, run.ratchet:ratchet-api, run.ratchet:ratchet-encryption
ecosystemsmaven
any_deprecated
min_days_since_publish4

工程质量

基础的工程与文档实践是否到位?

71良好 · 占总体的 20%

工程实践

68中等
评分方式
24/24CI 工作流 — 10 个工作流
24/24存在测试
0/16Linter 配置
0/9.6Pre-commit 钩子
0/6.4.editorconfig
20/20OpenSSF Scorecard:CI-Tests — 11 out of 11 merged PRs checked by a CI test -- score normalized to 10
所用输入
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_config

文档

75良好
评分方式
30/30README
0/25文档目录
15/15文档 / 主页站点 — https://ratchet.run/
10/10仓库描述
10/10主题标签 — 20 个主题标签
10/10Wiki
所用输入
topicsbackground-jobs, cdi, circuit-breaker, cron, dead-letter-queue, jakarta-ee, java, jbatch, job-scheduler, jpa, mongodb, mysql, postgresql, recurring-jobs, retry, scheduler, task-scheduler, workflow, workflow-engine, quartz-alternative
has_wiki
homepagehttps://ratchet.run/
has_readme
has_docs_dir
has_description

安全

可见的安全与供应链实践是否稳固,且不存在未解决的高风险司法辖区暴露?

60中等 · 占总体的 16%

安全态势

50中等
评分方式
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 11 out of 11 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/11 approved changesets -- score normalized to 0
0.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
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.5许可证 — license file detected
0/7.5Maintained — project was created within the last 90 days. Please review its contents carefully
5/5Packaging — packaging workflow detected
0.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
5/5SAST — SAST tool detected
5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
3.8/7.5Vulnerabilities — 5 existing vulnerabilities detected
所用输入
sourceopenssf_scorecard
checks_evaluated18
scorecard_versionv5.5.0
checks_inconclusive0
scorecard_aggregate5
评分方式
35/35直接依赖不含已知公告 — 没有直接依赖携带已知公告
25/25间接依赖不含已知公告 — 没有间接依赖携带已知公告
0/40没有长期未处理的公告 — 没有公告带有发布日期
所用输入
sourceosv
advisories0
affected_packages0
assessed_packages21
unassessed_packages0
affected_by_severitynone
direct_affected_packages0
已排除计分(无数据或不适用):没有长期未处理的公告。 其余权重已重新归一化。 比对的是 maven:run.ratchet:ratchet@0.2.1 的运行时依赖闭包——安装已发布的软件包时真正被拉取进来的内容——共 21 个软件包。 未对可达性进行分析。

AI 就绪度

该仓库在多大程度上具备与 AI 编码代理协同开发与维护的条件?这是一枚独立的实验性徽章——权重为 0.0,因此单独呈现,不影响总体健康评分。

58中等 · 占总体的 0%
评分方式
0/45代理指令 — 没有 CLAUDE.md / AGENTS.md / 编辑器规则
0/15机器可读文档(llms.txt)
40/40可读的提交历史 — 100 次人类提交中有 80 次说明了意图(结构化标题或解释性正文)
所用输入
has_llms_txt
legible_history_share0.8
agent_instruction_files
agent_instruction_max_bytes
评分方式
12.6/18一条命令的引导启动 — coordinators/ratchet-coordinator-common/pom.xml, coordinators/ratchet-coordinator-hazelcast/pom.xml, coordinators/ratchet-coordinator-infinispan/pom.xml(工具链约定,无任务运行器)
22/22自动化测试
0/11Lint / 格式化配置
11/11静态类型检查 — Java(静态类型)
10/10可复现环境 — Dockerfile, lockfile
0/10已体现的代理实践 — 最近 100 次提交中没有代理编写的提交
5/8自动化维护 — 已配置依赖自动化,但在抽样提交中未观察到
1/10OpenSSF Scorecard:Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 1
所用输入
has_nix
has_tests
lockfilespackage-lock.json
has_dockerfile
typed_language
bootstrap_files
has_devcontainer
has_linter_config
typecheck_configs
agent_commit_share0
toolchain_manifestscoordinators/ratchet-coordinator-common/pom.xml, coordinators/ratchet-coordinator-hazelcast/pom.xml, coordinators/ratchet-coordinator-infinispan/pom.xml, coordinators/ratchet-coordinator-jms/pom.xml, coordinators/ratchet-coordinator-postgresql/pom.xml, observability/ratchet-micrometer/pom.xml, observability/ratchet-otel/pom.xml, pom.xml, ratchet-api/pom.xml, ratchet-bom/pom.xml, ratchet-encryption/pom.xml, ratchet/pom.xml, stores/ratchet-store-core/pom.xml, stores/ratchet-store-mongodb/pom.xml, stores/ratchet-store-mysql/pom.xml, stores/ratchet-store-oracle/pom.xml, stores/ratchet-store-postgresql/pom.xml, stores/ratchet-store-sqlserver/pom.xml, testing/ratchet-arch-tests/pom.xml, testing/ratchet-coverage/pom.xml, testing/ratchet-loadtest/pom.xml, testing/ratchet-showcase/pom.xml, testing/ratchet-tck/api/pom.xml, testing/ratchet-tck/coordinator/pom.xml, testing/ratchet-tck/jakarta/pom.xml, testing/ratchet-tck/pom.xml, testing/ratchet-tck/store/pom.xml, testing/ratchet-tck/util/pom.xml, testing/ratchet-testsuite-jpms/pom.xml, testing/ratchet-testsuite/pom.xml, testing/ratchet-version-compatibility/pom.xml
dependency_bot_commit_share0
评分方式
45/45可类型检查的代码 — Java(静态类型)
54.9/55可控的文件大小 — 采样的 1,385 个源文件中有 2 个超过 60KB
所用输入
primary_languageJava
largest_source_bytes63,304
source_files_sampled1,385
oversized_source_files2

机器可读接口

40存在风险
评分方式
0/40API 模式(OpenAPI/GraphQL/proto)
0/20MCP 服务器
40/40可运行示例 — examples
所用输入
example_dirsexamples
has_mcp_signal
api_schema_files

关键数据

22GitHub 星标
1贡献者
1,418最近 12 个月提交数
2距最近推送天数
3发布版本数
1巴士系数(bus factor)
0开放议题
Maven, npm软件包生态系统数

数据采集警告

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

更多细节

OpenSSF Scorecard 5.0 / 10
5.0综合

来自开源项目 OpenSSF Scorecard 的独立、工具无关的安全评估。每项检查奖励的是安全实践本身,而非特定供应商的工具。Scorecard 无法判定的检查项标记为 不适用,并从安全评分中剔除(绝不按零分计)。Scorecard v5.5.0 · 2026-07-25 23:06 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests11 out of 11 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/11 approved changesets -- score normalized to 0
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintainedproject was created within the last 90 days. Please review its contents carefully
10Packagingpackaging workflow detected
1Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 1
10SASTSAST tool detected
10Security-Policysecurity policy file detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
5Vulnerabilities5 existing vulnerabilities detected
直接依赖 73
注册表软件包版本约束清单文件
Mavenorg.apache.artemis:artemis-jakarta-server${artemis.version}pom.xml
Mavenorg.apache.artemis:artemis-jakarta-client${artemis.version}pom.xml
Mavenorg.infinispan:infinispan-core${infinispan.version}pom.xml
Mavencom.hazelcast:hazelcast${hazelcast.version}pom.xml
Mavenio.netty:netty-bom${netty.version}pom.xml
Mavenorg.apache.commons:commons-configuration2${commons-configuration2.version}pom.xml
Mavencom.fasterxml.jackson.core:jackson-core${jackson-core.version}pom.xml
Mavenorg.ow2.asm:asm${asm.version}pom.xml
Mavenorg.ow2.asm:asm-tree${asm.version}pom.xml
Mavencom.cronutils:cron-utils${cron-utils.version}pom.xml
Mavenorg.jboss.arquillian:arquillian-bom${arquillian.version}pom.xml
Mavenrun.ratchet:ratchet-api${project.version}pom.xml
Mavenrun.ratchet:ratchet${project.version}pom.xml
Mavenrun.ratchet:ratchet-store-core${project.version}pom.xml
Mavenrun.ratchet:ratchet-encryption${project.version}pom.xml
Mavenrun.ratchet:ratchet-store-mysql${project.version}pom.xml
Mavenrun.ratchet:ratchet-store-postgresql${project.version}pom.xml
Mavenrun.ratchet:ratchet-store-oracle${project.version}pom.xml
Mavenrun.ratchet:ratchet-store-sqlserver${project.version}pom.xml
Mavenrun.ratchet:ratchet-store-mongodb${project.version}pom.xml
Mavenrun.ratchet:ratchet-coordinator-common${project.version}pom.xml
Mavenrun.ratchet:ratchet-coordinator-postgresql${project.version}pom.xml
Mavenrun.ratchet:ratchet-coordinator-jms${project.version}pom.xml
Mavenrun.ratchet:ratchet-coordinator-infinispan${project.version}pom.xml
Mavenrun.ratchet:ratchet-coordinator-hazelcast${project.version}pom.xml
Mavenrun.ratchet:ratchet-tck-util${project.version}pom.xml
Mavenrun.ratchet:ratchet-tck-store${project.version}pom.xml
Mavenrun.ratchet:ratchet-tck-api${project.version}pom.xml
Mavenrun.ratchet:ratchet-tck-jakarta${project.version}pom.xml
Mavenrun.ratchet:ratchet-tck-coordinator${project.version}pom.xml
Mavenrun.ratchet:ratchet-micrometer${project.version}pom.xml
Mavenrun.ratchet:ratchet-otel${project.version}pom.xml
Mavenrun.ratchet:ratchet-testsuite${project.version}pom.xml
Mavenrun.ratchet:ratchet-arch-tests${project.version}pom.xml
Mavenorg.testcontainers:testcontainers-bom${testcontainers.version}pom.xml
Mavencom.google.protobuf:protobuf-java${protobuf-java.version}pom.xml
Mavenorg.mongodb:mongodb-driver-sync${mongodb-driver.version}pom.xml
Mavenorg.jboss.logging:jboss-logging${jboss-logging.version}pom.xml
Mavenorg.pitest:pitest-junit5-plugin${pitest-junit5-plugin.version}pom.xml
Mavenorg.ow2.asm:asm${asm.version}pom.xml
Mavenorg.ow2.asm:asm-analysis${asm.version}pom.xml
Mavenorg.ow2.asm:asm-commons${asm.version}pom.xml
Mavenorg.ow2.asm:asm-tree${asm.version}pom.xml
Mavenorg.ow2.asm:asm-util${asm.version}pom.xml
Mavenrun.ratchet:ratchet-api${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-store-core${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-encryption${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-store-mysql${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-store-postgresql${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-store-oracle${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-store-sqlserver${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-store-mongodb${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-coordinator-common${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-coordinator-postgresql${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-coordinator-jms${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-coordinator-infinispan${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-coordinator-hazelcast${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-micrometer${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-otel${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-tck-util${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-tck-store${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-tck-api${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-tck-jakarta${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-tck-coordinator${project.version}ratchet-bom/pom.xml
Mavenrun.ratchet:ratchet-apiratchet-encryption/pom.xml
Mavenrun.ratchet:ratchet-apiratchet/pom.xml
Mavenrun.ratchet:ratchet-store-coreratchet/pom.xml
Mavenrun.ratchet:ratchet-encryptionratchet/pom.xml
Mavenorg.ow2.asm:asmratchet/pom.xml
Mavenorg.ow2.asm:asm-treeratchet/pom.xml
Mavencom.cronutils:cron-utilsratchet/pom.xml
Mavenorg.jboss.logging:jboss-loggingratchet/pom.xml
全部依赖 482

来自 GitHub 依赖图的完整解析依赖集合:34 个直接依赖与 448 个间接(传递)软件包。仓库提交锁文件时,传递闭包才是完整的。

注册表软件包版本关系
Mavencom.cronutils:cron-utils9.2.1直接
Mavencom.fasterxml.jackson.core:jackson-core2.18.6直接
Mavencom.google.protobuf:protobuf-java3.25.9直接
Mavencom.hazelcast:hazelcast5.5.0直接
Mavenorg.apache.artemis:artemis-jakarta-client2.54.0直接
Mavenorg.apache.artemis:artemis-jakarta-server2.54.0直接
Mavenorg.apache.commons:commons-configuration22.15.0直接
Mavenorg.infinispan:infinispan-core15.1.7.Final直接
Mavenorg.jboss.logging:jboss-logging3.6.3.Final直接
Mavenorg.mongodb:mongodb-driver-sync5.7.0直接
Mavenorg.ow2.asm:asm9.8直接
Mavenorg.ow2.asm:asm-tree9.8直接
Mavenrun.ratchet:ratchet0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-api0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-coordinator-common0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-coordinator-hazelcast0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-coordinator-infinispan0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-coordinator-jms0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-coordinator-postgresql0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-encryption0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-micrometer0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-otel0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-store-core0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-store-mongodb0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-store-mysql0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-store-oracle0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-store-postgresql0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-store-sqlserver0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-tck-api0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-tck-coordinator0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-tck-jakarta0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-tck-store0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-tck-util0.2.2-SNAPSHOT直接
Mavenrun.ratchet:ratchet-testsuite0.2.2-SNAPSHOT直接
Mavenaopalliance:aopalliance1.0间接
Mavencom.fasterxml.jackson.core:jackson-annotations2.20间接
Mavencom.fasterxml:classmate1.5.1间接
Mavencom.github.ben-manes.caffeine:caffeine3.1.8间接
Mavencom.github.ben-manes.caffeine:caffeine3.2.4间接
Mavencom.github.docker-java:docker-java-api3.7.1间接
Mavencom.github.docker-java:docker-java-transport3.7.1间接
Mavencom.github.docker-java:docker-java-transport-zerodep3.7.1间接
Mavencom.google.code.findbugs:jsr3053.0.2间接
Mavencom.google.code.gson:gson2.10.1间接
Mavencom.google.code.gson:gson2.13.2间接
Mavencom.google.crypto.tink:tink1.13.0间接
Mavencom.google.errorprone:error_prone_annotations2.22.0间接
Mavencom.google.errorprone:error_prone_annotations2.41.0间接
Mavencom.google.guava:failureaccess1.0.3间接
Mavencom.google.guava:guava33.5.0-jre间接
Mavencom.google.inject:guice6.0.0间接
Mavencom.hierynomus:asn-one0.6.0间接
Mavencom.microsoft.sqlserver:mssql-jdbc12.8.2.jre11间接
Mavencom.mysql:mysql-connector-j8.4.0间接
Mavencom.nimbusds:nimbus-jose-jwt10.9间接
Mavencom.oracle.database.jdbc:ojdbc1123.9.0.25.07间接
Mavencom.sun.istack:istack-commons-runtime4.1.1间接
Mavencom.tngtech.archunit:archunit1.3.0间接
Mavencom.tngtech.archunit:archunit-junit51.3.0间接
Mavencom.tngtech.archunit:archunit-junit5-api1.3.0间接
Mavencom.tngtech.archunit:archunit-junit5-engine1.3.0间接
Mavencom.tngtech.archunit:archunit-junit5-engine-api1.3.0间接
Mavencommons-beanutils:commons-beanutils1.11.0间接
Mavencommons-codec:commons-codec1.19.0间接
Mavencommons-codec:commons-codec1.22.0间接
Mavencommons-collections:commons-collections3.2.2间接
Mavencommons-io:commons-io2.20.0间接
Mavencommons-io:commons-io2.22.0间接
Mavencommons-logging:commons-logging1.3.5间接
Mavende.dentrassi.crypto:pem-keystore3.0.0间接
Maveneu.maveniverse.maven.mima.runtime:embedded-maven2.4.43间接
Maveneu.maveniverse.maven.mima.runtime:standalone-shared2.4.43间接
Maveneu.maveniverse.maven.mima.runtime:standalone-static2.4.43间接
Maveneu.maveniverse.maven.mima:context2.4.43间接
Mavenio.micrometer:context-propagation1.1.2间接
Mavenio.micrometer:micrometer-commons1.14.4间接
Mavenio.micrometer:micrometer-commons1.16.5间接
Mavenio.micrometer:micrometer-core1.14.4间接
Mavenio.micrometer:micrometer-core1.16.5间接
Mavenio.micrometer:micrometer-observation1.14.4间接
Mavenio.micrometer:micrometer-observation1.16.5间接
Mavenio.micrometer:micrometer-registry-prometheus1.14.4间接
Mavenio.micrometer:micrometer-tracing1.4.4间接
Mavenio.netty:netty-buffer4.1.135.Final间接
Mavenio.netty:netty-codec4.1.135.Final间接
Mavenio.netty:netty-codec-haproxy4.1.135.Final间接
Mavenio.netty:netty-codec-http4.1.135.Final间接
Mavenio.netty:netty-codec-socks4.1.135.Final间接
Mavenio.netty:netty-common4.1.135.Final间接
Mavenio.netty:netty-handler4.1.135.Final间接
Mavenio.netty:netty-handler-proxy4.1.135.Final间接
Mavenio.netty:netty-resolver4.1.135.Final间接
Mavenio.netty:netty-transport4.1.135.Final间接
Mavenio.netty:netty-transport-classes-epoll4.1.135.Final间接
Mavenio.netty:netty-transport-classes-kqueue4.1.135.Final间接
Mavenio.netty:netty-transport-native-epoll4.1.135.Final间接
Mavenio.netty:netty-transport-native-kqueue4.1.135.Final间接
Mavenio.netty:netty-transport-native-unix-common4.1.135.Final间接
Mavenio.opentelemetry:opentelemetry-api1.62.0间接
Mavenio.opentelemetry:opentelemetry-common1.62.0间接
Mavenio.opentelemetry:opentelemetry-context1.62.0间接
Mavenio.opentelemetry:opentelemetry-sdk1.62.0间接
Mavenio.opentelemetry:opentelemetry-sdk-common1.62.0间接
Mavenio.opentelemetry:opentelemetry-sdk-logs1.62.0间接
Mavenio.opentelemetry:opentelemetry-sdk-metrics1.62.0间接
Mavenio.opentelemetry:opentelemetry-sdk-testing1.62.0间接
Mavenio.opentelemetry:opentelemetry-sdk-trace1.62.0间接
Mavenio.prometheus:prometheus-metrics-config1.3.5间接
Mavenio.prometheus:prometheus-metrics-core1.3.5间接
Mavenio.prometheus:prometheus-metrics-exposition-formats1.3.5间接
Mavenio.prometheus:prometheus-metrics-exposition-textformats1.3.5间接
Mavenio.prometheus:prometheus-metrics-model1.3.5间接
Mavenio.prometheus:prometheus-metrics-tracer-common1.3.5间接
Mavenio.reactivex.rxjava3:rxjava3.1.10间接
Mavenio.smallrye:jandex3.2.0间接
Mavenjakarta.activation:jakarta.activation-api2.1.0间接
Mavenjakarta.annotation:jakarta.annotation-api2.1.1间接
Mavenjakarta.authentication:jakarta.authentication-api3.0.0间接
Mavenjakarta.ejb:jakarta.ejb-api4.0.1间接
Mavenjakarta.el:jakarta.el-api5.0.0间接
Mavenjakarta.el:jakarta.el-api5.0.1间接
Mavenjakarta.enterprise:jakarta.enterprise.cdi-api4.0.1间接
Mavenjakarta.enterprise:jakarta.enterprise.cdi-el-api4.1.0间接
Mavenjakarta.enterprise:jakarta.enterprise.lang-model4.0.1间接
Mavenjakarta.faces:jakarta.faces-api4.0.1间接
Mavenjakarta.inject:jakarta.inject-api2.0.1间接
Mavenjakarta.interceptor:jakarta.interceptor-api2.1.0间接
Mavenjakarta.jms:jakarta.jms-api3.1.0间接
Mavenjakarta.json.bind:jakarta.json.bind-api3.0.0间接
Mavenjakarta.json:jakarta.json-api2.1.0间接
Mavenjakarta.persistence:jakarta.persistence-api3.1.0间接
Mavenjakarta.platform:jakarta.jakartaee-web-api10.0.0间接
Mavenjakarta.security.enterprise:jakarta.security.enterprise-api3.0.0间接
Mavenjakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api3.0.0间接
Mavenjakarta.servlet.jsp:jakarta.servlet.jsp-api3.1.0间接
Mavenjakarta.servlet:jakarta.servlet-api6.0.0间接
Mavenjakarta.transaction:jakarta.transaction-api2.0.1间接
Mavenjakarta.validation:jakarta.validation-api3.0.2间接
Mavenjakarta.websocket:jakarta.websocket-api2.1.0间接
Mavenjakarta.websocket:jakarta.websocket-client-api2.1.0间接
Mavenjakarta.ws.rs:jakarta.ws.rs-api3.1.0间接
Mavenjakarta.xml.bind:jakarta.xml.bind-api4.0.0间接
Mavenjavax.inject:javax.inject1间接
Mavennet.bytebuddy:byte-buddy1.17.7间接
Mavennet.bytebuddy:byte-buddy1.17.8间接
Mavennet.bytebuddy:byte-buddy-agent1.17.7间接
Mavennet.java.dev.jna:jna5.18.1间接
Mavenorg.antlr:antlr4-runtime4.13.0间接
Mavenorg.apache.activemq:activemq-artemis-native2.0.0间接
Mavenorg.apache.artemis:artemis-commons2.54.0间接
Mavenorg.apache.artemis:artemis-core-client2.54.0间接
Mavenorg.apache.artemis:artemis-jakarta-service-extensions2.54.0间接
Mavenorg.apache.artemis:artemis-jdbc-store2.54.0间接
Mavenorg.apache.artemis:artemis-journal2.54.0间接
Mavenorg.apache.artemis:artemis-lockmanager-api2.54.0间接
Mavenorg.apache.artemis:artemis-selector2.54.0间接
Mavenorg.apache.artemis:artemis-server2.54.0间接
Mavenorg.apache.commons:commons-compress1.28.0间接
Mavenorg.apache.commons:commons-dbcp22.14.0间接
Mavenorg.apache.commons:commons-lang33.18.0间接
Mavenorg.apache.commons:commons-lang33.20.0间接
Mavenorg.apache.commons:commons-pool22.13.0间接
Mavenorg.apache.commons:commons-text1.15.0间接
Mavenorg.apache.httpcomponents:httpclient4.5.14间接
Mavenorg.apache.httpcomponents:httpcore4.4.16间接
Mavenorg.apache.maven.resolver:maven-resolver-api1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-connector-basic1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-impl1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-named-locks1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-spi1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-supplier1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-transport-file1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-transport-http1.9.27间接
Mavenorg.apache.maven.resolver:maven-resolver-util1.9.27间接
Mavenorg.apache.maven.shared:maven-invoker3.3.0间接
Mavenorg.apache.maven.shared:maven-shared-utils3.4.2间接
Mavenorg.apache.maven:maven-artifact3.9.15间接
Mavenorg.apache.maven:maven-builder-support3.9.15间接
Mavenorg.apache.maven:maven-model3.9.15间接
Mavenorg.apache.maven:maven-model-builder3.9.15间接
Mavenorg.apache.maven:maven-repository-metadata3.9.15间接
Mavenorg.apache.maven:maven-resolver-provider3.9.15间接
Mavenorg.apache.maven:maven-settings3.9.15间接
Mavenorg.apache.maven:maven-settings-builder3.9.15间接
Mavenorg.apiguardian:apiguardian-api1.1.2间接
Mavenorg.awaitility:awaitility4.3.0间接
Mavenorg.checkerframework:checker-qual3.55.1间接
Mavenorg.codehaus.plexus:plexus-cipher2.0间接
Mavenorg.codehaus.plexus:plexus-classworlds2.10.0间接
Mavenorg.codehaus.plexus:plexus-compiler-api2.16.2间接
Mavenorg.codehaus.plexus:plexus-compiler-javac2.16.2间接
Mavenorg.codehaus.plexus:plexus-component-annotations2.2.0间接
Mavenorg.codehaus.plexus:plexus-interpolation1.29间接
Mavenorg.codehaus.plexus:plexus-sec-dispatcher2.0间接
Mavenorg.codehaus.plexus:plexus-utils3.6.1间接
Mavenorg.eclipse.angus:angus-activation2.0.0间接
Mavenorg.eclipse.parsson:parsson1.1.7间接
Mavenorg.eclipse.sisu:org.eclipse.sisu.inject1.0.0间接
Mavenorg.eclipse.sisu:org.eclipse.sisu.plexus1.0.0间接
Mavenorg.eclipse:yasson3.0.4间接
Mavenorg.glassfish.jaxb:jaxb-core4.0.2间接
Mavenorg.glassfish.jaxb:jaxb-runtime4.0.2间接
Mavenorg.glassfish.jaxb:txw24.0.2间接
Mavenorg.hamcrest:hamcrest2.1间接
Mavenorg.hdrhistogram:HdrHistogram2.2.2间接
Mavenorg.hibernate.common:hibernate-commons-annotations7.0.3.Final间接
Mavenorg.hibernate.orm:hibernate-core6.6.50.Final间接
Mavenorg.infinispan.protostream:protostream5.0.13.Final间接
Mavenorg.infinispan.protostream:protostream-processor5.0.13.Final间接
Mavenorg.infinispan.protostream:protostream-types5.0.13.Final间接
Mavenorg.infinispan:infinispan-commons15.1.7.Final间接
Mavenorg.infinispan:infinispan-counter-api15.1.7.Final间接
Mavenorg.jboss.arquillian.config:arquillian-config-api1.10.1.Final间接
Mavenorg.jboss.arquillian.config:arquillian-config-impl-base1.10.1.Final间接
Mavenorg.jboss.arquillian.config:arquillian-config-spi1.10.1.Final间接
Mavenorg.jboss.arquillian.container:arquillian-container-impl-base1.10.1.Final间接
Mavenorg.jboss.arquillian.container:arquillian-container-spi1.10.1.Final间接
Mavenorg.jboss.arquillian.container:arquillian-container-test-api1.10.1.Final间接
Mavenorg.jboss.arquillian.container:arquillian-container-test-impl-base1.10.1.Final间接
Mavenorg.jboss.arquillian.container:arquillian-container-test-spi1.10.1.Final间接
Mavenorg.jboss.arquillian.core:arquillian-core-api1.10.1.Final间接
Mavenorg.jboss.arquillian.core:arquillian-core-impl-base1.10.1.Final间接
Mavenorg.jboss.arquillian.core:arquillian-core-spi1.10.1.Final间接
Mavenorg.jboss.arquillian.junit5:arquillian-junit5-container1.10.1.Final间接
Mavenorg.jboss.arquillian.junit5:arquillian-junit5-core1.10.1.Final间接
Mavenorg.jboss.arquillian.test:arquillian-test-api1.10.1.Final间接
Mavenorg.jboss.arquillian.test:arquillian-test-impl-base1.10.1.Final间接
Mavenorg.jboss.arquillian.test:arquillian-test-spi1.10.1.Final间接
Mavenorg.jboss.classfilewriter:jboss-classfilewriter1.3.1.Final间接
Mavenorg.jboss.jdeparser:jdeparser2.0.3.Final间接
Mavenorg.jboss.logging:jboss-logging-annotations3.0.4.Final间接
Mavenorg.jboss.logging:jboss-logging-processor3.0.4.Final间接
Mavenorg.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-base2.0.0间接
Mavenorg.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-spi2.0.0间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api-maven3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api-maven-archive3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api-maven-embedded3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-depchain3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven-archive3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven-embedded3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-spi3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-spi-maven3.3.6间接
Mavenorg.jboss.shrinkwrap.resolver:shrinkwrap-resolver-spi-maven-archive3.3.6间接
Mavenorg.jboss.shrinkwrap:shrinkwrap-api1.2.6间接
Mavenorg.jboss.shrinkwrap:shrinkwrap-impl-base1.2.6间接
Mavenorg.jboss.shrinkwrap:shrinkwrap-spi1.2.6间接
Mavenorg.jboss.threads:jboss-threads3.6.1.Final间接
Mavenorg.jboss.weld.environment:weld-environment-common6.0.2.Final间接
Mavenorg.jboss.weld.se:weld-se-core6.0.2.Final间接
Mavenorg.jboss.weld:weld-api6.0.Final间接
Mavenorg.jboss.weld:weld-core-impl6.0.2.Final间接
Mavenorg.jboss.weld:weld-lite-extension-translator6.0.2.Final间接
Mavenorg.jboss.weld:weld-spi6.0.Final间接
Mavenorg.jctools:jctools-core4.0.6间接
Mavenorg.jetbrains:annotations17.0.0间接
Mavenorg.jgroups:jgroups5.3.13.Final间接
Mavenorg.jgroups:jgroups5.3.15.Final间接
Mavenorg.jspecify:jspecify1.0.0间接
Mavenorg.junit.jupiter:junit-jupiter5.14.4间接
Mavenorg.junit.jupiter:junit-jupiter-api5.14.4间接
Mavenorg.junit.jupiter:junit-jupiter-engine5.14.4间接
Mavenorg.junit.jupiter:junit-jupiter-params5.14.4间接
Mavenorg.junit.platform:junit-platform-commons1.14.4间接
Mavenorg.junit.platform:junit-platform-engine1.14.4间接
Mavenorg.junit.platform:junit-platform-launcher1.14.4间接
Mavenorg.latencyutils:LatencyUtils2.0.3间接
Mavenorg.mockito:mockito-core5.23.0间接
Mavenorg.mockito:mockito-junit-jupiter5.23.0间接
Mavenorg.mongodb:bson5.7.0间接
Mavenorg.mongodb:bson-record-codec5.7.0间接
Mavenorg.mongodb:mongodb-driver-core5.7.0间接
Mavenorg.objenesis:objenesis3.3间接
Mavenorg.opentest4j:opentest4j1.3.0间接
Mavenorg.postgresql:postgresql42.7.13间接
Mavenorg.reactivestreams:reactive-streams1.0.4间接
Mavenorg.rnorth.duct-tape:duct-tape1.0.8间接
Mavenorg.slf4j:jcl-over-slf4j1.7.36间接
Mavenorg.slf4j:slf4j-api1.7.36间接
Mavenorg.slf4j:slf4j-api2.0.13间接
Mavenorg.slf4j:slf4j-api2.0.18间接
Mavenorg.slf4j:slf4j-api2.0.7间接
Mavenorg.slf4j:slf4j-simple2.0.13间接
Mavenorg.testcontainers:testcontainers2.0.5间接
Mavenorg.testcontainers:testcontainers-database-commons2.0.5间接
Mavenorg.testcontainers:testcontainers-jdbc2.0.5间接
Mavenorg.testcontainers:testcontainers-junit-jupiter2.0.5间接
Mavenorg.testcontainers:testcontainers-mongodb2.0.5间接
Mavenorg.testcontainers:testcontainers-mssqlserver2.0.5间接
Mavenorg.testcontainers:testcontainers-mysql2.0.5间接
Mavenorg.testcontainers:testcontainers-oracle-free2.0.5间接
Mavenorg.testcontainers:testcontainers-postgresql2.0.5间接
Mavenorg.wildfly.common:wildfly-common1.7.0.Final间接
npm@algolia/abtesting1.18.1间接
npm@algolia/autocomplete-core1.17.7间接
npm@algolia/autocomplete-plugin-algolia-insights1.17.7间接
npm@algolia/autocomplete-preset-algolia1.17.7间接
npm@algolia/autocomplete-shared1.17.7间接
npm@algolia/client-abtesting5.52.1间接
npm@algolia/client-analytics5.52.1间接
npm@algolia/client-common5.52.1间接
npm@algolia/client-insights5.52.1间接
npm@algolia/client-personalization5.52.1间接
npm@algolia/client-query-suggestions5.52.1间接
npm@algolia/client-search5.52.1间接
npm@algolia/ingestion1.52.1间接
npm@algolia/monitoring1.52.1间接
npm@algolia/recommend5.52.1间接
npm@algolia/requester-browser-xhr5.52.1间接
npm@algolia/requester-fetch5.52.1间接
npm@algolia/requester-node-http5.52.1间接
npm@axe-core/playwright4.12.1间接
npm@babel/helper-string-parser7.27.1间接
npm@babel/helper-validator-identifier7.28.5间接
npm@babel/parser7.29.3间接
npm@babel/types7.29.0间接
npm@docsearch/css3.8.2间接
npm@docsearch/js3.8.2间接
npm@docsearch/react3.8.2间接
npm@esbuild/aix-ppc640.21.5间接
npm@esbuild/android-arm0.21.5间接
npm@esbuild/android-arm640.21.5间接
npm@esbuild/android-x640.21.5间接
npm@esbuild/darwin-arm640.21.5间接
npm@esbuild/darwin-x640.21.5间接
npm@esbuild/freebsd-arm640.21.5间接
npm@esbuild/freebsd-x640.21.5间接
npm@esbuild/linux-arm0.21.5间接
npm@esbuild/linux-arm640.21.5间接
npm@esbuild/linux-ia320.21.5间接
npm@esbuild/linux-loong640.21.5间接
npm@esbuild/linux-mips64el0.21.5间接
npm@esbuild/linux-ppc640.21.5间接
npm@esbuild/linux-riscv640.21.5间接
npm@esbuild/linux-s390x0.21.5间接
npm@esbuild/linux-x640.21.5间接
npm@esbuild/netbsd-x640.21.5间接
npm@esbuild/openbsd-x640.21.5间接
npm@esbuild/sunos-x640.21.5间接
npm@esbuild/win32-arm640.21.5间接
npm@esbuild/win32-ia320.21.5间接
npm@esbuild/win32-x640.21.5间接
npm@iconify-json/simple-icons1.2.83间接
npm@iconify/types2.0.0间接
npm@jridgewell/sourcemap-codec1.5.5间接
npm@rollup/rollup-android-arm-eabi4.60.4间接
npm@rollup/rollup-android-arm644.60.4间接
npm@rollup/rollup-darwin-arm644.60.4间接
npm@rollup/rollup-darwin-x644.60.4间接
npm@rollup/rollup-freebsd-arm644.60.4间接
npm@rollup/rollup-freebsd-x644.60.4间接
npm@rollup/rollup-linux-arm-gnueabihf4.60.4间接
npm@rollup/rollup-linux-arm-musleabihf4.60.4间接
npm@rollup/rollup-linux-arm64-gnu4.60.4间接
npm@rollup/rollup-linux-arm64-musl4.60.4间接
npm@rollup/rollup-linux-loong64-gnu4.60.4间接
npm@rollup/rollup-linux-loong64-musl4.60.4间接
npm@rollup/rollup-linux-ppc64-gnu4.60.4间接
npm@rollup/rollup-linux-ppc64-musl4.60.4间接
npm@rollup/rollup-linux-riscv64-gnu4.60.4间接
npm@rollup/rollup-linux-riscv64-musl4.60.4间接
npm@rollup/rollup-linux-s390x-gnu4.60.4间接
npm@rollup/rollup-linux-x64-gnu4.60.4间接
npm@rollup/rollup-linux-x64-musl4.60.4间接
npm@rollup/rollup-openbsd-x644.60.4间接
npm@rollup/rollup-openharmony-arm644.60.4间接
npm@rollup/rollup-win32-arm64-msvc4.60.4间接
npm@rollup/rollup-win32-ia32-msvc4.60.4间接
npm@rollup/rollup-win32-x64-gnu4.60.4间接
npm@rollup/rollup-win32-x64-msvc4.60.4间接
npm@shikijs/core2.5.0间接
npm@shikijs/core4.3.1间接
npm@shikijs/engine-javascript2.5.0间接
npm@shikijs/engine-javascript4.3.1间接
npm@shikijs/engine-oniguruma2.5.0间接
npm@shikijs/engine-oniguruma4.3.1间接
npm@shikijs/langs2.5.0间接
npm@shikijs/langs4.3.1间接
npm@shikijs/primitive4.3.1间接
npm@shikijs/themes2.5.0间接
npm@shikijs/themes4.3.1间接
npm@shikijs/transformers2.5.0间接
npm@shikijs/types2.5.0间接
npm@shikijs/types4.3.1间接
npm@shikijs/vscode-textmate10.0.2间接
npm@types/estree1.0.8间接
npm@types/hast3.0.4间接
npm@types/linkify-it5.0.0间接
npm@types/markdown-it14.1.2间接
npm@types/mdast4.0.4间接
npm@types/mdurl2.0.0间接
npm@types/unist3.0.3间接
npm@types/web-bluetooth0.0.21间接
npm@ungap/structured-clone1.3.1间接
npm@vitejs/plugin-vue5.2.4间接
npm@vue/compiler-core3.5.34间接
npm@vue/compiler-dom3.5.34间接
npm@vue/compiler-sfc3.5.34间接
npm@vue/compiler-ssr3.5.34间接
npm@vue/devtools-api7.7.9间接
npm@vue/devtools-kit7.7.9间接
npm@vue/devtools-shared7.7.9间接
npm@vue/reactivity3.5.34间接
npm@vue/runtime-core3.5.34间接
npm@vue/runtime-dom3.5.34间接
npm@vue/server-renderer3.5.34间接
npm@vue/shared3.5.34间接
npm@vueuse/core12.8.2间接
npm@vueuse/integrations12.8.2间接
npm@vueuse/metadata12.8.2间接
npm@vueuse/shared12.8.2间接
npmalgoliasearch5.52.1间接
npmaxe-core4.12.1间接
npmbirpc2.9.0间接
npmccount2.0.1间接
npmcharacter-entities-html42.1.0间接
npmcharacter-entities-legacy3.0.0间接
npmcomma-separated-tokens2.0.3间接
npmcopy-anything4.0.5间接
npmcsstype3.2.3间接
npmdequal2.0.3间接
npmdevlop1.1.0间接
npmemoji-regex-xs1.0.0间接
npmentities7.0.1间接
npmesbuild0.21.5间接
npmestree-walker2.0.2间接
npmfocus-trap7.8.0间接
npmfsevents2.3.2间接
npmfsevents2.3.3间接
npmhast-util-to-html9.0.5间接
npmhast-util-whitespace3.0.0间接
npmhookable5.5.3间接
npmhtml-void-elements3.0.0间接
npmis-what5.5.0间接
npmmagic-string0.30.21间接
npmmark.js8.11.1间接
npmmdast-util-to-hast13.2.1间接
npmmicromark-util-character2.1.1间接
npmmicromark-util-encode2.0.1间接
npmmicromark-util-sanitize-uri2.0.1间接
npmmicromark-util-symbol2.0.1间接
npmmicromark-util-types2.0.2间接
npmminisearch7.2.0间接
npmmitt3.0.1间接
npmnanoid3.3.12间接
npmoniguruma-parser0.12.2间接
npmoniguruma-to-es3.1.1间接
npmoniguruma-to-es4.3.6间接
npmperfect-debounce1.0.0间接
npmpicocolors1.1.1间接
npmplaywright1.61.1间接
npmplaywright-core1.61.1间接
npmpostcss8.5.15间接
npmpreact10.29.2间接
npmproperty-information7.1.0间接
npmregex6.1.0间接
npmregex-recursion6.0.2间接
npmregex-utilities2.3.0间接
npmrfdc1.4.1间接
npmrollup4.60.4间接
npmsearch-insights2.17.3间接
npmshiki2.5.0间接
npmshiki4.3.1间接
npmsource-map-js1.2.1间接
npmspace-separated-tokens2.0.2间接
npmspeakingurl14.0.1间接
npmstringify-entities4.0.4间接
npmsuperjson2.2.6间接
npmtabbable6.4.0间接
npmtrim-lines3.0.1间接
npmunist-util-is6.0.1间接
npmunist-util-position5.0.0间接
npmunist-util-stringify-position4.0.0间接
npmunist-util-visit5.1.0间接
npmunist-util-visit-parents6.0.2间接
npmvfile6.0.3间接
npmvfile-message4.0.3间接
npmvite5.4.21间接
npmvitepress1.6.4间接
npmvue3.5.34间接
npmzwitch2.0.4间接
依赖安全公告 0

安装 maven:run.ratchet:ratchet@0.2.1 会引入 21 个包(直接与传递):其中 0 个存在已知公告,0 个为直接依赖。

没有已知公告影响已评估的依赖。

公告表示依赖图中记录的版本落入某条公告的受影响范围。可达性未经分析,且依赖图包含开发与测试的版本固定——某项发现可能只涉及工具链而非交付的软件。

原始 JSON 报告 机器可读
{
  "data": {
    "repo": {
      "topics": [
        "background-jobs",
        "cdi",
        "circuit-breaker",
        "cron",
        "dead-letter-queue",
        "jakarta-ee",
        "java",
        "jbatch",
        "job-scheduler",
        "jpa",
        "mongodb",
        "mysql",
        "postgresql",
        "recurring-jobs",
        "retry",
        "scheduler",
        "task-scheduler",
        "workflow",
        "workflow-engine",
        "quartz-alternative"
      ],
      "is_fork": false,
      "size_kb": 16536,
      "has_wiki": true,
      "homepage": "https://ratchet.run/",
      "languages": {
        "CSS": 44182,
        "Vue": 32060,
        "HTML": 4615,
        "Java": 7390643,
        "PLSQL": 46408,
        "Shell": 101541,
        "Dockerfile": 2083,
        "JavaScript": 75522,
        "TypeScript": 26539
      },
      "pushed_at": "2026-07-23T19:59:25Z",
      "created_at": "2026-04-29T14:19:43Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-23T19:59:31Z",
      "description": "A Java Jakarta EE CDI-native scheduler for persistent jobs with retries, batches, workflows, encryption, and delayed signals.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "Java",
      "significant_languages": [
        "Java"
      ]
    },
    "owner": {
      "blog": "https://ratchet.run",
      "name": "Ratchet",
      "type": "Organization",
      "login": "ratchet-run",
      "company": null,
      "location": null,
      "followers": 1,
      "avatar_url": "https://avatars.githubusercontent.com/u/282279520?v=4",
      "created_at": "2026-05-06T14:20:26Z",
      "is_verified": null,
      "public_repos": 1,
      "account_age_days": 80
    },
    "license": {
      "state": "standard",
      "spdx_id": "Apache-2.0",
      "raw_spdx": "Apache-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.2.1",
          "kind": "patch",
          "published_at": "2026-07-21T19:40:01Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2026-07-14T20:57:29Z"
        },
        {
          "tag": "v0.1.1",
          "kind": "patch",
          "published_at": "2026-06-14T15:53:50Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "f3ea377adb4bc829c4126d10976d9cd707ca0b9a",
          "body": "## Summary\n\n`RatchetOptionsFactory.fromEnvironment(...)` returns a finished\nimmutable `RatchetOptions`, so a host that wants everything env-tunable\nexcept a few code-pinned safety values had to overlay a string-keyed\n`RatchetConfigSource`. Those magic keys silently stop applying when a\nkey is rename\n[…]\netting withers, and the\n`toBuilder` seeding approach) went through a two-AI adversarial review\nbefore implementation; the compact-constructor hardening and the\nsubset-map test came out of that review.",
          "is_bot": false,
          "headline": "Expose the env-seeded options builder for typed overrides (#146)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-23T19:51:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dd2b2595bda546979c8073448071dcdcff217501",
          "body": "toBuilder reads the option-group fields, which are non-null on every\ninstance built through builder(), toBuilder(), or the public\nconstructor. The one instance with null groups is the proxy-generation\nconstructor CDI uses; CDI intercepts and delegates those calls, so the\nfields are never read on it.\n[…]\nlve unreachable NPEs. Scope the suppression to the method\nrather than excluding the whole file, keeping null-checking live for the\nrest of RatchetOptions.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Suppress the DataFlowIssue false positive on toBuilder",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-23T17:51:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "21785941f7eb525a7b9a4927178abeea0a482420",
          "body": "fromEnvironment returns a finished immutable RatchetOptions, so a host\nthat wants everything env-tunable except a few code-pinned safety\nvalues had to overlay a string-keyed RatchetConfigSource. Those magic\nkeys silently stop applying when a key is renamed.\n\nRatchetOptionsFactory.builderFromEnvironm\n[…]\ned for an already-built\ninstance. PollingOptions and RecurringOptions gained compact\nconstructors so every constructible instance survives the round trip.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Expose the env-seeded options builder for typed overrides",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-22T20:18:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0f24f6de139764f9473ad331747e8f1908f9bac1",
          "body": "Automated reactor bump to 0.2.2-SNAPSHOT after the v0.2.1 release.\nOpened by hand because the release workflow's token could not create the\nPR.",
          "is_bot": false,
          "headline": "Start 0.2.2-SNAPSHOT development (#145)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T20:14:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b6225c864e07252ed211a79a60be20dccbababd5",
          "body": "Signed-off-by: Jonathan Putney <42720634+jcputney@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Start 0.2.2-SNAPSHOT development",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T19:40:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31c5bfc85ca9e876bbe96f557ce0158d77f3c4cb",
          "body": "## What\n\n- `JobContext` now carries the executing job's persisted caller\nprincipal: a new `bind` overload stores it, `callerPrincipal()` reads\nit, and `currentOrNull()` gives non-throwing access. The executor\nalready threaded the value into the MDC; the same call now populates the\ncontext.\n- `Caller\n[…]\nder returning a\ndistinct service-account value on worker threads so the test fails if\ninheritance loses precedence; `onSuccess`/`onFailure` callbacks proven\nto run inside the `JobContext` bind window.",
          "is_bot": false,
          "headline": "Inherit the caller principal from the executing job's context (#144)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T18:56:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "05b4dd8cbeb202478f6d3cbc380550d6258b8645",
          "body": "The configuration guide and the JobContext reference describe the full\nresolution order, including inheritance from the executing job, and\nstate the contract plainly: Ratchet never invents a principal. A null\ncaller_principal means no principal was captured, which is what\nbackground and system-initiated submissions look like. An application\nthat wants a literal stamp such as \"system\" supplies it from its\nresolver.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Document the caller-principal resolution order and null contract",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T18:16:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a902f4f64ad46b6e43f5d9eca4e3a449a192019f",
          "body": "Unit tests pin the cascade order and its failure handling: a resolver\nanswer wins, an empty resolver falls through to the bound JobContext,\nan unbound context falls through to the provider, and a throwing source\ndegrades to the next one instead of failing the submission. A\ncreation-service test subm\n[…]\ndence to the provider rather than passing by\naccident. Two more ITs pin that onSuccess and onFailure callbacks run\nwhile the job's context is still bound.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Test the caller-principal cascade and runtime child inheritance",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T18:16:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "542c1778d979310c1f3d9cb06ed1ac1206d0d7da",
          "body": "A job that submits another job from its own body runs on a worker\nthread with no request or actor context, so the child persisted a null\ncaller_principal even when a user triggered the parent. The audit\ncolumn lost the attribution chain at the first hop, and the\nauthorization policy judged those chi\n[…]\nph (batch parent and\nchildren, chain steps, workflow branches, gates), so a single\nsubmission cannot record two identities when a source changes mid-loop.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Inherit the caller principal from the executing job's context",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T18:16:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6825fd97c86cae4278e8a8f78dc6c7702763afff",
          "body": "…cs (#143)\n\n## What\n\n- **Boot-time SPI log** (`SpiBindingLogger`): one INFO line at startup\nnaming the selected implementation for each pluggable SPI\n(`ClassPolicy`, `CallerPrincipalProvider`, `JobAuthorizationPolicy`, and\nthe rest). A silently mis-selected `@Alternative` now shows up in the\nboot lo\n[…]\n-independent way\nto supply the principal regardless of how the override resolves or which\nauth mechanism is in play, and the startup SPI log turns an invisible\nmis-selection into a one-line diagnosis.",
          "is_bot": false,
          "headline": "Add a caller-principal configuration seam and boot-time SPI diagnosti…",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T14:44:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "583b23430f7feb1ac873236973d3716abe28e85c",
          "body": "SpiBindingLogger queried getBeans() with no qualifier, which relied on the\ncontainer assuming @Default. Pass Default.Literal.INSTANCE so the boot log\nresolves the same bean an unqualified @Inject of the seam type would receive.\nThe multi-engine PayloadEncryption lookup stays unqualified so it still \n[…]\nine.\n\nAlso reword the caller-principal doc: CallerPrincipalProvider reads\nSecurityContext through an injected Instance, rather than being resolved via it.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Resolve the SPI-binding log against @Default explicitly",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-21T13:48:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0cba9c8ab91940c671f91fc26fe9afc9bdf8cbdc",
          "body": "… empty\n\nThe default CallerPrincipalProvider reads jakarta.security.enterprise.SecurityContext.\nWildFly only registers that CDI bean when the deployment activates Jakarta Security,\nand native Elytron OIDC authenticates the caller without activating it, so the default\ncapture returns no principal eve\n[…]\nc and the configuration guide, and\nsteer applications toward reading getUserPrincipal() or the Elytron SecurityIdentity\nthrough the resolver seam instead.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Document that native OIDC leaves the default caller-principal capture…",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-20T19:04:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5effd0e458716b6a21e94155fc40112dc0941d89",
          "body": "…override\n\nAn application that packages its @Alternative CallerPrincipalProvider override in an EJB-jar subdeployment, with Ratchet in EAR/lib, gets different behavior per server. WildFly, WildFly EE 11, and OpenLiberty apply the override; Payara and GlassFish ignore it and fall back to the default \n[…]\ntion is caught. Portable overrides are covered elsewhere: package the override in EAR/lib, or set a resolver on RatchetOptions; both work on every server.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Document which servers honor a subdeployment CallerPrincipalProvider …",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-18T04:55:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4452c5236f86e6589e00c15487107804ef8cc315",
          "body": "An application that overrides Ratchet's CallerPrincipalProvider with an @Alternative bean can have that override silently ignored in an EAR, when the bean sits in a module the reference implementation's classloader can't reach. The caller principal then falls back to the default. That leaves the aud\n[…]\nached, so an application that builds its options through RatchetOptionsFactory.fromEnvironment can add one without losing its environment-driven settings.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Let applications supply the caller principal through configuration",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-18T04:55:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d0271f4783300e6f7256b0982aae3c45467c179c",
          "body": "An application can replace a Ratchet SPI with its own @Alternative @Priority(APPLICATION) bean, but when that override doesn't take effect, nothing tells you which implementation is actually running. In an EAR it happens when the override sits in a module the RI's classloader can't reach: the job ru\n[…]\nn resolution doesn't land on a single class. PayloadEncryption lists every installed engine, since more than one can be present during algorithm rotation.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Log resolved SPI implementations at startup",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-17T19:19:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5bdd7860a2cd747971f39239a3785e2dd5885c57",
          "body": "Post-release version roll: poms to 0.2.1-SNAPSHOT, development\nreferences synced, public dependency snippets now point at the published\n0.2.0. The release workflow pushed this branch but could not open the PR\nitself — the RELEASE_TOKEN fine-grained PAT lacks Pull requests: write\n(Contents: write is proven; the tag and bump branch both landed through\nit).",
          "is_bot": false,
          "headline": "Start 0.2.1 development (#142)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T21:33:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e1449f1a3f4c78f029a9940a10232a447e69c961",
          "body": "Signed-off-by: Jonathan Putney <42720634+jcputney@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Start 0.2.1-SNAPSHOT development",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T20:57:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2c42160f14a052e07349406808834c8bac297a0c",
          "body": "Release attempt 2 got past the tag step (the argv fix in #140 held) and\ndied one step later: the tag is created remotely via the API after\ncheckout has already fetched tags, so 'git describe'/'git log' in the\nrelease-notes step reference a tag the runner's clone doesn't have.\nOne-line fix: fetch the\n[…]\nplan after merge: delete the orphaned v0.2.0 tag (nothing\nreferences it; no GitHub release exists), re-dispatch Release, and\ndiscard the two stale staged bundles in the Central Portal when\npublishing.",
          "is_bot": false,
          "headline": "Fetch the release tag before building release notes (#141)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T20:00:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "edf74a97c844964acf517606713ea368fc5151b4",
          "body": "The tag step creates the tag remotely through the GitHub API, after\nthe release job's checkout already fetched tags. The release-notes\nstep then runs git describe and git log against a tag the local\nclone has never seen, and attempt two of the v0.2.0 release died\nthere with 'ambiguous argument v0.2.0: unknown revision'.\n\nFetch the tag ref explicitly before touching it.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Fetch the release tag before building release notes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T19:12:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "203f2b7eeecb16036862abad263996a43c35ca2f",
          "body": "The v0.2.0 release run failed at the tag step: gh-signed-commit.sh\npassed the accumulated additions array (base64 of every changed file) to\njq as one argv element, and a real release commit rewrites ~55 files,\nexceeding ARG_MAX. Exit 126, no tag, no GitHub release. The Central\nbundle had already sta\n[…]\n\nthe 3MB request parses and round-trips — the old implementation fails it\non argv overflow.\n\nAfter this merges: delete the leftover release-tag/v0.2.0 temp branch\nand re-dispatch the Release workflow.",
          "is_bot": false,
          "headline": "Keep signed-commit payloads out of argv (#140)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T18:23:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6a33f5ad008bd611aa375134d6236346532c626b",
          "body": "The release run for v0.2.0 died at the tag step with 'jq: Argument\nlist too long'. gh-signed-commit.sh built the additions array in a\nshell variable and passed it to jq as a single argument, and a real\nrelease commit carries the base64 contents of about 55 files, which\nis more than the kernel allows\n[…]\ns of 40KB each through a stubbed gh and\nasserts the 3MB request parses and round-trips; the old\nimplementation fails it. Wired into the workflow-lint job.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Keep signed-commit payloads out of argv",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T17:52:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "65a978022f66cffd48b964fac3317e95f32545df",
          "body": "Everything merged since v0.1.1 (the Oracle and SQL Server stores, the\ncoordinator modules, the extension-store capability) is minor-version\nscope, so 0.1.2 will never ship.\n\nThe release workflow derives its version by stripping -SNAPSHOT from the\npom and has no dispatch input to override it. Dispatc\n[…]\nst the real cell: 74 deploy/undeploy cycles, 221 tests green, zero\nclosed-classloader exceptions.\n\nAfter this merges, dispatching the Release workflow produces v0.2.0 and\nrolls main to 0.2.1-SNAPSHOT.",
          "is_bot": false,
          "headline": "Target 0.2.0 as the next release (#138)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T16:43:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f1791e59019fbde4b7a000f6c148a3b0bc1f5766",
          "body": "The disposer's passive 5-second join was not enough: on loaded CI\nrunners the driver's monitor threads survive close() blocked in\nsocket I/O that interrupts cannot break, governed by the default\nconnectTimeoutMS of 10 seconds. The join burned its full budget on\nnearly every undeploy (about 5 minutes\n[…]\nlocked monitor dies well inside the join budget, and\ninterrupt survivors halfway through the join. Application socket\ntimeouts stay at the driver default.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Bound MongoDB monitor-thread lifetime for CI undeploys",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T15:59:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c108305e298c632ffa7a1c275b2ae88df60058d7",
          "body": "The glassfish-managed + mongodb CI cell kept failing: the driver's\nSDAM monitor threads outlive WAR undeploy, and their next heartbeat\n(10 seconds later, the driver default) loads a class through the\nclosed WebappClassLoader. GlassFish is the only server in the matrix\nthat hard-fails loadClass after\n[…]\nfield.\n\nVerified locally against the real cell: 74 deploy/undeploy cycles,\n221 tests green, no closed-classloader exceptions, no leftover\nmonitor threads.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Wait out MongoDB driver threads before GlassFish undeploy",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-14T14:45:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6b7d9c5d7d874ae3a462c5af856d500d4240c5b1",
          "body": "The tree since v0.1.1 picked up the Oracle and SQL Server stores, the\ncoordinator modules, and the extension-store capability. That is\nminor-version territory, so 0.1.2 will never ship.\n\nThe release workflow reads its version from the pom and has no input\nto override it; without this bump a release \n[…]\nHOT, ran sync-version.sh for the\ndevelopment references, and updated the docs pages that promised\nOracle and SQL Server artifacts \"in 0.1.2\" to say 0.2.0.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Target 0.2.0 as the next release",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T22:58:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dead16a96c0fa9164959fcaf45e0a087ff31a094",
          "body": "…#128)\n\n## Summary\n\n`CallerPrincipalProvider` was the only overridable default shipped as a\nbare concrete `@ApplicationScoped` bean; every other SPI default is a\n`@Produces @Default` producer on `RatchetProducer`. This vetoes the\nclass and moves the default behind a producer, so an application's\n`@A\n[…]\nfrom\nthe producer, so injection points typed `CallerPrincipalProvider` are\nunaffected. Worth a close look: `RatchetArchiveBuilder` grew\nEAR-assembly support, which the new IT is the first consumer of.",
          "is_bot": false,
          "headline": "Align CallerPrincipalProvider with the producer-backed SPI defaults (…",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T20:39:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dd3e74a757b4cc09d5e6472082ed116aa4bf6a19",
          "body": "Fixes #125.\n\n## The business-key half\n\n`RecurringJobDefinition` promised the business key was \"carried into\nfired child jobs\", but `createChildFromMaster` never copied it — and it\ncan't. Every store reserves an active business key exclusively (SQL\nstores through `scheduler_business_key_reservation`,\n[…]\nreason; unknown ids return empty; a child bulk-inserted after its master\nis archived keeps its lineage id (this one fails on the old schema).\n- RI tests cover event enrichment and the exhaustion path.",
          "is_bot": false,
          "headline": "Make recurring child lineage durable (#137)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T20:39:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "08228fc1ad20dde04dc774b77e4dc7fae046a325",
          "body": "Recurring child jobs were promised the master's business key but never\ngot it (#125), and they never can: every store reserves an active\nbusiness key exclusively, and the master already holds it. Document the\nreal contract on RecurringJobDefinition instead of the false promise.\n\nGive consumers a wor\n[…]\ne by id, a\nchild inserted after its master is archived keeps its lineage, and\nthe migrator ITs run the V001-V006 chain on all four SQL stores.\n\nFixes #125\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Make recurring child lineage durable",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T18:47:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "989a40e561845949dc96ca2864ebaa40fa1c5c01",
          "body": "## Summary\n\nThis is PR 1 of 5 in the review-remediation stack.\n\n- Add opt-in API and store compatibility reports.\n- Validate release scripts before deployment and materialize every\nruntime conformance report.\n- Add a CI smoke run for the showcase.\n- Add the missing coordinator module descriptors.\n- \n[…]\nmain`. PR 2 targets this branch.\n\nThe architecture test now reads store modules from the reactor. Oracle,\nSQL Server, and future store modules are covered without adding another\npackage entry by hand.",
          "is_bot": false,
          "headline": "Harden release, compatibility, and CI foundations (#132)",
          "author_name": "Jonathan Putney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T17:17:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8f9d2c1a3d8ca32e323d2260e7a4663992c3527a",
          "body": "The stable-priority-codes change added JobPriorityConverter with\n@Convert annotations on JobEntity and ArchivedJobEntity, but the\ntestsuite's generated persistence.xml uses exclude-unlisted-classes\nwith a hand-kept class list that never learned about it. Hibernate\nloads converters from the classload\n[…]\nly cells\npassed; EclipseLink resolves them inside the persistence unit and\nfailed every Payara, GlassFish, and OpenLiberty deployment. List the\nconverter.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(suite): list the priority converter in the test persistence unit",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T16:08:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "919e5c0b4f9e15765e0e9057cd8cf278b34a3284",
          "body": "CircuitBreakerRegistry now reports breaker transitions through\nMetricsCollector, but the hand-rolled circuit-breaker-it.war never\nincluded that class, so Weld dropped the registry and every matrix\ncell failed deployment with an unsatisfied dependency. Add\nMetricsCollector and NoOpMetricsCollector to the archive.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(resilience): bundle the metrics SPI in the circuit-breaker WAR",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:29:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7f7993dfb282f5f46b3031fa22f4b6482308b1da",
          "body": "archiveAndDeleteJobsBatch read job content with a plain SELECT, built\narchive rows from that snapshot, then deleted on a bare terminal-status\nguard. A resurrect and re-fail committing in between would archive the\nstale outcome while deleting the newer terminal row, and the row-count\ncheck cannot tel\n[…]\n UPDATE row locks (UPDLOCK on\nSQL Server) before the snapshot read in all four SQL stores so the rows\ncannot change until the archive transaction commits.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(stores): lock hot rows across batch archive read and delete",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:27:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "edade52f4682ba4d4d2474815618d599bea78b09",
          "body": "The event table linked to #jobexecutiontimeoutedevent, but the heading\nin event-system.md slugifies to #jobexecutiontimedoutevent, so the\nlink landed at the top of the page.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(docs): point the timed-out event link at the real heading",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:20:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f97021b0a3a501e8b443aff33b9a5f825bd28d7a",
          "body": "The new adopting-the-tck page carries a ratchet-bom dependency snippet\nand a stated current release, but the page was not listed in\nPUBLIC_MAVEN_FILES, so every future release would leave it advertising\n0.1.1. Add it to the allowlist.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(release): sync the TCK adoption page's version on release",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:20:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "049571b23d7962e8517a187602eb685e19c9bf22",
          "body": "The performance-tuning page shipped a copy-paste dependency block with\n${ratchet.version}, a property that only resolves inside our own\nreactor. Every other snippet in this change set was pinned to 0.1.1;\nthis one was missed. Pin it and register the page in sync-version.sh\nso future releases advance it with the rest.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(docs): pin the micrometer snippet to the published version",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:19:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11e35baf4c4e52c2e289f91ca5f9cc71e9bf2304",
          "body": "After the caches moved to ClassValue, the test only checked the static\nfield's declared type, which the compiler guarantees. Reach into the\nper-class map instead and verify one entry appears after the first\nconversion and none are added by the second. Bypassing the cache now\nfails the test; before this change it still passed.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(payload): assert reflection lookups are actually memoized",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:18:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96e268f6efdc52856fb31697cd2a976ee03aea52",
          "body": "The extension-preservation test returned early when a store lacks\nJobExtensionStore, which JUnit reports as a green pass. Use the\nprobe-backed extensionStore() accessor instead, so the conformance\nreport records the test as skipped like every other capability-gated\ncontract.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(tck): report the archive extension contract as N/A when unsupported",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:16:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0ce17e1eacbc0d402f9aaad10f90f862f8e82029",
          "body": "The dashboard-visibility loop assigned curl output outside any\ncondition, so under set -e the first transient failure killed the\nwhole script instead of retrying for up to 30 seconds. Move the curl\ninto the if-condition, the same shape wait_for_showcase_http already\nuses.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(showcase): let the smoke dashboard poll retry transient failures",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:15:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "73205a67b2c30e2231a6bb76af0210185cc02821",
          "body": "All four SQL stores caught duplicate-business-key violations on the\nsingle-job resurrect path but let the bulk path leak the raw vendor\nexception from its reservation INSERT...SELECT. A freed key reused by\na new job then surfaced as an untranslated store error and was counted\nas a hard failure in th\n[…]\nRatchetTransientStoreException the single-job path\ndocuments. The TCK conflict test now pins the exception type instead\nof accepting any RuntimeException.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(stores): translate duplicate business keys in bulk resurrection",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:15:25Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "90788b40304f8263db8b1a062c17d48f5607e7f5",
          "body": "The bulk FAILED-to-PENDING recovery path updated job status without\nwriting scheduler_business_key_reservation, the collection that owns\ncross-type (queue vs recurring) business-key uniqueness. A recurring\nmaster created after a bulk retry could share a resurrected job's key.\nSync each resurrected r\n[…]\n the bulk transaction and\ntranslate duplicate-key failures the same way the single-job path\ndoes. New TCK contract (7i) pins the behavior for every store.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(mongodb): re-reserve business keys in bulk job resurrection",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T15:09:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1e02983cfc54066f5af789426682be84533f1c99",
          "body": "ChainScheduler is @Transactional at the class level, so Weld treats\nevery non-private method as intercepted and rejects the deployment\nwhile publishAfterCommit is final (WELD-001504). The method stays\nprotected for WorkflowScheduler. No runtime change: every call site\nis a self-invocation, which never routes through the interceptor.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(events): drop final from the after-commit publisher",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T14:49:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "112f34fa9484a5435af92fd32ece75604c13e978",
          "body": "scripts/test-sync-version.sh arrived with the release-script hardening\nbut no workflow ran it, so a regression in sync-version.sh would only\nshow up during an actual release. Run it in workflow-lint next to the\nmaterializer test.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(ci): gate the sync-version test on pull requests",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T13:55:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e86450abf5b2fbb2c76cb31e093b4802871bc44d",
          "body": "…pages\n\nThe materializer kept its own copy of the server/database matrix and\nnever deleted pages it no longer managed. Removing a matrix cell from\nci.yml left the old conformance page published forever, with nothing to\nflag the drift.\n\nParse the integration-test matrix out of ci.yml instead, keeping\n[…]\nh no label. After a successful copy, delete\nany page in the api and jakarta tier directories (index.md aside) that\nno longer corresponds to a matrix cell.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(docs): derive the conformance matrix from ci.yml and prune stale …",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T13:52:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0b44bb898be7c9c74771e297d58c8bac02e5b435",
          "body": "The functional test for materialize-runtime-conformance-reports.sh only\nran in docs.yml, which has no pull_request trigger. A logic regression\nin the materializer could merge behind a green PR and only surface when\nthe post-merge docs deploy failed. Run the test in workflow-lint so it\ngates every PR.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(ci): gate conformance materializer tests on pull requests",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T13:52:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e21cfc5aa3207869626ea2d207e5719391f920e",
          "body": "…-observability",
          "is_bot": false,
          "headline": "Merge branch 'work/review-persistence-schema' into work/review-events…",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T13:50:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "686d9e2768fc4f79bd8874aeb95de11d9b07ee73",
          "body": "ChainCompletedEvent was still published inside the transaction, unlike\nthe chain-started and chain-failed events, which already go through\npublishAfterCommit. A completion whose transaction rolled back would\nstill announce itself. Route it through the same seam and add tests\nfor the commit and rollback paths.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(events): defer chain-completed events until commit",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T13:28:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9a387c0f527cfd2d2e253128275f20b5011815e",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge execution stack updates into docs and TCK",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:43:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "55163015f5e78f714d3a6a1034577cefb5d1a82f",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge persistence stack updates into execution",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:43:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "582ab94d50daf385f4e4a7fa8b13dc4d6500689a",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge observability stack updates into persistence",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:43:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ddad71f45f3ebe1bd84062903d512da7e4299211",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge poll-cycle transaction fix into observability",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:43:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "13e9b9720820f94c0feff982ee1dd097ab36116f",
          "body": "Avoid raw UserTransaction cleanup in the poll-cycle integration test. The helper now confirms that the same ambient transaction is restored, then marks it rollback-only.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(tests): keep poll-cycle transactions container-managed",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:42:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "658b7a3419cfc9951f17386e52eb041d4d7a24ac",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge execution review fixes into docs and TCK",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:07:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e47d42b77f9e2abcbe832ccfe96a61625d9e6ed",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge persistence review fixes into execution",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:07:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "be6038548b777705ad14dfe3d7b60b86a6b47ca9",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge observability review fixes into persistence",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:03:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0cbbe4cac8e7f3f03dd40db647338cd769f7493d",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge conformance report fixes into observability",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:03:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "07c0dded204064cff6da2276e7da921a099561b1",
          "body": "Ignore only ORA-02443 while dropping legacy job-type constraints, then recreate each constraint with the current values.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(oracle): tolerate missing legacy constraints in V005",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:03:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bb04280cecc4e66e6b92a3d8f05df2c69598f763",
          "body": "Use the configured error sanitizer once, then persist and publish the same safe timeout message. Fall back to the exception class if sanitization fails.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(runtime): sanitize hard-timeout error metadata",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:03:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e5b127d1b84dc9893482c825465255733f1a847",
          "body": "Serialize gauge replacement without locking the caller-owned meter registry.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(metrics): use a private gauge registration lock",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:03:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3aa7cc9f4233116cc6acba99aacc8ef7e10e451c",
          "body": "Calculate report and server/database counts from the configured arrays so new matrix entries do not require another hard-coded update.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(ci): derive conformance report totals from matrix",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T04:03:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e4ca5312d928c9326976392f84a9998c8fd5ac19",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>\n\n# Conflicts:\n#\twebsite/docs/advanced/metrics-collection.md\n#\twebsite/docs/advanced/spi-implementation.md\n#\twebsite/docs/api-reference/spi-interfaces.md\n#\twebsite/docs/deployment/monitoring.md\n#\twebsite/docs/deployment/performance-tuning.md",
          "is_bot": false,
          "headline": "Merge execution review fixes into docs and TCK",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:55:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ba762a3c29a08e2a108c513f58e46d0700d971b1",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>\n\n# Conflicts:\n#\tratchet/src/main/java/run/ratchet/ri/core/internal/JobTimeoutHandler.java",
          "is_bot": false,
          "headline": "Merge persistence review fixes into execution",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:54:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8065ece8161a06db36edff929032d0c4865e5645",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge observability review fixes into persistence",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:52:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4fe14710edf70484d6c5e19b144e562cf183937c",
          "body": "Distinguish the development API used by compile checks from the released dependency readers can resolve from Maven Central.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(llm): clarify tested and published versions",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:52:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9b476b2df4264c0e1beb7413b62a9a4c5b337b9",
          "body": "Keep the REQUIRED transaction attribute with the method description so generated Javadocs render it as contract text.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(store): place retry transaction note in contract",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:52:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "041c57d30b42cef0cd8e7a7e828c141a663fcf5c",
          "body": "Register hard-timeout failure events with transaction completion so rolled-back state is never exposed to listeners.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(runtime): publish timeout failures after commit",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:52:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a18b8f7bbea759595fcdfae43e0c29ee194a4df3",
          "body": "Fail malformed single-statement migrations explicitly instead of treating a missing SQL body as an empty migration.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(migrations): reject empty single-statement scripts",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:52:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f941870d3f97c6354d3955fb5886e058c81ffd9",
          "body": "Remove brittle callback and meter totals, and document application circuit-breaker state in every operator-facing catalog.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(observability): align metric catalogs with callbacks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:52:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c4f3d4a79cd0eea7f14ee22bf0b9592ca09b6ee2",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge execution updates into docs and TCK fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:44:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5af6dcfb4d1203a40ace56fa544b917a82198d5c",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge persistence updates into execution fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:44:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a33be6cf9bd05c297a95ef5e19f236ff9fae402a",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge review event updates into persistence fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:44:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2501834e636a3225a9eebf9981a09211c241381",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge poll transaction fix into review events",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:44:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "855cadb2cfc8453953072cd53f91ac4fff1ba951",
          "body": "Run poll callbacks outside inherited JTA transactions so each required store claim commits before work is dispatched.\n\nKeep the concurrent business-key TCK inside the active reservation window, and add a managed-container regression for the transaction boundary.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(runtime): commit poll claims before dispatch",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T01:43:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c750c6695fa6bfde0c140ff138b779d95df9ffff",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge execution updates into docs and TCK fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T00:39:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "087be0fadfd0b12a2951f054d1d3585dc83797aa",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge persistence updates into execution fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T00:39:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2bb9581babb9d018c1b6a4f5802773b7ad0f113f",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge review event updates into persistence fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T00:39:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a987606bfde1271f88c6fdfa90c5303195f4b92d",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "Merge foundation CI fixes into review events",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T00:39:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f77cbe1cb98cc603f055024576a442898448f5a",
          "body": "Disable implicit annotation processing so the Infinispan JPMS build behaves consistently across supported JDKs.\n\nAuthorization tests wait for submitted work before cleanup. The PostgreSQL plan test removes a competing index inside its rolled-back transaction, and the Qodana findings are fixed or narrowly suppressed.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(ci): stabilize foundation checks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-13T00:38:38Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f0afd9cd2955a7273372494deec17489d1b03fd",
          "body": "The old bind-address property did not select a JGroups stack, so the TCK silently fell back to multicast UDP and leaked cache managers when cluster formation failed. Use explicit shared loopback and close managers after partial construction.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(infinispan): use an in-process cluster transport",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:33:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f9e5de1f9f7b7c4930596ed504a8029eedec9647",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(metrics): correct the collector callback count",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:21:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5ca1d82feed90f3f3d001a82026555744a3075ad",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: refresh execution checks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:21:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19b40c537b758ce8ed41a6902bb701078ac83f51",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "style(mongodb): format the lifecycle constructor",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:21:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72739e134fc56bcb05787abeb3690307321c1d6a",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: refresh persistence checks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:19:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a5700515c76884bfec60f8dd9e09eb3d271851ec",
          "body": "Active business keys now serialize through the shared reservation collection, so duplicates are reported by its _id index rather than the legacy job-queue index.\n\nSigned-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(mongodb): assert reservation key conflicts",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:19:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4ba25dc199507a30dcc7ace242abc1e22726ce0b",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the stable store verification",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:03:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "565810f43371175ffe24f659fee4343cf8094b82",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the stable PostgreSQL plan check",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:03:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b928a1f95cd97163ff581213a42b9401628892ef",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(postgresql): isolate the claim index plan",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T22:03:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5c130b1746765c86f391d0957eb589d26ca510f6",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the complete store checks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:59:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2f5c12d3e7a83f77375bf116173ade8c85d09a31",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the complete dialect checks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:59:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "971b6d7bf7177af2330399b26f678e2635ee2e6c",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(schema): cover the full migration chain in every dialect",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:59:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1788fedd8aa5d37d8387064e9b0c32dd9fb4412d",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the final execution fixes",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:55:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e0869211f8c8de5053fbbe35f17a78bebabe1052",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the final persistence checks",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:55:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1dae92dbd37a00cf5e4f4e273ca28e3a4616f794",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "fix(events): keep timeout and DLQ events on one transaction",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:55:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d234b3d3a6e7a9511f459d7050a5f7f73eefb6ba",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(config): refresh the fixed-key catalog",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:50:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5ca977974c0441d6f8c423f3a9ec1dd269969492",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the final observability cleanup",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:50:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "35f331e696067d1d0d7330238c4c7845657dbfca",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "style(test): use the imported timeout unit",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:50:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "18786a992407228aa1870c23442eb137a7d90b22",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "test(schema): cover the complete MySQL upgrade chain",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:49:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "145a11cb10c09ca49644d63d8b494f1bb9c2e835",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(operations): document the complete runtime contract",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:44:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "879ce3c98aa0e0cc5c61d3910d461d6f3f9ddea1",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(distribution): make setup instructions resolvable",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:43:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e98c9d18e1dc5ccdb0a771dc57ae80142eb2676e",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "docs(tck): explain adoption and transaction contracts",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:43:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9e1ba4afe36664aaf7f87df1222f07deeb95f212",
          "body": "Signed-off-by: jcputney <jonathan@putney.io>",
          "is_bot": false,
          "headline": "merge: include the complete schema migration check",
          "author_name": "jcputney",
          "author_login": "jcputney",
          "committed_at": "2026-07-12T21:42:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 3,
      "commits_last_year": 1418,
      "latest_release_at": "2026-07-21T19:40:01Z",
      "latest_release_tag": "v0.2.1",
      "releases_from_tags": false,
      "days_since_last_push": 2,
      "active_weeks_last_year": 19,
      "days_since_latest_release": 4,
      "mean_days_between_releases": 18.6
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 100,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "run.ratchet:ratchet",
          "exists": true,
          "license": "Apache License, Version 2.0",
          "keywords": [],
          "ecosystem": "maven",
          "matches_repo": true,
          "registry_url": "https://central.sonatype.com/artifact/run.ratchet/ratchet",
          "is_deprecated": false,
          "latest_version": "0.2.1",
          "repository_url": "https://github.com/ratchet-run/ratchet/ratchet",
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:05:04Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "run.ratchet:ratchet-api",
          "exists": true,
          "license": "Apache License, Version 2.0",
          "keywords": [],
          "ecosystem": "maven",
          "matches_repo": true,
          "registry_url": "https://central.sonatype.com/artifact/run.ratchet/ratchet-api",
          "is_deprecated": false,
          "latest_version": "0.2.1",
          "repository_url": "https://github.com/ratchet-run/ratchet/ratchet-api",
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:05:04Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "run.ratchet:ratchet-encryption",
          "exists": true,
          "license": "Apache License, Version 2.0",
          "keywords": [],
          "ecosystem": "maven",
          "matches_repo": true,
          "registry_url": "https://central.sonatype.com/artifact/run.ratchet/ratchet-encryption",
          "is_deprecated": false,
          "latest_version": "0.2.1",
          "repository_url": "https://github.com/ratchet-run/ratchet/ratchet-encryption",
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-21T20:05:10Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 22,
      "watchers": 0,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": null,
      "open_issues_and_prs": 1
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "coordinators/ratchet-coordinator-common/pom.xml",
        "coordinators/ratchet-coordinator-hazelcast/pom.xml",
        "coordinators/ratchet-coordinator-infinispan/pom.xml",
        "coordinators/ratchet-coordinator-jms/pom.xml",
        "coordinators/ratchet-coordinator-postgresql/pom.xml",
        "observability/ratchet-micrometer/pom.xml",
        "observability/ratchet-otel/pom.xml",
        "pom.xml",
        "ratchet-api/pom.xml",
        "ratchet-bom/pom.xml",
        "ratchet-encryption/pom.xml",
        "ratchet/pom.xml",
        "stores/ratchet-store-core/pom.xml",
        "stores/ratchet-store-mongodb/pom.xml",
        "stores/ratchet-store-mysql/pom.xml",
        "stores/ratchet-store-oracle/pom.xml",
        "stores/ratchet-store-postgresql/pom.xml",
        "stores/ratchet-store-sqlserver/pom.xml",
        "testing/ratchet-arch-tests/pom.xml",
        "testing/ratchet-coverage/pom.xml",
        "testing/ratchet-loadtest/pom.xml",
        "testing/ratchet-showcase/pom.xml",
        "testing/ratchet-tck/api/pom.xml",
        "testing/ratchet-tck/coordinator/pom.xml",
        "testing/ratchet-tck/jakarta/pom.xml",
        "testing/ratchet-tck/pom.xml",
        "testing/ratchet-tck/store/pom.xml",
        "testing/ratchet-tck/util/pom.xml",
        "testing/ratchet-testsuite-jpms/pom.xml",
        "testing/ratchet-testsuite/pom.xml",
        "testing/ratchet-version-compatibility/pom.xml"
      ],
      "largest_source_bytes": 63304,
      "source_files_sampled": 1385,
      "oversized_source_files": 2,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "pom.xml",
        "ratchet-api/pom.xml",
        "ratchet-bom/pom.xml",
        "ratchet-encryption/pom.xml",
        "ratchet/pom.xml",
        "website/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 21,
        "malicious_count": 0,
        "assessed_package": "maven:run.ratchet:ratchet@0.2.1",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "maven",
        "npm"
      ],
      "dependencies": [
        {
          "name": "org.apache.artemis:artemis-jakarta-server",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${artemis.version}"
        },
        {
          "name": "org.apache.artemis:artemis-jakarta-client",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${artemis.version}"
        },
        {
          "name": "org.infinispan:infinispan-core",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${infinispan.version}"
        },
        {
          "name": "com.hazelcast:hazelcast",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${hazelcast.version}"
        },
        {
          "name": "io.netty:netty-bom",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${netty.version}"
        },
        {
          "name": "org.apache.commons:commons-configuration2",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${commons-configuration2.version}"
        },
        {
          "name": "com.fasterxml.jackson.core:jackson-core",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${jackson-core.version}"
        },
        {
          "name": "org.ow2.asm:asm",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "org.ow2.asm:asm-tree",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "com.cronutils:cron-utils",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${cron-utils.version}"
        },
        {
          "name": "org.jboss.arquillian:arquillian-bom",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${arquillian.version}"
        },
        {
          "name": "run.ratchet:ratchet-api",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-core",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-encryption",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-mysql",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-postgresql",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-oracle",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-sqlserver",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-mongodb",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-common",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-postgresql",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-jms",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-infinispan",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-hazelcast",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-util",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-store",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-api",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-jakarta",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-coordinator",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-micrometer",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-otel",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-testsuite",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-arch-tests",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "org.testcontainers:testcontainers-bom",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${testcontainers.version}"
        },
        {
          "name": "com.google.protobuf:protobuf-java",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${protobuf-java.version}"
        },
        {
          "name": "org.mongodb:mongodb-driver-sync",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${mongodb-driver.version}"
        },
        {
          "name": "org.jboss.logging:jboss-logging",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${jboss-logging.version}"
        },
        {
          "name": "org.pitest:pitest-junit5-plugin",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${pitest-junit5-plugin.version}"
        },
        {
          "name": "org.ow2.asm:asm",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "org.ow2.asm:asm-analysis",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "org.ow2.asm:asm-commons",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "org.ow2.asm:asm-tree",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "org.ow2.asm:asm-util",
          "manifest": "pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${asm.version}"
        },
        {
          "name": "run.ratchet:ratchet-api",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-core",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-encryption",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-mysql",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-postgresql",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-oracle",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-sqlserver",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-store-mongodb",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-common",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-postgresql",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-jms",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-infinispan",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-coordinator-hazelcast",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-micrometer",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-otel",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-util",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-store",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-api",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-jakarta",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-tck-coordinator",
          "manifest": "ratchet-bom/pom.xml",
          "ecosystem": "maven",
          "version_constraint": "${project.version}"
        },
        {
          "name": "run.ratchet:ratchet-api",
          "manifest": "ratchet-encryption/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "run.ratchet:ratchet-api",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "run.ratchet:ratchet-store-core",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "run.ratchet:ratchet-encryption",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "org.ow2.asm:asm",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "org.ow2.asm:asm-tree",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "com.cronutils:cron-utils",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        },
        {
          "name": "org.jboss.logging:jboss-logging",
          "manifest": "ratchet/pom.xml",
          "ecosystem": "maven",
          "version_constraint": null
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "com.cronutils:cron-utils",
            "direct": true,
            "version": "9.2.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.fasterxml.jackson.core:jackson-core",
            "direct": true,
            "version": "2.18.6",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.protobuf:protobuf-java",
            "direct": true,
            "version": "3.25.9",
            "ecosystem": "maven"
          },
          {
            "name": "com.hazelcast:hazelcast",
            "direct": true,
            "version": "5.5.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-jakarta-client",
            "direct": true,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-jakarta-server",
            "direct": true,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-configuration2",
            "direct": true,
            "version": "2.15.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.infinispan:infinispan-core",
            "direct": true,
            "version": "15.1.7.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.logging:jboss-logging",
            "direct": true,
            "version": "3.6.3.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.mongodb:mongodb-driver-sync",
            "direct": true,
            "version": "5.7.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.ow2.asm:asm",
            "direct": true,
            "version": "9.8",
            "ecosystem": "maven"
          },
          {
            "name": "org.ow2.asm:asm-tree",
            "direct": true,
            "version": "9.8",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-api",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-coordinator-common",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-coordinator-hazelcast",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-coordinator-infinispan",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-coordinator-jms",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-coordinator-postgresql",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-encryption",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-micrometer",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-otel",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-store-core",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-store-mongodb",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-store-mysql",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-store-oracle",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-store-postgresql",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-store-sqlserver",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-tck-api",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-tck-coordinator",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-tck-jakarta",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-tck-store",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-tck-util",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "run.ratchet:ratchet-testsuite",
            "direct": true,
            "version": "0.2.2-SNAPSHOT",
            "ecosystem": "maven"
          },
          {
            "name": "aopalliance:aopalliance",
            "direct": false,
            "version": "1.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.fasterxml.jackson.core:jackson-annotations",
            "direct": false,
            "version": "2.20",
            "ecosystem": "maven"
          },
          {
            "name": "com.fasterxml:classmate",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.github.ben-manes.caffeine:caffeine",
            "direct": false,
            "version": "3.1.8",
            "ecosystem": "maven"
          },
          {
            "name": "com.github.ben-manes.caffeine:caffeine",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "maven"
          },
          {
            "name": "com.github.docker-java:docker-java-api",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.github.docker-java:docker-java-transport",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.github.docker-java:docker-java-transport-zerodep",
            "direct": false,
            "version": "3.7.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.code.findbugs:jsr305",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.code.gson:gson",
            "direct": false,
            "version": "2.10.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.code.gson:gson",
            "direct": false,
            "version": "2.13.2",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.crypto.tink:tink",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.errorprone:error_prone_annotations",
            "direct": false,
            "version": "2.22.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.errorprone:error_prone_annotations",
            "direct": false,
            "version": "2.41.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.guava:failureaccess",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.guava:guava",
            "direct": false,
            "version": "33.5.0-jre",
            "ecosystem": "maven"
          },
          {
            "name": "com.google.inject:guice",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.hierynomus:asn-one",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.microsoft.sqlserver:mssql-jdbc",
            "direct": false,
            "version": "12.8.2.jre11",
            "ecosystem": "maven"
          },
          {
            "name": "com.mysql:mysql-connector-j",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.nimbusds:nimbus-jose-jwt",
            "direct": false,
            "version": "10.9",
            "ecosystem": "maven"
          },
          {
            "name": "com.oracle.database.jdbc:ojdbc11",
            "direct": false,
            "version": "23.9.0.25.07",
            "ecosystem": "maven"
          },
          {
            "name": "com.sun.istack:istack-commons-runtime",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "maven"
          },
          {
            "name": "com.tngtech.archunit:archunit",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.tngtech.archunit:archunit-junit5",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.tngtech.archunit:archunit-junit5-api",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.tngtech.archunit:archunit-junit5-engine",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "com.tngtech.archunit:archunit-junit5-engine-api",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "commons-beanutils:commons-beanutils",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "maven"
          },
          {
            "name": "commons-codec:commons-codec",
            "direct": false,
            "version": "1.19.0",
            "ecosystem": "maven"
          },
          {
            "name": "commons-codec:commons-codec",
            "direct": false,
            "version": "1.22.0",
            "ecosystem": "maven"
          },
          {
            "name": "commons-collections:commons-collections",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "maven"
          },
          {
            "name": "commons-io:commons-io",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "maven"
          },
          {
            "name": "commons-io:commons-io",
            "direct": false,
            "version": "2.22.0",
            "ecosystem": "maven"
          },
          {
            "name": "commons-logging:commons-logging",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "de.dentrassi.crypto:pem-keystore",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "eu.maveniverse.maven.mima.runtime:embedded-maven",
            "direct": false,
            "version": "2.4.43",
            "ecosystem": "maven"
          },
          {
            "name": "eu.maveniverse.maven.mima.runtime:standalone-shared",
            "direct": false,
            "version": "2.4.43",
            "ecosystem": "maven"
          },
          {
            "name": "eu.maveniverse.maven.mima.runtime:standalone-static",
            "direct": false,
            "version": "2.4.43",
            "ecosystem": "maven"
          },
          {
            "name": "eu.maveniverse.maven.mima:context",
            "direct": false,
            "version": "2.4.43",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:context-propagation",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-commons",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-commons",
            "direct": false,
            "version": "1.16.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-core",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-core",
            "direct": false,
            "version": "1.16.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-observation",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-observation",
            "direct": false,
            "version": "1.16.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-registry-prometheus",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "io.micrometer:micrometer-tracing",
            "direct": false,
            "version": "1.4.4",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-buffer",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-codec",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-codec-haproxy",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-codec-http",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-codec-socks",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-common",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-handler",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-handler-proxy",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-resolver",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-transport",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-transport-classes-epoll",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-transport-classes-kqueue",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-transport-native-epoll",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-transport-native-kqueue",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.netty:netty-transport-native-unix-common",
            "direct": false,
            "version": "4.1.135.Final",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-api",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-common",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-context",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-sdk",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-sdk-common",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-sdk-logs",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-sdk-metrics",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-sdk-testing",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.opentelemetry:opentelemetry-sdk-trace",
            "direct": false,
            "version": "1.62.0",
            "ecosystem": "maven"
          },
          {
            "name": "io.prometheus:prometheus-metrics-config",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.prometheus:prometheus-metrics-core",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.prometheus:prometheus-metrics-exposition-formats",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.prometheus:prometheus-metrics-exposition-textformats",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.prometheus:prometheus-metrics-model",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.prometheus:prometheus-metrics-tracer-common",
            "direct": false,
            "version": "1.3.5",
            "ecosystem": "maven"
          },
          {
            "name": "io.reactivex.rxjava3:rxjava",
            "direct": false,
            "version": "3.1.10",
            "ecosystem": "maven"
          },
          {
            "name": "io.smallrye:jandex",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.activation:jakarta.activation-api",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.annotation:jakarta.annotation-api",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.authentication:jakarta.authentication-api",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.ejb:jakarta.ejb-api",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.el:jakarta.el-api",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.el:jakarta.el-api",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.enterprise:jakarta.enterprise.cdi-api",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.enterprise:jakarta.enterprise.cdi-el-api",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.enterprise:jakarta.enterprise.lang-model",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.faces:jakarta.faces-api",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.inject:jakarta.inject-api",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.interceptor:jakarta.interceptor-api",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.jms:jakarta.jms-api",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.json.bind:jakarta.json.bind-api",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.json:jakarta.json-api",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.persistence:jakarta.persistence-api",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.platform:jakarta.jakartaee-web-api",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.security.enterprise:jakarta.security.enterprise-api",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.servlet.jsp:jakarta.servlet.jsp-api",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.servlet:jakarta.servlet-api",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.transaction:jakarta.transaction-api",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.validation:jakarta.validation-api",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.websocket:jakarta.websocket-api",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.websocket:jakarta.websocket-client-api",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.ws.rs:jakarta.ws.rs-api",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "maven"
          },
          {
            "name": "jakarta.xml.bind:jakarta.xml.bind-api",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "javax.inject:javax.inject",
            "direct": false,
            "version": "1",
            "ecosystem": "maven"
          },
          {
            "name": "net.bytebuddy:byte-buddy",
            "direct": false,
            "version": "1.17.7",
            "ecosystem": "maven"
          },
          {
            "name": "net.bytebuddy:byte-buddy",
            "direct": false,
            "version": "1.17.8",
            "ecosystem": "maven"
          },
          {
            "name": "net.bytebuddy:byte-buddy-agent",
            "direct": false,
            "version": "1.17.7",
            "ecosystem": "maven"
          },
          {
            "name": "net.java.dev.jna:jna",
            "direct": false,
            "version": "5.18.1",
            "ecosystem": "maven"
          },
          {
            "name": "org.antlr:antlr4-runtime",
            "direct": false,
            "version": "4.13.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.activemq:activemq-artemis-native",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-commons",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-core-client",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-jakarta-service-extensions",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-jdbc-store",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-journal",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-lockmanager-api",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-selector",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.artemis:artemis-server",
            "direct": false,
            "version": "2.54.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-compress",
            "direct": false,
            "version": "1.28.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-dbcp2",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-lang3",
            "direct": false,
            "version": "3.18.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-lang3",
            "direct": false,
            "version": "3.20.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-pool2",
            "direct": false,
            "version": "2.13.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.commons:commons-text",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.httpcomponents:httpclient",
            "direct": false,
            "version": "4.5.14",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.httpcomponents:httpcore",
            "direct": false,
            "version": "4.4.16",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-api",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-connector-basic",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-impl",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-named-locks",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-spi",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-supplier",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-transport-file",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-transport-http",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.resolver:maven-resolver-util",
            "direct": false,
            "version": "1.9.27",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.shared:maven-invoker",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven.shared:maven-shared-utils",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-artifact",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-builder-support",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-model",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-model-builder",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-repository-metadata",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-resolver-provider",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-settings",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apache.maven:maven-settings-builder",
            "direct": false,
            "version": "3.9.15",
            "ecosystem": "maven"
          },
          {
            "name": "org.apiguardian:apiguardian-api",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.awaitility:awaitility",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.checkerframework:checker-qual",
            "direct": false,
            "version": "3.55.1",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-cipher",
            "direct": false,
            "version": "2.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-classworlds",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-compiler-api",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-compiler-javac",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-component-annotations",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-interpolation",
            "direct": false,
            "version": "1.29",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-sec-dispatcher",
            "direct": false,
            "version": "2.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.codehaus.plexus:plexus-utils",
            "direct": false,
            "version": "3.6.1",
            "ecosystem": "maven"
          },
          {
            "name": "org.eclipse.angus:angus-activation",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.eclipse.parsson:parsson",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "maven"
          },
          {
            "name": "org.eclipse.sisu:org.eclipse.sisu.inject",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.eclipse.sisu:org.eclipse.sisu.plexus",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.eclipse:yasson",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.glassfish.jaxb:jaxb-core",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.glassfish.jaxb:jaxb-runtime",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.glassfish.jaxb:txw2",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.hamcrest:hamcrest",
            "direct": false,
            "version": "2.1",
            "ecosystem": "maven"
          },
          {
            "name": "org.hdrhistogram:HdrHistogram",
            "direct": false,
            "version": "2.2.2",
            "ecosystem": "maven"
          },
          {
            "name": "org.hibernate.common:hibernate-commons-annotations",
            "direct": false,
            "version": "7.0.3.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.hibernate.orm:hibernate-core",
            "direct": false,
            "version": "6.6.50.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.infinispan.protostream:protostream",
            "direct": false,
            "version": "5.0.13.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.infinispan.protostream:protostream-processor",
            "direct": false,
            "version": "5.0.13.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.infinispan.protostream:protostream-types",
            "direct": false,
            "version": "5.0.13.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.infinispan:infinispan-commons",
            "direct": false,
            "version": "15.1.7.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.infinispan:infinispan-counter-api",
            "direct": false,
            "version": "15.1.7.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.config:arquillian-config-api",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.config:arquillian-config-impl-base",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.config:arquillian-config-spi",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.container:arquillian-container-impl-base",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.container:arquillian-container-spi",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.container:arquillian-container-test-api",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.container:arquillian-container-test-impl-base",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.container:arquillian-container-test-spi",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.core:arquillian-core-api",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.core:arquillian-core-impl-base",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.core:arquillian-core-spi",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.junit5:arquillian-junit5-container",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.junit5:arquillian-junit5-core",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.test:arquillian-test-api",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.test:arquillian-test-impl-base",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.arquillian.test:arquillian-test-spi",
            "direct": false,
            "version": "1.10.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.classfilewriter:jboss-classfilewriter",
            "direct": false,
            "version": "1.3.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.jdeparser:jdeparser",
            "direct": false,
            "version": "2.0.3.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.logging:jboss-logging-annotations",
            "direct": false,
            "version": "3.0.4.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.logging:jboss-logging-processor",
            "direct": false,
            "version": "3.0.4.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-api-base",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.descriptors:shrinkwrap-descriptors-spi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api-maven",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api-maven-archive",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api-maven-embedded",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-depchain",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven-archive",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven-embedded",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-spi",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-spi-maven",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-spi-maven-archive",
            "direct": false,
            "version": "3.3.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap:shrinkwrap-api",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap:shrinkwrap-impl-base",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.shrinkwrap:shrinkwrap-spi",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.threads:jboss-threads",
            "direct": false,
            "version": "3.6.1.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.weld.environment:weld-environment-common",
            "direct": false,
            "version": "6.0.2.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.weld.se:weld-se-core",
            "direct": false,
            "version": "6.0.2.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.weld:weld-api",
            "direct": false,
            "version": "6.0.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.weld:weld-core-impl",
            "direct": false,
            "version": "6.0.2.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.weld:weld-lite-extension-translator",
            "direct": false,
            "version": "6.0.2.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jboss.weld:weld-spi",
            "direct": false,
            "version": "6.0.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jctools:jctools-core",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "maven"
          },
          {
            "name": "org.jetbrains:annotations",
            "direct": false,
            "version": "17.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.jgroups:jgroups",
            "direct": false,
            "version": "5.3.13.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jgroups:jgroups",
            "direct": false,
            "version": "5.3.15.Final",
            "ecosystem": "maven"
          },
          {
            "name": "org.jspecify:jspecify",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.jupiter:junit-jupiter",
            "direct": false,
            "version": "5.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.jupiter:junit-jupiter-api",
            "direct": false,
            "version": "5.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.jupiter:junit-jupiter-engine",
            "direct": false,
            "version": "5.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.jupiter:junit-jupiter-params",
            "direct": false,
            "version": "5.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.platform:junit-platform-commons",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.platform:junit-platform-engine",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.junit.platform:junit-platform-launcher",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.latencyutils:LatencyUtils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "maven"
          },
          {
            "name": "org.mockito:mockito-core",
            "direct": false,
            "version": "5.23.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.mockito:mockito-junit-jupiter",
            "direct": false,
            "version": "5.23.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.mongodb:bson",
            "direct": false,
            "version": "5.7.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.mongodb:bson-record-codec",
            "direct": false,
            "version": "5.7.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.mongodb:mongodb-driver-core",
            "direct": false,
            "version": "5.7.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.objenesis:objenesis",
            "direct": false,
            "version": "3.3",
            "ecosystem": "maven"
          },
          {
            "name": "org.opentest4j:opentest4j",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "maven"
          },
          {
            "name": "org.postgresql:postgresql",
            "direct": false,
            "version": "42.7.13",
            "ecosystem": "maven"
          },
          {
            "name": "org.reactivestreams:reactive-streams",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "maven"
          },
          {
            "name": "org.rnorth.duct-tape:duct-tape",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:jcl-over-slf4j",
            "direct": false,
            "version": "1.7.36",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-api",
            "direct": false,
            "version": "1.7.36",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-api",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-api",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-api",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "maven"
          },
          {
            "name": "org.slf4j:slf4j-simple",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-database-commons",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-jdbc",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-junit-jupiter",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-mongodb",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-mssqlserver",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-mysql",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-oracle-free",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.testcontainers:testcontainers-postgresql",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "maven"
          },
          {
            "name": "org.wildfly.common:wildfly-common",
            "direct": false,
            "version": "1.7.0.Final",
            "ecosystem": "maven"
          },
          {
            "name": "@algolia/abtesting",
            "direct": false,
            "version": "1.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/autocomplete-core",
            "direct": false,
            "version": "1.17.7",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/autocomplete-plugin-algolia-insights",
            "direct": false,
            "version": "1.17.7",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/autocomplete-preset-algolia",
            "direct": false,
            "version": "1.17.7",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/autocomplete-shared",
            "direct": false,
            "version": "1.17.7",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-abtesting",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-analytics",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-common",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-insights",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-personalization",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-query-suggestions",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/client-search",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/ingestion",
            "direct": false,
            "version": "1.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/monitoring",
            "direct": false,
            "version": "1.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/recommend",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/requester-browser-xhr",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/requester-fetch",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@algolia/requester-node-http",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "@axe-core/playwright",
            "direct": false,
            "version": "4.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@docsearch/css",
            "direct": false,
            "version": "3.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@docsearch/js",
            "direct": false,
            "version": "3.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@docsearch/react",
            "direct": false,
            "version": "3.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify-json/simple-icons",
            "direct": false,
            "version": "1.2.83",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/types",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/core",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/core",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-javascript",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-javascript",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/engine-oniguruma",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/langs",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/langs",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/primitive",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/themes",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/themes",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/transformers",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/types",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@shikijs/vscode-textmate",
            "direct": false,
            "version": "10.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/linkify-it",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/markdown-it",
            "direct": false,
            "version": "14.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/web-bluetooth",
            "direct": false,
            "version": "0.0.21",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-vue",
            "direct": false,
            "version": "5.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/compiler-core",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/compiler-dom",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/compiler-sfc",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/compiler-ssr",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/devtools-api",
            "direct": false,
            "version": "7.7.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/devtools-kit",
            "direct": false,
            "version": "7.7.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/devtools-shared",
            "direct": false,
            "version": "7.7.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/reactivity",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/runtime-core",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/runtime-dom",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/server-renderer",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vue/shared",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "@vueuse/core",
            "direct": false,
            "version": "12.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vueuse/integrations",
            "direct": false,
            "version": "12.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vueuse/metadata",
            "direct": false,
            "version": "12.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vueuse/shared",
            "direct": false,
            "version": "12.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "algoliasearch",
            "direct": false,
            "version": "5.52.1",
            "ecosystem": "npm"
          },
          {
            "name": "axe-core",
            "direct": false,
            "version": "4.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "birpc",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "copy-anything",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex-xs",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "focus-trap",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hookable",
            "direct": false,
            "version": "5.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-what",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "mark.js",
            "direct": false,
            "version": "8.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "minisearch",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mitt",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-parser",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-to-es",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "oniguruma-to-es",
            "direct": false,
            "version": "4.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "perfect-debounce",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "preact",
            "direct": false,
            "version": "10.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "regex-recursion",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "regex-utilities",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfdc",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "search-insights",
            "direct": false,
            "version": "2.17.3",
            "ecosystem": "npm"
          },
          {
            "name": "shiki",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "shiki",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "speakingurl",
            "direct": false,
            "version": "14.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "superjson",
            "direct": false,
            "version": "2.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "tabbable",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "5.4.21",
            "ecosystem": "npm"
          },
          {
            "name": "vitepress",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "vue",
            "direct": false,
            "version": "3.5.34",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 482,
        "direct_count": 34,
        "indirect_count": 448
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 134,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 6,
        "closed_unmerged_prs": 4
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "jcputney",
          "commits": 1401,
          "avatar_url": "https://avatars.githubusercontent.com/u/42720634?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml",
        "codeql.yml",
        "dependabot-auto-merge.yml",
        "dependency-review.yml",
        "docs.yml",
        "mutation.yml",
        "owasp-depcheck.yml",
        "qodana.yml",
        "release.yml",
        "snapshot.yml"
      ],
      "has_docs_dir": false,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "11 out of 11 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/11 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 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": 0,
            "reason": "project was created within the last 90 days. Please review its contents carefully",
            "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": 1,
            "reason": "dependency not pinned by hash detected -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 10,
            "reason": "SAST tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 5,
            "reason": "5 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "f3ea377adb4bc829c4126d10976d9cd707ca0b9a",
        "ran_at": "2026-07-25T23:06:22Z",
        "aggregate_score": 5,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": true,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-24T17:04:47Z",
      "oldest_open_prs": [
        {
          "number": 139,
          "created_at": "2026-07-14T17:06:01Z",
          "last_comment_at": "2026-07-14T17:10:32Z",
          "last_comment_author": "github-actions"
        }
      ],
      "last_merged_pr_at": "2026-07-23T19:59:24Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/ratchet-run/ratchet",
    "host": "github.com",
    "name": "ratchet",
    "owner": "ratchet-run"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 63,
      "inputs": {
        "security": 60,
        "vitality": 76,
        "community": 54,
        "governance": 52,
        "engineering": 71
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 76,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 67,
            "inputs": {
              "commits_last_year": 1418,
              "human_commit_share": 1,
              "days_since_last_push": 2,
              "active_weeks_last_year": 19
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 2 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 2
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "19/52 weeks with commits",
                "points": 13.2,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 19
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "1418 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 1418
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "releases_count": 3,
              "latest_release_tag": "v0.2.1",
              "releases_from_tags": false,
              "days_since_latest_release": 4,
              "mean_days_between_releases": 18.6
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "3 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 4 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~18.6 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 18.6
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "moderate",
        "name": "Community & Adoption",
        "value": 54,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 21,
            "inputs": {
              "forks": 0,
              "stars": 22,
              "watchers": 0,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "22 stars",
                "points": 21.4,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 22
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "0 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": true,
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 52,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 13,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 1,
              "top_contributor_share": 1
            },
            "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 100% of commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "1 contributors",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "merged_prs": 134,
              "open_issues": 0,
              "closed_issues": 6,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 4
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "134/138 decided PRs merged",
                "points": 37.1,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 134,
                      "decided": 138
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/11 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 35,
            "inputs": {
              "followers": 1,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "ratchet-run",
              "public_repos": 1,
              "account_age_days": 80
            },
            "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": "1 followers of ratchet-run",
                "points": 2.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1,
                      "login": "ratchet-run"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "1 public repos, account ~0 yr old",
                "points": 2.6,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 1
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "packages": [
                "run.ratchet:ratchet",
                "run.ratchet:ratchet-api",
                "run.ratchet:ratchet-encryption"
              ],
              "ecosystems": "maven",
              "any_deprecated": false,
              "min_days_since_publish": 4
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "3 package(s) on maven",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 3,
                      "ecosystems": "maven"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 4 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "3 published versions",
                "points": 12,
                "status": "partial",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 71,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "moderate",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 68,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": false,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "10 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 10
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "11 out of 11 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "topics": [
                "background-jobs",
                "cdi",
                "circuit-breaker",
                "cron",
                "dead-letter-queue",
                "jakarta-ee",
                "java",
                "jbatch",
                "job-scheduler",
                "jpa",
                "mongodb",
                "mysql",
                "postgresql",
                "recurring-jobs",
                "retry",
                "scheduler",
                "task-scheduler",
                "workflow",
                "workflow-engine",
                "quartz-alternative"
              ],
              "has_wiki": true,
              "homepage": "https://ratchet.run/",
              "has_readme": true,
              "has_docs_dir": false,
              "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": 0,
                "status": "missed",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://ratchet.run/",
                "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": "20 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 60,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "moderate",
            "name": "Security posture",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 18,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 0,
              "scorecard_aggregate": 5
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "11 out of 11 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/11 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "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": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "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 1",
                "points": 0.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "5 existing vulnerabilities detected",
                "points": 3.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the maven:run.ratchet:ratchet@0.2.1 runtime dependency closure — what installing the published package pulls in — 21 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "maven:run.ratchet:ratchet@0.2.1",
                  "assessed": 21
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 21,
              "unassessed_packages": 0,
              "affected_by_severity": "none",
              "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": "no indirect dependency carries a known advisory",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "no_indirect_advisories",
                    "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": 21,
              "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": 1
            },
            "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.8,
              "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": "80 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 80,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 62,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "package-lock.json"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "coordinators/ratchet-coordinator-common/pom.xml",
                "coordinators/ratchet-coordinator-hazelcast/pom.xml",
                "coordinators/ratchet-coordinator-infinispan/pom.xml",
                "coordinators/ratchet-coordinator-jms/pom.xml",
                "coordinators/ratchet-coordinator-postgresql/pom.xml",
                "observability/ratchet-micrometer/pom.xml",
                "observability/ratchet-otel/pom.xml",
                "pom.xml",
                "ratchet-api/pom.xml",
                "ratchet-bom/pom.xml",
                "ratchet-encryption/pom.xml",
                "ratchet/pom.xml",
                "stores/ratchet-store-core/pom.xml",
                "stores/ratchet-store-mongodb/pom.xml",
                "stores/ratchet-store-mysql/pom.xml",
                "stores/ratchet-store-oracle/pom.xml",
                "stores/ratchet-store-postgresql/pom.xml",
                "stores/ratchet-store-sqlserver/pom.xml",
                "testing/ratchet-arch-tests/pom.xml",
                "testing/ratchet-coverage/pom.xml",
                "testing/ratchet-loadtest/pom.xml",
                "testing/ratchet-showcase/pom.xml",
                "testing/ratchet-tck/api/pom.xml",
                "testing/ratchet-tck/coordinator/pom.xml",
                "testing/ratchet-tck/jakarta/pom.xml",
                "testing/ratchet-tck/pom.xml",
                "testing/ratchet-tck/store/pom.xml",
                "testing/ratchet-tck/util/pom.xml",
                "testing/ratchet-testsuite-jpms/pom.xml",
                "testing/ratchet-testsuite/pom.xml",
                "testing/ratchet-version-compatibility/pom.xml"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "coordinators/ratchet-coordinator-common/pom.xml, coordinators/ratchet-coordinator-hazelcast/pom.xml, coordinators/ratchet-coordinator-infinispan/pom.xml (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "coordinators/ratchet-coordinator-common/pom.xml, coordinators/ratchet-coordinator-hazelcast/pom.xml, coordinators/ratchet-coordinator-infinispan/pom.xml"
                    }
                  }
                ],
                "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": "Java (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Java"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "dependency automation configured, none observed in the sampled commits",
                "points": 5,
                "status": "partial",
                "details": [
                  {
                    "code": "dependency_bot_config_only",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 1",
                "points": 1,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "Java",
              "largest_source_bytes": 63304,
              "source_files_sampled": 1385,
              "oversized_source_files": 2
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Java (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Java"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "2/1385 source files over 60KB",
                "points": 54.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1385,
                      "oversized": 2
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "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": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? 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"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-25T23:06:38.280079Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/ratchet-run/ratchet.svg",
  "full_name": "ratchet-run/ratchet",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

评分是信号,而非担保。 评分反映的是 GitHub 上公开可见的实践——不是代码审计,也不是安全保证。

缺失数据将被剔除并重新归一化权重,绝不按零分计。方法论已版本化并公开:指标 v1.13.0、模式 v0.27.0—— 完整方法论 · 指标知识库.

单项结果在整体记录中的位置: 汇总统计Maven.