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

LTplus-AG / ifc-lite

Parse, view, query, edit, and export IFC, IDS, BCF, pointclouds and more AEC stuff. In the browser, server or desktop.

TypeScript · Rust · C#MPL-2.0★ 282 星标⑂ 84 复刻始于 2026年1月在 GitHub 上查看 ↗

LTplus-AG/ifc-lite 的健康指数为 100 分中的 36 分,处于「存在风险」区间。 其得分最高的类别是Vitality(90/100),最低的是Security(50/100)。 最近一次更新在今天。 近期的大部分工作由 1 位贡献者完成。

36
总分 / 100
存在风险

软件健康指数

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

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

评分画像

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

高风险司法辖区政策对加权总体健康应用 50% 的乘数,并对其设置“存在风险”上限 49。

所有权

LTplus AG组织
16 关注者7 个公开仓库始于 2024年4月

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

软件包生态系统

按类别列示的指标

活力

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

90优秀 · 占总体的 22%
评分方式
36/36推送新近度 — 最近一次推送于 0 天前
19.4/36提交节奏 — 52 周中有 28 周有提交
18/18提交量 — 最近一年 1,352 次提交
10/10OpenSSF Scorecard:Maintained — 30 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10
所用输入
commits_last_year1,352
human_commit_share0.9
days_since_last_push0
active_weeks_last_year28

发布纪律

100优秀
评分方式
27/27有发布版本 — 已发布 100 个发布版本
36/36发布时效 — 最近一次发布版本于 0 天前
27/27发布节奏 — 约每 0.4 天发布一次
0/10OpenSSF Scorecard:Signed-Releases — 无数据
所用输入
releases_count100
latest_release_tag@ifc-lite/geometry@3.4.0
releases_from_tags
days_since_latest_release0
mean_days_between_releases0.4
已排除计分(无数据或不适用):OpenSSF Scorecard:Signed-Releases。 其余权重已重新归一化。

社区与采用

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

73良好 · 占总体的 18%
评分方式
39.7/60星标 — 282 个星标
16/25复刻 — 84 个复刻
2.7/15关注者 — 4 位关注者
所用输入
forks84
stars282
watchers4
growth_stateorganic
growth_factor_pct100

社区健康

