Public record
Software health reportschema 0.27.0 · metrics 1.13.0 · 2026-07-26 04:27 UTC

reddoorla / reddoor-maintenance

TypeScriptMIT★ 0 stars⑂ 0 forkssince May 2026View on GitHub ↗

reddoorla/reddoor-maintenance holds a health index of 59 out of 100, placing it in the Moderate band. It scores highest on Vitality (77/100) and lowest on Community & Adoption (33/100). It was last updated 1 day ago. A single contributor accounts for most of its recent work.

59
overall / 100
Moderate

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.

59
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

reddoorlaOrganization
1 follower19 public repossince May 2026

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

Package ecosystems

RegistryPackageVersionDownloads / moVersionsLast publish
npm@reddoorla/maintenance0.75.15,1421076 days ago

Metrics by category

Vitality

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

77Good · 22% of overall
How it's scored
36/36Push recency — last push 1 days ago
6.9/36Commit cadence — 10/52 weeks with commits
18/18Commit volume — 563 commits in the last year
0/10OpenSSF Scorecard: Maintained — project was created within the last 90 days. Please review its contents carefully
Inputs used
commits_last_year563
human_commit_share1
days_since_last_push1
active_weeks_last_year10

Release discipline

100Excellent
How it's scored
27/27Ships releases — 100 releases published
36/36Release recency — latest release 6 days ago
27/27Release cadence — a release every ~2.1 days
0/10OpenSSF Scorecard: Signed-Releases — no data
Inputs used
releases_count100
latest_release_tagv0.75.1
releases_from_tagsno
days_since_latest_release6
mean_days_between_releases2.1
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.

Community & Adoption

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

33At risk · 18% of overall
How it's scored
0/60Stars — 0 stars
0/25Forks — 0 forks
0/15Watchers — 0 watchers
Inputs used
forks0
stars0
watchers0
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
How it's scored
22.5/22.5README
22.5/22.5License — recognized license (MIT)
0/18CONTRIBUTING guide
0/13.5Code of conduct
0/7.2Issue template
0/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
has_contributingno
has_issue_templateno
has_code_of_conductno
has_pull_request_templateno
How it's scored
49.5/80Monthly downloads — 5,142 downloads/month across npm
0/20Registry dependents — not reported by this ecosystem
Inputs used
packages@reddoorla/maintenance
dependents
ecosystemsnpm
total_downloads
monthly_downloads5,142
Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.

Sustainability & Governance

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

55Moderate · 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
0/10OpenSSF Scorecard: Contributors — project has 0 contributing companies or organizations -- score normalized to 0
Inputs used
bus_factor1
contributors_sampled1
top_contributor_share1
How it's scored
46.8/46.8Issue resolution — 100% of issues closed
38.1/38.3PR acceptance — 455/457 decided PRs merged
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Inputs used
merged_prs455
open_issues0
closed_issues5
issue_closed_ratio1
closed_unmerged_prs2
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
2.2/25Owner reach — 1 followers of reddoorla
9.8/25Track record — 19 public repos, account ~0 yr old
Inputs used
followers1
owner_typeOrganization
is_verified
owner_loginreddoorla
public_repos19
account_age_days64
How it's scored
25/25Published & resolvable — 1 package(s) on npm
35/35Publish recency — latest publish 6 days ago
20/20Version history — 107 published versions
20/20Not deprecated — active, not deprecated or yanked
Inputs used
packages@reddoorla/maintenance
ecosystemsnpm
any_deprecatedno
min_days_since_publish6

Engineering Quality

Are baseline engineering and documentation practices in place?

76Good · 20% of overall
How it's scored
24/24CI workflows — 8 workflow(s)
24/24Tests present
16/16Linter config — eslint.config.js
0/9.6Pre-commit hooks
0/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_editorconfigno
has_linter_configyes
has_precommit_configno

Documentation

65Moderate
How it's scored
30/30README
25/25Documentation directory
0/15Documentation / homepage site
0/10Repository description
0/10Topics
10/10Wiki
Inputs used
topics
has_wikiyes
homepage
has_readmeyes
has_docs_diryes
has_descriptionno

Security

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

46At risk · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 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/30 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5License — license file detected
0/7.5Maintained — project was created within the last 90 days. Please review its contents carefully
0/5Packaging — no data
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — no data
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
4.5/7.5Vulnerabilities — 4 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated16
scorecard_versionv5.5.0
checks_inconclusive2
scorecard_aggregate3.2
Excluded from scoring (no data or not applicable): packaging, signed_releases. Remaining weights renormalized.
How it's scored
35/35Direct dependencies free of known advisories — no direct dependency carries a known advisory
25/25Indirect dependencies free of known advisories — no indirect dependency carries a known advisory
0/40No advisories left outstanding — no advisory carries a publication date
Inputs used
sourceosv
advisories0
affected_packages0
assessed_packages153
unassessed_packages0
affected_by_severitynone
direct_affected_packages0
Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the npm:@reddoorla/maintenance@0.75.1 runtime dependency closure — what installing the published package pulls in — 153 packages. 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.

59Moderate · 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 — 100 of 100 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
0/18One-command bootstrap
22/22Automated tests
11/11Lint / format config — eslint.config.js
11/11Static type checking — tsconfig.json
10/10Reproducible environment — lockfile
10/10Demonstrated agent practice — 89 of the last 100 commits agent-authored or agent-credited
0/8Automated maintenance — no automated dependency updates observed
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsyes
lockfilespackage-lock.json, pnpm-lock.yaml
has_dockerfileno
typed_languageyes
bootstrap_files
has_devcontainerno
has_linter_configyes
typecheck_configstsconfig.json
agent_commit_share0.89
toolchain_manifests
dependency_bot_commit_share0
How it's scored
45/45Type-checkable code — TypeScript (statically typed)
55/55Manageable file sizes — 0/588 source files over 60KB
Inputs used
primary_languageTypeScript
largest_source_bytes48,396
source_files_sampled588
oversized_source_files0
How it's scored
0/40API schema (OpenAPI/GraphQL/proto)
0/20MCP server
40/40Runnable examples — recipes
Inputs used
example_dirsrecipes
has_mcp_signalno
api_schema_files

Key facts

0GitHub stars
1contributors
563commits, last 12 months
1days since last push
100releases
1bus factor
0open issues
npmpackage ecosystems

More detail

OpenSSF Scorecard 3.2 / 10
3.2aggregate

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-26 04:27 UTC

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests30 out of 30 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintainedproject was created within the last 90 days. Please review its contents carefully
n/aPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
n/aSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
6Vulnerabilities4 existing vulnerabilities detected
Direct dependencies 14
RegistryPackageVersion constraintManifest
npm@axe-core/playwright^4.11.3package.json
npm@eslint/js^10.0.1package.json
npm@playwright/test^1.59.1package.json
npmcac^6.7.14package.json
npmeslint^10.3.0package.json
npmeslint-config-prettier^10.1.1package.json
npmeslint-plugin-svelte^3.1.0package.json
npmglobals^17.6.0package.json
npmlistr2^10.2.1package.json
npmnode-html-parser^9.0.0package.json
npmprettier^3.1.1package.json
npmprettier-plugin-svelte^3.2.6package.json
npmtinyglobby^0.2.10package.json
npmtypescript-eslint^8.59.1package.json
All dependencies 976

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

