Public record
Software health reportschema 0.27.0 · metrics 1.13.0 · 2026-07-24 18:37 UTC

MustardSeedNetworks / stem

Standards-aligned network performance testing — RFC 2544, ITU-T Y.1564, Y.1731, MEF, TSN. Reflector, generator, and certifier in one Go binary.

Go · TypeScript · CCustom license★ 0 stars⑂ 0 forkssince Dec 2025View on GitHub ↗

MustardSeedNetworks/stem holds a health index of 70 out of 100, placing it in the Good band. It scores highest on Engineering Quality (100/100) and lowest on Community & Adoption (41/100). It was last updated 4 days ago. A single contributor accounts for most of its recent work.

70
overall / 100
Good

Software health index

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

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

Score profile

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

Ownership

1 follower6 public repossince Jun 2026

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

Package ecosystems

RegistryPackageVersionDownloads / moVersionsLast publish
Gogithub.com/MustardSeedNetworks/stemv0.24.0-10414 days ago

Metrics by category

Vitality

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

84Good · 22% of overall
How it's scored
36/36Push recency — last push 4 days ago
9/36Commit cadence — 13/52 weeks with commits
18/18Commit volume — 507 commits in the last year
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10
Inputs used
commits_last_year507
human_commit_share0.9
days_since_last_push4
active_weeks_last_year13

Release discipline

100Excellent
How it's scored
27/27Ships releases — 28 releases published
36/36Release recency — latest release 14 days ago
27/27Release cadence — a release every ~5 days
10/10OpenSSF Scorecard: Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
Inputs used
releases_count28
latest_release_tagv0.24.0
releases_from_tagsno
days_since_latest_release14
mean_days_between_releases5

Community & Adoption

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

41At risk · 18% of overall
How it's scored
0/60Stars — 0 stars
0/25Forks — 0 forks
0/15Watchers — 1 watchers
Inputs used
forks0
stars0
watchers1
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history

Community health

86Excellent
How it's scored
22.5/22.5README
16.9/22.5License — license file present, not a recognized license
18/18CONTRIBUTING guide
13.5/13.5Code of conduct
0/7.2Issue template
6.3/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
has_contributingyes
has_issue_templateno
has_code_of_conductyes
has_pull_request_templateyes

Sustainability & Governance

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

52Moderate · 24% of overall
How it's scored
9/54Bus factor — 1 contributor(s) cover half of all commits
0/22.5Commit distribution — top contributor authored 100% of commits
1.4/13.5Contributor breadth — 1 contributors
3/10OpenSSF Scorecard: Contributors — project has 1 contributing companies or organizations -- score normalized to 3
Inputs used
bus_factor1
contributors_sampled1
top_contributor_share1
How it's scored
41.8/46.8Issue resolution — 89% of issues closed
30.7/38.3PR acceptance — 263/328 decided PRs merged
0/15OpenSSF Scorecard: Code-Review — Found 0/27 approved changesets -- score normalized to 0
Inputs used
merged_prs263
open_issues20
closed_issues168
issue_closed_ratio0.894
closed_unmerged_prs65
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
2.2/25Owner reach — 1 followers of MustardSeedNetworks
6.4/25Track record — 6 public repos, account ~0 yr old
Inputs used
followers1
owner_typeOrganization
is_verified
owner_loginMustardSeedNetworks
public_repos6
account_age_days47
How it's scored
25/25Published & resolvable — 1 package(s) on go
35/35Publish recency — latest publish 14 days ago
20/20Version history — 104 published versions
20/20Not deprecated — active, not deprecated or yanked
Inputs used
packagesgithub.com/MustardSeedNetworks/stem
ecosystemsgo
any_deprecatedno
min_days_since_publish14

Engineering Quality

Are baseline engineering and documentation practices in place?

100Excellent · 20% of overall
How it's scored
24/24CI workflows — 12 workflow(s)
24/24Tests present
16/16Linter config — .golangci.yml, biome.json
9.6/9.6Pre-commit hooks
6.4/6.4.editorconfig
20/20OpenSSF Scorecard: CI-Tests — 30 out of 30 merged PRs checked by a CI test -- score normalized to 10
Inputs used
has_ciyes
has_testsyes
has_editorconfigyes
has_linter_configyes
has_precommit_configyes

Documentation

100Excellent
How it's scored
30/30README
25/25Documentation directory
15/15Documentation / homepage site — https://mustardseednetworks.com/stem
10/10Repository description
10/10Topics — 13 topics
10/10Wiki
Inputs used
topicsaf-xdp, dpdk, go, mef, network-testing, network-tools, performance-testing, rfc2544, tsn, ieee-802-1qbv, rfc6349, y1564, y1731
has_wikiyes
homepagehttps://mustardseednetworks.com/stem
has_readmeyes
has_docs_diryes
has_descriptionyes

Security

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

76Good · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — no data
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/7.5Code-Review — Found 0/27 approved changesets -- score normalized to 0
0.8/2.5Contributors — project has 1 contributing companies or organizations -- score normalized to 3
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
5/5Fuzzing — project is fuzzed
2.2/2.5License — license file detected
7.5/7.5Maintained — 30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — no data
4/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 8
5/5SAST — SAST tool is run on all commits
5/5Security-Policy — security policy file detected
7.5/7.5Signed-Releases — 5 out of the last 5 releases have a total of 5 signed artifacts.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
3/7.5Vulnerabilities — 6 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate7.3
Excluded from scoring (no data or not applicable): branch_protection, packaging. Remaining weights renormalized.
How it's scored
26.6/35Direct dependencies free of known advisories — 1 affected: golang.org/x/crypto v0.53.0 (unknown)
0/25Indirect dependencies free of known advisories — transitive set not separable from development and test dependencies in this scope
40/40No advisories left outstanding — no advisory has been public longer than 90 days
Inputs used
sourceosv
advisories6
affected_packages6
assessed_packages610
unassessed_packages0
affected_by_severityhigh 5, unknown 1
direct_affected_packages1
Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 610 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.

AI Readiness

How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score.

73Good · 0% of overall
How it's scored
0/45Agent instructions — no CLAUDE.md / AGENTS.md / editor rules
0/15Machine-readable docs (llms.txt)
40/40Legible commit history — 90 of 90 human commits state their intent (structured subject or explanatory body)
Inputs used
has_llms_txtno
legible_history_share1
agent_instruction_files
agent_instruction_max_bytes
How it's scored
18/18One-command bootstrap — Makefile
22/22Automated tests
11/11Lint / format config — .golangci.yml, biome.json
11/11Static type checking — ui/tsconfig.json
10/10Reproducible environment — lockfile
0/10Demonstrated agent practice — no agent-authored commits among the last 100
8/8Automated maintenance — 8 of the last 100 commits are automated dependency updates
8/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 8
Inputs used
has_nixno
has_testsyes
lockfilesgo.sum, package-lock.json
has_dockerfileno
typed_languageyes
bootstrap_filesMakefile
has_devcontainerno
has_linter_configyes
typecheck_configsui/tsconfig.json
agent_commit_share0
toolchain_manifestsgo.mod
dependency_bot_commit_share0.08
How it's scored
45/45Type-checkable code — Go (statically typed)
54.6/55Manageable file sizes — 4/500 source files over 60KB
Inputs used
primary_languageGo
largest_source_bytes116,715
source_files_sampled500
oversized_source_files4

Key facts

0GitHub stars
1contributors
507commits, last 12 months
4days since last push
28releases
1bus factor
20open issues
Go, npmpackage ecosystems

More detail

OpenSSF Scorecard 7.3 / 10
7.3aggregate

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

10Binary-Artifactsno binaries found in the repo
n/aBranch-Protectioninternal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
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
0Code-ReviewFound 0/27 approved changesets -- score normalized to 0
3Contributorsproject has 1 contributing companies or organizations -- score normalized to 3
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
10Fuzzingproject is fuzzed
9Licenselicense file detected
10Maintained30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10
n/aPackagingpackaging workflow not detected
8Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 8
10SASTSAST tool is run on all commits
10Security-Policysecurity policy file detected
10Signed-Releases5 out of the last 5 releases have a total of 5 signed artifacts.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
4Vulnerabilities6 existing vulnerabilities detected
Direct dependencies 37
RegistryPackageVersion constraintManifest
Gogithub.com/MustardSeedNetworks/foundationv0.2.0go.mod
Gogithub.com/gdamore/tcell/v2v2.13.10go.mod
Gogithub.com/go-playground/validator/v10v10.30.3go.mod
Gogithub.com/go-webauthn/webauthnv0.17.4go.mod
Gogithub.com/golang-jwt/jwt/v5v5.3.1go.mod
Gogithub.com/google/uuidv1.6.0go.mod
Gogithub.com/invopop/jsonschemav0.14.0go.mod
Gogithub.com/pquerna/otpv1.5.0go.mod
Gogithub.com/prometheus/client_golangv1.23.2go.mod
Gogithub.com/prometheus/client_modelv0.6.2go.mod
Gogithub.com/rivo/tviewv0.42.0go.mod
Gogithub.com/trustelem/zxcvbnv1.0.1go.mod
Gogolang.org/x/cryptov0.53.0go.mod
Gogolang.org/x/oauth2v0.36.0go.mod
Gogolang.org/x/timev0.15.0go.mod
Gogopkg.in/natefinch/lumberjack.v2v2.2.1go.mod
Gogopkg.in/yaml.v3v3.0.1go.mod
Gomodernc.org/sqlitev1.53.0go.mod
npm@fontsource-variable/inter5.2.8ui/package.json
npm@fontsource-variable/jetbrains-mono5.2.8ui/package.json
npm@hookform/resolvers5.4.0ui/package.json
npm@tailwindcss/postcss4.3.2ui/package.json
npm@tanstack/react-query5.101.2ui/package.json
npmcmdk1.1.1ui/package.json
npmi18next26.3.4ui/package.json
npmi18next-browser-languagedetector8.2.1ui/package.json
npmimmer11.1.11ui/package.json
npmlucide-react1.23.0ui/package.json
npmreact19.2.7ui/package.json
npmreact-dom19.2.7ui/package.json
npmreact-hook-form7.81.0ui/package.json
npmreact-i18next17.0.8ui/package.json
npmreact-router-dom7.18.1ui/package.json
npmtailwind-merge3.6.0ui/package.json
npmtailwindcss4.3.2ui/package.json
npmvalibot1.4.2ui/package.json
npmzustand5.0.14ui/package.json
All dependencies 610

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