92优秀
评分方式
22.5/22.5README
22.5/22.5许可证 — 可识别的许可证(MPL-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
评分方式
56.7/80月度下载量 — npm 合计每月 17,745 次下载
0/20注册表被依赖数 — 该生态系统不报告此项
所用输入
packages@ifc-lite/bcf, @ifc-lite/cli, @ifc-lite/data, @ifc-lite/diff, @ifc-lite/cache, @ifc-lite/clash, @ifc-lite/collab
dependents
ecosystemsnpm
total_downloads
monthly_downloads17,745
已排除计分(无数据或不适用):注册表被依赖数。 其余权重已重新归一化。

可持续性与治理

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

62中等 · 占总体的 24%
评分方式
9/54巴士系数 — 1 位贡献者贡献了半数提交
1.1/22.5提交分布 — 头号贡献者编写了 95% 的提交
13.5/13.5贡献者广度 — 16 位贡献者
6/10OpenSSF Scorecard:Contributors — project has 2 contributing companies or organizations -- score normalized to 6
所用输入
bus_factor1
contributors_sampled16
top_contributor_share0.953
评分方式
45.8/46.8议题解决 — 98% 的议题已关闭
33.6/38.3PR 接受 — 已裁定的 PR 中 1,316/1,498 已合并
1.5/15OpenSSF Scorecard:Code-Review — Found 4/23 approved changesets -- score normalized to 1
所用输入
merged_prs1,316
open_issues7
closed_issues320
issue_closed_ratio0.979
closed_unmerged_prs182
评分方式
30/30所有权背书 — 组织持有
0/20已验证域名
8.8/25所有者影响力 — LTplus-AG 有 16 位关注者
11.1/25既往记录 — 7 个公开仓库,账户约 2 年
所用输入
followers16
owner_typeOrganization
is_verified
owner_loginLTplus-AG
public_repos7
account_age_days829
评分方式
25/25已发布且可解析 — npm 上有 7 个软件包
35/35发布时效 — 最近一次发布于 4 天前
20/20版本历史 — 51 个已发布版本
20/20未被弃用 — 活跃,未被弃用或撤回
所用输入
packages@ifc-lite/bcf, @ifc-lite/cli, @ifc-lite/data, @ifc-lite/diff, @ifc-lite/cache, @ifc-lite/clash, @ifc-lite/collab
ecosystemsnpm
any_deprecated
min_days_since_publish4

工程质量

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

77良好 · 占总体的 20%

工程实践

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

文档

90优秀
评分方式
30/30README
25/25文档目录
15/15文档 / 主页站点 — https://ifclite.dev
10/10仓库描述
10/10主题标签 — 13 个主题标签
0/10Wiki
所用输入
topics3d-viewer, columnar, ifc, rust, webgpu, cli, ifc-parser, script-editor, bcf, ids, mcp, pointcloud, sdk
has_wiki
homepagehttps://ifclite.dev
has_readme
has_docs_dir
has_description

安全

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

50中等 · 占总体的 16%

安全态势

37存在风险
评分方式
7.5/7.5Binary-Artifacts — no binaries found in the repo
3/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0.8/7.5Code-Review — Found 4/23 approved changesets -- score normalized to 1
1.5/2.5Contributors — project has 2 contributing companies or organizations -- score normalized to 6
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
5/5Fuzzing — project is fuzzed
2.5/2.5许可证 — license file detected
7.5/7.5Maintained — 30 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
3.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 7
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
4.5/5Security-Policy — security policy file detected
0/7.5Signed-Releases — 无数据
7.5/7.5Token-Permissions — GitHub workflow tokens follow principle of least privilege
3.8/7.5Vulnerabilities — 5 existing vulnerabilities detected
所用输入
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate7.4
high_risk_jurisdiction_cap49
high_risk_jurisdiction_multiplier50
security_posture_after_multiplier37
security_posture_before_jurisdiction74
已排除计分(无数据或不适用):signed_releases。 其余权重已重新归一化。 高风险司法辖区政策应用 50% 的乘数,并对安全态势设置“存在风险”上限 49。
评分方式
35/35直接依赖不含已知公告 — 没有直接依赖携带已知公告
0/25间接依赖不含已知公告 — 在此范围内,传递依赖集合无法与开发和测试依赖区分
0/40没有长期未处理的公告 — 没有公告带有发布日期
所用输入
sourceosv
advisories5
affected_packages5
assessed_packages1,306
unassessed_packages156
affected_by_severitylow 1, unknown 4
direct_affected_packages0
已排除计分(无数据或不适用):间接依赖不含已知公告, 没有长期未处理的公告。 其余权重已重新归一化。 已将 1306 个已解析依赖与 OSV 比对。 有 156 项无法评估——没有已解析的版本、生态系统不受支持,或超出所报告的软件包清单。 该仓库未发布任何索引可解析的软件包,因此改为评估仓库依赖图。该图将开发与测试版本固定同交付的依赖混在一起,因此仅对声明的运行时依赖计分;传递性发现仅作为背景信息列出,不计入评分。 未对可达性进行分析。

AI 就绪度

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

79良好 · 占总体的 0%
评分方式
45/45代理指令 — .cursorrules, AGENTS.md, CLAUDE.md, apps/viewer/AGENTS.md, packages/collab-server/AGENTS.md, packages/collab/AGENTS.md, packages/geometry/AGENTS.md, rust/AGENTS.md
0/15机器可读文档(llms.txt)
40/40可读的提交历史 — 90 次人类提交中有 90 次说明了意图(结构化标题或解释性正文)
所用输入
has_llms_txt
legible_history_share1
agent_instruction_files.cursorrules, AGENTS.md, CLAUDE.md, apps/viewer/AGENTS.md, packages/collab-server/AGENTS.md, packages/collab/AGENTS.md, packages/geometry/AGENTS.md, rust/AGENTS.md
agent_instruction_max_bytes19,343
评分方式
12.6/18一条命令的引导启动 — Cargo.toml, apps/server/Cargo.toml, rust/clash/Cargo.toml(工具链约定,无任务运行器)
22/22自动化测试
0/11Lint / 格式化配置
11/11静态类型检查 — apps/viewer-embed/tsconfig.json, apps/viewer/src/lib/scripts/templates/tsconfig.json, apps/viewer/tsconfig.json, examples/babylonjs-viewer/tsconfig.json, examples/collab-demo/tsconfig.json, examples/threejs-collab/tsconfig.json, examples/threejs-viewer/tsconfig.json, packages/bcf/tsconfig.json, packages/cache/tsconfig.json, packages/clash/tsconfig.json, packages/cli/tsconfig.json, packages/codegen/tsconfig.json, packages/collab-server/tsconfig.json, packages/collab/tsconfig.json, packages/create-ifc-lite/tsconfig.json, packages/create/tsconfig.json, packages/data/tsconfig.json, packages/diff/tsconfig.json, packages/drawing-2d/tsconfig.json, packages/embed-protocol/tsconfig.json, packages/embed-sdk/tsconfig.json, packages/encoding/tsconfig.json, packages/export/tsconfig.json, packages/extensions/tsconfig.json, packages/geometry/tsconfig.json, packages/ids/tsconfig.json, packages/ifcx/tsconfig.json, packages/lens/tsconfig.json, packages/lists/tsconfig.json, packages/mcp/tsconfig.json, packages/merge/tsconfig.json, packages/mutations/tsconfig.json, packages/parser/tsconfig.json, packages/pointcloud/tsconfig.json, packages/query/tsconfig.json, packages/renderer/tsconfig.json, packages/sandbox/tsconfig.json, packages/sdk/tsconfig.json, packages/server-bin/tsconfig.json, packages/server-client/tsconfig.json, packages/solar/tsconfig.json, packages/spatial/tsconfig.json, packages/viewer/tsconfig.json, tests/tsconfig.json, tools/demo-kit/tsconfig.json, tsconfig.json
10/10可复现环境 — Dockerfile, lockfile
4/10已体现的代理实践 — 最近 100 次提交中有 2 次由代理编写或署名代理
8/8自动化维护 — 最近 100 次提交中有 10 次为自动依赖更新
7/10OpenSSF Scorecard:Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 7
所用输入
has_nix
has_tests
lockfilesCargo.lock, pnpm-lock.yaml
has_dockerfile
typed_language
bootstrap_files
has_devcontainer
has_linter_config
typecheck_configsapps/viewer-embed/tsconfig.json, apps/viewer/src/lib/scripts/templates/tsconfig.json, apps/viewer/tsconfig.json, examples/babylonjs-viewer/tsconfig.json, examples/collab-demo/tsconfig.json, examples/threejs-collab/tsconfig.json, examples/threejs-viewer/tsconfig.json, packages/bcf/tsconfig.json, packages/cache/tsconfig.json, packages/clash/tsconfig.json, packages/cli/tsconfig.json, packages/codegen/tsconfig.json, packages/collab-server/tsconfig.json, packages/collab/tsconfig.json, packages/create-ifc-lite/tsconfig.json, packages/create/tsconfig.json, packages/data/tsconfig.json, packages/diff/tsconfig.json, packages/drawing-2d/tsconfig.json, packages/embed-protocol/tsconfig.json, packages/embed-sdk/tsconfig.json, packages/encoding/tsconfig.json, packages/export/tsconfig.json, packages/extensions/tsconfig.json, packages/geometry/tsconfig.json, packages/ids/tsconfig.json, packages/ifcx/tsconfig.json, packages/lens/tsconfig.json, packages/lists/tsconfig.json, packages/mcp/tsconfig.json, packages/merge/tsconfig.json, packages/mutations/tsconfig.json, packages/parser/tsconfig.json, packages/pointcloud/tsconfig.json, packages/query/tsconfig.json, packages/renderer/tsconfig.json, packages/sandbox/tsconfig.json, packages/sdk/tsconfig.json, packages/server-bin/tsconfig.json, packages/server-client/tsconfig.json, packages/solar/tsconfig.json, packages/spatial/tsconfig.json, packages/viewer/tsconfig.json, tests/tsconfig.json, tools/demo-kit/tsconfig.json, tsconfig.json
agent_commit_share0.02
toolchain_manifestsCargo.toml, apps/server/Cargo.toml, rust/clash/Cargo.toml, rust/core/Cargo.toml, rust/core/fuzz/Cargo.toml, rust/csg-thread-bench/Cargo.toml, rust/export/Cargo.toml, rust/ffi/Cargo.toml, rust/geometry/Cargo.toml, rust/geometry/fuzz/Cargo.toml, rust/processing/Cargo.toml, rust/python/Cargo.toml, rust/wasm-bindings/Cargo.toml
dependency_bot_commit_share0.1
评分方式
45/45可类型检查的代码 — TypeScript(静态类型)
54.3/55可控的文件大小 — 采样的 2,574 个源文件中有 33 个超过 60KB
所用输入
primary_languageTypeScript
largest_source_bytes1,948,298
source_files_sampled2,574
oversized_source_files33
评分方式
0/40API 模式(OpenAPI/GraphQL/proto)
20/20MCP 服务器
40/40可运行示例 — examples, samples
所用输入
example_dirsexamples, samples
has_mcp_signal
api_schema_files

关键数据

282GitHub 星标
16贡献者
1,352最近 12 个月提交数
0距最近推送天数
100发布版本数
1巴士系数(bus factor)
7开放议题
crates.io, npm, PyPI软件包生态系统数

数据采集警告

  • Could not fetch crates package 'ifc-lite-server' from its registry
  • deps.dev does not index npm:@ifc-lite/bcf@1.16.3; advisories assessed against the repository dependency graph instead

更多细节

Star 与 Fork 历史 282 ★ / 84 ⇿
282Star
84Fork
97发布

每颗 star 和每个 fork 的添加时间,来自 GitHub 并按天汇总。累计增长位于其构成来源——每日新增——的正上方,二者可相互对照:稳定的自然增长与短暂的突增形态截然不同。当这一差别可被衡量时,它会作为增长真实性予以报告。

05010015020025030028280112026-012026-042026-07
主版本 0次版本 0修订 3
OpenSSF Scorecard 7.4 / 10
7.4综合

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

10Binary-Artifactsno binaries found in the repo
4Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
1Code-ReviewFound 4/23 approved changesets -- score normalized to 1
6Contributorsproject has 2 contributing companies or organizations -- score normalized to 6
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
10Fuzzingproject is fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
7Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 7
0SASTSAST tool is not run on all commits -- score normalized to 0
9Security-Policysecurity policy file detected
不适用Signed-Releasesno releases found
10Token-PermissionsGitHub workflow tokens follow principle of least privilege
5Vulnerabilities5 existing vulnerabilities detected
直接依赖 204
注册表软件包版本约束清单文件
npm@neondatabase/serverless^1.1.0package.json
crates.iomimalloc0.1apps/server/Cargo.toml
crates.ioaxum0.8apps/server/Cargo.toml
crates.iotower0.5apps/server/Cargo.toml
crates.iotower-http0.7apps/server/Cargo.toml
crates.iotokio1apps/server/Cargo.toml
crates.ioifc-lite-coreapps/server/Cargo.toml
crates.ioifc-lite-geometryapps/server/Cargo.toml
crates.ioifc-lite-processingapps/server/Cargo.toml
crates.iorayon1.10apps/server/Cargo.toml
crates.ioserde1.0apps/server/Cargo.toml
crates.ioserde_json1.0apps/server/Cargo.toml
crates.iotokio-stream0.1apps/server/Cargo.toml
crates.iofutures0.3apps/server/Cargo.toml
crates.ioasync-stream0.3apps/server/Cargo.toml
crates.iocacache13apps/server/Cargo.toml
crates.iosha20.11apps/server/Cargo.toml
crates.iohex0.4apps/server/Cargo.toml
crates.iotracing0.1apps/server/Cargo.toml
crates.iotracing-subscriber0.3apps/server/Cargo.toml
crates.iothiserror2.0apps/server/Cargo.toml
crates.ioanyhow1.0apps/server/Cargo.toml
crates.iorustc-hash2.1apps/server/Cargo.toml
crates.ionum_cpus1.16apps/server/Cargo.toml
crates.ioarrow59apps/server/Cargo.toml
crates.ioparquet59apps/server/Cargo.toml
crates.iobytes1.5apps/server/Cargo.toml
crates.ioflate21.0apps/server/Cargo.toml
crates.iozip8apps/server/Cargo.toml
crates.iobase640.22apps/server/Cargo.toml
npm@ifc-lite/bcfworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/cacheworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/clashworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/collabworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/createworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/dataworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/diffworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/drawing-2dworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/embed-protocolworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/encodingworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/exportworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/extensionsworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/geometryworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/idsworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/ifcxworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/lensworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/listsworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/mcpworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/mergeworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/mutationsworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/parserworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/pointcloudworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/queryworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/rendererworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/sandboxworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/sdkworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/server-clientworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/solarworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/spatialworkspace:^apps/viewer-embed/package.json
npm@ifc-lite/wasmworkspace:^apps/viewer-embed/package.json
npmreact^19.2.7apps/viewer-embed/package.json
npmreact-dom^19.2.7apps/viewer-embed/package.json
npmzustand^5.0.14apps/viewer-embed/package.json
npm@anthropic-ai/sdk^0.112.4apps/viewer/package.json
npm@codemirror/autocomplete^6.20.3apps/viewer/package.json
npm@codemirror/commands^6.10.4apps/viewer/package.json
npm@codemirror/lang-javascript^6.2.5apps/viewer/package.json
npm@codemirror/language^6.12.4apps/viewer/package.json
npm@codemirror/search^6.7.1apps/viewer/package.json
npm@codemirror/state^6.7.1apps/viewer/package.json
npm@codemirror/view^6.43.6apps/viewer/package.json
npm@floating-ui/dom^1.8.0apps/viewer/package.json
npm@ifc-lite/bcfworkspace:^apps/viewer/package.json
npm@ifc-lite/cacheworkspace:^apps/viewer/package.json
npm@ifc-lite/collabworkspace:^apps/viewer/package.json
npm@ifc-lite/clashworkspace:^apps/viewer/package.json
npm@ifc-lite/createworkspace:^apps/viewer/package.json
npm@ifc-lite/dataworkspace:^apps/viewer/package.json
npm@ifc-lite/diffworkspace:^apps/viewer/package.json
npm@ifc-lite/ifcxworkspace:^apps/viewer/package.json
npm@ifc-lite/mergeworkspace:^apps/viewer/package.json
npm@ifc-lite/drawing-2dworkspace:^apps/viewer/package.json
npm@ifc-lite/encodingworkspace:^apps/viewer/package.json
npm@ifc-lite/exportworkspace:^apps/viewer/package.json
npm@ifc-lite/extensionsworkspace:^apps/viewer/package.json
npm@ifc-lite/geometryworkspace:^apps/viewer/package.json
npm@ifc-lite/idsworkspace:^apps/viewer/package.json
npm@ifc-lite/lensworkspace:^apps/viewer/package.json
npm@ifc-lite/listsworkspace:^apps/viewer/package.json
npm@ifc-lite/mcpworkspace:^apps/viewer/package.json
npm@ifc-lite/mutationsworkspace:^apps/viewer/package.json
npm@ifc-lite/parserworkspace:^apps/viewer/package.json
npm@ifc-lite/pointcloudworkspace:^apps/viewer/package.json
npm@ifc-lite/queryworkspace:^apps/viewer/package.json
npm@ifc-lite/rendererworkspace:^apps/viewer/package.json
npm@ifc-lite/sandboxworkspace:^apps/viewer/package.json
npm@ifc-lite/sdkworkspace:^apps/viewer/package.json
npm@ifc-lite/server-clientworkspace:^apps/viewer/package.json
npm@ifc-lite/solarworkspace:^apps/viewer/package.json
npm@ifc-lite/spatialworkspace:^apps/viewer/package.json
npm@ifc-lite/wasmworkspace:^apps/viewer/package.json
npm@radix-ui/react-collapsible^1.1.17apps/viewer/package.json
npm@radix-ui/react-dialog^1.1.20apps/viewer/package.json
npm@radix-ui/react-dropdown-menu^2.1.21apps/viewer/package.json
npm@radix-ui/react-label^2.1.12apps/viewer/package.json
npm@radix-ui/react-progress^1.1.13apps/viewer/package.json
npm@radix-ui/react-scroll-area^1.2.15apps/viewer/package.json
npm@radix-ui/react-select^2.3.4apps/viewer/package.json
npm@radix-ui/react-separator^1.1.12apps/viewer/package.json
npm@radix-ui/react-slot^1.3.0apps/viewer/package.json
npm@radix-ui/react-switch^1.3.4apps/viewer/package.json
npm@radix-ui/react-tabs^1.1.18apps/viewer/package.json
npm@radix-ui/react-tooltip^1.2.13apps/viewer/package.json
npm@tanstack/react-virtual^3.14.7apps/viewer/package.json
npm@vercel/analytics^2.0.1apps/viewer/package.json
npmapache-arrow^21.2.0apps/viewer/package.json
npmautoprefixer^10.5.4apps/viewer/package.json
npmbeautiful-theme-toggle^1.0.1apps/viewer/package.json
npmcesium^1.143.0apps/viewer/package.json
npmclass-variance-authority^0.7.1apps/viewer/package.json
npmclsx^2.1.1apps/viewer/package.json
npmexceljs^4.4.0apps/viewer/package.json
npmfflate^0.8.3apps/viewer/package.json
npmgeotiff^3.0.5apps/viewer/package.json
npmjspdf^4.2.1apps/viewer/package.json
npmjspdf-autotable^5.0.8apps/viewer/package.json
npmlucide-react^1.25.0apps/viewer/package.json
npmmaplibre-gl^5.24.0apps/viewer/package.json
npmparquet-wasm^0.7.2apps/viewer/package.json
npmpostcss^8.5.21apps/viewer/package.json
npmposthog-js^1.405.3apps/viewer/package.json
npmproj4^2.20.9apps/viewer/package.json
npmreact^19.2.7apps/viewer/package.json
npmreact-dom^19.2.7apps/viewer/package.json
npmreact-markdown^10.1.0apps/viewer/package.json
npmreact-resizable-panels^4.12.2apps/viewer/package.json
npmremark-gfm^4.0.0apps/viewer/package.json
npmtailwind-merge^3.6.0apps/viewer/package.json
npmtailwindcss^4.3.3apps/viewer/package.json
npmthree^0.185.1apps/viewer/package.json
npmzustand^5.0.14apps/viewer/package.json
npm@ifc-lite/encodingworkspace:^packages/bcf/package.json
npmjszip^3.10.0packages/bcf/package.json
npm@ifc-lite/dataworkspace:^packages/cache/package.json
npm@ifc-lite/geometryworkspace:^packages/cache/package.json
npm@ifc-lite/spatialworkspace:^packages/clash/package.json
npm@ifc-lite/geometryworkspace:^packages/clash/package.json
npm@ifc-lite/parserworkspace:^packages/clash/package.json
npm@ifc-lite/queryworkspace:^packages/clash/package.json
npm@ifc-lite/bcfworkspace:^packages/clash/package.json
npm@ifc-lite/ifcxworkspace:^packages/clash/package.json
npm@ifc-lite/wasmworkspace:^packages/clash/package.json
npm@ifc-lite/bcfworkspace:^packages/cli/package.json
npm@ifc-lite/clashworkspace:^packages/cli/package.json
npm@ifc-lite/createworkspace:^packages/cli/package.json
npm@ifc-lite/dataworkspace:^packages/cli/package.json
npm@ifc-lite/exportworkspace:^packages/cli/package.json
npm@ifc-lite/extensionsworkspace:^packages/cli/package.json
npm@ifc-lite/geometryworkspace:^packages/cli/package.json
npm@ifc-lite/idsworkspace:^packages/cli/package.json
npm@ifc-lite/ifcxworkspace:^packages/cli/package.json
npm@ifc-lite/mergeworkspace:^packages/cli/package.json
npm@ifc-lite/mcpworkspace:^packages/cli/package.json
npm@ifc-lite/mutationsworkspace:^packages/cli/package.json
npm@ifc-lite/parserworkspace:^packages/cli/package.json
npm@ifc-lite/queryworkspace:^packages/cli/package.json
npm@ifc-lite/sandboxworkspace:^packages/cli/package.json
npm@ifc-lite/sdkworkspace:^packages/cli/package.json
npm@ifc-lite/viewer-coreworkspace:^packages/cli/package.json
npm@ifc-lite/wasmworkspace:^packages/cli/package.json
npm@ifc-lite/dataworkspace:^packages/codegen/package.json
npmcommander^15.0.0packages/codegen/package.json
npm@ifc-lite/collabworkspace:^packages/collab-server/package.json
npm@ifc-lite/ifcxworkspace:^packages/collab-server/package.json
npm@ifc-lite/mergeworkspace:^packages/collab-server/package.json
npmlib0^0.2.99packages/collab-server/package.json
npmws^8.21.1packages/collab-server/package.json
npmy-protocols^1.0.6packages/collab-server/package.json
npmyjs^13.6.31packages/collab-server/package.json
npm@automerge/automerge^3.3.2packages/collab/package.json
npm@ifc-lite/dataworkspace:^packages/collab/package.json
npm@ifc-lite/ifcxworkspace:^packages/collab/package.json
npm@ifc-lite/mutationsworkspace:^packages/collab/package.json
npmlib0^0.2.99packages/collab/package.json
npmy-indexeddb^9.0.12packages/collab/package.json
npmy-protocols^1.0.6packages/collab/package.json
npmy-websocket^3.0.0packages/collab/package.json
npmyjs^13.6.31packages/collab/package.json
npm@ifc-lite/encodingworkspace:^packages/create/package.json
npm@ifc-lite/mutationsworkspace:^packages/create/package.json
npm@ifc-lite/parserworkspace:^packages/create/package.json
npm@ifc-lite/geometryworkspace:^packages/drawing-2d/package.json
npm@ifc-lite/embed-protocolworkspace:^packages/embed-sdk/package.json
npm@ifc-lite/geometryworkspace:^packages/export/package.json
npm@ifc-lite/dataworkspace:^packages/export/package.json
npm@ifc-lite/encodingworkspace:^packages/export/package.json
npm@ifc-lite/parserworkspace:^packages/export/package.json
npm@ifc-lite/mutationsworkspace:^packages/export/package.json
npmparquet-wasm^0.7.2packages/export/package.json
npmapache-arrow^21.2.0packages/export/package.json
npmjszip^3.10.0packages/export/package.json
npmacorn^8.17.0packages/extensions/package.json
npmacorn-walk^8.3.0packages/extensions/package.json
npmfflate^0.8.2packages/extensions/package.json
全部依赖 1,462

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

注册表软件包版本关系
crates.ioanyhow直接
crates.ioanyhow1.0.104直接
crates.ioarrow直接
crates.ioarrow59.1.0直接
crates.ioasync-stream直接
crates.ioasync-stream0.3.6直接
crates.ioaxum直接
crates.ioaxum0.8.9直接
crates.iobase64直接
crates.iobase640.21.7直接
crates.iobase640.22.1直接
crates.iobytes直接
crates.iobytes1.12.1直接
crates.iocacache直接
crates.iocacache13.1.0直接
crates.ioflate2直接
crates.ioflate21.1.9直接
crates.iofutures直接
crates.iofutures0.3.33直接
crates.iohex直接
crates.iohex0.4.3直接
crates.ioifc-lite-core直接
crates.ioifc-lite-geometry直接
crates.ioifc-lite-processing直接
crates.iomimalloc直接
crates.iomimalloc0.1.52直接
crates.ionum_cpus直接
crates.ionum_cpus1.17.0直接
crates.ioparquet直接
crates.ioparquet59.1.0直接
crates.iorayon直接
crates.iorayon1.12.0直接
crates.iorustc-hash直接
crates.iorustc-hash2.1.2直接
crates.iorustc-hash2.1.3直接
crates.ioserde直接
crates.ioserde1.0.228直接
crates.ioserde1.0.229直接
crates.ioserde_json直接
crates.ioserde_json1.0.150直接
crates.ioserde_json1.0.151直接
crates.iosha2直接
crates.iosha20.10.9直接
crates.iosha20.11.0直接
crates.iothiserror直接
crates.iothiserror1.0.69直接
crates.iothiserror2.0.18直接
crates.iothiserror2.0.19直接
crates.iotokio直接
crates.iotokio1.53.1直接
crates.iotokio-stream直接
crates.iotokio-stream0.1.18直接
crates.iotower直接
crates.iotower0.5.3直接
crates.iotower-http直接
crates.iotower-http0.7.0直接
crates.iotracing直接
crates.iotracing0.1.44直接
crates.iotracing-subscriber直接
crates.iotracing-subscriber0.3.23直接
crates.iozip直接
crates.iozip8.6.0直接
npm@anthropic-ai/sdk0.112.4直接
npm@anthropic-ai/sdk^0.112.4直接
npm@automerge/automerge3.3.2直接
npm@automerge/automerge^3.3.2直接
npm@codemirror/autocomplete6.20.3直接
npm@codemirror/autocomplete^6.20.3直接
npm@codemirror/commands6.10.4直接
npm@codemirror/commands^6.10.4直接
npm@codemirror/lang-javascript6.2.5直接
npm@codemirror/lang-javascript^6.2.5直接
npm@codemirror/language6.12.4直接
npm@codemirror/language^6.12.4直接
npm@codemirror/search6.7.1直接
npm@codemirror/search^6.7.1直接
npm@codemirror/state6.7.1直接
npm@codemirror/state^6.7.1直接
npm@codemirror/view6.43.6直接
npm@codemirror/view^6.43.6直接
npm@floating-ui/dom1.8.0直接
npm@floating-ui/dom^1.8.0直接
npm@ifc-lite/data2.0.0直接
npm@ifc-lite/data^2.0.0直接
npm@ifc-lite/encoding1.14.6直接
npm@ifc-lite/geometry2.1.0直接
npm@ifc-lite/geometry^2.1.0直接
npm@ifc-lite/ifcx2.1.2直接
npm@ifc-lite/mutations1.15.1直接
npm@ifc-lite/parser3.0.0直接
npm@ifc-lite/parser^3.0.0直接
npm@ifc-lite/pointcloud0.3.1直接
npm@ifc-lite/wasm2.1.4直接
npm@neondatabase/serverless1.1.0直接
npm@radix-ui/react-collapsible1.1.17直接
npm@radix-ui/react-collapsible^1.1.17直接
npm@radix-ui/react-dialog1.1.20直接
npm@radix-ui/react-dialog^1.1.20直接
npm@radix-ui/react-dropdown-menu2.1.21直接
npm@radix-ui/react-dropdown-menu^2.1.21直接
npm@radix-ui/react-label2.1.12直接
npm@radix-ui/react-label^2.1.12直接
npm@radix-ui/react-progress1.1.13直接
npm@radix-ui/react-progress^1.1.13直接
npm@radix-ui/react-scroll-area1.2.15直接
npm@radix-ui/react-scroll-area^1.2.15直接
npm@radix-ui/react-select2.3.4直接
npm@radix-ui/react-select^2.3.4直接
npm@radix-ui/react-separator1.1.12直接
npm@radix-ui/react-separator^1.1.12直接
npm@radix-ui/react-slot1.3.0直接
npm@radix-ui/react-slot^1.3.0直接
npm@radix-ui/react-switch1.3.4直接
npm@radix-ui/react-switch^1.3.4直接
npm@radix-ui/react-tabs1.1.18直接
npm@radix-ui/react-tabs^1.1.18直接
npm@radix-ui/react-tooltip1.2.13直接
npm@radix-ui/react-tooltip^1.2.13直接
npm@tanstack/react-virtual3.14.7直接
npm@tanstack/react-virtual^3.14.7直接
npm@vercel/analytics2.0.1直接
npm@vercel/analytics^2.0.1直接
npmacorn8.17.0直接
npmacorn^8.17.0直接
npmacorn-walk8.3.5直接
npmacorn-walk^8.3.0直接
npmapache-arrow14.0.2直接
npmapache-arrow21.2.0直接
npmapache-arrow^21.2.0直接
npmautoprefixer10.5.4直接
npmautoprefixer^10.5.4直接
npmbeautiful-theme-toggle1.0.1直接
npmbeautiful-theme-toggle^1.0.1直接
npmcesium1.143.0直接
npmcesium^1.143.0直接
npmclass-variance-authority0.7.1直接
npmclass-variance-authority^0.7.1直接
npmclsx2.1.1直接
npmclsx^2.1.1直接
npmcommander11.1.0直接
npmcommander15.0.0直接
npmcommander2.20.3直接
npmcommander^15.0.0直接
npmexceljs4.4.0直接
npmexceljs^4.4.0直接
npmfflate0.4.9直接
npmfflate0.8.3直接
npmfflate^0.8.2直接
npmfflate^0.8.3直接
npmgeotiff3.0.5直接
npmgeotiff^3.0.5直接
npmjspdf4.2.1直接
npmjspdf^4.2.1直接
npmjspdf-autotable5.0.8直接
npmjspdf-autotable^5.0.8直接
npmjszip3.10.1直接
npmjszip^3.10.0直接
npmlib00.2.117直接
npmlib0^0.2.99直接
npmlucide-react1.25.0直接
npmlucide-react^1.25.0直接
npmmaplibre-gl5.24.0直接
npmmaplibre-gl^5.24.0直接
npmparquet-wasm0.5.0直接
npmparquet-wasm0.7.2直接
npmparquet-wasm^0.7.2直接
npmpostcss8.5.21直接
npmpostcss^8.5.21直接
npmposthog-js1.405.3直接
npmposthog-js^1.405.3直接
npmproj42.20.9直接
npmproj4^2.20.9直接
npmreact19.2.7直接
npmreact^19.2.7直接
npmreact-dom19.2.7直接
npmreact-dom^19.2.7直接
npmreact-markdown10.1.0直接
npmreact-markdown^10.1.0直接
npmreact-resizable-panels4.12.2直接
npmreact-resizable-panels^4.12.2直接
npmremark-gfm4.0.1直接
npmremark-gfm^4.0.0直接
npmtailwind-merge3.6.0直接
npmtailwind-merge^3.6.0直接
npmtailwindcss4.3.3直接
npmtailwindcss^4.3.3直接
npmthree0.185.1直接
npmthree^0.185.1直接
npmws8.21.1直接
npmws^8.21.1直接
npmy-indexeddb9.0.12直接
npmy-indexeddb^9.0.12直接
npmy-protocols1.0.7直接
npmy-protocols^1.0.6直接
npmy-websocket3.0.0直接
npmy-websocket^3.0.0直接
npmyjs13.6.31直接
npmyjs^13.6.31直接
npmzustand5.0.14直接
npmzustand^5.0.14直接
crates.ioadler22.0.1间接
crates.ioahash0.8.12间接
crates.ioaho-corasick1.1.4间接
crates.ioalloca0.4.0间接
crates.ioandroid_system_properties0.1.5间接
crates.ioanes0.1.6间接
crates.ioanstyle1.0.14间接
crates.ioapprox间接
crates.ioapprox0.5.1间接
crates.ioarbitrary1.4.2间接
crates.ioarrow-arith59.1.0间接
crates.ioarrow-array59.1.0间接
crates.ioarrow-buffer59.1.0间接
crates.ioarrow-cast59.1.0间接
crates.ioarrow-data59.1.0间接
crates.ioarrow-ipc59.1.0间接
crates.ioarrow-ord59.1.0间接
crates.ioarrow-row59.1.0间接
crates.ioarrow-schema59.1.0间接
crates.ioarrow-select59.1.0间接
crates.ioarrow-string59.1.0间接
crates.ioasync-channel1.9.0间接
crates.ioasync-channel2.5.0间接
crates.ioasync-compression0.4.42间接
crates.ioasync-executor1.14.0间接
crates.ioasync-global-executor2.4.1间接
crates.ioasync-io2.6.0间接
crates.ioasync-lock3.4.2间接
crates.ioasync-process2.5.0间接
crates.ioasync-signal0.2.14间接
crates.ioasync-std1.13.2间接
crates.ioasync-stream-impl0.3.6间接
crates.ioasync-task4.7.1间接
crates.ioasync-trait0.1.89间接
crates.ioatoi2.0.0间接
crates.ioatomic-waker1.1.2间接
crates.ioautocfg1.5.0间接
crates.ioautocfg1.5.1间接
crates.ioaxum-core0.5.6间接
crates.iobit-set0.8.0间接
crates.iobit-vec0.8.0间接
crates.iobitflags2.11.1间接
crates.iobitflags2.13.0间接
crates.ioblock-buffer0.10.4间接
crates.ioblock-buffer0.12.0间接
crates.ioblocking1.6.2间接
crates.iobnum间接
crates.iobnum0.14.4间接
crates.iobumpalo3.20.2间接
crates.iobytemuck1.25.0间接
crates.iocast0.3.0间接
crates.iocc1.2.62间接
crates.iocc1.2.65间接
crates.iocfg-if1.0.4间接
crates.iochrono0.4.44间接
crates.iociborium0.2.2间接
crates.iociborium-io0.2.2间接
crates.iociborium-ll0.2.2间接
crates.ioclap4.6.1间接
crates.ioclap_builder4.6.0间接
crates.ioclap_lex1.1.0间接
crates.iocompression-codecs0.4.38间接
crates.iocompression-core0.4.32间接
crates.ioconcurrent-queue2.5.0间接
crates.ioconsole_error_panic_hook间接
crates.ioconsole_error_panic_hook0.1.7间接
crates.ioconst-oid0.10.2间接
crates.ioconst-random0.1.18间接
crates.ioconst-random-macro0.1.16间接
crates.iocore-foundation-sys0.8.7间接
crates.iocpufeatures0.2.17间接
crates.iocpufeatures0.3.0间接
crates.iocrc32fast1.5.0间接
crates.iocriterion间接
crates.iocriterion0.8.2间接
crates.iocriterion-plot0.8.2间接
crates.iocrossbeam-channel0.5.15间接
crates.iocrossbeam-deque0.8.6间接
crates.iocrossbeam-epoch0.9.18间接
crates.iocrossbeam-utils0.8.21间接
crates.iocrunchy0.2.4间接
crates.iocrypto-common0.1.7间接
crates.iocrypto-common0.2.1间接
crates.iodigest0.10.7间接
crates.iodigest0.11.3间接
crates.ioearcutr间接
crates.ioearcutr0.5.0间接
crates.ioeither1.15.0间接
crates.ioeither1.16.0间接
crates.ioencoding_rs0.8.35间接
crates.ioequivalent1.0.2间接
crates.ioerrno0.3.14间接
crates.ioevent-listener2.5.3间接
crates.ioevent-listener5.4.1间接
crates.ioevent-listener-strategy0.5.4间接
crates.iofast-float2间接
crates.iofast-float20.2.3间接
crates.iofastrand2.4.1间接
crates.iofdeflate0.3.7间接
crates.iofind-msvc-tools0.1.9间接
crates.ioflatbuffers25.12.19间接
crates.iofnv1.0.7间接
crates.iofoldhash0.1.5间接
crates.ioform_urlencoded1.2.2间接
crates.iofutures-channel0.3.33间接
crates.iofutures-core间接
crates.iofutures-core0.3.32间接
crates.iofutures-core0.3.33间接
crates.iofutures-executor0.3.33间接
crates.iofutures-io0.3.33间接
crates.iofutures-lite2.6.1间接
crates.iofutures-macro0.3.32间接
crates.iofutures-macro0.3.33间接
crates.iofutures-sink0.3.33间接
crates.iofutures-task0.3.32间接
crates.iofutures-task0.3.33间接
crates.iofutures-util间接
crates.iofutures-util0.3.32间接
crates.iofutures-util0.3.33间接
crates.iogeneric-array0.14.7间接
crates.iogeometry-predicates间接
crates.iogeometry-predicates0.3.0间接
crates.iogetrandom0.2.17间接
crates.iogetrandom0.3.4间接
crates.iogetrandom0.4.2间接
crates.ioglam0.30.10间接
crates.ioglam0.31.1间接
crates.ioglam0.32.1间接
crates.ioglam0.33.0间接
crates.ioglam0.33.1间接
crates.ioglam0.33.2间接
crates.iogloo-timers0.3.0间接
crates.iohalf2.7.1间接
crates.iohashbrown0.15.5间接
crates.iohashbrown0.17.1间接
crates.ioheck0.5.0间接
crates.iohermit-abi0.5.2间接
crates.iohttp1.4.0间接
crates.iohttp-body1.0.1间接
crates.iohttp-body-util0.1.3间接
crates.iohttparse1.10.1间接
crates.iohttpdate1.0.3间接
crates.iohybrid-array0.4.12间接
crates.iohyper1.9.0间接
crates.iohyper-util0.1.20间接
crates.ioi_float3.0.0间接
crates.ioi_key_sort0.10.3间接
crates.ioi_overlay间接
crates.ioi_overlay7.0.1间接
crates.ioi_overlay7.0.2间接
crates.ioi_shape3.0.0间接
crates.ioi_tree0.19.0间接
crates.ioiana-time-zone0.1.65间接
crates.ioiana-time-zone-haiku0.1.2间接
crates.ioid-arena2.3.0间接
crates.ioifc-lite-clash间接
crates.ioifc-lite-export间接
crates.ioindexmap2.14.0间接
crates.ioinsta间接
crates.ioinsta1.48.0间接
crates.ioitertools0.13.0间接
crates.ioitertools0.14.0间接
crates.ioitoa1.0.18间接
crates.iojobserver0.1.34间接
crates.iojpeg-decoder间接
crates.iojpeg-decoder0.3.2间接
crates.iojs-sys0.3.83间接
crates.iokv-log-macro1.0.7间接
crates.iolazy_static1.5.0间接
crates.ioleb128fmt0.1.0间接
crates.iolexical-core间接
crates.iolexical-core1.0.6间接
crates.iolexical-parse-float1.0.6间接
crates.iolexical-parse-integer1.0.6间接
crates.iolexical-util1.0.7间接
crates.iolexical-write-float1.0.6间接
crates.iolexical-write-integer1.0.6间接
crates.iolibc0.2.186间接
crates.iolibfuzzer-sys0.4.13间接
crates.iolibm0.2.16间接
crates.iolibmimalloc-sys0.1.49间接
crates.iolinux-raw-sys0.12.1间接
crates.iolock_api0.4.14间接
crates.iolog0.4.29间接
crates.iolz4_flex0.13.1间接
crates.iomatchers0.2.0间接
crates.iomatchit0.8.4间接
crates.iomatrixmultiply0.3.10间接
crates.iomemchr间接
crates.iomemchr2.8.2间接
crates.iomemchr2.8.3间接
crates.iomemmap20.5.10间接
crates.iomiette5.10.0间接
crates.iomiette-derive5.10.0间接
crates.iomime0.3.17间接
crates.iominicov0.3.8间接
crates.iominimal-lexical0.2.1间接
crates.iominiz_oxide0.8.9间接
crates.iomio1.2.0间接
crates.iomulter3.1.0间接
crates.ionalgebra间接
crates.ionalgebra0.35.0间接
crates.ionom间接
crates.ionom7.1.3间接
crates.ionu-ansi-term0.50.3间接
crates.ionum-bigint0.4.6间接
crates.ionum-bigint0.4.7间接
crates.ionum-complex0.4.6间接
crates.ionum-integer0.1.46间接
crates.ionum-rational间接
crates.ionum-rational0.4.2间接
crates.ionum-traits间接
crates.ionum-traits0.2.19间接
crates.ioonce_cell1.21.4间接
crates.iooorandom11.1.5间接
crates.iopage_size0.6.0间接
crates.ioparking2.2.1间接
crates.ioparking_lot0.12.5间接
crates.ioparking_lot_core0.9.12间接
crates.iopaste1.0.15间接
crates.iopercent-encoding2.3.2间接
crates.iopin-project-lite0.2.17间接
crates.iopin-utils0.1.0间接
crates.iopiper0.2.5间接
crates.iopkg-config0.3.33间接
crates.ioplotters0.3.7间接
crates.ioplotters-backend0.3.7间接
crates.ioplotters-svg0.3.7间接
crates.iopng间接
crates.iopng0.18.1间接
crates.iopolling3.11.0间接
crates.ioportable-atomic1.13.1间接
crates.ioppv-lite860.2.21间接
crates.ioprettyplease0.2.37间接
crates.ioproc-macro21.0.106间接
crates.ioproptest间接
crates.ioproptest1.11.0间接
crates.iopyo30.29.0间接
crates.iopyo3-build-config0.29.0间接
crates.iopyo3-ffi0.29.0间接
crates.iopyo3-macros0.29.0间接
crates.iopyo3-macros-backend0.29.0间接
crates.ioquick-error1.2.3间接
crates.ioquote1.0.45间接
crates.ioquote1.0.46间接
crates.ior-efi5.3.0间接
crates.ior-efi6.0.0间接
crates.iorand0.9.4间接
crates.iorand_chacha0.9.0间接
crates.iorand_core0.9.5间接
crates.iorand_xorshift0.4.0间接
crates.iorawpointer0.2.1间接
crates.iorayon-core间接
crates.iorayon-core1.13.0间接
crates.ioredox_syscall0.5.18间接
crates.ioreflink-copy0.1.29间接
crates.ioregex1.12.3间接
crates.ioregex-automata0.4.14间接
crates.ioregex-syntax0.8.10间接
crates.iorobust间接
crates.iorobust1.2.0间接
crates.iorustc_version0.4.1间接
crates.iorustix1.1.4间接
crates.iorustversion1.0.22间接
crates.iorusty-fork0.3.1间接
crates.ioryu1.0.23间接
crates.iosafe_arch1.0.0间接
crates.iosame-file1.0.6间接
crates.ioscopeguard1.2.0间接
crates.iosemver1.0.28间接
crates.ioseq-macro0.3.6间接
crates.ioserde-wasm-bindgen0.6.5间接
crates.ioserde_core1.0.228间接
crates.ioserde_core1.0.229间接
crates.ioserde_derive1.0.228间接
crates.ioserde_derive1.0.229间接
crates.ioserde_path_to_error0.1.20间接
crates.ioserde_urlencoded0.7.1间接
crates.iosha-10.10.1间接
crates.iosha10.10.6间接
crates.iosharded-slab0.1.7间接
crates.ioshlex1.3.0间接
crates.ioshlex2.0.1间接
crates.iosignal-hook-registry1.4.8间接
crates.iosimba0.10.0间接
crates.iosimd-adler320.3.9间接
crates.iosimilar2.7.0间接
crates.ioslab0.4.12间接
crates.iosmallvec间接
crates.iosmallvec1.15.2间接
crates.iosnap1.1.1间接
crates.iosocket20.6.3间接
crates.iospin0.9.8间接
crates.iossri9.2.0间接
crates.iosyn2.0.117间接
crates.iosyn2.0.118间接
crates.iosyn3.0.2间接
crates.iosync_wrapper1.0.2间接
crates.iotarget-lexicon0.13.5间接
crates.iotempfile3.27.0间接
crates.iothiserror-impl1.0.69间接
crates.iothiserror-impl2.0.18间接
crates.iothiserror-impl2.0.19间接
crates.iothread_local1.1.9间接
crates.iotiny-keccak2.0.2间接
crates.iotinytemplate1.2.1间接
crates.iotokio-macros2.7.0间接
crates.iotokio-util0.7.18间接
crates.iotower-layer0.3.3间接
crates.iotower-service0.3.3间接
crates.iotracing-attributes0.1.31间接
crates.iotracing-core0.1.36间接
crates.iotracing-log0.2.0间接
crates.iotracing-serde0.2.0间接
crates.iotwox-hash2.1.2间接
crates.iotyped-path0.12.3间接
crates.iotypenum1.20.0间接
crates.iotypenum1.20.1间接
crates.iounarray0.1.4间接
crates.iounicode-ident1.0.24间接
crates.iounicode-width0.1.14间接
crates.iounicode-xid0.2.6间接
crates.iovaluable0.1.1间接
crates.iovalue-bag1.12.0间接
crates.ioversion_check0.9.5间接
crates.iowait-timeout0.2.1间接
crates.iowalkdir2.5.0间接
crates.iowasi0.11.1+wasi-snapshot-preview1间接
crates.iowasip21.0.3+wasi-0.2.9间接
crates.iowasip21.0.4+wasi-0.2.12间接
crates.iowasip30.4.0+wasi-0.3.0-rc-2026-01-06间接
crates.iowasm-bindgen0.2.106间接
crates.iowasm-bindgen-futures0.4.56间接
crates.iowasm-bindgen-macro0.2.106间接
crates.iowasm-bindgen-macro-support0.2.106间接
crates.iowasm-bindgen-rayon间接
crates.iowasm-bindgen-rayon1.3.0间接
crates.iowasm-bindgen-shared0.2.106间接
crates.iowasm-bindgen-test0.3.56间接
crates.iowasm-bindgen-test-macro0.3.56间接
crates.iowasm-encoder0.244.0间接
crates.iowasm-metadata0.244.0间接
crates.iowasm_sync0.1.2间接
crates.iowasmparser0.244.0间接
crates.ioweb-sys0.3.83间接
crates.iowide1.4.0间接
crates.iowide1.5.0间接
crates.iowinapi0.3.9间接
crates.iowinapi-i686-pc-windows-gnu0.4.0间接
crates.iowinapi-util0.1.11间接
crates.iowinapi-x86_64-pc-windows-gnu0.4.0间接
crates.iowindows0.62.2间接
crates.iowindows-collections0.3.2间接
crates.iowindows-core0.62.2间接
crates.iowindows-future0.3.2间接
crates.iowindows-implement0.60.2间接
crates.iowindows-interface0.59.3间接
crates.iowindows-link0.2.1间接
crates.iowindows-numerics0.3.1间接
crates.iowindows-result0.4.1间接
crates.iowindows-strings0.5.1间接
crates.iowindows-sys0.61.2间接
crates.iowindows-threading0.2.1间接
crates.iowit-bindgen0.51.0间接
crates.iowit-bindgen0.57.1间接
crates.iowit-bindgen-core0.51.0间接
crates.iowit-bindgen-rust0.51.0间接
crates.iowit-bindgen-rust-macro0.51.0间接
crates.iowit-component0.244.0间接
crates.iowit-parser0.244.0间接
crates.ioxxhash-rust0.8.15间接
crates.iozerocopy0.8.48间接
crates.iozerocopy-derive0.8.48间接
crates.iozlib-rs0.6.4间接
crates.iozmij1.0.21间接
crates.iozopfli0.8.3间接
crates.iozstd0.13.3间接
crates.iozstd-safe7.2.1间接
crates.iozstd-sys2.0.13+zstd.1.5.6间接
npm@75lb/deep-merge1.1.2间接
npm@alloc/quick-lru5.2.0间接
npm@antfu/install-pkg1.1.0间接
npm@babel/code-frame7.29.7间接
npm@babel/compat-data7.29.7间接
npm@babel/core7.29.7间接
npm@babel/generator7.29.7间接
npm@babel/helper-compilation-targets7.29.7间接
npm@babel/helper-globals7.29.7间接
npm@babel/helper-module-imports7.29.7间接
npm@babel/helper-module-transforms7.29.7间接
npm@babel/helper-string-parser7.29.7间接
npm@babel/helper-validator-identifier7.29.7间接
npm@babel/helper-validator-option7.29.7间接
npm@babel/helpers7.29.7间接
npm@babel/parser7.29.7间接
npm@babel/runtime7.29.2间接
npm@babel/runtime7.29.7间接
npm@babel/template7.29.7间接
npm@babel/traverse7.29.7间接
npm@babel/types7.29.7间接
npm@babylonjs/core9.17.0间接
npm@babylonjs/core^9.17.0间接
npm@cesium/engine26.1.0间接
npm@cesium/wasm-splats0.1.0-alpha.2间接
npm@cesium/widgets16.1.0间接
npm@changesets/apply-release-plan7.1.1间接
npm@changesets/assemble-release-plan6.0.10间接
npm@changesets/changelog-git0.2.1间接
npm@changesets/changelog-github0.7.0间接
npm@changesets/cli2.31.1间接
npm@changesets/config3.1.4间接
npm@changesets/errors0.2.0间接
npm@changesets/get-dependents-graph2.1.4间接
npm@changesets/get-github-info0.8.0间接
npm@changesets/get-release-plan4.0.16间接
npm@changesets/get-version-range-type0.4.0间接
npm@changesets/git3.0.4间接
npm@changesets/logger0.1.1间接
npm@changesets/parse0.4.3间接
npm@changesets/pre2.0.2间接
npm@changesets/read0.6.7间接
npm@changesets/should-skip-package0.1.2间接
npm@changesets/types4.1.0间接
npm@changesets/types6.1.0间接
npm@changesets/write0.4.0间接
npm@codemirror/lint6.9.6间接
npm@dimforge/rapier3d-compat0.12.0间接
npm@edge-runtime/primitives4.1.0间接
npm@edge-runtime/vm3.2.0间接
npm@emnapi/core1.11.0间接
npm@emnapi/core1.11.1间接
npm@emnapi/runtime1.11.0间接
npm@emnapi/runtime1.11.1间接
npm@emnapi/wasi-threads1.2.2间接
npm@esbuild/aix-ppc640.28.1间接
npm@esbuild/android-arm0.28.1间接
npm@esbuild/android-arm640.28.1间接
npm@esbuild/android-x640.28.1间接
npm@esbuild/darwin-arm640.28.1间接
npm@esbuild/darwin-x640.28.1间接
npm@esbuild/freebsd-arm640.28.1间接
npm@esbuild/freebsd-x640.28.1间接
npm@esbuild/linux-arm0.28.1间接
npm@esbuild/linux-arm640.28.1间接
npm@esbuild/linux-ia320.28.1间接
npm@esbuild/linux-loong640.28.1间接
npm@esbuild/linux-mips64el0.28.1间接
npm@esbuild/linux-ppc640.28.1间接
npm@esbuild/linux-riscv640.28.1间接
npm@esbuild/linux-s390x0.28.1间接
npm@esbuild/linux-x640.28.1间接
npm@esbuild/netbsd-arm640.28.1间接
npm@esbuild/netbsd-x640.28.1间接
npm@esbuild/openbsd-arm640.28.1间接
npm@esbuild/openbsd-x640.28.1间接
npm@esbuild/openharmony-arm640.28.1间接
npm@esbuild/sunos-x640.28.1间接
npm@esbuild/win32-arm640.28.1间接
npm@esbuild/win32-ia320.28.1间接
npm@esbuild/win32-x640.28.1间接
npm@fast-csv/format4.3.5间接
npm@fast-csv/parse4.3.6间接
npm@floating-ui/core1.8.0间接
npm@floating-ui/react-dom2.1.9间接
npm@floating-ui/utils0.2.12间接
npm@iconify/types2.0.0间接
npm@iconify/utils3.1.4间接
npm@inquirer/external-editor1.0.3间接
npm@isaacs/fs-minipass4.0.1间接
npm@jitl/quickjs-ffi-types0.32.0间接
npm@jitl/quickjs-wasmfile-debug-asyncify0.32.0间接
npm@jitl/quickjs-wasmfile-debug-sync0.32.0间接
npm@jitl/quickjs-wasmfile-release-asyncify0.32.0间接
npm@jitl/quickjs-wasmfile-release-sync0.32.0间接
npm@jridgewell/gen-mapping0.3.13间接
npm@jridgewell/remapping2.3.5间接
npm@jridgewell/resolve-uri3.1.2间接
npm@jridgewell/sourcemap-codec1.5.5间接
npm@jridgewell/trace-mapping0.3.31间接
npm@lezer/common1.5.2间接
npm@lezer/highlight1.2.3间接
npm@lezer/javascript1.5.4间接
npm@lezer/lr1.4.10间接
npm@manypkg/find-root1.1.0间接
npm@manypkg/get-packages1.1.3间接
npm@mapbox/jsonlint-lines-primitives2.0.2间接
npm@mapbox/point-geometry1.1.0间接
npm@mapbox/tiny-sdf2.2.0间接
npm@mapbox/unitbezier0.0.1间接
npm@mapbox/vector-tile2.0.4间接
npm@mapbox/whoots-js3.1.0间接
npm@maplibre/geojson-vt5.0.4间接
npm@maplibre/geojson-vt6.1.0间接
npm@maplibre/maplibre-gl-style-spec24.8.5间接
npm@maplibre/mlt1.1.9间接
npm@maplibre/vt-pbf4.3.0间接
npm@marijn/find-cluster-break1.0.3间接
npm@napi-rs/wasm-runtime1.1.6间接
npm@noble/hashes2.2.0间接
npm@noble/hashes^2.2.0间接
npm@nodelib/fs.scandir2.1.5间接
npm@nodelib/fs.stat2.0.5间接
npm@nodelib/fs.walk1.2.8间接
npm@oxc-parser/binding-android-arm-eabi0.137.0间接
npm@oxc-parser/binding-android-arm640.137.0间接
npm@oxc-parser/binding-darwin-arm640.137.0间接
npm@oxc-parser/binding-darwin-x640.137.0间接
npm@oxc-parser/binding-freebsd-x640.137.0间接
npm@oxc-parser/binding-linux-arm-gnueabihf0.137.0间接
npm@oxc-parser/binding-linux-arm-musleabihf0.137.0间接
npm@oxc-parser/binding-linux-arm64-gnu0.137.0间接
npm@oxc-parser/binding-linux-arm64-musl0.137.0间接
npm@oxc-parser/binding-linux-ppc64-gnu0.137.0间接
npm@oxc-parser/binding-linux-riscv64-gnu0.137.0间接
npm@oxc-parser/binding-linux-riscv64-musl0.137.0间接
npm@oxc-parser/binding-linux-s390x-gnu0.137.0间接
npm@oxc-parser/binding-linux-x64-gnu0.137.0间接
npm@oxc-parser/binding-linux-x64-musl0.137.0间接
npm@oxc-parser/binding-openharmony-arm640.137.0间接
npm@oxc-parser/binding-wasm32-wasi0.137.0间接
npm@oxc-parser/binding-win32-arm64-msvc0.137.0间接
npm@oxc-parser/binding-win32-ia32-msvc0.137.0间接
npm@oxc-parser/binding-win32-x64-msvc0.137.0间接
npm@oxc-project/types0.137.0间接
npm@oxc-project/types0.139.0间接
npm@oxc-resolver/binding-android-arm-eabi11.21.3间接
npm@oxc-resolver/binding-android-arm6411.21.3间接
npm@oxc-resolver/binding-darwin-arm6411.21.3间接
npm@oxc-resolver/binding-darwin-x6411.21.3间接
npm@oxc-resolver/binding-freebsd-x6411.21.3间接
npm@oxc-resolver/binding-linux-arm-gnueabihf11.21.3间接
npm@oxc-resolver/binding-linux-arm-musleabihf11.21.3间接
npm@oxc-resolver/binding-linux-arm64-gnu11.21.3间接
npm@oxc-resolver/binding-linux-arm64-musl11.21.3间接
npm@oxc-resolver/binding-linux-ppc64-gnu11.21.3间接
npm@oxc-resolver/binding-linux-riscv64-gnu11.21.3间接
npm@oxc-resolver/binding-linux-riscv64-musl11.21.3间接
npm@oxc-resolver/binding-linux-s390x-gnu11.21.3间接
npm@oxc-resolver/binding-linux-x64-gnu11.21.3间接
npm@oxc-resolver/binding-linux-x64-musl11.21.3间接
npm@oxc-resolver/binding-openharmony-arm6411.21.3间接
npm@oxc-resolver/binding-wasm32-wasi11.21.3间接
npm@oxc-resolver/binding-win32-arm64-msvc11.21.3间接
npm@oxc-resolver/binding-win32-x64-msvc11.21.3间接
npm@petamoriken/float163.9.3间接
npm@playwright/test1.61.1间接
npm@posthog/core1.44.0间接
npm@posthog/types1.397.1间接
npm@radix-ui/number1.1.2间接
npm@radix-ui/primitive1.1.6间接
npm@radix-ui/react-arrow1.1.12间接
npm@radix-ui/react-collection1.1.12间接
npm@radix-ui/react-compose-refs1.1.3间接
npm@radix-ui/react-context1.2.0间接
npm@radix-ui/react-direction1.1.2间接
npm@radix-ui/react-dismissable-layer1.1.16间接
npm@radix-ui/react-focus-guards1.1.4间接
npm@radix-ui/react-focus-scope1.1.13间接
npm@radix-ui/react-id1.1.2间接
npm@radix-ui/react-menu2.1.21间接
npm@radix-ui/react-popper1.3.4间接
npm@radix-ui/react-portal1.1.14间接
npm@radix-ui/react-presence1.1.8间接
npm@radix-ui/react-primitive2.1.7间接
npm@radix-ui/react-roving-focus1.1.16间接
npm@radix-ui/react-use-callback-ref1.1.2间接
npm@radix-ui/react-use-controllable-state1.2.4间接
npm@radix-ui/react-use-effect-event0.0.3间接
npm@radix-ui/react-use-is-hydrated0.1.1间接
npm@radix-ui/react-use-layout-effect1.1.2间接
npm@radix-ui/react-use-previous1.1.2间接
npm@radix-ui/react-use-rect1.1.2间接
npm@radix-ui/react-use-size1.1.2间接
npm@radix-ui/react-visually-hidden1.2.8间接
npm@radix-ui/rect1.1.2间接
npm@rolldown/binding-android-arm641.1.5间接
npm@rolldown/binding-darwin-arm641.1.5间接
npm@rolldown/binding-darwin-x641.1.5间接
npm@rolldown/binding-freebsd-x641.1.5间接
npm@rolldown/binding-linux-arm-gnueabihf1.1.5间接
npm@rolldown/binding-linux-arm64-gnu1.1.5间接
npm@rolldown/binding-linux-arm64-musl1.1.5间接
npm@rolldown/binding-linux-ppc64-gnu1.1.5间接
npm@rolldown/binding-linux-s390x-gnu1.1.5间接
npm@rolldown/binding-linux-x64-gnu1.1.5间接
npm@rolldown/binding-linux-x64-musl1.1.5间接
npm@rolldown/binding-openharmony-arm641.1.5间接
npm@rolldown/binding-wasm32-wasi1.1.5间接
npm@rolldown/binding-win32-arm64-msvc1.1.5间接
npm@rolldown/binding-win32-x64-msvc1.1.5间接
npm@rolldown/pluginutils1.0.1间接
npm@rollup/plugin-virtual3.0.2间接
npm@rollup/rollup-android-arm-eabi4.62.2间接
npm@rollup/rollup-android-arm644.62.2间接
npm@rollup/rollup-darwin-arm644.62.2间接
npm@rollup/rollup-darwin-x644.62.2间接
npm@rollup/rollup-freebsd-arm644.62.2间接
npm@rollup/rollup-freebsd-x644.62.2间接
npm@rollup/rollup-linux-arm-gnueabihf4.62.2间接
npm@rollup/rollup-linux-arm-musleabihf4.62.2间接
npm@rollup/rollup-linux-arm64-gnu4.62.2间接
npm@rollup/rollup-linux-arm64-musl4.62.2间接
npm@rollup/rollup-linux-loong64-gnu4.62.2间接
npm@rollup/rollup-linux-loong64-musl4.62.2间接
npm@rollup/rollup-linux-ppc64-gnu4.62.2间接
npm@rollup/rollup-linux-ppc64-musl4.62.2间接
npm@rollup/rollup-linux-riscv64-gnu4.62.2间接
npm@rollup/rollup-linux-riscv64-musl4.62.2间接
npm@rollup/rollup-linux-s390x-gnu4.62.2间接
npm@rollup/rollup-linux-x64-gnu4.62.2间接
npm@rollup/rollup-linux-x64-musl4.62.2间接
npm@rollup/rollup-openbsd-x644.62.2间接
npm@rollup/rollup-openharmony-arm644.62.2间接
npm@rollup/rollup-win32-arm64-msvc4.62.2间接
npm@rollup/rollup-win32-ia32-msvc4.62.2间接
npm@rollup/rollup-win32-x64-gnu4.62.2间接
npm@rollup/rollup-win32-x64-msvc4.62.2间接
npm@spz-loader/core0.3.1间接
npm@stablelib/base641.0.1间接
npm@standard-schema/spec1.1.0间接
npm@svgr/babel-plugin-add-jsx-attribute8.0.0间接
npm@svgr/babel-plugin-remove-jsx-attribute8.0.0间接
npm@svgr/babel-plugin-remove-jsx-empty-expression8.0.0间接
npm@svgr/babel-plugin-replace-jsx-attribute-value8.0.0间接
npm@svgr/babel-plugin-svg-dynamic-title8.0.0间接
npm@svgr/babel-plugin-svg-em-dimensions8.0.0间接
npm@svgr/babel-plugin-transform-react-native-svg8.1.0间接
npm@svgr/babel-plugin-transform-svg-component8.0.0间接
npm@svgr/babel-preset8.1.0间接
npm@svgr/core8.1.0间接
npm@svgr/core^8.1.0间接
npm@svgr/hast-util-to-babel-ast8.0.0间接
npm@svgr/plugin-jsx8.1.0间接
npm@svgr/plugin-jsx^8.1.0间接
npm@swc/core1.15.8间接
npm@swc/core-darwin-arm641.15.8间接
npm@swc/core-darwin-x641.15.8间接
npm@swc/core-linux-arm-gnueabihf1.15.8间接
npm@swc/core-linux-arm64-gnu1.15.8间接
npm@swc/core-linux-arm64-musl1.15.8间接
npm@swc/core-linux-x64-gnu1.15.8间接
npm@swc/core-linux-x64-musl1.15.8间接
npm@swc/core-win32-arm64-msvc1.15.8间接
npm@swc/core-win32-ia32-msvc1.15.8间接
npm@swc/core-win32-x64-msvc1.15.8间接
npm@swc/counter0.1.3间接
npm@swc/helpers0.5.21间接
npm@swc/types0.1.25间接
npm@swc/wasm1.15.8间接
npm@tailwindcss/node4.3.3间接
npm@tailwindcss/oxide4.3.3间接
npm@tailwindcss/oxide-android-arm644.3.3间接
npm@tailwindcss/oxide-darwin-arm644.3.3间接
npm@tailwindcss/oxide-darwin-x644.3.3间接
npm@tailwindcss/oxide-freebsd-x644.3.3间接
npm@tailwindcss/oxide-linux-arm-gnueabihf4.3.3间接
npm@tailwindcss/oxide-linux-arm64-gnu4.3.3间接
npm@tailwindcss/oxide-linux-arm64-musl4.3.3间接
npm@tailwindcss/oxide-linux-x64-gnu4.3.3间接
npm@tailwindcss/oxide-linux-x64-musl4.3.3间接
npm@tailwindcss/oxide-wasm32-wasi4.3.3间接
npm@tailwindcss/oxide-win32-arm64-msvc4.3.3间接
npm@tailwindcss/oxide-win32-x64-msvc4.3.3间接
npm@tailwindcss/postcss4.3.3间接
npm@tailwindcss/postcss^4.3.3间接
npm@tanstack/virtual-core3.17.5间接
npm@tauri-apps/api2.11.0间接
npm@tauri-apps/api2.11.1间接
npm@tauri-apps/api^2.11.1间接
npm@turbo/darwin-642.10.5间接
npm@turbo/darwin-arm642.10.5间接
npm@turbo/linux-642.10.5间接
npm@turbo/linux-arm642.10.5间接
npm@turbo/windows-642.10.5间接
npm@turbo/windows-arm642.10.5间接
npm@tweenjs/tween.js23.1.3间接
npm@tweenjs/tween.js25.0.0间接
npm@tybys/wasm-util0.10.3间接
npm@types/chai5.2.3间接
npm@types/command-line-args5.2.0间接
npm@types/command-line-usage5.0.2间接
npm@types/debug4.1.13间接
npm@types/deep-eql4.0.2间接
npm@types/estree1.0.9间接
npm@types/estree-jsx1.0.5间接
npm@types/geojson7946.0.16间接
npm@types/hast3.0.4间接
npm@types/mdast4.0.4间接
npm@types/ms2.1.0间接
npm@types/node12.20.55间接
npm@types/node14.18.63间接
npm@types/node20.3.0间接
npm@types/node25.9.5间接
npm@types/node26.1.1间接
npm@types/node^26.1.1间接
npm@types/pad-left2.1.1间接
npm@types/pako2.0.4间接
npm@types/raf3.4.3间接
npm@types/react19.2.17间接
npm@types/react^19.2.17间接
npm@types/react-dom19.2.3间接
npm@types/react-dom^19.2.3间接
npm@types/stats.js0.17.4间接
npm@types/supercluster7.1.3间接
npm@types/three0.185.1间接
npm@types/three^0.185.1间接
npm@types/trusted-types2.0.7间接
npm@types/unist2.0.11间接
npm@types/unist3.0.3间接
npm@types/webxr0.5.24间接
npm@types/whatwg-mimetype3.0.2间接
npm@types/ws8.18.1间接
npm@types/ws^8.5.13间接
npm@ungap/structured-clone1.3.1间接
npm@vitejs/plugin-react6.0.3间接
npm@vitejs/plugin-react^6.0.3间接
npm@vitest/expect4.1.10间接
npm@vitest/mocker4.1.10间接
npm@vitest/pretty-format4.1.10间接
npm@vitest/runner4.1.10间接
npm@vitest/snapshot4.1.10间接
npm@vitest/spy4.1.10间接
npm@vitest/utils4.1.10间接
npm@webgpu/types0.1.71间接
npm@webgpu/types^0.1.71间接
npm@xmldom/xmldom0.9.10间接
npm@xmldom/xmldom^0.9.10间接
npm@zip.js/zip.js2.8.26间接
npmansi-colors4.1.3间接
npmansi-regex5.0.1间接
npmansi-styles4.3.0间接
npmanymatch3.1.3间接
npmarchiver5.3.2间接
npmarchiver-utils2.1.0间接
npmarchiver-utils3.0.4间接
npmargparse2.0.1间接
npmaria-hidden1.2.6间接
npmarray-back3.1.0间接
npmarray-back6.2.2间接
npmarray-back6.2.3间接
npmarray-union2.1.0间接
npmassertion-error2.0.1间接
npmasync3.2.6间接
npmautolinker4.1.5间接
npmbail2.0.2间接
npmbalanced-match1.0.2间接
npmbase64-arraybuffer1.0.2间接
npmbase64-js1.5.1间接
npmbaseline-browser-mapping2.10.44间接
npmbetter-path-resolve1.0.0间接
npmbig-integer1.6.52间接
npmbinary0.3.0间接
npmbinary-extensions2.3.0间接
npmbitmap-sdf1.0.4间接
npmbl4.1.0间接
npmbluebird3.4.7间接
npmboolbase1.0.0间接
npmbrace-expansion1.1.16间接
npmbrace-expansion2.1.2间接
npmbraces3.0.3间接
npmbrowserslist4.28.6间接
npmbuffer5.7.1间接
npmbuffer-crc320.2.13间接
npmbuffer-image-size0.6.4间接
npmbuffer-indexof-polyfill1.0.2间接
npmbuffers0.1.1间接
npmcallsites3.1.0间接
npmcamelcase6.3.0间接
npmcaniuse-lite1.0.30001806间接
npmcanvg3.0.11间接
npmccount2.0.1间接
npmchai6.2.2间接
npmchainsaw0.1.0间接
npmchalk4.1.2间接
npmchalk-template0.4.0间接
npmcharacter-entities2.0.2间接
npmcharacter-entities-html42.1.0间接
npmcharacter-entities-legacy3.0.0间接
npmcharacter-reference-invalid2.0.1间接
npmchardet2.2.0间接
npmchokidar3.6.0间接
npmchownr3.0.0间接
npmcolor-convert2.0.1间接
npmcolor-name1.1.4间接
npmcomma-separated-tokens2.0.3间接
npmcommand-line-args5.2.1间接
npmcommand-line-usage7.0.1间接
npmcommand-line-usage7.0.4间接
npmcompress-commons4.1.2间接
npmconcat-map0.0.1间接
npmconfbox0.1.8间接
npmconfbox0.2.4间接
npmconvert-source-map2.0.0间接
npmcore-js3.49.0间接
npmcore-util-is1.0.3间接
npmcosmiconfig8.3.6间接
npmcrc-321.2.2间接
npmcrc32-stream4.0.3间接
npmcrelt1.0.6间接
npmcrelt1.0.7间接
npmcross-spawn7.0.6间接
npmcss-line-break2.1.0间接
npmcss-select5.2.2间接
npmcss-tree2.2.1间接
npmcss-tree3.2.1间接
npmcss-what6.2.2间接
npmcsso5.0.5间接
npmcsstype3.2.3间接
npmdataloader1.4.0间接
npmdayjs1.11.21间接
npmdebug4.4.3间接
npmdecode-named-character-reference1.3.0间接
npmdequal2.0.3间接
npmdetect-indent6.1.0间接
npmdetect-libc2.1.2间接
npmdetect-node-es1.1.0间接
npmdevlop1.1.0间接
npmdir-glob3.0.1间接
npmdom-serializer2.0.0间接
npmdomelementtype2.3.0间接
npmdomhandler5.0.3间接
npmdompurify3.4.11间接
npmdompurify3.4.12间接
npmdomutils3.2.2间接
npmdot-case3.0.4间接
npmdotenv8.6.0间接
npmdraco3d1.5.7间接
npmduplexer20.1.4间接
npmearcut3.0.2间接
npmelectron-to-chromium1.5.394间接
npmend-of-stream1.4.5间接
npmenhanced-resolve5.24.3间接
npmenquirer2.4.1间接
npmentities4.5.0间接
npmentities7.0.1间接
npmerror-ex1.3.4间接
npmes-module-lexer2.3.1间接
npmesbuild0.28.1间接
npmesbuild^0.28.0间接
npmesbuild-wasm0.28.1间接
npmesbuild-wasm^0.28.1间接
npmescalade3.2.0间接
npmescape-string-regexp5.0.0间接
npmestree-util-is-identifier-name3.0.0间接
npmestree-walker3.0.3间接
npmexpect-type1.4.0间接
npmexsolve1.1.0间接
npmextend3.0.2间接
npmextendable-error0.1.7间接
npmfake-indexeddb6.2.5间接
npmfake-indexeddb^6.2.5间接
npmfast-csv4.3.6间接
npmfast-glob3.3.3间接
npmfast-png6.4.0间接
npmfast-sha2561.3.0间接
npmfastq1.20.1间接
npmfd-package-json2.0.0间接
npmfdir6.5.0间接
npmfill-range7.1.1间接
npmfind-replace3.0.0间接
npmfind-up4.1.0间接
npmflatbuffers23.5.26间接
npmflatbuffers25.9.23间接
npmformatly0.3.0间接
npmfraction.js5.3.4间接
npmfs-constants1.0.0间接
npmfs-extra7.0.1间接
npmfs-extra8.1.0间接
npmfs.realpath1.0.0间接
npmfsevents2.3.2间接
npmfsevents2.3.3间接
npmfstream1.0.12间接
npmgensync1.0.0-beta.2间接
npmget-nonce1.0.1间接
npmget-tsconfig4.14.0间接
npmgl-matrix3.4.4间接
npmglob7.2.3间接
npmglob-parent5.1.2间接
npmglobby11.1.0间接
npmgraceful-fs4.2.11间接
npmgrapheme-splitter1.0.4间接
npmhappy-dom20.11.0间接
npmhappy-dom^20.11.0间接
npmhas-flag4.0.0间接
npmhast-util-to-jsx-runtime2.3.6间接
npmhast-util-whitespace3.0.0间接
npmhtml-url-attributes3.0.1间接
npmhtml2canvas1.4.1间接
npmhuman-id4.2.0间接
npmiconv-lite0.7.3间接
npmieee7541.2.1间接
npmignore5.3.2间接
npmimmediate3.0.6间接
npmimport-fresh3.3.1间接
npmimport-meta-resolve4.2.0间接
npminflight1.0.6间接
npminherits2.0.4间接
npminline-style-parser0.2.7间接
npmiobuffer5.4.0间接
npmis-alphabetical2.0.1间接
npmis-alphanumerical2.0.1间接
npmis-arrayish0.2.1间接
npmis-binary-path2.1.0间接
npmis-decimal2.0.1间接
npmis-extglob2.1.1间接
npmis-glob4.0.3间接
npmis-hexadecimal2.0.1间接
npmis-number7.0.0间接
npmis-plain-obj4.1.0间接
npmis-subdir1.2.0间接
npmis-windows1.0.2间接
npmisarray1.0.0间接
npmisexe2.0.0间接
npmisomorphic.js0.2.5间接
npmjiti2.7.0间接
npmjs-tokens4.0.0间接
npmjs-yaml4.3.0间接
npmjsep1.4.0间接
npmjsesc3.1.0间接
npmjson-bignum0.0.3间接
npmjson-parse-even-better-errors2.3.1间接
npmjson-schema-to-ts3.1.1间接
npmjson-stringify-pretty-compact4.0.0间接
npmjson-with-bigint3.5.10间接
npmjson52.2.3间接
npmjsonfile4.0.0间接
npmkdbush4.0.2间接
npmkdbush4.1.0间接
npmknip6.27.0间接
npmktx-parse1.1.0间接
npmlaz-perf0.0.6间接
npmlaz-perf0.0.7间接
npmlaz-perf^0.0.7间接
npmlazystream1.0.1间接
npmlerc2.0.0间接
npmlerc3.0.0间接
npmlie3.3.0间接
npmlightningcss1.32.0间接
npmlightningcss1.33.0间接
npmlightningcss-android-arm641.32.0间接
npmlightningcss-android-arm641.33.0间接
npmlightningcss-darwin-arm641.32.0间接
npmlightningcss-darwin-arm641.33.0间接
npmlightningcss-darwin-x641.32.0间接
npmlightningcss-darwin-x641.33.0间接
npmlightningcss-freebsd-x641.32.0间接
npmlightningcss-freebsd-x641.33.0间接
npmlightningcss-linux-arm-gnueabihf1.32.0间接
npmlightningcss-linux-arm-gnueabihf1.33.0间接
npmlightningcss-linux-arm64-gnu1.32.0间接
npmlightningcss-linux-arm64-gnu1.33.0间接
npmlightningcss-linux-arm64-musl1.32.0间接
npmlightningcss-linux-arm64-musl1.33.0间接
npmlightningcss-linux-x64-gnu1.32.0间接
npmlightningcss-linux-x64-gnu1.33.0间接
npmlightningcss-linux-x64-musl1.32.0间接
npmlightningcss-linux-x64-musl1.33.0间接
npmlightningcss-win32-arm64-msvc1.32.0间接
npmlightningcss-win32-arm64-msvc1.33.0间接
npmlightningcss-win32-x64-msvc1.32.0间接
npmlightningcss-win32-x64-msvc1.33.0间接
npmlines-and-columns1.2.4间接
npmlistenercount1.0.1间接
npmlocal-pkg1.2.1间接
npmlocate-path5.0.0间接
npmlodash4.18.1间接
npmlodash.camelcase4.3.0间接
npmlodash.defaults4.2.0间接
npmlodash.difference4.5.0间接
npmlodash.escaperegexp4.1.2间接
npmlodash.flatten4.4.0间接
npmlodash.groupby4.6.0间接
npmlodash.isboolean3.0.3间接
npmlodash.isequal4.5.0间接
npmlodash.isfunction3.0.9间接
npmlodash.isnil4.0.0间接
npmlodash.isplainobject4.0.6间接
npmlodash.isundefined3.0.1间接
npmlodash.startcase4.4.0间接
npmlodash.union4.6.0间接
npmlodash.uniq4.5.0间接
npmlong5.3.2间接
npmlongest-streak3.1.0间接
npmlower-case2.0.2间接
npmlru-cache5.1.1间接
npmmagic-string0.30.21间接
npmmarkdown-table3.0.4间接
npmmdast-util-find-and-replace3.0.2间接
npmmdast-util-from-markdown2.0.3间接
npmmdast-util-gfm3.1.0间接
npmmdast-util-gfm-autolink-literal2.0.1间接
npmmdast-util-gfm-footnote2.1.0间接
npmmdast-util-gfm-strikethrough2.0.0间接
npmmdast-util-gfm-table2.0.0间接
npmmdast-util-gfm-task-list-item2.0.0间接
npmmdast-util-mdx-expression2.0.1间接
npmmdast-util-mdx-jsx3.2.0间接
npmmdast-util-mdxjs-esm2.0.1间接
npmmdast-util-phrasing4.1.0间接
npmmdast-util-to-hast13.2.1间接
npmmdast-util-to-markdown2.1.2间接
npmmdast-util-to-string4.0.0间接
npmmdn-data2.0.28间接
npmmdn-data2.27.1间接
npmmerge21.4.1间接
npmmersenne-twister1.1.0间接
npmmeshoptimizer1.1.1间接
npmmeshoptimizer1.2.0间接
npmmgrs1.0.0间接
npmmicromark4.0.2间接
npmmicromark-core-commonmark2.0.3间接
npmmicromark-extension-gfm3.0.0间接
npmmicromark-extension-gfm-autolink-literal2.1.0间接
npmmicromark-extension-gfm-footnote2.1.0间接
npmmicromark-extension-gfm-strikethrough2.1.0间接
npmmicromark-extension-gfm-table2.1.1间接
npmmicromark-extension-gfm-tagfilter2.0.0间接
npmmicromark-extension-gfm-task-list-item2.1.0间接
npmmicromark-factory-destination2.0.1间接
npmmicromark-factory-label2.0.1间接
npmmicromark-factory-space2.0.1间接
npmmicromark-factory-title2.0.1间接
npmmicromark-factory-whitespace2.0.1间接
npmmicromark-util-character2.1.1间接
npmmicromark-util-chunked2.0.1间接
npmmicromark-util-classify-character2.0.1间接
npmmicromark-util-combine-extensions2.0.1间接
npmmicromark-util-decode-numeric-character-reference2.0.2间接
npmmicromark-util-decode-string2.0.1间接
npmmicromark-util-encode2.0.1间接
npmmicromark-util-html-tag-name2.0.1间接
npmmicromark-util-normalize-identifier2.0.1间接
npmmicromark-util-resolve-all2.0.1间接
npmmicromark-util-sanitize-uri2.0.1间接
npmmicromark-util-subtokenize2.1.0间接
npmmicromark-util-symbol2.0.1间接
npmmicromark-util-types2.0.2间接
npmmicromatch4.0.8间接
npmminimatch3.1.5间接
npmminimatch5.1.9间接
npmminimist1.2.8间接
npmminipass7.1.3间接
npmminizlib3.1.0间接
npmmkdirp0.5.6间接
npmmlly1.8.2间接
npmmri1.2.0间接
npmms2.1.3间接
npmmurmurhash-js1.0.0间接
npmnanoid3.3.16间接
npmno-case3.0.4间接
npmnode-fetch2.7.0间接
npmnode-releases2.0.51间接
npmnormalize-path3.0.0间接
npmnosleep.js0.12.0间接
npmnth-check2.1.1间接
npmobug2.1.3间接
npmonce1.4.0间接
npmoutdent0.5.0间接
npmoxc-parser0.137.0间接
npmoxc-resolver11.21.3间接
npmp-filter2.1.0间接
npmp-limit2.3.0间接
npmp-locate4.1.0间接
npmp-map2.1.0间接
npmp-map7.0.4间接
npmp-try2.2.0间接
npmpackage-manager-detector0.2.11间接
npmpackage-manager-detector1.8.0间接
npmpad-left2.1.0间接
npmpako1.0.11间接
npmpako2.1.0间接
npmpako3.0.0间接
npmparent-module1.0.1间接
npmparse-entities4.0.2间接
npmparse-headers2.0.6间接
npmparse-json5.2.0间接
npmpath-exists4.0.0间接
npmpath-is-absolute1.0.1间接
npmpath-key3.1.1间接
npmpath-type4.0.0间接
npmpathe2.0.3间接
npmpbf4.0.1间接
npmperformance-now2.1.0间接
npmpicocolors1.1.1间接
npmpicomatch2.3.2间接
npmpicomatch4.0.5间接
npmpkg-types1.3.1间接
npmpkg-types2.3.1间接
npmplaywright1.61.1间接
npmplaywright-core1.61.1间接
npmpostcss-value-parser4.2.0间接
npmpotpack2.1.0间接
npmpreact10.29.7间接
npmprettier2.8.8间接
npmprocess-nextick-args2.0.1间接
npmproperty-information7.1.0间接
npmprotobufjs8.6.6间接
npmprotocol-buffers-schema3.6.1间接
npmquansync0.2.11间接
npmquery-selector-shadow-dom1.0.1间接
npmqueue-microtask1.2.3间接
npmquick-lru6.1.2间接
npmquickjs-emscripten0.32.0间接
npmquickjs-emscripten^0.32.0间接
npmquickjs-emscripten-core0.32.0间接
npmquickselect3.0.0间接
npmraf3.4.1间接
npmrbush4.0.1间接
npmreact-remove-scroll2.7.2间接
npmreact-remove-scroll-bar2.3.8间接
npmreact-style-singleton2.2.3间接
npmread-yaml-file2.1.0间接
npmreadable-stream2.3.8间接
npmreadable-stream3.6.2间接
npmreaddir-glob1.1.3间接
npmreaddirp3.6.0间接
npmregenerator-runtime0.13.11间接
npmremark-parse11.0.0间接
npmremark-rehype11.1.2间接
npmremark-stringify11.0.0间接
npmrepeat-string1.6.1间接
npmresolve-from4.0.0间接
npmresolve-from5.0.0间接
npmresolve-pkg-maps1.0.0间接
npmresolve-protobuf-schema2.1.0间接
npmreusify1.1.0间接
npmrgbcolor1.0.1间接
npmrimraf2.7.1间接
npmrolldown1.1.5间接
npmrollup4.62.2间接
npmrun-parallel1.2.0间接
npmsafe-buffer5.1.2间接
npmsafer-buffer2.1.2间接
npmsax1.6.0间接
npmsaxes5.0.1间接
npmscheduler0.27.0间接
npmsemver6.3.1间接
npmsemver7.8.5间接
npmsetimmediate1.0.5间接
npmshebang-command2.0.0间接
npmshebang-regex3.0.0间接
npmsiginfo2.0.0间接
npmsignal-exit4.1.0间接
npmslash3.0.0间接
npmsmol-toml1.7.0间接
npmsnake-case3.0.4间接
npmsource-map-js1.2.1间接
npmspace-separated-tokens2.0.2间接
npmspawndamnit3.0.1间接
npmstackback0.0.2间接
npmstackblur-canvas2.7.0间接
npmstandardwebhooks1.0.0间接
npmstd-env4.2.0间接
npmstream-read-all3.0.1间接
npmstring_decoder1.1.1间接
npmstringify-entities4.0.4间接
npmstrip-ansi6.0.1间接
npmstrip-bom4.0.0间接
npmstrip-json-comments5.0.3间接
npmstyle-mod4.1.3间接
npmstyle-to-js1.1.21间接
npmstyle-to-object1.0.14间接
npmsupercluster8.0.1间接
npmsupports-color7.2.0间接
npmsvg-parser2.0.4间接
npmsvg-pathdata6.0.3间接
npmsvgo4.0.2间接
npmsvgo^4.0.2间接
npmtable-layout3.0.2间接
npmtable-layout4.1.1间接
npmtapable2.3.3间接
npmtar7.5.20间接
npmtar^7.5.20间接
npmtar-stream2.2.0间接
npmterm-size2.2.1间接
npmtext-segmentation1.0.3间接
npmtinybench2.9.0间接
npmtinyexec1.2.4间接
npmtinyglobby0.2.17间接
npmtinyqueue3.0.0间接
npmtinyrainbow3.1.0间接
npmtmp0.2.7间接
npmto-regex-range5.0.1间接
npmtopojson-client3.1.0间接
npmtr460.0.3间接
npmtraverse0.3.9间接
npmtrim-lines3.0.1间接
npmtrough2.2.0间接
npmts-algebra2.0.0间接
npmtslib2.8.1间接
npmtsx4.23.1间接
npmtsx^4.23.1间接
npmturbo2.10.5间接
npmtypescript5.9.3间接
npmtypescript6.0.3间接
npmtypescript^5.3.0间接
npmtypescript^6.0.3间接
npmtypical4.0.0间接
npmtypical7.3.0间接
npmufo1.6.4间接
npmunbash4.0.3间接
npmundici-types7.24.6间接
npmundici-types8.3.0间接
npmunified11.0.5间接
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间接
npmuniversalify0.1.2间接
npmunplugin2.3.11间接
npmunplugin-icons23.0.1间接
npmunplugin-icons^23.0.1间接
npmunzipper0.10.14间接
npmupdate-browserslist-db1.2.3间接
npmurijs1.19.11间接
npmuse-callback-ref1.3.3间接
npmuse-sidecar1.1.3间接
npmuse-sync-external-store1.6.0间接
npmutil-deprecate1.0.2间接
npmutrie1.0.2间接
npmuuid11.1.1间接
npmvfile6.0.3间接
npmvfile-message4.0.3间接
npmvite8.1.5间接
npmvite^8.1.5间接
npmvite-plugin-static-copy4.1.1间接
npmvite-plugin-static-copy^4.1.1间接
npmvite-plugin-top-level-await1.6.0间接
npmvite-plugin-top-level-await^1.5.0间接
npmvite-plugin-top-level-await^1.6.0间接
npmvite-plugin-wasm3.6.0间接
npmvite-plugin-wasm^3.6.0间接
npmvitest4.1.10间接
npmvitest^4.1.10间接
npmw3c-keyname2.2.8间接
npmwalk-up-path4.0.0间接
npmweb-vitals5.3.0间接
npmweb-worker1.5.0间接
npmwebidl-conversions3.0.1间接
npmwebpack-virtual-modules0.6.2间接
npmwhatwg-mimetype3.0.0间接
npmwhatwg-url5.0.0间接
npmwhich2.0.2间接
npmwhy-is-node-running2.3.0间接
npmwkt-parser1.5.5间接
npmwordwrapjs5.1.1间接
npmwrappy1.0.2间接
npmxml-utils1.10.2间接
npmxmlchars2.2.0间接
npmyallist3.1.1间接
npmyallist5.0.0间接
npmyaml2.9.0间接
npmzip-stream4.1.1间接
npmzod4.4.3间接
npmzstddec0.2.0间接
npmzwitch2.0.4间接
PyPImaturin间接
PyPImkdocs间接
PyPImkdocs-material间接
PyPImkdocs-mermaid2-plugin间接
PyPImkdocs-minify-plugin间接
依赖安全公告 5

该仓库未发布可被索引解析的包,因此评估的是其自身的依赖图——共 1,306 个包,其中也包含从不交付的开发与测试版本固定:5 个存在已知公告,0 个为直接依赖。 有 156 个无法评估——没有已解析的版本、生态系统不受支持,或不在所列包清单之内。

软件包版本关系严重程度公告数修复版本
dompurify3.4.11间接13.4.12
async-std1.13.2间接未知1
crossbeam-epoch0.9.18间接未知10.9.20
memmap20.5.10间接未知10.9.11
paste1.0.15间接未知1

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

原始 JSON 报告 机器可读
{
  "data": {
    "repo": {
      "topics": [
        "3d-viewer",
        "columnar",
        "ifc",
        "rust",
        "webgpu",
        "cli",
        "ifc-parser",
        "script-editor",
        "bcf",
        "ids",
        "mcp",
        "pointcloud",
        "sdk"
      ],
      "is_fork": false,
      "size_kb": 171335,
      "has_wiki": false,
      "homepage": "https://ifclite.dev",
      "languages": {
        "C#": 3623599,
        "CSS": 99501,
        "HTML": 79674,
        "Rust": 6520393,
        "Shell": 56539,
        "Python": 35581,
        "Dockerfile": 4382,
        "JavaScript": 458271,
        "TypeScript": 25297374
      },
      "pushed_at": "2026-07-21T17:08:26Z",
      "created_at": "2026-01-10T16:00:00Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-21T17:05:02Z",
      "description": "Parse, view, query, edit, and export IFC, IDS, BCF, pointclouds and more AEC stuff. In the browser, server or desktop. ",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MPL-2.0",
      "default_branch": "main",
      "license_spdx_raw": "MPL-2.0",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript",
        "Rust",
        "C#"
      ]
    },
    "owner": {
      "blog": null,
      "name": "LTplus AG",
      "type": "Organization",
      "login": "LTplus-AG",
      "company": null,
      "location": null,
      "followers": 16,
      "avatar_url": "https://avatars.githubusercontent.com/u/166899685?v=4",
      "created_at": "2024-04-13T06:31:31Z",
      "is_verified": null,
      "public_repos": 7,
      "account_age_days": 829
    },
    "license": {
      "state": "standard",
      "spdx_id": "MPL-2.0",
      "raw_spdx": "MPL-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "@ifc-lite/geometry@3.4.0",
          "kind": "other",
          "published_at": "2026-07-21T11:36:15Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.1.4",
          "kind": "other",
          "published_at": "2026-07-21T11:36:12Z"
        },
        {
          "tag": "v4.1.4",
          "kind": "patch",
          "published_at": "2026-07-21T11:36:17Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.1.3",
          "kind": "other",
          "published_at": "2026-07-19T12:37:42Z"
        },
        {
          "tag": "@ifc-lite/geometry@3.3.1",
          "kind": "other",
          "published_at": "2026-07-19T12:37:40Z"
        },
        {
          "tag": "v4.1.3",
          "kind": "patch",
          "published_at": "2026-07-19T12:37:45Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.1.2",
          "kind": "other",
          "published_at": "2026-07-19T05:58:37Z"
        },
        {
          "tag": "v4.1.2",
          "kind": "patch",
          "published_at": "2026-07-19T05:58:40Z"
        },
        {
          "tag": "@ifc-lite/data@2.8.0",
          "kind": "other",
          "published_at": "2026-07-17T20:57:39Z"
        },
        {
          "tag": "@ifc-lite/lists@1.21.0",
          "kind": "other",
          "published_at": "2026-07-17T20:57:36Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.34",
          "kind": "other",
          "published_at": "2026-07-17T20:57:33Z"
        },
        {
          "tag": "@ifc-lite/parser@3.10.1",
          "kind": "other",
          "published_at": "2026-07-17T20:57:30Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.1.1",
          "kind": "other",
          "published_at": "2026-07-17T20:57:27Z"
        },
        {
          "tag": "@ifc-lite/server-client@1.20.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:32Z"
        },
        {
          "tag": "@ifc-lite/mutations@1.21.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:29Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.1.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:26Z"
        },
        {
          "tag": "@ifc-lite/lists@1.20.1",
          "kind": "other",
          "published_at": "2026-07-17T15:12:23Z"
        },
        {
          "tag": "@ifc-lite/parser@3.10.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:20Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.33",
          "kind": "other",
          "published_at": "2026-07-17T15:12:17Z"
        },
        {
          "tag": "@ifc-lite/cli@0.20.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:14Z"
        },
        {
          "tag": "@ifc-lite/drawing-2d@1.19.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:11Z"
        },
        {
          "tag": "@ifc-lite/geometry@3.3.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:08Z"
        },
        {
          "tag": "@ifc-lite/renderer@1.39.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:05Z"
        },
        {
          "tag": "@ifc-lite/pointcloud@0.4.0",
          "kind": "other",
          "published_at": "2026-07-17T15:12:02Z"
        },
        {
          "tag": "@ifc-lite/ifcx@2.3.1",
          "kind": "other",
          "published_at": "2026-07-17T15:11:59Z"
        },
        {
          "tag": "@ifc-lite/data@2.7.0",
          "kind": "other",
          "published_at": "2026-07-17T15:11:56Z"
        },
        {
          "tag": "@ifc-lite/export@2.6.0",
          "kind": "other",
          "published_at": "2026-07-17T15:11:53Z"
        },
        {
          "tag": "v4.1.1",
          "kind": "patch",
          "published_at": "2026-07-17T15:12:42Z"
        },
        {
          "tag": "@ifc-lite/geometry@3.2.1",
          "kind": "other",
          "published_at": "2026-07-17T04:50:14Z"
        },
        {
          "tag": "@ifc-lite/lists@1.20.0",
          "kind": "other",
          "published_at": "2026-07-17T04:50:11Z"
        },
        {
          "tag": "@ifc-lite/pointcloud@0.3.6",
          "kind": "other",
          "published_at": "2026-07-17T04:50:08Z"
        },
        {
          "tag": "@ifc-lite/parser@3.9.1",
          "kind": "other",
          "published_at": "2026-07-17T04:50:05Z"
        },
        {
          "tag": "@ifc-lite/data@2.6.0",
          "kind": "other",
          "published_at": "2026-07-17T04:50:02Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.0.1",
          "kind": "other",
          "published_at": "2026-07-17T04:49:59Z"
        },
        {
          "tag": "@ifc-lite/bcf@1.16.3",
          "kind": "other",
          "published_at": "2026-07-17T04:49:56Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.32",
          "kind": "other",
          "published_at": "2026-07-17T04:49:53Z"
        },
        {
          "tag": "@ifc-lite/export@2.5.3",
          "kind": "other",
          "published_at": "2026-07-17T04:49:50Z"
        },
        {
          "tag": "@ifc-lite/cache@2.2.1",
          "kind": "other",
          "published_at": "2026-07-17T04:49:47Z"
        },
        {
          "tag": "@ifc-lite/renderer@1.38.1",
          "kind": "other",
          "published_at": "2026-07-17T04:49:44Z"
        },
        {
          "tag": "@ifc-lite/encoding@1.14.11",
          "kind": "other",
          "published_at": "2026-07-17T04:49:41Z"
        },
        {
          "tag": "@ifc-lite/mcp@0.9.1",
          "kind": "other",
          "published_at": "2026-07-17T04:49:38Z"
        },
        {
          "tag": "@ifc-lite/server-client@1.19.0",
          "kind": "other",
          "published_at": "2026-07-17T04:49:35Z"
        },
        {
          "tag": "@ifc-lite/collab-server@0.5.0",
          "kind": "other",
          "published_at": "2026-07-17T04:49:32Z"
        },
        {
          "tag": "@ifc-lite/parser@3.9.0",
          "kind": "other",
          "published_at": "2026-07-16T08:44:57Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.31",
          "kind": "other",
          "published_at": "2026-07-16T08:44:54Z"
        },
        {
          "tag": "@ifc-lite/lists@1.19.0",
          "kind": "other",
          "published_at": "2026-07-16T08:44:52Z"
        },
        {
          "tag": "@ifc-lite/renderer@1.38.0",
          "kind": "other",
          "published_at": "2026-07-15T15:40:13Z"
        },
        {
          "tag": "@ifc-lite/merge@0.3.1",
          "kind": "other",
          "published_at": "2026-07-15T07:22:44Z"
        },
        {
          "tag": "@ifc-lite/collab-server@0.4.1",
          "kind": "other",
          "published_at": "2026-07-15T07:22:41Z"
        },
        {
          "tag": "@ifc-lite/mutations@1.20.0",
          "kind": "other",
          "published_at": "2026-07-12T22:03:20Z"
        },
        {
          "tag": "@ifc-lite/collab-server@0.4.0",
          "kind": "other",
          "published_at": "2026-07-12T22:03:17Z"
        },
        {
          "tag": "@ifc-lite/mcp@0.9.0",
          "kind": "other",
          "published_at": "2026-07-12T22:03:14Z"
        },
        {
          "tag": "@ifc-lite/collab@0.4.0",
          "kind": "other",
          "published_at": "2026-07-12T22:03:11Z"
        },
        {
          "tag": "@ifc-lite/merge@0.3.0",
          "kind": "other",
          "published_at": "2026-07-12T22:03:08Z"
        },
        {
          "tag": "@ifc-lite/cli@0.19.0",
          "kind": "other",
          "published_at": "2026-07-12T22:03:05Z"
        },
        {
          "tag": "@ifc-lite/collab@0.3.0",
          "kind": "other",
          "published_at": "2026-07-11T20:30:03Z"
        },
        {
          "tag": "@ifc-lite/collab-server@0.3.0",
          "kind": "other",
          "published_at": "2026-07-11T20:30:00Z"
        },
        {
          "tag": "@ifc-lite/mcp@0.8.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:57Z"
        },
        {
          "tag": "@ifc-lite/mutations@1.19.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:54Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.30",
          "kind": "other",
          "published_at": "2026-07-11T20:29:51Z"
        },
        {
          "tag": "@ifc-lite/diff@0.4.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:48Z"
        },
        {
          "tag": "@ifc-lite/wasm@4.0.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:45Z"
        },
        {
          "tag": "@ifc-lite/viewer-core@0.2.10",
          "kind": "other",
          "published_at": "2026-07-11T20:29:42Z"
        },
        {
          "tag": "@ifc-lite/geometry@3.2.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:39Z"
        },
        {
          "tag": "@ifc-lite/clash@1.6.3",
          "kind": "other",
          "published_at": "2026-07-11T20:29:36Z"
        },
        {
          "tag": "@ifc-lite/extensions@0.4.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:33Z"
        },
        {
          "tag": "@ifc-lite/renderer@1.37.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:30Z"
        },
        {
          "tag": "@ifc-lite/merge@0.2.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:27Z"
        },
        {
          "tag": "@ifc-lite/parser@3.8.5",
          "kind": "other",
          "published_at": "2026-07-11T20:29:24Z"
        },
        {
          "tag": "@ifc-lite/cli@0.18.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:21Z"
        },
        {
          "tag": "@ifc-lite/ifcx@2.3.0",
          "kind": "other",
          "published_at": "2026-07-11T20:29:18Z"
        },
        {
          "tag": "@ifc-lite/renderer@1.36.0",
          "kind": "other",
          "published_at": "2026-07-11T07:20:42Z"
        },
        {
          "tag": "@ifc-lite/cache@2.2.0",
          "kind": "other",
          "published_at": "2026-07-11T07:20:39Z"
        },
        {
          "tag": "@ifc-lite/data@2.5.3",
          "kind": "other",
          "published_at": "2026-07-10T16:48:38Z"
        },
        {
          "tag": "@ifc-lite/lists@1.18.4",
          "kind": "other",
          "published_at": "2026-07-10T16:48:35Z"
        },
        {
          "tag": "@ifc-lite/parser@3.8.4",
          "kind": "other",
          "published_at": "2026-07-10T16:48:32Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.29",
          "kind": "other",
          "published_at": "2026-07-10T16:48:29Z"
        },
        {
          "tag": "@ifc-lite/wasm@3.0.15",
          "kind": "other",
          "published_at": "2026-07-10T11:10:12Z"
        },
        {
          "tag": "@ifc-lite/collab-server@0.2.6",
          "kind": "other",
          "published_at": "2026-07-10T11:10:09Z"
        },
        {
          "tag": "@ifc-lite/collab@0.2.7",
          "kind": "other",
          "published_at": "2026-07-10T11:10:06Z"
        },
        {
          "tag": "@ifc-lite/parser@3.8.3",
          "kind": "other",
          "published_at": "2026-07-10T11:10:03Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.28",
          "kind": "other",
          "published_at": "2026-07-10T11:10:00Z"
        },
        {
          "tag": "@ifc-lite/geometry@3.1.5",
          "kind": "other",
          "published_at": "2026-07-10T11:09:57Z"
        },
        {
          "tag": "@ifc-lite/renderer@1.35.2",
          "kind": "other",
          "published_at": "2026-07-10T11:09:54Z"
        },
        {
          "tag": "@ifc-lite/ifcx@2.2.3",
          "kind": "other",
          "published_at": "2026-07-10T11:09:51Z"
        },
        {
          "tag": "@ifc-lite/query@1.14.13",
          "kind": "other",
          "published_at": "2026-07-10T07:57:54Z"
        },
        {
          "tag": "@ifc-lite/server-bin@1.16.6",
          "kind": "other",
          "published_at": "2026-07-10T07:57:51Z"
        },
        {
          "tag": "@ifc-lite/mcp@0.7.2",
          "kind": "other",
          "published_at": "2026-07-10T07:57:48Z"
        },
        {
          "tag": "@ifc-lite/wasm@3.0.14",
          "kind": "other",
          "published_at": "2026-07-10T07:57:45Z"
        },
        {
          "tag": "@ifc-lite/lens@1.17.2",
          "kind": "other",
          "published_at": "2026-07-10T07:57:42Z"
        },
        {
          "tag": "@ifc-lite/geometry@3.1.4",
          "kind": "other",
          "published_at": "2026-07-10T07:57:40Z"
        },
        {
          "tag": "@ifc-lite/mutations@1.18.1",
          "kind": "other",
          "published_at": "2026-07-10T07:57:36Z"
        },
        {
          "tag": "@ifc-lite/pointcloud@0.3.5",
          "kind": "other",
          "published_at": "2026-07-10T07:57:33Z"
        },
        {
          "tag": "@ifc-lite/parser@3.8.2",
          "kind": "other",
          "published_at": "2026-07-10T07:57:31Z"
        },
        {
          "tag": "@ifc-lite/spatial@1.14.12",
          "kind": "other",
          "published_at": "2026-07-10T07:57:27Z"
        },
        {
          "tag": "@ifc-lite/server-client@1.18.3",
          "kind": "other",
          "published_at": "2026-07-10T07:57:24Z"
        },
        {
          "tag": "@ifc-lite/lists@1.18.3",
          "kind": "other",
          "published_at": "2026-07-10T07:57:21Z"
        },
        {
          "tag": "@ifc-lite/sandbox@1.16.3",
          "kind": "other",
          "published_at": "2026-07-10T07:57:18Z"
        },
        {
          "tag": "@ifc-lite/viewer-core@0.2.9",
          "kind": "other",
          "published_at": "2026-07-10T07:57:15Z"
        },
        {
          "tag": "@ifc-lite/ids@1.15.27",
          "kind": "other",
          "published_at": "2026-07-10T07:57:12Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "9a70a18dc1afdb31447690e6a5b22c2912c1acad",
          "body": "…des (#1838)\n\nThree high-severity advisories were open, all on transitive npm packages\nthat no direct dependency pins tightly enough to pull the fix in on its\nown:\n\n- GHSA-3jxr-9vmj-r5cp brace-expansion 1.1.15 (via minimatch@3.1.5) and\n  2.1.1 (via minimatch@5.1.9) - exponential-time expansion of\n  \n[…]\nready\nuses for picomatch, one override per major line since 1.x and 2.x are\nboth in the tree and there is no single range covering both.\n\nLockfile-only otherwise; no direct dependency versions change.",
          "is_bot": false,
          "headline": "chore(deps): resolve all three open Dependabot alerts via pnpm overri…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-21T17:04:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c9852959b2e2d7c42dca9a3289e9181f161e9bdf",
          "body": "…1837)\n\n`production_smiley_all_host_walls_have_holes` reported 3/190 hosts as\n\"uncut\" on a clean checkout. The kernel was right and the test was\nwrong: `process_element_with_voids` may return a LOCAL-FRAME mesh\n(`origin != 0`) — the parametric rect fast path does for 29 of the 190\nhosts in that fixt\n[…]\nthat promise world coordinates. Verified: with the fold the cut\nhosts pass 190/190, and with the void cut deliberately skipped the sweep\nstill flags 190/190 as uncut, so the assertion keeps its teeth.",
          "is_bot": false,
          "headline": "test(geometry): fold mesh origin before world-space void ray-casts (#…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-21T16:51:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8f0b82e242c8eb298e1d3039ee30b27f3d064cfe",
          "body": "…th 28 updates (#1834)\n\nBumps the npm-minor-and-patch group with 28 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@changesets/cli](https://github.com/changesets/changesets) | `2.31.0` | `2.31.1` |\n| [knip](https://github.com/webpro-nl/knip/tree/HEAD/packages/knip) | `6.\n[…]\nupdate:semver-minor\n  dependency-group: npm-minor-and-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the npm-minor-and-patch group across 1 directory wi…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:37:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ee6ce1af851ec59ad870098a6100b11825cb9eff",
          "body": "…with 11 updates (#1833)\n\n---\nupdated-dependencies:\n- dependency-name: futures-core\n  dependency-version: 0.3.33\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: cargo-minor-and-patch\n- dependency-name: futures-util\n  dependency-version: 0.3.33\n  de\n[…]\ndate:semver-patch\n  dependency-group: cargo-minor-and-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the cargo-minor-and-patch group across 1 directory …",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:37:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "087789bf9cfbf436072aece3448485f8b59b532c",
          "body": "Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6.3.0 to 7.0.0.\n- [Release notes](https://github.com/actions/setup-python/releases)\n- [Commits](https://github.com/actions/setup-python/compare/ece7cb06caefa5fff74198d8649806c4678c61a1...5fda3b95a4ea91299a34e894583c3862153e4b\n[…]\nirect:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump actions/setup-python from 6.3.0 to 7.0.0 (#1823)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:37:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "679072f875d70bb53c7e2c7a2f0e1a9d405081d7",
          "body": "Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6.4.0 to 7.0.0.\n- [Release notes](https://github.com/actions/setup-node/releases)\n- [Commits](https://github.com/actions/setup-node/compare/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e...820762786026740c76f36085b0efc47a31fe5020)\n\n---\n[…]\nirect:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 (#1825)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:37:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "19c93b1f3067568f4723ede1cc37d2d811344108",
          "body": "Bumps [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain) from fa04a1451ff1842e2626ccb99004d0195b455a88 to 2c7215f132e9ebf062739d9130488b56d53c060c.\n- [Release notes](https://github.com/dtolnay/rust-toolchain/releases)\n- [Commits](https://github.com/dtolnay/rust-toolchain/compare/fa0\n[…]\n739d9130488b56d53c060c\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump dtolnay/rust-toolchain (#1826)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:36:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3267e7a45f9b3d2abf892fd60cc34917d8336311",
          "body": "Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 5.4.0 to 6.0.0.\n- [Release notes](https://github.com/actions/setup-dotnet/releases)\n- [Commits](https://github.com/actions/setup-dotnet/compare/26b0ec14cb23fa6904739307f278c14f94c95bf1...a98b56852c35b8e3190ac28c8c2271da59106c\n[…]\nirect:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump actions/setup-dotnet from 5.4.0 to 6.0.0 (#1824)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:36:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f04999aedacd08eab144117a9a4edda7ab458237",
          "body": "Bumps the actions-minor-and-patch group with 1 update: [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish).\n\n\nUpdates `pypa/gh-action-pypi-publish` from 1.14.0 to 1.14.1\n- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)\n- [Commits](https://github.co\n[…]\nte:semver-patch\n  dependency-group: actions-minor-and-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump pypa/gh-action-pypi-publish (#1822)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-21T16:36:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "212e086bcfb60526848aab1d9e0709b5b53a45d9",
          "body": "… controls (#1829)\n\n* feat(viewer): add Elements tab to ribbon menu and optimize navigation controls\n\n* fix(viewer): normalize hierarchy mode state naming",
          "is_bot": false,
          "headline": "feat(viewer): add Elements tab to ribbon menu and optimize navigation…",
          "author_name": "xyzbety",
          "author_login": "xyzbety",
          "committed_at": "2026-07-21T16:28:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0aa186713d982bea64ae3d422f9ae7cf2e855d3b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1831)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-21T11:28:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "62f0d4fe8178af6eb09f0a0efc7486da8725a8d0",
          "body": "…cut region (#1832)\n\n`refine_high_aspect_slivers` exists to repair the high-aspect corner slivers a\ncut emits at an opening rim (#1007), but the prism void fast path ran it over\nthe WHOLE host. On models whose walls are legitimately full of long-thin\nauthored faces — thin steel — it therefore also b\n[…]\nrately), cargo test -p ifc-lite-processing --no-fail-fast including\nmesh_determinism and the module-size ratchet, clippy clean, and\npnpm test:wasm-contract 27/27 against a wasm built from this branch.",
          "is_bot": false,
          "headline": "perf(geometry): scope the prism void path's sliver refinement to the …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-21T09:36:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "52d16e17817ffcacfec2f58bc592cec252f324b8",
          "body": "…file open (#1830)\n\n* perf(viewer,geometry): prewarm the engine wasm on idle instead of on file open\n\nThe ~3.9 MB engine binary (~1.3 MB brotli) was fetched lazily by\n`processParallel`, so on a cold cache the entire download sat between \"user\npicks a file\" and \"first geometry\" — nothing overlapped t\n[…]\nent claiming the dynamic import keeps @ifc-lite/geometry out\nof the entry chunk — useIfcLoader value-imports GeometryProcessor, so it is\nalready in the entry graph and the import resolves from memory.",
          "is_bot": false,
          "headline": "perf(viewer,geometry): prewarm the engine wasm on idle instead of on …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-21T08:07:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7ab8b61b4b7686f793cb6d25383d53c819a79fb6",
          "body": "…ow/Lowest (#1809) (#1813)\n\n* perf(geometry): drop parametric-profile fillets to sharp corners below Medium (#1809)\n\nSteel sections authored as parametric profiles (IfcI/L/U/TShapeProfileDef)\ncarry their root fillets and toe edge radii as attributes, and the outline\nbuilders tessellate each one into\n[…]\nest's comment called the IfcUShapeProfileDef fixture a\n\"C-shape\" — distinct entity types in IFC. Describe what the cases actually\ncover (mixed concave/convex radii) instead of naming the wrong entity.",
          "is_bot": false,
          "headline": "perf(geometry): drop parametric-profile fillets to sharp corners at L…",
          "author_name": "Yuri Isachenkov",
          "author_login": "Blogbotana",
          "committed_at": "2026-07-19T12:44:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ec2efa6c9f6fb9180f9b3efe987fddbedd5b6844",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1821)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-19T12:29:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c57098768d27ce08250206f0a55d1d048798c669",
          "body": "…819)\n\n* feat(viewer): replace ribbon menu icons with custom colored icons\n\n* Update apps/viewer/src/icons/index.ts\n\nCo-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>\n\n---------\n\nCo-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>\nCo-authored-by: Louis Trümpler <78563314+louistrue@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat(viewer): replace ribbon menu icons with custom colored icons (#1…",
          "author_name": "xyzbety",
          "author_login": "xyzbety",
          "committed_at": "2026-07-19T12:17:27Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "fb99bda31397cff2fce7077a8553d2247c2dd151",
          "body": "…tart wait (#1818)\n\n* fix(viewer): share compiled wasm module across workers to kill cold-start wait\n\nCompile the geometry engine's WebAssembly.Module ONCE on the main thread and\nstructured-clone it to every geometry + pre-pass worker, which initSync it\n(cheap) instead of each independently fetching\n[…]\nre unaffected.\nGeometry output is unchanged (verified: identical 30456 meshes on a 68 MB\nISSUE_098 model).\n\n* fix(viewer): key shared wasm module cache by resolved URL (federation/version-skew safety)",
          "is_bot": false,
          "headline": "fix(viewer): share compiled wasm module across workers to kill cold-s…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-19T12:07:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "74b9cd2ae0c8bd7888536c882baf809dd4f9e5d8",
          "body": "… (misplaced walls in 4.1.2) (#1820)\n\n* fix(geometry): void fast-path no longer drops host local-frame origin (misplaced walls)\n\nThe analytic prism / coaxial-union void fast paths (#1806/#1815) run\nconsolidate_coplanar on their re-triangulated cut host. That helper rebuilt\ninto a bare Mesh::new() wh\n[…]\nurvives\na real consolidation.\n\n* test(geometry): refresh consolidate.rs ratchet budget for the local-frame regression test\n\n* docs(landing): regenerate landing-bench region for refreshed 4.1.2 numbers",
          "is_bot": false,
          "headline": "fix(geometry): void fast-path no longer drops host local-frame origin…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-19T11:41:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "09e788290bfeb59326811dab4e31fad0d6beb001",
          "body": "… (#1817)\n\nRe-ran the full corpus on ifc-lite 4.1.2 (2D + analytic-prism + coaxial-union\nvoid fast paths, #1806/#1815) vs web-ifc 0.0.77, same machine/session.\n\nHeadline: the CSG-heavy models that dragged the corpus are now wins —\nISSUE_098 native 9.70s->1.62s (6x), WASM 55.71s->9.62s (5.8x); ISSUE_\n[…]\n2s. Native (10-thread) now beats web-ifc on the full corpus sum\n(~7.3s vs ~14.4s, 19/21 models). WASM single-thread numbers refreshed too\n(4.0.1 -> 4.1.2). IfcOpenShell columns unchanged (not re-run).",
          "is_bot": false,
          "headline": "docs(landing): refresh benchmark data for 4.1.2 (void fast-path perf)…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-19T06:12:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b7f9f29a92399c5942c466c20718396c172099d5",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1814)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-19T05:50:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b016b1dae1a09921acd6f82d42c9f4eeb57310a5",
          "body": "…ers (i129) (#1815)\n\n* perf(geometry): coaxial footprint union for overlapping opening clusters (i129)\n\nOpenings whose cutter prisms OVERLAP cannot join the disjoint-cutter batch and\notherwise fall to the O(N) sequential exact-kernel path — the dominant remaining\nvoid cost on i129's opening-dense sl\n[…]\ns harness on ISSUE_129 + duplex shows no verdict regression; i129\ntriangle count and t_geom are unchanged (all i129 coaxial clusters are genuine\naxis-aligned prisms, so the guards defer none of them).",
          "is_bot": false,
          "headline": "perf(geometry): coaxial footprint union for overlapping opening clust…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-19T05:14:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ef0743dd970a844f5190fadb9717ff792cded31a",
          "body": "…c-prism opening subtraction (#1806)\n\n* perf(geometry): 2D opening subtraction fast path for extruded hosts\n\nWire IfcOpenShell's `boolean-attempt-2d` technique into the void-cutting\npipeline. For an extruded host whose openings penetrate straight through the\nextrusion depth (parallel to the host axi\n[…]\narea is <= MIN_AREA_THRESHOLD and asserts shapes == 2.\n\nAlso fixes two `clippy::manual_is_multiple_of` errors in prism_cut.rs\n(introduced by the prior round) that were failing the CI clippy lint gate.",
          "is_bot": false,
          "headline": "perf(geometry): beat web-ifc 0.0.77 on the full corpus — 2D + analyti…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-18T16:38:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a834cf59a324f9d808b795aaa65c23ed6e7df035",
          "body": "…urces (#1807) (#1808)\n\n* perf(geometry): don't-bake instancing keeps uniform indexed-colour sources (#1807)\n\nThe #858 palette guard excluded every IfcIndexedColourMap source from the\ndon't-bake instanced path, but `split_mesh_by_indexed_colour` only splits when\n>=2 palette entries are actually used\n[…]\nrget) otherwise armed every per-job router with an empty set, a pointless\n  per-element lookup plus Arc allocation.\n- Clarify the fixture's 1-based ColourIndex vs 0-based palette indexing in the test.",
          "is_bot": false,
          "headline": "perf(geometry): don't-bake instancing keeps uniform indexed-colour so…",
          "author_name": "Yuri Isachenkov",
          "author_login": "Blogbotana",
          "committed_at": "2026-07-18T14:43:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "596aebc7ceb4a1a9d071c2c7f09f4baef0b6e3ee",
          "body": null,
          "is_bot": false,
          "headline": "Delete CONTRIBUTORS.md (#1812)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-18T05:21:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cf871914a5e0647e21c36d1516bb86dfa52546e",
          "body": "…34 (#1811)\n\nCommit bfc7dd4f (#1734) was a 3-line collab-server writeAtomic bugfix\nthat also dragged in 246 lines of stray Railway agent output:\n\n- .railway-config-pull-29151/railway.ts  throwaway `railway config pull` placeholder\n- .railway-config-pull-29183/railway.ts  identical placeholder\n- .age\n[…]\n canonical .railway/railway.ts,\nand agent skills belong under .claude/, not .agents/. Delete all three and\nadd a .gitignore guard so `railway config pull` scratch dirs cannot leak\ninto a commit again.",
          "is_bot": false,
          "headline": "chore: remove Railway config-pull cruft accidentally committed in #17…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-18T05:19:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b5e6b8a1583aa93a7047d517b94692e6d6aa278a",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1803)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T20:51:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e3378c4a0dd88fc774801e772be24b2f97aca7f7",
          "body": "* feat(lists): Count aggregation with multi-criteria grouping (#1790)\n\nMulti-criteria grouping in Lists: group by several columns in order\n(e.g. Building, then Storey) with a per-group instance Count at every\nnesting level, Bonsai-style.\n\nEngine (@ifc-lite/lists):\n- ListGrouping.columnIds: ordered g\n[…]\nemoved a column without removeColumn's\n  grouping + sum cleanup, stranding a stale grouping level until buildDefinition\n  pruned it. Delegate toggleColumn to add/removeColumn so the cleanup is shared.",
          "is_bot": false,
          "headline": "feat(lists): Count aggregation with multi-criteria grouping (#1801)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T19:42:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eb414a4aa62f81434911df41a7b1d6ccf6f054c3",
          "body": "…ecimation + wedge-cut discard (#1788) (#1802)\n\n* fix(geometry): cut missed Poroton opening + slab profile decimation + wedge-cut discard (#1788)\n\nCorrectness-pass residuals vs IfcOpenShell (T1-T6 sweep, issue #1788):\n\n- subtract_many volume oracle: verify the lenient (non-conforming) batch\n  agains\n[…]\ntry\nsuite green incl. #1167 undercut fixtures and the pinned mesh-determinism\nmanifest.\n\nRefs #1788\n\n* test(geometry): assert coordinates not just vertex counts in unit-invariance tests (review #1802)",
          "is_bot": false,
          "headline": "fix(geometry): cut missed Poroton opening + slab inner-tessellation d…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T19:38:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3441fb9e902daea8ed7d6f1a692e75618bbecb7e",
          "body": "…ar parser (#1799) (#1800)\n\nThe WASM/columnar path's EntityExtractor collapsed quoted STEP strings and\nbare enum tokens into indistinguishable JS strings, so #1779's unknown-type\nfallback had to reject by dotted-string SHAPE — blanking even a genuine\nquoted string '.USERDEFINED.', a one-directional \n[…]\nw run the real extractor end-to-end: bare vs quoted token kinds,\nthe #1779 regression scenario, nested/list enums unflagged, and the\ntokenizer-rule edge cases (.T., lowercase, non-enum dotted tokens).",
          "is_bot": false,
          "headline": "fix(parser): preserve STEP token kind (Enum vs String) through column…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T18:04:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3701f296ce3885b9766241558e8b8a9a8cfa57d7",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1786)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T15:04:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f07e9bf804d72ccbaf564feb5d9482909354fc49",
          "body": "…798)\n\n* ci(server): freshness guard for generated attr_indices.rs (#1780)\n\nThe server-parse root-attribute table (Description/ObjectType/Tag/\nPredefinedType positions per IFC type) is code-generated from\n@ifc-lite/parser's SCHEMA_REGISTRY — the same table the in-browser parse\nresolves attribute nam\n[…]\nd without a prior build. Build the\nparser first, matching generate:server-attr-indices. CI calls the script\ndirectly (not this wrapper), so it stays fast on the prebuilt artifact\n(CodeRabbit nitpick).",
          "is_bot": false,
          "headline": "ci(server): freshness guard for generated attr_indices.rs (#1780) (#1…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T14:45:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6102a222a6a71afcdab89855f1dcfa9437d3994f",
          "body": "…allback (#1779) (#1797)\n\n* fix(parser): drop STEP enum tokens from unknown-type root-attribute fallback (#1779)\n\nextractRootAttributesFromEntity's fixed-index fallback (types absent from the\nIFC4 schema registry) accepted any `typeof raw === 'string'`, but the extractor\nstores STEP bare enums as do\n[…]\n): correct affected columns for enum-fallback fix (#1779)\n\nextractRootAttributesFromEntity produces Tag/Description/ObjectType, not\na Class value — drop the overstated Class column claim (CodeRabbit).",
          "is_bot": false,
          "headline": "fix(parser): drop STEP enum tokens from unknown-type root-attribute f…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T14:45:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4c30f2d537efb3cdeb8ed9822d7e0f9de696b100",
          "body": "… README claim (#1796)\n\n* release: bump version anchor to 4.1.1 so crates republish the corrected README\n\nThe five published crates (ifc-lite-core/-geometry/-clash/-processing/\n-wasm) ship the repo root README (readme = ../../README.md), and the\n4.1.0 snapshots live on crates.io still advertise 'Geo\n[…]\ne.\n- Re-ran sync-versions: wasm-bindings' export pin 4.1.0 -> 4.1.1.\n\nThe export crate itself is publish-ready (workspace version/license,\ndescription, workspace-dep versions come from the root pins).",
          "is_bot": false,
          "headline": "release: bump anchor to 4.1.1 — republish crates without the stale 5x…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T14:37:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "613a1bf6e8f6b3678ce6bd214e746e82dd11f73d",
          "body": "…s (#1787) (#1795)\n\nIDS's appendInheritedPropertySets resolved type psets only via\nextractTypePropertiesOnDemand, which returns null when store.source is empty\n(server-parsed stores). So an IDS facet targeting a property that lives on the\nelement's IfcTypeProduct passed on the WASM path but was invi\n[…]\nhaped store where the wall's Pset_WallCommon lives on its\nIfcWallType — a facet on a type-only property passes, incl. one reachable only\nthrough a candidate values[]; a non-existent value still fails.",
          "is_bot": false,
          "headline": "fix(ids): resolve type-inherited property sets on server-parsed store…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T13:14:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "502c61bc7c0ae1ac313ed93ab335fdd942471c72",
          "body": "…1) (#1793)\n\n* feat(geometry,parser,renderer,viewer): render IFC4 IfcImageTexture from .ifcZIP (#1781)\n\nRead-side support for IFC4 texture styling, closing the exporter/viewer\nchicken-and-egg gap for the direct single-image case:\n\n- geometry (Rust): IfcImageTexture resolves to a TextureSource::Image\n[…]\npath) can never\ncontain UVs/textures, so serving it would render a textured archive\npermanently untextured for returning users. Mirror the existing\ncache-write skip on the read side. (Codex review P1)",
          "is_bot": false,
          "headline": "feat: render IFC4 IfcImageTexture surface textures from .ifcZIP (#178…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T12:45:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "631c3a0813e722fa65ff052108c2cea3ac905801",
          "body": "* feat(drawing-2d,viewer): DXF import as 2D reference underlay (#1782)\n\nParse ASCII DXF (LINE, LWPOLYLINE/POLYLINE with bulges, CIRCLE, ARC,\nELLIPSE, SPLINE, SOLID/TRACE, HATCH, TEXT/MTEXT, DIMENSION blocks,\nINSERT/BLOCK with nested transforms and grids) into world-plan geometry\n(metres, +Y north) w\n[…]\n only\n  gate).\n\nKept as-is with rationale: clockwise HATCH arc/ellipse edges negate\nand swap angles (ezdxf convention - CW edges store clockwise-measured\nangles; mirroring recovers the true geometry).",
          "is_bot": false,
          "headline": "feat(drawing-2d,viewer): DXF import as 2D reference underlay (#1794)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T12:03:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "90522d218d5a9c4df0760349b5bfc60916a23f8f",
          "body": "…s (#1792)\n\n* docs: retire stale '5x faster than web-ifc' speed claims for verifiable ones\n\nThe claims came from a May 2026 run pairing web-ifc 0.0.68 with an\nifc-lite measurement path that predated the exact-CSG production\npipeline. Both sides have moved: web-ifc 0.69-0.77 got ~2.3-4x faster on\nboo\n[…]\n 11,123 products' ISSUE_098 figure;\nboth now carry the fair 2026-07-17 Holter row (4.2 s WASM single-thread,\n169 MB, 60,284 products) with keep-in-sync provenance comments pointing\nat bench-data.json.",
          "is_bot": false,
          "headline": "docs: retire stale '5x faster than web-ifc' claims for verifiable one…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T11:16:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7dcf3e1e33101c694f0acc74aa77cf07770c63c5",
          "body": "…ss names and counts (#1789)\n\n* feat(pointcloud,renderer,viewer): LAS classification toggles with counts (#1783)\n\n- @ifc-lite/pointcloud: ASPRS class-name table + per-class histogram\n  helpers; streamPointCloud aggregates counts across chunks and passes\n  them to onComplete\n- @ifc-lite/renderer: spl\n[…]\nodic histograms until done settles; unguarded writes repopulated\nphantom classes after a newer load reset the store. Guard the callback\non the load session, keeping the stale-branch cleanup unguarded.",
          "is_bot": false,
          "headline": "feat(pointcloud,renderer,viewer): LAS classification toggles with cla…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T10:27:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "37224e8cd852d246cf463622cd612a38e0cf6e27",
          "body": "…icate-id guard, simplify docs (#1791)\n\n* refactor(export,docs): demesher follow-ups — prune module split, duplicate-id guard, docs\n\n- extract the reverse-reference mark-and-sweep into demesh-prune.ts\n  (demesh-writer.ts 461 -> ~316 lines, both under the ~400 guideline)\n- applySimplifiedGeometry rep\n[…]\nrom the referrer index: layer-only-referenced geometry prunes,\nsurviving mixed layers get their item lists filtered, and a layer left\nempty is tombstoned. Regression test proves the pre-fix retention.",
          "is_bot": false,
          "headline": "refactor(export,docs): demesher follow-ups — prune module split, dupl…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T10:27:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7194c95002f2c84cd3c9444d710a50190a976a90",
          "body": "…del wire for IDS parity (#1766) (#1785)\n\n* feat(server,data,ids): carry values[] candidate arrays on the data-model wire for IDS parity (#1766)\n\nIDS facet checks pass when a constraint matches ANY candidate value of a\nmulti-valued property (enumerated/bounded/list/table). The WASM path surfaces\nthe\n[…]\nd on-thread.\n\n* test(ids): only expose non-empty candidate arrays from mock accessor (CodeRabbit)\n\n* fix(server): propagate values_json serialization errors instead of dropping candidates (CodeRabbit)",
          "is_bot": false,
          "headline": "feat(server,data,ids): carry values[] candidate arrays on the data-mo…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T09:55:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2a7c7ffe0ac27a8cc315e5d4a633c56469646cf0",
          "body": "…lightweight IFC re-export (#1769)\n\n* feat(geometry,export): demesher - selective mesh simplification with lightweight IFC re-export (#1767)\n\nSelective per-element simplification of already-loaded models with\ndeferred export to a lighter IFC:\n\n- rust/geometry/src/simplify/: cavity removal (position-\n[…]\nd the kept result when the\n  decimation over-collapses early\n- CLI help: advertise --ids and --json on simplify\n\n---------\n\nCo-authored-by: Louis Trümpler <78563314+louistrue@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat(geometry,export): demesher - selective mesh simplification with …",
          "author_name": "Yuri Isachenkov",
          "author_login": "Blogbotana",
          "committed_at": "2026-07-17T08:28:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "05c8bdf348c5afae8978293cd324d45104e24940",
          "body": "…ollow-up) (#1762)\n\n* fix(parser,ids,viewer): harden material association handling (#1755 follow-up)\n\nFour fixes from the #1755 adversarial sweep:\n\n1. Multiple IfcRelAssociatesMaterial per element are no longer lost.\n   New resolveAllMaterialDefIds / extractAllMaterialsOnDemand surface\n   every asso\n[…]\nial-bearing type.\nExpansion now applies the same precedence (cached per occurrence).\nRegression test with a double-typed door.\n\n* test(parser): assert the deterministic double-typing winner explicitly",
          "is_bot": false,
          "headline": "fix(parser,ids,viewer): harden material association handling (#1755 f…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T07:33:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "502bdbf5c4c4c86999f4e662b71ee5b0b16307ae",
          "body": "collectMeshesViaPrePass spread the entire mesh batch into one\nArray.push(...) call - one JS argument per mesh - which exceeds V8's ~65k\nargument ceiling on large models and throws RangeError \"Maximum call stack\nsize exceeded\", killing the whole synchronous process() call. Found running\nthe apples-to\n[…]\n in\nthe viewer (the streaming path appends per batch and never spreads).\n\nAppend in a loop instead, matching the existing \"use loop to avoid stack\noverflow with large batches\" pattern in useIfcLoader.",
          "is_bot": false,
          "headline": "fix(geometry): sync process() stack overflow on >65k-mesh models (#1784)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T06:31:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "33a952f7dfa5e4e5b5edc84d2874b3c1bf6dabe5",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1758)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T04:44:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8a0b09f161fffbc3302e173bd639a5aa85074e59",
          "body": "…d hostile-input decoders (#1774)\n\n* fix(server,collab,mcp,pointcloud): harden auth, stream cache path, and hostile-input decoders\n\napps/server:\n- parquet_stream: stop unwrap-panicking on a short/corrupt cached combined-\n  Parquet blob; frame-check via cached_geometry_slice and fall through to a\n  n\n[…]\nd stride accumulation past 2^53 is rejected.\n\nExplicitly NOT changed: dropping the admission guard on cached replay\n(parquet_stream.rs) is pre-existing deliberate behavior with a\ndocumented rationale.",
          "is_bot": false,
          "headline": "fix(server,collab,mcp,pointcloud): harden auth, stream cache path, an…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:49:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fc4451d727f5fce51e617cefc0289671d41c177d",
          "body": "… bugs (#1777)\n\n* fix(viewer): guard load-race + lens visibility leaks + coord/security bugs\n\nFixes a batch of viewer bugs found in the load / visibility / coordinate paths:\n\n1. useIfcLoader: add a stale-session guard to the PRIMARY geometry streaming\n   loop. A second primary load (e.g. the ifc-lit\n[…]\nor misattributed to the current load.\n\nAlso: new console strings plain ASCII; 13 unit tests for the ownership\nhelpers (manual-hide survival, A->B->A toggling, remount no-op, channel\nownership checks).",
          "is_bot": false,
          "headline": "fix(viewer): guard load-race + lens visibility leaks + coord/security…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:39:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cc92f171661eb8e27170bcc0360336df819f9ab7",
          "body": "…fixes (#1772)\n\n* fix(export,parser,data,bcf,lists): STEP export + BCF/CSV correctness fixes\n\n- STEP REAL: share one formatStepReal helper (data) that rewrites JS exponent\n  notation into valid ISO-10303-21 (5e-8 -> 5.E-8, 1e21 -> 1.E+21,\n  1.5e-7 -> 1.5E-7). Reused by toStepReal/serializePropertyVa\n[…]\n giving a text bomb that much\n  headroom past maxExpandedBytes. String reads now TextDecoder the exact\n  counted bytes.\n\n* fix(bcf): narrow EntryStream to the uint8array-only stream actually requested",
          "is_bot": false,
          "headline": "fix(export,parser,data,bcf,lists): STEP export + BCF/CSV correctness …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:35:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2d2a2fb672bba182bc57e3f59c2da4909583fa49",
          "body": "…ndex-wrap (#1776)\n\n* fix(geometry,core): harden malformed-input paths against hang/panic/index-wrap\n\nThree input-reachable defects in the wasm geometry worker (panic=abort there\ntakes down the whole instance):\n\n- boolean/collect_polygonal_chain: a cyclic FirstOperand chain (e.g.\n  IFCBOOLEANCLIPPIN\n[…]\ntinels\n\nThe fast_parse path yields u32::MAX-1 after the 1-based fixup while\nschema_gen yields u32::MAX; note at both sites that consumers must\nbounds-check rather than compare a single sentinel value.",
          "is_bot": false,
          "headline": "fix(geometry,core): harden malformed-input paths against hang/panic/i…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:18:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0a1c500adfd7894b9f1a3f01cc774226b2bdb84b",
          "body": "…pes, destroy device (#1775)\n\n* fix(renderer): release partial/hydrated GPU caches, balance error scopes, destroy device\n\n- Scene.dropAllPartialCaches: partial sub-batch clones built during\n  hide/isolate are released when the filter returns to fully-visible instead\n  of staying resident (~2x model \n[…]\nerror-scope balance on all exit paths, destroy() idempotency,\n  render()-after-destroy(), hide/isolate toggling with exactly-once\n  buffer destruction, and in-place mutation reaching the batched path.",
          "is_bot": false,
          "headline": "fix(renderer): release partial/hydrated GPU caches, balance error sco…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:17:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0d400edd61a71108c2affd0923fb561affbfe9fe",
          "body": "…ker scan, and cache (#1773)\n\n* fix(parser,encoding,cache): harden string decode, material usage, worker scan, and cache\n\n- encoding: guard decodeIfcString \\X4\\ against code points > 0x10FFFF (emit\n  U+FFFD instead of throwing a RangeError that aborted the whole model load on\n  the columnar batch-na\n[…]\nver-shaped facade store (incl. type-level expansion),\n  duplicate + dangling material associations, adversarial fraction shapes,\n  malformed \\X2\\/\\X4\\ payload passthrough, batch-name quote edge cases.",
          "is_bot": false,
          "headline": "fix(parser,encoding,cache): harden string decode, material usage, wor…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:16:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "564a800e997322d863aac84127497ef4f8310ac3",
          "body": "…edefinedType/Tag list columns (#1765) (#1778)\n\nThe server data-model only emitted id/type/global_id/name/has_geometry, so\nthese four built-in Lists attribute columns rendered empty on server-parsed\nmodels while the WASM path resolves them on demand.\n\nParity by construction: a generated Rust table\n(\n[…]\nthe trap cases (IfcSite LongName != Tag, IfcWallType\nApplicableOccurrence != ObjectType, CompositionType != PredefinedType); the\ncross-path parity test now asserts identical rows for all four columns.",
          "is_bot": false,
          "headline": "feat(server,data): server↔client parity for Description/ObjectType/Pr…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T03:16:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2cd5f439d202894fde34961cc4b3bfbe9ad2d140",
          "body": "…metry, byte-identical) (#1770)\n\n* perf(kernel): u32-digit FixedInt multiply on wasm32 (-20-31% wasm geometry)\n\nwasm32 has no native 128-bit multiply, so every (u64 as u128)*(u64 as u128)\npartial product in FixedInt's schoolbook loops lowers to a __multi3 libcall.\nSince #1655 moved the exact-predica\n[…]\n), so enforce the\nprecondition instead of emulating it: debug_assert the low 2K limbs are zero\non entry and document the contract. Zero release-mode cost; the sole caller\nalready passes a fresh array.",
          "is_bot": false,
          "headline": "perf(kernel): u32-digit FixedInt multiply on wasm32 (-20-31% wasm geo…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T01:49:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a42b8a9cfc559781575dde893b2116a5dc493732",
          "body": "…ap (#1771)\n\nTwo main-thread cold-load levers in the parallel stream path:\n\n- stitchShards is now two-phase: locate every shard's validated slice first\n  (binary search, no copying), then write the exact-size output columns\n  straight into SharedArrayBuffer-backed storage. deliverEntityIndex shares\n\n[…]\nmin-of-3; mesh counts identical 110,632 / 59,060):\n  Holter 177MB   first-visible 611 -> 594 ms, stream 4501 -> 4462 ms\n  CatiaA1 883MB  first-visible 7106 -> 6842 ms (-3.7%), stream 12495 -> 12269 ms",
          "is_bot": false,
          "headline": "perf(geometry): zero-copy sharded index delivery + drop per-mesh re-m…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-17T01:43:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f34bc4165166f0171e23e1839d8beef02a1c7fd5",
          "body": "…classic strip (#1686) (#1768)\n\n* feat(viewer): tabbed ribbon toolbar as selectable alternative to the classic strip (#1686)\n\nA Ribbon toolbar style (File / Home / View / Analyze / Author tabs with\nlabeled command groups) selectable per user via uiSlice.toolbarStyle,\npersisted in localStorage. Both \n[…]\nrdcoded /5 against 7 toggles).\n- Close Compare alongside the other right-slot panels when an analysis\n  extension opens.\n- Log (not swallow) blocked-storage errors in the toolbar preference\n  readers.",
          "is_bot": false,
          "headline": "feat(viewer): tabbed ribbon toolbar as selectable alternative to the …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T22:36:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a6bedfb406001a820f3bff4eccadcb7f91df9934",
          "body": "…#1764)",
          "is_bot": false,
          "headline": "chore: add .railwayignore to keep .claude out of railway up uploads (…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T20:17:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "03366edf56316e0c127b946ab031a287cd7744b9",
          "body": "…ptor (#1677) (#1760)\n\n* fix(viewer): drive SpaceMouse axis parsing from the HID report descriptor (#1677)\n\nHardware feedback on #1677 (SpaceMouse mostly dead, only one axis\nzooming) showed the fixed byte-layout parser does not match every\n3Dconnexion device. WebHID exposes the device's own report d\n[…]\now dropped without touching\n  state or timestamp; the legacy path likewise only treats the known\n  motion report ids as samples.\n\nAdds session-level routing tests (Node EventTarget as fake HIDDevice).",
          "is_bot": false,
          "headline": "fix(viewer): drive SpaceMouse axis parsing from the HID report descri…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T15:04:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e49a1a020eaafd397af626e88a058b69122a1bd9",
          "body": "…Type column (#1751, #1754) (#1759)\n\n* feat(server,lists): server↔client parity for Type-level props/QTOs + Type column (#1751, #1754)\n\nMake the server-parse path produce identical Lists/Schedule results to the\nin-browser WASM path for Type-level properties and quantities, and add a\n`Type` column sh\n[…]\nmpt `tests.rs` / `_tests.rs` files so the module-size ratchet passes without\nraising any budget (mod.rs 480→241, parquet 763→660).\n\n* chore(server): add MPL-2.0 header to split test files (CodeRabbit)",
          "is_bot": false,
          "headline": "feat(server,lists): server↔client parity for Type-level props/QTOs + …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T13:41:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7ef36225d863ec64dfb254cf0767d4ab9d034849",
          "body": "…n usage index (#1755) (#1757)\n\nIfcRelAssociatesMaterial commonly targets the TYPE entity (IfcDoorType).\nbuildMaterialUsageIndex iterated onDemandMaterialMap verbatim, keying\nthose materials to the type entity — the viewer's By Material tree then\ndropped them via its geometry filter (types render no\n[…]\ncurrence-level associations take precedence\n(IFC semantics) with no double counting; the type entity keeps no entry\nof its own. Stores without a relationship graph keep the previous\nverbatim behavior.",
          "is_bot": false,
          "headline": "fix(parser): expand type-level material associations to occurrences i…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T11:54:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "38716e5397646627f5a79c1a415f1297b3f64763",
          "body": "…(#1756)\n\nExtends the PLANKOPF Swiss plan-sheet identity from the landing (#1753) to ifclite.dev/docs (mkdocs-material): Archivo + Fragment Mono via self-loaded variable fonts, primary/accent:custom carbon+Swiss-red schemes, red DETAIL H2 ticks, mono-uppercase labels, ink links with red underline (red reserved), a title-block footer mirroring the landing, and mermaid re-render on palette toggle. Planned via an adversarial review against the installed Material 9.7.1 CSS.",
          "is_bot": false,
          "headline": "feat(docs): extend PLANKOPF plan-sheet theme to the mkdocs docs site …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T10:25:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d71093703a8485549bda2fcc2aef5971e7760a4c",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1752)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-16T08:39:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7611c1b4811506cdb6057f6051adeb59f639265d",
          "body": "…#1753)\n\nSwiss engineering plan-sheet redesign of the ifclite.dev landing (apps/landing): Archivo + Fragment Mono, signature Swiss red, fixed title-block bar with BLATT scroll-spy, self-dimensioning lines, red DETAIL callouts. Legacy CSS var names re-pointed so all six React widgets re-skin through tokens. Docs (mkdocs) unchanged and still served via build-docs.sh.",
          "is_bot": false,
          "headline": "feat(landing): overhaul ifclite.dev to \"PLANKOPF\" plan-sheet design (…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-15T23:40:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae6079f0d2d8a3dbc923dfd468817c7f3e2f9b4a",
          "body": "…hedules (#1745) (#1748)\n\n* feat(lists,parser): resolve Type-level properties/QTOs in instance schedules (#1745)\n\nColumns in Lists/Schedules that map to a pset or quantity living on an\nelement's IfcTypeProduct (via IfcRelDefinesByType) previously rendered\nblank on instance rows, because the engine r\n[…]\nker now offers\nthe type-only Manufacturer + Qto_WallBaseQuantities; a Walls list with\nManufacturer/FireRating/Width resolves ACME Walls / REI 120 (override) /\n200 and ACME Walls / REI 90 (type) / 200.",
          "is_bot": false,
          "headline": "feat(lists,parser): resolve Type-level properties/QTOs in instance sc…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-15T16:35:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1e1ef35a10a314881e7ea735d97bcc0b026b1954",
          "body": "…(#1749)\n\n* feat(viewer): add plain OSM slippy-map base for the 3D world context\n\nCloses #1744. The world-context overlay could only show Google\nPhotorealistic 3D Tiles or OSM Buildings (extruded footprints over\nsatellite imagery). Both can be visually heavy; some users just want a\nsimple flat map. \n[…]\nedit HTML), so\nthe on-canvas attribution is policy-compliant. Verified in-browser: the\ncredit reads \"© OpenStreetMap contributors\", links to\nopenstreetmap.org/copyright, and the MapQuest text is gone.",
          "is_bot": false,
          "headline": "feat(viewer): add plain OSM slippy-map base for the 3D world context …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-15T15:53:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dbfca1f28db7ff4fe38b8b20f52fb08b7e72ffbf",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1750)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-15T15:34:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "01b8b414bfb72f1893c0c4296153e8f35e44b641",
          "body": "…st (#1747)\n\n* fix(renderer): surface non-intentional GPU device loss via onDeviceLost\n\nA lost GPU device (Windows TDR driver reset or VRAM exhaustion while\nrotating/re-opening a large model on a weak/integrated GPU) kills every\npipeline and buffer, so the viewport can never present again. The rende\n[…]\nsame instance: a fresh GPUDevice would then swallow a\nlater loss (guard still true) and render() stayed a permanent no-op. Reset both\nat the start of their init() so each device lifetime starts clean.",
          "is_bot": false,
          "headline": "fix(renderer): surface non-intentional GPU device loss via onDeviceLo…",
          "author_name": "Yuri Isachenkov",
          "author_login": "Blogbotana",
          "committed_at": "2026-07-15T13:24:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b97054462266fe6b61c1f9017cda96a949e32de2",
          "body": "Bumps the cargo-minor-and-patch group with 4 updates: [memchr](https://github.com/BurntSushi/memchr), [arrow](https://github.com/apache/arrow-rs), [parquet](https://github.com/apache/arrow-rs) and [bytes](https://github.com/tokio-rs/bytes).\n\n\nUpdates `memchr` from 2.8.2 to 2.8.3\n- [Commits](https://\n[…]\ndate:semver-patch\n  dependency-group: cargo-minor-and-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the cargo-minor-and-patch group with 4 updates (#1737)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-15T08:32:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9debbdce4460b4be4f0ba5404ade32528c5c846a",
          "body": "---\nupdated-dependencies:\n- dependency-name: \"@types/node\"\n  dependency-version: 26.1.1\n  dependency-type: direct:development\n  update-type: version-update:semver-patch\n  dependency-group: npm-minor-and-patch\n- dependency-name: knip\n  dependency-version: 6.26.0\n  dependency-type: direct:development\n\n[…]\nupdate:semver-minor\n  dependency-group: npm-minor-and-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump the npm-minor-and-patch group with 27 updates (#1739)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-15T08:30:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "93b6e9a82adf99367e57d485d1ced12fb2ab0517",
          "body": "Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.3.1 to 5.4.0.\n- [Release notes](https://github.com/actions/setup-dotnet/releases)\n- [Commits](https://github.com/actions/setup-dotnet/compare/67a3573c9a986a3f9c594539f4ab511d57bb3ce9...26b0ec14cb23fa6904739307f278c14f94c95b\n[…]\nirect:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(deps): bump actions/setup-dotnet from 4.3.1 to 5.4.0 (#1738)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-07-15T08:30:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c4d2d7aefc68846056571c34ed09716245fafece",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1743)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-15T07:17:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "da19eb6e6f56384112b71344178d0a317b9986c5",
          "body": "…ad of refusing as unrelated-base; diff ghost owns the store's copied set (#1742)\n\nPublishing appends the draft to its home ref with a declared base equal\nto the composition it was authored against, which need not be\nrepresentable on the ref (URI-id base files fail the content-address\ngate) - so the\n[…]\n.\n\nAlso fixes the diff-view ghost leak: visibilitySlice stores a defensive\ncopy of the entity set, so the ownership identity check never matched\nand the ghost survived closing the diff until Show All.",
          "is_bot": false,
          "headline": "fix(merge,viewer): re-merging a layer already on its ref no-ops inste…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-13T11:29:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "94ea3a936bb5871a4e62359d9101d170cd773b5b",
          "body": "…n short viewports); Share dialog never shows an empty link (non-admin/mint-failure fallback to the held invite) (#1741)",
          "is_bot": false,
          "headline": "fix(viewer): welcome footer chips join the flow (overlapped content o…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-13T10:51:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f3ea4cc38a8c4e60e24793d236bc838933ac711e",
          "body": "…ad, demo stack, tour, badges, menus (#1736)\n\n* feat(viewer): first-class exposure for Layer PRs — launchpad, demo stack, tour, badges, menus (#1717)\n\n* feat(viewer): expose the collaboration room — Panels menu, palette, actionable empty state opening the Share dialog\n\n* fix(viewer): Panels-menu items actually toggle the layers/collab panels; surface demo-load failures",
          "is_bot": false,
          "headline": "feat(viewer): first-class exposure for Layer PRs and collab — launchp…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-13T05:49:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "521bcca244fd765f83543d3dbc0a487b2d85ce2a",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1733)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T21:57:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2de44287ff70275108015ffb540e9440ff735fbb",
          "body": "…embed actually bundles (#1735)",
          "is_bot": false,
          "headline": "fix(viewer-embed): declare the viewer's @ifc-lite workspace deps the …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:56:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bfc7dd4fee8f0afd2e7afb4bd19497bfc9ea906d",
          "body": "…ync overloads reject the string|Uint8Array union) (#1734)",
          "is_bot": false,
          "headline": "fix(collab-server): normalize writeAtomic payload to a buffer (writeS…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:53:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e904942e3fd167d0d0e1a9c37b391d638eb6932",
          "body": "* feat(registry): webhooks + auto-merge ref policy (#1717)\n\n* fix(registry): auto-merge requires an all-green manifest and skips already-merged candidates",
          "is_bot": false,
          "headline": "feat(registry): webhooks + auto-merge ref policy (#1732)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:47:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cd6c9bda1066b7c7cda19e164d787d15b57e3483",
          "body": "…layers, retype opinions, no silent drops (#1731)\n\n* feat(layers): geometry-affecting edit publishing — session placement layers pinned, retype opinions, no silent drops (#1717)\n\n* fix(layers): a publish with skipped edits keeps them pending instead of clearing them",
          "is_bot": false,
          "headline": "feat(layers): geometry-affecting edit publishing — session placement …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:46:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c1695d777263483110460df767ec86ca691048ab",
          "body": "* feat(layers): live-session Y.Doc draft publishing — captureDocState fork point, hybrid authorship, delta-only republish (#1717)\n\n* fix(layers): hybrid authorship counts peers seen since the baseline, not just live presence",
          "is_bot": false,
          "headline": "feat(layers): live-session Y.Doc draft publishing (#1730)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:45:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b54f70478a7b92055750f11267ffe7fa47ed7da1",
          "body": "…y, componentKey), viewpoints, .bcf export (#1729)\n\n* feat(layers): review comments as BCF topics — registry topics route, viewer comment thread + viewpoints + .bcf export, MCP add_review_topic (#1717)\n\n* fix(layers): push candidate before opening a review; bind comments to the active selection",
          "is_bot": false,
          "headline": "feat(layers): review comments as BCF topics — bound to (review, entit…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:45:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e3b3c5316fcd845d531265c11e0fb86cf526e778",
          "body": "…-place editor, bulk actions (#1728)\n\n* feat(layers): conflict queue completion — edited resolutions through the registry, edit-in-place editor, bulk actions (#1717)\n\n* fix(layers): edited resolutions tombstone removed keys (per-attribute LWW resurrected them)",
          "is_bot": false,
          "headline": "feat(layers): conflict queue completion — edited resolutions, edit-in…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:44:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7dac702db0092a3a3d6a447b2e49bc9591f5dfc4",
          "body": "…h, checks deep links, waiver authoring (#1727)\n\n* feat(layers): fetchable IDS check evidence — registry reports route, layer push, checks deep links + waiver authoring (#1717)\n\n* fix(layers): evidence digest validation (path traversal via crafted manifest) + shared download helper",
          "is_bot": false,
          "headline": "feat(layers): fetchable IDS check evidence — reports route, layer pus…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:43:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e092198070cd4311cbfe0a85a4dbd88c702d2919",
          "body": "…he deployed binary (#1726)\n\n* feat(collab-server): durable disk-backed layer registry, enabled in the deployed binary (#1717)\n\n* fix(collab-server): room-token registry authorizer (registry was locked out under COLLAB_TOKEN_SECRET) + fsync-before-rename durability\n\n* chore: refresh api-surface for the registry authorizer exports",
          "is_bot": false,
          "headline": "feat(collab-server): durable disk-backed layer registry, enabled in t…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-12T19:42:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "beeb8ed500f53bb1f9d1aa4b51d3fe27929a32c9",
          "body": "…gration ships (#1725)\n\nL4: viewer diff mode (Layers panel + Ghost others), conflict queue\n(per-conflict resolutions via MergeInit.resolutions), and the\nprovenance panel shipped; lens variants, bulk resolution, and BCF\nreview comments remain. L5: registry policy enforcement now covers\nper-conflict resolutions, credential-bound approval separation, and\nimmutable policies via PUT. Cross-cutting: the shared diff JSON is\nconsumed by the UI as well.",
          "is_bot": false,
          "headline": "docs(layer-prs): refresh roadmap statuses after the #1717 viewer inte…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T20:51:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "669b0df63c05e8af07ec2a4a6605d2c1e86eeb26",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1715)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T20:23:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a1bbd6c209ded2da1405a8d1c816a193601ae625",
          "body": "…) (#1724)\n\n* perf(core): nearly-sorted run-merge path for ColumnarEntityIndex construction (stage 3)\n\nSTEP id streams are a few long ascending runs (57 across 19.1M records on\nCatiaA1). sort_columns (extracted to columnar_index_merge.rs) detects runs\nand k-way merges <= 64 of them with streak strea\n[…]\n-2.7s, styles 5.5-5.8s, first\nvisible 6.8/7.1/7.1s (stage 2: 9.9s; serial: 14.3s). Small-model parity\nexact (1960 styled / 62 voids / 83 draws / 399ms).\n\n* chore: drop the reverted run-merge changeset",
          "is_bot": false,
          "headline": "perf(stream): stage 3 — two style slices per worker (styles tail -45%…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T20:02:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "462c9ca7df4d70ce5b28104c0ce8b0806f85b78a",
          "body": "…1717 V4) (#1723)\n\n* feat(viewer): provenance detail, layer-contribution ghosting, lazy Layers panel (#1717 V4)\n\nL4 completion pass on the Layers panel:\n\n- Clicking a stratum expands its full provenance manifest: author\n  (kind/principal/tool), intent, created, base stack hash, scope\n  claims, check\n[…]\nn the diff swaps (#1723)\n\nThe [diff] cleanup released the owned ghost set but left the local\nghosting flag on, so the button read 'Ghosting others' with nothing\nghosted until a dead click resynced it.",
          "is_bot": false,
          "headline": "feat(viewer): provenance detail, layer ghosting, lazy Layers panel (#…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T18:04:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1ca08c9bdeb53707eb09419a3def8009a068d186",
          "body": "…r-conflict resolutions (#1717 V3) (#1721)\n\n* feat(viewer,merge): merge refs in the viewer — conflict queue with per-conflict resolutions (#1717 V3)\n\nShared groundwork:\n- MergeInit.resolutions: per-conflict ResolutionInput[] through the\n  shared ref-merge flow (preview -> decide each conflict -> exe\n[…]\nd silently auto-resolve conflicts the user\n  never reviewed.\n- unrelated-base outcomes from the registry render the declared base\n  instead of 'undefined' (the server sends declared_base, not reason).",
          "is_bot": false,
          "headline": "feat(viewer,merge): merge refs in the viewer — conflict queue with pe…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T17:55:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cbd14fab08acad4d94d7cd05dd08064936b12fdc",
          "body": "* feat(viewer): publish draft layers from viewer edits (#1717 V2)\n\nPending property/quantity/attribute mutations freeze into an immutable,\ncontent-addressed, provenance-stamped IFCX layer on a browser-local\nstore, then stack back onto the live composition as the strongest\noverlay.\n\n- BrowserLayerSto\n[…]\n full\n  publishes clear mutations BEFORE the recompose.\n- The author field seeds from the collab identity when connected\n  (authenticated registries bind the manifest author to the login\n  principal).",
          "is_bot": false,
          "headline": "feat(viewer): publish draft layers from viewer edits (#1717 V2) (#1719)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T17:53:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "953d06f5b3e17863ebfa137f795dc5d1bed0eb8c",
          "body": "…1717 V1) (#1718)\n\n* feat(viewer): layer-stack panel — strata, provenance, per-layer contribution diff (#1717 V1)\n\nThe viewer now surfaces the IFCX layer stack behind a federated\ncomposition. useIfcFederation records the parser-retained layer files\ninto a layerStackSlice (weakest first) with the com\n[…]\nith malformed checks (e.g. [null]) threw a TypeError and failed the\nwhole model for a file that composes fine. Summary extraction now\nshape-guards every read and degrades to an unsigned-looking entry.",
          "is_bot": false,
          "headline": "feat(viewer): layer-stack panel with provenance and per-layer diff (#…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T17:46:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6ed4de6a46100e097b41137a65e91b581df34486",
          "body": "…agent draft workflow (#1027)\n\n* feat(layers): Layer PRs — three-way merge, provenance, registry, and agent draft workflow (#1027)\n\nPort of the #1027 stack (#1053 L2 fast path, #1054 L5 registry, #1056\nshared diff contract merged into the branch) onto current main; the old\nbranch predates the histor\n[…]\n author.\n- applyResolutions rejects 'edited' on child:/inherit: pseudo-components\n  (would serialize a relation edge as a literal attribute).\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(layers): Layer PRs — three-way merge, provenance, registry, and …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T17:39:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a2c31a185e868d15183df8360badb001789bd978",
          "body": "…olumn-based flatten (#1722)\n\n* perf(stream): stage 2 sharded pre-pass — columns-driven discovery + column-based styles flatten\n\n- scan_shard_classified now classifies EVERY record via classify_type_name\n  (named codes for project/site/mapped-item/rel-defines/layer-set + all\n  support kinds, FLAG bi\n[…]\nord\n  classification for a column they never read (Codex P2).\n- buildPrePassStreamingSharded gained a required parameter since the 3.0.x\n  publish - that is semver-major for @ifc-lite/wasm (Codex P2).",
          "is_bot": false,
          "headline": "perf(stream): sharded pre-pass stage 2 — columns-driven discovery + c…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T17:30:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8f3fafd7cc777e60cdc006956f8336680723c440",
          "body": "…l styles resolution, ON by default (#1720)\n\n* feat(stream): sharded pre-pass — parallel entity-index scan + parallel styles resolution (flag-gated)\n\nTime-to-first-geometry on large fresh loads is gated by the serial pre-pass:\nmeta (RTC full-index detour) -> entity-index -> 4s styles resolve -> job\n\n[…]\nift).\n\nBehavior identical: sharded smoke reproduces exact parity\n(1960 styled / 83 draws / 12.7MB on FM_ARC_DigitalHub); ratchet, clippy\n-D warnings, and the 51 processing lib tests all green locally.",
          "is_bot": false,
          "headline": "perf(stream): sharded pre-pass — parallel entity-index scan + paralle…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T16:43:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "62b68c06347aab661c3d9417bcf016e565e2c4b1",
          "body": "…vot raycast) (#1716)\n\n* fix(viewer): skip the orbit-pivot raycast on instanced-heavy models (input lag at orbit start)\n\nThe mouse orbit-start handler anchors the pivot under the cursor via a CPU\nraycast, guarded by a large-model census that only counted flat meshes and\nbatch entities. CATIA-class m\n[…]\ne the batch loop\n\nA purely-instanced scene has no batched meshes, so a loop-only threshold\ncheck never saw the meshes+instanced base count and let the expensive pivot\nraycast run. (Codex P2 on #1716.)",
          "is_bot": false,
          "headline": "fix(viewer): orbit-start input lag on instanced-heavy models (skip pi…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T11:22:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9689ea5276cc107895be56aa9267a4b7b778de2d",
          "body": "…throttle (choppy orbit on CATIA-class models) (#1714)\n\n* perf(renderer): cull instanced-template draws + adaptive interaction throttle\n\nThe GPU-instanced pass drew every template unconditionally — on CATIA-class\nmodels that is ~97% of draw calls (8,929 of 9,213 on an 883MB model), which\nmade orbiti\n[…]\nctedCount could never decrement and the\nentity's templates stayed permanently exempt from contribution culling.\nDecrement while the occurrence locations are still known. (CodeRabbit\nfinding on #1714.)",
          "is_bot": false,
          "headline": "perf(renderer): cull instanced-template draws + adaptive interaction …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T10:01:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "217a890fbd9bdd38b1822534d63e38cc064406de",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore: version packages (#1713)",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T07:15:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22db0d53d7c42630673ca6bbca7bfcc208838118",
          "body": "…lt (#1682 phase 6) (#1711)\n\n* perf(renderer): opt-in 12-byte lattice-quantized batch vertices (#1682 phase 6)\n\nBatch vertex layout drops 28B -> 12B: uint16x4 (lattice position xyz +\npacked octahedral normal in w) + the u32 entityId lane. Positions quantize\nonto a GLOBAL 2^-10 m lattice with lattice\n[…]\nread() documents the v13-only geometry contract; changeset notes\n  the pre-v13 removal; stale off-by-default comments in Viewport corrected;\n  #1682 regression labels on the quantize/residency suites.",
          "is_bot": false,
          "headline": "perf(renderer): 12-byte lattice-quantized batch vertices, ON by defau…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T06:38:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a8b5d8cef9d6a8f195783ceb45274a88ed73e4c7",
          "body": "…D) (#1709)\n\n* feat(viewer): flip #1682 render-perf defaults ON (chunks 32m, GPU 2048MB, host 3072MB, LOD 48px)\n\nSweep verdict (headed Chrome, FZK / DigitalHub / advanced_model): load KPIs\nunchanged within noise; draw calls 13->17 / 21->85 / 275->343; resident GPU\n+0.3MB max; defaults-vs-all-off pix\n[…]\n=0 / LOD_PX=0 were rejected as invalid and the app default\napplied - an off-baseline A/B run silently ran WITH the features (Codex\nP2s on #1709). Zero now injects the corresponding kill-switch global.",
          "is_bot": false,
          "headline": "feat(viewer): flip #1682 render-perf defaults ON (chunks, budgets, LO…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T06:30:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7a64fa75ba7cfcf22687a51a11a3eefe7bba7083",
          "body": "…tices (#1682 phase 5) (#1708)\n\n* perf(renderer): opt-in LOD1 as a second index range over the same vertices (#1682 phase 5)\n\nVertex-clustering decimation (meshopt-sloppy style) over the batch's\nEXISTING interleaved vertex buffer at batch-build time: vertices snap to a\nuniform grid (~2% of the batch\n[…]\n lane (wrong object-id output for separation lines + wrong\noverlay depth-salt at LOD distance). The entityId lane now joins the\ncluster key; regression test covers co-located strips with distinct ids.",
          "is_bot": false,
          "headline": "perf(renderer): opt-in LOD1 as a second index range over the same ver…",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T06:22:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "87516cf5f502b1f770786199b2256c3a215331c3",
          "body": "…v13 cache chunks (#1682 phase 3b) (#1707)\n\n* perf(renderer): opt-in cold (evict-to-disk) residency tier backed by v13 cache chunks (#1682 phase 3b)\n\nThree tiers: hot (GPU+CPU) / warm (CPU only, GPU evicted) / cold (metadata\nshell only). Scene.setHostResidencyBudget demotes warm buckets to cold\nLRU-\n[…]\nver.\n- Scene.drainColdTier() restores every cold bucket while the provider still\n  exists; a federated add drains before clearing the provider so the\n  primary's cold chunks are never stranded shells.",
          "is_bot": false,
          "headline": "perf(renderer): opt-in cold (evict-to-disk) residency tier backed by …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T06:14:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5b278f0f8b2f2b42a723e9ef64341639670e291e",
          "body": "…load (#1682 phase 4) (#1706)\n\n* feat(cache): FORMAT_VERSION 13 chunked geometry + streamed cache-hit load (#1682 phase 4)\n\nGeometry section v13: headLength + counts + coordinateInfo + a chunk\ndirectory (world AABB, offsets, stored/uncompressed lengths, mesh count,\nflags per chunk), then independent\n[…]\nen appended onto them\n  (duplicates). Reset geometryResult before rethrowing so the fallback\n  starts clean (Codex P2 on #1706).\n- Complete the per-axis chunk-AABB containment assertions (CodeRabbit).",
          "is_bot": false,
          "headline": "feat(cache): FORMAT_VERSION 13 chunked geometry + streamed cache-hit …",
          "author_name": "Louis Trümpler",
          "author_login": "louistrue",
          "committed_at": "2026-07-11T06:05:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 1352,
      "latest_release_at": "2026-07-21T11:36:15Z",
      "latest_release_tag": "@ifc-lite/geometry@3.4.0",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 28,
      "days_since_latest_release": 0,
      "mean_days_between_releases": 0.4
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 87,
      "has_issue_template": false,
      "has_code_of_conduct": true,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@ifc-lite/bcf",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "bim",
            "bcf",
            "buildingsmart",
            "collaboration",
            "issue-tracking",
            "aec"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/bcf",
          "is_deprecated": false,
          "latest_version": "1.16.3",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 31,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1941,
          "first_published_at": "2026-02-02T10:50:09.500000Z",
          "latest_published_at": "2026-07-17T04:49:21.699000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "@ifc-lite/cli",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "bim",
            "cli",
            "aec",
            "building",
            "construction",
            "ifc-lite"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/cli",
          "is_deprecated": false,
          "latest_version": "0.20.0",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 31,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 2013,
          "first_published_at": "2026-03-12T06:51:09.094000Z",
          "latest_published_at": "2026-07-17T15:10:32.682000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "@ifc-lite/data",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "bim",
            "data",
            "columnar",
            "aec"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/data",
          "is_deprecated": false,
          "latest_version": "2.8.0",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 51,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 8122,
          "first_published_at": "2026-01-12T20:02:30.412000Z",
          "latest_published_at": "2026-07-17T20:57:23.874000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "@ifc-lite/diff",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "bim",
            "diff",
            "comparison",
            "revision",
            "aec"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/diff",
          "is_deprecated": false,
          "latest_version": "0.4.0",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 6,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 934,
          "first_published_at": "2026-06-07T17:25:05.691000Z",
          "latest_published_at": "2026-07-11T20:29:08.033000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 10
        },
        {
          "name": "@ifc-lite/cache",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "bim",
            "cache",
            "binary",
            "aec"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/cache",
          "is_deprecated": false,
          "latest_version": "2.2.1",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 50,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1952,
          "first_published_at": "2026-01-14T13:28:51.087000Z",
          "latest_published_at": "2026-07-17T04:49:22.106000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        },
        {
          "name": "@ifc-lite/clash",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "bim",
            "clash",
            "clash-detection",
            "coordination",
            "aec"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/clash",
          "is_deprecated": false,
          "latest_version": "1.6.3",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 14,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 1995,
          "first_published_at": "2026-06-01T21:12:54.421000Z",
          "latest_published_at": "2026-07-11T20:29:09.181000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 10
        },
        {
          "name": "@ifc-lite/collab",
          "exists": true,
          "license": "MPL-2.0",
          "keywords": [
            "ifc",
            "ifcx",
            "ifc5",
            "bim",
            "collaboration",
            "crdt",
            "yjs",
            "real-time",
            "aec"
          ],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@ifc-lite/collab",
          "is_deprecated": false,
          "latest_version": "0.4.0",
          "repository_url": "https://github.com/LTplus-AG/ifc-lite",
          "versions_count": 10,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 788,
          "first_published_at": "2026-05-13T04:28:34.024000Z",
          "latest_published_at": "2026-07-12T22:03:00.184000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 9
        }
      ]
    },
    "popularity": {
      "forks": 84,
      "stars": 282,
      "watchers": 4,
      "fork_history": {
        "days": [
          {
            "date": "2026-01-14",
            "count": 1
          },
          {
            "date": "2026-01-16",
            "count": 1
          },
          {
            "date": "2026-01-18",
            "count": 1
          },
          {
            "date": "2026-01-19",
            "count": 1
          },
          {
            "date": "2026-01-28",
            "count": 1
          },
          {
            "date": "2026-01-30",
            "count": 1
          },
          {
            "date": "2026-02-03",
            "count": 2
          },
          {
            "date": "2026-02-10",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 1
          },
          {
            "date": "2026-02-27",
            "count": 1
          },
          {
            "date": "2026-03-02",
            "count": 1
          },
          {
            "date": "2026-03-03",
            "count": 3
          },
          {
            "date": "2026-03-07",
            "count": 1
          },
          {
            "date": "2026-03-09",
            "count": 2
          },
          {
            "date": "2026-03-10",
            "count": 1
          },
          {
            "date": "2026-03-11",
            "count": 2
          },
          {
            "date": "2026-03-13",
            "count": 1
          },
          {
            "date": "2026-03-17",
            "count": 1
          },
          {
            "date": "2026-03-25",
            "count": 4
          },
          {
            "date": "2026-03-30",
            "count": 2
          },
          {
            "date": "2026-03-31",
            "count": 1
          },
          {
            "date": "2026-04-01",
            "count": 1
          },
          {
            "date": "2026-04-07",
            "count": 1
          },
          {
            "date": "2026-04-14",
            "count": 1
          },
          {
            "date": "2026-04-18",
            "count": 1
          },
          {
            "date": "2026-04-19",
            "count": 1
          },
          {
            "date": "2026-04-24",
            "count": 1
          },
          {
            "date": "2026-04-29",
            "count": 1
          },
          {
            "date": "2026-04-30",
            "count": 2
          },
          {
            "date": "2026-05-03",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 3
          },
          {
            "date": "2026-05-06",
            "count": 2
          },
          {
            "date": "2026-05-10",
            "count": 3
          },
          {
            "date": "2026-05-11",
            "count": 1
          },
          {
            "date": "2026-05-27",
            "count": 2
          },
          {
            "date": "2026-05-30",
            "count": 1
          },
          {
            "date": "2026-06-04",
            "count": 1
          },
          {
            "date": "2026-06-05",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 1
          },
          {
            "date": "2026-06-09",
            "count": 1
          },
          {
            "date": "2026-06-16",
            "count": 1
          },
          {
            "date": "2026-06-17",
            "count": 3
          },
          {
            "date": "2026-06-19",
            "count": 2
          },
          {
            "date": "2026-06-21",
            "count": 1
          },
          {
            "date": "2026-06-22",
            "count": 1
          },
          {
            "date": "2026-06-23",
            "count": 1
          },
          {
            "date": "2026-06-25",
            "count": 1
          },
          {
            "date": "2026-06-29",
            "count": 1
          },
          {
            "date": "2026-07-01",
            "count": 2
          },
          {
            "date": "2026-07-07",
            "count": 1
          },
          {
            "date": "2026-07-08",
            "count": 2
          },
          {
            "date": "2026-07-09",
            "count": 1
          },
          {
            "date": "2026-07-11",
            "count": 2
          },
          {
            "date": "2026-07-13",
            "count": 2
          },
          {
            "date": "2026-07-14",
            "count": 1
          },
          {
            "date": "2026-07-15",
            "count": 1
          },
          {
            "date": "2026-07-18",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 80,
        "total_forks": 84
      },
      "star_history": {
        "days": [
          {
            "date": "2026-01-12",
            "count": 1
          },
          {
            "date": "2026-01-14",
            "count": 1
          },
          {
            "date": "2026-01-15",
            "count": 4
          },
          {
            "date": "2026-01-16",
            "count": 6
          },
          {
            "date": "2026-01-17",
            "count": 2
          },
          {
            "date": "2026-01-18",
            "count": 4
          },
          {
            "date": "2026-01-19",
            "count": 11
          },
          {
            "date": "2026-01-20",
            "count": 5
          },
          {
            "date": "2026-01-21",
            "count": 2
          },
          {
            "date": "2026-01-22",
            "count": 2
          },
          {
            "date": "2026-01-23",
            "count": 2
          },
          {
            "date": "2026-01-24",
            "count": 1
          },
          {
            "date": "2026-01-26",
            "count": 1
          },
          {
            "date": "2026-01-28",
            "count": 1
          },
          {
            "date": "2026-01-30",
            "count": 1
          },
          {
            "date": "2026-02-01",
            "count": 1
          },
          {
            "date": "2026-02-02",
            "count": 2
          },
          {
            "date": "2026-02-03",
            "count": 2
          },
          {
            "date": "2026-02-05",
            "count": 1
          },
          {
            "date": "2026-02-10",
            "count": 1
          },
          {
            "date": "2026-02-12",
            "count": 4
          },
          {
            "date": "2026-02-13",
            "count": 1
          },
          {
            "date": "2026-02-14",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 2
          },
          {
            "date": "2026-02-18",
            "count": 3
          },
          {
            "date": "2026-02-19",
            "count": 1
          },
          {
            "date": "2026-02-21",
            "count": 2
          },
          {
            "date": "2026-02-22",
            "count": 1
          },
          {
            "date": "2026-02-23",
            "count": 1
          },
          {
            "date": "2026-02-24",
            "count": 1
          },
          {
            "date": "2026-02-25",
            "count": 1
          },
          {
            "date": "2026-02-27",
            "count": 1
          },
          {
            "date": "2026-03-01",
            "count": 1
          },
          {
            "date": "2026-03-03",
            "count": 8
          },
          {
            "date": "2026-03-04",
            "count": 3
          },
          {
            "date": "2026-03-05",
            "count": 5
          },
          {
            "date": "2026-03-06",
            "count": 1
          },
          {
            "date": "2026-03-07",
            "count": 1
          },
          {
            "date": "2026-03-08",
            "count": 1
          },
          {
            "date": "2026-03-09",
            "count": 11
          },
          {
            "date": "2026-03-10",
            "count": 7
          },
          {
            "date": "2026-03-11",
            "count": 1
          },
          {
            "date": "2026-03-12",
            "count": 3
          },
          {
            "date": "2026-03-13",
            "count": 9
          },
          {
            "date": "2026-03-14",
            "count": 2
          },
          {
            "date": "2026-03-15",
            "count": 1
          },
          {
            "date": "2026-03-16",
            "count": 4
          },
          {
            "date": "2026-03-17",
            "count": 2
          },
          {
            "date": "2026-03-18",
            "count": 1
          },
          {
            "date": "2026-03-20",
            "count": 1
          },
          {
            "date": "2026-03-22",
            "count": 1
          },
          {
            "date": "2026-03-24",
            "count": 3
          },
          {
            "date": "2026-03-25",
            "count": 2
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-28",
            "count": 4
          },
          {
            "date": "2026-03-29",
            "count": 2
          },
          {
            "date": "2026-03-30",
            "count": 4
          },
          {
            "date": "2026-03-31",
            "count": 2
          },
          {
            "date": "2026-04-01",
            "count": 1
          },
          {
            "date": "2026-04-02",
            "count": 1
          },
          {
            "date": "2026-04-03",
            "count": 1
          },
          {
            "date": "2026-04-04",
            "count": 1
          },
          {
            "date": "2026-04-09",
            "count": 1
          },
          {
            "date": "2026-04-11",
            "count": 1
          },
          {
            "date": "2026-04-15",
            "count": 1
          },
          {
            "date": "2026-04-19",
            "count": 2
          },
          {
            "date": "2026-04-20",
            "count": 1
          },
          {
            "date": "2026-04-23",
            "count": 1
          },
          {
            "date": "2026-04-24",
            "count": 1
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 1
          },
          {
            "date": "2026-04-29",
            "count": 1
          },
          {
            "date": "2026-04-30",
            "count": 1
          },
          {
            "date": "2026-05-01",
            "count": 1
          },
          {
            "date": "2026-05-02",
            "count": 3
          },
          {
            "date": "2026-05-03",
            "count": 1
          },
          {
            "date": "2026-05-04",
            "count": 2
          },
          {
            "date": "2026-05-05",
            "count": 1
          },
          {
            "date": "2026-05-06",
            "count": 1
          },
          {
            "date": "2026-05-07",
            "count": 1
          },
          {
            "date": "2026-05-08",
            "count": 1
          },
          {
            "date": "2026-05-09",
            "count": 3
          },
          {
            "date": "2026-05-10",
            "count": 6
          },
          {
            "date": "2026-05-11",
            "count": 3
          },
          {
            "date": "2026-05-12",
            "count": 1
          },
          {
            "date": "2026-05-13",
            "count": 1
          },
          {
            "date": "2026-05-14",
            "count": 1
          },
          {
            "date": "2026-05-15",
            "count": 1
          },
          {
            "date": "2026-05-18",
            "count": 2
          },
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-05-22",
            "count": 1
          },
          {
            "date": "2026-05-25",
            "count": 2
          },
          {
            "date": "2026-05-27",
            "count": 1
          },
          {
            "date": "2026-05-28",
            "count": 1
          },
          {
            "date": "2026-05-30",
            "count": 2
          },
          {
            "date": "2026-05-31",
            "count": 1
          },
          {
            "date": "2026-06-02",
            "count": 3
          },
          {
            "date": "2026-06-03",
            "count": 3
          },
          {
            "date": "2026-06-04",
            "count": 2
          },
          {
            "date": "2026-06-05",
            "count": 1
          },
          {
            "date": "2026-06-06",
            "count": 1
          },
          {
            "date": "2026-06-07",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 2
          },
          {
            "date": "2026-06-09",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 3
          },
          {
            "date": "2026-06-11",
            "count": 1
          },
          {
            "date": "2026-06-14",
            "count": 5
          },
          {
            "date": "2026-06-15",
            "count": 4
          },
          {
            "date": "2026-06-16",
            "count": 1
          },
          {
            "date": "2026-06-17",
            "count": 3
          },
          {
            "date": "2026-06-18",
            "count": 6
          },
          {
            "date": "2026-06-19",
            "count": 3
          },
          {
            "date": "2026-06-20",
            "count": 1
          },
          {
            "date": "2026-06-21",
            "count": 1
          },
          {
            "date": "2026-06-22",
            "count": 1
          },
          {
            "date": "2026-06-23",
            "count": 3
          },
          {
            "date": "2026-06-24",
            "count": 1
          },
          {
            "date": "2026-06-25",
            "count": 2
          },
          {
            "date": "2026-06-26",
            "count": 1
          },
          {
            "date": "2026-06-29",
            "count": 2
          },
          {
            "date": "2026-06-30",
            "count": 3
          },
          {
            "date": "2026-07-01",
            "count": 1
          },
          {
            "date": "2026-07-08",
            "count": 1
          },
          {
            "date": "2026-07-09",
            "count": 1
          },
          {
            "date": "2026-07-11",
            "count": 1
          },
          {
            "date": "2026-07-12",
            "count": 3
          },
          {
            "date": "2026-07-13",
            "count": 3
          },
          {
            "date": "2026-07-14",
            "count": 3
          },
          {
            "date": "2026-07-15",
            "count": 3
          },
          {
            "date": "2026-07-18",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 1
          },
          {
            "date": "2026-07-20",
            "count": 2
          },
          {
            "date": "2026-07-21",
            "count": 2
          }
        ],
        "complete": true,
        "collected": 282,
        "total_stars": 282
      },
      "open_issues_and_prs": 11
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples",
        "samples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": true,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "apps/viewer-embed/tsconfig.json",
        "apps/viewer/src/lib/scripts/templates/tsconfig.json",
        "apps/viewer/tsconfig.json",
        "examples/babylonjs-viewer/tsconfig.json",
        "examples/collab-demo/tsconfig.json",
        "examples/threejs-collab/tsconfig.json",
        "examples/threejs-viewer/tsconfig.json",
        "packages/bcf/tsconfig.json",
        "packages/cache/tsconfig.json",
        "packages/clash/tsconfig.json",
        "packages/cli/tsconfig.json",
        "packages/codegen/tsconfig.json",
        "packages/collab-server/tsconfig.json",
        "packages/collab/tsconfig.json",
        "packages/create-ifc-lite/tsconfig.json",
        "packages/create/tsconfig.json",
        "packages/data/tsconfig.json",
        "packages/diff/tsconfig.json",
        "packages/drawing-2d/tsconfig.json",
        "packages/embed-protocol/tsconfig.json",
        "packages/embed-sdk/tsconfig.json",
        "packages/encoding/tsconfig.json",
        "packages/export/tsconfig.json",
        "packages/extensions/tsconfig.json",
        "packages/geometry/tsconfig.json",
        "packages/ids/tsconfig.json",
        "packages/ifcx/tsconfig.json",
        "packages/lens/tsconfig.json",
        "packages/lists/tsconfig.json",
        "packages/mcp/tsconfig.json",
        "packages/merge/tsconfig.json",
        "packages/mutations/tsconfig.json",
        "packages/parser/tsconfig.json",
        "packages/pointcloud/tsconfig.json",
        "packages/query/tsconfig.json",
        "packages/renderer/tsconfig.json",
        "packages/sandbox/tsconfig.json",
        "packages/sdk/tsconfig.json",
        "packages/server-bin/tsconfig.json",
        "packages/server-client/tsconfig.json",
        "packages/solar/tsconfig.json",
        "packages/spatial/tsconfig.json",
        "packages/viewer/tsconfig.json",
        "tests/tsconfig.json",
        "tools/demo-kit/tsconfig.json",
        "tsconfig.json"
      ],
      "toolchain_manifests": [
        "Cargo.toml",
        "apps/server/Cargo.toml",
        "rust/clash/Cargo.toml",
        "rust/core/Cargo.toml",
        "rust/core/fuzz/Cargo.toml",
        "rust/csg-thread-bench/Cargo.toml",
        "rust/export/Cargo.toml",
        "rust/ffi/Cargo.toml",
        "rust/geometry/Cargo.toml",
        "rust/geometry/fuzz/Cargo.toml",
        "rust/processing/Cargo.toml",
        "rust/python/Cargo.toml",
        "rust/wasm-bindings/Cargo.toml"
      ],
      "largest_source_bytes": 1948298,
      "source_files_sampled": 2574,
      "oversized_source_files": 33,
      "agent_instruction_files": [
        ".cursorrules",
        "AGENTS.md",
        "CLAUDE.md",
        "apps/viewer/AGENTS.md",
        "packages/collab-server/AGENTS.md",
        "packages/collab/AGENTS.md",
        "packages/geometry/AGENTS.md",
        "rust/AGENTS.md"
      ],
      "agent_instruction_max_bytes": 19343
    },
    "dependencies": {
      "manifests": [
        "Cargo.toml",
        "package.json",
        "requirements-docs.txt"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.11",
            "severity": "low",
            "ecosystem": "npm",
            "cvss_score": 0,
            "advisory_ids": [
              "GHSA-c2j3-45gr-mqc4"
            ],
            "fixed_version": "3.4.12",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "async-std",
            "direct": false,
            "version": "1.13.2",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2025-0052"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 331
          },
          {
            "name": "crossbeam-epoch",
            "direct": false,
            "version": "0.9.18",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0204"
            ],
            "fixed_version": "0.9.20",
            "advisory_count": 1,
            "oldest_advisory_days": 15
          },
          {
            "name": "memmap2",
            "direct": false,
            "version": "0.5.10",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2026-0186"
            ],
            "fixed_version": "0.9.11",
            "advisory_count": 1,
            "oldest_advisory_days": 31
          },
          {
            "name": "paste",
            "direct": false,
            "version": "1.0.15",
            "severity": "unknown",
            "ecosystem": "crates",
            "cvss_score": null,
            "advisory_ids": [
              "RUSTSEC-2024-0436"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 652
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "unknown": 4
        },
        "advisory_count": 5,
        "affected_count": 5,
        "assessed_count": 1306,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 156,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "crates",
        "npm",
        "pypi"
      ],
      "dependencies": [
        {
          "name": "@neondatabase/serverless",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.0"
        },
        {
          "name": "mimalloc",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.1"
        },
        {
          "name": "axum",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.8"
        },
        {
          "name": "tower",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.5"
        },
        {
          "name": "tower-http",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.7"
        },
        {
          "name": "tokio",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1"
        },
        {
          "name": "ifc-lite-core",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "ifc-lite-geometry",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "ifc-lite-processing",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": null
        },
        {
          "name": "rayon",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.10"
        },
        {
          "name": "serde",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "serde_json",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "tokio-stream",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.1"
        },
        {
          "name": "futures",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.3"
        },
        {
          "name": "async-stream",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.3"
        },
        {
          "name": "cacache",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "13"
        },
        {
          "name": "sha2",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.11"
        },
        {
          "name": "hex",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.4"
        },
        {
          "name": "tracing",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.1"
        },
        {
          "name": "tracing-subscriber",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.3"
        },
        {
          "name": "thiserror",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "2.0"
        },
        {
          "name": "anyhow",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "rustc-hash",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "2.1"
        },
        {
          "name": "num_cpus",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.16"
        },
        {
          "name": "arrow",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "59"
        },
        {
          "name": "parquet",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "59"
        },
        {
          "name": "bytes",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.5"
        },
        {
          "name": "flate2",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "1.0"
        },
        {
          "name": "zip",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "8"
        },
        {
          "name": "base64",
          "manifest": "apps/server/Cargo.toml",
          "ecosystem": "crates",
          "version_constraint": "0.22"
        },
        {
          "name": "@ifc-lite/bcf",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/cache",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/clash",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/collab",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/create",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/diff",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/drawing-2d",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/embed-protocol",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/encoding",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/export",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/extensions",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ids",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ifcx",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/lens",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/lists",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mcp",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/merge",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mutations",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/parser",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/pointcloud",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/query",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/renderer",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/sandbox",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/sdk",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/server-client",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/solar",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/spatial",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/wasm",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "react",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.7"
        },
        {
          "name": "react-dom",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.7"
        },
        {
          "name": "zustand",
          "manifest": "apps/viewer-embed/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.0.14"
        },
        {
          "name": "@anthropic-ai/sdk",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.112.4"
        },
        {
          "name": "@codemirror/autocomplete",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.20.3"
        },
        {
          "name": "@codemirror/commands",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.10.4"
        },
        {
          "name": "@codemirror/lang-javascript",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.2.5"
        },
        {
          "name": "@codemirror/language",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.12.4"
        },
        {
          "name": "@codemirror/search",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.7.1"
        },
        {
          "name": "@codemirror/state",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.7.1"
        },
        {
          "name": "@codemirror/view",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.43.6"
        },
        {
          "name": "@floating-ui/dom",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.8.0"
        },
        {
          "name": "@ifc-lite/bcf",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/cache",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/collab",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/clash",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/create",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/diff",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ifcx",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/merge",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/drawing-2d",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/encoding",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/export",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/extensions",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ids",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/lens",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/lists",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mcp",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mutations",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/parser",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/pointcloud",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/query",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/renderer",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/sandbox",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/sdk",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/server-client",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/solar",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/spatial",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/wasm",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@radix-ui/react-collapsible",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.17"
        },
        {
          "name": "@radix-ui/react-dialog",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.20"
        },
        {
          "name": "@radix-ui/react-dropdown-menu",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.21"
        },
        {
          "name": "@radix-ui/react-label",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.12"
        },
        {
          "name": "@radix-ui/react-progress",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.13"
        },
        {
          "name": "@radix-ui/react-scroll-area",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.15"
        },
        {
          "name": "@radix-ui/react-select",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.3.4"
        },
        {
          "name": "@radix-ui/react-separator",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.12"
        },
        {
          "name": "@radix-ui/react-slot",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.3.0"
        },
        {
          "name": "@radix-ui/react-switch",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.3.4"
        },
        {
          "name": "@radix-ui/react-tabs",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.1.18"
        },
        {
          "name": "@radix-ui/react-tooltip",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.2.13"
        },
        {
          "name": "@tanstack/react-virtual",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.14.7"
        },
        {
          "name": "@vercel/analytics",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.0.1"
        },
        {
          "name": "apache-arrow",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^21.2.0"
        },
        {
          "name": "autoprefixer",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.5.4"
        },
        {
          "name": "beautiful-theme-toggle",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.1"
        },
        {
          "name": "cesium",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.143.0"
        },
        {
          "name": "class-variance-authority",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.7.1"
        },
        {
          "name": "clsx",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.1"
        },
        {
          "name": "exceljs",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.4.0"
        },
        {
          "name": "fflate",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.8.3"
        },
        {
          "name": "geotiff",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.0.5"
        },
        {
          "name": "jspdf",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.2.1"
        },
        {
          "name": "jspdf-autotable",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.0.8"
        },
        {
          "name": "lucide-react",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.25.0"
        },
        {
          "name": "maplibre-gl",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.24.0"
        },
        {
          "name": "parquet-wasm",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.7.2"
        },
        {
          "name": "postcss",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.5.21"
        },
        {
          "name": "posthog-js",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.405.3"
        },
        {
          "name": "proj4",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.20.9"
        },
        {
          "name": "react",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.7"
        },
        {
          "name": "react-dom",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^19.2.7"
        },
        {
          "name": "react-markdown",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.1.0"
        },
        {
          "name": "react-resizable-panels",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.12.2"
        },
        {
          "name": "remark-gfm",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.0.0"
        },
        {
          "name": "tailwind-merge",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.6.0"
        },
        {
          "name": "tailwindcss",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.3.3"
        },
        {
          "name": "three",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.185.1"
        },
        {
          "name": "zustand",
          "manifest": "apps/viewer/package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.0.14"
        },
        {
          "name": "@ifc-lite/encoding",
          "manifest": "packages/bcf/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "jszip",
          "manifest": "packages/bcf/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "packages/cache/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "packages/cache/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/spatial",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/parser",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/query",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/bcf",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ifcx",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/wasm",
          "manifest": "packages/clash/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/bcf",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/clash",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/create",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/export",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/extensions",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ids",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ifcx",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/merge",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mcp",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mutations",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/parser",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/query",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/sandbox",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/sdk",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/viewer-core",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/wasm",
          "manifest": "packages/cli/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "packages/codegen/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "commander",
          "manifest": "packages/codegen/package.json",
          "ecosystem": "npm",
          "version_constraint": "^15.0.0"
        },
        {
          "name": "@ifc-lite/collab",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ifcx",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/merge",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "lib0",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.99"
        },
        {
          "name": "ws",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.21.1"
        },
        {
          "name": "y-protocols",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.6"
        },
        {
          "name": "yjs",
          "manifest": "packages/collab-server/package.json",
          "ecosystem": "npm",
          "version_constraint": "^13.6.31"
        },
        {
          "name": "@automerge/automerge",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.3.2"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/ifcx",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mutations",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "lib0",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.99"
        },
        {
          "name": "y-indexeddb",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "^9.0.12"
        },
        {
          "name": "y-protocols",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.0.6"
        },
        {
          "name": "y-websocket",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.0.0"
        },
        {
          "name": "yjs",
          "manifest": "packages/collab/package.json",
          "ecosystem": "npm",
          "version_constraint": "^13.6.31"
        },
        {
          "name": "@ifc-lite/encoding",
          "manifest": "packages/create/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mutations",
          "manifest": "packages/create/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/parser",
          "manifest": "packages/create/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "packages/drawing-2d/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/embed-protocol",
          "manifest": "packages/embed-sdk/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/geometry",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/data",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/encoding",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/parser",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "@ifc-lite/mutations",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "workspace:^"
        },
        {
          "name": "parquet-wasm",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.7.2"
        },
        {
          "name": "apache-arrow",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "^21.2.0"
        },
        {
          "name": "jszip",
          "manifest": "packages/export/package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.10.0"
        },
        {
          "name": "acorn",
          "manifest": "packages/extensions/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.17.0"
        },
        {
          "name": "acorn-walk",
          "manifest": "packages/extensions/package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.3.0"
        },
        {
          "name": "fflate",
          "manifest": "packages/extensions/package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.8.2"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "anyhow",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "anyhow",
            "direct": true,
            "version": "1.0.104",
            "ecosystem": "crates"
          },
          {
            "name": "arrow",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "arrow",
            "direct": true,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-stream",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "async-stream",
            "direct": true,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "axum",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "axum",
            "direct": true,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": "0.21.7",
            "ecosystem": "crates"
          },
          {
            "name": "base64",
            "direct": true,
            "version": "0.22.1",
            "ecosystem": "crates"
          },
          {
            "name": "bytes",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "bytes",
            "direct": true,
            "version": "1.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "cacache",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "cacache",
            "direct": true,
            "version": "13.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "flate2",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "flate2",
            "direct": true,
            "version": "1.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "futures",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "futures",
            "direct": true,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "hex",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "hex",
            "direct": true,
            "version": "0.4.3",
            "ecosystem": "crates"
          },
          {
            "name": "ifc-lite-core",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "ifc-lite-geometry",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "ifc-lite-processing",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "mimalloc",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "mimalloc",
            "direct": true,
            "version": "0.1.52",
            "ecosystem": "crates"
          },
          {
            "name": "num_cpus",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "num_cpus",
            "direct": true,
            "version": "1.17.0",
            "ecosystem": "crates"
          },
          {
            "name": "parquet",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "parquet",
            "direct": true,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "rayon",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rayon",
            "direct": true,
            "version": "1.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustc-hash",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rustc-hash",
            "direct": true,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "rustc-hash",
            "direct": true,
            "version": "2.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": true,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde",
            "direct": true,
            "version": "1.0.229",
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": "1.0.150",
            "ecosystem": "crates"
          },
          {
            "name": "serde_json",
            "direct": true,
            "version": "1.0.151",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": true,
            "version": "0.10.9",
            "ecosystem": "crates"
          },
          {
            "name": "sha2",
            "direct": true,
            "version": "0.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": true,
            "version": "1.0.69",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": true,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror",
            "direct": true,
            "version": "2.0.19",
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tokio",
            "direct": true,
            "version": "1.53.1",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-stream",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tokio-stream",
            "direct": true,
            "version": "0.1.18",
            "ecosystem": "crates"
          },
          {
            "name": "tower",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tower",
            "direct": true,
            "version": "0.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-http",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tower-http",
            "direct": true,
            "version": "0.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "tracing",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tracing",
            "direct": true,
            "version": "0.1.44",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-subscriber",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "tracing-subscriber",
            "direct": true,
            "version": "0.3.23",
            "ecosystem": "crates"
          },
          {
            "name": "zip",
            "direct": true,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "zip",
            "direct": true,
            "version": "8.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "@anthropic-ai/sdk",
            "direct": true,
            "version": "0.112.4",
            "ecosystem": "npm"
          },
          {
            "name": "@anthropic-ai/sdk",
            "direct": true,
            "version": "^0.112.4",
            "ecosystem": "npm"
          },
          {
            "name": "@automerge/automerge",
            "direct": true,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@automerge/automerge",
            "direct": true,
            "version": "^3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/autocomplete",
            "direct": true,
            "version": "6.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/autocomplete",
            "direct": true,
            "version": "^6.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/commands",
            "direct": true,
            "version": "6.10.4",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/commands",
            "direct": true,
            "version": "^6.10.4",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lang-javascript",
            "direct": true,
            "version": "6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lang-javascript",
            "direct": true,
            "version": "^6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/language",
            "direct": true,
            "version": "6.12.4",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/language",
            "direct": true,
            "version": "^6.12.4",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/search",
            "direct": true,
            "version": "6.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/search",
            "direct": true,
            "version": "^6.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/state",
            "direct": true,
            "version": "6.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/state",
            "direct": true,
            "version": "^6.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/view",
            "direct": true,
            "version": "6.43.6",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/view",
            "direct": true,
            "version": "^6.43.6",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/dom",
            "direct": true,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/dom",
            "direct": true,
            "version": "^1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/data",
            "direct": true,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/data",
            "direct": true,
            "version": "^2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/encoding",
            "direct": true,
            "version": "1.14.6",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/geometry",
            "direct": true,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/geometry",
            "direct": true,
            "version": "^2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/ifcx",
            "direct": true,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/mutations",
            "direct": true,
            "version": "1.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/parser",
            "direct": true,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/parser",
            "direct": true,
            "version": "^3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/pointcloud",
            "direct": true,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@ifc-lite/wasm",
            "direct": true,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@neondatabase/serverless",
            "direct": true,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collapsible",
            "direct": true,
            "version": "1.1.17",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collapsible",
            "direct": true,
            "version": "^1.1.17",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": true,
            "version": "1.1.20",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": true,
            "version": "^1.1.20",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dropdown-menu",
            "direct": true,
            "version": "2.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dropdown-menu",
            "direct": true,
            "version": "^2.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-label",
            "direct": true,
            "version": "2.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-label",
            "direct": true,
            "version": "^2.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-progress",
            "direct": true,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-progress",
            "direct": true,
            "version": "^1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-scroll-area",
            "direct": true,
            "version": "1.2.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-scroll-area",
            "direct": true,
            "version": "^1.2.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-select",
            "direct": true,
            "version": "2.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-select",
            "direct": true,
            "version": "^2.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-separator",
            "direct": true,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-separator",
            "direct": true,
            "version": "^1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": true,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": true,
            "version": "^1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-switch",
            "direct": true,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-switch",
            "direct": true,
            "version": "^1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tabs",
            "direct": true,
            "version": "1.1.18",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tabs",
            "direct": true,
            "version": "^1.1.18",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tooltip",
            "direct": true,
            "version": "1.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tooltip",
            "direct": true,
            "version": "^1.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/react-virtual",
            "direct": true,
            "version": "3.14.7",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/react-virtual",
            "direct": true,
            "version": "^3.14.7",
            "ecosystem": "npm"
          },
          {
            "name": "@vercel/analytics",
            "direct": true,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vercel/analytics",
            "direct": true,
            "version": "^2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": true,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": true,
            "version": "^8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-walk",
            "direct": true,
            "version": "8.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-walk",
            "direct": true,
            "version": "^8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "apache-arrow",
            "direct": true,
            "version": "14.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "apache-arrow",
            "direct": true,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "apache-arrow",
            "direct": true,
            "version": "^21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": true,
            "version": "10.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": true,
            "version": "^10.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "beautiful-theme-toggle",
            "direct": true,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "beautiful-theme-toggle",
            "direct": true,
            "version": "^1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "cesium",
            "direct": true,
            "version": "1.143.0",
            "ecosystem": "npm"
          },
          {
            "name": "cesium",
            "direct": true,
            "version": "^1.143.0",
            "ecosystem": "npm"
          },
          {
            "name": "class-variance-authority",
            "direct": true,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "class-variance-authority",
            "direct": true,
            "version": "^0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": true,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": true,
            "version": "^2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "15.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": true,
            "version": "^15.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "exceljs",
            "direct": true,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "exceljs",
            "direct": true,
            "version": "^4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "fflate",
            "direct": true,
            "version": "0.4.9",
            "ecosystem": "npm"
          },
          {
            "name": "fflate",
            "direct": true,
            "version": "0.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "fflate",
            "direct": true,
            "version": "^0.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "fflate",
            "direct": true,
            "version": "^0.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "geotiff",
            "direct": true,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "geotiff",
            "direct": true,
            "version": "^3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "jspdf",
            "direct": true,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "jspdf",
            "direct": true,
            "version": "^4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "jspdf-autotable",
            "direct": true,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "jspdf-autotable",
            "direct": true,
            "version": "^5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "jszip",
            "direct": true,
            "version": "3.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "jszip",
            "direct": true,
            "version": "^3.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "lib0",
            "direct": true,
            "version": "0.2.117",
            "ecosystem": "npm"
          },
          {
            "name": "lib0",
            "direct": true,
            "version": "^0.2.99",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": true,
            "version": "1.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": true,
            "version": "^1.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "maplibre-gl",
            "direct": true,
            "version": "5.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "maplibre-gl",
            "direct": true,
            "version": "^5.24.0",
            "ecosystem": "npm"
          },
          {
            "name": "parquet-wasm",
            "direct": true,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "parquet-wasm",
            "direct": true,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "parquet-wasm",
            "direct": true,
            "version": "^0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": true,
            "version": "8.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": true,
            "version": "^8.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "posthog-js",
            "direct": true,
            "version": "1.405.3",
            "ecosystem": "npm"
          },
          {
            "name": "posthog-js",
            "direct": true,
            "version": "^1.405.3",
            "ecosystem": "npm"
          },
          {
            "name": "proj4",
            "direct": true,
            "version": "2.20.9",
            "ecosystem": "npm"
          },
          {
            "name": "proj4",
            "direct": true,
            "version": "^2.20.9",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": true,
            "version": "19.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": true,
            "version": "^19.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": true,
            "version": "19.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": true,
            "version": "^19.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "react-markdown",
            "direct": true,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-markdown",
            "direct": true,
            "version": "^10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-resizable-panels",
            "direct": true,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-resizable-panels",
            "direct": true,
            "version": "^4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": true,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": true,
            "version": "^4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": true,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": true,
            "version": "^3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": true,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": true,
            "version": "^4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "three",
            "direct": true,
            "version": "0.185.1",
            "ecosystem": "npm"
          },
          {
            "name": "three",
            "direct": true,
            "version": "^0.185.1",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": true,
            "version": "8.21.1",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": true,
            "version": "^8.21.1",
            "ecosystem": "npm"
          },
          {
            "name": "y-indexeddb",
            "direct": true,
            "version": "9.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "y-indexeddb",
            "direct": true,
            "version": "^9.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "y-protocols",
            "direct": true,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "y-protocols",
            "direct": true,
            "version": "^1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "y-websocket",
            "direct": true,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "y-websocket",
            "direct": true,
            "version": "^3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yjs",
            "direct": true,
            "version": "13.6.31",
            "ecosystem": "npm"
          },
          {
            "name": "yjs",
            "direct": true,
            "version": "^13.6.31",
            "ecosystem": "npm"
          },
          {
            "name": "zustand",
            "direct": true,
            "version": "5.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "zustand",
            "direct": true,
            "version": "^5.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "adler2",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "ahash",
            "direct": false,
            "version": "0.8.12",
            "ecosystem": "crates"
          },
          {
            "name": "aho-corasick",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "alloca",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "android_system_properties",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "anes",
            "direct": false,
            "version": "0.1.6",
            "ecosystem": "crates"
          },
          {
            "name": "anstyle",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "crates"
          },
          {
            "name": "approx",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "approx",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "arbitrary",
            "direct": false,
            "version": "1.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-arith",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-array",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-buffer",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-cast",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-data",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-ipc",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-ord",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-row",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-schema",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-select",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "arrow-string",
            "direct": false,
            "version": "59.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-channel",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-channel",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-compression",
            "direct": false,
            "version": "0.4.42",
            "ecosystem": "crates"
          },
          {
            "name": "async-executor",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-global-executor",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "async-io",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-lock",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-process",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "async-signal",
            "direct": false,
            "version": "0.2.14",
            "ecosystem": "crates"
          },
          {
            "name": "async-std",
            "direct": false,
            "version": "1.13.2",
            "ecosystem": "crates"
          },
          {
            "name": "async-stream-impl",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "async-task",
            "direct": false,
            "version": "4.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "async-trait",
            "direct": false,
            "version": "0.1.89",
            "ecosystem": "crates"
          },
          {
            "name": "atoi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "atomic-waker",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "autocfg",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "autocfg",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "axum-core",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "crates"
          },
          {
            "name": "bit-set",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "bit-vec",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "2.11.1",
            "ecosystem": "crates"
          },
          {
            "name": "bitflags",
            "direct": false,
            "version": "2.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "block-buffer",
            "direct": false,
            "version": "0.10.4",
            "ecosystem": "crates"
          },
          {
            "name": "block-buffer",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "blocking",
            "direct": false,
            "version": "1.6.2",
            "ecosystem": "crates"
          },
          {
            "name": "bnum",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "bnum",
            "direct": false,
            "version": "0.14.4",
            "ecosystem": "crates"
          },
          {
            "name": "bumpalo",
            "direct": false,
            "version": "3.20.2",
            "ecosystem": "crates"
          },
          {
            "name": "bytemuck",
            "direct": false,
            "version": "1.25.0",
            "ecosystem": "crates"
          },
          {
            "name": "cast",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "cc",
            "direct": false,
            "version": "1.2.62",
            "ecosystem": "crates"
          },
          {
            "name": "cc",
            "direct": false,
            "version": "1.2.65",
            "ecosystem": "crates"
          },
          {
            "name": "cfg-if",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "crates"
          },
          {
            "name": "chrono",
            "direct": false,
            "version": "0.4.44",
            "ecosystem": "crates"
          },
          {
            "name": "ciborium",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "ciborium-io",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "ciborium-ll",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "clap",
            "direct": false,
            "version": "4.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "clap_builder",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "clap_lex",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "compression-codecs",
            "direct": false,
            "version": "0.4.38",
            "ecosystem": "crates"
          },
          {
            "name": "compression-core",
            "direct": false,
            "version": "0.4.32",
            "ecosystem": "crates"
          },
          {
            "name": "concurrent-queue",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "console_error_panic_hook",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "console_error_panic_hook",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "const-oid",
            "direct": false,
            "version": "0.10.2",
            "ecosystem": "crates"
          },
          {
            "name": "const-random",
            "direct": false,
            "version": "0.1.18",
            "ecosystem": "crates"
          },
          {
            "name": "const-random-macro",
            "direct": false,
            "version": "0.1.16",
            "ecosystem": "crates"
          },
          {
            "name": "core-foundation-sys",
            "direct": false,
            "version": "0.8.7",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "cpufeatures",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "crc32fast",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "criterion",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "criterion",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "criterion-plot",
            "direct": false,
            "version": "0.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-channel",
            "direct": false,
            "version": "0.5.15",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-deque",
            "direct": false,
            "version": "0.8.6",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-epoch",
            "direct": false,
            "version": "0.9.18",
            "ecosystem": "crates"
          },
          {
            "name": "crossbeam-utils",
            "direct": false,
            "version": "0.8.21",
            "ecosystem": "crates"
          },
          {
            "name": "crunchy",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-common",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "crypto-common",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.10.7",
            "ecosystem": "crates"
          },
          {
            "name": "digest",
            "direct": false,
            "version": "0.11.3",
            "ecosystem": "crates"
          },
          {
            "name": "earcutr",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "earcutr",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "either",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "crates"
          },
          {
            "name": "either",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "crates"
          },
          {
            "name": "encoding_rs",
            "direct": false,
            "version": "0.8.35",
            "ecosystem": "crates"
          },
          {
            "name": "equivalent",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "errno",
            "direct": false,
            "version": "0.3.14",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "event-listener-strategy",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "crates"
          },
          {
            "name": "fast-float2",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "fast-float2",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "fastrand",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "fdeflate",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "find-msvc-tools",
            "direct": false,
            "version": "0.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.12.19",
            "ecosystem": "crates"
          },
          {
            "name": "fnv",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "foldhash",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "form_urlencoded",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "crates"
          },
          {
            "name": "futures-channel",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-core",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "futures-core",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-core",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-executor",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-io",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-lite",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "crates"
          },
          {
            "name": "futures-macro",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-macro",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-sink",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-task",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-task",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": "0.3.32",
            "ecosystem": "crates"
          },
          {
            "name": "futures-util",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "generic-array",
            "direct": false,
            "version": "0.14.7",
            "ecosystem": "crates"
          },
          {
            "name": "geometry-predicates",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "geometry-predicates",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "crates"
          },
          {
            "name": "getrandom",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "glam",
            "direct": false,
            "version": "0.30.10",
            "ecosystem": "crates"
          },
          {
            "name": "glam",
            "direct": false,
            "version": "0.31.1",
            "ecosystem": "crates"
          },
          {
            "name": "glam",
            "direct": false,
            "version": "0.32.1",
            "ecosystem": "crates"
          },
          {
            "name": "glam",
            "direct": false,
            "version": "0.33.0",
            "ecosystem": "crates"
          },
          {
            "name": "glam",
            "direct": false,
            "version": "0.33.1",
            "ecosystem": "crates"
          },
          {
            "name": "glam",
            "direct": false,
            "version": "0.33.2",
            "ecosystem": "crates"
          },
          {
            "name": "gloo-timers",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "half",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.15.5",
            "ecosystem": "crates"
          },
          {
            "name": "hashbrown",
            "direct": false,
            "version": "0.17.1",
            "ecosystem": "crates"
          },
          {
            "name": "heck",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "hermit-abi",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "crates"
          },
          {
            "name": "http",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "http-body",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "http-body-util",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "httparse",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "httpdate",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "crates"
          },
          {
            "name": "hybrid-array",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "hyper",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "hyper-util",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "i_float",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "i_key_sort",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "crates"
          },
          {
            "name": "i_overlay",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "i_overlay",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "i_overlay",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "i_shape",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "i_tree",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "crates"
          },
          {
            "name": "iana-time-zone",
            "direct": false,
            "version": "0.1.65",
            "ecosystem": "crates"
          },
          {
            "name": "iana-time-zone-haiku",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "id-arena",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "ifc-lite-clash",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "ifc-lite-export",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "indexmap",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "insta",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "insta",
            "direct": false,
            "version": "1.48.0",
            "ecosystem": "crates"
          },
          {
            "name": "itertools",
            "direct": false,
            "version": "0.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "itertools",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "crates"
          },
          {
            "name": "itoa",
            "direct": false,
            "version": "1.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "jobserver",
            "direct": false,
            "version": "0.1.34",
            "ecosystem": "crates"
          },
          {
            "name": "jpeg-decoder",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "jpeg-decoder",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "js-sys",
            "direct": false,
            "version": "0.3.83",
            "ecosystem": "crates"
          },
          {
            "name": "kv-log-macro",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "lazy_static",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "leb128fmt",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-core",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "lexical-core",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-parse-float",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-parse-integer",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-util",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-write-float",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "lexical-write-integer",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "libc",
            "direct": false,
            "version": "0.2.186",
            "ecosystem": "crates"
          },
          {
            "name": "libfuzzer-sys",
            "direct": false,
            "version": "0.4.13",
            "ecosystem": "crates"
          },
          {
            "name": "libm",
            "direct": false,
            "version": "0.2.16",
            "ecosystem": "crates"
          },
          {
            "name": "libmimalloc-sys",
            "direct": false,
            "version": "0.1.49",
            "ecosystem": "crates"
          },
          {
            "name": "linux-raw-sys",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "crates"
          },
          {
            "name": "lock_api",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "log",
            "direct": false,
            "version": "0.4.29",
            "ecosystem": "crates"
          },
          {
            "name": "lz4_flex",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "matchers",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "matchit",
            "direct": false,
            "version": "0.8.4",
            "ecosystem": "crates"
          },
          {
            "name": "matrixmultiply",
            "direct": false,
            "version": "0.3.10",
            "ecosystem": "crates"
          },
          {
            "name": "memchr",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "memchr",
            "direct": false,
            "version": "2.8.2",
            "ecosystem": "crates"
          },
          {
            "name": "memchr",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "memmap2",
            "direct": false,
            "version": "0.5.10",
            "ecosystem": "crates"
          },
          {
            "name": "miette",
            "direct": false,
            "version": "5.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "miette-derive",
            "direct": false,
            "version": "5.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "0.3.17",
            "ecosystem": "crates"
          },
          {
            "name": "minicov",
            "direct": false,
            "version": "0.3.8",
            "ecosystem": "crates"
          },
          {
            "name": "minimal-lexical",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "miniz_oxide",
            "direct": false,
            "version": "0.8.9",
            "ecosystem": "crates"
          },
          {
            "name": "mio",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "multer",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "nalgebra",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "nalgebra",
            "direct": false,
            "version": "0.35.0",
            "ecosystem": "crates"
          },
          {
            "name": "nom",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "nom",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "crates"
          },
          {
            "name": "nu-ansi-term",
            "direct": false,
            "version": "0.50.3",
            "ecosystem": "crates"
          },
          {
            "name": "num-bigint",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "crates"
          },
          {
            "name": "num-bigint",
            "direct": false,
            "version": "0.4.7",
            "ecosystem": "crates"
          },
          {
            "name": "num-complex",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "crates"
          },
          {
            "name": "num-integer",
            "direct": false,
            "version": "0.1.46",
            "ecosystem": "crates"
          },
          {
            "name": "num-rational",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "num-rational",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "crates"
          },
          {
            "name": "num-traits",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "num-traits",
            "direct": false,
            "version": "0.2.19",
            "ecosystem": "crates"
          },
          {
            "name": "once_cell",
            "direct": false,
            "version": "1.21.4",
            "ecosystem": "crates"
          },
          {
            "name": "oorandom",
            "direct": false,
            "version": "11.1.5",
            "ecosystem": "crates"
          },
          {
            "name": "page_size",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "crates"
          },
          {
            "name": "parking",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot",
            "direct": false,
            "version": "0.12.5",
            "ecosystem": "crates"
          },
          {
            "name": "parking_lot_core",
            "direct": false,
            "version": "0.9.12",
            "ecosystem": "crates"
          },
          {
            "name": "paste",
            "direct": false,
            "version": "1.0.15",
            "ecosystem": "crates"
          },
          {
            "name": "percent-encoding",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "pin-project-lite",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "crates"
          },
          {
            "name": "pin-utils",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "crates"
          },
          {
            "name": "piper",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "crates"
          },
          {
            "name": "pkg-config",
            "direct": false,
            "version": "0.3.33",
            "ecosystem": "crates"
          },
          {
            "name": "plotters",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "plotters-backend",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "plotters-svg",
            "direct": false,
            "version": "0.3.7",
            "ecosystem": "crates"
          },
          {
            "name": "png",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "png",
            "direct": false,
            "version": "0.18.1",
            "ecosystem": "crates"
          },
          {
            "name": "polling",
            "direct": false,
            "version": "3.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "portable-atomic",
            "direct": false,
            "version": "1.13.1",
            "ecosystem": "crates"
          },
          {
            "name": "ppv-lite86",
            "direct": false,
            "version": "0.2.21",
            "ecosystem": "crates"
          },
          {
            "name": "prettyplease",
            "direct": false,
            "version": "0.2.37",
            "ecosystem": "crates"
          },
          {
            "name": "proc-macro2",
            "direct": false,
            "version": "1.0.106",
            "ecosystem": "crates"
          },
          {
            "name": "proptest",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "proptest",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-build-config",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-ffi",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-macros",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "pyo3-macros-backend",
            "direct": false,
            "version": "0.29.0",
            "ecosystem": "crates"
          },
          {
            "name": "quick-error",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "crates"
          },
          {
            "name": "quote",
            "direct": false,
            "version": "1.0.45",
            "ecosystem": "crates"
          },
          {
            "name": "quote",
            "direct": false,
            "version": "1.0.46",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "r-efi",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "crates"
          },
          {
            "name": "rand_chacha",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "crates"
          },
          {
            "name": "rand_core",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "rand_xorshift",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "rawpointer",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "rayon-core",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "rayon-core",
            "direct": false,
            "version": "1.13.0",
            "ecosystem": "crates"
          },
          {
            "name": "redox_syscall",
            "direct": false,
            "version": "0.5.18",
            "ecosystem": "crates"
          },
          {
            "name": "reflink-copy",
            "direct": false,
            "version": "0.1.29",
            "ecosystem": "crates"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "1.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "regex-automata",
            "direct": false,
            "version": "0.4.14",
            "ecosystem": "crates"
          },
          {
            "name": "regex-syntax",
            "direct": false,
            "version": "0.8.10",
            "ecosystem": "crates"
          },
          {
            "name": "robust",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "robust",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "rustc_version",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "rustix",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "rustversion",
            "direct": false,
            "version": "1.0.22",
            "ecosystem": "crates"
          },
          {
            "name": "rusty-fork",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "ryu",
            "direct": false,
            "version": "1.0.23",
            "ecosystem": "crates"
          },
          {
            "name": "safe_arch",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "crates"
          },
          {
            "name": "same-file",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "crates"
          },
          {
            "name": "scopeguard",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "1.0.28",
            "ecosystem": "crates"
          },
          {
            "name": "seq-macro",
            "direct": false,
            "version": "0.3.6",
            "ecosystem": "crates"
          },
          {
            "name": "serde-wasm-bindgen",
            "direct": false,
            "version": "0.6.5",
            "ecosystem": "crates"
          },
          {
            "name": "serde_core",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_core",
            "direct": false,
            "version": "1.0.229",
            "ecosystem": "crates"
          },
          {
            "name": "serde_derive",
            "direct": false,
            "version": "1.0.228",
            "ecosystem": "crates"
          },
          {
            "name": "serde_derive",
            "direct": false,
            "version": "1.0.229",
            "ecosystem": "crates"
          },
          {
            "name": "serde_path_to_error",
            "direct": false,
            "version": "0.1.20",
            "ecosystem": "crates"
          },
          {
            "name": "serde_urlencoded",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "crates"
          },
          {
            "name": "sha-1",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "crates"
          },
          {
            "name": "sha1",
            "direct": false,
            "version": "0.10.6",
            "ecosystem": "crates"
          },
          {
            "name": "sharded-slab",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "crates"
          },
          {
            "name": "shlex",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "shlex",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "crates"
          },
          {
            "name": "signal-hook-registry",
            "direct": false,
            "version": "1.4.8",
            "ecosystem": "crates"
          },
          {
            "name": "simba",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "crates"
          },
          {
            "name": "simd-adler32",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "similar",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "slab",
            "direct": false,
            "version": "0.4.12",
            "ecosystem": "crates"
          },
          {
            "name": "smallvec",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "smallvec",
            "direct": false,
            "version": "1.15.2",
            "ecosystem": "crates"
          },
          {
            "name": "snap",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "socket2",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "crates"
          },
          {
            "name": "spin",
            "direct": false,
            "version": "0.9.8",
            "ecosystem": "crates"
          },
          {
            "name": "ssri",
            "direct": false,
            "version": "9.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "2.0.117",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "2.0.118",
            "ecosystem": "crates"
          },
          {
            "name": "syn",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "sync_wrapper",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "target-lexicon",
            "direct": false,
            "version": "0.13.5",
            "ecosystem": "crates"
          },
          {
            "name": "tempfile",
            "direct": false,
            "version": "3.27.0",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "1.0.69",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "crates"
          },
          {
            "name": "thiserror-impl",
            "direct": false,
            "version": "2.0.19",
            "ecosystem": "crates"
          },
          {
            "name": "thread_local",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "crates"
          },
          {
            "name": "tiny-keccak",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "crates"
          },
          {
            "name": "tinytemplate",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-macros",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "crates"
          },
          {
            "name": "tokio-util",
            "direct": false,
            "version": "0.7.18",
            "ecosystem": "crates"
          },
          {
            "name": "tower-layer",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tower-service",
            "direct": false,
            "version": "0.3.3",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-attributes",
            "direct": false,
            "version": "0.1.31",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-core",
            "direct": false,
            "version": "0.1.36",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-log",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "tracing-serde",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "crates"
          },
          {
            "name": "twox-hash",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "typed-path",
            "direct": false,
            "version": "0.12.3",
            "ecosystem": "crates"
          },
          {
            "name": "typenum",
            "direct": false,
            "version": "1.20.0",
            "ecosystem": "crates"
          },
          {
            "name": "typenum",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "crates"
          },
          {
            "name": "unarray",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-ident",
            "direct": false,
            "version": "1.0.24",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-width",
            "direct": false,
            "version": "0.1.14",
            "ecosystem": "crates"
          },
          {
            "name": "unicode-xid",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "crates"
          },
          {
            "name": "valuable",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "crates"
          },
          {
            "name": "value-bag",
            "direct": false,
            "version": "1.12.0",
            "ecosystem": "crates"
          },
          {
            "name": "version_check",
            "direct": false,
            "version": "0.9.5",
            "ecosystem": "crates"
          },
          {
            "name": "wait-timeout",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "walkdir",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasi",
            "direct": false,
            "version": "0.11.1+wasi-snapshot-preview1",
            "ecosystem": "crates"
          },
          {
            "name": "wasip2",
            "direct": false,
            "version": "1.0.3+wasi-0.2.9",
            "ecosystem": "crates"
          },
          {
            "name": "wasip2",
            "direct": false,
            "version": "1.0.4+wasi-0.2.12",
            "ecosystem": "crates"
          },
          {
            "name": "wasip3",
            "direct": false,
            "version": "0.4.0+wasi-0.3.0-rc-2026-01-06",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen",
            "direct": false,
            "version": "0.2.106",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-futures",
            "direct": false,
            "version": "0.4.56",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro",
            "direct": false,
            "version": "0.2.106",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-macro-support",
            "direct": false,
            "version": "0.2.106",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-rayon",
            "direct": false,
            "version": null,
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-rayon",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-shared",
            "direct": false,
            "version": "0.2.106",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-test",
            "direct": false,
            "version": "0.3.56",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-bindgen-test-macro",
            "direct": false,
            "version": "0.3.56",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-encoder",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasm-metadata",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wasm_sync",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "crates"
          },
          {
            "name": "wasmparser",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "web-sys",
            "direct": false,
            "version": "0.3.83",
            "ecosystem": "crates"
          },
          {
            "name": "wide",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "wide",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "crates"
          },
          {
            "name": "winapi",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-i686-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-util",
            "direct": false,
            "version": "0.1.11",
            "ecosystem": "crates"
          },
          {
            "name": "winapi-x86_64-pc-windows-gnu",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "crates"
          },
          {
            "name": "windows",
            "direct": false,
            "version": "0.62.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-collections",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-core",
            "direct": false,
            "version": "0.62.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-future",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-implement",
            "direct": false,
            "version": "0.60.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-interface",
            "direct": false,
            "version": "0.59.3",
            "ecosystem": "crates"
          },
          {
            "name": "windows-link",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-numerics",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-result",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-strings",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "crates"
          },
          {
            "name": "windows-sys",
            "direct": false,
            "version": "0.61.2",
            "ecosystem": "crates"
          },
          {
            "name": "windows-threading",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen",
            "direct": false,
            "version": "0.57.1",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen-core",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen-rust",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-bindgen-rust-macro",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-component",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "wit-parser",
            "direct": false,
            "version": "0.244.0",
            "ecosystem": "crates"
          },
          {
            "name": "xxhash-rust",
            "direct": false,
            "version": "0.8.15",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy",
            "direct": false,
            "version": "0.8.48",
            "ecosystem": "crates"
          },
          {
            "name": "zerocopy-derive",
            "direct": false,
            "version": "0.8.48",
            "ecosystem": "crates"
          },
          {
            "name": "zlib-rs",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "crates"
          },
          {
            "name": "zmij",
            "direct": false,
            "version": "1.0.21",
            "ecosystem": "crates"
          },
          {
            "name": "zopfli",
            "direct": false,
            "version": "0.8.3",
            "ecosystem": "crates"
          },
          {
            "name": "zstd",
            "direct": false,
            "version": "0.13.3",
            "ecosystem": "crates"
          },
          {
            "name": "zstd-safe",
            "direct": false,
            "version": "7.2.1",
            "ecosystem": "crates"
          },
          {
            "name": "zstd-sys",
            "direct": false,
            "version": "2.0.13+zstd.1.5.6",
            "ecosystem": "crates"
          },
          {
            "name": "@75lb/deep-merge",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@alloc/quick-lru",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@antfu/install-pkg",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babylonjs/core",
            "direct": false,
            "version": "9.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babylonjs/core",
            "direct": false,
            "version": "^9.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@cesium/engine",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@cesium/wasm-splats",
            "direct": false,
            "version": "0.1.0-alpha.2",
            "ecosystem": "npm"
          },
          {
            "name": "@cesium/widgets",
            "direct": false,
            "version": "16.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/apply-release-plan",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/assemble-release-plan",
            "direct": false,
            "version": "6.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-git",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-github",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/cli",
            "direct": false,
            "version": "2.31.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/errors",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-dependents-graph",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-github-info",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-release-plan",
            "direct": false,
            "version": "4.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-version-range-type",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/git",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/logger",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/parse",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/pre",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/read",
            "direct": false,
            "version": "0.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/should-skip-package",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/write",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@codemirror/lint",
            "direct": false,
            "version": "6.9.6",
            "ecosystem": "npm"
          },
          {
            "name": "@dimforge/rapier3d-compat",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "@edge-runtime/primitives",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@edge-runtime/vm",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "@fast-csv/format",
            "direct": false,
            "version": "4.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@fast-csv/parse",
            "direct": false,
            "version": "4.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/core",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/react-dom",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@floating-ui/utils",
            "direct": false,
            "version": "0.2.12",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/types",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@iconify/utils",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/external-editor",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/fs-minipass",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jitl/quickjs-ffi-types",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jitl/quickjs-wasmfile-debug-asyncify",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jitl/quickjs-wasmfile-debug-sync",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jitl/quickjs-wasmfile-release-asyncify",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jitl/quickjs-wasmfile-release-sync",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/common",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/highlight",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/javascript",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "@lezer/lr",
            "direct": false,
            "version": "1.4.10",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/find-root",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/get-packages",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/jsonlint-lines-primitives",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/point-geometry",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/tiny-sdf",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/unitbezier",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/vector-tile",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@mapbox/whoots-js",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@maplibre/geojson-vt",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@maplibre/geojson-vt",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@maplibre/maplibre-gl-style-spec",
            "direct": false,
            "version": "24.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "@maplibre/mlt",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@maplibre/vt-pbf",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@marijn/find-cluster-break",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@noble/hashes",
            "direct": false,
            "version": "^2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-android-arm-eabi",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-android-arm64",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-darwin-arm64",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-darwin-x64",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-freebsd-x64",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm-musleabihf",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm64-gnu",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm64-musl",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-riscv64-gnu",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-riscv64-musl",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-s390x-gnu",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-x64-gnu",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-x64-musl",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-openharmony-arm64",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-wasm32-wasi",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-win32-arm64-msvc",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-win32-ia32-msvc",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-win32-x64-msvc",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-android-arm-eabi",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-android-arm64",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-darwin-arm64",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-darwin-x64",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-freebsd-x64",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm-musleabihf",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm64-gnu",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm64-musl",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-riscv64-gnu",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-riscv64-musl",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-s390x-gnu",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-x64-gnu",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-x64-musl",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-openharmony-arm64",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-wasm32-wasi",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-win32-arm64-msvc",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-win32-x64-msvc",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "@petamoriken/float16",
            "direct": false,
            "version": "3.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@posthog/core",
            "direct": false,
            "version": "1.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@posthog/types",
            "direct": false,
            "version": "1.397.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/number",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/primitive",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-arrow",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-collection",
            "direct": false,
            "version": "1.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-compose-refs",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-context",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-direction",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dismissable-layer",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-guards",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-scope",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-id",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-menu",
            "direct": false,
            "version": "2.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popper",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-portal",
            "direct": false,
            "version": "1.1.14",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-presence",
            "direct": false,
            "version": "1.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-roving-focus",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-callback-ref",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-controllable-state",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-effect-event",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-is-hydrated",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-layout-effect",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-previous",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-rect",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-size",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-visually-hidden",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/rect",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/plugin-virtual",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "@spz-loader/core",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@stablelib/base64",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-add-jsx-attribute",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-remove-jsx-attribute",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-remove-jsx-empty-expression",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-replace-jsx-attribute-value",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-svg-dynamic-title",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-svg-em-dimensions",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-transform-react-native-svg",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-plugin-transform-svg-component",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/babel-preset",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/core",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/core",
            "direct": false,
            "version": "^8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/hast-util-to-babel-ast",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/plugin-jsx",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@svgr/plugin-jsx",
            "direct": false,
            "version": "^8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-darwin-arm64",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-darwin-x64",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-arm64-gnu",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-arm64-musl",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-x64-gnu",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-linux-x64-musl",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-win32-arm64-msvc",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-win32-ia32-msvc",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/core-win32-x64-msvc",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/counter",
            "direct": false,
            "version": "0.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/helpers",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/types",
            "direct": false,
            "version": "0.1.25",
            "ecosystem": "npm"
          },
          {
            "name": "@swc/wasm",
            "direct": false,
            "version": "1.15.8",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/node",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-android-arm64",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-arm64",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-x64",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-freebsd-x64",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-gnu",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-musl",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-gnu",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-musl",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-wasm32-wasi",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-arm64-msvc",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-x64-msvc",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/postcss",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/postcss",
            "direct": false,
            "version": "^4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/virtual-core",
            "direct": false,
            "version": "3.17.5",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/api",
            "direct": false,
            "version": "2.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/api",
            "direct": false,
            "version": "2.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@tauri-apps/api",
            "direct": false,
            "version": "^2.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/darwin-64",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/darwin-arm64",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/linux-64",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/linux-arm64",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/windows-64",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@turbo/windows-arm64",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@tweenjs/tween.js",
            "direct": false,
            "version": "23.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@tweenjs/tween.js",
            "direct": false,
            "version": "25.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/command-line-args",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/command-line-usage",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/geojson",
            "direct": false,
            "version": "7946.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "12.20.55",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "14.18.63",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "20.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "25.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^26.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/pad-left",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/pako",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/raf",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "19.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "^19.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "19.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "^19.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/stats.js",
            "direct": false,
            "version": "0.17.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/supercluster",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/three",
            "direct": false,
            "version": "0.185.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/three",
            "direct": false,
            "version": "^0.185.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/webxr",
            "direct": false,
            "version": "0.5.24",
            "ecosystem": "npm"
          },
          {
            "name": "@types/whatwg-mimetype",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ws",
            "direct": false,
            "version": "8.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ws",
            "direct": false,
            "version": "^8.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react",
            "direct": false,
            "version": "^6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@webgpu/types",
            "direct": false,
            "version": "0.1.71",
            "ecosystem": "npm"
          },
          {
            "name": "@webgpu/types",
            "direct": false,
            "version": "^0.1.71",
            "ecosystem": "npm"
          },
          {
            "name": "@xmldom/xmldom",
            "direct": false,
            "version": "0.9.10",
            "ecosystem": "npm"
          },
          {
            "name": "@xmldom/xmldom",
            "direct": false,
            "version": "^0.9.10",
            "ecosystem": "npm"
          },
          {
            "name": "@zip.js/zip.js",
            "direct": false,
            "version": "2.8.26",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "archiver",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "archiver-utils",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "archiver-utils",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-hidden",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "array-back",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "array-back",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "array-back",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "async",
            "direct": false,
            "version": "3.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "autolinker",
            "direct": false,
            "version": "4.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-arraybuffer",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.44",
            "ecosystem": "npm"
          },
          {
            "name": "better-path-resolve",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "big-integer",
            "direct": false,
            "version": "1.6.52",
            "ecosystem": "npm"
          },
          {
            "name": "binary",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "bitmap-sdf",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "bl",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bluebird",
            "direct": false,
            "version": "3.4.7",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-crc32",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-image-size",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-indexof-polyfill",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "buffers",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001806",
            "ecosystem": "npm"
          },
          {
            "name": "canvg",
            "direct": false,
            "version": "3.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "chainsaw",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk-template",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "command-line-args",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "command-line-usage",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "command-line-usage",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "compress-commons",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-js",
            "direct": false,
            "version": "3.49.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig",
            "direct": false,
            "version": "8.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "crc-32",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "crc32-stream",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "crelt",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crelt",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "css-line-break",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "csso",
            "direct": false,
            "version": "5.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "dataloader",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "dayjs",
            "direct": false,
            "version": "1.11.21",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node-es",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.11",
            "ecosystem": "npm"
          },
          {
            "name": "dompurify",
            "direct": false,
            "version": "3.4.12",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dot-case",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "8.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "draco3d",
            "direct": false,
            "version": "1.5.7",
            "ecosystem": "npm"
          },
          {
            "name": "duplexer2",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "earcut",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.394",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.24.3",
            "ecosystem": "npm"
          },
          {
            "name": "enquirer",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "error-ex",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "^0.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild-wasm",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild-wasm",
            "direct": false,
            "version": "^0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "exsolve",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extendable-error",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "fake-indexeddb",
            "direct": false,
            "version": "6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "fake-indexeddb",
            "direct": false,
            "version": "^6.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "fast-csv",
            "direct": false,
            "version": "4.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-png",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-sha256",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fd-package-json",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "find-replace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "23.5.26",
            "ecosystem": "npm"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.9.23",
            "ecosystem": "npm"
          },
          {
            "name": "formatly",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fraction.js",
            "direct": false,
            "version": "5.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "fs-constants",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fstream",
            "direct": false,
            "version": "1.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-nonce",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "4.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "gl-matrix",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "grapheme-splitter",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "happy-dom",
            "direct": false,
            "version": "20.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "happy-dom",
            "direct": false,
            "version": "^20.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-jsx-runtime",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-url-attributes",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "html2canvas",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "human-id",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "immediate",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "import-meta-resolve",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "inline-style-parser",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "iobuffer",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-subdir",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isomorphic.js",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsep",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-bignum",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-to-ts",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stringify-pretty-compact",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-with-bigint",
            "direct": false,
            "version": "3.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "kdbush",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "kdbush",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "knip",
            "direct": false,
            "version": "6.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "ktx-parse",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "laz-perf",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "laz-perf",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "laz-perf",
            "direct": false,
            "version": "^0.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "lazystream",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "lerc",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lerc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lie",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "listenercount",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "local-pkg",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.camelcase",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.defaults",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.difference",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.escaperegexp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.flatten",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.groupby",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isboolean",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isequal",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isfunction",
            "direct": false,
            "version": "3.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isnil",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isplainobject",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isundefined",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.startcase",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.union",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.uniq",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "long",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lower-case",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-table",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-find-and-replace",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-autolink-literal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-strikethrough",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-table",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-task-list-item",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.0.28",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "mersenne-twister",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "meshoptimizer",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "meshoptimizer",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mgrs",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-autolink-literal",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-strikethrough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-table",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-tagfilter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-task-list-item",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "2.1.0",
            "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": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "minizlib",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "murmurhash-js",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "no-case",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.51",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nosleep.js",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "outdent",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "oxc-parser",
            "direct": false,
            "version": "0.137.0",
            "ecosystem": "npm"
          },
          {
            "name": "oxc-resolver",
            "direct": false,
            "version": "11.21.3",
            "ecosystem": "npm"
          },
          {
            "name": "p-filter",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "pad-left",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse-headers",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "pbf",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "performance-now",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "potpack",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "preact",
            "direct": false,
            "version": "10.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "protobufjs",
            "direct": false,
            "version": "8.6.6",
            "ecosystem": "npm"
          },
          {
            "name": "protocol-buffers-schema",
            "direct": false,
            "version": "3.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "query-selector-shadow-dom",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "quick-lru",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "quickjs-emscripten",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "quickjs-emscripten",
            "direct": false,
            "version": "^0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "quickjs-emscripten-core",
            "direct": false,
            "version": "0.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "quickselect",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "raf",
            "direct": false,
            "version": "3.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rbush",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll",
            "direct": false,
            "version": "2.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll-bar",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "react-style-singleton",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "read-yaml-file",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdir-glob",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "regenerator-runtime",
            "direct": false,
            "version": "0.13.11",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-rehype",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-stringify",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "repeat-string",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-protobuf-schema",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rgbcolor",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.62.2",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "setimmediate",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "smol-toml",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "snake-case",
            "direct": false,
            "version": "3.0.4",
            "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": "spawndamnit",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "stackblur-canvas",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "standardwebhooks",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-read-all",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "style-mod",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-js",
            "direct": false,
            "version": "1.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "supercluster",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "svg-parser",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "svg-pathdata",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "svgo",
            "direct": false,
            "version": "^4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "table-layout",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "table-layout",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tar",
            "direct": false,
            "version": "7.5.20",
            "ecosystem": "npm"
          },
          {
            "name": "tar",
            "direct": false,
            "version": "^7.5.20",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "term-size",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "text-segmentation",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tinyqueue",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "topojson-client",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "traverse",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-algebra",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "4.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "^4.23.1",
            "ecosystem": "npm"
          },
          {
            "name": "turbo",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "typical",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "typical",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "unbash",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.24.6",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "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": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unplugin",
            "direct": false,
            "version": "2.3.11",
            "ecosystem": "npm"
          },
          {
            "name": "unplugin-icons",
            "direct": false,
            "version": "23.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unplugin-icons",
            "direct": false,
            "version": "^23.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unzipper",
            "direct": false,
            "version": "0.10.14",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "urijs",
            "direct": false,
            "version": "1.19.11",
            "ecosystem": "npm"
          },
          {
            "name": "use-callback-ref",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sidecar",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sync-external-store",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "utrie",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "11.1.1",
            "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": "8.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "^8.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-static-copy",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-static-copy",
            "direct": false,
            "version": "^4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-top-level-await",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-top-level-await",
            "direct": false,
            "version": "^1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-top-level-await",
            "direct": false,
            "version": "^1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-wasm",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-wasm",
            "direct": false,
            "version": "^3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "^4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-keyname",
            "direct": false,
            "version": "2.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "walk-up-path",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "web-vitals",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "web-worker",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-virtual-modules",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "wkt-parser",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "wordwrapjs",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "xml-utils",
            "direct": false,
            "version": "1.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "zip-stream",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "zstddec",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "maturin",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-material",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-mermaid2-plugin",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "mkdocs-minify-plugin",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1462,
        "direct_count": 200,
        "indirect_count": 1262
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 4,
        "merged_prs": 1316,
        "open_issues": 7,
        "closed_ratio": 0.979,
        "closed_issues": 320,
        "closed_unmerged_prs": 182
      },
      "bus_factor": 1,
      "bot_contributors": 3,
      "top_contributors": [
        {
          "type": "User",
          "login": "louistrue",
          "commits": 1160,
          "avatar_url": "https://avatars.githubusercontent.com/u/78563314?v=4"
        },
        {
          "type": "User",
          "login": "Blogbotana",
          "commits": 29,
          "avatar_url": "https://avatars.githubusercontent.com/u/69924139?v=4"
        },
        {
          "type": "User",
          "login": "claude",
          "commits": 4,
          "avatar_url": "https://avatars.githubusercontent.com/u/81847?v=4"
        },
        {
          "type": "User",
          "login": "jonatanjacobsson",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/62721045?v=4"
        },
        {
          "type": "User",
          "login": "maxkrut",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/9089443?v=4"
        },
        {
          "type": "User",
          "login": "mehmet-ylcnky",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/217944387?v=4"
        },
        {
          "type": "User",
          "login": "Amixx",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/26713658?v=4"
        },
        {
          "type": "User",
          "login": "joepaddock-uk",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/65926833?v=4"
        },
        {
          "type": "User",
          "login": "kamyarba",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/55237698?v=4"
        },
        {
          "type": "User",
          "login": "rpisarew",
          "commits": 2,
          "avatar_url": "https://avatars.githubusercontent.com/u/3972970?v=4"
        }
      ],
      "contributors_sampled": 16,
      "top_contributor_share": 0.953
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "benchmark.yml",
        "determinism.yml",
        "docker.yml",
        "docs.yml",
        "fuzz.yml",
        "ifcopenshell-parity.yml",
        "python-wheels.yml",
        "release.yml",
        "sdk-canary.yml",
        "server-binaries.yml",
        "test-templates.yml",
        "test.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": false,
      "has_linter_config": false,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "Cargo.lock",
        "pnpm-lock.yaml"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 4,
            "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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 1,
            "reason": "Found 4/23 approved changesets -- score normalized to 1",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 6,
            "reason": "project has 2 contributing companies or organizations -- score normalized to 6",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 10,
            "reason": "project is fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 7,
            "reason": "dependency not pinned by hash detected -- score normalized to 7",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 9,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 10,
            "reason": "GitHub workflow tokens follow principle of least privilege",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 5,
            "reason": "5 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "9a70a18dc1afdb31447690e6a5b22c2912c1acad",
        "ran_at": "2026-07-21T23:22:50Z",
        "aggregate_score": 7.4,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": true,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-21T17:08:33Z",
      "oldest_open_prs": [
        {
          "number": 918,
          "created_at": "2026-06-04T12:06:48Z",
          "last_comment_at": "2026-06-04T12:16:06Z",
          "last_comment_author": "louistrue"
        },
        {
          "number": 1344,
          "created_at": "2026-06-24T10:59:28Z",
          "last_comment_at": "2026-07-01T20:42:06Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1761,
          "created_at": "2026-07-16T14:44:20Z",
          "last_comment_at": "2026-07-17T16:31:48Z",
          "last_comment_author": "greptile-apps"
        },
        {
          "number": 1836,
          "created_at": "2026-07-21T16:32:31Z",
          "last_comment_at": "2026-07-21T16:35:26Z",
          "last_comment_author": "github-actions"
        }
      ],
      "last_merged_pr_at": "2026-07-21T17:04:24Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 1663,
          "created_at": "2026-07-08T17:48:45Z",
          "last_comment_at": "2026-07-10T07:06:31Z",
          "last_comment_author": "bruadam"
        },
        {
          "number": 1788,
          "created_at": "2026-07-17T08:30:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1790,
          "created_at": "2026-07-17T08:48:54Z",
          "last_comment_at": "2026-07-18T06:49:52Z",
          "last_comment_author": "steverugi"
        },
        {
          "number": 1804,
          "created_at": "2026-07-17T21:15:36Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1805,
          "created_at": "2026-07-17T21:32:42Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1810,
          "created_at": "2026-07-18T05:07:19Z",
          "last_comment_at": "2026-07-21T06:46:15Z",
          "last_comment_author": "louistrue"
        },
        {
          "number": 1839,
          "created_at": "2026-07-21T18:35:13Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/LTplus-AG/ifc-lite",
    "host": "github.com",
    "name": "ifc-lite",
    "owner": "LTplus-AG"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "at_risk",
      "name": "Overall health",
      "note": "High-Risk Jurisdiction Policy applies a 50% multiplier to weighted overall health and gives it an At risk ceiling of 49.",
      "notes": [
        {
          "code": "jurisdiction_overall_adjustment",
          "params": {
            "cap": 49,
            "pct": 50
          }
        }
      ],
      "value": 36,
      "inputs": {
        "security": 50,
        "vitality": 90,
        "community": 73,
        "governance": 62,
        "engineering": 77,
        "high_risk_jurisdiction_cap": 49,
        "high_risk_jurisdiction_multiplier": 50,
        "weighted_overall_before_jurisdiction": 71,
        "overall_after_jurisdiction_multiplier": 36
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 90,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 83,
            "inputs": {
              "commits_last_year": 1352,
              "human_commit_share": 0.9,
              "days_since_last_push": 0,
              "active_weeks_last_year": 28
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "28/52 weeks with commits",
                "points": 19.4,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 28
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "1352 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 1352
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "@ifc-lite/geometry@3.4.0",
              "releases_from_tags": false,
              "days_since_latest_release": 0,
              "mean_days_between_releases": 0.4
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~0.4 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 0.4
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 73,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "moderate",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 58,
            "inputs": {
              "forks": 84,
              "stars": 282,
              "watchers": 4,
              "growth_state": "organic",
              "growth_factor_pct": 100
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "282 stars",
                "points": 39.7,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 282
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "84 forks",
                "points": 16,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 84
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "4 watchers",
                "points": 2.7,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "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 (MPL-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MPL-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
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "good",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 71,
            "inputs": {
              "packages": [
                "@ifc-lite/bcf",
                "@ifc-lite/cli",
                "@ifc-lite/data",
                "@ifc-lite/diff",
                "@ifc-lite/cache",
                "@ifc-lite/clash",
                "@ifc-lite/collab"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 17745
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "17,745 downloads/month across npm",
                "points": 56.7,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 17745,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 62,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 30,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 16,
              "top_contributor_share": 0.953
            },
            "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 95% of commits",
                "points": 1.1,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 95
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "16 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 16
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 81,
            "inputs": {
              "merged_prs": 1316,
              "open_issues": 7,
              "closed_issues": 320,
              "issue_closed_ratio": 0.979,
              "closed_unmerged_prs": 182
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "98% of issues closed",
                "points": 45.8,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 98
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "1316/1498 decided PRs merged",
                "points": 33.6,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 1316,
                      "decided": 1498
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 4/23 approved changesets -- score normalized to 1",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "followers": 16,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "LTplus-AG",
              "public_repos": 7,
              "account_age_days": 829
            },
            "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": "16 followers of LTplus-AG",
                "points": 8.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 16,
                      "login": "LTplus-AG"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "7 public repos, account ~2 yr old",
                "points": 11.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 7
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 2
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "@ifc-lite/bcf",
                "@ifc-lite/cli",
                "@ifc-lite/data",
                "@ifc-lite/diff",
                "@ifc-lite/cache",
                "@ifc-lite/clash",
                "@ifc-lite/collab"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 4
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "7 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 7,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "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": "51 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 51
                    }
                  }
                ],
                "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": 77,
        "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": "12 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": null,
                "points": 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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "3d-viewer",
                "columnar",
                "ifc",
                "rust",
                "webgpu",
                "cli",
                "ifc-parser",
                "script-editor",
                "bcf",
                "ids",
                "mcp",
                "pointcloud",
                "sdk"
              ],
              "has_wiki": false,
              "homepage": "https://ifclite.dev",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://ifclite.dev",
                "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": "13 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 13
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 50,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized. High-Risk Jurisdiction Policy applies a 50% multiplier to Security posture and gives it an At risk ceiling of 49.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "jurisdiction_posture_adjustment",
                "params": {
                  "cap": 49,
                  "pct": 50
                }
              }
            ],
            "value": 37,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 7.4,
              "high_risk_jurisdiction_cap": 49,
              "high_risk_jurisdiction_multiplier": 50,
              "security_posture_after_multiplier": 37,
              "security_posture_before_jurisdiction": 74
            },
            "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": 3,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 4/23 approved changesets -- score normalized to 1",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 2 contributing companies or organizations -- score normalized to 6",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is fuzzed",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 7",
                "points": 3.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "GitHub workflow tokens follow principle of least privilege",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "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): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 1306 resolved dependencies against OSV; 156 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories",
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 1306
                }
              },
              {
                "code": "advisories_unassessed",
                "params": {
                  "count": 156
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 5,
              "affected_packages": 5,
              "assessed_packages": 1306,
              "unassessed_packages": 156,
              "affected_by_severity": "low 1, unknown 4",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 1306,
              "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": "moderate",
            "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": 50,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": true,
              "exposures": [
                {
                  "role": "top_contributor",
                  "count": 1,
                  "country": "Russia"
                }
              ],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 6
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "Russia: top_contributor (1)",
                "points": 50,
                "status": "partial",
                "details": [
                  {
                    "code": "jurisdiction_exposure",
                    "params": {
                      "role": "top_contributor",
                      "count": 1,
                      "country": "Russia"
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "good",
        "name": "AI Readiness",
        "value": 79,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [
                ".cursorrules",
                "AGENTS.md",
                "CLAUDE.md",
                "apps/viewer/AGENTS.md",
                "packages/collab-server/AGENTS.md",
                "packages/collab/AGENTS.md",
                "packages/geometry/AGENTS.md",
                "rust/AGENTS.md"
              ],
              "agent_instruction_max_bytes": 19343
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": ".cursorrules, AGENTS.md, CLAUDE.md, apps/viewer/AGENTS.md, packages/collab-server/AGENTS.md, packages/collab/AGENTS.md, packages/geometry/AGENTS.md, rust/AGENTS.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".cursorrules, AGENTS.md, CLAUDE.md, apps/viewer/AGENTS.md, packages/collab-server/AGENTS.md, packages/collab/AGENTS.md, packages/geometry/AGENTS.md, rust/AGENTS.md"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "90 of 90 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 90,
                      "sampled": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "Cargo.lock",
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": false,
              "typecheck_configs": [
                "apps/viewer-embed/tsconfig.json",
                "apps/viewer/src/lib/scripts/templates/tsconfig.json",
                "apps/viewer/tsconfig.json",
                "examples/babylonjs-viewer/tsconfig.json",
                "examples/collab-demo/tsconfig.json",
                "examples/threejs-collab/tsconfig.json",
                "examples/threejs-viewer/tsconfig.json",
                "packages/bcf/tsconfig.json",
                "packages/cache/tsconfig.json",
                "packages/clash/tsconfig.json",
                "packages/cli/tsconfig.json",
                "packages/codegen/tsconfig.json",
                "packages/collab-server/tsconfig.json",
                "packages/collab/tsconfig.json",
                "packages/create-ifc-lite/tsconfig.json",
                "packages/create/tsconfig.json",
                "packages/data/tsconfig.json",
                "packages/diff/tsconfig.json",
                "packages/drawing-2d/tsconfig.json",
                "packages/embed-protocol/tsconfig.json",
                "packages/embed-sdk/tsconfig.json",
                "packages/encoding/tsconfig.json",
                "packages/export/tsconfig.json",
                "packages/extensions/tsconfig.json",
                "packages/geometry/tsconfig.json",
                "packages/ids/tsconfig.json",
                "packages/ifcx/tsconfig.json",
                "packages/lens/tsconfig.json",
                "packages/lists/tsconfig.json",
                "packages/mcp/tsconfig.json",
                "packages/merge/tsconfig.json",
                "packages/mutations/tsconfig.json",
                "packages/parser/tsconfig.json",
                "packages/pointcloud/tsconfig.json",
                "packages/query/tsconfig.json",
                "packages/renderer/tsconfig.json",
                "packages/sandbox/tsconfig.json",
                "packages/sdk/tsconfig.json",
                "packages/server-bin/tsconfig.json",
                "packages/server-client/tsconfig.json",
                "packages/solar/tsconfig.json",
                "packages/spatial/tsconfig.json",
                "packages/viewer/tsconfig.json",
                "tests/tsconfig.json",
                "tools/demo-kit/tsconfig.json",
                "tsconfig.json"
              ],
              "agent_commit_share": 0.02,
              "toolchain_manifests": [
                "Cargo.toml",
                "apps/server/Cargo.toml",
                "rust/clash/Cargo.toml",
                "rust/core/Cargo.toml",
                "rust/core/fuzz/Cargo.toml",
                "rust/csg-thread-bench/Cargo.toml",
                "rust/export/Cargo.toml",
                "rust/ffi/Cargo.toml",
                "rust/geometry/Cargo.toml",
                "rust/geometry/fuzz/Cargo.toml",
                "rust/processing/Cargo.toml",
                "rust/python/Cargo.toml",
                "rust/wasm-bindings/Cargo.toml"
              ],
              "dependency_bot_commit_share": 0.1
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Cargo.toml, apps/server/Cargo.toml, rust/clash/Cargo.toml (toolchain convention, no task runner)",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "toolchain_convention",
                    "params": {
                      "files": "Cargo.toml, apps/server/Cargo.toml, rust/clash/Cargo.toml"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "apps/viewer-embed/tsconfig.json, apps/viewer/src/lib/scripts/templates/tsconfig.json, apps/viewer/tsconfig.json, examples/babylonjs-viewer/tsconfig.json, examples/collab-demo/tsconfig.json, examples/threejs-collab/tsconfig.json, examples/threejs-viewer/tsconfig.json, packages/bcf/tsconfig.json, packages/cache/tsconfig.json, packages/clash/tsconfig.json, packages/cli/tsconfig.json, packages/codegen/tsconfig.json, packages/collab-server/tsconfig.json, packages/collab/tsconfig.json, packages/create-ifc-lite/tsconfig.json, packages/create/tsconfig.json, packages/data/tsconfig.json, packages/diff/tsconfig.json, packages/drawing-2d/tsconfig.json, packages/embed-protocol/tsconfig.json, packages/embed-sdk/tsconfig.json, packages/encoding/tsconfig.json, packages/export/tsconfig.json, packages/extensions/tsconfig.json, packages/geometry/tsconfig.json, packages/ids/tsconfig.json, packages/ifcx/tsconfig.json, packages/lens/tsconfig.json, packages/lists/tsconfig.json, packages/mcp/tsconfig.json, packages/merge/tsconfig.json, packages/mutations/tsconfig.json, packages/parser/tsconfig.json, packages/pointcloud/tsconfig.json, packages/query/tsconfig.json, packages/renderer/tsconfig.json, packages/sandbox/tsconfig.json, packages/sdk/tsconfig.json, packages/server-bin/tsconfig.json, packages/server-client/tsconfig.json, packages/solar/tsconfig.json, packages/spatial/tsconfig.json, packages/viewer/tsconfig.json, tests/tsconfig.json, tools/demo-kit/tsconfig.json, tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "apps/viewer-embed/tsconfig.json, apps/viewer/src/lib/scripts/templates/tsconfig.json, apps/viewer/tsconfig.json, examples/babylonjs-viewer/tsconfig.json, examples/collab-demo/tsconfig.json, examples/threejs-collab/tsconfig.json, examples/threejs-viewer/tsconfig.json, packages/bcf/tsconfig.json, packages/cache/tsconfig.json, packages/clash/tsconfig.json, packages/cli/tsconfig.json, packages/codegen/tsconfig.json, packages/collab-server/tsconfig.json, packages/collab/tsconfig.json, packages/create-ifc-lite/tsconfig.json, packages/create/tsconfig.json, packages/data/tsconfig.json, packages/diff/tsconfig.json, packages/drawing-2d/tsconfig.json, packages/embed-protocol/tsconfig.json, packages/embed-sdk/tsconfig.json, packages/encoding/tsconfig.json, packages/export/tsconfig.json, packages/extensions/tsconfig.json, packages/geometry/tsconfig.json, packages/ids/tsconfig.json, packages/ifcx/tsconfig.json, packages/lens/tsconfig.json, packages/lists/tsconfig.json, packages/mcp/tsconfig.json, packages/merge/tsconfig.json, packages/mutations/tsconfig.json, packages/parser/tsconfig.json, packages/pointcloud/tsconfig.json, packages/query/tsconfig.json, packages/renderer/tsconfig.json, packages/sandbox/tsconfig.json, packages/sdk/tsconfig.json, packages/server-bin/tsconfig.json, packages/server-client/tsconfig.json, packages/solar/tsconfig.json, packages/spatial/tsconfig.json, packages/viewer/tsconfig.json, tests/tsconfig.json, tools/demo-kit/tsconfig.json, tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "2 of the last 100 commits agent-authored or agent-credited",
                "points": 4,
                "status": "partial",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 2,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "10 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 10,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 7",
                "points": 7,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 1948298,
              "source_files_sampled": 2574,
              "oversized_source_files": 33
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "33/2574 source files over 60KB",
                "points": 54.3,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 2574,
                      "oversized": 33
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "examples",
                "samples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples, samples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples, samples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Could not fetch crates package 'ifc-lite-server' from its registry",
    "deps.dev does not index npm:@ifc-lite/bcf@1.16.3; advisories assessed against the repository dependency graph instead"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-21T23:23:18.645472Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/LTplus-AG/ifc-lite.svg",
  "full_name": "LTplus-AG/ifc-lite",
  "license_state": "standard",
  "license_spdx": "MPL-2.0"
}

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

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

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