RegistryPackageVersionRelation
npm@axe-core/playwright4.11.3direct
npm@eslint/js10.0.1direct
npm@playwright/test1.60.0direct
npmcac6.7.14direct
npmeslint10.4.0direct
npmeslint-config-prettier10.1.8direct
npmeslint-plugin-svelte3.17.1direct
npmglobals16.5.0direct
npmglobals17.6.0direct
npmlistr210.2.1direct
npmnode-html-parser9.0.0direct
npmprettier2.8.8direct
npmprettier3.8.3direct
npmprettier-plugin-svelte3.5.2direct
npmtinyglobby0.2.16direct
npmtinyglobby0.2.17direct
npmtypescript-eslint8.59.4direct
npm@babel/helper-string-parser7.29.7indirect
npm@babel/helper-validator-identifier7.29.7indirect
npm@babel/parser7.29.7indirect
npm@babel/runtime7.29.2indirect
npm@babel/types7.29.7indirect
npm@bcoe/v8-coverage1.0.2indirect
npm@changesets/apply-release-plan7.1.1indirect
npm@changesets/assemble-release-plan6.0.10indirect
npm@changesets/changelog-git0.2.1indirect
npm@changesets/cli2.31.0indirect
npm@changesets/config3.1.4indirect
npm@changesets/errors0.2.0indirect
npm@changesets/get-dependents-graph2.1.4indirect
npm@changesets/get-release-plan4.0.16indirect
npm@changesets/get-version-range-type0.4.0indirect
npm@changesets/git3.0.4indirect
npm@changesets/logger0.1.1indirect
npm@changesets/parse0.4.3indirect
npm@changesets/pre2.0.2indirect
npm@changesets/read0.6.7indirect
npm@changesets/should-skip-package0.1.2indirect
npm@changesets/types4.1.0indirect
npm@changesets/types6.1.0indirect
npm@changesets/write0.4.0indirect
npm@emnapi/core1.11.1indirect
npm@emnapi/runtime1.11.1indirect
npm@emnapi/runtime1.11.2indirect
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@eslint-community/eslint-utils4.9.1indirect
npm@eslint-community/regexpp4.12.2indirect
npm@eslint/config-array0.23.5indirect
npm@eslint/config-helpers0.6.0indirect
npm@eslint/core1.2.1indirect
npm@eslint/object-schema3.0.5indirect
npm@eslint/plugin-kit0.7.1indirect
npm@formatjs/ecma402-abstract2.3.6indirect
npm@formatjs/fast-memoize2.2.7indirect
npm@formatjs/icu-messageformat-parser2.11.4indirect
npm@formatjs/icu-skeleton-parser1.8.16indirect
npm@formatjs/intl-localematcher0.6.2indirect
npm@google-analytics/data6.1.0indirect
npm@grpc/grpc-js1.14.4indirect
npm@grpc/proto-loader0.8.1indirect
npm@humanfs/core0.19.2indirect
npm@humanfs/node0.16.8indirect
npm@humanfs/types0.15.0indirect
npm@humanwhocodes/module-importer1.0.1indirect
npm@humanwhocodes/retry0.4.3indirect
npm@img/colour1.1.0indirect
npm@img/sharp-darwin-arm640.35.3indirect
npm@img/sharp-darwin-x640.35.3indirect
npm@img/sharp-freebsd-wasm320.35.3indirect
npm@img/sharp-libvips-darwin-arm641.3.2indirect
npm@img/sharp-libvips-darwin-x641.3.2indirect
npm@img/sharp-libvips-linux-arm1.3.2indirect
npm@img/sharp-libvips-linux-arm641.3.2indirect
npm@img/sharp-libvips-linux-ppc641.3.2indirect
npm@img/sharp-libvips-linux-riscv641.3.2indirect
npm@img/sharp-libvips-linux-s390x1.3.2indirect
npm@img/sharp-libvips-linux-x641.3.2indirect
npm@img/sharp-libvips-linuxmusl-arm641.3.2indirect
npm@img/sharp-libvips-linuxmusl-x641.3.2indirect
npm@img/sharp-linux-arm0.35.3indirect
npm@img/sharp-linux-arm640.35.3indirect
npm@img/sharp-linux-ppc640.35.3indirect
npm@img/sharp-linux-riscv640.35.3indirect
npm@img/sharp-linux-s390x0.35.3indirect
npm@img/sharp-linux-x640.35.3indirect
npm@img/sharp-linuxmusl-arm640.35.3indirect
npm@img/sharp-linuxmusl-x640.35.3indirect
npm@img/sharp-wasm320.35.3indirect
npm@img/sharp-webcontainers-wasm320.35.3indirect
npm@img/sharp-win32-arm640.35.3indirect
npm@img/sharp-win32-ia320.35.3indirect
npm@img/sharp-win32-x640.35.3indirect
npm@inquirer/external-editor1.0.3indirect
npm@isaacs/cliui8.0.2indirect
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@js-sdsl/ordered-map4.4.2indirect
npm@lhci/cli0.15.1indirect
npm@lhci/utils0.15.1indirect
npm@libsql/client0.8.1indirect
npm@libsql/core0.8.1indirect
npm@libsql/darwin-arm640.3.19indirect
npm@libsql/darwin-x640.3.19indirect
npm@libsql/hrana-client0.6.2indirect
npm@libsql/isomorphic-fetch0.2.5indirect
npm@libsql/isomorphic-ws0.1.5indirect
npm@libsql/kysely-libsql0.4.1indirect
npm@libsql/linux-arm64-gnu0.3.19indirect
npm@libsql/linux-arm64-musl0.3.19indirect
npm@libsql/linux-x64-gnu0.3.19indirect
npm@libsql/linux-x64-musl0.3.19indirect
npm@libsql/win32-x64-msvc0.3.19indirect
npm@manypkg/find-root1.1.0indirect
npm@manypkg/get-packages1.1.3indirect
npm@napi-rs/wasm-runtime1.1.6indirect
npm@neon-rs/load0.0.4indirect
npm@netlify/functions5.2.2indirect
npm@netlify/types2.7.0indirect
npm@nodelib/fs.scandir2.1.5indirect
npm@nodelib/fs.stat2.0.5indirect
npm@nodelib/fs.walk1.2.8indirect
npm@one-ini/wasm0.1.1indirect
npm@oxc-project/types0.139.0indirect
npm@paulirish/trace_engine0.0.53indirect
npm@pkgjs/parseargs0.11.0indirect
npm@polka/url1.0.0-next.29indirect
npm@prismicio/client7.21.8indirect
npm@prismicio/migrate0.0.2indirect
npm@protobufjs/aspromise1.1.2indirect
npm@protobufjs/base641.1.2indirect
npm@protobufjs/codegen2.0.5indirect
npm@protobufjs/eventemitter1.1.1indirect
npm@protobufjs/fetch1.1.1indirect
npm@protobufjs/float1.0.2indirect
npm@protobufjs/path1.1.2indirect
npm@protobufjs/pool1.1.0indirect
npm@protobufjs/utf81.1.1indirect
npm@puppeteer/browsers2.13.2indirect
npm@react-email/render1.1.2indirect
npm@rolldown/binding-android-arm641.1.5indirect
npm@rolldown/binding-darwin-arm641.1.5indirect
npm@rolldown/binding-darwin-x641.1.5indirect
npm@rolldown/binding-freebsd-x641.1.5indirect
npm@rolldown/binding-linux-arm-gnueabihf1.1.5indirect
npm@rolldown/binding-linux-arm64-gnu1.1.5indirect
npm@rolldown/binding-linux-arm64-musl1.1.5indirect
npm@rolldown/binding-linux-ppc64-gnu1.1.5indirect
npm@rolldown/binding-linux-s390x-gnu1.1.5indirect
npm@rolldown/binding-linux-x64-gnu1.1.5indirect
npm@rolldown/binding-linux-x64-musl1.1.5indirect
npm@rolldown/binding-openharmony-arm641.1.5indirect
npm@rolldown/binding-wasm32-wasi1.1.5indirect
npm@rolldown/binding-win32-arm64-msvc1.1.5indirect
npm@rolldown/binding-win32-x64-msvc1.1.5indirect
npm@rolldown/pluginutils1.0.1indirect
npm@rollup/rollup-android-arm-eabi4.60.4indirect
npm@rollup/rollup-android-arm644.60.4indirect
npm@rollup/rollup-darwin-arm644.60.4indirect
npm@rollup/rollup-darwin-x644.60.4indirect
npm@rollup/rollup-freebsd-arm644.60.4indirect
npm@rollup/rollup-freebsd-x644.60.4indirect
npm@rollup/rollup-linux-arm-gnueabihf4.60.4indirect
npm@rollup/rollup-linux-arm-musleabihf4.60.4indirect
npm@rollup/rollup-linux-arm64-gnu4.60.4indirect
npm@rollup/rollup-linux-arm64-musl4.60.4indirect
npm@rollup/rollup-linux-loong64-gnu4.60.4indirect
npm@rollup/rollup-linux-loong64-musl4.60.4indirect
npm@rollup/rollup-linux-ppc64-gnu4.60.4indirect
npm@rollup/rollup-linux-ppc64-musl4.60.4indirect
npm@rollup/rollup-linux-riscv64-gnu4.60.4indirect
npm@rollup/rollup-linux-riscv64-musl4.60.4indirect
npm@rollup/rollup-linux-s390x-gnu4.60.4indirect
npm@rollup/rollup-linux-x64-gnu4.60.4indirect
npm@rollup/rollup-linux-x64-musl4.60.4indirect
npm@rollup/rollup-openbsd-x644.60.4indirect
npm@rollup/rollup-openharmony-arm644.60.4indirect
npm@rollup/rollup-win32-arm64-msvc4.60.4indirect
npm@rollup/rollup-win32-ia32-msvc4.60.4indirect
npm@rollup/rollup-win32-x64-gnu4.60.4indirect
npm@rollup/rollup-win32-x64-msvc4.60.4indirect
npm@selderee/plugin-htmlparser20.11.0indirect
npm@sentry-internal/tracing7.120.4indirect
npm@sentry/core7.120.4indirect
npm@sentry/integrations7.120.4indirect
npm@sentry/node7.120.4indirect
npm@sentry/types7.120.4indirect
npm@sentry/utils7.120.4indirect
npm@stablelib/base641.0.1indirect
npm@standard-schema/spec1.1.0indirect
npm@sveltejs/acorn-typescript1.0.10indirect
npm@sveltejs/acorn-typescript1.0.11indirect
npm@sveltejs/kit2.70.1indirect
npm@sveltejs/vite-plugin-svelte7.1.2indirect
npm@tootallnate/quickjs-emscripten0.23.0indirect
npm@tybys/wasm-util0.10.3indirect
npm@types/chai5.2.3indirect
npm@types/cookie0.6.0indirect
npm@types/deep-eql4.0.2indirect
npm@types/esrecurse4.3.1indirect
npm@types/estree1.0.8indirect
npm@types/estree1.0.9indirect
npm@types/hast3.0.4indirect
npm@types/json-schema7.0.15indirect
npm@types/mdast4.0.4indirect
npm@types/mjml4.7.4indirect
npm@types/mjml-core5.0.0indirect
npm@types/node12.20.55indirect
npm@types/node22.19.19indirect
npm@types/trusted-types2.0.7indirect
npm@types/unist3.0.3indirect
npm@types/ws8.18.1indirect
npm@types/yauzl2.10.3indirect
npm@typescript-eslint/eslint-plugin8.59.4indirect
npm@typescript-eslint/parser8.59.4indirect
npm@typescript-eslint/project-service8.59.4indirect
npm@typescript-eslint/scope-manager8.59.4indirect
npm@typescript-eslint/tsconfig-utils8.59.4indirect
npm@typescript-eslint/type-utils8.59.4indirect
npm@typescript-eslint/types8.59.4indirect
npm@typescript-eslint/typescript-estree8.59.4indirect
npm@typescript-eslint/utils8.59.4indirect
npm@typescript-eslint/visitor-keys8.59.4indirect
npm@ungap/structured-clone1.3.2indirect
npm@vitest/coverage-v84.1.8indirect
npm@vitest/expect4.1.8indirect
npm@vitest/mocker4.1.8indirect
npm@vitest/pretty-format4.1.8indirect
npm@vitest/runner4.1.8indirect
npm@vitest/snapshot4.1.8indirect
npm@vitest/spy4.1.8indirect
npm@vitest/utils4.1.8indirect
npmabbrev2.0.0indirect
npmabort-controller3.0.0indirect
npmabortcontroller-polyfill1.7.8indirect
npmaccepts1.3.8indirect
npmacorn8.16.0indirect
npmacorn8.17.0indirect
npmacorn-jsx5.3.2indirect
npmagent-base7.1.4indirect
npmairtable0.12.2indirect
npmajv6.15.0indirect
npmansi-colors4.1.3indirect
npmansi-escapes3.2.0indirect
npmansi-escapes7.3.0indirect
npmansi-regex3.0.1indirect
npmansi-regex4.1.1indirect
npmansi-regex5.0.1indirect
npmansi-regex6.2.2indirect
npmansi-styles3.2.1indirect
npmansi-styles4.3.0indirect
npmansi-styles6.2.3indirect
npmany-promise1.3.0indirect
npmanymatch3.1.3indirect
npmargparse1.0.10indirect
npmargparse2.0.1indirect
npmaria-query5.3.1indirect
npmarray-flatten1.1.1indirect
npmarray-union2.1.0indirect
npmassertion-error2.0.1indirect
npmast-types0.13.4indirect
npmast-v8-to-istanbul1.0.4indirect
npmaxe-core4.11.4indirect
npmaxobject-query4.1.0indirect
npmb4a1.8.1indirect
npmbail2.0.2indirect
npmbalanced-match1.0.2indirect
npmbalanced-match4.0.4indirect
npmbare-events2.8.3indirect
npmbare-fs4.7.1indirect
npmbare-os3.9.1indirect
npmbare-path3.0.0indirect
npmbare-stream2.13.1indirect
npmbare-url2.4.3indirect
npmbase64-js1.5.1indirect
npmbasic-ftp5.3.1indirect
npmbcp-47-match2.0.3indirect
npmbetter-path-resolve1.0.0indirect
npmbignumber.js9.3.1indirect
npmbinary-extensions2.3.0indirect
npmbody-parser1.20.5indirect
npmboolbase1.0.0indirect
npmbrace-expansion1.1.16indirect
npmbrace-expansion2.1.2indirect
npmbrace-expansion5.0.8indirect
npmbraces3.0.3indirect
npmbuffer-crc320.2.13indirect
npmbuffer-equal-constant-time1.0.1indirect
npmbundle-require5.1.0indirect
npmbytes3.1.2indirect
npmcall-bind-apply-helpers1.0.2indirect
npmcall-bound1.0.4indirect
npmcamel-case3.0.0indirect
npmcamelcase5.3.1indirect
npmccount2.0.1indirect
npmchai6.2.2indirect
npmchalk2.4.2indirect
npmcharacter-entities-html42.1.0indirect
npmcharacter-entities-legacy3.0.0indirect
npmchardet0.7.0indirect
npmchardet2.1.1indirect
npmcheerio1.0.0-rc.12indirect
npmcheerio-select2.1.0indirect
npmchokidar3.6.0indirect
npmchokidar4.0.3indirect
npmchrome-launcher0.13.4indirect
npmchrome-launcher1.2.1indirect
npmchromium-bidi14.0.0indirect
npmclean-css4.2.4indirect
npmcli-cursor2.1.0indirect
npmcli-cursor5.0.0indirect
npmcli-truncate5.2.0indirect
npmcli-width2.2.1indirect
npmcliui6.0.0indirect
npmcliui8.0.1indirect
npmclsx2.1.1indirect
npmcolor-convert1.9.3indirect
npmcolor-convert2.0.1indirect
npmcolor-name1.1.3indirect
npmcolor-name1.1.4indirect
npmcomma-separated-tokens2.0.3indirect
npmcommander10.0.1indirect
npmcommander2.20.3indirect
npmcommander4.1.1indirect
npmcommander6.2.1indirect
npmcompressible2.0.18indirect
npmcompression1.8.1indirect
npmconcat-map0.0.1indirect
npmconfbox0.1.8indirect
npmconfig-chain1.1.13indirect
npmconfigstore5.0.1indirect
npmconsola3.4.2indirect
npmcontent-disposition0.5.4indirect
npmcontent-type1.0.5indirect
npmconvert-source-map2.0.0indirect
npmcookie0.7.2indirect
npmcookie-signature1.0.7indirect
npmcross-spawn7.0.6indirect
npmcrypto-random-string2.0.0indirect
npmcsp_evaluator1.1.5indirect
npmcss-select5.2.2indirect
npmcss-selector-parser3.3.0indirect
npmcss-what6.2.2indirect
npmcssesc3.0.0indirect
npmdata-uri-to-buffer4.0.1indirect
npmdata-uri-to-buffer6.0.2indirect
npmdebug2.6.9indirect
npmdebug4.4.3indirect
npmdecamelize1.2.0indirect
npmdecimal.js10.6.0indirect
npmdeep-is0.1.4indirect
npmdeepmerge4.3.1indirect
npmdefine-lazy-prop2.0.0indirect
npmdegenerator5.0.1indirect
npmdepd2.0.0indirect
npmdequal2.0.3indirect
npmdestroy1.2.0indirect
npmdetect-indent6.1.0indirect
npmdetect-libc2.0.2indirect
npmdetect-libc2.1.2indirect
npmdetect-node2.1.0indirect
npmdevalue5.8.1indirect
npmdevalue5.8.2indirect
npmdevlop1.1.0indirect
npmdevtools-protocol0.0.1467305indirect
npmdevtools-protocol0.0.1608973indirect
npmdir-glob3.0.1indirect
npmdirection2.0.1indirect
npmdom-serializer1.4.1indirect
npmdom-serializer2.0.0indirect
npmdomelementtype2.3.0indirect
npmdomhandler3.3.0indirect
npmdomhandler4.3.1indirect
npmdomhandler5.0.3indirect
npmdomutils2.8.0indirect
npmdomutils3.2.2indirect
npmdot-prop5.3.0indirect
npmdunder-proto1.0.1indirect
npmduplexify4.1.3indirect
npmeastasianwidth0.2.0indirect
npmecdsa-sig-formatter1.0.11indirect
npmeditorconfig1.0.7indirect
npmee-first1.1.1indirect
npmemoji-regex10.6.0indirect
npmemoji-regex8.0.0indirect
npmemoji-regex9.2.2indirect
npmencodeurl2.0.0indirect
npmend-of-stream1.4.5indirect
npmenquirer2.4.1indirect
npmentities2.2.0indirect
npmentities4.5.0indirect
npmentities6.0.1indirect
npmentities8.0.0indirect
npmenvironment1.1.0indirect
npmes-define-property1.0.1indirect
npmes-errors1.3.0indirect
npmes-module-lexer2.1.0indirect
npmes-object-atoms1.1.1indirect
npmesbuild0.28.1indirect
npmescalade3.2.0indirect
npmescape-goat3.0.0indirect
npmescape-html1.0.3indirect
npmescape-string-regexp1.0.5indirect
npmescape-string-regexp4.0.0indirect
npmescodegen2.1.0indirect
npmeslint-scope8.4.0indirect
npmeslint-scope9.1.2indirect
npmeslint-visitor-keys3.4.3indirect
npmeslint-visitor-keys4.2.1indirect
npmeslint-visitor-keys5.0.1indirect
npmesm-env1.2.2indirect
npmespree10.4.0indirect
npmespree11.2.0indirect
npmesprima4.0.1indirect
npmesquery1.7.0indirect
npmesrap2.3.0indirect
npmesrecurse4.3.0indirect
npmestraverse5.3.0indirect
npmestree-walker3.0.3indirect
npmesutils2.0.3indirect
npmetag1.8.1indirect
npmevent-target-shim5.0.1indirect
npmeventemitter35.0.4indirect
npmevents-universal1.0.1indirect
npmexpect-type1.3.0indirect
npmexpress4.22.2indirect
npmextend3.0.2indirect
npmextendable-error0.1.7indirect
npmexternal-editor3.1.0indirect
npmextract-zip2.0.1indirect
npmfast-deep-equal2.0.1indirect
npmfast-deep-equal3.1.3indirect
npmfast-fifo1.3.2indirect
npmfast-glob3.3.3indirect
npmfast-json-stable-stringify2.1.0indirect
npmfast-levenshtein2.0.6indirect
npmfast-sha2561.3.0indirect
npmfastq1.20.1indirect
npmfd-slicer1.1.0indirect
npmfdir6.5.0indirect
npmfetch-blob3.2.0indirect
npmfigures2.0.0indirect
npmfile-entry-cache8.0.0indirect
npmfill-range7.1.1indirect
npmfinalhandler1.3.2indirect
npmfind-up4.1.0indirect
npmfind-up5.0.0indirect
npmfix-dts-default-cjs-exports1.0.1indirect
npmflat-cache4.0.1indirect
npmflatted3.4.2indirect
npmforeground-child3.3.1indirect
npmformdata-polyfill4.0.10indirect
npmforwarded0.2.0indirect
npmfresh0.5.2indirect
npmfs-extra7.0.1indirect
npmfs-extra8.1.0indirect
npmfs.realpath1.0.0indirect
npmfsevents2.3.2indirect
npmfsevents2.3.3indirect
npmfunction-bind1.1.2indirect
npmgaxios7.1.4indirect
npmgcp-metadata8.1.2indirect
npmget-caller-file2.0.5indirect
npmget-east-asian-width1.6.0indirect
npmget-intrinsic1.3.0indirect
npmget-proto1.0.1indirect
npmget-stream5.2.0indirect
npmget-uri6.0.5indirect
npmglob10.5.0indirect
npmglob7.2.3indirect
npmglob-parent5.1.2indirect
npmglob-parent6.0.2indirect
npmglobby11.1.0indirect
npmgoogle-auth-library10.6.2indirect
npmgoogle-gax5.0.6indirect
npmgoogle-logging-utils1.1.3indirect
npmgopd1.2.0indirect
npmgraceful-fs4.2.11indirect
npmhas-flag3.0.0indirect
npmhas-flag4.0.0indirect
npmhas-symbols1.1.0indirect
npmhasown2.0.3indirect
npmhast1.0.0indirect
npmhast-util-embedded3.0.0indirect
npmhast-util-from-html2.0.3indirect
npmhast-util-from-parse58.0.3indirect
npmhast-util-has-property3.0.0indirect
npmhast-util-is-element3.0.0indirect
npmhast-util-minify-whitespace1.0.1indirect
npmhast-util-parse-selector4.0.0indirect
npmhast-util-select6.0.4indirect
npmhast-util-to-html9.0.5indirect
npmhast-util-to-string3.0.1indirect
npmhast-util-whitespace3.0.0indirect
npmhastscript9.0.1indirect
npmhe1.2.0indirect
npmhtml-escaper2.0.2indirect
npmhtml-minifier4.0.0indirect
npmhtml-to-text9.0.5indirect
npmhtml-void-elements3.0.0indirect
npmhtmlparser25.0.1indirect
npmhtmlparser28.0.2indirect
npmhtmlparser29.1.0indirect
npmhttp-errors2.0.1indirect
npmhttp-link-header1.1.3indirect
npmhttp-proxy-agent7.0.2indirect
npmhttps-proxy-agent7.0.6indirect
npmhuman-id4.1.3indirect
npmiconv-lite0.4.24indirect
npmiconv-lite0.7.2indirect
npmignore5.3.2indirect
npmignore7.0.5indirect
npmimage-ssim0.2.0indirect
npmimgix-url-builder0.0.6indirect
npmimmediate3.0.6indirect
npmimurmurhash0.1.4indirect
npminflight1.0.6indirect
npminherits2.0.4indirect
npmini1.3.8indirect
npminquirer6.5.2indirect
npmintl-messageformat10.7.18indirect
npmip-address10.2.0indirect
npmipaddr.js1.9.1indirect
npmis-binary-path2.1.0indirect
npmis-docker2.2.1indirect
npmis-extglob2.1.1indirect
npmis-fullwidth-code-point2.0.0indirect
npmis-fullwidth-code-point3.0.0indirect
npmis-fullwidth-code-point5.1.0indirect
npmis-glob4.0.3indirect
npmis-number7.0.0indirect
npmis-obj2.0.0indirect
npmis-plain-obj4.1.0indirect
npmis-reference3.0.3indirect
npmis-subdir1.2.0indirect
npmis-typedarray1.0.0indirect
npmis-windows1.0.2indirect
npmis-wsl2.2.0indirect
npmisexe2.0.0indirect
npmisomorphic-fetch3.0.0indirect
npmistanbul-lib-coverage3.2.2indirect
npmistanbul-lib-report3.0.1indirect
npmistanbul-reports3.2.0indirect
npmjackspeak3.4.3indirect
npmjoycon3.1.1indirect
npmjpeg-js0.4.4indirect
npmjs-base643.7.8indirect
npmjs-beautify1.15.4indirect
npmjs-cookie3.0.7indirect
npmjs-library-detector6.7.0indirect
npmjs-tokens10.0.0indirect
npmjs-yaml3.15.0indirect
npmjs-yaml4.3.0indirect
npmjson-bigint1.0.0indirect
npmjson-buffer3.0.1indirect
npmjson-schema-traverse0.4.1indirect
npmjson-stable-stringify-without-jsonify1.0.1indirect
npmjsonfile4.0.0indirect
npmjuice10.0.1indirect
npmjwa2.0.1indirect
npmjws4.0.1indirect
npmkeyv4.5.4indirect
npmkleur4.1.5indirect
npmknown-css-properties0.37.0indirect
npmkysely0.29.2indirect
npmleac0.6.0indirect
npmlegacy-javascript0.0.1indirect
npmlevn0.4.1indirect
npmlibsql0.3.19indirect
npmlie3.1.1indirect
npmlighthouse12.6.1indirect
npmlighthouse-logger1.2.0indirect
npmlighthouse-logger2.0.2indirect
npmlighthouse-stack-packs1.12.2indirect
npmlightningcss1.33.0indirect
npmlightningcss-android-arm641.33.0indirect
npmlightningcss-darwin-arm641.33.0indirect
npmlightningcss-darwin-x641.33.0indirect
npmlightningcss-freebsd-x641.33.0indirect
npmlightningcss-linux-arm-gnueabihf1.33.0indirect
npmlightningcss-linux-arm64-gnu1.33.0indirect
npmlightningcss-linux-arm64-musl1.33.0indirect
npmlightningcss-linux-x64-gnu1.33.0indirect
npmlightningcss-linux-x64-musl1.33.0indirect
npmlightningcss-win32-arm64-msvc1.33.0indirect
npmlightningcss-win32-x64-msvc1.33.0indirect
npmlilconfig2.1.0indirect
npmlilconfig3.1.3indirect
npmlines-and-columns1.2.4indirect
npmload-tsconfig0.2.5indirect
npmlocalforage1.10.0indirect
npmlocate-character3.0.0indirect
npmlocate-path5.0.0indirect
npmlocate-path6.0.0indirect
npmlodash4.18.1indirect
npmlodash-es4.18.1indirect
npmlodash.camelcase4.3.0indirect
npmlodash.startcase4.4.0indirect
npmlog-update6.1.0indirect
npmlong5.3.2indirect
npmlookup-closest-locale6.2.0indirect
npmlower-case1.1.4indirect
npmlru-cache10.4.3indirect
npmlru-cache7.18.3indirect
npmmagic-string0.30.21indirect
npmmagicast0.5.3indirect
npmmake-dir3.1.0indirect
npmmake-dir4.0.0indirect
npmmarky1.3.0indirect
npmmath-intrinsics1.1.0indirect
npmmdast-util-to-hast13.2.1indirect
npmmedia-typer0.3.0indirect
npmmensch0.3.4indirect
npmmerge-descriptors1.0.3indirect
npmmerge21.4.1indirect
npmmetaviewport-parser0.3.0indirect
npmmethods1.1.2indirect
npmmicromark-util-character2.1.1indirect
npmmicromark-util-encode2.0.1indirect
npmmicromark-util-sanitize-uri2.0.1indirect
npmmicromark-util-symbol2.0.1indirect
npmmicromark-util-types2.0.2indirect
npmmicromatch4.0.8indirect
npmmime1.6.0indirect
npmmime2.6.0indirect
npmmime-db1.52.0indirect
npmmime-db1.54.0indirect
npmmime-types2.1.35indirect
npmmimic-fn1.2.0indirect
npmmimic-function5.0.1indirect
npmminimatch10.2.5indirect
npmminimatch3.1.5indirect
npmminimatch9.0.9indirect
npmminimist1.2.8indirect
npmminipass7.1.3indirect
npmmitt3.0.1indirect
npmmjml4.18.0indirect
npmmjml-accordion4.18.0indirect
npmmjml-body4.18.0indirect
npmmjml-button4.18.0indirect
npmmjml-carousel4.18.0indirect
npmmjml-cli4.18.0indirect
npmmjml-column4.18.0indirect
npmmjml-core4.18.0indirect
npmmjml-divider4.18.0indirect
npmmjml-group4.18.0indirect
npmmjml-head4.18.0indirect
npmmjml-head-attributes4.18.0indirect
npmmjml-head-breakpoint4.18.0indirect
npmmjml-head-font4.18.0indirect
npmmjml-head-html-attributes4.18.0indirect
npmmjml-head-preview4.18.0indirect
npmmjml-head-style4.18.0indirect
npmmjml-head-title4.18.0indirect
npmmjml-hero4.18.0indirect
npmmjml-image4.18.0indirect
npmmjml-migrate4.18.0indirect
npmmjml-navbar4.18.0indirect
npmmjml-parser-xml4.18.0indirect
npmmjml-preset-core4.18.0indirect
npmmjml-raw4.18.0indirect
npmmjml-section4.18.0indirect
npmmjml-social4.18.0indirect
npmmjml-spacer4.18.0indirect
npmmjml-table4.18.0indirect
npmmjml-text4.18.0indirect
npmmjml-validator4.18.0indirect
npmmjml-wrapper4.18.0indirect
npmmkdirp0.5.6indirect
npmmlly1.8.2indirect
npmmri1.2.0indirect
npmmrmime2.0.1indirect
npmms2.0.0indirect
npmms2.1.3indirect
npmmute-stream0.0.7indirect
npmmz2.7.0indirect
npmnanoid3.3.16indirect
npmnatural-compare1.4.0indirect
npmnegotiator0.6.3indirect
npmnegotiator0.6.4indirect
npmnetmask2.1.1indirect
npmno-case2.3.2indirect
npmnode-domexception1.0.0indirect
npmnode-fetch2.7.0indirect
npmnode-fetch3.3.2indirect
npmnopt7.2.1indirect
npmnormalize-path3.0.0indirect
npmnth-check2.1.1indirect
npmobject-assign4.1.1indirect
npmobject-hash3.0.0indirect
npmobject-inspect1.13.4indirect
npmobug2.1.1indirect
npmobug2.1.4indirect
npmon-finished2.4.1indirect
npmon-headers1.1.0indirect
npmonce1.4.0indirect
npmonetime2.0.1indirect
npmonetime7.0.0indirect
npmopen7.4.2indirect
npmopen8.4.2indirect
npmoptionator0.9.4indirect
npmoutdent0.5.0indirect
npmp-filter2.1.0indirect
npmp-limit2.3.0indirect
npmp-limit3.1.0indirect
npmp-locate4.1.0indirect
npmp-locate5.0.0indirect
npmp-map2.1.0indirect
npmp-try2.2.0indirect
npmpac-proxy-agent7.2.0indirect
npmpac-resolver7.0.1indirect
npmpackage-json-from-dist1.0.1indirect
npmpackage-manager-detector0.2.11indirect
npmparam-case2.1.1indirect
npmparse-cache-control1.0.1indirect
npmparse57.3.0indirect
npmparse5-htmlparser2-tree-adapter7.1.0indirect
npmparseley0.12.1indirect
npmparseurl1.3.3indirect
npmpath-exists4.0.0indirect
npmpath-is-absolute1.0.1indirect
npmpath-key3.1.1indirect
npmpath-scurry1.11.1indirect
npmpath-to-regexp0.1.13indirect
npmpath-type4.0.0indirect
npmpathe2.0.3indirect
npmpeberminta0.9.0indirect
npmpend1.2.0indirect
npmpicocolors1.1.1indirect
npmpicomatch2.3.2indirect
npmpicomatch4.0.4indirect
npmpicomatch4.0.5indirect
npmpify4.0.1indirect
npmpirates4.0.7indirect
npmpkg-types1.3.1indirect
npmplaywright1.60.0indirect
npmplaywright-core1.60.0indirect
npmpostcss8.5.23indirect
npmpostcss-load-config3.1.4indirect
npmpostcss-load-config6.0.1indirect
npmpostcss-safe-parser7.0.1indirect
npmpostcss-scss4.0.9indirect
npmpostcss-selector-parser7.1.1indirect
npmprelude-ls1.2.1indirect
npmprogress2.0.3indirect
npmpromise-limit2.7.0indirect
npmproperty-information7.2.0indirect
npmproto-list1.2.4indirect
npmproto3-json-serializer3.0.4indirect
npmprotobufjs7.6.5indirect
npmproxy-addr2.0.7indirect
npmproxy-agent6.5.0indirect
npmproxy-from-env1.1.0indirect
npmpump3.0.4indirect
npmpunycode2.3.1indirect
npmpuppeteer-core24.43.1indirect
npmqs6.15.2indirect
npmquansync0.2.11indirect
npmqueue-microtask1.2.3indirect
npmrange-parser1.2.1indirect
npmraw-body2.5.3indirect
npmreact19.2.6indirect
npmreact-dom19.2.6indirect
npmreact-promise-suspense0.3.4indirect
npmread-yaml-file1.1.0indirect
npmreadable-stream3.6.2indirect
npmreaddirp3.6.0indirect
npmreaddirp4.1.2indirect
npmrehype-minify-whitespace6.0.2indirect
npmrehype-parse9.0.1indirect
npmrelateurl0.2.7indirect
npmrequire-directory2.1.1indirect
npmrequire-main-filename2.0.0indirect
npmresend4.8.0indirect
npmresolve-from5.0.0indirect
npmrestore-cursor2.0.0indirect
npmrestore-cursor5.1.0indirect
npmretry-request8.0.2indirect
npmreusify1.1.0indirect
npmrfdc1.4.1indirect
npmrimraf3.0.2indirect
npmrimraf5.0.10indirect
npmrobots-parser3.0.1indirect
npmrolldown1.1.5indirect
npmrollup4.60.4indirect
npmrun-async2.4.1indirect
npmrun-parallel1.2.0indirect
npmrxjs6.6.7indirect
npmsafe-buffer5.2.1indirect
npmsafer-buffer2.1.2indirect
npmscheduler0.27.0indirect
npmselderee0.11.0indirect
npmsemver5.7.2indirect
npmsemver6.3.1indirect
npmsemver7.8.0indirect
npmsemver7.8.5indirect
npmsend0.19.2indirect
npmserve-static1.16.3indirect
npmset-blocking2.0.0indirect
npmset-cookie-parser3.1.0indirect
npmsetprototypeof1.2.0indirect
npmsharp0.35.3indirect
npmshebang-command2.0.0indirect
npmshebang-regex3.0.0indirect
npmside-channel1.1.0indirect
npmside-channel-list1.0.1indirect
npmside-channel-map1.0.1indirect
npmside-channel-weakmap1.0.2indirect
npmsiginfo2.0.0indirect
npmsignal-exit3.0.7indirect
npmsignal-exit4.1.0indirect
npmsirv3.0.2indirect
npmslash3.0.0indirect
npmslice-ansi7.1.2indirect
npmslice-ansi8.0.0indirect
npmslick1.12.2indirect
npmsmart-buffer4.2.0indirect
npmsocks2.8.9indirect
npmsocks-proxy-agent8.0.5indirect
npmsource-map0.6.1indirect
npmsource-map0.7.6indirect
npmsource-map-js1.2.1indirect
npmspace-separated-tokens2.0.2indirect
npmspawndamnit3.0.1indirect
npmspeedline-core1.4.3indirect
npmsprintf-js1.0.3indirect
npmstackback0.0.2indirect
npmstandardwebhooks1.0.0indirect
npmstatuses2.0.2indirect
npmstd-env4.1.0indirect
npmstream-events1.0.5indirect
npmstream-shift1.0.3indirect
npmstreamx2.25.0indirect
npmstring-width2.1.1indirect
npmstring-width4.2.3indirect
npmstring-width5.1.2indirect
npmstring-width7.2.0indirect
npmstring-width8.2.1indirect
npmstring_decoder1.3.0indirect
npmstringify-entities4.0.4indirect
npmstrip-ansi4.0.0indirect
npmstrip-ansi5.2.0indirect
npmstrip-ansi6.0.1indirect
npmstrip-ansi7.2.0indirect
npmstrip-bom3.0.0indirect
npmstubs3.0.0indirect
npmsucrase3.35.1indirect
npmsupports-color5.5.0indirect
npmsupports-color7.2.0indirect
npmsvelte5.55.9indirect
npmsvelte-eslint-parser1.6.1indirect
npmsvix1.94.0indirect
npmtar-fs3.1.2indirect
npmtar-stream3.2.0indirect
npmteeny-request10.1.2indirect
npmteex1.0.1indirect
npmterm-size2.2.1indirect
npmtext-decoder1.2.7indirect
npmthenify3.3.1indirect
npmthenify-all1.6.0indirect
npmthird-party-web0.26.7indirect
npmthird-party-web0.29.2indirect
npmthrough2.3.8indirect
npmtinybench2.9.0indirect
npmtinyexec0.3.2indirect
npmtinyexec1.1.2indirect
npmtinyrainbow3.1.0indirect
npmtldts-core6.1.86indirect
npmtldts-icann6.1.86indirect
npmtmp0.2.7indirect
npmto-regex-range5.0.1indirect
npmtoidentifier1.0.1indirect
npmtotalist3.0.1indirect
npmtr460.0.3indirect
npmtree-kill1.2.2indirect
npmtrim-lines3.0.1indirect
npmtrough2.2.0indirect
npmts-api-utils2.5.0indirect
npmts-interface-checker0.1.13indirect
npmtslib1.14.1indirect
npmtslib2.8.1indirect
npmtsup8.5.1indirect
npmtsx4.22.3indirect
npmtype-check0.4.0indirect
npmtype-is1.6.18indirect
npmtyped-query-selector2.12.2indirect
npmtypedarray-to-buffer3.1.5indirect
npmtypescript6.0.3indirect
npmufo1.6.4indirect
npmuglify-js3.19.3indirect
npmundici-types6.21.0indirect
npmunified11.0.5indirect
npmunique-string2.0.0indirect
npmunist-util-is6.0.1indirect
npmunist-util-position5.0.0indirect
npmunist-util-remove4.0.0indirect
npmunist-util-stringify-position4.0.0indirect
npmunist-util-visit5.1.0indirect
npmunist-util-visit-parents6.0.2indirect
npmuniversalify0.1.2indirect
npmunpipe1.0.0indirect
npmupper-case1.1.3indirect
npmuri-js4.4.1indirect
npmutil-deprecate1.0.2indirect
npmutils-merge1.0.1indirect
npmuuid14.0.1indirect
npmvalid-data-url3.0.1indirect
npmvary1.1.2indirect
npmvfile6.0.3indirect
npmvfile-location5.0.3indirect
npmvfile-message4.0.3indirect
npmvite8.1.0indirect
npmvitefu1.1.3indirect
npmvitest4.1.8indirect
npmweb-namespaces2.0.1indirect
npmweb-resource-inliner6.0.1indirect
npmweb-streams-polyfill3.3.3indirect
npmwebdriver-bidi-protocol0.4.1indirect
npmwebidl-conversions3.0.1indirect
npmwhatwg-fetch3.6.20indirect
npmwhatwg-url5.0.0indirect
npmwhich2.0.2indirect
npmwhich-module2.0.1indirect
npmwhy-is-node-running2.3.0indirect
npmword-wrap1.2.5indirect
npmwrap-ansi10.0.0indirect
npmwrap-ansi6.2.0indirect
npmwrap-ansi7.0.0indirect
npmwrap-ansi8.1.0indirect
npmwrap-ansi9.0.2indirect
npmwrappy1.0.2indirect
npmwrite-file-atomic3.0.3indirect
npmws7.5.11indirect
npmws8.21.0indirect
npmxdg-basedir4.0.0indirect
npmy18n4.0.3indirect
npmy18n5.0.8indirect
npmyaml1.10.3indirect
npmyargs15.4.1indirect
npmyargs17.7.2indirect
npmyargs-parser13.1.2indirect
npmyargs-parser18.1.3indirect
npmyargs-parser21.1.1indirect
npmyauzl2.10.0indirect
npmyocto-queue0.1.0indirect
npmzimmerframe1.1.4indirect
npmzod3.25.76indirect
npmzwitch2.0.4indirect
Dependency advisories 0