RegistryPackageVersionRelation
Gogithub.com/gdamore/tcell/v2v2.13.10direct
Gogithub.com/go-playground/validator/v10v10.30.3direct
Gogithub.com/go-webauthn/webauthnv0.17.4direct
Gogithub.com/golang-jwt/jwt/v5v5.3.1direct
Gogithub.com/google/uuidv1.6.0direct
Gogithub.com/invopop/jsonschemav0.14.0direct
Gogithub.com/mustardseednetworks/foundationv0.2.0direct
Gogithub.com/pquerna/otpv1.5.0direct
Gogithub.com/prometheus/client_golangv1.23.2direct
Gogithub.com/prometheus/client_modelv0.6.2direct
Gogithub.com/rivo/tviewv0.42.0direct
Gogithub.com/trustelem/zxcvbnv1.0.1direct
Gogolang.org/x/cryptov0.53.0direct
Gogolang.org/x/oauth2v0.36.0direct
Gogolang.org/x/timev0.15.0direct
Gogopkg.in/natefinch/lumberjack.v2v2.2.1direct
Gogopkg.in/yaml.v3v3.0.1direct
Gomodernc.org/sqlitev1.53.0direct
npm@fontsource-variable/inter5.2.8direct
npm@fontsource-variable/jetbrains-mono5.2.8direct
npm@hookform/resolvers5.4.0direct
npm@tailwindcss/postcss4.3.2direct
npm@tanstack/react-query5.101.2direct
npmcmdk1.1.1direct
npmi18next26.3.4direct
npmi18next-browser-languagedetector8.2.1direct
npmimmer11.1.11direct
npmlucide-react1.23.0direct
npmreact19.2.7direct
npmreact-dom19.2.7direct
npmreact-hook-form7.81.0direct
npmreact-i18next17.0.8direct
npmreact-router-dom7.18.1direct
npmtailwind-merge3.6.0direct
npmtailwindcss4.3.2direct
npmvalibot1.4.2direct
npmzustand5.0.14direct
Gocloud.google.com/go/compute/metadatav0.9.0indirect
Gogithub.com/bahlo/generic-list-gov0.2.0indirect
Gogithub.com/beorn7/perksv1.0.1indirect
Gogithub.com/boombuler/barcodev1.1.0indirect
Gogithub.com/buger/jsonparserv1.2.0indirect
Gogithub.com/cespare/xxhash/v2v2.3.0indirect
Gogithub.com/dlclark/regexp2v1.12.0indirect
Gogithub.com/dustin/go-humanizev1.0.1indirect
Gogithub.com/fxamacker/cbor/v2v2.9.2indirect
Gogithub.com/gabriel-vasile/mimetypev1.4.13indirect
Gogithub.com/gdamore/encodingv1.0.1indirect
Gogithub.com/go-playground/localesv0.14.1indirect
Gogithub.com/go-playground/universal-translatorv0.18.1indirect
Gogithub.com/go-viper/mapstructure/v2v2.5.0indirect
Gogithub.com/go-webauthn/xv0.2.6indirect
Gogithub.com/google/go-tpmv0.9.8indirect
Gogithub.com/google/go-tpm-toolsv0.4.9indirect
Gogithub.com/google/pprofv0.0.0-20260604005048-7023385849c0indirect
Gogithub.com/kr/textv0.2.0indirect
Gogithub.com/leodido/go-urnv1.4.0indirect
Gogithub.com/lucasb-eyer/go-colorfulv1.4.0indirect
Gogithub.com/mattn/go-isattyv0.0.22indirect
Gogithub.com/munnerz/goautonegv0.0.0-20191010083416-a7dc8b61c822indirect
Gogithub.com/ncruces/go-strftimev1.0.0indirect
Gogithub.com/pb33f/ordered-map/v2v2.3.1indirect
Gogithub.com/philhofer/fwdv1.2.0indirect
Gogithub.com/prometheus/commonv0.69.0indirect
Gogithub.com/prometheus/procfsv0.21.1indirect
Gogithub.com/remyoudompheng/bigfftv0.0.0-20230129092748-24d4a6f8daecindirect
Gogithub.com/rivo/unisegv0.4.7indirect
Gogithub.com/rogpeppe/go-internalv1.15.0indirect
Gogithub.com/test-go/testifyv1.1.4indirect
Gogithub.com/tinylib/msgpv1.6.4indirect
Gogithub.com/x448/float16v0.8.4indirect
Gogo.yaml.in/yaml/v4v4.0.0-rc.6indirect
Gogolang.org/x/netv0.56.0indirect
Gogolang.org/x/sysv0.46.0indirect
Gogolang.org/x/termv0.44.0indirect
Gogolang.org/x/textv0.39.0indirect
Gogoogle.golang.org/protobufv1.36.11indirect
Gomodernc.org/ccgo/v4v4.34.6indirect
Gomodernc.org/gc/v3v3.1.5indirect
Gomodernc.org/libcv1.73.5indirect
Gomodernc.org/mathutilv1.7.1indirect
Gomodernc.org/memoryv1.11.0indirect
npm@adobe/css-tools4.4.4indirect
npm@alloc/quick-lru5.2.0indirect
npm@apidevtools/json-schema-ref-parser11.9.3indirect
npm@asamuzakjp/css-color5.1.11indirect
npm@asamuzakjp/dom-selector7.1.1indirect
npm@asamuzakjp/generational-cache1.0.1indirect
npm@asamuzakjp/nwsapi2.3.9indirect
npm@babel/code-frame7.29.7indirect
npm@babel/compat-data7.29.7indirect
npm@babel/core7.29.7indirect
npm@babel/generator7.29.7indirect
npm@babel/helper-compilation-targets7.29.7indirect
npm@babel/helper-globals7.29.7indirect
npm@babel/helper-module-imports7.29.7indirect
npm@babel/helper-module-transforms7.29.7indirect
npm@babel/helper-string-parser7.29.7indirect
npm@babel/helper-validator-identifier7.29.7indirect
npm@babel/helper-validator-option7.29.7indirect
npm@babel/helpers7.29.7indirect
npm@babel/parser7.29.7indirect
npm@babel/runtime7.29.2indirect
npm@babel/template7.29.7indirect
npm@babel/traverse7.29.7indirect
npm@babel/types7.29.7indirect
npm@bcoe/v8-coverage1.0.2indirect
npm@biomejs/biome2.5.2indirect
npm@biomejs/cli-darwin-arm642.5.2indirect
npm@biomejs/cli-darwin-x642.5.2indirect
npm@biomejs/cli-linux-arm642.5.2indirect
npm@biomejs/cli-linux-arm64-musl2.5.2indirect
npm@biomejs/cli-linux-x642.5.2indirect
npm@biomejs/cli-linux-x64-musl2.5.2indirect
npm@biomejs/cli-win32-arm642.5.2indirect
npm@biomejs/cli-win32-x642.5.2indirect
npm@bramus/specificity2.4.2indirect
npm@chromatic-com/storybook5.2.1indirect
npm@commitlint/cli21.2.0indirect
npm@commitlint/config-conventional21.2.0indirect
npm@commitlint/config-validator21.2.0indirect
npm@commitlint/ensure21.2.0indirect
npm@commitlint/execute-rule21.0.1indirect
npm@commitlint/format21.2.0indirect
npm@commitlint/is-ignored21.2.0indirect
npm@commitlint/lint21.2.0indirect
npm@commitlint/load21.2.0indirect
npm@commitlint/message21.2.0indirect
npm@commitlint/parse21.2.0indirect
npm@commitlint/read21.2.0indirect
npm@commitlint/resolve-extends21.2.0indirect
npm@commitlint/rules21.2.0indirect
npm@commitlint/to-lines21.0.1indirect
npm@commitlint/top-level21.2.0indirect
npm@commitlint/types21.2.0indirect
npm@conventional-changelog/git-client2.7.0indirect
npm@conventional-changelog/template1.2.1indirect
npm@csstools/color-helpers6.0.2indirect
npm@csstools/css-calc3.2.0indirect
npm@csstools/css-color-parser4.1.0indirect
npm@csstools/css-parser-algorithms4.0.0indirect
npm@csstools/css-syntax-patches-for-csstree1.1.3indirect
npm@csstools/css-tokenizer4.0.0indirect
npm@emnapi/core1.11.1indirect
npm@emnapi/core1.9.2indirect
npm@emnapi/runtime1.11.1indirect
npm@emnapi/runtime1.9.2indirect
npm@emnapi/wasi-threads1.2.1indirect
npm@emnapi/wasi-threads1.2.2indirect
npm@esbuild/aix-ppc640.28.1indirect
npm@esbuild/android-arm0.28.1indirect
npm@esbuild/android-arm640.28.1indirect
npm@esbuild/android-x640.28.1indirect
npm@esbuild/darwin-arm640.28.1indirect
npm@esbuild/darwin-x640.28.1indirect
npm@esbuild/freebsd-arm640.28.1indirect
npm@esbuild/freebsd-x640.28.1indirect
npm@esbuild/linux-arm0.28.1indirect
npm@esbuild/linux-arm640.28.1indirect
npm@esbuild/linux-ia320.28.1indirect
npm@esbuild/linux-loong640.28.1indirect
npm@esbuild/linux-mips64el0.28.1indirect
npm@esbuild/linux-ppc640.28.1indirect
npm@esbuild/linux-riscv640.28.1indirect
npm@esbuild/linux-s390x0.28.1indirect
npm@esbuild/linux-x640.28.1indirect
npm@esbuild/netbsd-arm640.28.1indirect
npm@esbuild/netbsd-x640.28.1indirect
npm@esbuild/openbsd-arm640.28.1indirect
npm@esbuild/openbsd-x640.28.1indirect
npm@esbuild/openharmony-arm640.28.1indirect
npm@esbuild/sunos-x640.28.1indirect
npm@esbuild/win32-arm640.28.1indirect
npm@esbuild/win32-ia320.28.1indirect
npm@esbuild/win32-x640.28.1indirect
npm@exodus/bytes1.15.0indirect
npm@joshwooding/vite-plugin-react-docgen-typescript0.7.0indirect
npm@jridgewell/gen-mapping0.3.13indirect
npm@jridgewell/remapping2.3.5indirect
npm@jridgewell/resolve-uri3.1.2indirect
npm@jridgewell/sourcemap-codec1.5.5indirect
npm@jridgewell/trace-mapping0.3.31indirect
npm@jsdevtools/ono7.1.3indirect
npm@mdx-js/react3.1.1indirect
npm@napi-rs/wasm-runtime1.1.6indirect
npm@neoconfetti/react1.0.0indirect
npm@oxc-parser/binding-android-arm-eabi0.127.0indirect
npm@oxc-parser/binding-android-arm640.127.0indirect
npm@oxc-parser/binding-darwin-arm640.127.0indirect
npm@oxc-parser/binding-darwin-x640.127.0indirect
npm@oxc-parser/binding-freebsd-x640.127.0indirect
npm@oxc-parser/binding-linux-arm-gnueabihf0.127.0indirect
npm@oxc-parser/binding-linux-arm-musleabihf0.127.0indirect
npm@oxc-parser/binding-linux-arm64-gnu0.127.0indirect
npm@oxc-parser/binding-linux-arm64-musl0.127.0indirect
npm@oxc-parser/binding-linux-ppc64-gnu0.127.0indirect
npm@oxc-parser/binding-linux-riscv64-gnu0.127.0indirect
npm@oxc-parser/binding-linux-riscv64-musl0.127.0indirect
npm@oxc-parser/binding-linux-s390x-gnu0.127.0indirect
npm@oxc-parser/binding-linux-x64-gnu0.127.0indirect
npm@oxc-parser/binding-linux-x64-musl0.127.0indirect
npm@oxc-parser/binding-openharmony-arm640.127.0indirect
npm@oxc-parser/binding-wasm32-wasi0.127.0indirect
npm@oxc-parser/binding-win32-arm64-msvc0.127.0indirect
npm@oxc-parser/binding-win32-ia32-msvc0.127.0indirect
npm@oxc-parser/binding-win32-x64-msvc0.127.0indirect
npm@oxc-project/types0.127.0indirect
npm@oxc-project/types0.138.0indirect
npm@oxc-resolver/binding-android-arm-eabi11.19.1indirect
npm@oxc-resolver/binding-android-arm6411.19.1indirect
npm@oxc-resolver/binding-darwin-arm6411.19.1indirect
npm@oxc-resolver/binding-darwin-x6411.19.1indirect
npm@oxc-resolver/binding-freebsd-x6411.19.1indirect
npm@oxc-resolver/binding-linux-arm-gnueabihf11.19.1indirect
npm@oxc-resolver/binding-linux-arm-musleabihf11.19.1indirect
npm@oxc-resolver/binding-linux-arm64-gnu11.19.1indirect
npm@oxc-resolver/binding-linux-arm64-musl11.19.1indirect
npm@oxc-resolver/binding-linux-ppc64-gnu11.19.1indirect
npm@oxc-resolver/binding-linux-riscv64-gnu11.19.1indirect
npm@oxc-resolver/binding-linux-riscv64-musl11.19.1indirect
npm@oxc-resolver/binding-linux-s390x-gnu11.19.1indirect
npm@oxc-resolver/binding-linux-x64-gnu11.19.1indirect
npm@oxc-resolver/binding-linux-x64-musl11.19.1indirect
npm@oxc-resolver/binding-openharmony-arm6411.19.1indirect
npm@oxc-resolver/binding-wasm32-wasi11.19.1indirect
npm@oxc-resolver/binding-win32-arm64-msvc11.19.1indirect
npm@oxc-resolver/binding-win32-ia32-msvc11.19.1indirect
npm@oxc-resolver/binding-win32-x64-msvc11.19.1indirect
npm@playwright/test1.61.1indirect
npm@radix-ui/primitive1.1.3indirect
npm@radix-ui/react-compose-refs1.1.2indirect
npm@radix-ui/react-context1.1.2indirect
npm@radix-ui/react-dialog1.1.15indirect
npm@radix-ui/react-dismissable-layer1.1.11indirect
npm@radix-ui/react-focus-guards1.1.3indirect
npm@radix-ui/react-focus-scope1.1.7indirect
npm@radix-ui/react-id1.1.1indirect
npm@radix-ui/react-portal1.1.9indirect
npm@radix-ui/react-presence1.1.5indirect
npm@radix-ui/react-primitive2.1.3indirect
npm@radix-ui/react-primitive2.1.4indirect
npm@radix-ui/react-slot1.2.3indirect
npm@radix-ui/react-slot1.2.4indirect
npm@radix-ui/react-use-callback-ref1.1.1indirect
npm@radix-ui/react-use-controllable-state1.2.2indirect
npm@radix-ui/react-use-effect-event0.0.2indirect
npm@radix-ui/react-use-escape-keydown1.1.1indirect
npm@radix-ui/react-use-layout-effect1.1.1indirect
npm@rolldown/binding-android-arm641.1.4indirect
npm@rolldown/binding-darwin-arm641.1.4indirect
npm@rolldown/binding-darwin-x641.1.4indirect
npm@rolldown/binding-freebsd-x641.1.4indirect
npm@rolldown/binding-linux-arm-gnueabihf1.1.4indirect
npm@rolldown/binding-linux-arm64-gnu1.1.4indirect
npm@rolldown/binding-linux-arm64-musl1.1.4indirect
npm@rolldown/binding-linux-ppc64-gnu1.1.4indirect
npm@rolldown/binding-linux-s390x-gnu1.1.4indirect
npm@rolldown/binding-linux-x64-gnu1.1.4indirect
npm@rolldown/binding-linux-x64-musl1.1.4indirect
npm@rolldown/binding-openharmony-arm641.1.4indirect
npm@rolldown/binding-wasm32-wasi1.1.4indirect
npm@rolldown/binding-win32-arm64-msvc1.1.4indirect
npm@rolldown/binding-win32-x64-msvc1.1.4indirect
npm@rolldown/pluginutils1.0.1indirect
npm@rollup/pluginutils5.3.0indirect
npm@simple-libs/child-process-utils1.0.2indirect
npm@simple-libs/stream-utils1.2.0indirect
npm@simple-libs/stream-utils2.0.0indirect
npm@standard-schema/spec1.1.0indirect
npm@standard-schema/utils0.3.0indirect
npm@storybook/addon-a11y10.4.6indirect
npm@storybook/addon-docs10.4.6indirect
npm@storybook/addon-onboarding10.4.6indirect
npm@storybook/addon-vitest10.4.6indirect
npm@storybook/builder-vite10.4.6indirect
npm@storybook/csf-plugin10.4.6indirect
npm@storybook/global5.0.0indirect
npm@storybook/icons2.0.2indirect
npm@storybook/react10.4.6indirect
npm@storybook/react-dom-shim10.4.6indirect
npm@storybook/react-vite10.4.6indirect
npm@tailwindcss/node4.3.2indirect
npm@tailwindcss/oxide4.3.2indirect
npm@tailwindcss/oxide-android-arm644.3.2indirect
npm@tailwindcss/oxide-darwin-arm644.3.2indirect
npm@tailwindcss/oxide-darwin-x644.3.2indirect
npm@tailwindcss/oxide-freebsd-x644.3.2indirect
npm@tailwindcss/oxide-linux-arm-gnueabihf4.3.2indirect
npm@tailwindcss/oxide-linux-arm64-gnu4.3.2indirect
npm@tailwindcss/oxide-linux-arm64-musl4.3.2indirect
npm@tailwindcss/oxide-linux-x64-gnu4.3.2indirect
npm@tailwindcss/oxide-linux-x64-musl4.3.2indirect
npm@tailwindcss/oxide-wasm32-wasi4.3.2indirect
npm@tailwindcss/oxide-win32-arm64-msvc4.3.2indirect
npm@tailwindcss/oxide-win32-x64-msvc4.3.2indirect
npm@tanstack/query-core5.101.2indirect
npm@testing-library/dom10.4.1indirect
npm@testing-library/jest-dom6.9.1indirect
npm@testing-library/react16.3.2indirect
npm@testing-library/user-event14.6.1indirect
npm@tybys/wasm-util0.10.3indirect
npm@types/aria-query5.0.4indirect
npm@types/babel__core7.20.5indirect
npm@types/babel__generator7.27.0indirect
npm@types/babel__template7.4.4indirect
npm@types/babel__traverse7.28.0indirect
npm@types/chai5.2.3indirect
npm@types/deep-eql4.0.2indirect
npm@types/doctrine0.0.9indirect
npm@types/estree1.0.8indirect
npm@types/json-schema7.0.15indirect
npm@types/lodash4.17.24indirect
npm@types/mdx2.0.13indirect
npm@types/node26.1.0indirect
npm@types/react19.2.17indirect
npm@types/react-dom19.2.3indirect
npm@types/resolve1.20.6indirect
npm@typescript/native-preview7.0.0-dev.20260706.1indirect
npm@typescript/native-preview-darwin-arm647.0.0-dev.20260706.1indirect
npm@typescript/native-preview-darwin-x647.0.0-dev.20260706.1indirect
npm@typescript/native-preview-linux-arm7.0.0-dev.20260706.1indirect
npm@typescript/native-preview-linux-arm647.0.0-dev.20260706.1indirect
npm@typescript/native-preview-linux-x647.0.0-dev.20260706.1indirect
npm@typescript/native-preview-win32-arm647.0.0-dev.20260706.1indirect
npm@typescript/native-preview-win32-x647.0.0-dev.20260706.1indirect
npm@vitejs/plugin-react6.0.3indirect
npm@vitest/coverage-v84.1.10indirect
npm@vitest/expect3.2.4indirect
npm@vitest/expect4.1.10indirect
npm@vitest/mocker4.1.10indirect
npm@vitest/pretty-format3.2.4indirect
npm@vitest/pretty-format4.1.10indirect
npm@vitest/runner4.1.10indirect
npm@vitest/snapshot4.1.10indirect
npm@vitest/spy3.2.4indirect
npm@vitest/spy4.1.10indirect
npm@vitest/utils3.2.4indirect
npm@vitest/utils4.1.10indirect
npm@webcontainer/env1.1.1indirect
npmacorn8.17.0indirect
npmajv8.20.0indirect
npmansi-escapes7.3.0indirect
npmansi-regex5.0.1indirect
npmansi-regex6.2.2indirect
npmansi-styles5.2.0indirect
npmansi-styles6.2.3indirect
npmargparse2.0.1indirect
npmaria-hidden1.2.6indirect
npmaria-query5.3.0indirect
npmassertion-error2.0.1indirect
npmast-types0.16.1indirect
npmast-v8-to-istanbul1.0.0indirect
npmaxe-core4.12.1indirect
npmbalanced-match4.0.4indirect
npmbaseline-browser-mapping2.10.42indirect
npmbidi-js1.0.3indirect
npmbrace-expansion5.0.6indirect
npmbrowserslist4.28.5indirect
npmbundle-name4.1.0indirect
npmcallsites3.1.0indirect
npmcaniuse-lite1.0.30001802indirect
npmchai5.3.3indirect
npmchai6.2.2indirect
npmcheck-error2.1.3indirect
npmchromatic16.10.0indirect
npmcli-cursor5.0.0indirect
npmcli-truncate5.2.0indirect
npmcliui9.0.1indirect
npmconventional-changelog-angular9.2.1indirect
npmconventional-changelog-conventionalcommits10.2.1indirect
npmconventional-commits-parser7.0.1indirect
npmconvert-source-map2.0.0indirect
npmcookie1.1.1indirect
npmcosmiconfig9.0.2indirect
npmcosmiconfig-typescript-loader6.3.0indirect
npmcss-tree3.2.1indirect
npmcss.escape1.5.1indirect
npmcsstype3.2.3indirect
npmdata-urls7.0.0indirect
npmdebug4.4.3indirect
npmdecimal.js10.6.0indirect
npmdeep-eql5.0.2indirect
npmdefault-browser5.4.0indirect
npmdefault-browser-id5.0.1indirect
npmdefine-lazy-prop3.0.0indirect
npmdequal2.0.3indirect
npmdetect-libc2.1.2indirect
npmdetect-node-es1.1.0indirect
npmdoctrine3.0.0indirect
npmdom-accessibility-api0.5.16indirect
npmdom-accessibility-api0.6.3indirect
npmelectron-to-chromium1.5.387indirect
npmemoji-regex10.6.0indirect
npmempathic2.0.0indirect
npmenhanced-resolve5.21.6indirect
npmentities8.0.0indirect
npmenv-paths2.2.1indirect
npmenvironment1.1.0indirect
npmerror-ex1.3.4indirect
npmes-errors1.3.0indirect
npmes-module-lexer2.1.0indirect
npmes-toolkit1.49.0indirect
npmesbuild0.28.1indirect
npmescalade3.2.0indirect
npmesprima4.0.1indirect
npmestree-walker2.0.2indirect
npmestree-walker3.0.3indirect
npmesutils2.0.3indirect
npmeventemitter35.0.4indirect
npmexpect-type1.3.0indirect
npmfast-deep-equal3.1.3indirect
npmfast-uri3.1.3indirect
npmfdir6.5.0indirect
npmfsevents2.3.2indirect
npmfsevents2.3.3indirect
npmfunction-bind1.1.2indirect
npmgensync1.0.0-beta.2indirect
npmget-caller-file2.0.5indirect
npmget-east-asian-width1.5.0indirect
npmget-east-asian-width1.6.0indirect
npmget-nonce1.0.1indirect
npmgit-raw-commits5.0.1indirect
npmglob13.0.6indirect
npmglobal-directory5.0.0indirect
npmgraceful-fs4.2.11indirect
npmhas-flag4.0.0indirect
npmhasown2.0.4indirect
npmhtml-encoding-sniffer6.0.0indirect
npmhtml-escaper2.0.2indirect
npmhtml-parse-stringify3.0.1indirect
npmhusky9.1.7indirect
npmimport-fresh3.3.1indirect
npmindent-string4.0.0indirect
npmini6.0.0indirect
npmis-arrayish0.2.1indirect
npmis-core-module2.16.2indirect
npmis-docker3.0.0indirect
npmis-extglob2.1.1indirect
npmis-fullwidth-code-point5.1.0indirect
npmis-glob4.0.3indirect
npmis-in-ssh1.0.0indirect
npmis-inside-container1.0.0indirect
npmis-plain-obj4.1.0indirect
npmis-potential-custom-element-name1.0.1indirect
npmis-wsl3.1.0indirect
npmistanbul-lib-coverage3.2.2indirect
npmistanbul-lib-report3.0.1indirect
npmistanbul-reports3.2.0indirect
npmjiti2.6.1indirect
npmjiti2.7.0indirect
npmjs-tokens10.0.0indirect
npmjs-tokens4.0.0indirect
npmjs-yaml4.2.0indirect
npmjs-yaml4.3.0indirect
npmjsdom29.1.1indirect
npmjsesc3.1.0indirect
npmjson-parse-even-better-errors2.3.1indirect
npmjson-schema-to-typescript15.0.4indirect
npmjson-schema-traverse1.0.0indirect
npmjson52.2.3indirect
npmjsonfile6.2.0indirect
npmlightningcss1.32.0indirect
npmlightningcss-android-arm641.32.0indirect
npmlightningcss-darwin-arm641.32.0indirect
npmlightningcss-darwin-x641.32.0indirect
npmlightningcss-freebsd-x641.32.0indirect
npmlightningcss-linux-arm-gnueabihf1.32.0indirect
npmlightningcss-linux-arm64-gnu1.32.0indirect
npmlightningcss-linux-arm64-musl1.32.0indirect
npmlightningcss-linux-x64-gnu1.32.0indirect
npmlightningcss-linux-x64-musl1.32.0indirect
npmlightningcss-win32-arm64-msvc1.32.0indirect
npmlightningcss-win32-x64-msvc1.32.0indirect
npmlines-and-columns1.2.4indirect
npmlint-staged17.0.8indirect
npmlistr210.2.1indirect
npmlodash4.18.1indirect
npmlog-update6.1.0indirect
npmloupe3.2.1indirect
npmlru-cache11.3.6indirect
npmlru-cache5.1.1indirect
npmlz-string1.5.0indirect
npmmagic-string0.30.21indirect
npmmagicast0.5.2indirect
npmmake-dir4.0.0indirect
npmmdn-data2.27.1indirect
npmmeow13.2.0indirect
npmmeow14.1.0indirect
npmmimic-function5.0.1indirect
npmmin-indent1.0.1indirect
npmminimatch10.2.5indirect
npmminimist1.2.8indirect
npmminipass7.1.3indirect
npmms2.1.3indirect
npmnanoid3.3.12indirect
npmnode-releases2.0.50indirect
npmobug2.1.1indirect
npmonetime7.0.0indirect
npmopen10.2.0indirect
npmopen11.0.0indirect
npmoxc-parser0.127.0indirect
npmoxc-resolver11.19.1indirect
npmparent-module1.0.1indirect
npmparse-json5.2.0indirect
npmparse58.0.1indirect
npmpath-parse1.0.7indirect
npmpath-scurry2.0.2indirect
npmpathe2.0.3indirect
npmpathval2.0.1indirect
npmpicocolors1.1.1indirect
npmpicomatch4.0.4indirect
npmplaywright1.61.1indirect
npmplaywright-core1.61.1indirect
npmpostcss8.5.16indirect
npmpowershell-utils0.1.0indirect
npmprettier3.8.3indirect
npmpretty-format27.5.1indirect
npmpunycode2.3.1indirect
npmreact-docgen8.0.3indirect
npmreact-docgen-typescript2.4.0indirect
npmreact-is17.0.2indirect
npmreact-remove-scroll2.7.2indirect
npmreact-remove-scroll-bar2.3.8indirect
npmreact-router7.18.1indirect
npmreact-style-singleton2.2.3indirect
npmrecast0.23.11indirect
npmredent3.0.0indirect
npmrequire-from-string2.0.2indirect
npmresolve1.22.12indirect
npmresolve-from4.0.0indirect
npmresolve-from5.0.0indirect
npmrestore-cursor5.1.0indirect
npmrfdc1.4.1indirect
npmrolldown1.1.4indirect
npmrollup-plugin-visualizer7.0.1indirect
npmrun-applescript7.1.0indirect
npmsaxes6.0.0indirect
npmscheduler0.27.0indirect
npmsemver6.3.1indirect
npmsemver7.7.3indirect
npmsemver7.8.0indirect
npmsemver7.8.5indirect
npmset-cookie-parser2.7.2indirect
npmsiginfo2.0.0indirect
npmsignal-exit4.1.0indirect
npmslice-ansi7.1.2indirect
npmslice-ansi8.0.0indirect
npmsource-map0.6.1indirect
npmsource-map0.7.6indirect
npmsource-map-js1.2.1indirect
npmstackback0.0.2indirect
npmstd-env4.1.0indirect
npmstorybook10.4.6indirect
npmstring-argv0.3.2indirect
npmstring-width7.2.0indirect
npmstring-width8.2.1indirect
npmstrip-ansi7.1.2indirect
npmstrip-ansi7.2.0indirect
npmstrip-bom3.0.0indirect
npmstrip-indent3.0.0indirect
npmstrip-indent4.1.1indirect
npmsupports-color7.2.0indirect
npmsupports-preserve-symlinks-flag1.0.0indirect
npmsymbol-tree3.2.4indirect
npmtapable2.3.3indirect
npmtiny-invariant1.3.3indirect
npmtinybench2.9.0indirect
npmtinyexec1.0.2indirect
npmtinyexec1.2.4indirect
npmtinyglobby0.2.17indirect
npmtinyrainbow2.0.0indirect
npmtinyrainbow3.1.0indirect
npmtinyspy4.0.4indirect
npmtldts7.0.30indirect
npmtldts-core7.0.30indirect
npmtough-cookie6.0.1indirect
npmtr466.0.0indirect
npmts-dedent2.2.0indirect
npmtsconfig-paths4.2.0indirect
npmtslib2.8.1indirect
npmtypescript6.0.3indirect
npmundici7.28.0indirect
npmundici-types8.3.0indirect
npmuniversalify2.0.1indirect
npmunplugin2.3.11indirect
npmupdate-browserslist-db1.2.3indirect
npmuse-callback-ref1.3.3indirect
npmuse-sidecar1.1.3indirect
npmuse-sync-external-store1.6.0indirect
npmvite8.1.3indirect
npmvitest4.1.10indirect
npmvoid-elements3.1.0indirect
npmw3c-xmlserializer5.0.0indirect
npmwebidl-conversions8.0.1indirect
npmwebpack-virtual-modules0.6.2indirect
npmwhatwg-mimetype5.0.0indirect
npmwhatwg-url16.0.1indirect
npmwhy-is-node-running2.3.0indirect
npmwrap-ansi10.0.0indirect
npmwrap-ansi9.0.2indirect
npmws8.21.0indirect
npmwsl-utils0.1.0indirect
npmwsl-utils0.3.1indirect
npmxml-name-validator5.0.0indirect
npmxmlchars2.2.0indirect
npmy18n5.0.8indirect
npmyallist3.1.1indirect
npmyaml2.9.0indirect
npmyargs18.0.0indirect
npmyargs-parser22.0.0indirect
Dependency advisories 6

