Raw JSON report machine-readable
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 810,
"has_wiki": true,
"homepage": "https://iome.sh",
"languages": {
"Go": 964818,
"Shell": 1943,
"Makefile": 1843
},
"pushed_at": "2026-07-25T04:09:07Z",
"created_at": "2026-07-16T09:43:17Z",
"owner_type": "Organization",
"updated_at": "2026-07-25T04:09:11Z",
"description": "I/O Mesh TUI coding agent (Go) — multi-model (DeepSeek, Grok, Gemini/Vertex) + mesh context hooks",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "Go",
"significant_languages": [
"Go"
]
},
"owner": {
"blog": "https://iome.sh",
"name": "IOMesh Technology Ltd.",
"type": "Organization",
"login": "iome-sh",
"company": "IOMesh Technology Ltd.",
"location": null,
"followers": 0,
"avatar_url": "https://avatars.githubusercontent.com/u/296311984?v=4",
"created_at": "2026-06-23T22:22:15Z",
"is_verified": null,
"public_repos": 3,
"account_age_days": 31
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.70.0",
"kind": "minor",
"published_at": "2026-07-23T05:35:28Z"
},
{
"tag": "v0.69.0",
"kind": "minor",
"published_at": "2026-07-22T22:44:49Z"
},
{
"tag": "v0.68.0",
"kind": "minor",
"published_at": "2026-07-22T22:23:11Z"
},
{
"tag": "v0.67.0",
"kind": "minor",
"published_at": "2026-07-22T21:17:17Z"
},
{
"tag": "v0.66.0",
"kind": "minor",
"published_at": "2026-07-22T20:59:37Z"
},
{
"tag": "v0.65.0",
"kind": "minor",
"published_at": "2026-07-22T20:43:13Z"
},
{
"tag": "v0.64.0",
"kind": "minor",
"published_at": "2026-07-22T20:35:35Z"
},
{
"tag": "v0.63.0",
"kind": "minor",
"published_at": "2026-07-21T11:14:56Z"
},
{
"tag": "v0.62.0",
"kind": "minor",
"published_at": "2026-07-21T10:57:33Z"
},
{
"tag": "v0.61.0",
"kind": "minor",
"published_at": "2026-07-21T07:28:10Z"
},
{
"tag": "v0.60.0",
"kind": "minor",
"published_at": "2026-07-21T07:02:39Z"
},
{
"tag": "v0.59.0",
"kind": "minor",
"published_at": "2026-07-21T06:39:57Z"
},
{
"tag": "v0.58.0",
"kind": "minor",
"published_at": "2026-07-21T06:02:31Z"
},
{
"tag": "v0.57.0",
"kind": "minor",
"published_at": "2026-07-21T05:44:58Z"
},
{
"tag": "v0.56.0",
"kind": "minor",
"published_at": "2026-07-21T05:27:52Z"
},
{
"tag": "v0.55.0",
"kind": "minor",
"published_at": "2026-07-21T05:10:31Z"
},
{
"tag": "v0.54.0",
"kind": "minor",
"published_at": "2026-07-21T05:08:48Z"
},
{
"tag": "v0.53.0",
"kind": "minor",
"published_at": "2026-07-21T04:10:52Z"
},
{
"tag": "v0.52.0",
"kind": "minor",
"published_at": "2026-07-21T03:55:59Z"
},
{
"tag": "v0.51.0",
"kind": "minor",
"published_at": "2026-07-21T03:41:12Z"
},
{
"tag": "v0.50.0",
"kind": "minor",
"published_at": "2026-07-21T03:25:29Z"
},
{
"tag": "v0.49.0",
"kind": "minor",
"published_at": "2026-07-21T03:06:55Z"
},
{
"tag": "v0.48.0",
"kind": "minor",
"published_at": "2026-07-21T02:48:22Z"
},
{
"tag": "v0.47.0",
"kind": "minor",
"published_at": "2026-07-20T17:29:51Z"
},
{
"tag": "v0.46.0",
"kind": "minor",
"published_at": "2026-07-20T17:14:09Z"
},
{
"tag": "v0.45.0",
"kind": "minor",
"published_at": "2026-07-20T16:52:22Z"
},
{
"tag": "v0.44.0",
"kind": "minor",
"published_at": "2026-07-20T16:43:24Z"
},
{
"tag": "v0.43.0",
"kind": "minor",
"published_at": "2026-07-20T16:24:42Z"
},
{
"tag": "v0.42.0",
"kind": "minor",
"published_at": "2026-07-20T15:07:25Z"
},
{
"tag": "v0.41.0",
"kind": "minor",
"published_at": "2026-07-20T14:53:56Z"
},
{
"tag": "v0.40.0",
"kind": "minor",
"published_at": "2026-07-20T14:40:44Z"
},
{
"tag": "v0.39.0",
"kind": "minor",
"published_at": "2026-07-20T14:28:50Z"
},
{
"tag": "v0.38.0",
"kind": "minor",
"published_at": "2026-07-20T10:55:08Z"
},
{
"tag": "v0.37.0",
"kind": "minor",
"published_at": "2026-07-20T10:42:20Z"
},
{
"tag": "v0.36.0",
"kind": "minor",
"published_at": "2026-07-20T10:30:18Z"
},
{
"tag": "v0.35.0",
"kind": "minor",
"published_at": "2026-07-20T10:18:04Z"
},
{
"tag": "v0.34.0",
"kind": "minor",
"published_at": "2026-07-20T06:33:14Z"
},
{
"tag": "v0.33.0",
"kind": "minor",
"published_at": "2026-07-20T06:19:35Z"
},
{
"tag": "v0.32.0",
"kind": "minor",
"published_at": "2026-07-20T06:07:51Z"
},
{
"tag": "v0.31.0",
"kind": "minor",
"published_at": "2026-07-20T05:56:50Z"
},
{
"tag": "v0.30.0",
"kind": "minor",
"published_at": "2026-07-20T04:10:38Z"
},
{
"tag": "v0.29.0",
"kind": "minor",
"published_at": "2026-07-20T04:15:18Z"
},
{
"tag": "v0.28.0",
"kind": "minor",
"published_at": "2026-07-19T23:44:32Z"
},
{
"tag": "v0.27.0",
"kind": "minor",
"published_at": "2026-07-19T23:32:05Z"
},
{
"tag": "v0.26.0",
"kind": "minor",
"published_at": "2026-07-19T23:20:41Z"
},
{
"tag": "v0.25.0",
"kind": "minor",
"published_at": "2026-07-19T22:40:07Z"
},
{
"tag": "v0.24.0",
"kind": "minor",
"published_at": "2026-07-19T22:32:42Z"
},
{
"tag": "v0.23.0",
"kind": "minor",
"published_at": "2026-07-19T22:26:14Z"
},
{
"tag": "v0.22.0",
"kind": "minor",
"published_at": "2026-07-19T04:47:41Z"
},
{
"tag": "v0.21.0",
"kind": "minor",
"published_at": "2026-07-19T04:36:06Z"
},
{
"tag": "v0.20.0",
"kind": "minor",
"published_at": "2026-07-19T04:25:12Z"
},
{
"tag": "v0.19.0",
"kind": "minor",
"published_at": "2026-07-19T04:18:12Z"
},
{
"tag": "v0.18.0",
"kind": "minor",
"published_at": "2026-07-19T03:49:30Z"
},
{
"tag": "v0.17.0",
"kind": "minor",
"published_at": "2026-07-19T03:41:33Z"
},
{
"tag": "v0.16.0",
"kind": "minor",
"published_at": "2026-07-19T02:43:52Z"
},
{
"tag": "v0.15.0",
"kind": "minor",
"published_at": "2026-07-19T02:36:02Z"
},
{
"tag": "v0.14.0",
"kind": "minor",
"published_at": "2026-07-19T02:25:50Z"
},
{
"tag": "v0.13.0",
"kind": "minor",
"published_at": "2026-07-19T02:16:15Z"
},
{
"tag": "v0.12.0",
"kind": "minor",
"published_at": "2026-07-19T01:40:01Z"
},
{
"tag": "v0.11.0",
"kind": "minor",
"published_at": "2026-07-19T01:34:15Z"
},
{
"tag": "v0.10.0",
"kind": "minor",
"published_at": "2026-07-19T01:25:31Z"
},
{
"tag": "v0.9.0",
"kind": "minor",
"published_at": "2026-07-19T01:16:46Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2026-07-19T01:06:30Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2026-07-19T00:28:22Z"
},
{
"tag": "v0.6.1",
"kind": "patch",
"published_at": "2026-07-19T00:16:18Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2026-07-18T09:57:46Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2026-07-18T09:16:39Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2026-07-18T05:32:09Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2026-07-16T22:35:47Z"
},
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2026-07-16T21:05:15Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2026-07-16T20:05:31Z"
}
],
"recent_commits": [
{
"oid": "8c4702c3b5b397c1a47a14a64919227387a65c48",
"body": "When memory pull has empty --filter/pull_filter and tenant is hierarchical\n(dept.* or contains '.'), default filter_subject to tenant.> so durable\nconsumers only see that tenant's subjects. Log effective filter once at start.\n\nCreateConsumer already receives opt.Filter; client.auth continues to set\nX-IOMesh-Tenant on create/fetch/ack (mesh client falls back to memory tenant).\n\nHonesty: cost-max M1 pull remains Beta local-palace path; federated ACL peer\nis aion s659 — no GA claim.",
"is_bot": false,
"headline": "feat(memory): pull default filter from tenant (s660) (#190)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-25T04:09:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b28f66387dc37f6f92f75befdc2b4ba51114d436",
"body": "* feat(memory): iomesh memory pull mesh→local palace (s652 M1)\n\nCost-max path: durable consumer fetch maps envelopes into local MCP\nmemory_ingest_turn. dual_write stays optional audit. Unit tests + docs.\n\n* fix(lint): memory pull errcheck + fprintln help\n\n* style: gofmt memory pull files",
"is_bot": false,
"headline": "feat(memory): iomesh memory pull mesh→local palace (s652 M1) (#189)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-25T02:32:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "50a842303f1008c3ff4c5504c5edd1775c10886e",
"body": "FormatProductDetail always-emit (status/department/description/lineage/subjects) already on main.",
"is_bot": false,
"headline": "chore: release v0.70.0 (#188)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-23T05:33:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8805b97e54e99a3291a7d84eebd1ed139b4b28ce",
"body": null,
"is_bot": false,
"headline": "feat(catalog): FormatProductDetail always-emits optional knobs (#187)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-23T05:24:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "118088d4a89fabb7b4d475e81c66f3644c74f644",
"body": "Format stream/consumer always-emit (stream knobs + filter_subject) already on main.",
"is_bot": false,
"headline": "chore: release v0.69.0 (#186)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T22:42:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b911381feba3f9456668814121684f7dc454e06c",
"body": "…ject (#185)",
"is_bot": false,
"headline": "feat(format): always-emit stream detail knobs and consumer filter_sub…",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T22:39:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c02a2c543430f9ff4e74c07ffe3a241a06b94b06",
"body": "FormatKV always-emit (entry created_at + bucket knobs) already on main.",
"is_bot": false,
"headline": "chore: release v0.68.0 (#184)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T22:21:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b98c77d28826b43167c874a2136675c3e20994b3",
"body": null,
"is_bot": false,
"headline": "feat(kv): always-emit FormatKV entry created_at and bucket knobs (#183)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T22:14:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "74ad782e1283234fc269af17dfa496e6ff36b1d2",
"body": "Dogfood step latency_ms always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.67.0 (#182)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T21:15:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9d1a891310913ab0dab8495777eabdb0af31621d",
"body": "Add per-step latency_ms (int ms, 0 when zero/not timed) alongside\nexisting string latency so CI scrapers can marshal DogfoodReport steps\nnatively without omitempty gaps. stepTimed sets LatencyMS whenever\nLatency is set; FormatReportJSON always emits both fields.",
"is_bot": false,
"headline": "feat(dogfood): always-emit step latency_ms for CI scrapers (#181)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T21:12:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "faffa51c1e7de61e1ae641ec50548e782d8fd4c5",
"body": "Mesh wait error always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.66.0 (#180)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T20:57:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "25c2a7c37a276a87ccfc15c498150645d14b82a1",
"body": "Always emit `error` (empty string when OK) in mesh wait text and JSON so\nCI scrapers can key on a stable field without omitempty gaps. Peers\nresult/exit_code/identity always-emit continuum.",
"is_bot": false,
"headline": "feat(mesh-wait): always-emit error for CI scrapers (#179)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T20:53:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7dc23c42c7fe6d0a11cb6b6b823200d5eadd5938",
"body": "Dogfood step detail and latency always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.65.0 (#178)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T20:41:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fe0f013ae884644652efcfb61b6285d8f4486e48",
"body": "Always emit per-step detail (empty string when unset) and latency\n(duration string; empty when zero) in dogfood JSON so CI scrapers\ncan key on stable step fields without omitempty gaps.",
"is_bot": false,
"headline": "feat(dogfood): always-emit step detail and latency for CI (#177)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-22T20:37:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a25235759b9603ac843464d1afb89eeb7c134dcd",
"body": "Dogfood policy_allow always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.64.0 (#176)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T17:51:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e4e9c301a1ebb7646555bf6085c1f4dd7b2ad537",
"body": "Change DogfoodReport.PolicyAllow from *bool omitempty to string\n\"true\"|\"false\"|\"\" always-emitted in JSON and text (empty when policy\nmode off / not evaluated / mesh disabled). Peers health_err/ready_err/\npolicy_source/memory_endpoint continuum (s515).",
"is_bot": false,
"headline": "feat(dogfood): always-emit policy_allow as string for CI (#175)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T17:48:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "be73ed7bbcb863c59102a892a20b5a7c87b9574c",
"body": "Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 6 to 7.\n- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)\n- [Commits](https://github.com/goreleaser/goreleaser-action/compare/v6...v7)\n\n---\nupdated-dependencies:\n- dependency-name: go\n[…]\nirect:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump goreleaser/goreleaser-action from 6 to 7 (#109)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T17:19:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dff8cac9d88329816a34673dd2a3a93b45eb9224",
"body": "Dogfood kv/consumer identity always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.63.0 (#174)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T11:13:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "86bfc8b9a1975048423a3e51dc60707c30b472af",
"body": "Always emit kv_bucket, consumer_stream, consumer_name, and consumer_filter\nas empty strings when unset (JSON + text) so CI scrapers have stable keys\nwithout omitempty gaps. Empty identity does not invent probe success —\npair with counts/flags. Bool probe flags unchanged.",
"is_bot": false,
"headline": "feat(dogfood): always-emit kv/consumer soft-probe identity for CI (#173)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T11:09:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4ddcb1385edf0f28a7f7a8413ef2d29860958ce6",
"body": "Dogfood catalog_source and policy_source always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.62.0 (#172)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T10:55:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5bf9ed95a7bf67a978c4bce6f70329857f50aa95",
"body": "…rapers (#171)\n\nAlways emit top-level catalog_source and policy_source (empty string when\nunset / mesh disabled before step) in dogfood text and JSON so CI scrapers\ncan key on stable source fields without omitempty gaps. Peers identity /\nmemory_endpoint / health_err always-emit continuum.",
"is_bot": false,
"headline": "feat: dogfood always-emits catalog_source and policy_source for CI sc…",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T10:51:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "429586f63682e443608b53382ee47c99fd6f9482",
"body": "Dogfood memory_endpoint always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.61.0 (#170)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T07:26:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6b9b090ca6f7779445d7cc24d38dbda71f6045b9",
"body": "* feat: dogfood always-emits memory_endpoint for CI scrapers\n\nDrop omitempty on DogfoodReport.MemoryEndpoint and FormatReportJSON out\nstruct so JSON always has \"memory_endpoint\":\"\" when unset. FormatReport\ntext always prints the memory_endpoint line (empty-honest when unset).\n\nDoes not invent memory\n[…]\ns sidecar not\nconfigured (retrieve falls back to mesh endpoint). Peers identity\nalways-emit mold and SDK SUMMARY+RESULT base_url continuum.\n\n* style: gofmt dogfood.go after memory_endpoint always-emit",
"is_bot": false,
"headline": "feat: dogfood always-emits memory_endpoint for CI scrapers (#169)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T07:23:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "39f4abfe68042dd8010e959023add23a5eff00a9",
"body": "Dogfood probe-err always-emit (health_err/ready_err) already on main.",
"is_bot": false,
"headline": "chore: release v0.60.0 (#168)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T07:00:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3b55ae454849952c3215fdc6d644e5936dc6093c",
"body": "…#167)\n\nAlways emit top-level health_err and ready_err in dogfood text and JSON\n(empty string when health/ready PASS, clean skip without err, or mesh\ndisabled) so CI scrapers can key on stable probe-error fields without\nomitempty gaps. Text uses dedicated health_err:/ready_err: lines after\nhealth_ms/ready_ms. Populated from health FAIL and ready FAIL/soft-SKIP\nunderlying probe errors. Peers mesh status probe-err and SDK\nConnectionStatus always-emit continuum.",
"is_bot": false,
"headline": "feat: dogfood always-emits health_err and ready_err for CI scrapers (…",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T06:58:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4e5f865a38ff73587ab0ffd556683e724d25fb4",
"body": "Mesh status probe-err always-emit (health_err/ready_err) already on main.",
"is_bot": false,
"headline": "chore: release v0.59.0 (#166)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T06:38:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "939f289eb286feb9c60b30d2a3124ed85280b206",
"body": "…rs (#165)\n\nAlways emit health_err and ready_err in mesh status text and JSON (empty\nstring when probe OK/skipped) so CI scrapers can key on stable probe-error\nfields without omitempty gaps. Text uses dedicated health_err:/ready_err:\nlines; detail is no longer inlined on health:/ready:. Peers SDK\nConnectionStatus always-emit continuum.",
"is_bot": false,
"headline": "feat: mesh status always-emits health_err and ready_err for CI scrape…",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T06:35:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1a0b2395c8136ccd04273776750adf20d085b3cf",
"body": "Mesh wait identity always-emit (endpoint/tenant/org/workspace) plus\ndogfood identity always-emit already on main.",
"is_bot": false,
"headline": "chore: release v0.58.0 (#164)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T06:02:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9442b7d5519379f5369a12509d5bd8bbb61a2fe9",
"body": "Always emit endpoint/tenant/org/workspace on mesh wait text+JSON\n(empty string honest when unset). Compose MeshWaitEvidence; do not\ninvent readiness from identity. Peers mesh status identity continuum.",
"is_bot": false,
"headline": "feat: mesh wait always-emits identity fields for CI scrapers (#163)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:59:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "466f8eb6e5f83a70c78fab5fe61dfdb196a78b24",
"body": "Always emit tenant, org, and workspace (empty string when unset) in dogfood text and JSON reports so CI scrapers can key on stable identity fields without omitempty gaps; peers mesh status identity always-emit.",
"is_bot": false,
"headline": "feat(dogfood): always emit tenant/org/workspace identity fields (#162)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:55:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "13385c8431d35e1f0ff717fc4804122a735f33b8",
"body": "Minor release: mesh status identity always-emit evidence.",
"is_bot": false,
"headline": "chore: release v0.57.0 (#161)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:43:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a4ff88be06a58b6758ecebd8a9234a87841dd38f",
"body": "Always emit endpoint, tenant, org, and workspace in mesh status text and\nJSON (empty string when unset) so CI scrapers can key on stable identity\nfields without omitempty gaps. Peers dogfood/mesh wait always-emit continuum.",
"is_bot": false,
"headline": "feat: mesh status always-emits identity fields for CI scrapers (#160)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:37:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3b7f1633e25a384752889dea1a1b7f0879840dbe",
"body": "Minor release: dogfood always-emit user_agent evidence.",
"is_bot": false,
"headline": "chore: release v0.56.0",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:26:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "90e8535087dc52486fdeed73594d29b9f8f24651",
"body": "Remove omitempty on FormatReportJSON out.UserAgent and always print\nuser_agent in FormatReport so CI scrapers get a stable key even when\nempty. Peers mesh wait/status always-emit continuum.",
"is_bot": false,
"headline": "feat(dogfood): always emit user_agent in text and JSON (#158)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:21:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dfd143d4ef576f7136db88264aeade3e04addfd3",
"body": "Minor release: mesh wait result evidence.",
"is_bot": false,
"headline": "chore: release v0.55.0 (#157)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:10:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f51be410d75702e0935b59931cc89f2b71ab028e",
"body": "Always emit result (ok when wait OK / err when wait fails; derived from\nOK/waitErr only) on mesh wait text and --json so scrapers peer mesh status\nresult continuum without inventing readiness schema.",
"is_bot": false,
"headline": "feat: mesh wait always-emits result ok|err evidence (#156)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:07:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "88ac7a695c7c803332f1f41ff6c4ec617589dae8",
"body": "Minor release: mesh wait user_agent evidence.",
"is_bot": false,
"headline": "chore: release v0.54.0 (#155)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:06:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "469eebea5309934f74fca9614f6f4459574db0eb",
"body": "Always emit package mesh HTTP User-Agent (iomesh.UserAgent()) on mesh wait\ntext and --json output for CI scrapers; peers mesh status/dogfood.",
"is_bot": false,
"headline": "feat: mesh wait always-emits user_agent evidence (#154)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T05:02:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cce8a3ab39f77f2287d8fcd3aff4928cd06bddd7",
"body": "Minor release: mesh wait version evidence.",
"is_bot": false,
"headline": "chore: release v0.53.0 (#153)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T04:09:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9aaa38d2ab96868e76a6565fa81da972d465f9c6",
"body": "Always emit version (ProductVersion, empty when unset) on mesh wait\ntext and --json output so CI scrapers record CLI build; peers status/dogfood.",
"is_bot": false,
"headline": "feat: mesh wait always-emits version product evidence (#152)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T04:06:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3d72d76e1c33d81cabbb0ae7a9ccacba51e8e584",
"body": "Minor release: mesh wait exit_code evidence.",
"is_bot": false,
"headline": "chore: release v0.52.0 (#151)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:54:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "72ab369221f118efde483548e5069a606e2f610b",
"body": "Always emit exit_code (0 when ok, 1 when not) in mesh wait text and\nJSON so CI scrapers record the intended process exit without shell $?.",
"is_bot": false,
"headline": "feat: mesh wait always-emits exit_code process exit evidence (#150)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:51:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ecbf2141db42fcab4401ad4080cb8f1ef216ab97",
"body": "Minor release: dogfood exit_code evidence.",
"is_bot": false,
"headline": "chore: release v0.51.0 (#149)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:39:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79a3892e0fd0e3b791d2f7e7ece9f23aa6e67d45",
"body": "Always emit exit_code (0 when ok, 1 when not) in dogfood text/JSON\nreports so CI scrapers record intended process exit without shell $?.\ncmdMeshDogfood returns rep.ExitCode (equivalent to prior !OK → 1).",
"is_bot": false,
"headline": "feat(dogfood): always emit exit_code evidence (#148)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:34:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "810a000b8b0f80e7fab4fb7cbd1affc4dab436d4",
"body": "Minor release: mesh status exit_code evidence.",
"is_bot": false,
"headline": "chore: release v0.50.0 (#147)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:25:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4c6864c27bdcd2d4bc623659b955db631eceede1",
"body": "Always emit exit_code (int) in mesh status text and JSON: the process\nexit MeshStatusExitCode(strict, result) would return (0 fail-open /\nnon-err; 1 only when --strict and result=err) so CI scrapers record\nintended exit without shell $?.",
"is_bot": false,
"headline": "feat: mesh status always-emits exit_code process exit evidence (#146)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:19:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bb37e3c7fd56834fe4afdf47bd0a737db322d83d",
"body": "Minor release: mesh status strict evidence.",
"is_bot": false,
"headline": "chore: release v0.49.0 (#145)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T03:05:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d65ec429679a2da1b32d289cb53f385708c14c77",
"body": "Always emit configured --strict (bool) on mesh status text and JSON so\nCI scrapers record whether result=err would exit 1 without re-parsing flags.",
"is_bot": false,
"headline": "feat: mesh status always-emits strict exit-gate evidence (#144)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T02:59:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b02e72d3edc2ab7623cebd72d666c96b33253c93",
"body": "Minor release: dogfood wait_ready_attempts evidence.",
"is_bot": false,
"headline": "chore: release v0.48.0 (#143)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T02:46:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6481473f3e9a0e7554b28dfa321ca4353a454cde",
"body": "Always emit top-level wait_ready_attempts (WaitReady probe cycle count)\nin text and JSON dogfood reports so CI can record Health/Ready loop\ncounts without scraping step detail. 0 when wait budget off / step not\nrun; actual count on success or soft/strict fail. Uses WaitReadyAttempts\nAPI and optional attempts=N in wait_ready PASS detail.",
"is_bot": false,
"headline": "feat: dogfood always-emit wait_ready_attempts probe cycles (#142)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-21T02:43:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9e6c72f4e6df4c6dc53d9329d93a1b948a51446a",
"body": "Minor release: mesh wait attempts evidence for CI scrapers without re-parsing logs.",
"is_bot": false,
"headline": "chore: release v0.47.0 (#141)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T17:28:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "009b4fd9e96e7da3673d539d27d8c518cf373ddc",
"body": "WaitReadyAttempts counts each Health/Ready probe loop; MeshWaitEvidence\nand text/JSON formatters always emit attempts for CI scrapers.",
"is_bot": false,
"headline": "feat: mesh wait always-emits attempts probe cycle count (#140)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T17:24:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79497911db3d37306f3f1240b55f8eb51a00db02",
"body": "Minor release: dogfood wait_ready_result evidence for CI scrapers without scraping the steps array.",
"is_bot": false,
"headline": "chore: release v0.46.0 (#139)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T17:12:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "127478aef3e285241667a59a6846b9a3ce4e96d3",
"body": "Always emit top-level wait_ready_result (off|ok|err|skip) in text and\nJSON dogfood reports so CI can record wait_ready step outcome without\nscraping the steps array. off when WaitReady budget is 0 / step not run.",
"is_bot": false,
"headline": "feat: dogfood always-emit wait_ready_result for CI scrapers (#138)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T17:06:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4c654d86b64a021a897eb56bbb3967a699623080",
"body": "Minor release: dogfood wait_ready_interval_ms and wait_require_health evidence for CI scrapers without re-parsing WaitReady flags.",
"is_bot": false,
"headline": "chore: release v0.45.0",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T16:50:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "38f6c594c0d037e638a36168fbf39e0057bae164",
"body": "… (#136)\n\nAlways emit configured WaitReady poll interval (effective ms; 0 when off,\ndefault 500 when wait on and interval unset) and WaitRequireHealth bool in\ndogfood text/JSON reports so CI scrapers record preflight knobs without\nre-parsing flags.",
"is_bot": false,
"headline": "feat: dogfood wait_ready_interval_ms and wait_require_health evidence…",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T16:47:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f778ee95f06cbf44ccde0fac1edaeaf17e58da30",
"body": "* chore: release v0.44.0\n\nMesh wait timeout_ms and interval_ms evidence.\n\n* chore: drop accidental local iomesh binary from release branch\n\n* chore: gitignore root-level iomesh binary artifact",
"is_bot": false,
"headline": "chore: release v0.44.0 (#135)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T16:35:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2760f2701eff836b7405cb3b137123da78c040b2",
"body": "* feat: always emit timeout_ms and interval_ms on mesh wait\n\nMesh wait text/JSON results now include configured WaitReady budget\n(timeout_ms) and poll interval (interval_ms) via MeshWaitEvidence so\nCI scrapers record preflight knobs without re-parsing flags.\n\n* fix: mesh wait exit path use ev.OK not undefined ok",
"is_bot": false,
"headline": "feat: mesh wait timeout_ms and interval_ms evidence (#134)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T16:33:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f6d247aa93c31dc531d08917f451afc30e1f91f",
"body": "Mesh wait always-emits require_health in text/JSON.",
"is_bot": false,
"headline": "chore: release v0.43.0 (#133)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T16:18:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f07b3eb49e4df2c0ed57915b275a8d9122bc331",
"body": "Always include require_health boolean in FormatMeshWaitResult and\nFormatMeshWaitResultJSON so CI scrapers record the Health gate without\nre-parsing flags. Wire mesh wait CLI; update tests and docs.",
"is_bot": false,
"headline": "feat: mesh wait always-emits require_health in text and JSON (#132)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T16:16:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5f35d62b4e7bb581edbca740fe160343ef907a7c",
"body": "Mesh wait elapsed_ms and optional --json.",
"is_bot": false,
"headline": "chore: release v0.42.0 (#131)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T15:01:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "df08f92b5db076d2eb3cd9c7385bd6785084f1a3",
"body": "Operator preflight WaitReady wall time for CI evidence on PASS/FAIL.",
"is_bot": false,
"headline": "feat: mesh wait always-emits elapsed_ms + optional --json (#130)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:59:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e4c75b0f638833c0322197bb2cc7cd9e14290f1b",
"body": "Mesh status --strict exits 1 when result=err.",
"is_bot": false,
"headline": "chore: release v0.41.0 (#129)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:48:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c5d83930673bb49c9fccf6b5695afd7fbc5950b",
"body": "Default remains fail-open (exit 0 on probe failures). With --strict,\nexit 1 only when result is err; skipped (mesh disabled) and partial\nstay 0. Pure helper MeshStatusExitCode unit-tested.",
"is_bot": false,
"headline": "feat: mesh status --strict exit gate on aggregate result=err (#128)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:46:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ea4de20382bc84b25e59c4f5fb0c48b36363f4ae",
"body": "Mesh status aggregate result field.",
"is_bot": false,
"headline": "chore: release v0.40.0 (#127)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:35:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "802e00f73b6f60e8800e1339b558d43f71cbf387",
"body": "JSON/text mesh status always emit result (ok|err|skipped|partial)\nfrom AggregateProbeResult(health, ready) for operator/CI gating.",
"is_bot": false,
"headline": "feat: mesh status always-emits aggregate result from health/ready (#126)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:33:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "18ab833af1fe68f366e53e635ce5f0a8f290349c",
"body": "Mesh status duration_ms wall-clock.",
"is_bot": false,
"headline": "chore: release v0.39.0 (#125)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:23:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4886fe5f7fd2f7f6c8d1c18a58f53a707086173c",
"body": "Wall-clock for the Health+Ready probe path on MeshStatusSnapshot\n(duration_ms). Always emitted in JSON/text; 0 when mesh disabled or\nprobes skipped. Docs and tests updated.",
"is_bot": false,
"headline": "feat: mesh status always-emits duration_ms probe-path latency (#124)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T14:21:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "939a00a03b070e144b2a29d3588fdaef1d2be3a0",
"body": "Dogfood kv_list_ms list-keys path latency.",
"is_bot": false,
"headline": "chore: release v0.38.0 (#123)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:49:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2dd8f7a5290e47d2f0564e7300e131987d82a101",
"body": "Time only the KVListKeys call into top-level kv_list_ms (0 when probe\nunset / list not run). kv_ms remains full step latency (ensure + list).\nWire JSON/text report, docs, and tests.",
"is_bot": false,
"headline": "feat: dogfood always-emits kv_list_ms for KVListKeys latency (#122)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:47:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7c29fc53242bd246857c5e563e5f9c36c1e7df9d",
"body": "Dogfood kv_ensure_ms ensure-path latency.",
"is_bot": false,
"headline": "chore: release v0.37.0 (#121)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:37:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a582d1267c4929b5589d246ea0cf05b04ba32eb0",
"body": "Always emit top-level kv_ensure_ms for KVCreateBucket ensure latency\n(ms). Distinct from kv_ms full-step latency; 0 when ensure off, kv\nprobe unset, or ensure not attempted.",
"is_bot": false,
"headline": "feat(dogfood): emit kv_ensure_ms ensure-path latency (#120)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:35:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7f0c892bf31749336eefb79065902b6878381139",
"body": "Mesh status health_ms/ready_ms probe latencies.",
"is_bot": false,
"headline": "chore: release v0.36.0 (#119)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:25:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d681e1e75ab7c92a40b20c55fa133697ec99259f",
"body": "Time one-shot Health/Ready probes in `iomesh mesh status` and always\ninclude latencies in JSON/text (0 when mesh disabled or skipped) for\noperator/CI evidence. Extract pure MeshStatusSnapshot format helpers\nwith unit tests.",
"is_bot": false,
"headline": "feat(mesh): emit health_ms/ready_ms on mesh status (#118)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:23:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "96d099c994067367148b9778c4472c71d8d1e14c",
"body": "Dogfood soft consumer delete probe and --consumer-delete.",
"is_bot": false,
"headline": "chore: release v0.35.0 (#117)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:13:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a56252155dadba5b58edbbcff4513d88da179987",
"body": "Add DogfoodOptions.ConsumerDelete / CLI --consumer-delete for best-effort\nDeleteConsumer after successful create (and optional fetch) in the consumer\nstep. Soft fail-open unless --strict. Always emit consumer_delete_probed and\nconsumer_delete_ok for CI evidence.",
"is_bot": false,
"headline": "feat(dogfood): soft optional consumer delete cleanup (#116)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T10:11:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "47b95d4088449b05ec7ea5c274e0de9d74aea369",
"body": "Mesh consumer DeleteConsumer API and CLI.",
"is_bot": false,
"headline": "chore: release v0.34.0 (#115)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T06:27:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "98be4eed238b3deba60d06cfaa75e155f6800bf0",
"body": "Wire parity with SDK DeleteConsumer: DELETE /v1/streams/{stream}/consumers/{name}\n(path-escaped; 204/2xx success), tests, and `iomesh mesh consumer delete --yes`.",
"is_bot": false,
"headline": "feat(mesh): add DeleteConsumer lean API and CLI delete (#114)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T06:26:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2a36bc5e02155002f59d1b7d46c691c127b66404",
"body": "Dogfood steps_pass/fail/skip top-level counts.",
"is_bot": false,
"headline": "chore: release v0.33.0 (#113)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T06:15:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9e578b5aa9c793640537e31afb7d5343a60e2a2c",
"body": "Always-emit step tallies on DogfoodReport for CI greps without\nscraping Summary or the steps array. Mesh-disabled early return\nsets steps_skip=1 for the single enabled SKIP step.",
"is_bot": false,
"headline": "feat(dogfood): expose top-level steps_pass/fail/skip counts (#112)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T06:13:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "94f4b13e36f343c016270df77b70729a1ab8a107",
"body": "Dogfood wait_ready_elapsed_ms step latency.",
"is_bot": false,
"headline": "chore: release v0.32.0 (#111)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T06:04:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3d8c156c639323ea4cf40b36d480a64243dc956d",
"body": "Add WaitReadyElapsedMS (wait_ready_elapsed_ms) for actual wait_ready\nstep wall time, distinct from wait_ready_ms configured budget. Always\nemitted (0 when step skipped/absent or mesh disabled).",
"is_bot": false,
"headline": "feat(dogfood): emit wait_ready_elapsed_ms step latency (#110)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T06:02:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0dd231cf8af57a76fc15913c5e25e17e3c9d4b83",
"body": "Dogfood consumer_ms and kv_ms step latencies.",
"is_bot": false,
"headline": "chore: release v0.31.0 (#108)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T05:47:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2c8a089256edb6df65fface59161539dda0121ae",
"body": "Always emit top-level consumer_ms / kv_ms (0 when skipped/absent),\nmatching emit_ms / llm_meter_ms pattern for CI-stable latency evidence.",
"is_bot": false,
"headline": "feat: dogfood consumer_ms and kv_ms step latencies (#107)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T05:45:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "15970599f785ccc8c01ba1818ebce892b54f70fa",
"body": "Dogfood llm_meter/pub/memory step latencies.",
"is_bot": false,
"headline": "chore: release v0.30.0 (#106)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T04:08:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "765b37f11f959c931fc55b92e5841abc05f71a04",
"body": "Always emit top-level llm_meter_ms, pub_ms, memory_ingest_ms,\nmemory_recall_ms, and memory_retrieve_ms (0 when skipped/absent),\nmatching the emit_ms/policy_ms pattern for CI latency greps.",
"is_bot": false,
"headline": "feat(mesh): dogfood llm_meter/pub/memory step latencies (#105)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-20T04:06:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3f9b5ea644233fc508dfd95b49b7b040855dd6c",
"body": "Dogfood emit_ms/policy_ms/duration_ms and disabled StatusLine version.",
"is_bot": false,
"headline": "chore: release v0.29.0 (#104)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:51:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79501e62db16fd75e9408e897aee80f1d3e5a8ff",
"body": "…Line version (#103)\n\nExtend dogfood report with emit and policy step latencies plus wall-clock\nduration_ms. Surface ProductVersion on StatusLine when mesh is disabled so\nslash /mesh always shows version when set.",
"is_bot": false,
"headline": "feat(mesh): dogfood emit_ms/policy_ms/duration_ms and disabled Status…",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:49:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "41f2dbb33c11cb6739298a92618e2b7d8ebdae7d",
"body": "Minor release: dogfood step latencies and StatusLine version.",
"is_bot": false,
"headline": "chore: release v0.28.0 (#102)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:42:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c41c88ccc6272695dc6276e22b08b107929e67cb",
"body": null,
"is_bot": false,
"headline": "feat(mesh): dogfood step latencies and StatusLine version",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:38:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d72920c0f047508796e80293a28df9ec105efaeb",
"body": "Minor release: dogfood version and health/ready latency fields.",
"is_bot": false,
"headline": "chore: release v0.27.0 (#100)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:30:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b0af031c63980d9da5720212e3c10dccac0cb5df",
"body": "Always emit top-level version (from DogfoodOptions.Version / CLI binary),\nhealth_ms, and ready_ms for stage CI evidence without scraping step detail.",
"is_bot": false,
"headline": "feat(mesh): dogfood version and health/ready latency fields",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:28:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "55a2b5a81c666883fafb1974090a97c48a591b60",
"body": "Minor release: dogfood consumer identity and richer mesh status.",
"is_bot": false,
"headline": "chore: release v0.26.0 (#98)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:18:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b086c4a6f10237d2e3c0b1a307e4f7c6c57cfe56",
"body": "* feat(mesh): dogfood consumer identity and richer mesh status\n\nEmit consumer_stream/name/filter when the soft consumer probe is configured,\nand surface version plus policy/catalog/context plane flags on mesh status.\n\n* style: gofmt dogfood.go",
"is_bot": false,
"headline": "feat(mesh): dogfood consumer identity and richer mesh status (#97)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T23:17:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a9c66f7ce6b29049d24d4f4d2da1937c53847381",
"body": "Minor release: soft dogfood consumer create and fetch probe.",
"is_bot": false,
"headline": "chore: release v0.25.0 (#96)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T22:38:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0f3ba833e38825f8223ecfddf29664ddffe877b5",
"body": null,
"is_bot": false,
"headline": "feat(mesh): soft dogfood consumer create and fetch probe",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T22:37:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "548341efa2cb3addcf0952d29a3c81499ba8a01b",
"body": "Minor release: consumer ack and nack CLI.",
"is_bot": false,
"headline": "chore: release v0.24.0 (#94)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T22:30:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dadee4c25e007f28f1458bc90ece2dd175e2a526",
"body": "Lean ConsumerAck/ConsumerNack (POST .../ack|nack, body seqs) with\noptional ack_floor decode, CLI under mesh consumer, and httptest coverage.",
"is_bot": false,
"headline": "feat(mesh): consumer ack and nack CLI (#93)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T22:29:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ca2176c43c0cd3d92112142fb2e722e3f9111cee",
"body": "Minor release: consumer create CLI and soft dogfood pub probe.",
"is_bot": false,
"headline": "chore: release v0.23.0 (#92)",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T22:24:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c6ba6ea7213d5a8f12564d131d72305ad416c086",
"body": null,
"is_bot": false,
"headline": "feat(mesh): consumer create CLI and soft dogfood pub probe",
"author_name": "Jin",
"author_login": "iomesh-jin",
"committed_at": "2026-07-19T22:23:27Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 71,
"commits_last_year": 190,
"latest_release_at": "2026-07-23T05:35:28Z",
"latest_release_tag": "v0.70.0",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 2,
"days_since_latest_release": 2,
"mean_days_between_releases": 0.2
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 87,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "github.com/iome-sh/iomesh-tui",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/iome-sh/iomesh-tui",
"is_deprecated": false,
"latest_version": "v0.70.0",
"repository_url": "https://github.com/iome-sh/iomesh-tui",
"versions_count": 71,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-23T05:33:38Z",
"latest_version_yanked": null,
"days_since_latest_publish": 2
}
]
},
"popularity": {
"forks": 0,
"stars": 0,
"watchers": 0,
"fork_history": {
"days": [],
"complete": true,
"collected": 0,
"total_forks": 0
},
"star_history": {
"days": [],
"complete": true,
"collected": 0,
"total_stars": 0,
"collected_at": null
},
"open_issues_and_prs": 0
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [
"Makefile"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [
"go.mod"
],
"largest_source_bytes": 174818,
"source_files_sampled": 97,
"oversized_source_files": 3,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"go.mod"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "golang.org/x/sys",
"direct": false,
"version": "v0.38.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5024"
],
"fixed_version": "0.44.0",
"advisory_count": 1,
"oldest_advisory_days": 63
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.3.8",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5970"
],
"fixed_version": "0.39.0",
"advisory_count": 1,
"oldest_advisory_days": 10
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"unknown": 2
},
"advisory_count": 2,
"affected_count": 2,
"assessed_count": 26,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"go"
],
"dependencies": [
{
"name": "github.com/charmbracelet/bubbles",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.0.0"
},
{
"name": "github.com/charmbracelet/bubbletea",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.10"
},
{
"name": "github.com/charmbracelet/lipgloss",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.1.0"
},
{
"name": "github.com/coder/websocket",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.8.15"
},
{
"name": "github.com/pelletier/go-toml/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.4.3"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "github.com/charmbracelet/bubbles",
"direct": true,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/bubbletea",
"direct": true,
"version": "v1.3.10",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/lipgloss",
"direct": true,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/coder/websocket",
"direct": true,
"version": "v1.8.15",
"ecosystem": "go"
},
{
"name": "github.com/pelletier/go-toml/v2",
"direct": true,
"version": "v2.4.3",
"ecosystem": "go"
},
{
"name": "github.com/atotto/clipboard",
"direct": false,
"version": "v0.1.4",
"ecosystem": "go"
},
{
"name": "github.com/aymanbagabas/go-osc52/v2",
"direct": false,
"version": "v2.0.1",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/colorprofile",
"direct": false,
"version": "v0.4.1",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/ansi",
"direct": false,
"version": "v0.11.6",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/cellbuf",
"direct": false,
"version": "v0.0.15",
"ecosystem": "go"
},
{
"name": "github.com/charmbracelet/x/term",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/displaywidth",
"direct": false,
"version": "v0.9.0",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/stringish",
"direct": false,
"version": "v0.1.1",
"ecosystem": "go"
},
{
"name": "github.com/clipperhouse/uax29/v2",
"direct": false,
"version": "v2.5.0",
"ecosystem": "go"
},
{
"name": "github.com/erikgeiser/coninput",
"direct": false,
"version": "v0.0.0-20211004153227-1c3628e74d0f",
"ecosystem": "go"
},
{
"name": "github.com/lucasb-eyer/go-colorful",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-isatty",
"direct": false,
"version": "v0.0.20",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-localereader",
"direct": false,
"version": "v0.0.1",
"ecosystem": "go"
},
{
"name": "github.com/mattn/go-runewidth",
"direct": false,
"version": "v0.0.19",
"ecosystem": "go"
},
{
"name": "github.com/muesli/ansi",
"direct": false,
"version": "v0.0.0-20230316100256-276c6243b2f6",
"ecosystem": "go"
},
{
"name": "github.com/muesli/cancelreader",
"direct": false,
"version": "v0.2.2",
"ecosystem": "go"
},
{
"name": "github.com/muesli/termenv",
"direct": false,
"version": "v0.16.0",
"ecosystem": "go"
},
{
"name": "github.com/rivo/uniseg",
"direct": false,
"version": "v0.4.7",
"ecosystem": "go"
},
{
"name": "github.com/xo/terminfo",
"direct": false,
"version": "v0.0.0-20220910002029-abceb7e1c41e",
"ecosystem": "go"
},
{
"name": "golang.org/x/sys",
"direct": false,
"version": "v0.38.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.3.8",
"ecosystem": "go"
}
],
"collected": true,
"truncated": false,
"total_count": 26,
"direct_count": 5,
"indirect_count": 21
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 189,
"open_issues": 0,
"closed_ratio": null,
"closed_issues": 0,
"closed_unmerged_prs": 1
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "iomesh-jin",
"commits": 188,
"avatar_url": "https://avatars.githubusercontent.com/u/296309561?v=4"
}
],
"contributors_sampled": 1,
"top_contributor_share": 1
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"ci.yml",
"release.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"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": 0,
"reason": "branch protection not enabled on development/release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 0,
"reason": "Found 0/29 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 3,
"reason": "project has 1 contributing companies or organizations -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 0,
"reason": "project was created within the last 90 days. Please review its contents carefully",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": 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": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 8,
"reason": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 8,
"reason": "2 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "8c4702c3b5b397c1a47a14a64919227387a65c48",
"ran_at": "2026-07-25T09:36:07Z",
"aggregate_score": 5.5,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-25T04:10:30Z",
"oldest_open_prs": [],
"last_merged_pr_at": "2026-07-25T04:09:06Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/iome-sh/iomesh-tui",
"host": "github.com",
"name": "iomesh-tui",
"owner": "iome-sh"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 61,
"inputs": {
"security": 64,
"vitality": 72,
"community": 43,
"governance": 50,
"engineering": 77
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 72,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "moderate",
"name": "Development activity",
"note": null,
"notes": [],
"value": 55,
"inputs": {
"commits_last_year": 190,
"human_commit_share": 0.99,
"days_since_last_push": 0,
"active_weeks_last_year": 2
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "2/52 weeks with commits",
"points": 1.4,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 2
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "190 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 190
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "project was created within the last 90 days. Please review its contents carefully",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"releases_count": 71,
"latest_release_tag": "v0.70.0",
"releases_from_tags": false,
"days_since_latest_release": 2,
"mean_days_between_releases": 0.2
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "71 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 71
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 2 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 2
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~0.2 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 0.2
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"points": 8,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "unverified",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": "repository_too_young",
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": null,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "maintenance record not established from the collected data",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_unverified",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "at_risk",
"name": "Community & Adoption",
"value": 43,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"forks": 0,
"stars": 0,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "0 stars",
"points": 0,
"status": "missed",
"details": [
{
"code": "stars",
"params": {
"count": 0
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "0 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 0
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "0 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 0
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 50,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 13,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 1,
"top_contributor_share": 1
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 100% of commits",
"points": 0,
"status": "missed",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 100
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "1 contributors",
"points": 1.4,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 1
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 3,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Issue resolution. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"issue_resolution"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 71,
"inputs": {
"merged_prs": 189,
"open_issues": 0,
"closed_issues": 0,
"issue_closed_ratio": null,
"closed_unmerged_prs": 1
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "no issues or no data",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_issues_or_data",
"params": {}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "189/190 decided PRs merged",
"points": 38,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 189,
"decided": 190
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/29 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "at_risk",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 35,
"inputs": {
"followers": 0,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "iome-sh",
"public_repos": 3,
"account_age_days": 31
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "organization-owned",
"points": 30,
"status": "met",
"details": [
{
"code": "owner_organization",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "0 followers of iome-sh",
"points": 0,
"status": "missed",
"details": [
{
"code": "owner_followers",
"params": {
"count": 0,
"login": "iome-sh"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "3 public repos, account ~0 yr old",
"points": 4.6,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 3
}
},
{
"code": "account_age_years",
"params": {
"years": 0
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/iome-sh/iomesh-tui"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 2
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on go",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "go"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 2 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 2
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "71 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 71
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 77,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "moderate",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "2 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 2
}
}
],
"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": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": "https://iome.sh",
"has_readme": true,
"has_docs_dir": true,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://iome.sh",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": 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": "moderate",
"name": "Security",
"value": 64,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": null,
"notes": [],
"value": 55,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 18,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 0,
"scorecard_aggregate": 5.5
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection not enabled on development/release branches",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 0/29 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 0.8,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "project was created within the last 90 days. Please review its contents carefully",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow 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 run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "5 out of the last 5 releases have a total of 5 signed artifacts.",
"points": 6,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "2 existing vulnerabilities detected",
"points": 6,
"status": "partial",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 26 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories",
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 26
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 2,
"affected_packages": 2,
"assessed_packages": 26,
"unassessed_packages": 0,
"affected_by_severity": "unknown 2",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 26,
"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
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 64,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 1,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "99 of 99 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 99,
"sampled": 99
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"go.sum"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [
"Makefile"
],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0.01
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Makefile"
}
}
],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "Go (statically typed)",
"points": 11,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "1 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 1,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 174818,
"source_files_sampled": 97,
"oversized_source_files": 3
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Go (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "3/97 source files over 60KB",
"points": 53.3,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 97,
"oversized": 3
}
}
],
"max_points": 55
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [],
"report_type": "repository",
"generated_at": "2026-07-25T09:36:23.929123Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/i/iome-sh/iomesh-tui.svg",
"full_name": "iome-sh/iomesh-tui",
"license_state": "standard",
"license_spdx": "MIT"
}