Installing npm:@reddoorla/maintenance@0.75.1 pulls in 153 packages, direct and transitive: 0 carry known advisories, of which 0 are direct dependencies.

No known advisories affect the assessed dependencies.

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": [],
      "is_fork": false,
      "size_kb": 5776,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "HTML": 66687,
        "JavaScript": 41127,
        "TypeScript": 3532035
      },
      "pushed_at": "2026-07-25T03:35:43Z",
      "created_at": "2026-05-20T19:09:42Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-25T03:35:48Z",
      "description": null,
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": null,
      "name": null,
      "type": "Organization",
      "login": "reddoorla",
      "company": null,
      "location": null,
      "followers": 1,
      "avatar_url": "https://avatars.githubusercontent.com/u/287058736?v=4",
      "created_at": "2026-05-22T18:58:51Z",
      "is_verified": null,
      "public_repos": 19,
      "account_age_days": 64
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v0.75.1",
          "kind": "patch",
          "published_at": "2026-07-20T04:13:36Z"
        },
        {
          "tag": "v0.75.0",
          "kind": "minor",
          "published_at": "2026-07-17T20:02:34Z"
        },
        {
          "tag": "v0.74.0",
          "kind": "minor",
          "published_at": "2026-07-17T18:34:32Z"
        },
        {
          "tag": "v0.72.0",
          "kind": "minor",
          "published_at": "2026-07-15T17:45:37Z"
        },
        {
          "tag": "v0.71.0",
          "kind": "minor",
          "published_at": "2026-07-14T16:46:20Z"
        },
        {
          "tag": "v0.69.0",
          "kind": "minor",
          "published_at": "2026-07-06T01:07:17Z"
        },
        {
          "tag": "v0.68.0",
          "kind": "minor",
          "published_at": "2026-07-05T17:42:29Z"
        },
        {
          "tag": "v0.67.0",
          "kind": "minor",
          "published_at": "2026-07-02T18:09:35Z"
        },
        {
          "tag": "v0.66.0",
          "kind": "minor",
          "published_at": "2026-06-30T23:52:32Z"
        },
        {
          "tag": "v0.65.3",
          "kind": "patch",
          "published_at": "2026-06-30T23:27:03Z"
        },
        {
          "tag": "v0.65.1",
          "kind": "patch",
          "published_at": "2026-06-30T22:12:45Z"
        },
        {
          "tag": "v0.65.0",
          "kind": "minor",
          "published_at": "2026-06-30T04:08:39Z"
        },
        {
          "tag": "v0.64.0",
          "kind": "minor",
          "published_at": "2026-06-29T22:25:56Z"
        },
        {
          "tag": "v0.63.0",
          "kind": "minor",
          "published_at": "2026-06-29T17:06:32Z"
        },
        {
          "tag": "v0.62.1",
          "kind": "patch",
          "published_at": "2026-06-26T21:15:36Z"
        },
        {
          "tag": "v0.62.0",
          "kind": "minor",
          "published_at": "2026-06-26T05:02:48Z"
        },
        {
          "tag": "v0.61.0",
          "kind": "minor",
          "published_at": "2026-06-25T21:41:31Z"
        },
        {
          "tag": "v0.60.1",
          "kind": "patch",
          "published_at": "2026-06-25T02:35:23Z"
        },
        {
          "tag": "v0.60.0",
          "kind": "minor",
          "published_at": "2026-06-25T00:37:53Z"
        },
        {
          "tag": "v0.59.0",
          "kind": "minor",
          "published_at": "2026-06-24T18:06:36Z"
        },
        {
          "tag": "v0.58.0",
          "kind": "minor",
          "published_at": "2026-06-24T05:04:03Z"
        },
        {
          "tag": "v0.57.0",
          "kind": "minor",
          "published_at": "2026-06-24T01:59:38Z"
        },
        {
          "tag": "v0.56.0",
          "kind": "minor",
          "published_at": "2026-06-23T23:47:18Z"
        },
        {
          "tag": "v0.55.0",
          "kind": "minor",
          "published_at": "2026-06-23T21:38:55Z"
        },
        {
          "tag": "v0.54.4",
          "kind": "patch",
          "published_at": "2026-06-23T19:38:16Z"
        },
        {
          "tag": "v0.54.3",
          "kind": "patch",
          "published_at": "2026-06-23T18:49:04Z"
        },
        {
          "tag": "v0.54.2",
          "kind": "patch",
          "published_at": "2026-06-23T18:04:51Z"
        },
        {
          "tag": "v0.54.1",
          "kind": "patch",
          "published_at": "2026-06-23T17:25:51Z"
        },
        {
          "tag": "v0.54.0",
          "kind": "minor",
          "published_at": "2026-06-23T16:37:48Z"
        },
        {
          "tag": "v0.53.0",
          "kind": "minor",
          "published_at": "2026-06-22T23:12:09Z"
        },
        {
          "tag": "v0.52.0",
          "kind": "minor",
          "published_at": "2026-06-22T22:24:17Z"
        },
        {
          "tag": "v0.51.0",
          "kind": "minor",
          "published_at": "2026-06-22T20:45:07Z"
        },
        {
          "tag": "v0.50.0",
          "kind": "minor",
          "published_at": "2026-06-19T18:52:50Z"
        },
        {
          "tag": "v0.49.0",
          "kind": "minor",
          "published_at": "2026-06-18T22:50:46Z"
        },
        {
          "tag": "v0.47.0",
          "kind": "minor",
          "published_at": "2026-06-18T17:05:54Z"
        },
        {
          "tag": "v0.46.0",
          "kind": "minor",
          "published_at": "2026-06-18T01:36:51Z"
        },
        {
          "tag": "v0.45.0",
          "kind": "minor",
          "published_at": "2026-06-18T01:23:32Z"
        },
        {
          "tag": "v0.44.0",
          "kind": "minor",
          "published_at": "2026-06-17T23:12:59Z"
        },
        {
          "tag": "v0.43.0",
          "kind": "minor",
          "published_at": "2026-06-17T22:18:57Z"
        },
        {
          "tag": "v0.42.0",
          "kind": "minor",
          "published_at": "2026-06-17T18:35:49Z"
        },
        {
          "tag": "v0.41.0",
          "kind": "minor",
          "published_at": "2026-06-17T06:32:57Z"
        },
        {
          "tag": "v0.40.0",
          "kind": "minor",
          "published_at": "2026-06-16T16:29:07Z"
        },
        {
          "tag": "v0.39.0",
          "kind": "minor",
          "published_at": "2026-06-15T21:06:58Z"
        },
        {
          "tag": "v0.37.0",
          "kind": "minor",
          "published_at": "2026-06-15T19:47:03Z"
        },
        {
          "tag": "v0.36.1",
          "kind": "patch",
          "published_at": "2026-06-15T18:07:55Z"
        },
        {
          "tag": "v0.36.0",
          "kind": "minor",
          "published_at": "2026-06-15T17:45:33Z"
        },
        {
          "tag": "v0.35.0",
          "kind": "minor",
          "published_at": "2026-06-15T15:19:55Z"
        },
        {
          "tag": "v0.34.0",
          "kind": "minor",
          "published_at": "2026-06-14T23:13:31Z"
        },
        {
          "tag": "v0.33.0",
          "kind": "minor",
          "published_at": "2026-06-12T20:34:33Z"
        },
        {
          "tag": "v0.32.0",
          "kind": "minor",
          "published_at": "2026-06-11T23:05:25Z"
        },
        {
          "tag": "v0.31.0",
          "kind": "minor",
          "published_at": "2026-06-11T17:12:12Z"
        },
        {
          "tag": "v0.30.0",
          "kind": "minor",
          "published_at": "2026-06-10T21:18:26Z"
        },
        {
          "tag": "v0.29.0",
          "kind": "minor",
          "published_at": "2026-06-09T02:37:45Z"
        },
        {
          "tag": "v0.28.0",
          "kind": "minor",
          "published_at": "2026-06-08T21:12:18Z"
        },
        {
          "tag": "v0.27.2",
          "kind": "patch",
          "published_at": "2026-06-08T18:01:08Z"
        },
        {
          "tag": "v0.27.1",
          "kind": "patch",
          "published_at": "2026-06-04T16:46:01Z"
        },
        {
          "tag": "v0.27.0",
          "kind": "minor",
          "published_at": "2026-06-03T23:55:11Z"
        },
        {
          "tag": "v0.26.1",
          "kind": "patch",
          "published_at": "2026-06-03T23:26:04Z"
        },
        {
          "tag": "v0.26.0",
          "kind": "minor",
          "published_at": "2026-06-03T22:48:00Z"
        },
        {
          "tag": "v0.25.0",
          "kind": "minor",
          "published_at": "2026-06-03T20:48:35Z"
        },
        {
          "tag": "v0.24.0",
          "kind": "minor",
          "published_at": "2026-06-03T19:49:21Z"
        },
        {
          "tag": "v0.23.0",
          "kind": "minor",
          "published_at": "2026-06-03T19:16:54Z"
        },
        {
          "tag": "v0.22.0",
          "kind": "minor",
          "published_at": "2026-06-02T20:38:16Z"
        },
        {
          "tag": "v0.21.0",
          "kind": "minor",
          "published_at": "2026-06-02T18:39:16Z"
        },
        {
          "tag": "v0.20.0",
          "kind": "minor",
          "published_at": "2026-06-02T18:33:50Z"
        },
        {
          "tag": "v0.19.0",
          "kind": "minor",
          "published_at": "2026-06-02T17:29:56Z"
        },
        {
          "tag": "v0.18.1",
          "kind": "patch",
          "published_at": "2026-06-02T00:57:59Z"
        },
        {
          "tag": "v0.18.0",
          "kind": "minor",
          "published_at": "2026-06-01T22:14:25Z"
        },
        {
          "tag": "v0.17.1",
          "kind": "patch",
          "published_at": "2026-06-01T21:58:00Z"
        },
        {
          "tag": "v0.17.0",
          "kind": "minor",
          "published_at": "2026-05-29T19:17:05Z"
        },
        {
          "tag": "v0.16.0",
          "kind": "minor",
          "published_at": "2026-05-29T00:49:42Z"
        },
        {
          "tag": "v0.15.0",
          "kind": "minor",
          "published_at": "2026-05-29T00:40:53Z"
        },
        {
          "tag": "v0.14.0",
          "kind": "minor",
          "published_at": "2026-05-29T00:09:27Z"
        },
        {
          "tag": "v0.13.0",
          "kind": "minor",
          "published_at": "2026-05-28T22:51:53Z"
        },
        {
          "tag": "v0.12.1",
          "kind": "patch",
          "published_at": "2026-05-28T22:40:50Z"
        },
        {
          "tag": "v0.12.0",
          "kind": "minor",
          "published_at": "2026-05-28T22:05:32Z"
        },
        {
          "tag": "v0.11.2",
          "kind": "patch",
          "published_at": "2026-05-28T21:20:43Z"
        },
        {
          "tag": "v0.11.1",
          "kind": "patch",
          "published_at": "2026-05-28T21:01:09Z"
        },
        {
          "tag": "v0.11.0",
          "kind": "minor",
          "published_at": "2026-05-28T20:46:05Z"
        },
        {
          "tag": "v0.10.7",
          "kind": "patch",
          "published_at": "2026-05-28T19:53:48Z"
        },
        {
          "tag": "v0.10.6",
          "kind": "patch",
          "published_at": "2026-05-28T19:33:00Z"
        },
        {
          "tag": "v0.10.5",
          "kind": "patch",
          "published_at": "2026-05-28T18:50:05Z"
        },
        {
          "tag": "v0.10.4",
          "kind": "patch",
          "published_at": "2026-05-28T17:31:40Z"
        },
        {
          "tag": "v0.10.3",
          "kind": "patch",
          "published_at": "2026-05-27T22:21:32Z"
        },
        {
          "tag": "v0.10.2",
          "kind": "patch",
          "published_at": "2026-05-27T21:58:43Z"
        },
        {
          "tag": "v0.10.1",
          "kind": "patch",
          "published_at": "2026-05-27T21:36:49Z"
        },
        {
          "tag": "v0.10.0",
          "kind": "minor",
          "published_at": "2026-05-27T21:19:11Z"
        },
        {
          "tag": "v0.9.0",
          "kind": "minor",
          "published_at": "2026-05-27T19:44:36Z"
        },
        {
          "tag": "v0.8.0",
          "kind": "minor",
          "published_at": "2026-05-27T19:06:20Z"
        },
        {
          "tag": "v0.7.0",
          "kind": "minor",
          "published_at": "2026-05-27T17:40:25Z"
        },
        {
          "tag": "v0.6.8",
          "kind": "patch",
          "published_at": "2026-05-26T21:34:45Z"
        },
        {
          "tag": "v0.6.7",
          "kind": "patch",
          "published_at": "2026-05-26T21:09:04Z"
        },
        {
          "tag": "v0.6.6",
          "kind": "patch",
          "published_at": "2026-05-26T19:26:06Z"
        },
        {
          "tag": "v0.6.5",
          "kind": "patch",
          "published_at": "2026-05-26T18:51:56Z"
        },
        {
          "tag": "v0.6.4",
          "kind": "patch",
          "published_at": "2026-05-26T18:36:26Z"
        },
        {
          "tag": "v0.6.3",
          "kind": "patch",
          "published_at": "2026-05-26T18:08:08Z"
        },
        {
          "tag": "v0.6.2",
          "kind": "patch",
          "published_at": "2026-05-22T18:54:35Z"
        },
        {
          "tag": "v0.6.1",
          "kind": "patch",
          "published_at": "2026-05-22T04:43:26Z"
        },
        {
          "tag": "v0.6.0",
          "kind": "minor",
          "published_at": "2026-05-21T21:28:57Z"
        },
        {
          "tag": "v0.5.0",
          "kind": "minor",
          "published_at": "2026-05-21T20:44:29Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "467c81d7a1c4422dc5d61556d96e525ad69be462",
          "body": "* feat(blux): freeze map-placeholder transform (strip dead Google-Map DOM)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux): freeze slider-pin transform (pin caslider to slide 1)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux): run map-placeholder + slide\n[…]\nixture is unchanged.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): frozen render v2 — map placeholder + slider pin (#463)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-25T03:35:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "24b3d62ecb8c36ccbb93e18b8a08a9fbca2eb247",
          "body": "…on) (#462)\n\n* feat(blux-freeze): slot + token contract types\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux-freeze): settle (layout hydration) + tokenize text nodes\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n* feat(blux-freeze): deterministic image bake + share\n[…]\n no behavior change.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): frozen-page freeze + migrate (pixel-faithful Blux migrati…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-25T00:34:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4a1eeb94d754c0f4a99aaa1be158a46b1e04b03e",
          "body": "release-health.yml compared npm `latest` to main's package.json version and\nnothing else. That is structurally blind to a release workflow failing while\nnpm and main agree on the version — and that blind spot has now bitten three\ntimes, most starkly 2026-07-20..24: npm 12 changed `npm info --json` t\n[…]\nt returns `success` for main now and `failure` for the 2026-07-20..24 window.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(ci): alarm on release-workflow redness, not just npm drift (#461)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T21:06:36Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "3b3d2a32d56bd3d9179f151c341bf8ca5e6a73c9",
          "body": "Dependabot filed these on its re-scan after #459 merged; all are fresh\ndisclosures (the postcss advisory published 16:24Z today), not regressions\nfrom that PR.\n\n- postcss <=8.5.17 → 8.5.23 (GHSA-r28c-9q8g-f849, high, CVSS 7.5). Runtime\n  scope. `sourceMappingURL` auto-loading path-traverses out of t\n[…]\nist green\nincluding `loadBundledImages` and sharp's native binding at 0.35.3.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(deps): clear the 7 advisories disclosed 2026-07-24 (#460)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T20:41:37Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "499a123bda249d20eaeead1bd337a2d6d53568bf",
          "body": "…n CVE (#459)\n\n* fix(ci): pin release npm to 11.x — npm 12 breaks changesets publish detection\n\nnpm 12 changed `npm info <pkg> --json` to return an ARRAY of packuments\ninstead of a single object, dropping the top-level `versions` field.\n@changesets/cli reads exactly that field in getUnpublishedPacka\n[…]\nCo-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: unbreak the release workflow (npm 12) + clear the brace-expansio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T20:29:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f8e3922a04858aaf1dc3f869aab5ae5ea30c0702",
          "body": "…solvable) (#458)\n\n* feat(blux): imgTag — url-based <img> for subgrid image media\n\n* feat(blux): emit subgrid image media as image_embed, not a nested Image field\n\n* test(blux): regen the-pointe golden + breadth for subgrid image_embed\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>",
          "is_bot": false,
          "headline": "feat(blux): emit subgrid image media as image_embed (Migration-API-re…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T19:15:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "775fe75469cc1e69a4a7d5e209f18bae42817665",
          "body": "…only (#457)\n\nbandVisual() emitted the full band-visual field set (content_padding,\ncontent_padding_mobile, text_align, column_width, column_side, heading_role +\nthe core min_height/max_content_width/vertical_align) for ALL four band\nslices. But only the blux_grid/blux_section models (and renders) d\n[…]\ned). New unit test asserts\ngallery+carousel drop the flow fields while keeping the core.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): scope band-visual emit — gallery/carousel get core fields …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T18:47:11Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "829a997421f7436eed74523ee36215b4bbe5f1b1",
          "body": "…#456)\n\nlookupDocIds built its uid→id map with no document-type predicate, so a\nrepo holding the same uid under two types (a cloned starter's page:home and\nthe migration's catalog_page:home) collapsed to one last-writer-wins entry.\nAn \"already exists\" update then PUT the doc's data onto the wrong-ty\n[…]\nalog_page pair (wrong doc ordered\nlast) and asserts the PUT targets the catalog_page id.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): key the migrate update-lookup by type+uid, not uid alone (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T18:17:50Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f9f9cd4f4b2340a363fc2d7a19c05e02c494feed",
          "body": "Two coupled parts on the catalog EMIT pipeline:\n\nPart 1 — the migration now OWNS + pushes a `catalog_page` custom type. A\ncloned starter ships its own `page` type (the /new-site flow's), not the\nmigration's, so the migration must define the type its documents use. New\nmodule `catalog-page-type.ts` e\n[…]\n 4dd6c119…, that image\nin plan.assets, meta_description omitted (its description is \"\").\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): give migrated catalog pages a real SEO tab (#455)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T18:05:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "31151077093978e31104ac12b489414aaa81e219",
          "body": "… (#454)\n\nThe catalog pipeline emitted type \"page\", but the whole downstream stack\n(migrated Prismic repos + the starter render routing's getPageDoc) keys on\n\"catalog_page\" — the migration-owned page type, distinct from the template's\nown page type. Introduce a CATALOG_PAGE_TYPE constant used by emi\n[…]\nt; update the\ncatalog-doc-type test assertions + golden. Legacy band pipeline untouched.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): emit catalog_page (not page) as the migrated document type…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T17:06:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8ad571f49ed839c7890e38161582bad2c234cd2f",
          "body": "…css (#453)\n\n* fix(blux): sanitize cell body_html at the emit boundary\n\nbody_html is rendered via {@html} on the starter side but was the one such\nsink not sanitized, on the mistaken belief sanitizeHtml strips the class.\nIt does not — sanitizeHtml is a scalpel (strips <script>/on*=/javascript:\nonly,\n[…]\now carries the runtime :root mirror too and\nno future writer can drift. emit/catalog output byte-identical (command\ntests unchanged).\n\n---------\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>",
          "is_bot": false,
          "headline": "fix(blux): emit hardening — sanitize body_html + single-source theme.…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T15:58:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "633e24724651e7664b7fee360f7b24bf42d01348",
          "body": "…ext) (#452)\n\n* feat(blux-catalog): catalog spec types (Section skeleton)\n\n* feat(blux-catalog): bandToCatalogSection classifier\n\n* feat(blux-catalog): catalogSpecToPlanSlice + buildCatalogPlan\n\n* feat(blux-catalog): CLI 'catalog' action (plan-only, no sidecar)\n\nCo-Authored-By: Claude Opus 4.8 <nore\n[…]\n), concatenated\ninto theme.css. Enables the gate's role->font-size assertion.\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>",
          "is_bot": false,
          "headline": "feat(blux): Blux catalog → Prismic emit pipeline (+ role-aware cell t…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-24T06:13:55Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6ef2a0a25f12dafbc5eceb7da38e4ebdc71b53a8",
          "body": "…t once (#448)\n\nAn apex-configured Airtable url that 301s to www (Vineyard, 2026-07-17)\nmakes EVERY probed route pay a redirect hop; under the audit's own probe\nburst that hop tipped two heavy gallery pages over the nav timeout and\nflagged a healthy site \"no response\". Fixing the Airtable url worked\n[…]\netch).\n\nVerified: lint, typecheck, full suite (2983 passing, 10 new), build +\ntest:dist.\n\nCo-authored-by: Tucker Lemos <contact@tuckerlemos.com>\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(audit): probe the canonical host — follow the base URL's redirec…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-20T16:50:57Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8b879ec7c41f8baa351951dc080d76813cb8a3f2",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#446)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-20T04:07:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a591a10461a5d99f263266cd59b4a54db9e10b9",
          "body": "Clone-template hygiene (starter PR #75) removes agency process docs from\nthe public template every client site clones. The new-site-workflow pair\nis still-referenced fleet process — the new-site skill hands off to the\nworkflow spec — so it moves here, the fleet-process home, rather than\ninto git his\n[…]\nrries an adoption note; content otherwise\nverbatim from starter origin/main (plan re-wrapped by this repo's\nprettier).\n\nDocs-only: no changeset.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs: adopt new-site-workflow plan+spec from reddoor-starter (#447)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-20T01:32:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "34f0f7eb78e66d609eff258e8b9620d8fa19f658",
          "body": "…ain> on mobile (#445)\n\nThe sweep only caught the erpfunds.com blank-page outage because the desktop check\nrequires a visible <main>. Two gaps let the class slip: the mobile check asserted only\n200 + no-console-error + no-overflow (a blank page passes all three), and nothing\ndetected an unsubstitute\n[…]\n a visible <main> on the mobile checks\ntoo. TDD: summarizeBrowser + browserAudit tests; full suite + typecheck + dist smoke green.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(browser-audit): flag unsubstituted %sveltekit tokens + require <m…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-19T00:48:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6fbafe971a2679e8e9838b47c569e12f706614f2",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#444)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T19:56:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9fd165aff63f20298c5f5a2663b16270e398feab",
          "body": "…ducts feed (#442)\n\nA Blux \"products\" feed drives a detail page per record (/products/<slug>) from\na Handlebars template the static export drops. Rebuild the catalog\ndeterministically at convert time:\n\n- Canonical categories: the raw feed is dirty (whitespace/case variants + the\n  typos \"Upholstrere\n[…]\nalizeProducts (+15 tests); exposes extFor from feed-grid for the\nshared image-ext logic. Data foundation for the /products/[slug] detail route.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit products.json — cleaned product catalog from the pro…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T18:47:16Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b93eece8cfbacb390e737f131489649434902bd5",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#443)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T18:28:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "99f1a5612698b7845892593a031ef0e027e7933b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#407)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T16:40:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9dd401b4862914d31bb50a740dae45193304588",
          "body": "…inked) (#441)\n\n* feat(blux): emit site-config.json (nav dropdowns + footer)\n\nThe page-focused convert dropped the site chrome. buildSiteConfig parses the\nexport's NESTED navigation tree (top items with optional dropdown children +\nthe resolved logo url) and the footer (enabled social networks + the\n[…]\nxactly the Footer's renderable\n  set and added reddit for parity.\n\n+4 tests.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit site-config.json — nav dropdowns + footer (socials l…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T16:39:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9929699e2a56084b25aea57857ed920f81f111d8",
          "body": "…(#440)\n\nA full-page hero slide is stack[media, title, body] — the title was the\ncaption but the body (the project location / design credits) was silently\ndropped. carouselSlides now captures the first non-blank body/subtitle after\nthe title as a subcaption; the emit threads it to the page-doc item\n\n[…]\nroven on composition: the home hero shows \"Headquarters\" over \"Ontario,\nCalifornia\", \"MAR MONTE HOTEL\" over its design/procurement credits, etc.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): a hero carousel slide carries its secondary caption line …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T07:20:57Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7d94803bb1f5762d249b55c202eb1a1c14b65279",
          "body": "Gallery/portfolio tiles rendered at their natural (tall, varied) height with\nthe caption in a row below. The original crops each tile to\nsourceConfig.mediaRatio (4:3) and overlays the caption ON the image\n(layout: behind, overlay: true) — so a tile is only as tall as its image.\n\n- Media gains cropRa\n[…]\n5698px -> 12036px (live 11087), band 2\n3702px (live 3644) — uniform 4:3 cards like the original. Render change lands\nin the starter. 2939 tests.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): feed-grid tile cropping + overlay captions (#439)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T06:55:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "0b6734837d9acf5951ca925b18e943a6e5a103ea",
          "body": "A .caslider whose slides are stack[media, title, location] (image + a heading\n+ a secondary body line) was rejected by the exact stack[media, heading] slide\nmatch and fell through to the faithful Grid — rendering all N slides stacked\nfull-width. Composition's home hero was 18 slides tall (~18000px) \n[…]\ne\nawaits a caption-model extension.\n\nProven on composition: home band 0 now Carousel(18) at 80vh (~800px in dev),\nnot an 18000px stack of tiles.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): classify a full-page hero slider as a Carousel (#438)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T05:31:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9327af29300666e33ed3ebcf719f1e4d9c389ae1",
          "body": "A fresh full review (the first was cut short by a session limit) found six\ntile-fidelity gaps vs live. Five were real and are fixed; one — a \"code-point\"\ntitle sort — was refuted by the export's own sort JS (it uses localeCompare,\nwhich the original code already matched), so that one stayed.\n\n- Tag \n[…]\non: gallery 132 -> 139 images with captions, interior band\n100 -> 107 (= live), zero double-escapes, zero token leaks, urls resolve.\n2935 tests.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): feed-tile fidelity from a full adversarial review (#437)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T04:40:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7fec1477aa931632f803497b51af5fc8675c8926",
          "body": "…s CI (#436)\n\nrelease.yml already passed RENOVATE_TOKEN to the changesets action (fixing PR\nauthorship), but actions/checkout still configured git with the default\nGITHUB_TOKEN — so the bot-branch PUSH used GITHUB_TOKEN, which is\nrecursion-guarded (no push event) and makes the pull_request runs trig\n[…]\nse/main branch so the required build check goes green without an\nadmin approving each release. Publishing still uses npm OIDC (id-token: write).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci(release): checkout with RENOVATE_TOKEN so the version-PR push fire…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T04:05:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c1a75ce7a0b73caceb27441fdf83703ee3f7152a",
          "body": "The Version Packages PR's required `build` check has been stuck in\n\"action_required\" on every re-push: its pull_request runs (authored by\nRENOVATE_TOKEN, see release.yml) are gated behind manual approval, so the\nrelease could only merge after an admin approved each run. A push event is not\nsubject t\n[…]\n on the same\nSHA, so adding the bot branch to push.branches lets the release PR go green on\nits own. No package behavior change (workflow-only).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "ci: run ci.yml on the changeset-release/main bot branch via push (#435)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T03:57:53Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1899030ab066ff95952b7988e2d2facd0806a2ea",
          "body": "* feat(blux): materialize feed-grid tiles from records\n\nGallery/portfolio grids render their tiles CLIENT-SIDE from feed records —\nthe static export ships only the display:none {{…}} template (dropped last\nround), so those bands converted empty. convertSite now rebuilds the visible\ntiles DETERMINIST\n[…]\nnded\nunverified); I evaluated all three against the code and export directly.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): materialize feed-grid tiles from records (#434)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-17T03:49:49Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "257888ead06b6291004be1f4725eafdcf0626783",
          "body": "* feat(blux): whole-site multi-page convert — every page through the faithful-grid pipeline\n\nPreviously only index.html got the faithful treatment; inner pages existed\nsolely as the archetype path's low-confidence block guesses. Now:\n\n- normalizePages derives each page's routing path (source `url` w\n[…]\nth.\n\nAdversarial-review catch (the migrate path is creds-gated, so untested).\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): whole-site multi-page convert + feed-template drop (#432)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:43:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fdc984318fc19e3611d1bbc3b0ecbd493d606845",
          "body": "…le chips, site-page alarms, validity fixes (#433)\n\n* feat(dash): digest spam telemetry, contact-only unread count, turnstile chips, site-page alarms, validity fixes\n\n(a) A \"Submissions (24h)\" telemetry section in the nightly digest — new leads vs\nnewsletter/rsvp signups vs auto-filtered spam, per-s\n[…]\narity test stays as a\nbehavioral cross-check that the two entry points agree.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(dash): digest spam telemetry, contact-only unread count, turnsti…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:31:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ae03d9b8bb776a34fd5a4833290db8ad3670e0a8",
          "body": "…-fix counter reset (#431)\n\nThree cockpit-honesty fixes:\n\n1. Pre-launch mute pierce: a \"launch period\" site still mutes expected\n   pre-launch conditions (early/absent Lighthouse, errored deploy,\n   Renovate/analytics warnings), but a genuine alarm — any critical-severity\n   item, or default-branch \n[…]\n. Increments keep\n   their active + repo-backed filters. Adds a base? injection seam\n   (runDigest pattern) so the clean-fleet path is testable.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(cockpit): pre-launch mute honesty, legacy-status visibility, auto…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:19:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7c75ca9c8b2a9c757adaa636cc4503e47be42009",
          "body": "…ks and the link checker (#430)\n\n* fix(audits): extend WAF-challenge honesty to crossbrowser/mobile checks and the link checker\n\n#428 taught the browser sweep to re-verify route reachability with a plain\nfetch before a fail persists, but the very same challenge still poisoned the\nother verdicts: a 4\n[…]\ncused\nevery run — accepted as undecidable with today's signals. Comment-only.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audits): extend WAF-challenge honesty to crossbrowser/mobile chec…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T23:15:58Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "9012b897a59925440fe4a11f46791ff32592e257",
          "body": "…ers, FlexHeight column fill (#429)\n\n* feat(blux): capture the nested block-in-cell — min-height, background layer, valign\n\nA grid cell holding a FULL Blux block pins its box with inline min-height\n(80vh/800px/90vh on the-tower bands 1/3/5), paints it via an abs-fill\nblock-background-layer (a gradie\n[…]\nable); slice\nclassifications across all 12 Desktop exports identical to main.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): nested block-in-cell capture — min-height, background lay…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T22:22:29Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7d065b948ef707d6f568cb8bc6ef7d5d73492abe",
          "body": "…k-seen on /submissions (#426)\n\n104 rows sit status='new' (oldest 2026-06-15); ~20 are outreach spam that\nTODAY'S classifier would bucket — they arrived before the 2026-07-15 tuning\nand there was no retro re-score, and the operator had no bulk action (104\none-by-one clicks).\n\n- `submissions rescore`\n[…]\naths share one guarantee: only status='new' rows are ever touched —\n  spam and operator-triaged rows are immune (guards live in the db helpers).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(submissions): re-score CLI for the pre-tuning backlog + bulk mar…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T21:45:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c00920cbdc93710bec55150246025574ba19a0c6",
          "body": "…ing + cockpit alarm (#427)\n\nThe Espada failure mode: apm@espada-pm.com bounced 4 of the last 8 lead\nnotifications and NOTHING alarmed — notifyStatus 'sent' only means Resend\naccepted the email.\n\n- resend-webhook: a bounce/complaint event's email id is checked against\n  submissions' resend_message_i\n[…]\nw shows a visible red\n  'notify bounced' chip on the summary line (the #419 visible-not-tooltip\n  rule) plus 'bounced' in the Notify detail row.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(forms): bounced lead notifications become visible — webhook mapp…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T21:02:49Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "797a5f1bd48637f90cc54c67713458602c105b22",
          "body": "…ty + honest titles-meta (#428)\n\nThe 2026-07-16 sweeps failed Titles & Meta on 10 of 11 live sites and\nUptime Reachable on MSOT/Sonder/Reddoor while every URL answered 200 to\na plain fetch. Live reproduction against reddoorla.com showed the root\ncause: Netlify's bot protection serves 403 challenge i\n[…]\n passes and titleMeta fails HONESTLY (6 pages\nmissing meta descriptions + /process serving the About title — real\ncontent findings, each named).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(audits): stop the browser sweep crying wolf — verified reachabili…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T20:48:28Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8e7f6eb95c1919996e61b8960cafc9a0c59fb89e",
          "body": "…er-caught sprays + full-bucket facets (#425)\n\nPass-2 adversarial review fixes (3 confirmed findings):\n\n- Duplicate scan exempts same-sender same-site matches: a genuine visitor\n  resending an identical message was silently bucketed AND the delivered\n  original retro-flipped — an active lead vanishe\n[…]\ne\n  rollout runbook directs the operator to judge the canary from it).\n\nDuplicateMatch now carries siteId+email for the exemption.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms/dashboard): genuine-resubmit exemption + retro for classifi…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T05:56:34Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "809ea23005ff8448fd09ede23708e0cca6c641b2",
          "body": "…e (#424)\n\nThree captures from the final live-diff pass over the-pointe:\n\n- A LONE width-constrained cell (grid-2-r60 in a bare grid container) keeps\n  its row: the token IS the content column's width. Flattening it to a stack\n  rendered bands 9/11's 60% column full-width (headings 42% oversized).\n-\n[…]\nnderline }`: an\n  inline-block box does not inherit an ancestor's text-decoration, so the\n  affordance vanished when `.ib` landed.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): lone width-token rows, valignmiddle hint, .links underlin…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T05:37:01Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "6a5807eb3f7af2cc4f6b08eaadda868428d1beaa",
          "body": "…-property flag (#423)\n\nBatch 4 close-out of the 2026-07-15 adversarial-review findings:\n\n- Guardrail: /health's forms.turnstile (read nightly, previously dropped) now\n  persists as the 'Turnstile widget' Airtable field; requireTurnstile + fresh\n  widget-fail raises a CRITICAL cockpit/digest attenti\n[…]\neryMissed's \"set an explicit Search\n  query\" which permanently silenced the missing-property case. Separate --due\n  summary lines.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat: Require-Turnstile guardrail + solved-hostname check + honest no…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T05:02:48Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c758fff9fc6e2dac90d446a0dc0523563263a569",
          "body": "Converted trees carry the raw anchors verbatim (class=\"ib middle buttonsN\"),\nso without the declared skins a button renders as a bare link — the-pointe's\n\"Burbank Incentives\" ran 13px short of the original's padded, bottom-ruled\nbutton.\n\nThemeIR.buttonStyles captures each styles.buttons entry (value\n[…]\nover/:active) and\nthe .ib inline-block base (an inline anchor would ignore the skin's vertical\npadding) to both theme.css outputs.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit the export's button skins (styles.buttons) (#422)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T04:52:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a3f167b819e01ba02a5598adaa39daca74c95390",
          "body": "…gh the peel (#421)\n\nLive Blux contains each grid cell's block margins (a block-content clearfix\nblocks the collapse) and insets cells via their containers' inline padding —\nband 11's lone heading sits in a 20px/30px padded cell the flatten silently\ndropped, leaving the band 122px shorter than the o\n[…]\nes not\nflip to Grid. Golden shapes churn accordingly (bands 1/3/5/6/9-12); the\nvalidate golden still reports zero layout findings.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): preserve grid-cell containment + cell-level padding throu…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:43:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c19cb804503ac493e36295df815df98fe513ff75",
          "body": "…n + retroactive re-bucket (#420)\n\nLive analysis showed the biggest residual spam classes evade per-message\ncontent scoring: template sprays with per-site substitution (the live\ndog-harness spray differed ONLY in greeting; SEO sprays swap the target\ndomain per site), the same sender blasting multipl\n[…]\near-dupe pair (a\nname-substituted \"Trusted Virtual Team\" spray at Jaccard 0.970); no\ngenuine message pairs collide under the shipped thresholds.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(forms): cross-site repeat-sender + near-duplicate spray detectio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:39:02Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f7bda7999622dd5e8630b76f8ff22f0b5bf0e7cc",
          "body": "…e spam reasons, facets, honest per-site counts (#419)\n\nThe operator just enabled Require Turnstile on the canary site and must\nwatch its spam_auto bucket for a week to confirm zero real leads get\ncaught. Three confirmed review findings made that impossible from the\ndashboard:\n\n- spam_reason only su\n[…]\nry metric with the very rows under watch. Delivered now excludes\n  both statuses and a new \"Auto-filtered\" row counts spam_auto in the\n  window.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(dashboard): make the requireTurnstile canary reviewable — visibl…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:38:33Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "99c2aae204c06680a1ee8764572971e57e8aee2f",
          "body": "…418)\n\nBlux's vertical rhythm between stacked blocks lives in the text styles' own\nmargins (Grid Titles / Caption Body etc. declare \"10px 0\"), collapsing in\nnormal flow. The emitted .txt-role-textN rules hardcoded margin: 0, which\nflattened that rhythm — the render papered over it with a uniform sta\n[…]\nlues), emitThemeCss\nemits --text-textN--margin, and emitRolesCss applies\nmargin: var(--text-textN--margin, 0) — flush stays flush.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): carry text-style block margins into the role utilities (#…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-16T00:11:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "e972d5fb60272f1e8e3ffb543e90584fe02d1c78",
          "body": "…e miss corpus (#417)\n\nOperator policy: fleet sites are niche and rank top for their own names;\nclients wanting SEO help ask directly — SEO-topic content through the public\nform is near-always solicitation. Overblock accepted, spam_auto recoverable.\n\n- Seller keyword weight 25->30 (cap 90): two soli\n[…]\new: marked-spam recall 8/20 -> 19/20; 16 more unmarked\nspam rows bucket (all hand-verified solicitation); zero genuine leads flip.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(forms): aggressive SEO/solicitation filtering tuned from the liv…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:50:40Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c84f1a12134daa9b84b1a159b42a6299de60683f",
          "body": "…n (#416)\n\nThe Blux clickMap widget switches the area below the map between N sibling\ncontent panels, one per toggle — on the-pointe, the address grid plus three\ndisplay:none logo strips the convert already parses (as white cards since the\ncard capture). Without a marker the render would stack all N\n[…]\ncated-map Grid bands. MapToggle.panelIndex already carried\nthe toggle→panel order, so this completes the linkage the render needs.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): mark the map widget's toggle-panel row in the presentatio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:37:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1166187538a9bd7f53bd3611ca8a85cf659d4b04",
          "body": "…d it at convert time (#414)\n\nEvery Blux export declares its favicon as a bare media uuid in\nsettings.favicon whose CDN url appears only in the rendered\n<link rel=\"icon\"> tags — the uuid is routinely absent from the media\ndict. assembleIR now resolves it from the scraped urlMap onto\nSiteIR.meta.favi\n[…]\ntwork blip\nnever fails an otherwise-offline convert, and convertExport stays\npure. Either outcome is named in the convert summary.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): capture the export favicon (settings.favicon) and downloa…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:37:19Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fb4b3c6ed62ebe5b6668426e3b20f5c795c55621",
          "body": "…rdening (#415)\n\nReview-pass fixes (adversarially verified, live-data-replayed):\n\n- Gibberish rule: >=5-consonant-run (y as consonant) fired on 3,138 dictionary\n  words (psychology, worthwhile, nightclubs) — +35 gibberish + one pasted link\n  silently bucketed whole genuine-lead verticals. Now run >=\n[…]\nomment corrected (described pre-#412 semantics) and now\n  records the rollout precondition (deployed package must forward tokens).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): stop the classifier silently bucketing genuine leads + ha…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T23:26:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ea45e71de78b8b82dc9e4643830bb04fe50fbeb4",
          "body": "…ckground (#413)\n\nA Blux card's `.blocksN` fill carries the background-color while its\n`.blocksNcontainer` carries the content inset (e.g. padding: 100px 4% 80px).\nThe layout-wrapper peel dropped the padding, so a restored card rendered with\nits fill hugging the text — the-pointe band 3's white stat\n[…]\nmap, so no change there.\n\nFixes band 3's stats card and its band-14 listing cards (both now carry padding\nin the golden manifest).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): capture a card wrapper's content padding alongside its ba…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T22:35:06Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "0d543e8e074beddc6e9c42c34673503696ae05c4",
          "body": "…e-body velocity (#412)\n\nTwo ingest-time spam defenses for the direct-POST outreach flood the content\nclassifier can't reliably catch. Both bucket to the recoverable spam_auto status.\n\n- verifyTurnstile gains an \"absent\" outcome (secret configured but no token\n  forwarded). A real browser rendering \n[…]\nter forms skipped, bodies\n  under 40 chars ignored, no-op when already spam. Best-effort — a lookup failure\n  never blocks a lead.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): block missing-token submissions on gated sites + duplicat…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T22:29:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7864bfe038017116846b60b1d5603f8bccb6d462",
          "body": "…ws (#411)\n\n* feat(blux): capture peeled card-wrapper background-color onto grid rows\n\nThe grid parser peels pure-layout wrapper divs (`.blocks0` with no grid token)\nto reach structural content — dropping any inline `background-color` they carry.\nSo a Blux \"card\" (a `.blocks0` with a white backgroun\n[…]\ng band 3's white stats card survives the rewrite.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): capture peeled card-wrapper background-color onto grid ro…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T21:58:46Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5009135ea4e4092551783664682f5faed29db18b",
          "body": "…d 100->60 (#410)\n\nLive data showed spam_auto=0 across 127 recent submissions while ~1-in-4\ndelivered messages were spam. Add multi-word cold-outreach/SEO keyword phrases,\na consecutive-consonant-run gibberish signal (real words never exceed 4 in a\nrow; latin-only so native-script names are untouche\n[…]\necision signals bite. Measured 8/20 marked spam now bucketed (was\n0/20) + unmarked inbox spam, 0 false positives on genuine leads.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): catch cold-outreach/gibberish/bare-domain spam + threshol…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T21:35:27Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "1709b8d3c8f471eb67b79b706949574a7224a752",
          "body": "… discoverability (#409)\n\nReplace the three hardcoded accept-string branches in assignTier with a\nstructured-candidate list + one generic matcher, keyed on stable accept-key\naliases (netlify/no-domain/etc.) instead of volatile reason text. Surface the\nprimary accept token on each watch chip for disc\n[…]\nse tolerate both Multiple-Select arrays and delimited\nlong-text. Acceptance stays watch-only (below the attention short-circuits).\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(cockpit): generic accept-key matcher for watch conditions + chip…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T21:12:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "5cab8224c15b9f60838b8c942c787dae9c7c6b44",
          "body": "…default misses (#408)\n\n* feat(reports): default Search Console query to site name + flag name-default misses\n\nBrand search presence enrichment previously ran only when an operator hand-entered\na `Search query` on the Websites row. Now `fetchSearch` runs for any analytics-enrolled\nsite (GA4 property\n[…]\nore: changeset for search-query site-name default\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(reports): default Search Console query to site name + flag name-…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T19:15:50Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "8152804e0635bbbc97cbbda2868d9be16b41b9c7",
          "body": "… (#406)\n\n* docs(blux): export-defaults plan — class-default padding, text-style deviations, media alignment\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): capture band blockClass + text-leaf style deviations\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blu\n[…]\nnthropic.com>\n\n* test(blux): lock copy-never-mutate on shared styleFor record\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit export class-default padding + text-style deviations…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T17:41:30Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "fc3ca065423146bfdf6c79b06c13855d48527427",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#402)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T17:40:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0b9c57ce5dbdc1cef8fa30b5923ea59ffb83841b",
          "body": "…ecover 3 morning reports (#405)\n\n* fix(forms): guard createIngestAction buildPayload — throw becomes fail(400), not a 500\n\nA site mapping like form.get(\"email\")!.toString() throws on an absent\nfield; endpoint.ts already wrapped buildPayload for exactly this, the\naction path didn't. Mirrors the endp\n[…]\n <noreply@anthropic.com>\n\n* docs(journal): log #405 — LOW sweep\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "chore: LOW sweep — forms/audit/dashboard hardening, env-doc drift + r…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:50:05Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "a3b48735d7e7370bff5376b3e5805234d9806be5",
          "body": "…ccount runbook (#403)\n\n* feat(reports): GA/Search impersonation-subject failover list\n\nGA_SUBJECT now accepts a comma-separated list of Workspace subjects\ntried in order (single address unchanged as the degenerate case).\nBoth the GA Data client and the Search Console client fall through to\nthe next\n[…]\nboth mixed\norderings through the real fetchSearchPresence path.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(reports): GA/Search impersonation-subject failover list + role-a…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:44:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "2ab91f6125993c32af31bc2f736b0d4a454fdead",
          "body": "… (toFrequency) (#401)\n\n* fix(reports): unrecognized-frequency guard moves to the read boundary (toFrequency)\n\ntoFrequency silently coerced any non-exact Airtable frequency value to\n\"None\" at mapRow time — BEFORE due.ts's '⚠ unrecognized frequency' warn\n(added in #197 precisely to stop a silent unsc\n[…]\nxactly once (adversarial\nreview of #401, test-hygiene finding).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(reports): unrecognized-frequency guard moves to the read boundary…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:39:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4c4a036bc218831088231168576c424e1dac5680",
          "body": "…5, promotional-phrase verticals, glued-URL counting (#404)\n\n* fix(forms): classifier false-positive tuning — non-Latin body-only +25, promotional-phrase verticals, glued-URL counting\n\nMEDIUM-4: non-Latin script scores on the message body only (a native-script\nname is not a spam signal) and the weig\n[…]\nal-phrasing loop so a\nsingle-phrase regression is identifiable.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): classifier false-positive tuning — non-Latin body-only +2…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-15T16:26:41Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "76d39a16ad100406494ac72089d60553f82d6a03",
          "body": "…ight 70→50 (#400)\n\n* fix(forms): map benign Turnstile error-codes to unverifiable; fail weight 70→50\n\nCloudflare returns success:false with error-codes [\"timeout-or-duplicate\"]\nfor a token that merely expired (300s TTL — a human filling a long form) or\nwas re-submitted (double-click / back-then-res\n[…]\nc.com>\n\n* docs(journal): log PR #400 (Turnstile benign error-codes fail-open)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): map benign Turnstile error-codes to unverifiable; fail we…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T22:54:22Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "bcb1682c73aeb6c9d062c2da43b33e95aa46984b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#397)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T16:41:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b08b740c57239faff34a6161e893dbec4d448aab",
          "body": "…jml alert (#399)\n\nws <7.5.11 and 8.x <8.21.0 (memory-exhaustion DoS, via lighthouse/@lhci and\nlibsql/puppeteer-core), js-yaml 3.x <3.15.0 (merge-key DoS backport), and\nprotobufjs <=7.6.2 (GHSA-f38q-mgvj-vph7) get capped pnpm overrides. mjml's\nmj-include traversal has no 4.x patch — GHSA ignored + Dependabot alert\ndismissed tolerable_risk (only repo-committed templates are compiled).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "chore(security): pin ws/js-yaml/protobufjs dev-transitives; dismiss m…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T08:06:16Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "d3a3caf1aa62298089cfea70d0344441e4e8df78",
          "body": "… captions (#398)\n\n* feat(blux): parse .caslider slider marker + media min-height\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n* feat(blux): CarouselSpec + slider-row classification\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n* feat(blux): Carouse\n[…]\ne blockPlainText behavior (entities decoded, hard breaks kept).\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): Carousel slice type — slider bands emit slides + editable…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T07:55:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "259392bf5be2e47e628e2e2d16a7ce594088e1e5",
          "body": "…/maintenance (#396)\n\nThe release workflow has failed on every push to main since the changesets\naccumulated: `changeset version` errors with \"Found changeset X for package\nreddoor-maintenance which is not in the workspace\" — 10 changesets (all the Blux\nones + the smoke-port one) declared the pre-or\n[…]\norla/maintenance → minor). Once this lands on main the\nrelease workflow's version step succeeds and opens the Version Packages PR.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(changeset): correct package name reddoor-maintenance → @reddoorla…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T04:09:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "64e3e099d272a2005844e62830e6cd06cc284b60",
          "body": "… casliders (#395)\n\n* fix(blux): recover captions nested inside a media holder + drop empty casliders\n\nTwo coupled parser fixes for the band-8 archetype (a captioned image slider):\n\n- Media-leaf caption capture (A): Blux slider tiles nest the slide caption\n  (block-title/body/subtitle) INSIDE the .c\n[…]\no-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n* chore(blux): prettier-format the band8 changeset\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): recover captions nested inside a media holder + drop empty…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T02:45:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7e876e5e366f22759f2eaa41c8ad881b1e87bce7",
          "body": "…s, map (#394)\n\nSeven additive faithfulness fixes surfaced by auditing the emit output against\nthe real the-pointe export; none touch the core media-leaf/wrapper-peel path:\n\n- Band backgrounds carry background-size (auto/contain) + non-center\n  background-position (readBgSizing) — corner accents sto\n[…]\nxtract-map, convert, presentation. Unit tests +\ngolden updated; the convert-golden stub resolver now mirrors the real passthrough.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): emit fidelity pass — backgrounds, video, title roles, font…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-14T02:15:52Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "511b815ae6bd2fc655c49fdd0a579c1f076ad033",
          "body": "Blux's grid token `grid-1-s40` / `grid-any-s20` encodes the grid's inter-cell\nspacing (matching `data-spacing`), with the column count in `data-columns`. The\nparser stored that `s` value as `sized` and the render layer treated it as a\nwidth percent — so a single-column stat list (`grid-1-s40`, four \n[…]\nencodes.\nGolden convert snapshot updated (band 3/10 tokens); token + classify + validate\ntests updated to the corrected semantics.\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): parse grid -s<N> as spacing, not cell width (#393)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-13T21:19:36Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d3c32edd826fc820b3d4bfbff772ebb77f33bd34",
          "body": "…il capture (#387)\n\n(1) The site→central ingest call had NO timeout: a central function hung\nmid-deploy left the visitor's submit awaiting until Netlify killed the\nsite function at its 10s sync limit — a broken response instead of the\nfriendly error copy (espada's 2026-07-10 form-e2e warns surfaced \n[…]\nut it (local browser + raw-POST repros all pass; the\nfailure is runner-environment-specific, so the probe itself must name\nthe server response).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(forms): 8s abort budget on submitToIngest + form-e2e failure deta…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-13T18:08:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ef63b0fe44cf4ff377d27fb3908445eea77ef8c5",
          "body": "… (#392)\n\n* feat(blux): faithful-grid emit — media sizing, hard breaks, CTA links\n\nBackport three faithful-to-export extractions the emit pipeline was\ndropping, so future Blux sites inherit them instead of per-site hand-edits:\n\n- Media intrinsic width/aspect/fit off the foreground image holder\n  (in\n[…]\nand subtitle newline robustness. 2475 tests pass.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): faithful-grid emit — media sizing, hard breaks, CTA links…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-13T17:42:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f88ad2101a1d160d9abb92e4c0771c6e3f1d76aa",
          "body": "… (#391)\n\nParser captures a <video>'s CDN base from its src so mediaCdnUrl rebuilds the url offline — a video no longer depends on site.json listing the asset (restores convert's offline invariant). the-pointe converts FAITHFUL offline; no golden churn.",
          "is_bot": false,
          "headline": "fix(blux): resolve <video> media offline via its src-derived CDN base…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-12T06:04:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5039288017dc64529b65c36c1728032858a65b0",
          "body": "…n gate (#390)\n\nOffline fidelity gate: validateLayout diffs the classified SliceSpec[] (source answer key) vs the emitted presentation manifest, naming band/media/map drift. blux convert appends a fidelity report (exits 0); blux validate gates (exits 1 on findings). Shared convertExport; grid-validate golden pins the-pointe → 0 findings.",
          "is_bot": false,
          "headline": "feat(blux): faithful-grid plan 6 — offline layout-signature validatio…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-12T05:54:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e38cf9dea78edd705679c7cc4362a8f64e9b38b",
          "body": "…tation manifest + Prismic-host media) (#389)\n\n* docs(blux): plan 5 — grid emit paths (page doc + presentation manifest + map)\n\n* docs(blux): plan 5 — Prismic-host media (two-phase convert+migrate rewrite)\n\n* fix(blux/grid): data-exec embeds survive as raw leaves (map mount peel)\n\n* feat(blux/grid):\n[…]\nblux/emit): share mediaUrl resolver; golden contiguity tripwire; changeset\n\n* chore(blux): prettier-format plan-5 files\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): faithful-grid plan 5 — grid emit paths (page doc + presen…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-11T23:28:47Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b087dc70f5d240712040f8b9baa941fb4f566e5d",
          "body": "…e (faithful-grid plan 4A) (#388)\n\n* docs(blux): plan 4 — extract-map + LocationMap (+ sanitized map-band fixture)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): extract-map — map config from the rendered initMap script\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n[…]\nx): extract-map review hardening — anchored visibility probe, no toggle holes\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): extract-map stage — map config + real isMapMount predicat…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-11T14:56:40Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "722198eaafa911c6593bacf5c1df4eb9178f2df2",
          "body": "…mit] (#385)\n\nreddoor-website's contact form submits via <input type=\"submit\"> — a\ncompletely standard control the probe's button-only locator never\nmatched, so its first enrolled run burned the 30s click timeout and\nrecorded a false Form E2E OK = fail. Widen the locator to both variants.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(form-e2e): click input[type=submit] too, not only button[type=sub…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-11T00:00:37Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "94073af6268b01448530ec7c9607f0f0c8dd74ff",
          "body": "…lan 2) (#384)\n\n* docs(blux): plan 2 — band classifier + widget router\n\n* feat(blux): SliceSpec IR for the grid band classifier (plan 2)\n\n* feat(blux): node-inspection helpers for band classification\n\n* docs(blux): prettier-format plan 2\n\n* feat(blux): classifyBand skeleton + Grid fallback + barrel \n[…]\n <noreply@anthropic.com>\n\n* docs: changeset for blux band classifier (plan 2)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): band classifier + widget router — Band[] → SliceSpec[] (p…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T07:16:08Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f1d7d1c31321e4eb96408e57fd6962b06701a24c",
          "body": "…r (#383)\n\nThe live runner now refuses to submit to any site whose /health does not\ndeclare forms.testMode: true (strict boolean, fail-closed on unreachable/\nnon-2xx/unparseable) — a new testModeUndeclared outcome maps to a plain\nskip with no details, preserving the prior verdict (distinct from the\n\n[…]\n same FLEET_WRITE_SUMMARY gate + tracking-\nissue alerting as fleet-smoke. Refresh the audit's stale Tasks-5+6\ncomments (both landed 2026-07-08).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(form-e2e): /health declaration preflight + nightly fleet produce…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T02:02:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4dfbec0087c7934854d097d85d85c8ad3e7d899b",
          "body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "chore(release): version packages (#363)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T01:26:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe36b984634725424749959beeea27464421baaa",
          "body": "… fallback (#380)\n\nThe recipe's routes manifest hardcoded hydrationMarker: \"footer\". On a\nbespoke site whose Svelte source never renders a literal <footer> element\n(a capital-F <Footer /> component tag proves nothing), that marker false-\nfails EVERY route check — exactly how la-homelessness-initiati\n[…]\nhe recipe notes.\nNo svelte files at all → no signal → starter default, so the template's\nbyte-fidelity invariant holds for starter-shaped sites.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(smoke-suite): detect the hydration marker — footer → main → body…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T01:25:43Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c899f67893cd8618ca5741f1ce577d798397d0be",
          "body": "…#381)\n\n* feat(smoke-suite): detect the hydration marker — footer → main → body fallback\n\nThe recipe's routes manifest hardcoded hydrationMarker: \"footer\". On a\nbespoke site whose Svelte source never renders a literal <footer> element\n(a capital-F <Footer /> component tag proves nothing), that marke\n[…]\nself\nso every re-exporter inherits the R1.1 binding on its next package bump.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(configs): shared playwright-a11y base honors REDDOOR_SMOKE_PORT (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-10T01:04:25Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "58f0b665fa0561fec1958eca02a16b5833a4e1ee",
          "body": "… (#379)\n\nThe smoke audit built its failure summary from stderr.slice(0,200), but\nPlaywright writes its failing-test list (which test, expected vs received)\nto stdout — so the nightly fleet-smoke run captured only a `[WebServer] npm\nwarn …` line and hid what actually broke. Add summarizeSmokeFailure\n[…]\nad + the \"N\nfailed\" tally from stdout (ANSI-stripped, capped at 300 chars), falling\nback to stderr only when stdout carried no reporter output.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(smoke): surface the real Playwright failure, not stderr npm noise…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T22:44:31Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "46b0387a13061d32582e14b84f4c790e04478be0",
          "body": "…(plan 1) (#378)\n\n* docs(blux): plan 1 — grid-tree parser (rendered index.html → Band[])\n\nRecovered plan doc onto a clean isolated worktree branch after concurrent\nfleet-health work thrashed the main working directory's HEAD. Spec already\nlanded on main; this restores the implementation plan.\n\nCo-Au\n[…]\ner-format grid module; ignore html golden fixture\n\n* docs(blux): clarify forward-declared widget + Band.index semantics\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): grid-tree parser — rendered index.html → faithful Band[] …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:43:32Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "52c19807456b65654198649b446a5ae7c414d646",
          "body": "…kpit) (#377)\n\nA site typed \"launch period\" is PRE-LIVE prep (Status flips to \"maintenance\" at\ngo-live via a Launch report), but it was enrolled in both \"this site is live\"\nclassifiers, so a not-yet-live site (e.g. alamo-anatomy) was audited as production\n(deploy/domain/uptime/CMS fail → red), draft\n[…]\nou\" feed, and counted as pre-launch (not healthy/broken) in the verdict.\n\nVerified: pnpm test (234 files / 2297 tests), typecheck + lint clean.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix: pre-launch sites no longer alarm (audits, report scheduling, coc…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:43:05Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7d1e33e6fe544b55f9b302f8943a92a299cfbc09",
          "body": "…l (#376)\n\nAdds the missing producer so the Report Health Gate's Testing (Interactions &\nAnimations) check stops being override-only: a nightly workflow runs the `smoke`\naudit fleet-wide and writes Smoke OK / Last Smoke At to Airtable.\n\nTwo parts:\n\n1. Fix the smoke audit's install gap (REQUIRED — wi\n[…]\nthe gate stays green during\n   rollout.\n\nVerified: pnpm test (233 files / 2290 tests, incl. 3 new smoke install tests),\ntypecheck + lint clean.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(smoke): nightly fleet-smoke producer for the Smoke OK gate signa…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:43:02Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "689b8a2ac304d6666e6723a56eb05355c72a8df0",
          "body": "…nds (#375)\n\nOnly `audit` forwarded `opts.workdir` into resolveSites; the eight fleet recipe\ncommands (health-endpoint, smoke-suite, svelte-codemods, init, bump-deps,\nconvert-to-pnpm, sync-configs, upgrade) dropped it. resolveSites consumes workdir\nonly on the `--fleet airtable` branch (site.path = \n[…]\n each\ncommand forwards workdir, and that it's omitted when not supplied.\n\nVerified: pnpm test (234 files / 2296 tests), typecheck + lint clean.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(cli): forward --workdir to resolveSites in all fleet recipe comma…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T21:42:48Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4f83cbc867f424deb366515c0a4d38b64d8eb69c",
          "body": "…vitest (#374)\n\nThe fleet-smoke batch red'd on 10 of 11 sites: the recipe added\n`test: \"vitest run\"` (and `test:unit`) unconditionally, but the shared CI runs\nthe `test` script when present, so sites without vitest failed with\n`vitest: not found`. Only alamo-anatomy (which has vitest) passed.\n\nGate \n[…]\nwright entry point the future fleet-smoke workflow will run).\n\nNew test covers the vitest-less site. Full suite green (233 files / 2287 tests).\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(recipes): smoke-suite adds vitest scripts only when the site has …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T20:00:42Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c05ac473acace7723c6dc135892f0a3454d38821",
          "body": "…g (#373)\n\nThe fleet /health rollout showed a single hardcoded template style reds the CI\nformat check on sites whose prettier config differs (quotes/tabs/printWidth).\nhealth-endpoint (#372) fixed this inline; smoke-suite writes several files and\nhad the same latent bug. Extract the shared `formatWi\n[…]\nose — never an operator\n  file it left untouched — before committing.\n\nVerified: pnpm test (233 files / 2286 tests), typecheck, lint all green.\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(recipes): format smoke-suite output to each site's prettier confi…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T19:37:47Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "398fb367842fba14616cbe4c5fea03904c9899e3",
          "body": "…Prismic variant) (#372)\n\n* docs(blux): spec — faithful grid slices (replaces archetype page mapping)\n\nReplan the design phase: parse the Blux rendered index.html into a recursive\ngrid tree, classify each band by grid signature to pattern slices with a generic\nrecursive Grid fallback, and route map/\n[…]\nstarter is one), and the Prismic-path\ntests assert against it.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(recipes): make health-endpoint fleet-robust (site prettier + non-…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T19:26:46Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "45b35238c8ba51ea26f75aa983a4d832db2ca998",
          "body": "…Health Gate real signal fleet-wide (#371)\n\n* docs(recipes): spec — fleet /health + smoke rollout (two recipes)\n\nDesign for propagating the starter's /health endpoint and smoke suite onto\nthe existing fleet so the Report Health Gate has real signal fleet-wide.\nTwo idempotent, heterogeneity-resilient\n[…]\n and\nfor the noop-from-apply path that still surfaces the config flag note.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(recipes): fleet /health + smoke-suite rollout — give the Report …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T17:53:23Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "7c80dd8a3d4d2a78b92e9f8347baa8351925b5e7",
          "body": "…gate (#370)\n\n* docs(reports): spec — auto-tick coverage extension (6 of 7 manual items)\n\nEvidence sources for Deploy, Tested-After-Updates, Uptime, Page Titles &\nMeta, Form Functionality, and CMS Checked, following the existing fail-safe\naudit->Airtable->evidence pattern. Honest proxy ticks (note s\n[…]\n174 tests, coverage above floors,\ntypecheck/eslint/build/test:dist all pass.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(reports): Report Health Gate — checklist becomes a site-CI send …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T17:50:21Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "32c92bbb8e602131f56c811cd5b31e45702144f5",
          "body": "…#369)\n\n* feat(blux): emit the .txt-role utility layer into theme.css\n\nblux emit now appends one `.txt-role-textN :is(h1…h6,p)` rule per text role\ndirectly after the @theme block, built from the IR's text styles. A converted\nsite imports the emitted theme.css and gets both the role tokens and the\nut\n[…]\n163 tests, typecheck, build, test:dist all green.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit .txt-role utilities + blux validate coverage check (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T08:34:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f265d2ee718eb6c38035f01931136e4a399d18e5",
          "body": "…me.css + styles manifest (#368)\n\n* feat(blux): parse export style data — text roles + block styles → theme.css + styles manifest\n\nThe design pass was reverse-engineering fonts and layout from screenshots\nwhile the export carried the answers as data. normalizeTheme now parses the\nreal styles.text sh\n[…]\nchable path —\narchetype/normalize never emit collection_list — so left as-is.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): parse export style data — text roles + block styles → the…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-08T00:15:02Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "ab664c1c340565a2ff073c26b01b9cf9b8c2aa53",
          "body": "…config (#367)\n\n* fix(blux): display text lives in title/body — _title/_body are style config\n\nBlux stores a block's display text in title/body; the underscore twins are\nper-element style objects where class:\"disable\" (or the bare string\n\"disable\") hides the element on the rendered site. The normali\n[…]\ns-list token, numeric text\ncoerced instead of dropped, migrated text trimmed.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): display text lives in title/body — _title/_body are style …",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T17:50:45Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "58f62eb51f2f1752b0030fd50dbe545adf2024ed",
          "body": "The kept-as-grid path also dropped a container's own content: a\nmedia_text-shaped section carrying one flat-leaf child was 'kept' as a\nsection_grid, whose primary has no media/body slot. Containers are now\nkeepable only when their own content is at most a heading; childless\ncontainers with media/body are rewritten to media_text/rich_text.\nFound in the thePointe acceptance loop: 7 images still missing after #365.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): containers with their own media/body always explode (#366)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T05:08:08Z",
          "body_truncated": false,
          "is_coding_agent": true
        },
        {
          "oid": "06b9c99e7152f3ffbc3bc8fa6f4034c26663734d",
          "body": "… foreground images (#365)\n\nAcceptance-run finding on thePointe: 8 real images vanished vs the naive\nwalker's used-set. Two causes — (1) a media_text-shaped section that happens\nto carry children is archetyped 'grid' and exploding it emitted only the\nheading, dropping its own media/body; (2) a hero \n[…]\nll own content (media_text when they carry media, rich_text\notherwise), and heroes with two images emit a sibling media_text for the\nforeground.\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "fix(blux): exploded containers keep their own content; heroes surface…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T05:02:37Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "749d47217a5491f6e0201bfc39d72044eb9dfc6d",
          "body": "…#364)\n\n* docs(blux): Plan 4 — emit/runner hardening from the Pointe live run\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): HTML-level rich-text coercion helpers\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n* feat(blux): coerce rich text to slice-model block rest\n[…]\nn markers\n- probe: CDN hosts shared with assets.ts; mime-aware ext candidates\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): Plan 4 — emit/runner hardening from the Pointe live run (…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T04:54:21Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "95e7aa338510048f83c9ed974ced093f34ae70c1",
          "body": "Finishes Plan 3's remaining task and gives the pipeline a CLI surface:\n\n- blux emit <exportDir>: site.json + rendered HTML -> assembleIR ->\n  migration-plan.json, customtypes/*.json, theme.css, review-manifest.json,\n  ir.json + a diagnostics summary. Deterministic, offline.\n- blux migrate <outDir|pl\n[…]\nean; consumers never resolve them).\n- run-migration.ts excluded from the coverage graph (live I/O; the plan it\n  consumes is fully unit-tested).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): blux CLI (emit + migrate) + gated live Prismic runner (#362)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-07T03:20:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "c46cace15934846cecac5c8d056b2891378ca990",
          "body": "… (#361)\n\nDeterministic pure builders (no Prismic deps): emitThemeCss (IR → Tailwind v4\n@theme), buildCustomType (feed → repeatable custom-type schema), sectionToSlice\n(IR section → Prismic slice shape matching the Plan-1 models), buildMigrationPlan\n(custom types + page docs with slices + collection\n[…]\nion/createAsset/htmlAsRichText/writeClient.migrate) is documented in\nthe plan and deferred to the creds-gated import step (keeps this dep-free).\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): emit stage — IR → Prismic migration plan + theme + review…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-06T07:42:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "d64d62bccfaede1c4560542a452476e6586475c6",
          "body": "…360)\n\n* docs(blux): Plan 2 — deterministic pipeline core\n\n* feat(blux): deterministic pipeline core — Blux export → Content IR\n\nparse → normalize (+ archetype mapping) + model-collections + resolve-assets\n(pure CDN-url layer) → assembleIR, all pure/deterministic. Blux feeds become\nrepeatable Custom\n[…]\nre +\nedge cases; asserts deep-equal on re-run. No network in the tested path.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "feat(blux): deterministic pipeline core (Blux export → Content IR) (#…",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-06T07:19:24Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b0b1a338ad4fd96d9c49a3328e86f9ded600a29b",
          "body": "* docs(blux): design spec for reusable Blux→stack conversion pipeline\n\nIR-mediated, deterministic (no-AI) pipeline: parse → normalize +\nmodel-collections → Content IR → emit-prismic (page docs + Custom Types\nfrom Blux feeds + CDN→Prismic asset upload) + emit-theme → review gallery.\nBlux feeds (18 ac\n[…]\n Fable 5 <noreply@anthropic.com>\n\n* docs(blux): record Plan 1 execution notes + deviations\n\n* docs(blux): prettier-format spec + plan\n\n---------\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "docs(blux): conversion pipeline design spec + Plan 1 (#359)",
          "author_name": "Tucker Lemos",
          "author_login": "tucksravin",
          "committed_at": "2026-07-06T06:55:54Z",
          "body_truncated": true,
          "is_coding_agent": true
        }
      ],
      "releases_count": 100,
      "commits_last_year": 563,
      "latest_release_at": "2026-07-20T04:13:36Z",
      "latest_release_tag": "v0.75.1",
      "releases_from_tags": false,
      "days_since_last_push": 1,
      "active_weeks_last_year": 10,
      "days_since_latest_release": 6,
      "mean_days_between_releases": 2.1
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": false,
      "has_contributing": false,
      "health_percentage": 25,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "@reddoorla/maintenance",
          "exists": true,
          "license": "MIT",
          "keywords": [],
          "ecosystem": "npm",
          "matches_repo": true,
          "registry_url": "https://www.npmjs.com/package/@reddoorla/maintenance",
          "is_deprecated": false,
          "latest_version": "0.75.1",
          "repository_url": "https://github.com/reddoorla/reddoor-maintenance",
          "versions_count": 107,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 5142,
          "first_published_at": "2026-05-21T04:54:34.852000Z",
          "latest_published_at": "2026-07-20T04:13:34.611000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 6
        }
      ]
    },
    "popularity": {
      "forks": 0,
      "stars": 0,
      "watchers": 0,
      "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": 1
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "recipes"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 48396,
      "source_files_sampled": 588,
      "oversized_source_files": 0,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 153,
        "malicious_count": 0,
        "assessed_package": "npm:@reddoorla/maintenance@0.75.1",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "@axe-core/playwright",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.11.3"
        },
        {
          "name": "@eslint/js",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.0.1"
        },
        {
          "name": "@playwright/test",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.59.1"
        },
        {
          "name": "cac",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.7.14"
        },
        {
          "name": "eslint",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.3.0"
        },
        {
          "name": "eslint-config-prettier",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.1.1"
        },
        {
          "name": "eslint-plugin-svelte",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.1.0"
        },
        {
          "name": "globals",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^17.6.0"
        },
        {
          "name": "listr2",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.2.1"
        },
        {
          "name": "node-html-parser",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^9.0.0"
        },
        {
          "name": "prettier",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.1.1"
        },
        {
          "name": "prettier-plugin-svelte",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.2.6"
        },
        {
          "name": "tinyglobby",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.2.10"
        },
        {
          "name": "typescript-eslint",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^8.59.1"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@axe-core/playwright",
            "direct": true,
            "version": "4.11.3",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": true,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": true,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": true,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": true,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-config-prettier",
            "direct": true,
            "version": "10.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-svelte",
            "direct": true,
            "version": "3.17.1",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": true,
            "version": "16.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": true,
            "version": "17.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "listr2",
            "direct": true,
            "version": "10.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-html-parser",
            "direct": true,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": true,
            "version": "2.8.8",
            "ecosystem": "npm"
          },
          {
            "name": "prettier",
            "direct": true,
            "version": "3.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "prettier-plugin-svelte",
            "direct": true,
            "version": "3.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": true,
            "version": "0.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": true,
            "version": "0.2.17",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": true,
            "version": "8.59.4",
            "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/parser",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "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": "@changesets/apply-release-plan",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/assemble-release-plan",
            "direct": false,
            "version": "6.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/changelog-git",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/cli",
            "direct": false,
            "version": "2.31.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/errors",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-dependents-graph",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-release-plan",
            "direct": false,
            "version": "4.0.16",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/get-version-range-type",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/git",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/logger",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/parse",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/pre",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/read",
            "direct": false,
            "version": "0.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/should-skip-package",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/types",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@changesets/write",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/core",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.11.2",
            "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": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.23.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/ecma402-abstract",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/fast-memoize",
            "direct": false,
            "version": "2.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/icu-messageformat-parser",
            "direct": false,
            "version": "2.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/icu-skeleton-parser",
            "direct": false,
            "version": "1.8.16",
            "ecosystem": "npm"
          },
          {
            "name": "@formatjs/intl-localematcher",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "@google-analytics/data",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@grpc/grpc-js",
            "direct": false,
            "version": "1.14.4",
            "ecosystem": "npm"
          },
          {
            "name": "@grpc/proto-loader",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.8",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/types",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/colour",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-freebsd-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-ppc64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-riscv64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-ppc64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-riscv64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-webcontainers-wasm32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-arm64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "@inquirer/external-editor",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/cliui",
            "direct": false,
            "version": "8.0.2",
            "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": "@js-sdsl/ordered-map",
            "direct": false,
            "version": "4.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@lhci/cli",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "@lhci/utils",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/client",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/core",
            "direct": false,
            "version": "0.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/darwin-arm64",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/darwin-x64",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/hrana-client",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/isomorphic-fetch",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/isomorphic-ws",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/kysely-libsql",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-arm64-gnu",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-arm64-musl",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-x64-gnu",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/linux-x64-musl",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@libsql/win32-x64-msvc",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/find-root",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@manypkg/get-packages",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/wasm-runtime",
            "direct": false,
            "version": "1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@neon-rs/load",
            "direct": false,
            "version": "0.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@netlify/functions",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "@netlify/types",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@one-ini/wasm",
            "direct": false,
            "version": "0.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@oxc-project/types",
            "direct": false,
            "version": "0.139.0",
            "ecosystem": "npm"
          },
          {
            "name": "@paulirish/trace_engine",
            "direct": false,
            "version": "0.0.53",
            "ecosystem": "npm"
          },
          {
            "name": "@pkgjs/parseargs",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@polka/url",
            "direct": false,
            "version": "1.0.0-next.29",
            "ecosystem": "npm"
          },
          {
            "name": "@prismicio/client",
            "direct": false,
            "version": "7.21.8",
            "ecosystem": "npm"
          },
          {
            "name": "@prismicio/migrate",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/aspromise",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/base64",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/codegen",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/eventemitter",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/fetch",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/float",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/path",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/pool",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/utf8",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@puppeteer/browsers",
            "direct": false,
            "version": "2.13.2",
            "ecosystem": "npm"
          },
          {
            "name": "@react-email/render",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-android-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-darwin-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-freebsd-x64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-arm64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-ppc64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-s390x-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-gnu",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-linux-x64-musl",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-openharmony-arm64",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-wasm32-wasi",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-arm64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/binding-win32-x64-msvc",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "@selderee/plugin-htmlparser2",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry-internal/tracing",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/core",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/integrations",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/node",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/types",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/utils",
            "direct": false,
            "version": "7.120.4",
            "ecosystem": "npm"
          },
          {
            "name": "@stablelib/base64",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@standard-schema/spec",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/acorn-typescript",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/acorn-typescript",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/kit",
            "direct": false,
            "version": "2.70.1",
            "ecosystem": "npm"
          },
          {
            "name": "@sveltejs/vite-plugin-svelte",
            "direct": false,
            "version": "7.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@tootallnate/quickjs-emscripten",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "npm"
          },
          {
            "name": "@tybys/wasm-util",
            "direct": false,
            "version": "0.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/cookie",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/esrecurse",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mjml",
            "direct": false,
            "version": "4.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mjml-core",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "12.20.55",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.19.19",
            "ecosystem": "npm"
          },
          {
            "name": "@types/trusted-types",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ws",
            "direct": false,
            "version": "8.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yauzl",
            "direct": false,
            "version": "2.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.59.4",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/coverage-v8",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "abbrev",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "abort-controller",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "abortcontroller-polyfill",
            "direct": false,
            "version": "1.7.8",
            "ecosystem": "npm"
          },
          {
            "name": "accepts",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "airtable",
            "direct": false,
            "version": "0.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-colors",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-escapes",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "4.1.1",
            "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": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "6.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "aria-query",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-flatten",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "array-union",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ast-types",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "ast-v8-to-istanbul",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "axe-core",
            "direct": false,
            "version": "4.11.4",
            "ecosystem": "npm"
          },
          {
            "name": "axobject-query",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "b4a",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "bare-events",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "bare-fs",
            "direct": false,
            "version": "4.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-os",
            "direct": false,
            "version": "3.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bare-stream",
            "direct": false,
            "version": "2.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "bare-url",
            "direct": false,
            "version": "2.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "basic-ftp",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "bcp-47-match",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "better-path-resolve",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "bignumber.js",
            "direct": false,
            "version": "9.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "body-parser",
            "direct": false,
            "version": "1.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-crc32",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-equal-constant-time",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "bundle-require",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bytes",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "call-bound",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "camel-case",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase",
            "direct": false,
            "version": "5.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "chardet",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "cheerio",
            "direct": false,
            "version": "1.0.0-rc.12",
            "ecosystem": "npm"
          },
          {
            "name": "cheerio-select",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-launcher",
            "direct": false,
            "version": "0.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "chrome-launcher",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "chromium-bidi",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "clean-css",
            "direct": false,
            "version": "4.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "2.1.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": "cli-width",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "1.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "2.20.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "compressible",
            "direct": false,
            "version": "2.0.18",
            "ecosystem": "npm"
          },
          {
            "name": "compression",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "confbox",
            "direct": false,
            "version": "0.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "config-chain",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "configstore",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "consola",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "content-disposition",
            "direct": false,
            "version": "0.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "content-type",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "cookie",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "cookie-signature",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "crypto-random-string",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csp_evaluator",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "css-select",
            "direct": false,
            "version": "5.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "css-selector-parser",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "css-what",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "2.6.9",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decamelize",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "deepmerge",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "define-lazy-prop",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "degenerator",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "depd",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "destroy",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-indent",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devalue",
            "direct": false,
            "version": "5.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "devalue",
            "direct": false,
            "version": "5.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devtools-protocol",
            "direct": false,
            "version": "0.0.1467305",
            "ecosystem": "npm"
          },
          {
            "name": "devtools-protocol",
            "direct": false,
            "version": "0.0.1608973",
            "ecosystem": "npm"
          },
          {
            "name": "dir-glob",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "direction",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "dom-serializer",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "domelementtype",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "domhandler",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "domutils",
            "direct": false,
            "version": "3.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "dot-prop",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "duplexify",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "eastasianwidth",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ecdsa-sig-formatter",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "editorconfig",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "ee-first",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "9.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "encodeurl",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "enquirer",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "environment",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-goat",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-html",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escodegen",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "9.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esm-env",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "11.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "esprima",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrap",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "etag",
            "direct": false,
            "version": "1.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "event-target-shim",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "eventemitter3",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "events-universal",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": false,
            "version": "4.22.2",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extendable-error",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "external-editor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "extract-zip",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-fifo",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-sha256",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fd-slicer",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "fetch-blob",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "figures",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "finalhandler",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fix-dts-default-cjs-exports",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "foreground-child",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "formdata-polyfill",
            "direct": false,
            "version": "4.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fresh",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gaxios",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "gcp-metadata",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-east-asian-width",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-uri",
            "direct": false,
            "version": "6.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "10.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "globby",
            "direct": false,
            "version": "11.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "google-auth-library",
            "direct": false,
            "version": "10.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "google-gax",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "google-logging-utils",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-embedded",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-html",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-from-parse5",
            "direct": false,
            "version": "8.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-has-property",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-is-element",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-minify-whitespace",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-parse-selector",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-select",
            "direct": false,
            "version": "6.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-html",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-string",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "hastscript",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-escaper",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "html-minifier",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-to-text",
            "direct": false,
            "version": "9.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "html-void-elements",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "htmlparser2",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-errors",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-link-header",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "human-id",
            "direct": false,
            "version": "4.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.4.24",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "image-ssim",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "imgix-url-builder",
            "direct": false,
            "version": "0.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "immediate",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "inquirer",
            "direct": false,
            "version": "6.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "intl-messageformat",
            "direct": false,
            "version": "10.7.18",
            "ecosystem": "npm"
          },
          {
            "name": "ip-address",
            "direct": false,
            "version": "10.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ipaddr.js",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-docker",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "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-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-obj",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-reference",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-subdir",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-typedarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-windows",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "is-wsl",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isomorphic-fetch",
            "direct": false,
            "version": "3.0.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": "jackspeak",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "joycon",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jpeg-js",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "js-base64",
            "direct": false,
            "version": "3.7.8",
            "ecosystem": "npm"
          },
          {
            "name": "js-beautify",
            "direct": false,
            "version": "1.15.4",
            "ecosystem": "npm"
          },
          {
            "name": "js-cookie",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "js-library-detector",
            "direct": false,
            "version": "6.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "3.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-bigint",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "juice",
            "direct": false,
            "version": "10.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jwa",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jws",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "kleur",
            "direct": false,
            "version": "4.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "known-css-properties",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "npm"
          },
          {
            "name": "kysely",
            "direct": false,
            "version": "0.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "leac",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "legacy-javascript",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "libsql",
            "direct": false,
            "version": "0.3.19",
            "ecosystem": "npm"
          },
          {
            "name": "lie",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse",
            "direct": false,
            "version": "12.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse-logger",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse-logger",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "lighthouse-stack-packs",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-android-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-arm64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-darwin-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-freebsd-x64",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm-gnueabihf",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-arm64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-gnu",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-linux-x64-musl",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-arm64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lightningcss-win32-x64-msvc",
            "direct": false,
            "version": "1.33.0",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "load-tsconfig",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "localforage",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-character",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash-es",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.camelcase",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.startcase",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "log-update",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "long",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "lookup-closest-locale",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "lower-case",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "10.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "7.18.3",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "magicast",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "make-dir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "marky",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "media-typer",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "mensch",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "merge-descriptors",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "metaviewport-parser",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "methods",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.54.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-function",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mitt",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mjml",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-accordion",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-body",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-button",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-carousel",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-cli",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-column",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-core",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-divider",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-group",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-attributes",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-breakpoint",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-font",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-html-attributes",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-preview",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-style",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-head-title",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-hero",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-image",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-migrate",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-navbar",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-parser-xml",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-preset-core",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-raw",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-section",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-social",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-spacer",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-table",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-text",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-validator",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mjml-wrapper",
            "direct": false,
            "version": "4.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "mlly",
            "direct": false,
            "version": "1.8.2",
            "ecosystem": "npm"
          },
          {
            "name": "mri",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mrmime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mute-stream",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.16",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "negotiator",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "netmask",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "no-case",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-domexception",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "nopt",
            "direct": false,
            "version": "7.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-hash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-inspect",
            "direct": false,
            "version": "1.13.4",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "obug",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "on-finished",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "on-headers",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "7.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "open",
            "direct": false,
            "version": "8.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "outdent",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-filter",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-map",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-try",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pac-proxy-agent",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pac-resolver",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-json-from-dist",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "package-manager-detector",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "param-case",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-cache-control",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "7.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "parse5-htmlparser2-tree-adapter",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "parseley",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "npm"
          },
          {
            "name": "parseurl",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "1.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-to-regexp",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "path-type",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "peberminta",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "pend",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "pkg-types",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.23",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-safe-parser",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-scss",
            "direct": false,
            "version": "4.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "progress",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "promise-limit",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "proto-list",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "proto3-json-serializer",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "protobufjs",
            "direct": false,
            "version": "7.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-addr",
            "direct": false,
            "version": "2.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-agent",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "proxy-from-env",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "puppeteer-core",
            "direct": false,
            "version": "24.43.1",
            "ecosystem": "npm"
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.15.2",
            "ecosystem": "npm"
          },
          {
            "name": "quansync",
            "direct": false,
            "version": "0.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "range-parser",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "raw-body",
            "direct": false,
            "version": "2.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": false,
            "version": "19.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": false,
            "version": "19.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "react-promise-suspense",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "read-yaml-file",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-minify-whitespace",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rehype-parse",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "relateurl",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-main-filename",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "resend",
            "direct": false,
            "version": "4.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry-request",
            "direct": false,
            "version": "8.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rfdc",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "5.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "robots-parser",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "rolldown",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.4",
            "ecosystem": "npm"
          },
          {
            "name": "run-async",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "rxjs",
            "direct": false,
            "version": "6.6.7",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "selderee",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "5.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.5",
            "ecosystem": "npm"
          },
          {
            "name": "send",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "serve-static",
            "direct": false,
            "version": "1.16.3",
            "ecosystem": "npm"
          },
          {
            "name": "set-blocking",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "set-cookie-parser",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "setprototypeof",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": false,
            "version": "0.35.3",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-list",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-map",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "side-channel-weakmap",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "sirv",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "slash",
            "direct": false,
            "version": "3.0.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": "slick",
            "direct": false,
            "version": "1.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "smart-buffer",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "socks",
            "direct": false,
            "version": "2.8.9",
            "ecosystem": "npm"
          },
          {
            "name": "socks-proxy-agent",
            "direct": false,
            "version": "8.0.5",
            "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": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "spawndamnit",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "speedline-core",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "standardwebhooks",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "statuses",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "stream-events",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "stream-shift",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "streamx",
            "direct": false,
            "version": "2.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "5.1.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": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "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": "stubs",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "5.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "svelte",
            "direct": false,
            "version": "5.55.9",
            "ecosystem": "npm"
          },
          {
            "name": "svelte-eslint-parser",
            "direct": false,
            "version": "1.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "svix",
            "direct": false,
            "version": "1.94.0",
            "ecosystem": "npm"
          },
          {
            "name": "tar-fs",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "teeny-request",
            "direct": false,
            "version": "10.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "teex",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "term-size",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "text-decoder",
            "direct": false,
            "version": "1.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "third-party-web",
            "direct": false,
            "version": "0.26.7",
            "ecosystem": "npm"
          },
          {
            "name": "third-party-web",
            "direct": false,
            "version": "0.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "through",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "6.1.86",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-icann",
            "direct": false,
            "version": "6.1.86",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "toidentifier",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "totalist",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "0.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "tree-kill",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsup",
            "direct": false,
            "version": "8.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "4.22.3",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-is",
            "direct": false,
            "version": "1.6.18",
            "ecosystem": "npm"
          },
          {
            "name": "typed-query-selector",
            "direct": false,
            "version": "2.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "typedarray-to-buffer",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ufo",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "uglify-js",
            "direct": false,
            "version": "3.19.3",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unique-string",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-remove",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "unpipe",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "upper-case",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "utils-merge",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "14.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "valid-data-url",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "vary",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-location",
            "direct": false,
            "version": "5.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "vitefu",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "4.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "web-namespaces",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-resource-inliner",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-streams-polyfill",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "webdriver-bidi-protocol",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-fetch",
            "direct": false,
            "version": "3.6.20",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which-module",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "write-file-atomic",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "7.5.11",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "xdg-basedir",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "1.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "15.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "13.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "18.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yauzl",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "zimmerframe",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "3.25.76",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 976,
        "direct_count": 17,
        "indirect_count": 959
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 1,
        "merged_prs": 455,
        "open_issues": 0,
        "closed_ratio": 1,
        "closed_issues": 5,
        "closed_unmerged_prs": 2
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "tucksravin",
          "commits": 474,
          "avatar_url": "https://avatars.githubusercontent.com/u/43099664?v=4"
        }
      ],
      "contributors_sampled": 1,
      "top_contributor_share": 1
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml",
        "daily-reports.yml",
        "fleet-form-e2e.yml",
        "fleet-lighthouse.yml",
        "fleet-security.yml",
        "fleet-smoke.yml",
        "release-health.yml",
        "release.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "eslint.config.js"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json",
        "pnpm-lock.yaml"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "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/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "project was created within the last 90 days. Please review its contents carefully",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": null,
            "reason": "packaging workflow not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": null,
            "reason": "no releases found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 6,
            "reason": "4 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "467c81d7a1c4422dc5d61556d96e525ad69be462",
        "ran_at": "2026-07-26T04:27:02Z",
        "aggregate_score": 3.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-25T15:41:55Z",
      "oldest_open_prs": [
        {
          "number": 451,
          "created_at": "2026-07-22T22:20:33Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-25T03:35:44Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": []
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/reddoorla/reddoor-maintenance",
    "host": "github.com",
    "name": "reddoor-maintenance",
    "owner": "reddoorla"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 59,
      "inputs": {
        "security": 46,
        "vitality": 77,
        "community": 33,
        "governance": 55,
        "engineering": 76
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 77,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "moderate",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "commits_last_year": 563,
              "human_commit_share": 1,
              "days_since_last_push": 1,
              "active_weeks_last_year": 10
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "10/52 weeks with commits",
                "points": 6.9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 10
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "563 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 563
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "v0.75.1",
              "releases_from_tags": false,
              "days_since_latest_release": 6,
              "mean_days_between_releases": 2.1
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 6 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~2.1 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 2.1
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "at_risk",
        "name": "Community & Adoption",
        "value": 33,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "critical",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 1,
            "inputs": {
              "forks": 0,
              "stars": 0,
              "watchers": 0,
              "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": "0 watchers",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 0
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "moderate",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 50,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          },
          {
            "key": "ecosystem_adoption",
            "band": "moderate",
            "name": "Ecosystem adoption (downloads)",
            "note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "registry_dependents"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 62,
            "inputs": {
              "packages": [
                "@reddoorla/maintenance"
              ],
              "dependents": null,
              "ecosystems": "npm",
              "total_downloads": null,
              "monthly_downloads": 5142
            },
            "components": [
              {
                "key": "monthly_downloads",
                "name": "Monthly downloads",
                "detail": "5,142 downloads/month across npm",
                "points": 49.5,
                "status": "partial",
                "details": [
                  {
                    "code": "downloads_monthly",
                    "params": {
                      "count": 5142,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 80
              },
              {
                "key": "registry_dependents",
                "name": "Registry dependents",
                "detail": "not reported by this ecosystem",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "not_reported_by_this_ecosystem",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 55,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "critical",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 10,
            "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 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "excellent",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "merged_prs": 455,
              "open_issues": 0,
              "closed_issues": 5,
              "issue_closed_ratio": 1,
              "closed_unmerged_prs": 2
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "100% of issues closed",
                "points": 46.8,
                "status": "met",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 100
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "455/457 decided PRs merged",
                "points": 38.1,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 455,
                      "decided": 457
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 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": 42,
            "inputs": {
              "followers": 1,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "reddoorla",
              "public_repos": 19,
              "account_age_days": 64
            },
            "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 reddoorla",
                "points": 2.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 1,
                      "login": "reddoorla"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "19 public repos, account ~0 yr old",
                "points": 9.8,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 19
                    }
                  },
                  {
                    "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": [
                "@reddoorla/maintenance"
              ],
              "ecosystems": "npm",
              "any_deprecated": false,
              "min_days_since_publish": 6
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on npm",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "npm"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 6 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 6
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "107 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 107
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 76,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "8 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 8
                    }
                  }
                ],
                "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": "eslint.config.js",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "moderate",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 65,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": false
            },
            "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": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 46,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging",
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 32,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 16,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 2,
              "scorecard_aggregate": 3.2
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "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/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "project was created within the last 90 days. Please review its contents carefully",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow 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 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "no releases found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "4 existing vulnerabilities detected",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "excellent",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the npm:@reddoorla/maintenance@0.75.1 runtime dependency closure — what installing the published package pulls in — 153 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:@reddoorla/maintenance@0.75.1",
                  "assessed": 153
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 153,
              "unassessed_packages": 0,
              "affected_by_severity": "none",
              "direct_affected_packages": 0
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "no direct dependency carries a known advisory",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "no_direct_advisories",
                    "params": {}
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "no indirect dependency carries a known advisory",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "no_indirect_advisories",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory carries a publication date",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_no_publication_date",
                    "params": {}
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 153,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 1
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 59,
        "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": "100 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 100,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 64,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "package-lock.json",
                "pnpm-lock.yaml"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "tsconfig.json"
              ],
              "agent_commit_share": 0.89,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "eslint.config.js",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.js"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "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": "89 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 89,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 48396,
              "source_files_sampled": 588,
              "oversized_source_files": 0
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "0/588 source files over 60KB",
                "points": 55,
                "status": "met",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 588,
                      "oversized": 0
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "recipes"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "recipes",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "recipes"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [],
  "report_type": "repository",
  "generated_at": "2026-07-26T04:27:18.001633Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/reddoorla/reddoor-maintenance.svg",
  "full_name": "reddoorla/reddoor-maintenance",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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 statisticsnpm.