原始 JSON 报告 机器可读
{
"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"
}