JSON-Rohbericht maschinenlesbar
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 14884,
"has_wiki": true,
"homepage": null,
"languages": {
"Go": 235028,
"CSS": 3945,
"MDX": 144484,
"Nix": 6613,
"Just": 5320,
"Rust": 4853904,
"Astro": 1116,
"Shell": 19023,
"JavaScript": 11779,
"TypeScript": 4347751
},
"pushed_at": "2026-07-22T11:06:39Z",
"created_at": "2025-06-21T10:08:09Z",
"owner_type": "Organization",
"updated_at": "2026-07-22T10:55:19Z",
"description": "The SmoothBricks monorepo",
"is_archived": false,
"is_disabled": false,
"license_spdx": null,
"default_branch": "main",
"license_spdx_raw": null,
"primary_language": "Rust",
"significant_languages": [
"Rust",
"TypeScript"
]
},
"owner": {
"blog": "https://smoothbricks.dev",
"name": "SmoothBricks",
"type": "Organization",
"login": "smoothbricks",
"company": null,
"location": null,
"followers": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/144062606?v=4",
"created_at": "2023-09-04T19:52:50Z",
"is_verified": null,
"public_repos": 7,
"account_age_days": 1056
},
"license": {
"state": "absent",
"spdx_id": null,
"raw_spdx": null,
"file_present": false,
"scorecard_found": false,
"profile_has_license": false
},
"activity": {
"releases": [
{
"tag": "nx-plugin@0.3.4",
"kind": "other",
"published_at": "2026-07-20T22:47:15Z"
},
{
"tag": "cli@0.10.5",
"kind": "other",
"published_at": "2026-07-20T22:47:13Z"
},
{
"tag": "validation@0.1.4",
"kind": "other",
"published_at": "2026-07-20T18:30:22Z"
},
{
"tag": "time@0.1.4",
"kind": "other",
"published_at": "2026-07-20T18:30:20Z"
},
{
"tag": "opencode-entangled@0.1.4",
"kind": "other",
"published_at": "2026-07-20T18:30:18Z"
},
{
"tag": "nx-plugin@0.3.3",
"kind": "other",
"published_at": "2026-07-20T18:30:16Z"
},
{
"tag": "money@0.1.6",
"kind": "other",
"published_at": "2026-07-20T18:30:13Z"
},
{
"tag": "lmao-ttsc@0.1.8",
"kind": "other",
"published_at": "2026-07-20T18:30:11Z"
},
{
"tag": "lmao-inspector@0.1.8",
"kind": "other",
"published_at": "2026-07-20T18:30:09Z"
},
{
"tag": "lmao@0.2.3",
"kind": "other",
"published_at": "2026-07-20T18:30:07Z"
},
{
"tag": "duration@0.1.4",
"kind": "other",
"published_at": "2026-07-20T18:30:04Z"
},
{
"tag": "columine@0.1.5",
"kind": "other",
"published_at": "2026-07-20T18:30:02Z"
},
{
"tag": "cli@0.10.4",
"kind": "other",
"published_at": "2026-07-20T18:29:59Z"
},
{
"tag": "arrow-builder@0.1.5",
"kind": "other",
"published_at": "2026-07-20T18:29:57Z"
},
{
"tag": "validation@0.1.3",
"kind": "other",
"published_at": "2026-07-17T00:01:30Z"
},
{
"tag": "time@0.1.3",
"kind": "other",
"published_at": "2026-07-17T00:01:28Z"
},
{
"tag": "opencode-entangled@0.1.3",
"kind": "other",
"published_at": "2026-07-17T00:01:25Z"
},
{
"tag": "nx-plugin@0.3.2",
"kind": "other",
"published_at": "2026-07-17T00:01:23Z"
},
{
"tag": "money@0.1.5",
"kind": "other",
"published_at": "2026-07-17T00:01:20Z"
},
{
"tag": "lmao-ttsc@0.1.7",
"kind": "other",
"published_at": "2026-07-17T00:01:18Z"
},
{
"tag": "lmao-inspector@0.1.7",
"kind": "other",
"published_at": "2026-07-17T00:01:15Z"
},
{
"tag": "lmao@0.2.2",
"kind": "other",
"published_at": "2026-07-17T00:01:13Z"
},
{
"tag": "duration@0.1.3",
"kind": "other",
"published_at": "2026-07-17T00:01:11Z"
},
{
"tag": "columine@0.1.4",
"kind": "other",
"published_at": "2026-07-17T00:01:09Z"
},
{
"tag": "cli@0.10.3",
"kind": "other",
"published_at": "2026-07-17T00:01:06Z"
},
{
"tag": "arrow-builder@0.1.4",
"kind": "other",
"published_at": "2026-07-17T00:01:04Z"
},
{
"tag": "validation@0.1.2",
"kind": "other",
"published_at": "2026-07-16T18:15:34Z"
},
{
"tag": "time@0.1.2",
"kind": "other",
"published_at": "2026-07-16T18:15:31Z"
},
{
"tag": "opencode-entangled@0.1.2",
"kind": "other",
"published_at": "2026-07-16T18:15:27Z"
},
{
"tag": "nx-plugin@0.3.1",
"kind": "other",
"published_at": "2026-07-16T18:15:24Z"
},
{
"tag": "money@0.1.4",
"kind": "other",
"published_at": "2026-07-16T18:15:21Z"
},
{
"tag": "lmao@0.2.1",
"kind": "other",
"published_at": "2026-07-16T18:15:19Z"
},
{
"tag": "lmao-ttsc@0.1.6",
"kind": "other",
"published_at": "2026-07-16T18:15:16Z"
},
{
"tag": "lmao-inspector@0.1.6",
"kind": "other",
"published_at": "2026-07-16T18:15:14Z"
},
{
"tag": "duration@0.1.2",
"kind": "other",
"published_at": "2026-07-16T18:15:12Z"
},
{
"tag": "columine@0.1.3",
"kind": "other",
"published_at": "2026-07-16T18:15:07Z"
},
{
"tag": "cli@0.10.2",
"kind": "other",
"published_at": "2026-07-16T18:15:04Z"
},
{
"tag": "arrow-builder@0.1.3",
"kind": "other",
"published_at": "2026-07-16T18:15:01Z"
},
{
"tag": "nx-plugin@0.3.0",
"kind": "other",
"published_at": "2026-07-15T00:55:04Z"
},
{
"tag": "cli@0.10.1",
"kind": "other",
"published_at": "2026-07-15T00:55:01Z"
},
{
"tag": "cli@0.10.0",
"kind": "other",
"published_at": "2026-07-06T08:51:24Z"
},
{
"tag": "cli@0.9.0",
"kind": "other",
"published_at": "2026-07-06T01:02:00Z"
},
{
"tag": "cli@0.8.0",
"kind": "other",
"published_at": "2026-07-05T23:16:48Z"
},
{
"tag": "money@0.1.3",
"kind": "other",
"published_at": "2026-07-05T13:20:32Z"
},
{
"tag": "lmao-transformer@0.1.5",
"kind": "other",
"published_at": "2026-07-05T13:20:30Z"
},
{
"tag": "lmao-inspector@0.1.5",
"kind": "other",
"published_at": "2026-07-05T13:20:28Z"
},
{
"tag": "lmao@0.2.0",
"kind": "other",
"published_at": "2026-07-05T13:20:26Z"
},
{
"tag": "cli@0.7.0",
"kind": "other",
"published_at": "2026-07-05T13:20:24Z"
},
{
"tag": "cli@0.6.0",
"kind": "other",
"published_at": "2026-07-01T17:54:18Z"
},
{
"tag": "cli@0.5.0",
"kind": "other",
"published_at": "2026-07-01T13:21:23Z"
},
{
"tag": "money@0.1.2",
"kind": "other",
"published_at": "2026-06-30T02:03:45Z"
},
{
"tag": "lmao-transformer@0.1.4",
"kind": "other",
"published_at": "2026-06-30T02:03:42Z"
},
{
"tag": "lmao-inspector@0.1.4",
"kind": "other",
"published_at": "2026-06-30T02:03:39Z"
},
{
"tag": "lmao@0.1.4",
"kind": "other",
"published_at": "2026-06-30T02:03:36Z"
},
{
"tag": "columine@0.1.2",
"kind": "other",
"published_at": "2026-06-30T02:03:33Z"
},
{
"tag": "arrow-builder@0.1.2",
"kind": "other",
"published_at": "2026-06-30T02:03:30Z"
},
{
"tag": "cli@0.4.3",
"kind": "other",
"published_at": "2026-05-27T10:29:57Z"
},
{
"tag": "nx-plugin@0.2.5",
"kind": "other",
"published_at": "2026-05-27T03:43:58Z"
},
{
"tag": "cli@0.4.2",
"kind": "other",
"published_at": "2026-05-27T03:43:54Z"
},
{
"tag": "cli@0.4.1",
"kind": "other",
"published_at": "2026-05-27T01:13:12Z"
},
{
"tag": "nx-plugin@0.2.4",
"kind": "other",
"published_at": "2026-05-26T17:32:32Z"
},
{
"tag": "cli@0.4.0",
"kind": "other",
"published_at": "2026-05-26T17:32:29Z"
},
{
"tag": "nx-plugin@0.2.3",
"kind": "other",
"published_at": "2026-05-25T20:31:00Z"
},
{
"tag": "cli@0.3.4",
"kind": "other",
"published_at": "2026-05-25T20:30:57Z"
},
{
"tag": "nx-plugin@0.2.2",
"kind": "other",
"published_at": "2026-05-01T15:27:19Z"
},
{
"tag": "cli@0.3.3",
"kind": "other",
"published_at": "2026-05-01T15:27:15Z"
},
{
"tag": "cli@0.3.2",
"kind": "other",
"published_at": "2026-05-01T13:59:09Z"
},
{
"tag": "nx-plugin@0.2.1",
"kind": "other",
"published_at": "2026-04-30T23:43:04Z"
},
{
"tag": "cli@0.3.1",
"kind": "other",
"published_at": "2026-04-30T23:43:01Z"
},
{
"tag": "nx-plugin@0.2.0",
"kind": "other",
"published_at": "2026-04-30T20:56:29Z"
},
{
"tag": "lmao-transformer@0.1.3",
"kind": "other",
"published_at": "2026-04-30T20:56:26Z"
},
{
"tag": "lmao-inspector@0.1.3",
"kind": "other",
"published_at": "2026-04-30T20:56:23Z"
},
{
"tag": "lmao@0.1.3",
"kind": "other",
"published_at": "2026-04-30T20:56:20Z"
},
{
"tag": "cli@0.3.0",
"kind": "other",
"published_at": "2026-04-30T20:56:16Z"
},
{
"tag": "@smoothbricks/nx-plugin@0.1.0",
"kind": "other",
"published_at": "2026-04-29T22:44:34Z"
},
{
"tag": "@smoothbricks/lmao@0.1.2",
"kind": "other",
"published_at": "2026-04-29T22:44:27Z"
},
{
"tag": "@smoothbricks/lmao-transformer@0.1.2",
"kind": "other",
"published_at": "2026-04-29T22:44:24Z"
},
{
"tag": "@smoothbricks/lmao-inspector@0.1.2",
"kind": "other",
"published_at": "2026-04-29T22:44:22Z"
},
{
"tag": "@smoothbricks/cli@0.2.0",
"kind": "other",
"published_at": "2026-04-29T22:44:19Z"
},
{
"tag": "eslint-stdout@1.1.2",
"kind": "other",
"published_at": "2026-04-29T20:03:12Z"
},
{
"tag": "@smoothbricks/cli@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:36Z"
},
{
"tag": "eslint-stdout@1.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:17Z"
},
{
"tag": "@smoothbricks/validation@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:15Z"
},
{
"tag": "@smoothbricks/time@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:12Z"
},
{
"tag": "@smoothbricks/statebus-react@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:10Z"
},
{
"tag": "@smoothbricks/statebus-core@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:07Z"
},
{
"tag": "@smoothbricks/opencode-entangled@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:05Z"
},
{
"tag": "@smoothbricks/money@0.1.1",
"kind": "other",
"published_at": "2026-04-28T18:00:02Z"
},
{
"tag": "@smoothbricks/lmao@0.1.1",
"kind": "other",
"published_at": "2026-04-28T17:59:59Z"
},
{
"tag": "@smoothbricks/lmao-transformer@0.1.1",
"kind": "other",
"published_at": "2026-04-28T17:59:57Z"
},
{
"tag": "@smoothbricks/lmao-inspector@0.1.1",
"kind": "other",
"published_at": "2026-04-28T17:59:54Z"
},
{
"tag": "@smoothbricks/duration@0.1.1",
"kind": "other",
"published_at": "2026-04-28T17:59:52Z"
},
{
"tag": "@smoothbricks/columine@0.1.1",
"kind": "other",
"published_at": "2026-04-28T17:59:50Z"
},
{
"tag": "@smoothbricks/arrow-builder@0.1.1",
"kind": "other",
"published_at": "2026-04-28T17:59:47Z"
},
{
"tag": "eslint-stdout@1.1.0",
"kind": "other",
"published_at": "2026-04-28T01:54:35Z"
},
{
"tag": "@smoothbricks/validation@0.1.0",
"kind": "other",
"published_at": "2026-04-28T01:54:34Z"
},
{
"tag": "@smoothbricks/time@0.1.0",
"kind": "other",
"published_at": "2026-04-28T01:54:32Z"
},
{
"tag": "@smoothbricks/statebus-react@0.1.0",
"kind": "other",
"published_at": "2026-04-28T01:54:31Z"
},
{
"tag": "@smoothbricks/statebus-core@0.1.0",
"kind": "other",
"published_at": "2026-04-28T01:54:30Z"
},
{
"tag": "@smoothbricks/opencode-entangled@0.1.0",
"kind": "other",
"published_at": "2026-04-28T01:54:28Z"
}
],
"recent_commits": [
{
"oid": "79b7d844136790d41e25e78b365d55310109327a",
"body": "Review feedback from Danny Wilson on the HTTP guide: the example op set\n`ctx.tag.route('/cart').status(200)` and re-promoted a requestId the\nhandler had supplied. Those are all facts of the HTTP boundary, and the\nop hardcoded a 200 before the outcome existed — so a failing request was\nrecorded as a \n[…]\nt fit. Composite is only for wanting several outputs at once.\n\nDocs build green — 55 pages, all internal links valid.\n\nReported-by: Danny Wilson\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): separate HTTP and domain responsibilities in the guides",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "95f3fdd6a875d1027d94641009e0bab08a695fe6",
"body": "`CompositeTracerOptions<B>` carries `delegates: Tracer<B>[]`, which pins B\nto the op context being traced. The shared tracer options were built from\nthe loose default schema — `createTestTracerOptions()` without a type\nargument in the test, `new JsBufferStrategy()` in both examples — so\n`bufferStrat\n[…]\nite.\n\nVerified: typecheck clean, CompositeTracer test 5 pass, both examples\nstill emit the span tree and their Arrow/flush output, biome clean.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao): bind composite tracer options to the concrete log schema",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "76344196ebd8a1929691e360e687db5bd628059c",
"body": "The stdout-and-Arrow pattern the examples and guides/convert-to-arrow.mdx\ndocument had no test — it was only exercised by two example scripts that\nCI never runs. CompositeTracer had no test file at all.\n\nCover the case that matters in practice: StdioTracer stacked with\nArrayQueueTracer behind one Co\n[…]\nthe stdio delegate from the\ncomposite turns 5 pass into 2 pass / 3 fail, failing exactly the three\nstdout assertions. Restored, back to 5 pass.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "test(lmao): cover stdio + ArrayQueue stacking via CompositeTracer",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3605b89faa187a5b4c115162e503217f0f3bec6e",
"body": "The previous fix stopped the examples smuggling ctx.buffer out of the op,\nbut swapping StdioTracer for a retaining tracer traded away the printed\nspan tree. You don't have to choose: CompositeTracer fans a single trace\nout to several tracers, which is what its own JSDoc describes (\"multiple\noutputs \n[…]\nlete-example prints the tree and flushes 4 rows), biome clean,\ndocs build green — 55 pages, all internal links valid.\n\nReported-by: Danny Wilson\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao): show stdout and Arrow export from one trace run",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d72923e2b65d5c058bc4536ddb1f6a69bb624862",
"body": "arrow-export.ts and complete-example.ts assigned `ctx.buffer` to a\nmodule-level `let` from inside a `defineOp` body, then read it after the\ntrace finished. That teaches the wrong model twice over: an op is a\nreusable definition that may run concurrently, so a shared variable\nraces and last-writer wi\n[…]\nte-example flushes 4 rows through the scheduler), biome clean,\ndocs build green — 55 pages, all internal links valid.\n\nReported-by: Danny Wilson\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao): stop examples smuggling ctx.buffer out of the op",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3376d4f5e3d6483eaca4df2df28c83c3c72979f0",
"body": "Running the CMS indexes every page under `mdxPages` and writes its\ngit-native tracking fields (`id: vx-…`, `created`, `modified`) into the\nsource frontmatter, reflowing long `description` values to YAML block\nscalars along the way. This is Conloca working as designed, not a\nmigration step.\n\nCommitte\n[…]\ncontent-file diff is\nreviewable on its own. Starlight's docsSchema accepts the extra keys —\nbuild is green, 55 pages, all internal links valid.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(lmao-docs): record Conloca content IDs in docs frontmatter",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "25da594d36131562cd39ef42f93901370e1454fd",
"body": "Wire @conloca/astro-cms into the docs site so the existing 55 Starlight\n.mdx pages are editable in a CMS, with Starlight still doing the\nrendering (sidebar, Pagefind search, link validation, llms.txt all\nunchanged).\n\nThe key piece is `content/sites.json`: `mdxPages` points Conloca at\nStarlight's doc\n[…]\n.js both 200, no unresolved-dependency\nwarnings, and the production build is unchanged — 55 pages, all internal\nlinks valid, GFM tables intact.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(lmao-docs): integrate Conloca CMS for editing the Starlight docs",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ae77385f079d7b903835642a332bc33cb920ecf7",
"body": "b528bb7b committed packages/lmao/.zig-cache — 17.9 MB of build artifacts\nincluding build_zcu.obj (9.6 MB), build.pdb (5.1 MB) and build.exe (3.6 MB).\nThese are regenerated by the zig build and should never have been tracked;\n.zig-cache had no .gitignore entry.\n\nUntrack them and add the ignore rule so they stay out.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(repo): untrack the zig build cache",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "12237798ba1dee92aa51109161c1208e1bbdb350",
"body": "Astro 7 is out and the whole plugin chain supports it, so move the docs\nsite over:\n\n- astro ^6.2.1 -> ^7.1.3\n- @astrojs/starlight ^0.39.0 -> ^0.41.3 (requires Astro 7)\n- starlight-links-validator ^0.24.0 -> ^0.25.2\n- starlight-llms-txt ^0.10.0 -> ^0.11.0\n\nDrop remark-gfm: Astro 7 replaces the remark\n[…]\nsame as before), all\ninternal links valid, llms.txt/llms-full/llms-small regenerated,\nscroll-reveal script intact, inline whitespace preserved.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(lmao-docs): upgrade to Astro 7 and Starlight 0.41",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ef38e42437d5baa84237224b783cf1b59d4f642a",
"body": null,
"is_bot": false,
"headline": "fix(docs): correct command path for local development in README",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0bb5cfe0cef340c1a66d2cb44521806a6d54d83b",
"body": null,
"is_bot": false,
"headline": "fix(docs): update commands in README for correct paths",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "71742069b75bc6688cddc8adc791a0b7f09ea546",
"body": "…trategy\n\nThe latest main merge exposes the WebAssembly buffer strategy as a public\nsubpath (`@smoothbricks/lmao/wasm`), matching spec 01q moving the WASM buffer\nstrategy from a target contract to shipped. Reflect that in the docs:\n\n- architecture.mdx: drop the now-false \"not part of the public API \n[…]\ntegy` as a drop-in,\n async-constructed alternative to `JsBufferStrategy`, plus the allocator /\n trace-root primitives the subpath re-exports.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): document the public @smoothbricks/lmao/wasm buffer s…",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c3a0935219ffec3f03e1adbcd1477b132de413d4",
"body": "- Created new timestamp file in .zig-cache/h/\n- Added build executable, PDB, and object files in .zig-cache/o/45207511f28cb38b6067da974b224340/\n- Introduced dependencies.zig file in .zig-cache/o/a9cfc9d8fc3d796eec03d5c3167c0979/ with empty packages and root_deps\n- Added several new binary files in .zig-cache/z/ for caching purposes",
"is_bot": false,
"headline": "Add initial build artifacts and dependencies for lmao package",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5666ce699405844fde300bc47f3f7e6860d12789",
"body": "Drop the pointer to the internal specs/lmao/01o file (not part of the published\nsite) and write every transformation out with before -> after examples:\nsource-line injection, monomorphic span() lowering (+ bailouts), the\ndestructured-context rewrite, tag inlining (with bit-packed booleans / enum\nindices), and op capability/capacity hints, plus the legacy defineModule note.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): document the transformer's rewrites in full on the page",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "1fdccc55669cc82c689183ecf4612e0381bdc21d",
"body": "… API\n\nAfter merging main: the transformer shipped as the ttsc/Go plugin\n@smoothbricks/lmao-ttsc (createLmaoTransformer is gone) — rewrite transformer.mdx\nand swap the package-exports companion row; spanSync now takes a no-arg Op (not a\ncallback) — fix span-context.mdx; add the ./vocabulary/register/v1 and\n./span-buffer/aot/v1 subpaths; roadmap notes ttsc (§3 __ctx implemented), the\nunbuilt lmao-inspect CLI, and the in-progress Rust core.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): reconcile reference and roadmap with post-merge lmao…",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "c21217b4ab3bffdd530fd9081d7a87664e789cf9",
"body": "main's merged biome.json wraps long fluent `.tag()`/`.ok()` chains across lines;\nthese example files were formatted under the pre-merge config, so CI's\n`biome check packages/lmao` (the lmao:lint step) flagged them. Reformat via\n`biome check --write`. Verified: biome check + eslint packages/lmao/src both clean.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "style(lmao): wrap long fluent chains to satisfy biome",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "1ed7483e0978fbe3c3988365733944cc0dfda342",
"body": "Websites/apps live in targets/. Move lmao-docs/ -> targets/lmao-docs/ (git-tracked\nrename of 68 files; nx config is all {projectRoot}-relative so needs no change) and\nswitch the root workspace glob from the explicit \"lmao-docs\" entry to \"targets/*\".\nAlso update the packages/lmao/README link (../../l\n[…]\nconciled (frozen-lockfile clean); nx discovers the project at\ntargets/lmao-docs and 'nx astro-html lmao-docs' is green (55 pages, links valid).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(lmao-docs): relocate app under targets/ per monorepo convention",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "eb17465c4b3889c9e4f3c86e8d980a11b0b3409b",
"body": "The README only covered trace-testing (plus the Nx-generated stub). Replace it\nwith a complete overview: what LMAO is, install, quick start, core API\n(schema/defineOpContext/SpanContext/results), tracers, feature flags, persist &\nanalyze, a condensed trace-testing section, package exports, companion\n[…]\ns,\nand examples. Samples are grounded in the shipped API and the runnable examples.\nThe previous README is preserved verbatim as README-OLD.md.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao): rewrite package README as a full library overview",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ddb873449e4c10c38e8bee87c12ec72c09811348",
"body": "ctx.span(...) returns a Result union, so the tutorial's ctx.ok({ valid:\nvalid.value, items: data.value.items }) would not typecheck when copied. Guard\neach with .success first. Also drop a needless querySelectorAll<HTMLElement>\ngeneric in ScrollReveal (Astro compiles script tags as TS, so it was harmless,\nbut the annotation is unnecessary).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao-docs): narrow Result before reading .value in the HTTP tutorial",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "4194e69e2bb0b3291687197827854497208b4963",
"body": "The example defined ops from one defineOpContext but built the StdioTracer from\na second, separate instance. Share one const opContext across defineOp and the\ntracer so they can't drift and per-context state is shared. Typechecks via\ntsconfig.test.json.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao): reuse a single op context in the fluent-result example",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "496d24a0ce6f109d9e2fdf3e0c580b7e30afafc3",
"body": "After the Astro 5->6 upgrade, GFM was no longer applied through the default\nmarkdown pipeline in this Starlight setup, so every Markdown table rendered as\nliteral '| ... |' text (site-wide). Add remark-gfm explicitly via\nmarkdown.remarkPlugins and declare it as a direct dependency. Verified: tables\nnow emit real <table> elements across the docs and the build stays green.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao-docs): restore GFM tables broken by the Astro 6 upgrade",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "5547379fc0a82e45c08eee46904e3a3d6b71bf19",
"body": "Move query engine, inspector, and transformer out of 'not shipped' into the\nshipped companion packages (lmao-inspector, lmao-transformer) and the partial\nCloudflare sink; keep AI-agent/MCP as the sole genuine roadmap item.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): reconcile roadmap with shipped companion packages",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "e2dafad1452ba279e41ed306888afde1dac6dc87",
"body": "Add ctx.spanSync (sync child span returning Result directly) and the\nuint64_value(bigint) log-entry writer across span-context, entry-types,\nmeasure-op-performance, and span-model. The writer is documented only on the\nlog chain, the sole public ctx surface that exposes it.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): document spanSync and the uint64_value writer",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "360f9d52a996041b0940a8b0e4ddaecf2ead9045",
"body": "Add the @smoothbricks/lmao/cloudflare subpath to package-exports, the\nDiagnosticDrainTracer/ClassSplitTracer sink tracers to the tracers reference,\nand a diagnostic-sink guide section (Pipelines/Queues transports, billing vs\ndiagnostic lanes). Flagged partial: the collector service is still a design.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): document the Cloudflare trace sink",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "123e1449d23da7a98eccb7e7e39ec1d411d78862",
"body": "Document the @smoothbricks/lmao-inspector (createQueryEngine, archive/stream\nsources) and @smoothbricks/lmao-transformer (createLmaoTransformer) companion\npackages, sourced from their package src + tests. Add reference index cards.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): add inspector and transformer reference pages",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "e4ee29710a04e1cefb4d2e3370941d3d9cdf7c5e",
"body": "exclude: [\"dist\"] silently overrode TypeScript's implicit default exclude\n(which always includes node_modules), so the \"**/*\" include glob was also\nroot-matching every file under lmao-docs/node_modules (1147 files) instead of\njust our own source. Add node_modules back to exclude explicitly.\n\nInvesti\n[…]\nsolved simultaneously in the dependency\ntree. Doesn't affect `nx astro-html` (Vite build, no full typecheck) and isn't\nsomething we introduced.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao-docs): exclude node_modules from tsconfig root-file discovery",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d441239af908ab9e744fd7976fa0b391cd88c655",
"body": "- Remove editLink and lastUpdated from Starlight config: no \"Edit page\" link\n or \"Last updated\" stamp on any doc page or the splash home.\n- Replace the Phase-2 on-load card reveal with a scroll-triggered one\n (ScrollReveal.astro, IntersectionObserver): below-the-fold card grids on the\n home page \n[…]\nrds correctly start hidden below the fold and reveal when actually\nintersecting the viewport (checked via computed styles at both edge states).\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(lmao-docs): drop edit/last-updated buttons, reveal cards on scroll",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "48f5eb6f3927a66f0231d62a35541f91fc1a42ad",
"body": "Replace the lightly-edited starter README (which had a broken code fence) with\nan accurate one: the Astro 6 / Starlight 0.39 stack, Bun/Nx commands, the\nDiátaxis content structure and autogenerated sidebar, the amber theme + landing\nmotion, the llms.txt / links-validator plugins, and the deploy-time `site`\nplaceholder note.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): rewrite README for the actual site",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "606cdbc025b4e933d13661d4939ec5748d449870",
"body": "Borrow Conloca's landing polish on LMAO's amber accent (not their cyan):\n- CSS keyframes (fadeIn, slideUp, blink, bounce)\n- hero entrance (staggered slideUp) + staggered card reveals\n- an amber blinking terminal cursor after the hero title\n- a soft amber glow and a slate-deep backdrop (#0a0b10) behi\n[…]\n.\nVerified via computed styles: amber accent preserved, slideUp active, slate bg\napplied; production build stays green (53 pages, links valid).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(lmao-docs): animated landing with slate depth (keep amber accent)",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "86935e4011027b0cc56fd0a47c24f27542e27013",
"body": "The Astro-6.0 MDX crash we hit earlier (options.components/plugins is not\niterable) is fixed in current Astro 6; this bumps the docs site off the Astro 5\npin onto the same stack Conloca runs in production.\n\n- astro ^5.15.9 -> ^6.2.1 (resolves 6.4.8), @astrojs/starlight ^0.34 -> ^0.39 (0.39.3)\n- star\n[…]\n34 raw-.ts workaround is moot)\n\nBuild green: 53 pages, all internal links valid, Pagefind + llms.txt routes intact,\nfrozen lockfile consistent.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(lmao-docs): upgrade to Astro 6 + Starlight 0.39",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9e95f5173b0443d3b936c299351cd9f5a1c9cd2d",
"body": "Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>",
"is_bot": false,
"headline": "Potential fix for pull request finding",
"author_name": "George Shanidze",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "b0247bdb0af97410c985206e99ada8719d84256f",
"body": "Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>",
"is_bot": false,
"headline": "Potential fix for pull request finding",
"author_name": "George Shanidze",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "e5647583dc7cda309694b7b8d61036f8e668d695",
"body": "Rename the documentation-site folder from `docs/` to `lmao-docs/` to avoid\nconfusion with a generic docs folder. Reference updates:\n- root package.json `workspaces`: \"docs\" -> \"lmao-docs\"\n- lmao-docs/astro.config.mjs editLink baseUrl -> .../edit/main/lmao-docs/\n- lmao-docs/tsconfig.json include path\n[…]\nn.lock is reconciled to main's package versions plus the docs workspace deps\n(astro/starlight/etc.) and passes `bun install --frozen-lockfile`.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(lmao-docs): rename docs/ directory to lmao-docs/",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "352e0e1a32de9c83c6a28fd7615e55a76d490a83",
"body": "The package examples were rewritten against the current API and are verified runnable,\nso the docs can safely reference them:\n- guides landing: add a \"Runnable examples\" section mapping each example to what it shows\n- convert-to-arrow: add a tip about capturing the root buffer via the public `ctx.buffer`\n (as arrow-export.ts demonstrates)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao-docs): point readers to the now-runnable examples",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7028910d1ea9349754e6ed6ff6a86292179821a2",
"body": "…check\n\nAll 7 example files used the removed `defineModule`/`createRequestContext` /\n`.ctx().make()` / `module.op()` API and were in no tsconfig (never typechecked or\nrun), so editors flagged them and they had drifted out of correctness.\n\n- Rewrite basic-usage, chaining-showcase, fluent-result-api, \n[…]\nxamples into tsconfig.test.json (rootDir \".\" + examples glob) so the inferred\n typecheck target covers them and they can't silently rot again.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao): rewrite examples against defineOpContext + wire into type…",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "bbb3c57d7390ec2301f3bc12544c2a87696a8946",
"body": "Investigated replacing the DepsConfig/ResolvedDeps `Record<string, any>`\nplaceholders with the real types from opGroupTypes. Doing so makes SpanContext\nstructurally recursive (deps -> OpGroup -> op -> SpanContext -> deps), which breaks\nthe structural assignability used when passing a dependency's op\n[…]\nad-bearing, not laziness. Replace the terse comment with\nthe precise rationale and what a real fix (non-recursive resolved-deps view) requires.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao): explain why deps type placeholders must stay `any`",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "82b391b6badde0d456bb53fe3dd34f4908c8fc08",
"body": "- tracer.ts: replace the user-ctx copy loop's `(ctx as Record<string, unknown>)[key]`\n assignment with `Object.assign(ctx, resolvedUserCtx)` — fully typed, no cast.\n- traceContext.ts: replace `(value as Record<symbol, unknown>)[MARKER]` in the\n isTraceContext brand guard with `Reflect.get(value, TRACE_CONTEXT_MARKER)`, which\n takes a PropertyKey and needs no cast.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor(lmao): remove Record casts in tracer/traceContext",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "b166104f97c1c3ef1a681c8ee92783165204966c",
"body": "The hand-written guards (isRecord, isString, isNumber, isBoolean, isPrimitive,\nisPlainObject, isRecordOfPrimitives, isFeatureFlagDefinition, isEvaluationContext,\nisUsageContext) were unused anywhere in src and only blanket-exposed via\n`export *`. They duplicated @smoothbricks/validation's isRecord a\n[…]\nlly uses.\n\nBREAKING CHANGE: these guards are no longer exported from @smoothbricks/lmao.\nUse typia.is<T>() or @smoothbricks/validation instead.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor(lmao)!: drop unused hand-written type guards from typeGuards.ts",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "875eb5e4af5aefb394c06e46fad4426eedc9bf9d",
"body": "Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao-docs): set home page title to \"Home | LMAO\"",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "c658c04a910384e6c06eae0868caab6c1182bbdc",
"body": "Add a real public/favicon.ico (32x32, derived from the SVG mark) so the\nbrowser's automatic /favicon.ico request resolves instead of falling\nthrough to Starlight's dynamic route and warning in dev.\n\nDrop `// @ts-check` from astro.config.mjs: Starlight 0.34 ships raw .ts\nfor its `.` export, which trips an internal type error (utils/i18n.ts)\nunder this repo's TypeScript 6. The config is still typed via\ndefineConfig/starlight().\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(lmao-docs): serve favicon.ico and quiet config type-check",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7b272cc03404c27c5f8fe6dcb83f4689c9fadeb6",
"body": "Add the starlight-llms-txt plugin, emitting /llms.txt (curated index),\n/llms-full.txt, /llms-small.txt, and two context-scoped subsets\n(reference-only, start-here + tutorials). Surface them from a \"For LLMs\nand AI tools\" section on the homepage, and exclude the generated routes\nfrom the links valida\n[…]\nrlight 0.40 scaffold could not compile any MDX\n(options.components is not iterable). Revert the sidebar to the 0.34\nautogenerate form to match.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(lmao-docs): generate downloadable llms.txt",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "7fd34b577a9ab28ad03599b1e31f2240b80f952a",
"body": "Add custom-tracer, batch/fan-out, archive, structured-payload,\nop-performance, HTTP-framework, and custom-flag-evaluator guides; new\nfacts, archive, feature-flag-types, and advanced-internals reference\npages; lmao-vs-opentelemetry and tracer-lifecycle concepts. Expand\nexisting tracers, schema, errors, entry-types, and trace-testing pages.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(lmao): expand guides and reference coverage",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "38fb90a0d62595351372df1c79c31e1b1d008ee7",
"body": "Add the docs application shell wiring the existing LMAO MDX content\ninto an Astro Starlight site: sidebar groups via autogenerate, terminal-\namber accent theme, logo/favicon, custom 404, and the links validator.\nRegisters the docs workspace and the lmao-docs Nx project (astro-html).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(lmao-docs): scaffold Astro Starlight documentation site",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "6ba3602f7c371fb2176837acb1a974358c7cf83e",
"body": "…r LMAO\n\n- Introduced new documentation files covering errors and retry mechanisms, package exports, schema DSL, span context, tracers, and trace-testing.\n- Created tutorials for testing by tracing and tracing HTTP requests end-to-end.\n- Added core concepts overview and installation instructions to guide new users.\n- Enhanced the roadmap section to outline future directions and ecosystem components.",
"is_bot": false,
"headline": "feat(docs): Add comprehensive reference and tutorial documentation fo…",
"author_name": "GeorgeShani",
"author_login": "GeorgeShani",
"committed_at": "2026-07-22T10:55:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "52e412f9e4b9bcbc57a1f97838ae59e84e9a3c01",
"body": "- project: nx-plugin 0.3.5-next.0\n\n- project: cli 0.10.6-next.0",
"is_bot": true,
"headline": "chore(release): prepare next prerelease",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-07-20T22:47:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bdc36af52d7b70ed044484e8e3ad82e4060dcc50",
"body": "- project: nx-plugin 0.3.4\n\n- project: cli 0.10.5",
"is_bot": true,
"headline": "chore(release): publish",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-07-20T22:36:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6d5e380541b211ede754d116881b1129b4cfe765",
"body": "Root cause of the packed-manifest flip-flop:\n\n1. prepare-next bumps package.json to 0.x.y-next.0\n2. version-actions always ran publish-mode lock rewrite → bun.lock stayed\n at last stable 0.x.y\n3. monorepo validate (install mode) expected lock ≡ package.json → fail\n4. bun pm pack embedded lock stab\n[…]\nnly around bun pm pack in release publish, then\n restore install mode\n- default sync-bun-lockfile-versions / syncBunLockfileVersions mode = install\n- heal current bun.lock to -next workspace versions",
"is_bot": false,
"headline": "fix(cli): stop prepare-next from rewriting bun.lock to stable",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T22:34:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "61ba8c1dc39a3424f9c4041426bdde3d40db3d62",
"body": "ttsc is pinned exact 0.19.3 because Bun patchedDependencies keys are\nversion-locked. Ship patches/ttsc@0.19.3.patch as a managed raw file and\nrequire package.json.patchedDependencies.ttsc@0.19.3 on monorepo update.",
"is_bot": false,
"headline": "fix(cli): manage ttsc 0.19.3 patch for consumer monorepos",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T21:16:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ed385baf3af90ac954af8d7733f8a21d1e5d47c5",
"body": "nx-plugin runs ttsc commands but does not declare the binary. Root tool\npolicy installs it; floor was still 0.18.4 and same-minor resolve left\nmissing installs on ^0.18.4. Align with published 0.19.3 / codebase pin.",
"is_bot": false,
"headline": "fix(cli): require ttsc ^0.19.3 for monorepo tool policy",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T21:14:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9fbf4552be3ba14cf7a1fb4dceb0461538b9c8c9",
"body": "Policy floor was still 5.9 while the dual-package setup needs the\nTS6 compiler API. Bump minimum/fallback to 6.0 and align the test\nregistry mock.",
"is_bot": false,
"headline": "fix(cli): require typescript ^6 for monorepo tool policy",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T21:11:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "65f51676de8746266a07ace8520af0021d50457f",
"body": "Consumer tooling/package.json kept an old ^range when the running CLI\nwas a linked -next build: the prerelease guard froze the configured\npin, and never consulted the registry.\n\nResolve cliDependencyRange from npm dist-tags.latest (stable only). Do\nnot write unpublished -next versions into consumer manifests. monorepo\nupdate already applies tool defaults + bun install, so the pin is\ninstalled.",
"is_bot": false,
"headline": "fix(cli): monorepo update pins @smoothbricks/cli to npm latest",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T21:08:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ee05f3c5a2efafe4efa50fabc6e14abcdb92abef",
"body": "setup-environment requires the TS7 native compiler bin when package.json\ndeclares @typescript/native. monorepo update only rewrote managed\ntemplates and never applied tool dependency defaults, so consumers\ngot the new assert without the dep.\n\n- require root devDependency @typescript/native = npm:typescript@^7.0.2\n- monorepo update now applies tool defaults and runs bun install\n- only assert native bin when the package is declared\n- update .envrc to load .envrc-local reliably",
"is_bot": false,
"headline": "fix(cli): monorepo update installs @typescript/native for ttsc",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T21:05:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4b50d9aec70e92853dad6e52718d4a16d3dd0fc",
"body": "- project: opencode-entangled 0.1.5-next.0\n\n- project: lmao-inspector 0.1.9-next.0\n\n- project: arrow-builder 0.1.6-next.0\n\n- project: validation 0.1.5-next.0\n\n- project: lmao-ttsc 0.1.9-next.0\n\n- project: nx-plugin 0.3.4-next.0\n\n- project: columine 0.1.6-next.0\n\n- project: duration 0.1.5-next.0\n\n- project: money 0.1.7-next.0\n\n- project: lmao 0.2.4-next.0\n\n- project: time 0.1.5-next.0\n\n- project: cli 0.10.5-next.0",
"is_bot": true,
"headline": "chore(release): prepare next prerelease",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-07-20T18:30:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "10e591331abca8204ea0dcf624ae91afc9d85c9d",
"body": "- project: opencode-entangled 0.1.4\n\n- project: lmao-inspector 0.1.8\n\n- project: arrow-builder 0.1.5\n\n- project: validation 0.1.4\n\n- project: lmao-ttsc 0.1.8\n\n- project: nx-plugin 0.3.3\n\n- project: columine 0.1.5\n\n- project: duration 0.1.4\n\n- project: money 0.1.6\n\n- project: lmao 0.2.3\n\n- project: time 0.1.4\n\n- project: cli 0.10.4",
"is_bot": true,
"headline": "chore(release): publish",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-07-20T18:09:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "576d6559b8a42286ca0d962454013cda528d84cc",
"body": "What was broken: @typescript/native is also named\n\"typescript\" (TS7). Bun isolated linking often sets\nnode_modules/.bun/node_modules/typescript → typescript@7. Nx\nlives under .bun, so require(\"typescript\") gets version.cjs without\nreadConfigFile. Root node_modules/typescript can still be 6.0.3,\nso\n[…]\nove\nthe file: shim. Keep node-v2 nm cache prefix.\n\nVerified: install leaves nx on TS7, setup pins API 6; smoo monorepo\nvalidate green; nx test cli 308 pass; hoist regression with fresh\nnode processes.",
"is_bot": false,
"headline": "fix(cli): pin Bun .bun typescript hoist to API 6 after install",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T18:06:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "970b49f89331b8ac14d627a7344b80febc8c2bc8",
"body": "Allow root devDependencies.typescript = file:tooling/typescript-api\nin tool validation (Bun-safe TS6 shim). Drop nested\npackage.json exports from the shim so publint no longer flags\nNESTED_PACKAGE_JSON_FIELD_IGNORED when managed raw is packed inside\n@smoothbricks/cli.",
"is_bot": false,
"headline": "fix(cli): accept file:typescript-api in monorepo validate",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T17:07:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "28a20d2313d501d1d9a21709dce3c1d9435df4e5",
"body": "CI macOS failed when bare require(\"typescript\") hit\n~/.bun/install/cache/typescript@7.../version.cjs after a no-op install.\nAssert via node_modules/typescript only (never Bun's global cache\nfallback), and re-run bun install if that workspace link is missing\nor not the 6.0.3 API shim.\n\nBump GHA node_\n[…]\n** so restore-keys cannot revive pre-shim\nDarwin trees.\n\nLocally verified: cache fallback, missing-link fail-closed, install API\n6.0.3, setup-environment repair, missing shim package.json fail-closed.",
"is_bot": false,
"headline": "fix(cli): load TS API only from node_modules, bust stale nm cache",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T16:32:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1bc62cd19c83743d0aef4b47cfb0fb47127f64d4",
"body": "Ship tooling/typescript-api through smoo managed/raw so dogfood and\nconsumer monorepos get the Bun-safe TS6 API package via monorepo update.\n\nSkip packages/**/managed/raw|templates package.json in nx-plugin\ncreateNodes so the managed source copy is not a second Nx project.\nInclude tsserverlibrary subpath re-exports for typescript-eslint.",
"is_bot": false,
"headline": "feat(cli): manage typescript-api shim as monorepo raw files",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T13:20:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "67723b132c73da608e0b0ab1cb17a355b5ca02cc",
"body": "Bare require(\"typescript\") must expose the TS6 compiler\nAPI for Nx. Microsoft's dual-package install (typescript →\n@typescript/typescript6 → @typescript/old = npm:typescript@^6) is\nbroken on Bun (oven-sh/bun#33834): the nested npm: alias collapses\nonto the wrapper and yields an empty module.\n\nInsta\n[…]\nl typescript@6.0.3 under the non-colliding dependency\nname ts-compiler-api. Keep @typescript/native as TS7 for ttsc. Drop\nthe post-install node_modules relink; setup only asserts the API +\nnative bin.",
"is_bot": false,
"headline": "fix(cli): Bun-safe TypeScript 6 API via tooling/typescript-api",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T13:02:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ee980feaaeecfc706bf016c545ac6754f8ed19d2",
"body": "package.json napi.targets listed x86_64-unknown-linux-gnu but Nx only\nhad napi-arm64-linux. Publish's *-linux supplemental job would miss\nthe linux-x64 .node artifact.",
"is_bot": false,
"headline": "fix(cowshed): add napi-x64-linux platform target",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T11:35:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "001ef3aab473ac6d7022bfaff2b08985f17af1e2",
"body": "Cold macOS publish shells have no Nx graph cache. enter-shell used\n`nx run nx-plugin:tsc-js`, which loads the project graph (and this\nplugin) before the plugin exists, failing with tsModule.readConfigFile\nis not a function when the graph is cold.\n\nBuild the plugin with ttsc directly and clear Nx cache dirs without\nconstructing the graph. Also assert after bun install that the unscoped\ntypescript package still exports the TS 6 API.",
"is_bot": false,
"headline": "fix(cli): rebuild nx-plugin without nx during shell enter",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T11:35:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "78b4d893690cfc64edd91c26d31201fb00338404",
"body": "Thread the tested Rust Coordinator\nsurface (adopt/create/fork/grant/revoke/\nrebase/land/push/restore/detach/destroy/gc) and job control (worker\n-> exec/ shell/listJobs/job -> readLogs/attach/wait/kill) through\ncowshed-napi and the typed TS surface. connectCoordinator retains\nthe CoordinatorToken (Ar\n[…]\ned green (bun TS suite 3/3 with typia\npreloads). Known gap: no JS-reachable real-daemon e2e harness exists\n(production fds are gateway-inherited); protocol-level coverage lives\nin cowshed-core tests.",
"is_bot": false,
"headline": "feat(cowshed): expose Coordinator mutation verbs through NAPI",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:44:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a7a8ec5309ed7ae266b704aa4f6e6a5137876214",
"body": "makeFixtureRepo commits an empty init without user.name/email, which\nfails on CI runners with no global git identity.",
"is_bot": false,
"headline": "fix(cli): set git identity in lockfile test fixtures",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20b909ec653961b124f51e6fd0e7da457f85dad3",
"body": "Prettier was rewriting *.cts after biome (match-all + no exclude),\nso the empty style(nx-plugin) commit fixed nothing and nx-plugin:lint\nkept failing on the trailing-comma biome wants. Route the full JS/TS\nextension set through biome and exclude those globs from prettier.",
"is_bot": false,
"headline": "fix(cli): let biome format cts/cjs/mjs/mts in git-format-staged",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cafe97c0c782858f346e4faf9665e9ce141f1c8c",
"body": "Checked-in actions are generated from packages/cli/managed templates.\nUpdate the templates and register cache-ttsc-plugins so monorepo\ncheck and managed-files tests stay aligned.",
"is_bot": false,
"headline": "fix(cli): sync managed GHA templates for ttsc plugin cache",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6cb9d3b858c432a97ee21dbacd2930d174799041",
"body": "npm trust list requires auth; E401 was not treated as access-denied\n(only E403 was), so smoo threw a useless exit-code wrapper. Treat\nlogin-required 401s like access-denied (whoami/owners + browser login)\nand include npm's error lines in remaining failure messages.\n\nAlso drop the hand-written bun/preload.d.ts stub now that ttsc emits\ndist types.",
"is_bot": false,
"headline": "fix(cli): surface npm trust E401 and real error text",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "64a47cdf1de6d114c400d7b57e88411f82dcd250",
"body": "Plugin cache location is a shell concern. Export it in enterShell\n(and persist via bootstrap GITHUB_ENV for post-setup CI steps) like\nTTSC_TSGO_BINARY. setup-devenv only restores the Actions cache.",
"is_bot": false,
"headline": "fix(cli): set TTSC_CACHE_DIR from devenv, not a GHA step",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ad55c8de170a01b368577696724a555d9f5a79aa",
"body": "lmao:rust-wasm depends on lmao-rs:cargo-wasm, but that target was never\ndeclared (nx-plugin does not infer wasm from crate metadata). Local\nbuilds passed on a stale packages/lmao-rs/dist/lmao_wasm.wasm; CI\nhad no artifact.\n\nAdd package-local cargo-wasm (just wasm) and copy the release\nwasm into dist/lmao_wasm.wasm for the downstream copy into\nlmao/dist/allocator.wasm.",
"is_bot": false,
"headline": "fix(lmao-rs): declare cargo-wasm so lmao:rust-wasm can build",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "982fb46c329dcbc96471df735ee3f3e722c97131",
"body": "The typia native plugin is built on first ttsc invoke (~minutes on a\ncold Go cache). CI only cached Nix/devenv, node_modules, and Nx —\nnot the ttsc plugin cache.\n\nPoint TTSC_CACHE_DIR at $GITHUB_WORKSPACE/.cache/ttsc and cache only\nthe content-keyed plugin binaries (~30MB). Leave go-build uncached\n(multi-GB) and keep it out of the node_modules cache path.",
"is_bot": false,
"headline": "ci: cache compiled ttsc plugins outside node_modules",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7fb0ddfddf602a5b704cbb310f5b5c30e4765fbe",
"body": "Root cause: EmitWithPluginTransformers ran JS plugin transforms\nbefore declaration emit. Typia mutates program nodes during JS emit,\nso the later dts pass saw synthetic validator bodies (_io0, etc.) and\nnoEmitOnError dropped all .d.ts while still writing JS.\n\nWe already had this fix as patches/ttsc@\n[…]\nstall\nis ttsc@0.19.3 so bun never applied it. Move the patch to ttsc@0.19.3.\n\nAlso lock typia to 13.1.19 workspace-wide (override + root dep)\nso node resolution cannot fall back to typia 12 (TS5-era).",
"is_bot": false,
"headline": "fix(cli,lmao): reapply ttsc d.ts-before-transform patch on 0.19.3",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0a7a0f3cdb52e0893a09a2de3f134c48ce390524",
"body": "Drop base noEmitOnError. Typia transform can leave checker noise that\nblocked declaration emit while still writing JS. AxE's base has no\nnoEmitOnError; matching that restores one-shot `ttsc --emit` for cli,\nlmao, and other typia packages without a separate tsc pass.",
"is_bot": false,
"headline": "fix(cli,lmao): emit .d.ts via single ttsc",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "482b64293c27c83904be06dadda21a171048c9a3",
"body": "Validate/frozen CI: lockfile must match package.json (including -next).\nPre-publish (versionActions / --mode publish): rewrite unpublished -next\nworkspace entries to the last stable tag so bun pm pack does not embed\nunpublishable dependency versions for untouched prepare-next packages.\n\nDay-to-day packed-package checks use install expectations; release\npack assert uses publish expectations.",
"is_bot": false,
"headline": "fix(cli): split install vs publish bun.lock policies",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d42e856dbeff5f262d0816056ee8e4bbede97ea",
"body": "The lockfile check exists because Bun packs workspace:* from lockfile\nversions, not package.json. Keep that invariant, but stop rewriting\nprereleases to older stable tags — that fought bun install forever.",
"is_bot": false,
"headline": "fix(cli): validate bun.lock against package.json versions",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1b295c3347fb26ec28645915db4d6e6a3404e7d8",
"body": "External repos and tooling only depend on @smoothbricks/cli. Re-export\nthe Typia/ttsc Bun preload from the CLI package so source self-hosting\ndoes not require a direct @smoothbricks/validation dependency.",
"is_bot": false,
"headline": "fix(cli): export bun/preload for self-hosted and external smoo",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5fa5ef65b668ba97e3342374e7c8c535cfdf16cd",
"body": "Bootstrap only installs deps and wires git hooks/config. Runtime pin\nsync needs the package graph and belongs to explicit monorepo tooling,\nnot the installer that creates node_modules.",
"is_bot": false,
"headline": "fix(cli): keep direnv setup free of workspace package imports",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b230940e836a35a39501b7c709258f68ae9eba3f",
"body": "Leave lockfile sync to release/Nx versionActions and explicit monorepo\ninit/validate packs. Pre-commit was fighting bun install on -next\nworkspace versions and churning bun.lock every commit.",
"is_bot": false,
"headline": "fix(cli): stop rewriting bun.lock on every pre-commit",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d8cb158cc534c73d3ce94a4d7a2c2ebdae92fce",
"body": "setup-environment.ts loads @smoothbricks/cli monorepo entrypoints after\nbun install. Those package exports resolve to TypeScript source under\nBun, so register the validation ttsc preload before importing them.",
"is_bot": false,
"headline": "fix(cli): preload Typia before direnv setup imports CLI source",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2038505020d4cc6543b9ca063271f5543ea03e9",
"body": "…acts\n\nIntroduce PackageJson/NxProjectJson Typia parsers and concrete mutation\nhelpers, cut github-ci/nx/pr/package-policy/runtime/wrangler/tests off\nhand-rolled record walks, and preload Typia transforms in tooling/smoo\nso self-hosted source execution works under pre-commit.",
"is_bot": false,
"headline": "refactor(cli): replace isRecord walks with typed PackageJson/Nx contr…",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e1f75a30672d938ef755fae344b07de2a9e62f0d",
"body": "Replace hand-rolled isRecord/recordValue/stringProperty walks in managed-files,\npacked-manifest, runtime, cli-package, and github-ci outputs with PackageJson /\nNxProjectJson parsers and typed property access.",
"is_bot": false,
"headline": "refactor(cli): cut monorepo helpers over to typed JSON contracts",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5db02c9520e5510381760e580f1a661567cbcaf9",
"body": "Cut release/packed-package/prepare-env off hand-rolled isRecord walks onto\nPackageJson/NxProjectJson/NxJson contracts and Typia parsers for attw and\nwrangler env shapes.",
"is_bot": false,
"headline": "refactor(cli): type packed-package, release, prepare-env JSON paths",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1e44b0d5b66bd646bd0068ce8492cb5263aa2375",
"body": "Replace isRecord/recordProperty walks with PackageJson/NxTargetConfig\ncontracts and ensureObjectField/ensureStringMap helpers across package\npolicy, tool validation, and wrangler scaffolding. Restore relative\nPackageInfo.path and the readPackageJsonObject alias so listing callers\nkeep their prior contract.",
"is_bot": false,
"headline": "refactor(cli): type package-policy and wrangler JSON cutover",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "413edb03f81a0ee8b62a9a7882cedecb0cddbbeb",
"body": "Replace the unsafe JSON.parse assertion in eventDefaultBranch with\ntypia.json.createIsParse so the boundary is type-checked without casts.",
"is_bot": false,
"headline": "fix(cli): parse GitHub event payload with Typia",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c7dde665b67a063bfc388f99214868ad40a3df46",
"body": "Managed-file drift is derived state (template x pinned CLI version), so\nit no longer blocks releases or validation:\n\n- 'smoo monorepo check --warn' reports drift as GitHub warning\n annotations and exits 0; the publish workflow template uses it, so\n publishing only blocks on actual package issues.\n\n[…]\nersistent chore/managed-files review branch + PR. Never auto-merged;\n template changes get human review. Workflow-file pushes need a\n MANAGED_FILES_TOKEN app/PAT (documented in the template header).",
"is_bot": false,
"headline": "feat(cli): non-blocking managed-file drift + CI-dispatched healing PR",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2ed7c332c29cb9e6a0fa9027907f474ef2574f7c",
"body": "…lt-base PRs\n\nnx-smart's auto mode hardcoded 'main', so repos with another default\nbranch never got full push validation, and PRs into integration\nbranches (e.g. mirror-sync review branches based on public-mirror)\nran affected-scoped tasks that under-selected — a broken task passed\nPR CI and only failed after merge. auto now reads the repository\ndefault branch from the Actions event payload: default-branch pushes\nand PRs whose base is not the default branch run the full task set.",
"is_bot": false,
"headline": "feat(cli): full nx validation for default-branch pushes and non-defau…",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "30c235cfae66c668411bc89e25939a84ce3df1fb",
"body": "…ate pins against PATH\n\nTwo template-isms replaced by runtime truth:\n\n- runtimeTypesRangeForPublishedVersions returned the ~major.0.0 floor,\n which tilde-locks the first patch line and stranded consumers on\n @types/node 24.0.x (URLPattern/DOM TS2403, fixed upstream in 24.13).\n It now returns ~<ne\n[…]\nnager,\n and @types/node against the live PATH runtimes (devenv shell), gated\n by the same syncRuntime flag as the init-time sync — offline,\n structural, with the ~major.0.0 floor rejected outright.",
"is_bot": false,
"headline": "fix(cli): pin @types/node to newest minor in the runtime major; valid…",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "033d8173024f5f9ec32a1aec0d571139355ec83d",
"body": "The SpanBuffer ColumnBufferExtension now carries\nclosureInit/closureMethods — exact no-eval re-expressions of its\nconstructorPreamble and methods code strings — so arrow-builder's\nclosure-composed materializer can build the class on runtimes that\nforbid string codegen (production workerd). Identical\n[…]\nthis, the full traced path (defineOpContext -> defineOp ->\ntrace -> fluent span/log writes -> Arrow conversion) runs with\nglobalThis.Function denied, selecting the closure materializers\nautomatically.",
"is_bot": false,
"headline": "feat(lmao): closure-composed SpanBuffer extension for no-eval runtimes",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8f6248dead7d3d0dff40b8df68439a8dc745b817",
"body": "createSpanLoggerClass selects via arrow-builder's\nactiveMaterializerMode(): the compiled path renders the same state-bound\nclass source as before (byte-identical over a 21-snapshot corpus\nspanning all messageLayoutFamily x messagePhysicalLayout combinations)\nand the new closure materializer assemble\n[…]\ndy order on one\nshared prototype per schema/config. Cache keys are mode-prefixed. Parity\nsuite byte-compares buffers across 12 scenarios including preallocated\neager columns and thrown-message parity.",
"is_bot": false,
"headline": "feat(lmao): no-eval closure materializer for SpanLogger",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bf66b809e0f46c59a07a5da5dd51d757ba816ef5",
"body": "getResultWriterClass selects via arrow-builder's\nactiveMaterializerMode(): compiled renders the same class source as\nbefore (byte-identical over a 55-file corpus) and evaluates it with new\nFunction; the closure path builds the writer from per-field closures\nover enumLookup/helpers installed with Obj\n[…]\ned\nclass-member shape. Result-writer cache keys are mode-prefixed.\nParity suite drives identical write scripts through both materializers\nover all message layout families and byte-compares every lane.",
"is_bot": false,
"headline": "feat(lmao): no-eval closure materializer for fixed-position writers",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7fe4d0a4f7dab0c401d90e8afbb1c6cb4fa586a8",
"body": "ColumnBufferExtension gains no-eval counterparts of its code-string\nfields for the closure-composed materializer: closureInit runs like\nconstructorPreamble (start of constructor, receiving the instance,\nrequestedCapacity, and the constructorParams-ordered arguments) and\nclosureMethods installs proto\n[…]\niled class body). The compiled\nmaterializer ignores both, and like `dependencies` they are excluded\nfrom the cache key. constructorCode still has no counterpart and\nkeeps throwing on the closure path.",
"is_bot": false,
"headline": "feat(arrow-builder): closureInit/closureMethods no-eval extension hooks",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "854ee6c7ba0d09f2564a11fdd9097a00652ad134",
"body": "Rust output targets (cargo-wasm, cargo-napi, ...) are never derived\nfrom crate-type any more: a native N-API cdylib is not a wasm\nbuild. Packages declare output targets in package.json nx.targets,\nand their *-wasm / *-napi / *-native output-family names feed the\naggregate build and clean. Generic cargo-test, cargo-lint, mutation,\nand bench inference from a workspace-root Cargo.toml is unchanged.",
"is_bot": false,
"headline": "fix(nx-plugin): stop inferring cargo-wasm from cdylib crate metadata",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5486800576cdbd3ccb1b8bd462318310c2475eda",
"body": "Production workerd forbids code generation from strings, so building\nColumnBuffer/ColumnWriter classes with new Function at import blocks\nevery traced AxE runtime there. Split each generator into schema ->\naccessor plan (pure data: fields, storage kinds, byte layout, validity\nmode) consumed by two m\n[…]\nver the schema\ncorpus (all types x lazy/eager, preallocated columns, wide enums,\nsparse/null writes, writer overflow chaining, enum error messages,\nbinary freezing) and asserts byte-identical buffers.",
"is_bot": false,
"headline": "feat(arrow-builder): no-eval closure-composed column-buffer materializer",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "61fdb40090894403c3f5271e8567341e00460565",
"body": "Upgrade smoothbricks rather than downgrade consumers: AxE pins\n@types/node ~24.13.0 because 24.0's URLPattern declaration TS2403-\nconflicts with lib.dom in strict declaration consumers; moving this\nrepo forward to ~26.1.1 (URLPattern DOM-compatible) ends the split.\nAlso @swc-node/register 1.12.0, @s\n[…]\n @swc/helpers 0.5.23,\nverdaccio 6.8.0; ttsc ^0.19.1 now resolves 0.19.2.\nGates: nx run-many lint (17 projects), test (17 projects incl.\ncargo/go lanes), tsc-js (15 projects) — all green, zero fallout.",
"is_bot": false,
"headline": "chore(tooling): upgrade dev toolchain pins — @types/node to ~26.1.1",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6bef1863d9e84b0a72a39da2f3fa37438350a50f",
"body": "evictExpired narrowed the raw vm_evict_all_expired return with 'status\nas ErrorCode', manufacturing a bogus enum member if the WASM binary\never returns a status the TS mirror does not know. Map it through an\nexhaustive switch (the compactStatusCode pattern from parse-backend):\nknown operational failures still return { ok: false, error }, and an\nout-of-enum status now throws a teaching contract-violation error\ninstead of leaking a fake ErrorCode. EvictionResult's public shape\nis unchanged.",
"is_bot": false,
"headline": "fix(columine): map evict status to ErrorCode without cast",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d361e2c546b19835d331a7fa5587a74d35ec6101",
"body": "scratchColPtrs/scratchColPtrsWidth were module-level singletons\nshared by every createColumineWasmBackend() instance in the process\n— inconsistent with the removal of the global backend DI singleton\n(127836fed), and a latent cross-instance corruption if prepareExecution\never interleaves. Move them into the factory closure so each backend\nowns its scratch state; the per-batch allocation-avoidance on the\nhot reduce path is unchanged.",
"is_bot": false,
"headline": "fix(columine): scope executeBatch scratch buffer per backend instance",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "73884cc036e838b877d079b215640f516a91df0d",
"body": "ColumnStorage::new_int32 built a cap*8 Int64 fixed buffer via new()\nand immediately replaced it with the cap*4 buffer it actually wanted,\nthrowing the first allocation away. Thread the fixed width through a\nprivate with_fixed_width constructor so the buffer is allocated once\nat the right size.",
"is_bot": false,
"headline": "fix(columine): allocate int32 column storage once",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b92e35481f279a740e9bea25e593f4d80d8ca50b",
"body": null,
"is_bot": false,
"headline": "fix(columine): populate event value presence columns",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9285d0cdf5878dfa011f99c500f9145f44b95aa4",
"body": null,
"is_bot": false,
"headline": "fix(nx-plugin): exclude iOS targets from aggregate builds",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "95b25e3f7e6f3cf1aae60061173d743c9dbf1dd3",
"body": null,
"is_bot": false,
"headline": "feat(columine): route Compact through native EP WASM",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e27d5d19a848c8e82958ffeb3628528bf92d4520",
"body": null,
"is_bot": false,
"headline": "test(columine): terminate wasm smoke init programs",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "615f6887e3e5ebfc539ed67654a1a8dd6a8c56c7",
"body": null,
"is_bot": false,
"headline": "test(columine): terminate struct-map max programs",
"author_name": "Danny Wilson",
"author_login": "vizanto",
"committed_at": "2026-07-20T09:40:22Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 1389,
"latest_release_at": "2026-07-20T22:47:15Z",
"latest_release_tag": "nx-plugin@0.3.4",
"releases_from_tags": false,
"days_since_last_push": 5,
"active_weeks_last_year": 29,
"days_since_latest_release": 6,
"mean_days_between_releases": 0
},
"community": {
"has_readme": false,
"has_license": false,
"has_description": true,
"has_contributing": false,
"health_percentage": 25,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "@smoothbricks/cli",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/cli",
"is_deprecated": false,
"latest_version": "0.10.5",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 23,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 2015,
"first_published_at": "2026-04-28T01:53:11.185000Z",
"latest_published_at": "2026-07-20T22:47:00.422000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/lmao",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/lmao",
"is_deprecated": false,
"latest_version": "0.2.3",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 9,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 874,
"first_published_at": "2026-04-28T01:53:28.621000Z",
"latest_published_at": "2026-07-20T18:29:13.004000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/time",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/time",
"is_deprecated": false,
"latest_version": "0.1.4",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 5,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 472,
"first_published_at": "2026-04-28T01:54:04.696000Z",
"latest_published_at": "2026-07-20T18:29:46.841000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/money",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/money",
"is_deprecated": false,
"latest_version": "0.1.6",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 7,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 825,
"first_published_at": "2026-04-28T01:53:44.049000Z",
"latest_published_at": "2026-07-20T18:29:29.362000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/columine",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/columine",
"is_deprecated": false,
"latest_version": "0.1.5",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 6,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 647,
"first_published_at": "2026-04-28T01:53:16.644000Z",
"latest_published_at": "2026-07-20T18:28:58.080000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/duration",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/duration",
"is_deprecated": false,
"latest_version": "0.1.4",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 5,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 481,
"first_published_at": "2026-04-28T01:53:22.060000Z",
"latest_published_at": "2026-07-20T18:29:03.633000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/lmao-ttsc",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/lmao-ttsc",
"is_deprecated": false,
"latest_version": "0.1.8",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 4,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 549,
"first_published_at": "2026-07-16T13:53:42.071000Z",
"latest_published_at": "2026-07-20T18:29:24.060000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 6
},
{
"name": "@smoothbricks/nx-plugin",
"exists": true,
"license": "MIT",
"keywords": [],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@smoothbricks/nx-plugin",
"is_deprecated": false,
"latest_version": "0.3.4",
"repository_url": "https://github.com/smoothbricks/codebase",
"versions_count": 13,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 3,
"monthly_downloads": 1036,
"first_published_at": "2026-04-29T19:31:37.614000Z",
"latest_published_at": "2026-07-20T22:47:08.856000Z",
"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": 2
},
"ai_readiness": {
"has_nix": true,
"example_dirs": [
"examples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [
"packages/columine/justfile",
"packages/lmao-rs/justfile"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"packages/arrow-builder/tsconfig.json",
"packages/cli/tsconfig.json",
"packages/columine/src/tsconfig.json",
"packages/columine/tsconfig.json",
"packages/cowshed/tsconfig.json",
"packages/duration/tsconfig.json",
"packages/lmao-expo-benchmark/tsconfig.json",
"packages/lmao-inspector/tsconfig.json",
"packages/lmao-ttsc/examples/tsconfig.json",
"packages/lmao-ttsc/tsconfig.json",
"packages/lmao/tsconfig.json",
"packages/money/tsconfig.json",
"packages/nx-plugin/tsconfig.json",
"packages/opencode-entangled/tsconfig.json",
"packages/statebus-core/tsconfig.json",
"packages/statebus-react/tsconfig.json",
"packages/time/tsconfig.json",
"packages/validation/tsconfig.json",
"targets/lmao-docs/tsconfig.json",
"tsconfig.json"
],
"toolchain_manifests": [
"packages/columine/Cargo.toml",
"packages/columine/crates/columine-arrow/Cargo.toml",
"packages/columine/crates/columine-ep-wasm/Cargo.toml",
"packages/columine/crates/columine-event-processor/Cargo.toml",
"packages/columine/crates/columine-parsing/Cargo.toml",
"packages/columine/crates/columine-types/Cargo.toml",
"packages/columine/crates/columine-vm/Cargo.toml",
"packages/columine/crates/columine-wasm/Cargo.toml",
"packages/cowshed/Cargo.toml",
"packages/cowshed/crates/cowshed-cli/Cargo.toml",
"packages/cowshed/crates/cowshed-core/Cargo.toml",
"packages/cowshed/crates/cowshed-escape-tests/Cargo.toml",
"packages/cowshed/crates/cowshed-gateway/Cargo.toml",
"packages/cowshed/crates/cowshed-napi/Cargo.toml",
"packages/lmao-rs/Cargo.toml",
"packages/lmao-rs/crates/lmao-arena/Cargo.toml",
"packages/lmao-rs/crates/lmao-arrow/Cargo.toml",
"packages/lmao-rs/crates/lmao-core/Cargo.toml",
"packages/lmao-rs/crates/lmao-macros/Cargo.toml",
"packages/lmao-rs/crates/lmao-query/Cargo.toml",
"packages/lmao-rs/crates/lmao-timestamp-proof/Cargo.toml",
"packages/lmao-rs/crates/lmao-wasm/Cargo.toml",
"packages/lmao-ttsc/plugin/go.mod"
],
"largest_source_bytes": 196566,
"source_files_sampled": 734,
"oversized_source_files": 22,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md",
"packages/CLAUDE.md",
"packages/cowshed/docs/agents.md"
],
"agent_instruction_max_bytes": 51885
},
"dependencies": {
"manifests": [
"package.json",
"tooling/package.json"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [
{
"name": "axios",
"direct": false,
"version": "1.16.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.2,
"advisory_ids": [
"GHSA-42h9-826w-cgv3",
"GHSA-7q8q-rj6j-mhjq",
"GHSA-f4gw-2p7v-4548",
"GHSA-gcfj-64vw-6mp9",
"GHSA-hcpx-6fm6-wx23",
"GHSA-jqh4-m9w3-8hp9",
"GHSA-mmx7-hfxf-jppx",
"GHSA-mwf2-3pr3-8698",
"GHSA-pmv8-rq9r-6j72",
"GHSA-xj6q-8x83-jv6g"
],
"fixed_version": "1.18.0",
"advisory_count": 10,
"oldest_advisory_days": 6
},
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.6",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-mh99-v99m-4gvg"
],
"fixed_version": "5.0.8",
"advisory_count": 2,
"oldest_advisory_days": 6
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"high": 2
},
"advisory_count": 12,
"affected_count": 2,
"assessed_count": 348,
"malicious_count": 0,
"assessed_package": "npm:@smoothbricks/cli@0.10.5",
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "@smoothbricks/cli",
"manifest": "tooling/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@uwdata/flechette",
"manifest": "packages/arrow-builder/package.json",
"ecosystem": "npm",
"version_constraint": "^2.3.0"
},
{
"name": "tslib",
"manifest": "packages/arrow-builder/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "@arethetypeswrong/core",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^0.18.2"
},
{
"name": "@prettier/sync",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^0.6.1"
},
{
"name": "@smoothbricks/nx-plugin",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@smoothbricks/validation",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "commander",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^14.0.3"
},
{
"name": "prettier",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^3.6.1"
},
{
"name": "publint",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^0.3.18"
},
{
"name": "semver",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^7.7.4"
},
{
"name": "sherif",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^1.11.1"
},
{
"name": "toml-eslint-parser",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^1.0.3"
},
{
"name": "tslib",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "typia",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "13.1.19"
},
{
"name": "typia",
"manifest": "packages/cowshed/package.json",
"ecosystem": "npm",
"version_constraint": "13.1.19"
},
{
"name": "tslib",
"manifest": "packages/duration/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "eslint-friendly-formatter",
"manifest": "packages/eslint-stdout/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.1"
},
{
"name": "@expo/metro-runtime",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "57.0.3"
},
{
"name": "@smoothbricks/lmao",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "expo",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "57.0.4"
},
{
"name": "fast-text-encoding",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "1.0.6"
},
{
"name": "react",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "19.2.3"
},
{
"name": "react-dom",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "19.2.3"
},
{
"name": "react-native",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "0.86.0"
},
{
"name": "react-native-get-random-values",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "2.0.0"
},
{
"name": "react-native-web",
"manifest": "packages/lmao-expo-benchmark/package.json",
"ecosystem": "npm",
"version_constraint": "0.21.2"
},
{
"name": "@duckdb/duckdb-wasm",
"manifest": "packages/lmao-inspector/package.json",
"ecosystem": "npm",
"version_constraint": "1.33.1-dev20.0"
},
{
"name": "@uwdata/flechette",
"manifest": "packages/lmao-inspector/package.json",
"ecosystem": "npm",
"version_constraint": "^2.3.0"
},
{
"name": "@ttsc/unplugin",
"manifest": "packages/lmao-ttsc/package.json",
"ecosystem": "npm",
"version_constraint": "0.19.3"
},
{
"name": "ttsc",
"manifest": "packages/lmao-ttsc/package.json",
"ecosystem": "npm",
"version_constraint": "0.19.3"
},
{
"name": "typescript",
"manifest": "packages/lmao-ttsc/package.json",
"ecosystem": "npm",
"version_constraint": "^6.0.3"
},
{
"name": "@msgpack/msgpack",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "^3.1.3"
},
{
"name": "@neophi/sieve-cache",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "^1.5.0"
},
{
"name": "@smoothbricks/arrow-builder",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@smoothbricks/validation",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@uwdata/flechette",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "^2.3.0"
},
{
"name": "tslib",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "typia",
"manifest": "packages/lmao/package.json",
"ecosystem": "npm",
"version_constraint": "13.1.19"
},
{
"name": "tslib",
"manifest": "packages/money/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "@nx/js",
"manifest": "packages/nx-plugin/package.json",
"ecosystem": "npm",
"version_constraint": "23.1.0"
},
{
"name": "nx",
"manifest": "packages/nx-plugin/package.json",
"ecosystem": "npm",
"version_constraint": "23.1.0"
},
{
"name": "tslib",
"manifest": "packages/nx-plugin/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "@opencode-ai/plugin",
"manifest": "packages/opencode-entangled/package.json",
"ecosystem": "npm",
"version_constraint": "^1.3.5"
},
{
"name": "fenceparser",
"manifest": "packages/opencode-entangled/package.json",
"ecosystem": "npm",
"version_constraint": "^2.2.0"
},
{
"name": "typia",
"manifest": "packages/opencode-entangled/package.json",
"ecosystem": "npm",
"version_constraint": "13.1.19"
},
{
"name": "@tldraw/state",
"manifest": "packages/statebus-core/package.json",
"ecosystem": "npm",
"version_constraint": "^3.15.5"
},
{
"name": "tslib",
"manifest": "packages/statebus-core/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "@smoothbricks/statebus-core",
"manifest": "packages/statebus-react/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@tldraw/state",
"manifest": "packages/statebus-react/package.json",
"ecosystem": "npm",
"version_constraint": "^3.15.5"
},
{
"name": "@tldraw/state-react",
"manifest": "packages/statebus-react/package.json",
"ecosystem": "npm",
"version_constraint": "^3.15.5"
},
{
"name": "tslib",
"manifest": "packages/statebus-react/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
},
{
"name": "tslib",
"manifest": "packages/time/package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.1"
}
],
"all_dependencies": {
"error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
"source": null,
"packages": [],
"collected": false,
"truncated": false,
"total_count": null,
"direct_count": null,
"indirect_count": null
}
},
"maintainership": {
"issues": {
"open_prs": 2,
"merged_prs": 6,
"open_issues": 0,
"closed_ratio": null,
"closed_issues": 0,
"closed_unmerged_prs": 0
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "vizanto",
"commits": 1286,
"avatar_url": "https://avatars.githubusercontent.com/u/326263?v=4"
},
{
"type": "User",
"login": "GeorgeShani",
"commits": 71,
"avatar_url": "https://avatars.githubusercontent.com/u/121453590?v=4"
},
{
"type": "User",
"login": "BlueXiphoid",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/924615?v=4"
},
{
"type": "User",
"login": "NikoT2",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/108948335?v=4"
}
],
"contributors_sampled": 4,
"top_contributor_share": 0.946
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"ci.yml",
"managed-files.yml",
"publish.yml"
],
"has_docs_dir": false,
"linter_configs": [
"biome.json"
],
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"Cargo.lock"
],
"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": 0,
"reason": "branch protection not enabled on development/release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "1 out of 1 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/1 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 6,
"reason": "project has 2 contributing companies or organizations -- score normalized to 6",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 0,
"reason": "no update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 10,
"reason": "project is fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 0,
"reason": "license file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 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": 0,
"reason": "23 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "79b7d844136790d41e25e78b365d55310109327a",
"ran_at": "2026-07-27T16:54:48Z",
"aggregate_score": 3.7,
"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-22T11:12:43Z",
"oldest_open_prs": [
{
"number": 1,
"created_at": "2025-11-20T08:57:51Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 8,
"created_at": "2026-07-22T11:06:52Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-22T10:55:10Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/smoothbricks/codebase",
"host": "github.com",
"name": "codebase",
"owner": "smoothbricks"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 56,
"inputs": {
"security": 46,
"vitality": 90,
"community": 17,
"governance": 56,
"engineering": 62
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 90,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"commits_last_year": 1389,
"human_commit_share": 0.96,
"days_since_last_push": 5,
"active_weeks_last_year": 29
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 5 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 5
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "29/52 weeks with commits",
"points": 20.1,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 29
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1389 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1389
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 100,
"inputs": {
"releases_count": 100,
"latest_release_tag": "nx-plugin@0.3.4",
"releases_from_tags": false,
"days_since_latest_release": 6,
"mean_days_between_releases": 0
},
"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 ~0 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 0
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 5,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 5 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 5
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "critical",
"name": "Community & Adoption",
"value": 17,
"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": "critical",
"name": "Community health",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"has_readme": false,
"has_license": false,
"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": 0,
"status": "missed",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "no license file detected",
"points": 0,
"status": "missed",
"details": [
{
"code": "license_absent",
"params": {}
}
],
"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": 64,
"inputs": {
"packages": [
"@smoothbricks/cli",
"@smoothbricks/lmao",
"@smoothbricks/time",
"@smoothbricks/money",
"@smoothbricks/columine",
"@smoothbricks/duration",
"@smoothbricks/lmao-ttsc",
"@smoothbricks/nx-plugin"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 6899
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "6,899 downloads/month across npm",
"points": 51.2,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 6899,
"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": 56,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 22,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 4,
"top_contributor_share": 0.946
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 95% of commits",
"points": 1.2,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 95
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "4 contributors",
"points": 5.4,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 4
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 2 contributing companies or organizations -- score normalized to 6",
"points": 6,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Issue resolution. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"issue_resolution"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 72,
"inputs": {
"merged_prs": 6,
"open_issues": 0,
"closed_issues": 0,
"issue_closed_ratio": null,
"closed_unmerged_prs": 0
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "no issues or no data",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_issues_or_data",
"params": {}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "6/6 decided PRs merged",
"points": 38.2,
"status": "met",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 6,
"decided": 6
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/1 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": 46,
"inputs": {
"followers": 2,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "smoothbricks",
"public_repos": 7,
"account_age_days": 1056
},
"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": "2 followers of smoothbricks",
"points": 3.4,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 2,
"login": "smoothbricks"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "7 public repos, account ~2 yr old",
"points": 12.4,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 7
}
},
{
"code": "account_age_years",
"params": {
"years": 2
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"@smoothbricks/cli",
"@smoothbricks/lmao",
"@smoothbricks/time",
"@smoothbricks/money",
"@smoothbricks/columine",
"@smoothbricks/duration",
"@smoothbricks/lmao-ttsc",
"@smoothbricks/nx-plugin"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 6
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "8 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 8,
"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": "23 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 23
}
}
],
"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": "moderate",
"name": "Engineering Quality",
"value": 62,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "3 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 3
}
}
],
"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": "biome.json",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"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": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "1 out of 1 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "critical",
"name": "Documentation",
"note": null,
"notes": [],
"value": 20,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": null,
"has_readme": false,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": 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": 37,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 3.7
},
"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 not enabled on development/release branches",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "1 out of 1 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/1 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 2 contributing companies or organizations -- score normalized to 6",
"points": 1.5,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "no update tool detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is fuzzed",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 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": "23 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "good",
"name": "Dependency advisories",
"note": "Matched the npm:@smoothbricks/cli@0.10.5 runtime dependency closure — what installing the published package pulls in — 348 packages. Reachability is not analyzed.",
"notes": [
{
"code": "advisories_scope_published",
"params": {
"package": "npm:@smoothbricks/cli@0.10.5",
"assessed": 348
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 82,
"inputs": {
"source": "osv",
"advisories": 12,
"affected_packages": 2,
"assessed_packages": 348,
"unassessed_packages": 0,
"affected_by_severity": "high 2",
"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": "2 affected: axios 1.16.1 (high 8.2), brace-expansion 5.0.6 (high 7.5)",
"points": 7.2,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 2,
"packages": "axios 1.16.1 (high 8.2), brace-expansion 5.0.6 (high 7.5)"
}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory has been public longer than 90 days",
"points": 40,
"status": "met",
"details": [
{
"code": "advisories_none_stale",
"params": {
"days": 90
}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 348,
"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": 3
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 79,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "excellent",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 1,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md",
"packages/CLAUDE.md",
"packages/cowshed/docs/agents.md"
],
"agent_instruction_max_bytes": 51885
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "AGENTS.md, CLAUDE.md, packages/CLAUDE.md, packages/cowshed/docs/agents.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "AGENTS.md, CLAUDE.md, packages/CLAUDE.md, packages/cowshed/docs/agents.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "96 of 96 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 96,
"sampled": 96
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"has_nix": true,
"has_tests": true,
"lockfiles": [
"Cargo.lock"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [
"packages/columine/justfile",
"packages/lmao-rs/justfile"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"packages/arrow-builder/tsconfig.json",
"packages/cli/tsconfig.json",
"packages/columine/src/tsconfig.json",
"packages/columine/tsconfig.json",
"packages/cowshed/tsconfig.json",
"packages/duration/tsconfig.json",
"packages/lmao-expo-benchmark/tsconfig.json",
"packages/lmao-inspector/tsconfig.json",
"packages/lmao-ttsc/examples/tsconfig.json",
"packages/lmao-ttsc/tsconfig.json",
"packages/lmao/tsconfig.json",
"packages/money/tsconfig.json",
"packages/nx-plugin/tsconfig.json",
"packages/opencode-entangled/tsconfig.json",
"packages/statebus-core/tsconfig.json",
"packages/statebus-react/tsconfig.json",
"packages/time/tsconfig.json",
"packages/validation/tsconfig.json",
"targets/lmao-docs/tsconfig.json",
"tsconfig.json"
],
"agent_commit_share": 0.4,
"toolchain_manifests": [
"packages/columine/Cargo.toml",
"packages/columine/crates/columine-arrow/Cargo.toml",
"packages/columine/crates/columine-ep-wasm/Cargo.toml",
"packages/columine/crates/columine-event-processor/Cargo.toml",
"packages/columine/crates/columine-parsing/Cargo.toml",
"packages/columine/crates/columine-types/Cargo.toml",
"packages/columine/crates/columine-vm/Cargo.toml",
"packages/columine/crates/columine-wasm/Cargo.toml",
"packages/cowshed/Cargo.toml",
"packages/cowshed/crates/cowshed-cli/Cargo.toml",
"packages/cowshed/crates/cowshed-core/Cargo.toml",
"packages/cowshed/crates/cowshed-escape-tests/Cargo.toml",
"packages/cowshed/crates/cowshed-gateway/Cargo.toml",
"packages/cowshed/crates/cowshed-napi/Cargo.toml",
"packages/lmao-rs/Cargo.toml",
"packages/lmao-rs/crates/lmao-arena/Cargo.toml",
"packages/lmao-rs/crates/lmao-arrow/Cargo.toml",
"packages/lmao-rs/crates/lmao-core/Cargo.toml",
"packages/lmao-rs/crates/lmao-macros/Cargo.toml",
"packages/lmao-rs/crates/lmao-query/Cargo.toml",
"packages/lmao-rs/crates/lmao-timestamp-proof/Cargo.toml",
"packages/lmao-rs/crates/lmao-wasm/Cargo.toml",
"packages/lmao-ttsc/plugin/go.mod"
],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "packages/columine/justfile, packages/lmao-rs/justfile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "packages/columine/justfile, packages/lmao-rs/justfile"
}
}
],
"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": "biome.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "packages/arrow-builder/tsconfig.json, packages/cli/tsconfig.json, packages/columine/src/tsconfig.json, packages/columine/tsconfig.json, packages/cowshed/tsconfig.json, packages/duration/tsconfig.json, packages/lmao-expo-benchmark/tsconfig.json, packages/lmao-inspector/tsconfig.json, packages/lmao-ttsc/examples/tsconfig.json, packages/lmao-ttsc/tsconfig.json, packages/lmao/tsconfig.json, packages/money/tsconfig.json, packages/nx-plugin/tsconfig.json, packages/opencode-entangled/tsconfig.json, packages/statebus-core/tsconfig.json, packages/statebus-react/tsconfig.json, packages/time/tsconfig.json, packages/validation/tsconfig.json, targets/lmao-docs/tsconfig.json, tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "packages/arrow-builder/tsconfig.json, packages/cli/tsconfig.json, packages/columine/src/tsconfig.json, packages/columine/tsconfig.json, packages/cowshed/tsconfig.json, packages/duration/tsconfig.json, packages/lmao-expo-benchmark/tsconfig.json, packages/lmao-inspector/tsconfig.json, packages/lmao-ttsc/examples/tsconfig.json, packages/lmao-ttsc/tsconfig.json, packages/lmao/tsconfig.json, packages/money/tsconfig.json, packages/nx-plugin/tsconfig.json, packages/opencode-entangled/tsconfig.json, packages/statebus-core/tsconfig.json, packages/statebus-react/tsconfig.json, packages/time/tsconfig.json, packages/validation/tsconfig.json, targets/lmao-docs/tsconfig.json, tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Nix, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Nix, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "40 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 40,
"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": 98,
"inputs": {
"primary_language": "Rust",
"largest_source_bytes": 196566,
"source_files_sampled": 734,
"oversized_source_files": 22
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Rust (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Rust"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "22/734 source files over 60KB",
"points": 53.4,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 734,
"oversized": 22
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
],
"report_type": "repository",
"generated_at": "2026-07-27T16:55:05.071643Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/s/smoothbricks/codebase.svg",
"full_name": "smoothbricks/codebase",
"license_state": "absent",
"license_spdx": null
}