This repository publishes no package the index resolves, so its own dependency graph was assessed — 610 packages, which also include development and test pins that never ship: 6 carry known advisories, of which 1 are direct.

PackageVersionRelationSeverityAdvisoriesFixed in
brace-expansion5.0.6indirecthigh15.0.7
fast-uri3.1.3indirecthigh14.1.1
js-yaml4.2.0indirecthigh14.3.0
postcss8.5.16indirecthigh18.5.18
react-router7.18.1indirecthigh18.3.0
golang.org/x/cryptov0.53.0directunknown1

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

Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [
        "af-xdp",
        "dpdk",
        "go",
        "mef",
        "network-testing",
        "network-tools",
        "performance-testing",
        "rfc2544",
        "tsn",
        "ieee-802-1qbv",
        "rfc6349",
        "y1564",
        "y1731"
      ],
      "is_fork": false,
      "size_kb": 4084,
      "has_wiki": true,
      "homepage": "https://mustardseednetworks.com/stem",
      "languages": {
        "C": 619071,
        "Go": 2272441,
        "CSS": 35589,
        "HTML": 2338,
        "Shell": 102225,
        "Python": 21704,
        "Makefile": 48928,
        "JavaScript": 30551,
        "TypeScript": 949311
      },
      "pushed_at": "2026-07-20T10:37:59Z",
      "created_at": "2025-12-29T04:30:06Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-16T05:56:35Z",
      "description": "Standards-aligned network performance testing — RFC 2544, ITU-T Y.1564, Y.1731, MEF, TSN. Reflector, generator, and certifier in one Go binary.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "main",
      "license_spdx_raw": "NOASSERTION",
      "primary_language": "Go",
      "significant_languages": [
        "Go",
        "TypeScript",
        "C"
      ]
    },
    "owner": {
      "blog": null,
      "name": null,
      "type": "Organization",
      "login": "MustardSeedNetworks",
      "company": null,
      "location": null,
      "followers": 1,
      "avatar_url": "https://avatars.githubusercontent.com/u/291406731?v=4",
      "created_at": "2026-06-07T00:05:59Z",
      "is_verified": null,
      "public_repos": 6,
      "account_age_days": 47
    },
    "license": {
      "state": "custom",
      "spdx_id": null,
      "raw_spdx": "NOASSERTION",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.24.0",
          "kind": "minor",
          "published_at": "2026-07-10T09:57:30Z"
        },
        {
          "tag": "v0.23.0",
          "kind": "minor",
          "published_at": "2026-05-29T22:48:51Z"
        },
        {
          "tag": "v0.22.0",
          "kind": "minor",
          "published_at": "2026-05-29T22:23:47Z"
        },
        {
          "tag": "v0.21.4",
          "kind": "patch",
          "published_at": "2026-05-29T18:16:47Z"
        },
        {
          "tag": "v0.21.3",
          "kind": "patch",
          "published_at": "2026-05-29T16:20:06Z"
        },
        {
          "tag": "v0.21.2",
          "kind": "patch",
          "published_at": "2026-05-29T00:50:02Z"
        },
        {
          "tag": "v0.21.1",
          "kind": "patch",
          "published_at": "2026-05-28T22:28:25Z"
        },
        {
          "tag": "v0.21.0",
          "kind": "minor",
          "published_at": "2026-05-28T20:53:01Z"
        },
        {
          "tag": "v0.20.0",
          "kind": "minor",
          "published_at": "2026-05-27T18:04:12Z"
        },
        {
          "tag": "v0.19.0",
          "kind": "minor",
          "published_at": "2026-05-26T15:33:05Z"
        },
        {
          "tag": "v0.18.1",
          "kind": "patch",
          "published_at": "2026-05-26T02:08:37Z"
        },
        {
          "tag": "v0.18.0",
          "kind": "minor",
          "published_at": "2026-05-25T21:01:25Z"
        },
        {
          "tag": "v0.17.2",
          "kind": "patch",
          "published_at": "2026-05-25T03:15:54Z"
        },
        {
          "tag": "v0.17.1",
          "kind": "patch",
          "published_at": "2026-05-23T03:25:49Z"
        },
        {
          "tag": "v0.17.0",
          "kind": "minor",
          "published_at": "2026-05-22T23:37:05Z"
        },
        {
          "tag": "v0.16.0",
          "kind": "minor",
          "published_at": "2026-05-22T05:58:06Z"
        },
        {
          "tag": "v0.15.0",
          "kind": "minor",
          "published_at": "2026-05-20T23:13:28Z"
        },
        {
          "tag": "v0.14.0",
          "kind": "minor",
          "published_at": "2026-05-19T04:38:35Z"
        },
        {
          "tag": "v0.13.3",
          "kind": "patch",
          "published_at": "2026-05-19T04:21:39Z"
        },
        {
          "tag": "v0.13.2",
          "kind": "patch",
          "published_at": "2026-05-18T23:53:12Z"
        },
        {
          "tag": "v0.13.1",
          "kind": "patch",
          "published_at": "2026-05-18T22:40:11Z"
        },
        {
          "tag": "v0.13.0",
          "kind": "minor",
          "published_at": "2026-05-18T22:31:04Z"
        },
        {
          "tag": "v0.12.1",
          "kind": "patch",
          "published_at": "2026-05-18T21:04:59Z"
        },
        {
          "tag": "v0.12.0",
          "kind": "minor",
          "published_at": "2026-05-18T20:19:16Z"
        },
        {
          "tag": "v0.11.0",
          "kind": "minor",
          "published_at": "2026-05-18T19:54:20Z"
        },
        {
          "tag": "v0.10.0",
          "kind": "minor",
          "published_at": "2026-05-18T18:14:19Z"
        },
        {
          "tag": "v0.9.12",
          "kind": "patch",
          "published_at": "2026-05-18T01:07:48Z"
        },
        {
          "tag": "v0.9.11",
          "kind": "patch",
          "published_at": "2026-05-15T01:01:35Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "49b93e675321ed9ca20ae9fc97673e3a666532c2",
          "body": "GitHub/Google/Microsoft OAuth SSO was built but never wired into any\nroute, config, or cmd. It also contradicts stem's air-gapped-license\npositioning (local-only license validation, no phone-home).\n\nRelated to #511",
          "is_bot": false,
          "headline": "chore: delete dead internal/oauth package (#523)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T17:11:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca2c12942b525576a6ed1e3fdd69f79cf0d82874",
          "body": "Pin the license-check + semgrep reusable-workflow refs to\nMustardSeedNetworks/.github@v1.0.0 (762b756) instead of @main, matching\nthe fleet's action-pinning discipline and the .github README pattern.\nRenovate bumps these like any other pinned action (same model as the\nfoundation module), so the one-edit-point holds while a bad shared-workflow\npush is gated by each repo's CI rather than landing instantly fleet-wide.",
          "is_bot": false,
          "headline": "ci: pin fleet-shared reusable workflows to a tagged SHA (#522)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T16:38:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4daf06465e9d4af7139f337348eed80d048bd529",
          "body": "Replace stem's byte-identical Semgrep job with a call to\nMustardSeedNetworks/.github's reusable semgrep.yml (Phase 3). ci-complete\nstill needs: [semgrep]. Verified via niac canary (#1008, CI Complete green).",
          "is_bot": false,
          "headline": "ci(semgrep): consume the fleet-shared reusable Semgrep workflow (#521)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T16:21:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "19bf887ad256634ebaa793a6cbc53200fa491431",
          "body": "Replace stem's drifted copy of the license-compliance gate with a thin\ncaller of MustardSeedNetworks/.github's reusable license-check.yml\n(Phase 3). Policy now lives in one place. Verified green via the niac\ncanary (#1007).",
          "is_bot": false,
          "headline": "ci(license-check): consume the fleet-shared reusable workflow (#520)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T15:29:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f4cb1d588bb1ebb79f2cd84b33d74bf3a26a27ba",
          "body": "…sha256(bearer) (#519)\n\nSecond half of Stem's foundation adoption (Phase 2). Replaces the in-repo CSRF\ntoken store with the fleet-shared foundation/pkg/csrf Manager (v0.2.0), and\nconverges the session-key derivation onto the fleet-standard sha256(bearer) —\nStem previously keyed on the raw JWT payloa\n[…]\n re-fetch on next login. Pre-alpha,\nno compat shim.\n\nNet -241 lines. Verified build/vet/lint/govulncheck plus the full auth suite\nand the api CSRF/auth/login/logout/MFA/rotation tests (go test green).",
          "is_bot": false,
          "headline": "refactor(csrf): back CSRF with foundation module; converge keying to …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T15:02:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bd1f928339d9efa69bc92fc6f2691e284a46a879",
          "body": "…(#518)\n\n* refactor(license): consume shared foundation module for license core\n\nReplace Stem's in-repo Ed25519 license core with the fleet-shared\ngithub.com/MustardSeedNetworks/foundation module (v0.1.0), collapsing three\nhand-synced copies of this crypto toward a single edit-point (Phase 2 of the\n\n[…]\nt is our own first-party module, not a third-party\ncopyleft risk, so ignore it exactly as we ignore the stem module itself.\nThe gate still catches GPL/AGPL/SSPL contamination in real third-party deps.",
          "is_bot": false,
          "headline": "refactor(license): consume shared foundation module for license core …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T14:37:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8291e210b96be7efc24a75e89b2ad6d9d23c18aa",
          "body": "The bogus 2.0.0 release (deleted) polluted state. This resets:\n- manifest -> 0.24.0 (the version just tagged/built manually)\n- CHANGELOG: relabel the mislabeled [2.0.0] section to [0.24.0] (content\n  is the real changes since 0.23.0; only the header/compare was wrong)\n- release-please-config: add bo\n[…]\nores the phantom 1.0.0/#497 + 2.0.0/#513 release PRs\n  and computes forward from 0.24.0; remove the non-working release-as.\n\nstem stays pre-1.0. Next release-please run should compute 0.24.1, not 2.x.",
          "is_bot": false,
          "headline": "chore(release): reset release-please to 0.24.0, purge 2.0.0 (#515)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T10:22:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bdd228640dd735c63eca9a0960dd651ae229ba00",
          "body": "Co-authored-by: msn-ci-bot[bot] <301394650+msn-ci-bot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(main): release 2.0.0 (#513)",
          "author_name": "msn-ci-bot[bot]",
          "author_login": "msn-ci-bot[bot]",
          "committed_at": "2026-07-10T01:08:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0c315c5f1a7e986b11ebc002df1fb657942c318a",
          "body": "…(#512)\n\nCodex placed 'release-as' and 'last-release-sha' at the TOP LEVEL of\nrelease-please-config.json, where release-please ignores them (they must\nlive inside packages['.']). So its intended 'force 0.24.0' did nothing and\nrelease-please kept computing off the reverted #497 (1.0.0) release PR,\npr\n[…]\nile -> .github/.release-please-manifest.json; delete root dup\n\nAfter 0.24.0 ships, release-as should be removed (follow-up) so future\nreleases compute from 0.24.0 (which supersedes the phantom 1.0.0).",
          "is_bot": false,
          "headline": "fix(release): correct release-please config nesting (kill the 2.0.0) …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T00:47:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7a659323518ff42512a5e8de0458c53db5da6ed7",
          "body": "Extends github>MustardSeedNetworks/.github so all dependency/lockstep\npolicy lives in one place. Inert until the Renovate App is installed.",
          "is_bot": false,
          "headline": "chore: onboard Renovate via shared org preset (#510)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T00:42:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5a52387dd669949e3cbe0a350c7ccaf3dae2aacc",
          "body": "The 'stem version' help example printed 'Stem v1.0.0' and DISTRIBUTION.md\nused v1.0.0 in the tag/release examples — misleading, since stem is\npre-1.0 (currently v0.23.0) and there is no 1.0 release. Use 0.x examples.\n(internal/backup BackupVersion=\"1.0\" is the backup file-format version,\nnot the app version — left as-is.)",
          "is_bot": false,
          "headline": "fix(docs): correct stale v1.0.0 examples to 0.x (#506)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-10T00:03:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e3dfd63f89e56843ccc69f898456d50a21323592",
          "body": "The goreleaser-cross container runs steps with sh (dash), which rejects\n'set -o pipefail'. The Syft install step lacked shell:bash, failing the\nrelease build with 'Illegal option -o pipefail' — this killed the first\ngoreleaser-cross release attempt (the bogus v1.0.0). Same fix already\napplied to niac. Unblocks stem releases.",
          "is_bot": false,
          "headline": "fix(release): force bash on container Syft step (pipefail) (#507)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-09T23:58:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "365ab5b7c542adc16821f98487744ed1ee275895",
          "body": null,
          "is_bot": false,
          "headline": "fix(release): force next Stem release back to 0.x (#504)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-09T23:03:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f5ff941cb297ad495eced773590b66285853854",
          "body": null,
          "is_bot": false,
          "headline": "fix(release): use root release-please manifest (#502)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-09T02:43:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77419546ed29d6ca62e954676094ba8a74b3b46e",
          "body": null,
          "is_bot": false,
          "headline": "fix(release): align stem release manifest with latest 0.x tag (#500)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-09T02:20:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc2d53b356cc74d27297cd85037be1b60049bbbf",
          "body": "* Revert \"chore(main): release 1.0.0 (#497)\"\n\nThis reverts commit bfe300c93ede9c385cfce366dc807edd11bb6a83.\n\n* chore(ci): refresh invalid release revert checks",
          "is_bot": false,
          "headline": "fix(release): revert invalid 1.0.0 changelog (#498)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-09T02:11:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bfe300c93ede9c385cfce366dc807edd11bb6a83",
          "body": "Co-authored-by: msn-ci-bot[bot] <301394650+msn-ci-bot[bot]@users.noreply.github.com>",
          "is_bot": true,
          "headline": "chore(main): release 1.0.0 (#497)",
          "author_name": "msn-ci-bot[bot]",
          "author_login": "msn-ci-bot[bot]",
          "committed_at": "2026-07-09T01:46:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98ef652e25e342d2ed4123bbfbc6a2bda48912a1",
          "body": null,
          "is_bot": false,
          "headline": "ci(release): use msn-ci-bot App token for release-please (#494)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-08T19:42:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a7aa351157e59a1dec259cdb00ee4a4bc0de06d6",
          "body": null,
          "is_bot": false,
          "headline": "fix(security): bump Go 1.26.5 and gate Trivy SARIF (#496)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-08T16:57:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fa5fd33603d0792841cb1ad52cd00f8bdf4807c9",
          "body": null,
          "is_bot": false,
          "headline": "chore: update stem toolchain dependencies (#492)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-07T00:53:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4222748b3f8412b963b83b10de9d76279987afac",
          "body": "… (#489)",
          "is_bot": false,
          "headline": "ci(governance): exempt release-please PRs from human PR-body template…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T20:30:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ef849b217f5a9c89845ba51446e11a6629bb4099",
          "body": "Adds a required semgrep job (p/golang, p/typescript, p/react,\np/owasp-top-ten; blocking on ERROR severity only) wired into\nci-complete's needs, replicating seed #1737. CodeQL is advisory and\nskipped on private repos, so Semgrep becomes the required SAST signal;\ncorrects the ci-complete comments, whi\n[…]\nn current main. Annotates the one known\nWARNING-severity false positive (HIBP SHA-1 k-anonymity API contract in\ninternal/auth/hibp.go) with a nosemgrep justification ahead of a future\nWARNING ratchet.",
          "is_bot": false,
          "headline": "ci(security): add Semgrep SAST gate (#485)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T19:16:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9c18fcbc51163b1473b9b48979228a04a647e1d3",
          "body": "…al Use Grant (#483)",
          "is_bot": false,
          "headline": "chore(license): add license-key-circumvention clause to BUSL Addition…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T18:42:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ac7df3fee31cd25e57a3c05b5b963339091107f5",
          "body": "macOS runners are the biggest CI cost multiplier (10x ubuntu-latest minutes)\nand stem's build matrix built both darwin rows on every PR despite only\ndarwin/arm64 ever shipping in release.yml. Since stem is CGO_ENABLED=0, drop\nboth darwin rows from the PR build matrix and replace them with a cheap\ncr\n[…]\n+ a scoped grant on the one job that needs SARIF\nupload, and pin release.yml's syft install to a checksummed release archive\ninstead of piping install.sh from the mutable main branch.\n\nRelated to #480",
          "is_bot": false,
          "headline": "ci(perf): stop macOS-on-PR, enable Go cache, least-privilege (#481)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T18:21:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5dbe8698525d571dfeeac1682e47a8d5ddbacc8f",
          "body": "Stem is a raw-network on-prem tool; the real deploy path is .deb/.rpm +\nsystemd, not containers. Drop the container build pipeline entirely:\n\n- Delete .github/workflows/container.yml and Dockerfile\n- Drop the now-dead `docker` path filter output from ci.yml (nothing\n  downstream referenced it)\n- Rem\n[…]\ns, so no\nchange needed there. Deleting container.yml orphans no required check:\nbranch protection requires only CI Complete, Lint PR Title, and Lint PR\nBody — the container job was never in that list.",
          "is_bot": false,
          "headline": "chore(build): remove Docker/GHCR publishing (#478)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T17:41:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9746bb30f217db9004437e80bcafe870548073fc",
          "body": "…477)\n\nBoth open CodeQL alerts trace to code that already follows this repo's\noutput-escaping and password-handling invariants:\n\n- #100 (go/weak-sensitive-data-hashing, internal/auth/hibp.go:109): the\n  SHA-1 digest is required by the HaveIBeenPwned Pwned Passwords\n  k-anonymity API protocol, never \n[…]\n passthrough — no HTML rendering context exists for the tainted data.\n\nAdd inline comments at both sites recording the analysis so future\nreaders (and the CodeQL dismissal) have the rationale in-repo.",
          "is_bot": false,
          "headline": "docs(security): document CodeQL alerts #99/#100 as false positives (#…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T15:31:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "0993c8d4246f07645e5e29de1e93da32154318b2",
          "body": "…ake parity (#468)\n\n* fix(fmt): apply gofmt -s to dataplane orchestrator files\n\nTwo files had accumulated whitespace/alignment drift that gofmt -l\nflags; caught while adding the new make fmt-check gate (previously no\ncheck-only formatting target existed to catch this in CI).\n\n* feat(mk): add make fm\n[…]\ntays: the mk/vars.mk `ifndef GOARCH`\nguard (a real latent bug regardless of who invokes make), wrapper\nexit-code fixes, fmt-check, undici bump, golangci-lint v2.12.2, and\nthe `npm run typecheck` swap.",
          "is_bot": false,
          "headline": "fix(quality-gates): honest exit codes, fmt-check, npm audit fix, CI/m…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-07-06T15:15:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fb37e61ced62dce4ac2cad8326fdb39a9e952a50",
          "body": "…395)\n\nBumps [github/codeql-action](https://github.com/github/codeql-action) from 4.36.0 to 4.36.2.\n- [Release notes](https://github.com/github/codeql-action/releases)\n- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/github/codeql-action/co\n[…]\nirect:production\n  update-type: version-update:semver-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)(deps): bump github/codeql-action from 4.36.0 to 4.36.2 (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-17T00:32:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a5e25180d5c6b3a6ad4836c237ab2fd00355525d",
          "body": "…nal/api) (#455)\n\n* ci(gates): add filename-policy gate (no monolith naming outside internal/api)\n\nPorts seed's check-filename-policy.sh to stem for fleet enforcement parity.\nThe gate fails if any handlers_*.go / jobs_*.go file exists outside\ninternal/api (unless it's the eponymous file of a package\n[…]\nry outward. Green on the current\ntree (zero handlers_/jobs_ files outside internal/api).\n\n* test(auth): speed up argon2 test mode\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "ci(gates): add filename-policy gate (no monolith naming outside inter…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-17T00:25:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "da2bd38691de94d630ca5693f0d5ff47c0062f74",
          "body": "…ors leaf (ADR-0011) (#454)\n\nMove the Origin-header classification used by the CORS policy out of the\nflat internal/api namespace into the internal/api/cors leaf package\n(ADR-0011, fourth slice). The leaf exposes IsLocalhostOrigin,\nIsSameOrigin, and IsRFC1918Origin — with the strict complete-IP-stru\n[…]\nd-API tests external, unexported-helper tests\ninternal).\n\nNo behaviour change: CORS allow/deny decisions and response headers are\nidentical.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(api): extract CORS origin classification into internal/api/c…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T21:30:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "51dda732b93d2ce55c1390167095501bee5ef56e",
          "body": "…f (ADR-0011) (#453)\n\nMove certificate provisioning, ACME manager construction, the TLS 1.3\nconfig template, and the active-cert fingerprint cache out of the flat\ninternal/api namespace into the internal/api/tlsutil leaf package\n(ADR-0011). The leaf depends only on stdlib, golang.org/x/crypto, and\ni\n[…]\naf's exported API directly from internal/api/tlsutil.\n\nNo behaviour change: endpoints, /__version fingerprint, and cert paths\nare identical.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(api): extract TLS provisioning into internal/api/tlsutil lea…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T21:11:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "21d0d27fcb54d0b28a6f424d034e554f7ba164ec",
          "body": "…R-0011) (#452)\n\n* refactor(api): extract SSE broadcaster into internal/api/sse leaf (ADR-0011)\n\n* fix(sse): use slices.Concat in Frame.Encode (resolve CodeQL alloc-overflow)\n\nCodeQL go/allocation-size-overflow flagged make([]byte,0,len(data)+const)\n(a practically-impossible overflow, but pre-existi\n[…]\n.Concat sizes\ninternally with its own overflow guard — no hand-rolled make-capacity for\nthe analyzer to flag. Behavior identical.\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(api): extract SSE broadcaster into internal/api/sse leaf (AD…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T20:41:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "37c9b7ec5fb5d08a4a3cb040aa69a0b8475113a7",
          "body": "…(ADR-0011) (#451)\n\n* refactor(api): extract rate limiter into internal/api/ratelimit leaf (ADR-0011)\n\nMoves all per-IP rate-limiting logic out of package api into the new\ninternal/api/ratelimit leaf package, mirroring niac's proven pattern.\nThe leaf depends only on stdlib, golang.org/x/time/rate, a\n[…]\nr change; all security invariants intact (authLimiter/apiLimiter\nstill wired identically, depguard rule enforces leaf isolation).\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(api): extract rate limiter into internal/api/ratelimit leaf …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T18:20:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5d0df158778ce2dc3032169f260877085183d9e5",
          "body": "…y route) (#447)\n\nRemove three categories of pre-v1 backwards-compat dead weight:\n\n1. database.Database type alias (internal/database/database.go L74-75) — deleted;\n   all 9 callsites in internal/backup/backup.go migrated to database.DB.\n\n2. Save* alias methods that wrapped canonical methods with no\n[…]\nical route. No Go or UI callers\n   used the legacy path. TestHandleAuthCSRF and TestAuthRoutesRegistered\n   migrated to the canonical route.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor: purge pre-v1 compat aliases (Database/Save*/auth-csrf legac…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T14:59:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dab673d7144823006725b979d56575d484b3d9a4",
          "body": "…ly (#448)\n\nPre-v1 no-grandfathering: Enterprise (tier 3 / product code 3001) is not\na SKU per LICENSE_STRATEGY (folded into Professional) and was still\ngrandfathering previously-issued tokens to Pro features. Remove it\nentirely — a token presenting tier 3 or code 3001 is now REJECTED\n(falls through\n[…]\nl.\n\nFleet: niac (Free/Pro) + seed (Free/Starter/Pro) already have no\nEnterprise tier — licenses now aligned to the locked matrix fleet-wide.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(license): retire TierEnterprise + TierTestSuite alias entire…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T14:52:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f7caee7660624a6b3bacb62ca3a545a3a676ccd6",
          "body": "Documents the decision to strangle stem's flat internal/api into isolated\nleaf packages (ratelimit -> sse -> tls, then capability handlers), mirroring\nseed's strangle + niac ADR-0006. Each leaf is stdlib+inward-only with a\nCI-enforced api-<concern>-isolated depguard rule; snake_case filenames go\nawa\n[…]\nas a consequence; port check-filename-policy.sh once they're gone.\n\nAlso restores the missing 0009 + 0010 rows to the ADR index (doc drift).\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "docs(adr): add ADR-0011 (internal/api sub-package decomposition) (#449)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T14:43:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "45146359878d5c00d759b3aea05d2a6dca9fe4c4",
          "body": "…#444)\n\nW5.5 bookend: now that every god-file is decomposed (App.tsx, main.go,\nhelp-content.ts, help/tests.go, dataplane.go all under the red-flag\nceiling), enforce the file-size gate as a hard CI failure (STRICT=1,\nfleet-wide Go >1200 / TS >800).\n\nAlso restores the JSON wire-casing gate and the fil\n[…]\nted architecture invariants and must not\nregress. Verified on main: STRICT=1 check-file-size.sh = 0 red flags;\ncheck-json-casing.sh = clean.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "ci(gates): flip file-size gate to STRICT + restore json-casing gate (…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T14:14:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f1e37c743fec052b99fc96a9f5d01d5855a34f0a",
          "body": "* chore(release): expose release train metadata\n\n* fix(ci): remove stale dataplane import\n\n* fix(ci): wrap release train assertion",
          "is_bot": false,
          "headline": "chore(release): expose release train metadata (#446)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T13:39:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "021fe6538f8e274da0e357d1d50059bd6b3ec3c7",
          "body": "…ze gate) (#440)\n\ndataplane.go was 2782 lines (RED flag >1200). Split by protocol/concern into\n8 files in the same package with no behavior, signature, or logic changes:\n\n- dataplane.go (1186L): C preamble, Context lifecycle, RunCustomStreamTest, internal RFC 2544 wrappers\n- dataplane_types.go (561L\n[…]\ne carries a minimal per-file C preamble (CGO requirement).\nAll validation passed: go build ./..., go vet, golangci-lint (0 issues), go test.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(dataplane): split dataplane.go into cohesive files (under si…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T05:21:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8d8fec02c091a68bbcabab38fc96b24651cbe538",
          "body": "Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 6.0.3.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/v6.0.2...df4cb1c069e187\n[…]\nirect:production\n  update-type: version-update:semver-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)(deps): bump actions/checkout from 6.0.2 to 6.0.3 (#394)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-16T05:21:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "42744b74315873aaf499e71241c767955c712d04",
          "body": "* chore(github): standardize repo governance\n\n* ci: extend race detector package timeout\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "chore(github): standardize repo governance (#442)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T04:35:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1de39d9d87406939633ba7f27d36980af89552d7",
          "body": "…) (#438)\n\n* refactor(ui): split help-content.ts into data/help/* (under size gate)\n\nDecompose the 2021-line monolith into 14 focused files:\n- data/help/types.ts — all interfaces\n- data/help/categories.ts — category record\n- data/help/glossary.ts — glossary record + searchGlossary\n- data/help/tutori\n[…]\n index.ts exemption). All imports unchanged;\nno logic or content modified.\n\n* style(ui): sort imports in help/tests/index (biome)\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(ui): split help-content.ts into data/help/* (under size gate…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T02:36:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ec976eaafd9f89966138994b73cbea12e07ed1ad",
          "body": "…437)\n\ncmd/stem/main.go was 1532 lines, exceeding the project >1200-line red\nflag. Split along natural functional seams into six new files in the\nsame package main — zero logic changes, zero renames, verbatim moves:\n\n- cmd_reflect.go      reflect subcommand + stats loop + helpers\n- cmd_testmaster.go\n[…]\nenamed to cmd_testmaster.go because Go treats\nfiles ending in _test.go as test files, which hid the package symbols\nfrom the non-test build.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(cmd): split main.go into cohesive files (under size gate) (#…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T02:33:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dac92bd4c833b575153f6a758c5b222b21418627",
          "body": "…(#439)\n\ntests.go (2960 lines, RED FLAG >1200) split by standard into 7 files:\n- tests_rfc2544.go (862 lines): RFC 2544 throughput/latency/frame-loss/b2b/recovery/reset\n- tests_y1564.go (397 lines): Y.1564 config/performance/full SAC\n- tests_rfc2889.go (408 lines): RFC 2889 forwarding/address-cache/\n[…]\nlTests() dispatcher only\n\nSame package, zero behavior change, verbatim content moves only.\nAll files below the 1200-line red flag threshold.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(help): split tests.go into cohesive files (under size gate) …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T02:30:03Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b69fbb13eee87b430e6c8fb0369edeebd5d17bda",
          "body": "…oup (#426)\n\nBumps the go-dependencies group with 1 update: [golang.org/x/crypto](https://github.com/golang/crypto).\n\n\nUpdates `golang.org/x/crypto` from 0.52.0 to 0.53.0\n- [Commits](https://github.com/golang/crypto/compare/v0.52.0...v0.53.0)\n\n---\nupdated-dependencies:\n- dependency-name: golang.org/\n[…]\nion-update:semver-minor\n  dependency-group: go-dependencies\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)(deps): bump golang.org/x/crypto in the go-dependencies gr…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-16T01:17:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "217a2055d57e9b40ed076ce7cd595a84b0e3d294",
          "body": "Strip the 1187-line god App.tsx down to a 190-line composition root.\nBehavior-preserving extraction (same testids, RQ keys, auth flows):\n\n- hooks/useTestExecution.ts — interfaces + stats RQ reads, connection\n  indicator, test start/stop, the status-transition state machine, and\n  the test-config hel\n[…]\nocal).\n\nValidated: biome 2.5.0 clean (whole src/), tsgo typecheck, vitest\n198/198, vite build green. App.tsx no longer a file-size red flag.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(ui): decompose App.tsx to providers + routing (W5.5) (#436)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-16T01:06:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "510fe8b968acc678db514155b7dadf42b50e88d1",
          "body": "… with 16 updates (#435)\n\nBumps the npm-dependencies group with 16 updates in the /ui directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.3.0` | `4.3.1` |\n| [lucide-react](https://g\n[…]\non-update:semver-patch\n  dependency-group: npm-dependencies\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)(deps): bump the npm-dependencies group across 1 directory…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-16T00:23:35Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7075ea670dd28b8b0b7fe865e13d17fb61005ae6",
          "body": "* feat(ui): auth-store + hardened authFetch core (W5.3, part 1/2)\n\nSecurity-critical core of the auth extraction, built standalone + proven by\ntests before the App.tsx wiring. Cross-model (Codex) reviewed.\n\nauth-store.ts (Zustand, not persisted; isAuthenticated seeded from the\nlocalStorage flag): lo\n[…]\nryFns thread the React Query abort signal.\n\nValidated: biome 2.5.0 clean, tsgo typecheck clean, vitest 198/198,\nvite build green.\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "feat(ui): extract auth to auth-store + harden authFetch (W5.3) (#434)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T21:30:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c8518486c295fe9eef3218cdfc078088aeb3e15e",
          "body": "* refactor(ui): extract test-execution config to test-store (W5.4)\n\nStage 4 of the App.tsx decomposition. Moves the 12 test-config/run-state\nfields — selectedTests, reflectorProfile, isStarting/StoppingTest,\ntestStartError, and the 7 per-protocol config objects (rfc2544/2889/6349/\ny1564/y1731/tsn/tr\n[…]\niome over all of src/; the long set(...) setter lines in\ntest-store.ts needed wrapping. (Local check had only formatted App.tsx.)\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(ui): extract test-execution config to test-store (W5.4) (#433)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T16:20:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4f17830bd0b99a95482915cf87657eb4aca8a707",
          "body": "Stage 2b of the App.tsx decomposition. Replaces the manual 1s setInterval\nstats poll (statsIntervalRef + fetchStats useCallback + the connected-gated\npolling effect) with a useQuery:\n- enabled: connected, refetchInterval: 1000, refetchIntervalInBackground:\n  true (matches the old setInterval running\n[…]\n2a/2b. tsc + biome clean; build green;\n183/183 unit tests pass. Live polling/test-status behavior is covered by the\nfullstack E2E on the PR.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "feat(ui): migrate the stats poll to React Query (W5.2b) (#432)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T15:52:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "12e073ccda2ebe9a54afb2a4a75be22f39d7e3e6",
          "body": "* feat(ui): add React Query + migrate the interfaces read (W5.2a)\n\nStage 2a of the App.tsx decomposition. Introduces @tanstack/react-query\n(5.101.0, pinned) with a shared QueryClient (lib/queryClient.ts, mirroring\nseed) wired in at main.tsx, and migrates the first read — the network\ninterfaces fetch\n[…]\nd expireSession so no cached\nserver response survives an auth transition (also protects every future query\non the shared client).\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "feat(ui): add React Query + migrate the interfaces read (W5.2a) (#431)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T15:44:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5ab089133cd7aa6e110f1b47d0cc50f156e3173a",
          "body": "module-certify was #16a34a green — only ~1.19:1 luminance-distinct from\nstatus-success #4caf50, so a Certify badge and a success badge co-located\nread as the same green. Move certify to violet (#7c3aed light / #a78bfa\ndark), the open slot on the module hue wheel (cyan/red/orange/yellow/blue\nalready \n[…]\nmeasure-blue. Consumers reference the\ntoken, so the change propagates with no call-site edits.\n\ntsc + biome + token gate clean; build green.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(ui): give module-certify a distinct violet hue (S7) (#430)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T15:17:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "45f05d93994e1d8a38d4f06b7d495d7c7d6bc6ac",
          "body": "…) (#429)\n\nStage 1 of the App.tsx decomposition. Move the four app-shell UI flags\n(settings/help/history drawers + the ⌘K command palette) out of local\nuseState in App.tsx into a dedicated Zustand shell-store, mirroring the\nexisting profile-store pattern. Deliberately not persisted — these are\nephem\n[…]\nuseState count 30 → 26; connection/\nauth/test state are extracted in later slices.\n\ntsc + biome clean; 183/183 unit tests pass; build green.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(ui): extract shell drawer/palette state to shell-store (W5.1…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T14:38:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ccde3f43b0aab756a7d21e2aa0cc8eb504761905",
          "body": "Replace 12 hand-rolled inline SVG icon components with lucide-react\nequivalents (already stem's icon system in navGroups/Sidebar/pageRegistry),\nand remove the 4 @deprecated, ignored props.\n\nIcon map: Activity→Activity, Wifi→Wifi, WifiOff→WifiOff, Sun→Sun,\nMoon→Moon, Refresh→RefreshCw, Settings→Setti\n[…]\ningsOpen (no callers passed them).\n\nHeaderBar.tsx: 809 → 592 lines. 0 inline <svg>. tsc + biome clean;\n29 HeaderBar tests pass; build green.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(ui): unify HeaderBar icons to lucide-react (S4/S8) (#428)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-15T14:25:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "483b7b6f72e535a04e33cea8e01faa4468b896e0",
          "body": "…e (S5) (#425)\n\nthemeComponents.ts used raw `text-zinc-900` (success button) and\n`bg-black/50` (modal backdrop) — both slipped through because the token\ngate blanket-excluded all of styles/.\n\n- Add a semantic `--color-on-success` token (dark #1a2520, ~6.2:1 AA on\n  status-success #4caf50; white fail\n[…]\n\n  caught.\n\nS7 (module-certify vs status-success green contrast = ~1.19:1) is left as an\nowner decision — analysis only, no hue change here.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(ui): close token-gate escapes in themeComponents + narrow the gat…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T23:38:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "960282580d45af9692ca6ab4b665128c05f9e9f7",
          "body": "Port seed's check-file-size.sh to stem. Ships in STRICT=0 (warn/exit-0)\nbecause App.tsx (1,453 lines), HeaderBar.tsx (809 lines), and several Go\nfiles exceed red-flag thresholds today. The gate inventories existing debt\nwithout blocking CI; flip STRICT=1 once the App.tsx decomposition lands.\n\nThresholds: Go src >600 warn/>1200 red-flag, Go tests >1000 warn,\nTS/TSX >400 warn/>800 red-flag.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "chore(ci): add file-size gate (warn mode) (W0c) (#424)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T23:21:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1c36e07792acd51d9844e3e5d5c0be4adb719548",
          "body": "…parity with seed) (#421)\n\nPorts seed's json-casing guard so stem enforces the same camelCase JSON\nwire-tag invariant. stem is already fully camelCase (0 snake_case tags in\ninternal/api + internal/reflector), so the baseline allow-list is empty —\nthe gate locks that in: any NEW snake_case wire tag f\n[…]\ncase (grep exit 1 under pipefail) so the gate works for a fully\ncamelCase repo. Verified: passes clean on main; fails on a seeded snake tag.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "ci(stem): add JSON wire-casing gate — camelCase ratchet (enforcement …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T21:39:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1eec09e3b28de6631c7a9ad65fa63ffef4044a10",
          "body": "…#420)\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(ui): add nav↔route parity guard (enforcement parity with seed) (…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T21:39:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "49222125166f66f6404a81e8a47e31c137211429",
          "body": "The 'Account' sidebar group used a bare string literal, so it never\ntranslated — every other group uses '' or a common:sections.* key. Add\ncommon.sections.account (en: Account / es: Cuenta) and reference it. The\n'Security' item label stays as-is (product/standard term).\n\ntsc + biome clean; i18n parity + navGroups tests green (29).\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(ui): i18n the Account nav group label (S3) (#419)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T21:36:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c2dc50cfdf1465d179dd15add35caee11fea6761",
          "body": "…o exceptions (#422)\n\nMirrors seed's revised ADR-0010 (2026-06-14, pure boundary-mapping) per the\nharmonized-by-convention, no-master principle. stem's API is already 100%\ncamelCase (0 snake_case wire tags in internal/api + internal/reflector); the\njson-casing gate (#421) with empty baseline locks it in.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "docs(adr): adopt fleet JSON wire-casing convention — camelCase API, n…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T21:34:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "22d9afa7a28a08213c73a18412ecf4f796efbb73",
          "body": "esbuild 0.17.0-0.28.0 has a high-severity advisory (missing binary\nintegrity verification enabling RCE via NPM_CONFIG_REGISTRY), pulled in\ntransitively through storybook's vite builder. The advisory is patched\nin 0.28.1; pin it via an npm override (the direct fix npm proposes is a\nbreaking storybook downgrade, which is the wrong tradeoff).\n\nUnblocks the Security Scanning job (npm audit --audit-level=high) on all\nopen PRs.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "chore(deps): override esbuild to 0.28.1 (GHSA-gv7w-rqvm-qjhr) (#423)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-14T21:27:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a8d629aef752d0299745a3717cf1a2c942591014",
          "body": "…) (#418)\n\nA cross-repo security-invariant audit confirmed stem's core CSRF posture\n(ADR-0004) holds: all mutating routes go through the registry + global\nper-session CSRFManager, CI-gated. It surfaced two SameSite-mitigated edges\nwhere the middleware does not actively validate a token:\n\n- POST /aut\n[…]\n Document in ADR-0009\nand add pointer comments at both route registrations so a future audit lands\non the decision instead of re-opening it.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "docs(security): record accepted CSRF defense-in-depth edges (ADR-0009…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-11T10:01:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "59a7ebd23f307544822dfc5a1ac9ade5bbc402a5",
          "body": "… with 19 updates (#396)\n\nBumps the npm-dependencies group with 19 updates in the /ui directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [i18next](https://github.com/i18next/i18next) | `26.2.0` | `26.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-reac\n[…]\non-update:semver-patch\n  dependency-group: npm-dependencies\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)(deps): bump the npm-dependencies group across 1 directory…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-09T02:03:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cd3072579de14cfbf5a35fbc2076ad8ddcb2e82b",
          "body": "The app shell shipped as a single ~741 kB index chunk: every app-code\nchange busted the browser cache for React/i18next/etc. too. Add a\nmanualChunks vendor split (vendor-react, vendor-i18n, vendor-ui) plus\nresolve.dedupe so duplicate transitive copies collapse, and wire an\nANALYZE-gated rollup-plugi\n[…]\n. Treemap writes to gitignored ui/dist/.\n\nVerified: npm run build + build:analyze, make build (UI embedded), make\nclean leaves a clean tree.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "perf(ui): split vendor chunks, add bundle analyzer (#417)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-09T01:51:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1aa020e17072d28c11b4fe8d52a3c693440869cc",
          "body": "…stry (#415)\n\nstem's capability registry already made HTTP methods authoritative\n(methods + methodGate); the body-size cap was the one piece of route\npolicy still living outside it — every handler relied on decodeJSONStrict\npassing maxRequestBodySize per call site, so a route that forgot to decode\ns\n[…]\nmaxRequestBodySize (1 MB),\nso the registry cap matches what was enforced inline. The existing inline\ndecode caps remain as defense-in-depth.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "feat(api): make request body-size limit declarative in the route regi…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-09T01:14:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "65421cd7697de8ebfd4a1eb7f8317e0aae6e30a2",
          "body": "tsconfig.node.json compiled vite.config.ts to a tracked vite.config.js +\nvite.config.d.ts. Vite 8 resolves vite.config.js before vite.config.ts,\nso the stale emitted .js (cssCodeSplit:false, modulePreload:false, no\nes2022 target, no assetsInlineLimit:0) shadowed the canonical .ts at\nconfig-load time\n[…]\ned Vite config and the one Vite\nloads. Verified: tsc -b emits nothing, make build embeds the correct\nconfig, make clean leaves a clean tree.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(ui): stop emitted vite.config.js shadowing vite.config.ts (#416)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-09T00:57:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "505f6e3cac038febcb13ce83c5230a59d274726a",
          "body": "stem already had a documented isCSRFExemptPath; this adds the regression gate the\nissue asked for (no production change).\n\ncsrf_coverage_test.go (package auth_test, via a new export_test.go seam):\n- Golden-pins the exempt set — every current exemption (login, harvest/logs/client,\n  the MFA finishers\n[…]\nhing token passes and an exempt path passes\n  session-less.\n\nVerified: go build, go vet, golangci-lint (0 issues), go test ./internal/auth/.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(auth): pin the CSRF exempt-list with a coverage gate (#341) (#414)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T22:32:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2ffcaf88819ec55016133e03e76255d9aff74484",
          "body": null,
          "is_bot": false,
          "headline": "fix(ui): suppress node dep0205 build warning",
          "author_name": "Kris Armstrong",
          "author_login": null,
          "committed_at": "2026-06-08T21:38:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a42dc0829c2cfa67c301aebd3a5c0b9f3b0ff7a8",
          "body": "Bumps [securego/gosec](https://github.com/securego/gosec) from 2.26.1 to 2.27.1.\n- [Release notes](https://github.com/securego/gosec/releases)\n- [Commits](https://github.com/securego/gosec/compare/4a3bd8af174872c778439083ded7adbf3747e770...9e6a9843d7a4a6e3e9a8539b02612c8a4aa3f889)\n\n---\nupdated-depen\n[…]\nirect:production\n  update-type: version-update:semver-minor\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)(deps): bump securego/gosec from 2.26.1 to 2.27.1 (#391)",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-08T21:27:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b6be3c68b5556e4b4227644f46440abfbc8cb9aa",
          "body": "…with 2 updates (#392)\n\nBumps the go-dependencies group with 2 updates in the / directory: [github.com/go-playground/validator/v10](https://github.com/go-playground/validator) and [modernc.org/sqlite](https://gitlab.com/cznic/sqlite).\n\n\nUpdates `github.com/go-playground/validator/v10` from 10.30.2 t\n[…]\nion-update:semver-minor\n  dependency-group: go-dependencies\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)(deps): bump the go-dependencies group across 1 directory …",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-08T21:27:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "39990a39090516b8723b3bb8337822f5440bf1fd",
          "body": "…408)\n\nBumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 6.0.1 to 7.0.0.\n- [Release notes](https://github.com/codecov/codecov-action/releases)\n- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/codecov/codecov-a\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)(deps): bump codecov/codecov-action from 6.0.1 to 7.0.0 (#…",
          "author_name": "dependabot[bot]",
          "author_login": "dependabot[bot]",
          "committed_at": "2026-06-08T21:27:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d0707f44eb2ccd50fe1924304283d5e21e12589e",
          "body": null,
          "is_bot": false,
          "headline": "chore(main): release 0.23.1 (#382)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T21:26:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4b36291df9ee162313fdf399d55fde21cc1a27f4",
          "body": "Officially dropping Intel macOS support fleet-wide; keep darwin/arm64 (Apple\nSilicon) only.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "ci(release): drop macOS amd64 (Intel) build target (#413)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T21:14:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "15ab94eaf6afeda3c19be712d6fda546ebfa7b3c",
          "body": "Keep the cross-build image fresh (Go 1.26.3 + goreleaser v2.16.0) so its baked\nlibs don't drift from upstream. stem is pure-Go (no libpcap multiarch install)\nso it wasn't hit by the seed#1577 arm64 break, but fleet pins stay aligned.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "ci(release): bump goreleaser-cross to v1.26.3-v2.16.0 (#412)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T20:07:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "06392db9a8cfcb1c42d8e4022c7464052110bbbc",
          "body": null,
          "is_bot": false,
          "headline": "docs: align makefile local build scope",
          "author_name": "Kris Armstrong",
          "author_login": null,
          "committed_at": "2026-06-08T18:19:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9eb862b35738cf8087e7afc071d28829b5280da4",
          "body": null,
          "is_bot": false,
          "headline": "chore: simplify local make system",
          "author_name": "Kris Armstrong",
          "author_login": null,
          "committed_at": "2026-06-08T17:07:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "60678a4e9933202a1a1cd0dcff06a232a66e46ed",
          "body": "…#411)\n\nMove the in-tree module path from github.com/krisarmstrong/stem to\ngithub.com/MustardSeedNetworks/stem now that the repository lives under\nthe MustardSeedNetworks org. Purely mechanical: no behavior change.\n\nSwept across all 121 Go files plus the build and release surface:\n- go.mod module di\n[…]\nild, go vet, gofumpt -l (clean), golangci-lint\n(0 issues), schema-drift gate, route-policy gate, and full go test\n(26 packages, 0 failures).\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "chore: rename Go module path to github.com/MustardSeedNetworks/stem (…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T14:50:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1a2239c7dded5978bcb449e0cfca12f76679487e",
          "body": "…alidators (#410)\n\n* fix(dataplane): require full payload length in RFC2544/Y.1564 frame validators\n\nThe *_is_valid_response validators guarded on the 64-byte Ethernet minimum\n(RFC2544_MIN_FRAME / Y1564_MIN_FRAME), but the 24-byte payload they vouch for\nsits at frame offset 42 and runs to offset 66.\n[…]\nity finding in packet.c. Suppress that one check-id; the\nwarning/performance/portability bug-class gate on packet.c is unchanged.\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(dataplane): require full payload length in RFC2544/Y.1564 frame v…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T14:32:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b78e407a5499f0398d92c32de03ef0f5ae5a44f7",
          "body": "…ens (#409)\n\nThe 16-char rotor-cipher + self-checksum scheme shipped its own generator\n(GenerateLicenseKey) inside every Stem binary, so any copy could mint valid\nProfessional keys. Replace it with offline-verifiable Ed25519-signed tokens\n(signing.go), harmonized with the niac/seed format and the ke\n[…]\n./..., go vet ./..., golangci-lint (0 issues, license +\nconsumers), go test -race ./internal/license/ (ok 101s) + ./internal/api/\n(ok 512s).\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "feat(license): replace forgeable rotor cipher with Ed25519-signed tok…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T13:33:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "da573916430385cf4f6ad88ede7ae60390efc7b0",
          "body": "… BackgroundComponents (#407)\n\nIntroduce internal/api/background.go (BackgroundComponents) as the single\nordered Start/Stop seam for Run-scoped long-lived goroutines, beginning with\nthe reflector-stats SSE publisher (runReflectorStatsPublisher). Shutdown now\nstops the publisher and waits for it to e\n[…]\n by construction.\n\nVerified: go build ./..., go vet ./..., golangci-lint (0 issues), full\ninternal/api -race suite (ok 320s), non-api tests.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(api): extract Run-scoped background goroutine lifecycle into…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T04:14:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a6b99ef66b6b8abc3236c0c8b3b7369d192d531d",
          "body": "…try (#404)\n\nModule metadata lived in the services Registry while the executor factories\nlived in a separate hardcoded map in internal/api/executors.go — two sources of\ntruth, so adding a module meant editing both (and forgetting one was a silent\nbug). Collapse them: the registry now holds each modu\n[…]\n\nBehavior-preserving: build + vet + golangci(0) + full internal/api suite (232s)\n+ all services tests green. Phase 2 architecture coherence.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(services): collapse dual module->executor map into the regis…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T03:54:31Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "55ae19ab9578eaadcbd6fc9f8346a25982e48ffd",
          "body": "…) (#401)\n\nRoutes are now declared as data and a single register()/registerAll() composes\ntheir per-route policy — rate limit, authentication — in one canonical order, so\na route cannot ship without its policy. This replaces the scattered imperative\nhandleAuthRateLimited/handleRateLimited/mux.Handle\n[…]\ngin=no-auth).\n\nEnforcement by construction (Phase 3). Full internal/api suite green; golangci\ngolden config 0 issues. niac registry follows.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "feat(api): capability registry for declarative route policy (register…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T03:54:12Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "13ee83c338f1a0465f8bef791f84a474086daee1",
          "body": "…shim (#406)\n\ndocs/ARCHITECTURE.md described a phantom architecture: 'testmaster' + 'web'\nsubsystems that don't exist, internal/modules/internal/testmaster dirs (it's\ninternal/services now), Go 1.25.5, and an 8043 HTTP redirector that was removed\n(the server is HTTPS-only). Rewrite to the real layou\n[…]\ninels no caller used (every callsite uses modtypes.ErrX).\nBuild + all services tests green.\n\nPhase 2 architecture coherence (final cleanup).\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(docs): rewrite ARCHITECTURE.md to reality + drop dead error …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T03:38:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2b431b677f32cb2d58ba49ac5d235bdfecedbe2a",
          "body": "The Stem had no Architecture Decision Records (seed has 16, niac has 1). Stand\nup docs/adr/ (matching the sibling repos' format) and capture the decisions made\nduring this hardening pass so the reasoning is durable:\n\n- 0001 Capability registry for route policy (register() + /__capabilities + gate)\n-\n[…]\nnforced by depguard\n- 0004 Single-admin auth model + CORS posture (why no role system; CORS opt-in)\n\nDocs only. Phase 4 (durable decisions).\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "docs(adr): establish docs/adr and record 4 architecture decisions (#405)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T03:27:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "edfc32fda28833a18eeaf11cc3b33fd348090038",
          "body": "…irectory (#403)\n\ninternal/services/ declared 'package modules' — a half-finished rename that\nforced every caller to alias the import (modules \"...internal/services\"). Rename\nthe package to 'services' so directory == package name, and drop the aliases at\nthe 4 call sites (handlers_modules, handlers_\n[…]\n' subsystem -> orchestrator).\n\nMechanical; build + vet + lint(0) + services/help/cmd/api-module tests green.\nPhase 2 architecture coherence.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "refactor(services): rename package modules -> services to match its d…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T03:03:57Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2862e658207cbda1f77d8bd83ff83bad9477d715",
          "body": "14 occurrences across internal/help/* and internal/license/activation.go were\ncopy-paste leftovers from the sibling repo, naming the product 'Seed Test Suite'\nin CLI help content, a systemd unit Description, and a package doc comment. The\ncanonical name is 'The Stem' (1692 uses). Comments/help text only; build + help\n+ license tests green.\n\nPhase 2 architecture coherence.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "docs: fix stale 'Seed Test Suite' product name -> 'The Stem' (#402)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-08T02:57:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aa62493bd9e71eabc9a404113e633697da4c8c12",
          "body": "…s (#400)\n\nAdds a depguard 'service-layer-inward-only' rule barring the module/service\nlayer (internal/services) from importing the API, auth, or license layers. The\ndirection was already clean by convention; this makes a future upward import\nfail CI instead of silently coupling the layers. Verified\n[…]\nres on a\nprobe import and passes on the current tree (0 issues).\n\nPhase 3 enforcement (architecture). govulncheck/route-policy gates follow.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "chore(lint): enforce inward dependency direction for internal/service…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-07T05:30:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "554fc763e90b0d5b546e9e60ddf85e1c5a551259",
          "body": "…E) (#399)\n\nThe CORS middleware reflected ANY RFC1918 private-network origin with\nAllow-Credentials: true — a cross-origin CSRF-bypass vector on a shared or\nhostile LAN (a malicious LAN page could drive credentialed requests with the\nvictim admin's cookies). Default is now localhost + same-origin on\n[…]\nd; switched the\nRFC1918-allowed test to the opt-in path and added\nTestCorsMiddleware_RFC1918BlockedByDefault. Full internal/api suite green.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(api): make RFC1918 CORS reflection opt-in (STEM_CORS_ALLOW_PRIVAT…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-07T05:26:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7d9a4e31b7f2d3c6d60b9899c067da5aa7f803c8",
          "body": "POST/GET /api/v1/reflector/{config,stats} were registered with only a rate\nlimiter (no auth) — any client on the network could reconfigure or inspect the\ndataplane. Route them through handleAuthRateLimited so a valid token is\nrequired; update the reflector tests to the authenticated behavior (and in\n[…]\nn govulncheck @latest -> @v1.3.0 per CLAUDE.md (never @latest).\n\nPhase 0 of the stem security hardening. CSRF rekey + CORS allowlist follow.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(api): authenticate reflector config/stats + pin govulncheck (#398)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-07T04:52:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "56117e8457c8b8293466d090bfd8d32001335e4f",
          "body": "…#397)\n\n* fix(e2e): role-chip-test_master uses underscore not hyphen\n\nstem CI on the post-#387 main run (#26695591706) failed in\nreflector-platform-guard.spec.ts:46:\n\n  await expect(page.getByTestId('role-chip-test-master'))\n    .toBeVisible();\n\nThe actual testid emitted by RoleChip.tsx:115 is\n`role\n[…]\neated-then-deleted test user, not a real\nsecret). Inline gitleaks:allow can't suppress historical commits, so allowlist\nthe path.\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "chore: bump Go 1.26.4 (GO-2026-5037/5039) + gitleaks/e2e CI cleanup (…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-06-07T04:26:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "579774ebc81bb196f1da381f9ba7904831d7ccb8",
          "body": "…(#389)\n\n* fix(e2e): role-chip-test_master uses underscore not hyphen\n\nstem CI on the post-#387 main run (#26695591706) failed in\nreflector-platform-guard.spec.ts:46:\n\n  await expect(page.getByTestId('role-chip-test-master'))\n    .toBeVisible();\n\nThe actual testid emitted by RoleChip.tsx:115 is\n`rol\n[…]\ns should\nignore it. Gitleaks honors `gitleaks:allow` in any commit it sees,\nso the historical commit is dispatched-scan-safe too.\n\n---------\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(smoke): annotate STEM_AUTH_PASSWORD assignment as gitleaks:allow …",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T23:44:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8a3e6833b0c56a7dbd67f841373c061d5a85c5e9",
          "body": "stem CI on the post-#387 main run (#26695591706) failed in\nreflector-platform-guard.spec.ts:46:\n\n  await expect(page.getByTestId('role-chip-test-master'))\n    .toBeVisible();\n\nThe actual testid emitted by RoleChip.tsx:115 is\n`role-chip-${option.id}`, and option.id for the Test Master role\nis `test_m\n[…]\nrministically\non both chromium and webkit.\n\nFix: one-character change, hyphen -> underscore. Brings the spec\nin line with the actual id key.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(e2e): role-chip-test_master uses underscore not hyphen (#388)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T21:58:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "438b35df1b7a0c9402d863700e0c02ce1b54badd",
          "body": "…tch (#387)\n\nBrittleness fix #18 of the i18n-fragile-selector sweep.\n\nEight stem action-button selectors used language-specific regex.\nMigrated to stable testids by adding three new testid surfaces in\nthe UI and migrating five spec files.\n\nUI changes:\n  - ConfirmModal.tsx: data-testid=\"confirm-modal\n[…]\n   -> reflector-start-button (ReflectorPage.tsx:295 testid)\n\nNet: -8 i18n-fragile button selector sites. stem button-regex\ncount drops by 8.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(e2e): action-button testids - confirm modal, help tabs, role-swi…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T21:38:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ede9f70402acf1e1e3c172ceccfbbb7634d19096",
          "body": "…tle (#386)\n\nBrittleness fix #17 of the i18n-fragile-selector sweep.\n\nFive stem per-page specs each had two assertions of the H1 heading\nby language-specific text regex:\n\n  await expect(page.getByRole('heading', {\n    name: /^benchmark$/i, level: 1\n  })).toBeVisible({ timeout: 10000 });\n\nThe heading\n[…]\nPR #791 (8 sites) which mirrored this fix.\n\nNet: -10 i18n-fragile heading-regex sites in stem. stem button-\nregex count drops from 24 to 14.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(e2e): migrate 10 stem heading-name regex sites to page-header-ti…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T21:35:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d4a76a7b8124ebc0cc2fe3ef68a2c4acc3a483cb",
          "body": "stem CI on the post-#383 main run failed in E2E because PR #383\nmigrated auth.spec.ts:24 from getByText regex to getByRole(alert),\nbut the stem login form rendered loginError as a plain p tag with\nno role=alert attribute. The selector resolved to zero elements\nand the test failed deterministically o\n[…]\naster) the\nseed-vs-stem shape parity is convention, not enforced — we just\nported the same role=alert annotation independently to each repo.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(ui): add role=alert to stem login error display (#385)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T20:32:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dd8ba6a2f0452a9a064d535363f1cd3f5ad1f165",
          "body": "…384)\n\nBrittleness fix #4 of the i18n-fragile-selector sweep.\n\nstem/ui/e2e/dashboard.spec.ts:25-28 asserted four StatsCard\nlabels by regex: /packets received/i, /packets sent/i, /current\nrate/i, /uptime/i. Every one of those labels is rendered by\nthe t() helper or hard-coded English that any i18n te\n[…]\n> four getByTestId\nassertions.\n\nNet: -4 i18n-fragile assertion sites in stem dashboard.spec.ts.\nStem's text-regex count drops from 17 to 13.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(e2e): stats-* testids on Reflector dashboard, migrate 4 sites (#…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T20:02:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3a8e99900a7e650ff83d8bacd3874cba99128ea1",
          "body": "…383)\n\nMirror of seed PR #1301 — one fragile site in stem/ui/e2e/auth.\nspec.ts:24:\n\n  await expect(page.getByText(/invalid|error|failed/i))\n    .toBeVisible();\n\nThe /invalid|error|failed/i regex is brittle under es locale and\nunder copy churn. Replaced with getByRole alert. stem's login\nsurface (see PR #378 / S2) has role=alert on the error display.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(e2e): migrate stem auth invalid-creds assertion to role=alert (#…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T19:46:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b91ce7e9d425ab964bfcb57083c6c3ee88e69d9b",
          "body": "stem CI on the post-#380 main run failed with strict-mode violations\non every E2E test that calls page.getByTestId('sidebar-help-button'),\npage.getByTestId('sidebar-history-button'), or page.getByTestId(\n'sidebar-settings-button') — each resolving to 2 elements.\n\nRoot cause: SidebarLayout mounts Sid\n[…]\need/niac sidebars have the same\ndual-mount pattern (likely yes for seed since the layout shape is\nshared); fixes there will land separately.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "fix(ui): drop sidebar-*-button testids on the mobile aside copy (#381)",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T18:47:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "bb971eec77c16f376f6762b0a5a52a8f97bb5087",
          "body": "…e (#380)\n\nMirror of seed's PR-AC4 cleanup; same shape adapted to stem's\ntestid inventory and the reflector shell.\n\nThe previous 3 tests in stem's smoke.spec.ts asserted next-to-nothing:\n\n  - \"should load the application without errors\" filtered out\n    401/429/Failed-to-fetch/favicon noise from the\n[…]\n that break the\nversion-badge can't merge.\n\nTotal surface area down from console-error filtering + viewport\ncycling to 7 tight UI contracts.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(e2e): rewrite smoke.spec.ts as a golden-path required-status gat…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T18:17:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eccc6cc4900f8193ac7ff7b3ad941da0f32f7f60",
          "body": "…h + help-drawer specs (#378)\n\nReplaces the brittle role/text regex selectors in auth.spec.ts (13\nsites) and help-drawer.spec.ts (8 sites) with stable testids. The\nlogin form's getByLabel(/username|password/i) and getByRole('button',\n{ name: /sign in/i }) selectors break under es and under strict mo\n[…]\nton +\n    help-drawer + help-drawer-close (the latter two already ship per\n    HelpDrawer.tsx after stem PR-C #372).\n\nStem E2E plan S2 of 3.\n\nCo-authored-by: Kris Armstrong <kris.armstrong@icloud.com>",
          "is_bot": false,
          "headline": "test(e2e): testids on login form + Sidebar help/settings; migrate aut…",
          "author_name": "Kris Armstrong",
          "author_login": "krisarmstrong",
          "committed_at": "2026-05-30T15:27:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 28,
      "commits_last_year": 507,
      "latest_release_at": "2026-07-10T09:57:30Z",
      "latest_release_tag": "v0.24.0",
      "releases_from_tags": false,
      "days_since_last_push": 4,
      "active_weeks_last_year": 13,
      "days_since_latest_release": 14,
      "mean_days_between_releases": 5
    },
    "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": "github.com/MustardSeedNetworks/stem",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/MustardSeedNetworks/stem",
          "is_deprecated": false,
          "latest_version": "v0.24.0",
          "repository_url": "https://github.com/MustardSeedNetworks/stem",
          "versions_count": 104,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-10T01:08:50Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 14
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 0,
      "watchers": 1,
      "fork_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_forks": 0
      },
      "star_history": {
        "days": [],
        "complete": true,
        "collected": 0,
        "total_stars": 0,
        "collected_at": null
      },
      "open_issues_and_prs": 35
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "ui/tsconfig.json"
      ],
      "toolchain_manifests": [
        "go.mod"
      ],
      "largest_source_bytes": 116715,
      "source_files_sampled": 500,
      "oversized_source_files": 4,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "go.mod",
        "package.json",
        "ui/package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-3jxr-9vmj-r5cp"
            ],
            "fixed_version": "5.0.7",
            "advisory_count": 1,
            "oldest_advisory_days": 3
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-v2hh-gcrm-f6hx"
            ],
            "fixed_version": "4.1.1",
            "advisory_count": 1,
            "oldest_advisory_days": 2
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.2.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-52cp-r559-cp3m"
            ],
            "fixed_version": "4.3.0",
            "advisory_count": 1,
            "oldest_advisory_days": 3
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.16",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-r28c-9q8g-f849"
            ],
            "fixed_version": "8.5.18",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "react-router",
            "direct": false,
            "version": "7.18.1",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": null,
            "advisory_ids": [
              "GHSA-qwww-vcr4-c8h2"
            ],
            "fixed_version": "8.3.0",
            "advisory_count": 1,
            "oldest_advisory_days": 0
          },
          {
            "name": "golang.org/x/crypto",
            "direct": true,
            "version": "v0.53.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5932"
            ],
            "fixed_version": null,
            "advisory_count": 1,
            "oldest_advisory_days": 16
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 5,
          "unknown": 1
        },
        "advisory_count": 6,
        "affected_count": 6,
        "assessed_count": 610,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 1
      },
      "ecosystems": [
        "go",
        "npm"
      ],
      "dependencies": [
        {
          "name": "github.com/MustardSeedNetworks/foundation",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.0"
        },
        {
          "name": "github.com/gdamore/tcell/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.13.10"
        },
        {
          "name": "github.com/go-playground/validator/v10",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v10.30.3"
        },
        {
          "name": "github.com/go-webauthn/webauthn",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.17.4"
        },
        {
          "name": "github.com/golang-jwt/jwt/v5",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v5.3.1"
        },
        {
          "name": "github.com/google/uuid",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.6.0"
        },
        {
          "name": "github.com/invopop/jsonschema",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.14.0"
        },
        {
          "name": "github.com/pquerna/otp",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.0"
        },
        {
          "name": "github.com/prometheus/client_golang",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.23.2"
        },
        {
          "name": "github.com/prometheus/client_model",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.6.2"
        },
        {
          "name": "github.com/rivo/tview",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.42.0"
        },
        {
          "name": "github.com/trustelem/zxcvbn",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.0.1"
        },
        {
          "name": "golang.org/x/crypto",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.53.0"
        },
        {
          "name": "golang.org/x/oauth2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.36.0"
        },
        {
          "name": "golang.org/x/time",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.15.0"
        },
        {
          "name": "gopkg.in/natefinch/lumberjack.v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.2.1"
        },
        {
          "name": "gopkg.in/yaml.v3",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.0.1"
        },
        {
          "name": "modernc.org/sqlite",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.53.0"
        },
        {
          "name": "@fontsource-variable/inter",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "5.2.8"
        },
        {
          "name": "@fontsource-variable/jetbrains-mono",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "5.2.8"
        },
        {
          "name": "@hookform/resolvers",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "5.4.0"
        },
        {
          "name": "@tailwindcss/postcss",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "4.3.2"
        },
        {
          "name": "@tanstack/react-query",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "5.101.2"
        },
        {
          "name": "cmdk",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "1.1.1"
        },
        {
          "name": "i18next",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "26.3.4"
        },
        {
          "name": "i18next-browser-languagedetector",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "8.2.1"
        },
        {
          "name": "immer",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "11.1.11"
        },
        {
          "name": "lucide-react",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "1.23.0"
        },
        {
          "name": "react",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "19.2.7"
        },
        {
          "name": "react-dom",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "19.2.7"
        },
        {
          "name": "react-hook-form",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "7.81.0"
        },
        {
          "name": "react-i18next",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "17.0.8"
        },
        {
          "name": "react-router-dom",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "7.18.1"
        },
        {
          "name": "tailwind-merge",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "3.6.0"
        },
        {
          "name": "tailwindcss",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "4.3.2"
        },
        {
          "name": "valibot",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "1.4.2"
        },
        {
          "name": "zustand",
          "manifest": "ui/package.json",
          "ecosystem": "npm",
          "version_constraint": "5.0.14"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "github.com/gdamore/tcell/v2",
            "direct": true,
            "version": "v2.13.10",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/validator/v10",
            "direct": true,
            "version": "v10.30.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-webauthn/webauthn",
            "direct": true,
            "version": "v0.17.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/golang-jwt/jwt/v5",
            "direct": true,
            "version": "v5.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": true,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/invopop/jsonschema",
            "direct": true,
            "version": "v0.14.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mustardseednetworks/foundation",
            "direct": true,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pquerna/otp",
            "direct": true,
            "version": "v1.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/client_golang",
            "direct": true,
            "version": "v1.23.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/client_model",
            "direct": true,
            "version": "v0.6.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rivo/tview",
            "direct": true,
            "version": "v0.42.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/trustelem/zxcvbn",
            "direct": true,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": true,
            "version": "v0.53.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/oauth2",
            "direct": true,
            "version": "v0.36.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/time",
            "direct": true,
            "version": "v0.15.0",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/natefinch/lumberjack.v2",
            "direct": true,
            "version": "v2.2.1",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": true,
            "version": "v3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/sqlite",
            "direct": true,
            "version": "v1.53.0",
            "ecosystem": "go"
          },
          {
            "name": "@fontsource-variable/inter",
            "direct": true,
            "version": "5.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@fontsource-variable/jetbrains-mono",
            "direct": true,
            "version": "5.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@hookform/resolvers",
            "direct": true,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/postcss",
            "direct": true,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/react-query",
            "direct": true,
            "version": "5.101.2",
            "ecosystem": "npm"
          },
          {
            "name": "cmdk",
            "direct": true,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "i18next",
            "direct": true,
            "version": "26.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "i18next-browser-languagedetector",
            "direct": true,
            "version": "8.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "immer",
            "direct": true,
            "version": "11.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": true,
            "version": "1.23.0",
            "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-hook-form",
            "direct": true,
            "version": "7.81.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-i18next",
            "direct": true,
            "version": "17.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "react-router-dom",
            "direct": true,
            "version": "7.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": true,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": true,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "valibot",
            "direct": true,
            "version": "1.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "zustand",
            "direct": true,
            "version": "5.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "cloud.google.com/go/compute/metadata",
            "direct": false,
            "version": "v0.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/bahlo/generic-list-go",
            "direct": false,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/beorn7/perks",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/boombuler/barcode",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/buger/jsonparser",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cespare/xxhash/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dlclark/regexp2",
            "direct": false,
            "version": "v1.12.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dustin/go-humanize",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fxamacker/cbor/v2",
            "direct": false,
            "version": "v2.9.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gabriel-vasile/mimetype",
            "direct": false,
            "version": "v1.4.13",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gdamore/encoding",
            "direct": false,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/locales",
            "direct": false,
            "version": "v0.14.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-playground/universal-translator",
            "direct": false,
            "version": "v0.18.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-viper/mapstructure/v2",
            "direct": false,
            "version": "v2.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-webauthn/x",
            "direct": false,
            "version": "v0.2.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-tpm",
            "direct": false,
            "version": "v0.9.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-tpm-tools",
            "direct": false,
            "version": "v0.4.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/pprof",
            "direct": false,
            "version": "v0.0.0-20260604005048-7023385849c0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/kr/text",
            "direct": false,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/leodido/go-urn",
            "direct": false,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/lucasb-eyer/go-colorful",
            "direct": false,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mattn/go-isatty",
            "direct": false,
            "version": "v0.0.22",
            "ecosystem": "go"
          },
          {
            "name": "github.com/munnerz/goautoneg",
            "direct": false,
            "version": "v0.0.0-20191010083416-a7dc8b61c822",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ncruces/go-strftime",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pb33f/ordered-map/v2",
            "direct": false,
            "version": "v2.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/philhofer/fwd",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/common",
            "direct": false,
            "version": "v0.69.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus/procfs",
            "direct": false,
            "version": "v0.21.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/remyoudompheng/bigfft",
            "direct": false,
            "version": "v0.0.0-20230129092748-24d4a6f8daec",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rivo/uniseg",
            "direct": false,
            "version": "v0.4.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/rogpeppe/go-internal",
            "direct": false,
            "version": "v1.15.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/test-go/testify",
            "direct": false,
            "version": "v1.1.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tinylib/msgp",
            "direct": false,
            "version": "v1.6.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/x448/float16",
            "direct": false,
            "version": "v0.8.4",
            "ecosystem": "go"
          },
          {
            "name": "go.yaml.in/yaml/v4",
            "direct": false,
            "version": "v4.0.0-rc.6",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": false,
            "version": "v0.56.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": false,
            "version": "v0.46.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/term",
            "direct": false,
            "version": "v0.44.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": false,
            "version": "v0.39.0",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": false,
            "version": "v1.36.11",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/ccgo/v4",
            "direct": false,
            "version": "v4.34.6",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/gc/v3",
            "direct": false,
            "version": "v3.1.5",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/libc",
            "direct": false,
            "version": "v1.73.5",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/mathutil",
            "direct": false,
            "version": "v1.7.1",
            "ecosystem": "go"
          },
          {
            "name": "modernc.org/memory",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "@adobe/css-tools",
            "direct": false,
            "version": "4.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@alloc/quick-lru",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@apidevtools/json-schema-ref-parser",
            "direct": false,
            "version": "11.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/css-color",
            "direct": false,
            "version": "5.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/dom-selector",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/generational-cache",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/nwsapi",
            "direct": false,
            "version": "2.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.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/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": "@bcoe/v8-coverage",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/biome",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-darwin-arm64",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-darwin-x64",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-arm64",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-arm64-musl",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-x64",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-linux-x64-musl",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-win32-arm64",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@biomejs/cli-win32-x64",
            "direct": false,
            "version": "2.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "@bramus/specificity",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@chromatic-com/storybook",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/cli",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/config-conventional",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/config-validator",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/ensure",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/execute-rule",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/format",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/is-ignored",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/lint",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/load",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/message",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/parse",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/read",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/resolve-extends",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/rules",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/to-lines",
            "direct": false,
            "version": "21.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/top-level",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@commitlint/types",
            "direct": false,
            "version": "21.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@conventional-changelog/git-client",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@conventional-changelog/template",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/color-helpers",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-calc",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-color-parser",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-parser-algorithms",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-syntax-patches-for-csstree",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-tokenizer",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/wasi-threads",
            "direct": false,
            "version": "1.2.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": "@exodus/bytes",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@joshwooding/vite-plugin-react-docgen-typescript",
            "direct": false,
            "version": "0.7.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": "@jsdevtools/ono",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@mdx-js/react",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@neoconfetti/react",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-android-arm-eabi",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-android-arm64",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-darwin-arm64",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-darwin-x64",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-freebsd-x64",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm-musleabihf",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm64-gnu",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-arm64-musl",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-riscv64-gnu",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-riscv64-musl",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-s390x-gnu",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-x64-gnu",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-linux-x64-musl",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-openharmony-arm64",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-wasm32-wasi",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-win32-arm64-msvc",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-win32-ia32-msvc",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-parser/binding-win32-x64-msvc",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.138.0",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-android-arm-eabi",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-android-arm64",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-darwin-arm64",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-darwin-x64",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-freebsd-x64",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm-musleabihf",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm64-gnu",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-arm64-musl",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-riscv64-gnu",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-riscv64-musl",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-s390x-gnu",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-x64-gnu",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-linux-x64-musl",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-openharmony-arm64",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-wasm32-wasi",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-win32-arm64-msvc",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-win32-ia32-msvc",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-resolver/binding-win32-x64-msvc",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/primitive",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-compose-refs",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-context",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dismissable-layer",
            "direct": false,
            "version": "1.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-guards",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-focus-scope",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-id",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-portal",
            "direct": false,
            "version": "1.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-presence",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-primitive",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-callback-ref",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-controllable-state",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-effect-event",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-escape-keydown",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-use-layout-effect",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/pluginutils",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-libs/child-process-utils",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-libs/stream-utils",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-libs/stream-utils",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/utils",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/addon-a11y",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/addon-docs",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/addon-onboarding",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/addon-vitest",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/builder-vite",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/csf-plugin",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/global",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/icons",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/react",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/react-dom-shim",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@storybook/react-vite",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/node",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-android-arm64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-arm64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-darwin-x64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-freebsd-x64",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-gnu",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-arm64-musl",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-gnu",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-linux-x64-musl",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-wasm32-wasi",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-arm64-msvc",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/oxide-win32-x64-msvc",
            "direct": false,
            "version": "4.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tanstack/query-core",
            "direct": false,
            "version": "5.101.2",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/dom",
            "direct": false,
            "version": "10.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/jest-dom",
            "direct": false,
            "version": "6.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/react",
            "direct": false,
            "version": "16.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/user-event",
            "direct": false,
            "version": "14.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/aria-query",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__core",
            "direct": false,
            "version": "7.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__generator",
            "direct": false,
            "version": "7.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__template",
            "direct": false,
            "version": "7.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__traverse",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/doctrine",
            "direct": false,
            "version": "0.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/lodash",
            "direct": false,
            "version": "4.17.24",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdx",
            "direct": false,
            "version": "2.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "26.1.0",
            "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/resolve",
            "direct": false,
            "version": "1.20.6",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-darwin-arm64",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-darwin-x64",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-linux-arm",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-linux-arm64",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-linux-x64",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-win32-arm64",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript/native-preview-win32-x64",
            "direct": false,
            "version": "7.0.0-dev.20260706.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/coverage-v8",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "3.2.4",
            "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": "3.2.4",
            "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": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@webcontainer/env",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "8.20.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-hidden",
            "direct": false,
            "version": "1.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "aria-query",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-types",
            "direct": false,
            "version": "0.16.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-v8-to-istanbul",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "axe-core",
            "direct": false,
            "version": "4.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.42",
            "ecosystem": "npm"
          },
          {
            "name": "bidi-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "bundle-name",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001802",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "5.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "check-error",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "chromatic",
            "direct": false,
            "version": "16.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-truncate",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-angular",
            "direct": false,
            "version": "9.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-changelog-conventionalcommits",
            "direct": false,
            "version": "10.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "conventional-commits-parser",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "cosmiconfig-typescript-loader",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "css.escape",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-eql",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "default-browser",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "default-browser-id",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "define-lazy-prop",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "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": "doctrine",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dom-accessibility-api",
            "direct": false,
            "version": "0.5.16",
            "ecosystem": "npm"
          },
          {
            "name": "dom-accessibility-api",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.387",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "empathic",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "enhanced-resolve",
            "direct": false,
            "version": "5.21.6",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "env-paths",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "environment",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "error-ex",
            "direct": false,
            "version": "1.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-toolkit",
            "direct": false,
            "version": "1.49.0",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-uri",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-east-asian-width",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-east-asian-width",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-nonce",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "git-raw-commits",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "13.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "global-directory",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "html-parse-stringify",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "husky",
            "direct": false,
            "version": "9.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "indent-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-in-ssh",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-inside-container",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-potential-custom-element-name",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-wsl",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-coverage",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-lib-report",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "istanbul-reports",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "29.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-parse-even-better-errors",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-to-typescript",
            "direct": false,
            "version": "15.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.32.0",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "lint-staged",
            "direct": false,
            "version": "17.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "listr2",
            "direct": false,
            "version": "10.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "log-update",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "loupe",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lz-string",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "magicast",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "meow",
            "direct": false,
            "version": "13.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "meow",
            "direct": false,
            "version": "14.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-function",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "min-indent",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.12",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.50",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "oxc-parser",
            "direct": false,
            "version": "0.127.0",
            "ecosystem": "npm"
          },
          {
            "name": "oxc-resolver",
            "direct": false,
            "version": "11.19.1",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-json",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "pathval",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.61.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.16",
            "ecosystem": "npm"
          },
          {
            "name": "powershell-utils",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": false,
            "version": "3.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "pretty-format",
            "direct": false,
            "version": "27.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-docgen",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "react-docgen-typescript",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-is",
            "direct": false,
            "version": "17.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll",
            "direct": false,
            "version": "2.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "react-remove-scroll-bar",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "react-router",
            "direct": false,
            "version": "7.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-style-singleton",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "recast",
            "direct": false,
            "version": "0.23.11",
            "ecosystem": "npm"
          },
          {
            "name": "redent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.12",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfdc",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "rollup-plugin-visualizer",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "run-applescript",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "set-cookie-parser",
            "direct": false,
            "version": "2.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "storybook",
            "direct": false,
            "version": "10.4.6",
            "ecosystem": "npm"
          },
          {
            "name": "string-argv",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "8.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-bom",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-indent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-indent",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "symbol-tree",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tapable",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-invariant",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyspy",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "tldts",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-dedent",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tsconfig-paths",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unplugin",
            "direct": false,
            "version": "2.3.11",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-callback-ref",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sidecar",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "use-sync-external-store",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "void-elements",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "webpack-virtual-modules",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "16.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "wsl-utils",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "wsl-utils",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "18.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "22.0.0",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 610,
        "direct_count": 37,
        "indirect_count": 573
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 15,
        "merged_prs": 263,
        "open_issues": 20,
        "closed_ratio": 0.894,
        "closed_issues": 168,
        "closed_unmerged_prs": 65
      },
      "bus_factor": 1,
      "bot_contributors": 3,
      "top_contributors": [
        {
          "type": "User",
          "login": "krisarmstrong",
          "commits": 252,
          "avatar_url": "https://avatars.githubusercontent.com/u/712168?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml",
        "codeql.yml",
        "dead-code.yml",
        "label-sync.yml",
        "labeler.yml",
        "license-check.yml",
        "pr-body-lint.yml",
        "release-please.yml",
        "release.yml",
        "scorecard.yml",
        "title-lint.yml",
        "todo-tracker.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".golangci.yml",
        "biome.json"
      ],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "security_signals": {
      "lockfiles": [
        "go.sum",
        "package-lock.json"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": null,
            "reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "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": 0,
            "reason": "Found 0/27 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 3,
            "reason": "project has 1 contributing companies or organizations -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 10,
            "reason": "project is fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 9,
            "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 30 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 8,
            "reason": "dependency not pinned by hash detected -- score normalized to 8",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 10,
            "reason": "SAST tool is run on all commits",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 10,
            "reason": "security policy file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 10,
            "reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 4,
            "reason": "6 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "49b93e675321ed9ca20ae9fc97673e3a666532c2",
        "ran_at": "2026-07-24T18:37:05Z",
        "aggregate_score": 7.3,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": true,
      "has_security_policy": true,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-21T11:03:17Z",
      "oldest_open_prs": [
        {
          "number": 458,
          "created_at": "2026-06-22T10:34:20Z",
          "last_comment_at": "2026-07-10T14:41:53Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 459,
          "created_at": "2026-06-22T10:34:30Z",
          "last_comment_at": "2026-07-10T14:41:59Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 464,
          "created_at": "2026-06-29T10:34:14Z",
          "last_comment_at": "2026-07-10T14:41:52Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 465,
          "created_at": "2026-06-29T10:34:30Z",
          "last_comment_at": "2026-07-10T14:46:23Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 467,
          "created_at": "2026-06-29T19:20:05Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 471,
          "created_at": "2026-07-06T10:34:25Z",
          "last_comment_at": "2026-07-10T14:43:49Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 475,
          "created_at": "2026-07-06T10:34:57Z",
          "last_comment_at": "2026-07-10T14:46:59Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 487,
          "created_at": "2026-07-06T19:35:06Z",
          "last_comment_at": "2026-07-06T19:38:54Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 524,
          "created_at": "2026-07-13T10:34:27Z",
          "last_comment_at": "2026-07-13T10:34:27Z",
          "last_comment_author": "dependabot"
        },
        {
          "number": 526,
          "created_at": "2026-07-13T10:35:00Z",
          "last_comment_at": "2026-07-13T10:35:01Z",
          "last_comment_author": "dependabot"
        },
        {
          "number": 527,
          "created_at": "2026-07-13T10:35:22Z",
          "last_comment_at": "2026-07-13T10:35:23Z",
          "last_comment_author": "dependabot"
        },
        {
          "number": 528,
          "created_at": "2026-07-13T10:35:30Z",
          "last_comment_at": "2026-07-13T10:35:31Z",
          "last_comment_author": "dependabot"
        },
        {
          "number": 530,
          "created_at": "2026-07-13T10:37:12Z",
          "last_comment_at": "2026-07-13T10:37:13Z",
          "last_comment_author": "dependabot"
        },
        {
          "number": 531,
          "created_at": "2026-07-20T10:34:52Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 532,
          "created_at": "2026-07-20T10:38:00Z",
          "last_comment_at": "2026-07-20T10:38:01Z",
          "last_comment_author": "dependabot"
        }
      ],
      "last_merged_pr_at": "2026-07-10T17:11:58Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 245,
          "created_at": "2026-05-22T04:52:24Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 253,
          "created_at": "2026-05-22T23:33:49Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 267,
          "created_at": "2026-05-24T06:24:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 268,
          "created_at": "2026-05-24T06:31:09Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 320,
          "created_at": "2026-05-27T03:44:22Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 325,
          "created_at": "2026-05-27T14:03:05Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 341,
          "created_at": "2026-05-27T19:40:43Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 344,
          "created_at": "2026-05-27T19:42:35Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 365,
          "created_at": "2026-05-29T17:49:58Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 450,
          "created_at": "2026-06-16T14:12:03Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 479,
          "created_at": "2026-07-06T17:37:20Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 480,
          "created_at": "2026-07-06T18:15:08Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 482,
          "created_at": "2026-07-06T18:38:13Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 484,
          "created_at": "2026-07-06T19:11:15Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 486,
          "created_at": "2026-07-06T19:35:03Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 488,
          "created_at": "2026-07-06T19:50:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 490,
          "created_at": "2026-07-06T20:41:43Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 493,
          "created_at": "2026-07-07T00:44:54Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 495,
          "created_at": "2026-07-08T16:47:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 511,
          "created_at": "2026-07-10T00:41:31Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/MustardSeedNetworks/stem",
    "host": "github.com",
    "name": "stem",
    "owner": "MustardSeedNetworks"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 70,
      "inputs": {
        "security": 76,
        "vitality": 84,
        "community": 41,
        "governance": 52,
        "engineering": 100
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 84,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 73,
            "inputs": {
              "commits_last_year": 507,
              "human_commit_share": 0.9,
              "days_since_last_push": 4,
              "active_weeks_last_year": 13
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 4 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "13/52 weeks with commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 13
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "507 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 507
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 30 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": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "releases_count": 28,
              "latest_release_tag": "v0.24.0",
              "releases_from_tags": false,
              "days_since_latest_release": 14,
              "mean_days_between_releases": 5
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "28 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 28
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 14 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 14
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~5 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 5
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 10,
                "status": "met",
                "details": [],
                "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": 14,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 14 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 14
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 41,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 0,
              "watchers": 1,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "0 stars",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "0 forks",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "1 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "excellent",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 86,
            "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": "license file present, not a recognized license",
                "points": 16.9,
                "status": "partial",
                "details": [
                  {
                    "code": "license_custom",
                    "params": {}
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 13.5,
                "status": "met",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 52,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 13,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 1,
              "top_contributor_share": 1
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 100% of commits",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "1 contributors",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 72,
            "inputs": {
              "merged_prs": 263,
              "open_issues": 20,
              "closed_issues": 168,
              "issue_closed_ratio": 0.894,
              "closed_unmerged_prs": 65
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "89% of issues closed",
                "points": 41.8,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 89
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "263/328 decided PRs merged",
                "points": 30.7,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 263,
                      "decided": 328
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/27 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 39,
            "inputs": {
              "followers": 1,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "MustardSeedNetworks",
              "public_repos": 6,
              "account_age_days": 47
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "1 followers of MustardSeedNetworks",
                "points": 2.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1,
                      "login": "MustardSeedNetworks"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "6 public repos, account ~0 yr old",
                "points": 6.4,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 6
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "github.com/MustardSeedNetworks/stem"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 14
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 14 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 14
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "104 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 104
                    }
                  }
                ],
                "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": "excellent",
        "name": "Engineering Quality",
        "value": 100,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "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": ".golangci.yml, biome.json",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml, biome.json"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 6.4,
                "status": "met",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "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": 100,
            "inputs": {
              "topics": [
                "af-xdp",
                "dpdk",
                "go",
                "mef",
                "network-testing",
                "network-tools",
                "performance-testing",
                "rfc2544",
                "tsn",
                "ieee-802-1qbv",
                "rfc6349",
                "y1564",
                "y1731"
              ],
              "has_wiki": true,
              "homepage": "https://mustardseednetworks.com/stem",
              "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://mustardseednetworks.com/stem",
                "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": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "good",
        "name": "Security",
        "value": 76,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "good",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Branch-Protection, Packaging. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "branch_protection",
                    "packaging"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 73,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 7.3
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "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 0/27 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 1 contributing companies or organizations -- score normalized to 3",
                "points": 0.8,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is fuzzed",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 30 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 8",
                "points": 4,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is run on all commits",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "6 existing vulnerabilities detected",
                "points": 3,
                "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. Remaining weights renormalized. Matched 610 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 610
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 89,
            "inputs": {
              "source": "osv",
              "advisories": 6,
              "affected_packages": 6,
              "assessed_packages": 610,
              "unassessed_packages": 0,
              "affected_by_severity": "high 5, unknown 1",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: golang.org/x/crypto v0.53.0 (unknown)",
                "points": 26.6,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "golang.org/x/crypto v0.53.0 (unknown)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory has been public longer than 90 days",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "advisories_none_stale",
                    "params": {
                      "days": 90
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 610,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 1
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "good",
        "name": "AI Readiness",
        "value": 73,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 1,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "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": "excellent",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 88,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum",
                "package-lock.json"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "ui/tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "go.mod"
              ],
              "dependency_bot_commit_share": 0.08
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": ".golangci.yml, biome.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml, biome.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "ui/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "ui/tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "8 of the last 100 commits are automated dependency updates",
                "points": 8,
                "status": "met",
                "details": [
                  {
                    "code": "dependency_bot_commits",
                    "params": {
                      "count": 8,
                      "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 8",
                "points": 8,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "Go",
              "largest_source_bytes": 116715,
              "source_files_sampled": 500,
              "oversized_source_files": 4
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Go (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "4/500 source files over 60KB",
                "points": 54.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 500,
                      "oversized": 4
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-24T18:37:23.487989Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/MustardSeedNetworks/stem.svg",
  "full_name": "MustardSeedNetworks/stem",
  "license_state": "custom",
  "license_spdx": null
}

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

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

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