Звіт у форматі JSON машиночитний
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 39088,
"has_wiki": true,
"homepage": "https://omnibase-nine.vercel.app",
"languages": {
"Go": 652970,
"CSS": 13263,
"MDX": 483790,
"HTML": 2928,
"Shell": 22807,
"Jsonnet": 2310,
"PLpgSQL": 15927,
"Makefile": 2800,
"Dockerfile": 2295,
"JavaScript": 21816,
"TypeScript": 1541356,
"Go Template": 9778
},
"pushed_at": "2026-07-24T05:43:06Z",
"created_at": "2025-10-08T10:18:42Z",
"owner_type": "User",
"updated_at": "2026-07-24T05:43:09Z",
"description": null,
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "TypeScript",
"significant_languages": [
"TypeScript",
"Go",
"MDX"
]
},
"owner": {
"blog": null,
"name": null,
"type": "User",
"login": "PhoenixSolutionsGroup",
"company": null,
"location": null,
"followers": 0,
"avatar_url": "https://avatars.githubusercontent.com/u/197703300?v=4",
"created_at": "2025-02-04T03:22:09Z",
"is_verified": null,
"public_repos": 3,
"account_age_days": 538
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "cli-v0.8.1",
"kind": "other",
"published_at": "2026-07-24T05:43:19Z"
},
{
"tag": "nextjs-v0.8.3",
"kind": "other",
"published_at": "2026-07-24T05:41:54Z"
},
{
"tag": "api-v0.20.3",
"kind": "other",
"published_at": "2026-07-24T05:40:29Z"
},
{
"tag": "api-v0.20.2",
"kind": "other",
"published_at": "2026-07-24T05:05:47Z"
},
{
"tag": "cli-v0.8.0",
"kind": "other",
"published_at": "2026-07-24T03:42:11Z"
},
{
"tag": "shadcn-v0.8.1",
"kind": "other",
"published_at": "2026-07-24T03:41:19Z"
},
{
"tag": "api-v0.20.1",
"kind": "other",
"published_at": "2026-07-24T03:39:14Z"
},
{
"tag": "api-v0.20.0",
"kind": "other",
"published_at": "2026-07-07T06:35:31Z"
},
{
"tag": "api-v0.19.1",
"kind": "other",
"published_at": "2026-06-03T11:00:27Z"
},
{
"tag": "cli-v0.6.0",
"kind": "other",
"published_at": "2026-05-30T19:13:43Z"
},
{
"tag": "permissions-v0.4.0",
"kind": "other",
"published_at": "2026-05-30T19:12:41Z"
},
{
"tag": "auth-v0.4.1",
"kind": "other",
"published_at": "2026-05-30T19:11:46Z"
},
{
"tag": "api-v0.19.0",
"kind": "other",
"published_at": "2026-05-30T19:10:46Z"
},
{
"tag": "api-v0.18.1",
"kind": "other",
"published_at": "2026-02-07T03:51:56Z"
},
{
"tag": "cli-v0.5.0",
"kind": "other",
"published_at": "2026-02-06T02:54:21Z"
},
{
"tag": "shadcn-v0.8.0",
"kind": "other",
"published_at": "2026-02-06T02:53:45Z"
},
{
"tag": "api-v0.18.0",
"kind": "other",
"published_at": "2026-02-06T02:52:30Z"
},
{
"tag": "cli-v0.4.1",
"kind": "other",
"published_at": "2026-02-03T15:21:55Z"
},
{
"tag": "cli-v0.4.0",
"kind": "other",
"published_at": "2026-01-22T01:52:46Z"
},
{
"tag": "permissions-v0.3.0",
"kind": "other",
"published_at": "2026-01-22T01:51:39Z"
},
{
"tag": "auth-v0.4.0",
"kind": "other",
"published_at": "2026-01-22T01:50:37Z"
},
{
"tag": "api-v0.17.0",
"kind": "other",
"published_at": "2026-01-22T01:49:44Z"
},
{
"tag": "cli-v0.3.2",
"kind": "other",
"published_at": "2026-01-22T01:25:35Z"
},
{
"tag": "auth-v0.3.2",
"kind": "other",
"published_at": "2026-01-22T01:24:21Z"
},
{
"tag": "api-v0.16.0",
"kind": "other",
"published_at": "2026-01-22T01:23:29Z"
},
{
"tag": "auth-v0.3.1",
"kind": "other",
"published_at": "2026-01-21T22:46:23Z"
},
{
"tag": "cli-v0.3.1",
"kind": "other",
"published_at": "2026-01-21T22:21:18Z"
},
{
"tag": "cli-v0.3.0",
"kind": "other",
"published_at": "2026-01-21T10:02:51Z"
},
{
"tag": "nextjs-v0.8.2",
"kind": "other",
"published_at": "2026-01-21T10:01:55Z"
},
{
"tag": "api-v0.15.0",
"kind": "other",
"published_at": "2026-01-18T05:24:02Z"
},
{
"tag": "nextjs-v0.8.1",
"kind": "other",
"published_at": "2026-01-15T00:19:15Z"
},
{
"tag": "cli-v0.2.2",
"kind": "other",
"published_at": "2026-01-15T00:14:13Z"
},
{
"tag": "shadcn-v0.7.2",
"kind": "other",
"published_at": "2026-01-15T00:13:40Z"
},
{
"tag": "react-v0.3.6",
"kind": "other",
"published_at": "2026-01-15T00:12:30Z"
},
{
"tag": "cli-v0.2.1",
"kind": "other",
"published_at": "2026-01-15T00:05:56Z"
},
{
"tag": "cli-v0.2.0",
"kind": "other",
"published_at": "2026-01-14T23:38:56Z"
},
{
"tag": "shadcn-v0.7.0",
"kind": "other",
"published_at": "2026-01-14T23:38:25Z"
},
{
"tag": "nextjs-v0.8.0",
"kind": "other",
"published_at": "2026-01-14T23:37:46Z"
},
{
"tag": "react-v0.3.4",
"kind": "other",
"published_at": "2026-01-14T23:37:11Z"
},
{
"tag": "auth-v0.3.0",
"kind": "other",
"published_at": "2026-01-14T23:36:27Z"
},
{
"tag": "api-v0.14.0",
"kind": "other",
"published_at": "2026-01-14T05:00:31Z"
},
{
"tag": "permissions-v0.2.1",
"kind": "other",
"published_at": "2026-01-13T01:14:21Z"
},
{
"tag": "auth-v0.2.2",
"kind": "other",
"published_at": "2026-01-13T00:55:38Z"
},
{
"tag": "api-v0.13.0",
"kind": "other",
"published_at": "2026-01-13T00:42:26Z"
},
{
"tag": "api-v0.12.6",
"kind": "other",
"published_at": "2026-01-07T07:08:27Z"
},
{
"tag": "api-v0.12.5",
"kind": "other",
"published_at": "2026-01-07T06:40:36Z"
},
{
"tag": "api-v0.12.4",
"kind": "other",
"published_at": "2026-01-07T06:21:58Z"
},
{
"tag": "api-v0.12.3",
"kind": "other",
"published_at": "2026-01-07T05:59:58Z"
},
{
"tag": "api-v0.12.2",
"kind": "other",
"published_at": "2026-01-07T04:30:33Z"
},
{
"tag": "api-v0.12.1",
"kind": "other",
"published_at": "2026-01-07T03:26:27Z"
},
{
"tag": "auth-v0.2.1",
"kind": "other",
"published_at": "2026-01-07T03:13:43Z"
},
{
"tag": "nextjs-v0.7.0",
"kind": "other",
"published_at": "2026-01-06T01:19:31Z"
},
{
"tag": "react-v0.3.3",
"kind": "other",
"published_at": "2026-01-05T22:25:03Z"
},
{
"tag": "auth-v0.2.0",
"kind": "other",
"published_at": "2026-01-05T04:56:57Z"
},
{
"tag": "permissions-v0.2.0",
"kind": "other",
"published_at": "2026-01-05T03:17:00Z"
}
],
"recent_commits": [
{
"oid": "1a3441dd9ede3164fcd7897cf7e2a21edce6b482",
"body": null,
"is_bot": false,
"headline": "chore(cli): release 0.8.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T05:43:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "49f1c1073f780ee0c13b700eefa7577d1006c2d2",
"body": null,
"is_bot": false,
"headline": "chore(nextjs): release 0.8.3 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T05:41:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5daae6f27fbe6cebab6871161f1dee85aa5d264d",
"body": null,
"is_bot": false,
"headline": "fix(cli): sync api docker image to 0.20.3 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T05:40:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3d5e0593ba4aed17bec47d740e94e0764b5ce964",
"body": "## [0.20.3](https://github.com/PhoenixSolutionsGroup/omnibase/compare/api-v0.20.2...api-v0.20.3) (2026-07-24)\n\n### Bug Fixes\n\n* retry migrations on connection failures (for scale-to-zero) ([4b4e80b](https://github.com/PhoenixSolutionsGroup/omnibase/commit/4b4e80bed67a3fef233616f57c5260932315b67b))",
"is_bot": false,
"headline": "chore(api): release 0.20.3 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T05:38:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4b4e80bed67a3fef233616f57c5260932315b67b",
"body": null,
"is_bot": false,
"headline": "fix: retry migrations on connection failures (for scale-to-zero)",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-24T05:31:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4010e3ae17dc8e55ca1a01cb0c62c1e826417d7c",
"body": null,
"is_bot": false,
"headline": "chore: fix release",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-24T05:22:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "05cc3bf06d2da95fc38ebdb3db6b3a6c469d1946",
"body": null,
"is_bot": false,
"headline": "fix(cli): sync api docker image to 0.20.2 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T05:05:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7fa9be18604bb46378215644a4ce713409607b2d",
"body": "## [0.20.2](https://github.com/PhoenixSolutionsGroup/omnibase/compare/api-v0.20.1...api-v0.20.2) (2026-07-24)\n\n### Bug Fixes\n\n* ensure /tmp dir in Dockerfile ([926434f](https://github.com/PhoenixSolutionsGroup/omnibase/commit/926434f9a78630bde5317a3ca16b9c2d7e991860))",
"is_bot": false,
"headline": "chore(api): release 0.20.2 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T05:04:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "926434f9a78630bde5317a3ca16b9c2d7e991860",
"body": null,
"is_bot": false,
"headline": "fix: ensure /tmp dir in Dockerfile",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-24T04:40:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e7d739390570facc8580699541f45ac4a517bf12",
"body": null,
"is_bot": false,
"headline": "chore(cli): release 0.8.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T03:42:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9dc61e6df5aaf800fb98764858eb5a5c0f6004f8",
"body": null,
"is_bot": false,
"headline": "chore(shadcn): release 0.8.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T03:41:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "73c65ce22f63014c8060882db20c341631f1436c",
"body": null,
"is_bot": false,
"headline": "fix(cli): sync api docker image to 0.20.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T03:39:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bc07d43e6140cbf87b7ae205fcefdba3e152d731",
"body": "## [0.20.1](https://github.com/PhoenixSolutionsGroup/omnibase/compare/api-v0.20.0...api-v0.20.1) (2026-07-24)\n\n### Bug Fixes\n\n* add ApiServiceKey environment variable ([9e0d81a](https://github.com/PhoenixSolutionsGroup/omnibase/commit/9e0d81a25f85365978ab54801c4ef11f82410d42))\n* Add Service Key to d\n[…]\n\n* Dashboard Patches ([#48](https://github.com/PhoenixSolutionsGroup/omnibase/issues/48)) ([9c62ebb](https://github.com/PhoenixSolutionsGroup/omnibase/commit/9c62ebb14fbff33704be291e98dc40acad1ae476))",
"is_bot": false,
"headline": "chore(api): release 0.20.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-24T03:37:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f98fdd5e5b6242c4c4041cb29ea890785ad8259c",
"body": null,
"is_bot": false,
"headline": "fix: Add Service Key to docker-compose and tests",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-24T03:31:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9e0d81a25f85365978ab54801c4ef11f82410d42",
"body": null,
"is_bot": false,
"headline": "fix: add ApiServiceKey environment variable",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-24T03:04:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9c62ebb14fbff33704be291e98dc40acad1ae476",
"body": "* chore: dashboard, CLI, and docker dev updates\n\n* feat: expose relations metadata on namespace definitions\n\nSelect relations_metadata in ListNamespaceDefinitions and return it as\na structured relations_metadata array (name, display_name, group,\nsub_group) on each namespace definition, honoring the \n[…]\nule and commit the full SDK; dist stays ignored.\n\n* rm sdk/core\n\n* fix: rm .map in upload\n\n* fix build\n\n* rm project id\n\n* update types\n\n---------\n\nCo-authored-by: Phoenix Baker <phoenixbvu@gmail.com>",
"is_bot": false,
"headline": "fix: Dashboard Patches (#48)",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-07-14T22:44:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c655f25ca2c34b8b0b8c415637e83a2af603b900",
"body": "* fix ownership issues\n\n* use wrangler cli\n\nused for build then forwards zipped file to backend\n\n---------\n\nCo-authored-by: Phoenix Baker <phoenixbvu@gmail.com>",
"is_bot": false,
"headline": "feat(cli): enhance worker deployment options",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-07-10T05:26:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9f65124f9501509e86bb654e3206b617abf2756c",
"body": null,
"is_bot": false,
"headline": "chore(mcp-server): release 0.1.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-07T06:37:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "99a8c2694968f277d462a5809cc3515ba87773ee",
"body": null,
"is_bot": false,
"headline": "chore(cli): release 0.7.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-07T06:37:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "922729898e56b4c2a6a709b1c5f5a2138e2c8270",
"body": null,
"is_bot": false,
"headline": "feat(cli): sync api docker image to 0.20.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-07T06:35:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "283915b31ac40326c6a6f4f41b22a5353838ccf6",
"body": "# [0.20.0](https://github.com/PhoenixSolutionsGroup/omnibase/compare/api-v0.19.1...api-v0.20.0) (2026-07-07)\n\n### Bug Fixes\n\n* **api:** parse_permission caser data race under concurrent load ([daa5c10](https://github.com/PhoenixSolutionsGroup/omnibase/commit/daa5c101b9e1806dc203e3b90924efe5d0a352e9)\n[…]\n591aff834950ea383490063d2))\n* Prisma Schema + Down Migrations + definePolicy RLS Compiler ([2120c4a](https://github.com/PhoenixSolutionsGroup/omnibase/commit/2120c4a1842bdf50efc17e741a5f638c3b633903))",
"is_bot": false,
"headline": "chore(api): release 0.20.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-07-07T06:34:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "288e23b9ccd5dc49eb59dd49323c517d861b509d",
"body": null,
"is_bot": false,
"headline": "Port k6 Perf Scenarios (#42)",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-07-02T12:37:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36255a32505c1d8235a4f05afff4fc077fa61bb4",
"body": null,
"is_bot": false,
"headline": "ensure stripe config",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-02T10:10:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7d6c6f5fd961c21bb29ed7cfa5be58d1201871e8",
"body": null,
"is_bot": false,
"headline": "stress test",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-01T22:06:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "daa5c101b9e1806dc203e3b90924efe5d0a352e9",
"body": null,
"is_bot": false,
"headline": "fix(api): parse_permission caser data race under concurrent load",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-01T13:51:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6aa8f1329a9bb29b7a723d64fff9e3e882e07982",
"body": null,
"is_bot": false,
"headline": "fix(api): perf tests missing required tenant type field",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-01T08:11:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "449b3238b3d517787681932a172d235bac2b7f6f",
"body": null,
"is_bot": false,
"headline": "test(api): fill T3+T4 stripe config coverage from k6 audit",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-01T02:38:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f85f8f49b40f448a9372be51ac0f42ace5b4ecc5",
"body": null,
"is_bot": false,
"headline": "test(api): fill T1+T2 integration gaps from k6 audit",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-01T01:34:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6946b9cfab21d85b6f0cd292c454cc9c68380209",
"body": null,
"is_bot": false,
"headline": "refactor(api): replace k6 with vegeta perf tests + integration",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-07-01T00:32:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eb7c8bf81507275742c36443824d9bfbd4691c97",
"body": null,
"is_bot": false,
"headline": "Refactor Api to use Huma (#40)",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-30T23:58:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1f365c494f0157f90d4cca97e9784557ba33de5e",
"body": null,
"is_bot": false,
"headline": "refactor(api): thread DB via Deps, add cmd/openapi spec dumper",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T23:47:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "88c44261bae76095616304651fe6798c6c386b39",
"body": "…set refs",
"is_bot": false,
"headline": "fix(release): pass API_VERSION through prepare + drop deleted spec as…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T13:57:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "08303f8910f4d0023089d922c96160663386ec96",
"body": null,
"is_bot": false,
"headline": "chore(api): drop legacy docs-old + pre-push regens full SDK",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T13:51:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cf71c47d9983cda0f0224ba1708167e1dca0f0e9",
"body": "…quired",
"is_bot": false,
"headline": "chore(api): drop hand-written OpenAPI docs + relax kratos Identity re…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T13:49:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bd7fcdc0e5eb7e7591aff834950ea383490063d2",
"body": "…ION env",
"is_bot": false,
"headline": "feat(api): wire SDK gen from huma spec + split tenants tag + API_VERS…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T13:39:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "121ea9de25d960da7682eb67d3938be9439060f6",
"body": null,
"is_bot": false,
"headline": "feat(api): port tenants/ sub-package to huma",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T12:34:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d21b31620e120fa3be3431587094e71759ae864",
"body": "…2 not 400)",
"is_bot": false,
"headline": "refactor(api): use typed MultipartFormFiles for deploy_namespaces (42…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T12:25:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c75fbf3e8cc4d53956ac510d34ac23f5c084eb08",
"body": null,
"is_bot": false,
"headline": "feat(api): port db/payments/permissions/stripe sub-packages to huma",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T12:23:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3a4a2e79a428d12fe8d047a0ad960823c0d8563a",
"body": null,
"is_bot": false,
"headline": "feat(api): port email + storage sub-packages to huma",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T11:54:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a139cb52bd2b341e63942a2b376dd5f72655b909",
"body": null,
"is_bot": false,
"headline": "feat(api): port full auth sub-package to huma",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T11:31:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8dcf4bf27cfbab8a8cab0b5e7a0c144c14b1a130",
"body": null,
"is_bot": false,
"headline": "feat(api): port whoami to huma + introduce AuthCtx resolver",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T11:14:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "62605c80e738f95de390e7c01a597c09402ba0a9",
"body": null,
"is_bot": false,
"headline": "Pre Launch Clean Up (#38)",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-30T10:37:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07838150f160759aee49db273f79296ef45260da",
"body": "handlers.NewSuccessResponse never wrapped its payload in {data: ...} —\nit called ctx.JSON(200, data) directly. The CLI was reading\nresponse.data?.X as if the envelope existed; once the SDK regenerated\nfrom the current OpenAPI spec, that field disappeared and tsc started\nfailing on every stripe and m\n[…]\neset)\n- migrate.ts: same for getDatabaseMigrationStatus + rollback; cast the\n uploadDatabaseMigrations response to {message?: string} since its\n OpenAPI type is bare object (fix the spec separately)",
"is_bot": false,
"headline": "fix(cli): drop legacy data envelope, SDK responses are unwrapped",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T10:30:45Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9618e10e942364e4748182b7941db01db3ddc10b",
"body": "K6 scenarios kept as reference for the Refactor 2 vegeta port. Everything\nelse under public/tests/ — nextjs + react SDK playwright suites, the\nomnibase CLI sample project, schemathesis remnants — was unused after\nthe api integration tests took over coverage. Delete it all.\n\n- git mv tests/api/k6 → apps/api/tests/k6\n- rm -rf public/tests/\n- Drop tests/test-apps/* from bun workspace globs\n- Refresh CLAUDE.md test pattern to the Go integration shape",
"is_bot": false,
"headline": "chore: move k6 to apps/api/tests/k6 and nuke public/tests/",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T10:25:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ddf422daf4af55fc354ad5f0f2127cb0f7fd9cbe",
"body": "Pre-huma cleanup. Schemathesis contract tests get retired once huma\ngenerates the OpenAPI spec from Go types (zero drift possible). K6\nperformance scenarios get retired later by Refactor 2 (vegeta in Go).\nNeither belongs in CI in the meantime — the api integration suite\nalready covers behavior end-t\n[…]\nc/tests/api/contract/\n- Delete public/scripts/test-api.sh, generate-k6-sdk.sh\n- Drop test:api:*, generate:k6 entries from public/package.json\n- Update apps/api CLAUDE.md + README.md to use `make test`",
"is_bot": false,
"headline": "chore: drop schemathesis + k6 from CI, point at apps/api make test",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T10:23:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "757214aae4d80a6efb947ea3070ff00dd9039bd8",
"body": "handlers/v1/ is now fully per-op sub-packages. The remaining root-level\nshim (tenants.go) just rewrapped tenants.New(cfg) for the legacy\nv1.NewTenantHandler name — call the sub-package constructor directly\nfrom routes/v1/tenants.go and drop the shim.\n\nNothing imports internal/models or internal/serv\n[…]\nhe whole tree.\n\n- Delete internal/handlers/v1/tenants.go\n- Delete internal/models/{file,roles,tenant}.go (whole models package)\n- Delete internal/service/v1/{keto,kratos,roles,tenants}.go (whole tree)",
"is_bot": false,
"headline": "chore(api): delete legacy service/v1, models, and tenants shim",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T09:47:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2c5c954284bbf223903cb2d158e7cabad74f0e72",
"body": "…t-go module\n\nDecompose handlers/v1/db.go into handlers/v1/db/ sub-package\n(apply_migrations, migrations_status, migrations_down, typegen) plus\nshared helpers (zip extract, migrate factory, PostgREST reload).\n\nSwitch the schema_migrations read in migrations_status from GORM to\npgx pool. Other ops st\n[…]\ne.\n\ngo mod tidy drops keto-client-go now that no handler imports it.\n\n- handlers/v1/db/{apply_migrations,migrations_status,migrations_down,\n typegen,migrate,zip,handler}.go\n- Delete handlers/v1/db.go",
"is_bot": false,
"headline": "refactor(api): db handler per-op sub-package + drop GORM + keto-clien…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T09:41:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fdaee90b709718c6e368a9f964585bea135b434b",
"body": "…handlers\n\nMove check / create_relationship / delete_relationship out of the god\nhandlers/v1/permissions.go file into the existing handlers/v1/permissions/\nsub-package alongside deploy_namespaces. Each op now goes through\nservices/permissions instead of the keto-client-go SDK directly.\n\nExtend servi\n[…]\nnamespace returns 404, delete missing\ntuple is idempotent (keto returns 204 → 200).\n\n- handlers/v1/permissions/{check,create_relationship,\n delete_relationship}.go\n- Delete handlers/v1/permissions.go",
"is_bot": false,
"headline": "refactor(api): permissions handler per-op + drop keto-client-go from …",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T09:26:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bebeb31db093b3caf879601c70f115277558bd46",
"body": "…permissions\n\nDecompose handlers/v1/keto_namespaces.go into handlers/v1/permissions/\nsub-package (deploy_namespaces.go). Move TS namespace parser from\nservice/v1/namespace_parser.go to services/permissions/parser.go and\nexpose package-level ParseNamespaceZip + BuildRolesFromMetadata.\n\nReplace GORM u\n[…]\np removes its own rows after the run.\n\n- handlers/v1/permissions/{handler,deploy_namespaces}.go\n- services/permissions/parser.go\n- Delete handlers/v1/keto_namespaces.go, service/v1/namespace_parser.go",
"is_bot": false,
"headline": "refactor(api): keto_namespaces handler per-op + parser into services/…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T02:08:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "395c3a3571c8135a2c2028d25c5acc2b131b3116",
"body": "Decompose handlers/v1/storage.go into per-op sub-package (upload,\ndownload, delete_object, make_public). Replace GORM StorageObject CRUD\nwith sqlc (CreateStorageObject, GetStorageObjectByPath,\nGetPublicStorageObjectByPath, DeleteStorageObjectByID,\nMarkStorageObjectPublic).\n\nSwitch from legacy servic\n[…]\n (owner OK + missing), make_public\n(success + idempotent + missing).\n\n- handlers/v1/storage/{upload,download,delete_object,make_public,\n handler}.go\n- Delete handlers/v1/storage.go, models/storage.go",
"is_bot": false,
"headline": "refactor(api): storage handler per-op sub-package + sqlc",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T01:39:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8609042732d0219a008e47c6e0d27b9e05af5928",
"body": "Decompose handlers/v1/email.go into per-op sub-package (list_templates,\ncreate_or_update_template, delete_template, send, serve_template).\nReplace GORM template reads with sqlc (ListEmailTemplates,\nUpsertEmailTemplate, DeleteEmailTemplateByType :execrows).\n\nPort multipart send path from legacy Email\n[…]\neate_or_update_template,\n delete_template,send,serve_template,handler}.go\n- services/email/send.go (new Send op, multipart-capable)\n- Delete handlers/v1/email.go, service/v1/email.go, models/email.go",
"is_bot": false,
"headline": "refactor(api): email handler per-op sub-package + sqlc",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T00:26:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e6f03ab9bf9ab4a0293df8e822395a155f38e341",
"body": "Decompose handlers/v1/auth.go and auth_proxy.go into per-op\nsub-packages matching the stripe/tenants pattern. Replace GORM\nTenant/TenantUser reads with sqlc joined queries\n(GetActiveTenantForUser, ListTenantsForUser). Kratos clients held on\nHandler directly per \"thin kratos in handler\" rule — no ser\n[…]\n1/auth/{get_session,get_identity,whoami,logout,\n get_active_tenant,list_tenants,create_user}.go\n- handlers/v1/auth/proxy/{handler,proxy}.go\n- Delete handlers/v1/auth.go, auth_proxy.go, models/auth.go",
"is_bot": false,
"headline": "refactor(api): auth handler per-op sub-package + drop K_SERVICE",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-30T00:07:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "34903b2cbf227c62e63c090a4ee76daa8bc35d40",
"body": null,
"is_bot": false,
"headline": "chore: regenerate OpenAPI + SDKs (slice 12)",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T12:01:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f2db23a32ca3450c8b6f276345ebe562e5b10142",
"body": "…g + fix StripeID + remove response",
"is_bot": false,
"headline": "refactor(api): move stripe types from models to services/stripe_confi…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T12:01:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "14ca94533cd5e6cd4c6dc51a4e45e89ec03c4b4c",
"body": "…pe.Key global",
"is_bot": false,
"headline": "chore(api): delete legacy stripe handlers, service, GORM models, stri…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T10:43:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "44aca299005208c0b21ef18feb17216149e0523b",
"body": null,
"is_bot": false,
"headline": "refactor(api): payments handler per-op sub-package + nested invoices",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T10:31:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b10a52575ff185c515ee8c79dd57a6d28ad6a2d1",
"body": "…history, calc)",
"is_bot": false,
"headline": "refactor(api): complete stripe handler migration (pull, archive_all, …",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T10:24:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1e8be5558d9f5222788d95115fb4c2dcb80e175f",
"body": null,
"is_bot": false,
"headline": "refactor(api): migrate 11 stripe handlers to per-op sub-package",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T10:15:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "641c888ef1287d95638dfaf745c26b7b385f2b10",
"body": null,
"is_bot": false,
"headline": "feat(api): collapse stripe_config pyramid into services/stripe_config",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T09:44:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3e5634888198e6bcdc94925e1c776f7570d23f04",
"body": "…s per-op\n\nSlice 1-7 of the Stripe section refactor (see REFACTOR.md). New code lives\nalongside legacy `service/v1/stripe*` and `handlers/v1/stripe*`; full legacy\ncleanup happens in Slice 11.\n\nSlice 1 — sqlc for `stripe_id_mappings`\n- `database/query/stripe_id_mappings.sql`: GetMappingByConfigItemID\n[…]\nded \"Platform Application Fee\" section calling out the legacy gap\n (fee only wired on checkout, missing on direct subscribe + invoice) plus\n the unit + integration test bar for the refactor to clear",
"is_bot": false,
"headline": "refactor(api): stripe billing service + tenant lifecycle/subscription…",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-29T06:05:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8e902bf4c27f4bd0bdd06cef7c37509775b053ec",
"body": null,
"is_bot": false,
"headline": "chore(api): drop handler unit tests in favor of integration coverage",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T09:33:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2fad50da0a25eef3dd06c1c3d77ca2540238b438",
"body": null,
"is_bot": false,
"headline": "chore(api): drop legacy invites.go and users.go handlers",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T09:28:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3c5881ceb93b5219d630f7cee4d0607a26460449",
"body": null,
"is_bot": false,
"headline": "test(api): add jwt + switch-active negative-path tests",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T09:24:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1199870d542d0144f6a90e8246835885e76c05ad",
"body": null,
"is_bot": false,
"headline": "refactor(api): tenants jwt + switch-active per-op refactor",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T09:24:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "86057646a35c177ce0016094ba5a0cb333241396",
"body": null,
"is_bot": false,
"headline": "chore(cli): update rbac migration schema",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:55:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3040fcbc39c60a2eaa0c0696b4853cb2f17e645",
"body": null,
"is_bot": false,
"headline": "chore: regenerate Go and JS SDKs",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:55:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a796f9b359036e2c1b3f4037d24feacc21d283ef",
"body": null,
"is_bot": false,
"headline": "docs(api): refresh openapi spec, archive old docs",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:55:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "22fd87051a36016fa694a30e5278e70a65ec5172",
"body": null,
"is_bot": false,
"headline": "test(api): add integration tests per domain and flows",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:55:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "348df1d9b1eca260137b098da8e0b4e954fc5bd7",
"body": null,
"is_bot": false,
"headline": "chore(api): drop legacy integration tests",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:55:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dedce8970e430c98ec5a9d1d0da74a67e1c742b1",
"body": null,
"is_bot": false,
"headline": "chore(api): wire new handlers, config, and bootstrap",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0868f9e6dd1cb831e1948b28890d3962641272f2",
"body": null,
"is_bot": false,
"headline": "refactor(api): tenants invites per-op refactor",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "87d7866333d8869a15905518541dd4ca6a82a060",
"body": null,
"is_bot": false,
"headline": "refactor(api): tenants users per-op refactor",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "457afbd86ac041b1e05ac4eaf6ed56d9881eae7f",
"body": null,
"is_bot": false,
"headline": "refactor(api): tenants roles per-op refactor",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ec8c767a28a54684c0456872a6075d8cf671ee0d",
"body": null,
"is_bot": false,
"headline": "refactor(api): split tenants lookup into per-op handlers",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4128c98fdf7e0db7fc7fd5255a8757b71d61db75",
"body": null,
"is_bot": false,
"headline": "feat(api): add handlers/ctx helpers and slim responses",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "88a8a877423e81e8bb1b02f8bdda9932815616c1",
"body": null,
"is_bot": false,
"headline": "feat(api): add services/email (SMTP send with template)",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ec74e4e01bf8dc28d9b064baeefe4afdca689c56",
"body": null,
"is_bot": false,
"headline": "feat(api): add services/tenants (JWT, active tenant, cleanup)",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "003bea578dfa62346126cfb25320c8ec02896246",
"body": null,
"is_bot": false,
"headline": "feat(api): add services/auth (kratos identity + metadata)",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ac055734ee209fba8cc27b5cdbbe37c9d1fc81e6",
"body": null,
"is_bot": false,
"headline": "feat(api): add services/permissions and rbac",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b2ac570f169e60dc3ed16d334f37365d2f31b52d",
"body": null,
"is_bot": false,
"headline": "feat(api): add sqlc queries and generated repository",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3041bd3b7404a33ec0f63036a05afc4707d663ec",
"body": null,
"is_bot": false,
"headline": "chore(api): add sqlc, mockery, Makefile, test deps tooling",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-06-26T02:54:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ad2e6832cf240b23302fab99ae6de7b3513bc209",
"body": null,
"is_bot": true,
"headline": "docs: auto-generate API and SDK documentation [skip ci]",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-06-17T23:19:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "158be407f331efc695d0d73b742b41ff9dd088e6",
"body": "fix doc release\n\nCo-authored-by: Phoenix Baker <phoenixbvu@gmail.com>",
"is_bot": false,
"headline": "chore: Fix Docs Release Workflow",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-17T23:18:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6f7125a54d09a2393038dac914670bde92c342da",
"body": "* better permission docs\n\n* fix wording\n\n* go + js examples\n\n---------\n\nCo-authored-by: Phoenix Baker <phoenixbvu@gmail.com>",
"is_bot": false,
"headline": "docs: Improve Permissions Concept Documentation",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-17T23:04:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2120c4a1842bdf50efc17e741a5f638c3b633903",
"body": null,
"is_bot": false,
"headline": "feat: Prisma Schema + Down Migrations + definePolicy RLS Compiler",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-13T14:01:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d9c16eff379ba608951f2c90e731d578a7b7d90a",
"body": "Co-authored-by: Phoenix Baker <phoenixbvu@gmail.com>",
"is_bot": false,
"headline": "chore: disable auto releases on main, force manual releases",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-10T00:16:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "866c1b877611add7102c5b2abd71d446187f9d84",
"body": null,
"is_bot": false,
"headline": "chore(mcp-server): release 1.0.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-06-03T11:02:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "27f9f57dcd4473ada470bc9d10795693b1905f15",
"body": null,
"is_bot": false,
"headline": "fix(cli): sync api docker image to 0.19.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-06-03T11:00:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "195f34f3600a912582997a5cbb3378cf46d815ea",
"body": "## [0.19.1](https://github.com/PhoenixSolutionsGroup/omnibase/compare/api-v0.19.0...api-v0.19.1) (2026-06-03)\n\n### Bug Fixes\n\n* make /health/ready checks accurate and concurrent ([0973b2d](https://github.com/PhoenixSolutionsGroup/omnibase/commit/0973b2db81f6c01ab23d6fdd3ff214d101464c8e))",
"is_bot": false,
"headline": "chore(api): release 0.19.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-06-03T10:58:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0973b2db81f6c01ab23d6fdd3ff214d101464c8e",
"body": "Run the readiness service checks concurrently instead of sequentially, and correct each probe so a healthy stack actually reports ready:\n- postgrest: hit a lightweight path and accept 404 (process up with schema cache loaded) instead of the heavy OpenAPI root that timed out\n- storage: use S3 HeadBuc\n[…]\nB_CONN_MAX_LIFETIME and DB_CONN_MAX_IDLE_TIME, so scale-to-zero deployments can recycle idle connections before they go stale (defaults unchanged)\n\nCo-authored-by: Phoenix Baker <phoenixbvu@gmail.com>",
"is_bot": false,
"headline": " fix: make /health/ready checks accurate and concurrent",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-06-03T10:51:18Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "427131d4d7f696167920089e170317f250baa325",
"body": null,
"is_bot": false,
"headline": "chore: bump @omnibase/mcp-server to v0.1.0",
"author_name": "Phoenix Baker",
"author_login": "phoenixbaker",
"committed_at": "2026-05-31T22:14:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d8ff3e8769520b59903c2abc0dc38749b5be85bd",
"body": "… config",
"is_bot": false,
"headline": "chore: fix docs build pipeline, sync OpenAPI spec, and update release…",
"author_name": "PhoenixSolutionsGroup",
"author_login": "PhoenixSolutionsGroup",
"committed_at": "2026-05-31T22:09:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f2170759d9a074439683b165a91d64626f6ee540",
"body": null,
"is_bot": false,
"headline": "chore(mcp-server): release 1.0.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:14:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "acd3c8c2b7b18fe3e3f76f5b208279c24cda13af",
"body": null,
"is_bot": false,
"headline": "chore(cli): release 0.6.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:13:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1f908805ddd9d7bc3088435bb77d68994e980f20",
"body": null,
"is_bot": false,
"headline": "feat(cli): sync permissions docker image to 0.4.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:12:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e6c00cb98ed584e57351fcb3660368c2282741bc",
"body": null,
"is_bot": false,
"headline": "chore(permissions): release 0.4.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:12:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "09da3f4766f8e41fec06dd00b979e7b30dd9d5f6",
"body": null,
"is_bot": false,
"headline": "fix(cli): sync auth docker image to 0.4.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:11:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8fbaf8c910516e7b82a5a05b3d6adf7ee0ce420c",
"body": null,
"is_bot": false,
"headline": "chore(auth): release 0.4.1 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:11:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5d57a1f49d3690519ba9b8f221a44f02ab1e2b99",
"body": null,
"is_bot": false,
"headline": "feat(cli): sync api docker image to 0.19.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:10:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "db396f909f976be21ae817263dfdc4316c08d2ae",
"body": "# [0.19.0](https://github.com/PhoenixSolutionsGroup/omnibase/compare/api-v0.18.1...api-v0.19.0) (2026-05-30)\n\n### Bug Fixes\n\n* **api:** add CORS_ALLOWED_ORIGINS to compose and drop typegen from readiness ([2357c97](https://github.com/PhoenixSolutionsGroup/omnibase/commit/2357c978237430b545eb116e23ea\n[…]\nnixSolutionsGroup/omnibase/commit/25f3b90fb832b06a0d1bd0968b771396d2b25a6b))\n* mcp server ([52f2a74](https://github.com/PhoenixSolutionsGroup/omnibase/commit/52f2a741476cefaf6f00be9ed892020056fb8216))",
"is_bot": false,
"headline": "chore(api): release 0.19.0 [skip ci]",
"author_name": "semantic-release-bot",
"author_login": "semantic-release-bot",
"committed_at": "2026-05-30T19:09:22Z",
"body_truncated": true,
"is_coding_agent": false
}
],
"releases_count": 55,
"commits_last_year": 649,
"latest_release_at": "2026-07-24T05:43:19Z",
"latest_release_tag": "cli-v0.8.1",
"releases_from_tags": false,
"days_since_last_push": 3,
"active_weeks_last_year": 22,
"days_since_latest_release": 3,
"mean_days_between_releases": 6
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": false,
"has_contributing": false,
"health_percentage": 42,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "@omnibase/cli",
"exists": true,
"license": "MIT",
"keywords": [
"cli",
"docker",
"compose",
"omnibase"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@omnibase/cli",
"is_deprecated": false,
"latest_version": "0.8.1",
"repository_url": "https://github.com/PhoenixSolutionsGroup/omnibase",
"versions_count": 14,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 338,
"first_published_at": "2025-10-20T00:38:58.388000Z",
"latest_published_at": "2026-07-24T05:43:18.041000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 3
},
{
"name": "@omnibase/mcp-server",
"exists": true,
"license": "MIT",
"keywords": [
"mcp",
"omnibase",
"documentation",
"ai"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@omnibase/mcp-server",
"is_deprecated": false,
"latest_version": "0.1.0",
"repository_url": "https://github.com/PhoenixSolutionsGroup/omnibase",
"versions_count": 1,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 29,
"first_published_at": "2026-05-31T21:41:07.831000Z",
"latest_published_at": "2026-05-31T21:41:08.231000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 56
}
]
},
"popularity": {
"forks": 0,
"stars": 1,
"watchers": 1,
"fork_history": {
"days": [],
"complete": true,
"collected": 0,
"total_forks": 0
},
"star_history": null,
"open_issues_and_prs": 9
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": true,
"bootstrap_files": [
"apps/api/Makefile"
],
"api_schema_files": [
"apps/api/docs/openapi.json",
"apps/docs/openapi.yaml",
"sdk/core/go/api/openapi.yaml"
],
"has_devcontainer": false,
"typecheck_configs": [
"apps/dashboard/tsconfig.json",
"apps/docs/tsconfig.json",
"apps/website/tsconfig.json",
"packages/cli/templates/tsconfig.json",
"packages/cli/templates/workers/tsconfig.json",
"packages/cli/tsconfig.json",
"packages/mcp-server/tsconfig.json",
"sdk/component/shadcn/tsconfig.json",
"sdk/core/js/tsconfig.json",
"sdk/framework/nextjs/tsconfig.json",
"sdk/framework/react/tsconfig.json",
"tsconfig.json"
],
"toolchain_manifests": [
"apps/api/go.mod",
"sdk/core/go/go.mod"
],
"largest_source_bytes": 124986,
"source_files_sampled": 880,
"oversized_source_files": 1,
"agent_instruction_files": [
"apps/api/CLAUDE.md",
"sdk/framework/nextjs/CLAUDE.md"
],
"agent_instruction_max_bytes": 6681
},
"dependencies": {
"manifests": [
"package.json"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [
{
"name": "adm-zip",
"direct": true,
"version": "0.5.18",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-xcpc-8h2w-3j85"
],
"fixed_version": "0.6.0",
"advisory_count": 1,
"oldest_advisory_days": 16
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"high": 1
},
"advisory_count": 1,
"affected_count": 1,
"assessed_count": 118,
"malicious_count": 0,
"assessed_package": "npm:@omnibase/cli@0.8.1",
"unassessed_count": 0,
"direct_affected_count": 1
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "@prisma/client",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "6.19.3"
},
{
"name": "yaml",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^2.8.2"
},
{
"name": "github.com/aws/aws-sdk-go-v2",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.41.4"
},
{
"name": "github.com/aws/aws-sdk-go-v2/config",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.32.12"
},
{
"name": "github.com/aws/aws-sdk-go-v2/credentials",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.19.12"
},
{
"name": "github.com/aws/aws-sdk-go-v2/service/s3",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.89.1"
},
{
"name": "github.com/danielgtaylor/huma/v2",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v2.38.0"
},
{
"name": "github.com/gin-contrib/pprof",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.5.3"
},
{
"name": "github.com/gin-gonic/gin",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.12.0"
},
{
"name": "github.com/golang-jwt/jwt/v5",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v5.3.0"
},
{
"name": "github.com/golang-migrate/migrate/v4",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v4.19.0"
},
{
"name": "github.com/google/uuid",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.6.0"
},
{
"name": "github.com/jackc/pgx/v5",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v5.7.5"
},
{
"name": "github.com/joho/godotenv",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.5.1"
},
{
"name": "github.com/ory/kratos-client-go",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.8"
},
{
"name": "github.com/phoenixsolutionsgroup/omnibase/sdk/core/go",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v0.0.0-00010101000000-000000000000"
},
{
"name": "github.com/stretchr/testify",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.11.1"
},
{
"name": "github.com/stripe/stripe-go/v82",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v82.5.1"
},
{
"name": "github.com/swaggo/swag",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.16.6"
},
{
"name": "github.com/testcontainers/testcontainers-go",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v0.43.0"
},
{
"name": "github.com/testcontainers/testcontainers-go/modules/compose",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v0.43.0"
},
{
"name": "golang.org/x/text",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v0.37.0"
},
{
"name": "gorm.io/driver/postgres",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.6.0"
},
{
"name": "gorm.io/gorm",
"manifest": "apps/api/go.mod",
"ecosystem": "go",
"version_constraint": "v1.31.0"
},
{
"name": "@hugeicons/core-free-icons",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^3.1.1"
},
{
"name": "@hugeicons/react",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.4"
},
{
"name": "@omnibase/core-js",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@omnibase/nextjs",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@omnibase/shadcn",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@radix-ui/react-checkbox",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.3.3"
},
{
"name": "@radix-ui/react-dialog",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.15"
},
{
"name": "@radix-ui/react-label",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.8"
},
{
"name": "@radix-ui/react-popover",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.15"
},
{
"name": "@radix-ui/react-select",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^2.2.6"
},
{
"name": "@radix-ui/react-slider",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.3.6"
},
{
"name": "@radix-ui/react-tooltip",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.2.8"
},
{
"name": "@stripe/connect-js",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^3.3.31"
},
{
"name": "@stripe/react-connect-js",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^3.3.31"
},
{
"name": "@supabase/postgrest-js",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^2.89.0"
},
{
"name": "@types/pg",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^8.16.0"
},
{
"name": "class-variance-authority",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^0.7.1"
},
{
"name": "clsx",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.1"
},
{
"name": "cmdk",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.1"
},
{
"name": "js-cookie",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.5"
},
{
"name": "lucide-react",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^0.556.0"
},
{
"name": "next",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "15.5.6"
},
{
"name": "next-themes",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^0.4.6"
},
{
"name": "pg",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^8.16.3"
},
{
"name": "radix-ui",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^1.4.3"
},
{
"name": "react",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "19.1.0"
},
{
"name": "react-dom",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "19.1.0"
},
{
"name": "recharts",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "2.15.4"
},
{
"name": "shadcn",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^3.6.3"
},
{
"name": "sonner",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^2.0.7"
},
{
"name": "stripe",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^19.3.1"
},
{
"name": "tailwind",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.0"
},
{
"name": "tailwind-merge",
"manifest": "apps/dashboard/package.json",
"ecosystem": "npm",
"version_constraint": "^3.4.0"
},
{
"name": "class-variance-authority",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "^0.7.1"
},
{
"name": "clsx",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.1"
},
{
"name": "lucide-react",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "^0.563.0"
},
{
"name": "next",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "16.1.6"
},
{
"name": "radix-ui",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "^1.4.3"
},
{
"name": "react",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "19.2.3"
},
{
"name": "react-dom",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "19.2.3"
},
{
"name": "shiki",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "^3.22.0"
},
{
"name": "tailwind-merge",
"manifest": "apps/website/package.json",
"ecosystem": "npm",
"version_constraint": "^3.4.0"
},
{
"name": "@inquirer/prompts",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^8.1.0"
},
{
"name": "@omnibase/core-js",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:*"
},
{
"name": "@ory/client",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^1.14.3"
},
{
"name": "adm-zip",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^0.5.16"
},
{
"name": "axios",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^1.6.0"
},
{
"name": "chalk",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^5.6.2"
},
{
"name": "commander",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^11.1.0"
},
{
"name": "dotenv",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^16.3.1"
},
{
"name": "form-data",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.0"
},
{
"name": "jszip",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^3.10.1"
},
{
"name": "ora",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^9.0.0"
},
{
"name": "smol-toml",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^1.7.0"
},
{
"name": "tsx",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "^4.19.0"
},
{
"name": "fastmcp",
"manifest": "packages/mcp-server/package.json",
"ecosystem": "npm",
"version_constraint": "^3.32.0"
},
{
"name": "zod",
"manifest": "packages/mcp-server/package.json",
"ecosystem": "npm",
"version_constraint": "^4.1.13"
}
],
"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": 0,
"merged_prs": 17,
"open_issues": 9,
"closed_ratio": 0.7,
"closed_issues": 21,
"closed_unmerged_prs": 1
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "phoenixbaker",
"commits": 531,
"avatar_url": "https://avatars.githubusercontent.com/u/83327802?v=4"
},
{
"type": "User",
"login": "semantic-release-bot",
"commits": 81,
"avatar_url": "https://avatars.githubusercontent.com/u/32174276?v=4"
},
{
"type": "User",
"login": "PhoenixSolutionsGroup",
"commits": 19,
"avatar_url": "https://avatars.githubusercontent.com/u/197703300?v=4"
}
],
"contributors_sampled": 3,
"top_contributor_share": 0.842
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"dashboard-deploy.yml",
"docs.yml",
"release.yml",
"test.yml",
"website-deploy.yml"
],
"has_docs_dir": false,
"linter_configs": [
"eslint.config.js",
"eslint.config.mjs"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"bun.lockb",
"go.sum"
],
"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": 5,
"reason": "branch protection is not maximal on development and all release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 7,
"reason": "3 out of 4 merged PRs checked by a CI test -- score normalized to 7",
"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/23 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": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 24 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": 10,
"reason": "packaging workflow detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 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": "264 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "1a3441dd9ede3164fcd7897cf7e2a21edce6b482",
"ran_at": "2026-07-27T13:56:08Z",
"aggregate_score": 4.1,
"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-24T05:45:47Z",
"oldest_open_prs": [],
"last_merged_pr_at": "2026-07-14T22:44:30Z",
"ci_last_conclusion": "FAILURE",
"oldest_open_issues": [
{
"number": 18,
"created_at": "2026-06-04T23:36:03Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 19,
"created_at": "2026-06-04T23:54:18Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 20,
"created_at": "2026-06-04T23:56:37Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 21,
"created_at": "2026-06-04T23:58:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 23,
"created_at": "2026-06-05T00:01:14Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 25,
"created_at": "2026-06-05T05:32:35Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 26,
"created_at": "2026-06-05T05:33:23Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 27,
"created_at": "2026-06-05T08:08:29Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 45,
"created_at": "2026-07-10T05:23:41Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/PhoenixSolutionsGroup/omnibase",
"host": "github.com",
"name": "omnibase",
"owner": "PhoenixSolutionsGroup"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 58,
"inputs": {
"security": 49,
"vitality": 87,
"community": 29,
"governance": 50,
"engineering": 69
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 87,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"commits_last_year": 649,
"human_commit_share": 0.99,
"days_since_last_push": 3,
"active_weeks_last_year": 22
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 3 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 3
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "22/52 weeks with commits",
"points": 15.2,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 22
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "649 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 649
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 24 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": 55,
"latest_release_tag": "cli-v0.8.1",
"releases_from_tags": false,
"days_since_latest_release": 3,
"mean_days_between_releases": 6
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "55 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 55
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 3 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 3
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~6 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 6
}
}
],
"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": 3,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 3 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 3
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "critical",
"name": "Community & Adoption",
"value": 29,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"forks": 0,
"stars": 1,
"watchers": 1,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "1 stars",
"points": 0,
"status": "missed",
"details": [
{
"code": "stars",
"params": {
"count": 1
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "0 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 0
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "1 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 1
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"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": "at_risk",
"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": 43,
"inputs": {
"packages": [
"@omnibase/cli",
"@omnibase/mcp-server"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 367
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "367 downloads/month across npm",
"points": 34.2,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 367,
"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": 50,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 23,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 3,
"top_contributor_share": 0.842
},
"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 84% of commits",
"points": 3.6,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 84
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "3 contributors",
"points": 4.1,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 3
}
}
],
"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": "moderate",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"merged_prs": 17,
"open_issues": 9,
"closed_issues": 21,
"issue_closed_ratio": 0.7,
"closed_unmerged_prs": 1
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "70% of issues closed",
"points": 32.7,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 70
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "17/18 decided PRs merged",
"points": 36.1,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 17,
"decided": 18
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/23 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "critical",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 22,
"inputs": {
"followers": 0,
"owner_type": "User",
"is_verified": null,
"owner_login": "PhoenixSolutionsGroup",
"public_repos": 3,
"account_age_days": 538
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "0 followers of PhoenixSolutionsGroup",
"points": 0,
"status": "missed",
"details": [
{
"code": "owner_followers",
"params": {
"count": 0,
"login": "PhoenixSolutionsGroup"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "3 public repos, account ~1 yr old",
"points": 7.3,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 3
}
},
{
"code": "account_age_years",
"params": {
"years": 1
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"@omnibase/cli",
"@omnibase/mcp-server"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 3
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "2 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 2,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 3 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 3
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "14 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 14
}
}
],
"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": 69,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 78,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "5 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 5
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": "eslint.config.js, eslint.config.mjs",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "eslint.config.js, eslint.config.mjs"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "3 out of 4 merged PRs checked by a CI test -- score normalized to 7",
"points": 14,
"status": "partial",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 55,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": "https://omnibase-nine.vercel.app",
"has_readme": true,
"has_docs_dir": false,
"has_description": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://omnibase-nine.vercel.app",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "at_risk",
"name": "Security",
"value": 49,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "at_risk",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 41,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 4.1
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection is not maximal on development and all release branches",
"points": 3.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "3 out of 4 merged PRs checked by a CI test -- score normalized to 7",
"points": 1.8,
"status": "partial",
"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/23 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 not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 24 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 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": "264 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "good",
"name": "Dependency advisories",
"note": "Matched the npm:@omnibase/cli@0.8.1 runtime dependency closure — what installing the published package pulls in — 118 packages. Reachability is not analyzed.",
"notes": [
{
"code": "advisories_scope_published",
"params": {
"package": "npm:@omnibase/cli@0.8.1",
"assessed": 118
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 79,
"inputs": {
"source": "osv",
"advisories": 1,
"affected_packages": 1,
"assessed_packages": 118,
"unassessed_packages": 0,
"affected_by_severity": "high 1",
"direct_affected_packages": 1
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "1 affected: adm-zip 0.5.18 (high 7.5)",
"points": 14,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 1,
"packages": "adm-zip 0.5.18 (high 7.5)"
}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "no indirect dependency carries a known advisory",
"points": 25,
"status": "met",
"details": [
{
"code": "no_indirect_advisories",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory 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": 118,
"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": 2
},
"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": 78,
"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": 0.98,
"agent_instruction_files": [
"apps/api/CLAUDE.md",
"sdk/framework/nextjs/CLAUDE.md"
],
"agent_instruction_max_bytes": 6681
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "apps/api/CLAUDE.md, sdk/framework/nextjs/CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "apps/api/CLAUDE.md, sdk/framework/nextjs/CLAUDE.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": "97 of 99 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 97,
"sampled": 99
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 72,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"bun.lockb",
"go.sum"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"apps/api/Makefile"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"apps/dashboard/tsconfig.json",
"apps/docs/tsconfig.json",
"apps/website/tsconfig.json",
"packages/cli/templates/tsconfig.json",
"packages/cli/templates/workers/tsconfig.json",
"packages/cli/tsconfig.json",
"packages/mcp-server/tsconfig.json",
"sdk/component/shadcn/tsconfig.json",
"sdk/core/js/tsconfig.json",
"sdk/framework/nextjs/tsconfig.json",
"sdk/framework/react/tsconfig.json",
"tsconfig.json"
],
"agent_commit_share": 0,
"toolchain_manifests": [
"apps/api/go.mod",
"sdk/core/go/go.mod"
],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "apps/api/Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "apps/api/Makefile"
}
}
],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": "eslint.config.js, eslint.config.mjs",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "eslint.config.js, eslint.config.mjs"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "apps/dashboard/tsconfig.json, apps/docs/tsconfig.json, apps/website/tsconfig.json, packages/cli/templates/tsconfig.json, packages/cli/templates/workers/tsconfig.json, packages/cli/tsconfig.json, packages/mcp-server/tsconfig.json, sdk/component/shadcn/tsconfig.json, sdk/core/js/tsconfig.json, sdk/framework/nextjs/tsconfig.json, sdk/framework/react/tsconfig.json, tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "apps/dashboard/tsconfig.json, apps/docs/tsconfig.json, apps/website/tsconfig.json, packages/cli/templates/tsconfig.json, packages/cli/templates/workers/tsconfig.json, packages/cli/tsconfig.json, packages/mcp-server/tsconfig.json, sdk/component/shadcn/tsconfig.json, sdk/core/js/tsconfig.json, sdk/framework/nextjs/tsconfig.json, sdk/framework/react/tsconfig.json, tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "TypeScript",
"largest_source_bytes": 124986,
"source_files_sampled": 880,
"oversized_source_files": 1
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "TypeScript (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "TypeScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "1/880 source files over 60KB",
"points": 54.9,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 880,
"oversized": 1
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "moderate",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 60,
"inputs": {
"example_dirs": [],
"has_mcp_signal": true,
"api_schema_files": [
"apps/api/docs/openapi.json",
"apps/docs/openapi.yaml",
"sdk/core/go/api/openapi.yaml"
]
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": "apps/api/docs/openapi.json, apps/docs/openapi.yaml, sdk/core/go/api/openapi.yaml",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "apps/api/docs/openapi.json, apps/docs/openapi.yaml, sdk/core/go/api/openapi.yaml"
}
}
],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 20,
"status": "met",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"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": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
"GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
],
"report_type": "repository",
"generated_at": "2026-07-27T13:56:22.749909Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/p/PhoenixSolutionsGroup/omnibase.svg",
"full_name": "PhoenixSolutionsGroup/omnibase",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}