Raw JSON report machine-readable
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 128,
"has_wiki": false,
"homepage": null,
"languages": {
"Go": 74999,
"Makefile": 30316
},
"pushed_at": "2026-07-20T13:39:15Z",
"created_at": "2026-06-28T22:59:04Z",
"owner_type": "Organization",
"updated_at": "2026-07-20T13:35:40Z",
"description": "Framework library for the yze analyzer family",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "Go",
"significant_languages": [
"Go",
"Makefile"
]
},
"owner": {
"blog": "https://gomatic.systems",
"name": "gomatic systems",
"type": "Organization",
"login": "gomatic",
"company": null,
"location": null,
"followers": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/20588068?v=4",
"created_at": "2016-07-22T00:33:36Z",
"is_verified": null,
"public_repos": 92,
"account_age_days": 3651
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.8.9",
"kind": "patch",
"published_at": "2026-07-20T13:34:08Z"
},
{
"tag": "v0.8.8",
"kind": "patch",
"published_at": "2026-07-16T15:02:15Z"
},
{
"tag": "v0.8.7",
"kind": "patch",
"published_at": "2026-07-16T13:29:46Z"
},
{
"tag": "v0.8.6",
"kind": "patch",
"published_at": "2026-07-06T02:28:34Z"
},
{
"tag": "v0.8.5",
"kind": "patch",
"published_at": "2026-07-06T01:21:04Z"
},
{
"tag": "v0.8.4",
"kind": "patch",
"published_at": "2026-07-05T23:41:38Z"
},
{
"tag": "v0.8.3",
"kind": "patch",
"published_at": "2026-07-05T22:37:18Z"
},
{
"tag": "v0.8.2",
"kind": "patch",
"published_at": "2026-07-05T16:01:03Z"
},
{
"tag": "v0.8.1",
"kind": "patch",
"published_at": "2026-07-02T22:44:40Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2026-07-02T16:53:41Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2026-07-02T05:40:04Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2026-07-02T04:00:56Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2026-07-01T23:26:08Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2026-06-29T04:36:01Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2026-06-29T03:36:20Z"
},
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2026-06-29T01:20:30Z"
},
{
"tag": "v0.1.0",
"kind": "minor",
"published_at": "2026-06-28T22:16:57Z"
}
],
"recent_commits": [
{
"oid": "4191be84c9cdb580496ad6e716b0bd43c6edc197",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-20T13:34:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f232b3dca95f2901cccdac40066538bfdda8bb42",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-16T15:02:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f236fb69dd6ff9d4171f2a8770aac776e33a1042",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-16T13:29:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "40d9850552ed98c0053fe76beca9445fba971566",
"body": null,
"is_bot": false,
"headline": "chore: standardize workflow badges in README",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-06T02:28:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "87b6227e668c46482925a937390d12fc2c27d851",
"body": "Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: badges on one line (docs-gate prettier proseWrap:never)",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-05T23:41:38Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "2db5ad9b95638729a5544d77a8a0af2560007725",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-05T22:37:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b44d550e8c36f274728b8047e19728065b5c01fa",
"body": "…ntical edits; scan full preamble for the generated marker\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: propagate analyzer run errors; honor NoPos edit ends; dedupe ide…",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-05T16:01:03Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "50dbc25213c9d5321005d4a49a9f9b5e3a0df7f1",
"body": "Prose migrates to docs.go-yze (fleet standardization task 06); prior content\nremains in git history.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: badges+docs-link README per fleet class standard",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-04T18:38:54Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "46f17b78dce13505065978e238f8dc3b9b4784fc",
"body": "readHead/osReadHead/isGenerated/check take the existing filePath named type\ninstead of a bare string.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "Zero go-yze's own findings: filePath for the generated-marker seam",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-02T22:44:40Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "11f85f275bd229ccd37742e651f3c98b737e0de6",
"body": "The gomatic standards commit generated trees (protobuf stubs, ANTLR parsers)\nand exempt them from every gate by the standard marker; golangci-lint skips\nthem by default. Reports now drop findings whose file carries the whole-line\nCode generated marker before the package clause, memoized per report;\nunreadable files keep their diagnostics.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: drop diagnostics in generated files (Code generated marker)",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-02T16:53:41Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "beb245195e21d6808ead67421931497bda924a9f",
"body": "ptrparam's foreign-convention rule reads pass.Module to distinguish the\nanalyzed module's own types from foreign ones.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: load module identity (NeedModule) for module-locality analyzers",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-02T05:40:04Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "8a475916dbde182137b0eda11d53771c369e46ba",
"body": "pathParam -> filePath: the on-disk path of a source file being rewritten by a fix\nposParam -> issuePos: a loader-reported \"file:line:col\" position (may be empty or \"-\")\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "Name the yze naming-oracle skeleton types",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-02T05:00:00Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "e83f170ccd92362702e4f8421aac786f13ace05f",
"body": "Automated suite fixes (applied 28 edit(s) across 2 file(s) in 1 round(s)): boolname renames with comment sweep,\nsafe value receivers, any-for-interface{}, and namedtypes named-type\nintroduction/reuse. Skeleton <x>Param types are rename-me placeholders\ncarrying their own comment. Post-fix verification, tests, and make check\nall pass; remaining findings need judgment (exported signatures, ptrparam\nrestructures).\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "Apply yze --fix: 3 -> 1 findings",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-02T04:55:34Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7cfa7c049276075ce4b38fdf11ca6daee9c87421",
"body": "packages.Load reports an excluded-module workspace as a placeholder package\ncarrying a ListError, and checker.Analyze then silently skips analysis —\nzero diagnostics, exit 0: the worst outcome for a lint gate. driveWith now\nvalidates the load: non-empty patterns yielding zero packages, or any\nload/p\n[…]\n, plus a go.work hint when the\nloader's error text names the workspace. A workspace that includes the\nmodule analyzes identically to GOWORK=off.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: fail loudly when packages cannot be loaded (go.work false pass)",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-02T04:00:56Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ee46416a32221de760b7c8dff6801420bcc91a98",
"body": "…h Tests:true)\n\nAfter --fix applies edits, consumers reload the same patterns including test\nfiles and surface residual type errors: the analysis driver does not load\n_test.go, so a signature-changing fix can break callers the pass cannot see.\nCheckerVerifier collects pkg.Errors deduplicated across test variants;\nVerifyResult reports per-file counts for the caller's summary.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: post-apply fix verification (Verifier seam, CheckerVerifier wit…",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-07-01T23:26:08Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "80354959a13f49c3a77fffe83c78e1a82fadb0e6",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "style: make fmt (golines/gofumpt/goimports/gci)",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-30T01:12:25Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "a5231828f42dbab89ce3d6f8956670c449875c77",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T23:24:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c37b0a33bda578019c386830875247f9924026b5",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T17:04:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2d9587fbece9afffbf54aa26b63da6dc29dac15d",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T14:11:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8d119dab203ad9f799c65e0fd1cbc6f12511d912",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T05:14:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1bd77004e9c700bd7cf8b472d29e40856db02c50",
"body": "…rminism; add domain types\n\nThree confirmed defects, each fixed and locked down with a contract test:\n\n1. config: a known setting given a bad value (e.g. count=\"notanumber\")\n reported ErrUnknownSetting, claiming the setting was unsupported when only\n the value was. Add a distinct ErrInvalidSetti\n[…]\nests\nupdated. Wire boundaries (Diagnostic.URL, packages.Load) project back to string.\n\nmake check: green, coverage exactly 100.0%.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Fix setting-value mislabeling, no-op fix reformat, edit-order nondete…",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T04:36:01Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "15c8f8bd1434e4fc2e74e47d894ff7b4ac16f7b1",
"body": "The language group was always 'go' and discriminated nothing. Remove\nRegistration.Group, the Group type, and ErrMissingGroup; RuleID is now\nyze/<name>. Also adopt the shared golangci field-alignment/import ordering.\n100% coverage; make check passes.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "go-yze: drop the Group axis (rule id is now yze/<name>)",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T03:36:20Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "4306a2149bea2debfcbfc2bd363efec712e0e948",
"body": null,
"is_bot": false,
"headline": "build: adopt uniform build bundle",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T03:22:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "518ce448f719be281daef6faee43c6b47e7754aa",
"body": "Adds ApplyConfig(regs, settings) so a config file can drive each analyzer's\ngo/analysis flags by name. Unknown analyzers are ignored; unknown/invalid\nsettings for a known analyzer error (ErrUnknownSetting). 100% coverage.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "go-yze: ApplyConfig — set analyzer flags from per-analyzer settings",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-29T01:20:30Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "06910fc92a0910352907cbf1374bcd410e7a6f8a",
"body": "…er core)\n\n- Run: validate registrations, drive analysis, normalize findings to Report\n- Driver/DriverResult: clean seam over the analysis backend\n- CheckerDriver: default go/packages + checker.Analyze driver, with an\n injected load/analyze seam (driveWith) so error and mapping paths are\n fully covered; real wiring covered by an integration test over this package\n\ngo-yze v1 framework complete: 100% coverage, gofumpt/vet/staticcheck clean,\ngocognit <=7.",
"is_bot": false,
"headline": "go-yze: checker-based driver + Run orchestration (stickler-json emitt…",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-28T22:16:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c7e2e1270d5d53882787b3b3a0bc8c53872cbb57",
"body": "ApplyFixes merges each fix's edits per file, rewrites via ApplyEdits,\nreformats (GoFormat default), and writes back — with injected\nFileReader/FileWriter/Formatter for disk-free testing. Powers yze --fix\nand stickler --fix. Sentinel errors for read/format/write failures.\n100% coverage.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "go-yze: file-level ApplyFixes engine",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-28T22:12:28Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "c95f3679a645396cb0d971ade155e4173e66b6fc",
"body": "The keystone library for the yze analyzer family:\n- TextEdit + ApplyEdits: pure byte-offset edit engine (overlap/bounds-safe)\n- Diagnostic/Fix/FileEdit/Report + stickler-json marshal/unmarshal\n- Group/Category taxonomy + Registration (RuleID, Validate)\n- ToDiagnostic: go/analysis finding -> normaliz\n[…]\n 100% coverage, vet/gofmt clean.\nPending: file-level ApplyFixes, checker-based stickler-json driver,\nanalysistest harness wrapper.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "go-yze: framework foundation — schema, taxonomy, edit engine, conversion",
"author_name": "nicerobot",
"author_login": "nicerobot",
"committed_at": "2026-06-28T22:10:24Z",
"body_truncated": true,
"is_coding_agent": true
}
],
"releases_count": 17,
"commits_last_year": 27,
"latest_release_at": "2026-07-20T13:34:08Z",
"latest_release_tag": "v0.8.9",
"releases_from_tags": true,
"days_since_last_push": 1,
"active_weeks_last_year": 3,
"days_since_latest_release": 1,
"mean_days_between_releases": 2
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 37,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "github.com/gomatic/go-yze",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/gomatic/go-yze",
"is_deprecated": false,
"latest_version": "v0.8.9",
"repository_url": "https://github.com/gomatic/go-yze",
"versions_count": 17,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-20T13:34:08Z",
"latest_version_yanked": null,
"days_since_latest_publish": 1
}
]
},
"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
},
"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": 11807,
"source_files_sampled": 21,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"go.mod"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [],
"collected": true,
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 8,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"go"
],
"dependencies": [
{
"name": "github.com/gomatic/go-error",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.3.0"
},
{
"name": "github.com/stretchr/testify",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.11.1"
},
{
"name": "golang.org/x/tools",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.47.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "github.com/gomatic/go-error",
"direct": true,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/stretchr/testify",
"direct": true,
"version": "v1.11.1",
"ecosystem": "go"
},
{
"name": "golang.org/x/tools",
"direct": true,
"version": "v0.47.0",
"ecosystem": "go"
},
{
"name": "github.com/davecgh/go-spew",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/pmezard/go-difflib",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/mod",
"direct": false,
"version": "v0.37.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sync",
"direct": false,
"version": "v0.21.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v3",
"direct": false,
"version": "v3.0.1",
"ecosystem": "go"
}
],
"collected": true,
"truncated": false,
"total_count": 8,
"direct_count": 3,
"indirect_count": 5
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 0,
"open_issues": 0,
"closed_ratio": null,
"closed_issues": 0,
"closed_unmerged_prs": 0
},
"bus_factor": 1,
"bot_contributors": 0,
"top_contributors": [
{
"type": "User",
"login": "nicerobot",
"commits": 27,
"avatar_url": "https://avatars.githubusercontent.com/u/17196?v=4"
}
],
"contributors_sampled": 1,
"top_contributor_share": 1
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"actions.yml",
"docs.yml",
"go.yml",
"release.yml"
],
"has_docs_dir": false,
"linter_configs": [
".golangci.yaml"
],
"has_editorconfig": true,
"has_linter_config": true,
"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": null,
"reason": "no pull request found",
"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/27 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 4 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 0,
"reason": "no update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 0,
"reason": "project was created within the last 90 days. Please review its contents carefully",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 0,
"reason": "no SAST tool detected",
"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": 10,
"reason": "0 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "4191be84c9cdb580496ad6e716b0bd43c6edc197",
"ran_at": "2026-07-21T18:39:09Z",
"aggregate_score": 3.3,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": false
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/gomatic/go-yze",
"host": "github.com",
"name": "go-yze",
"owner": "gomatic"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"security": 46,
"vitality": 66,
"community": 24,
"governance": 40,
"engineering": 69
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "moderate",
"name": "Vitality",
"value": 66,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "moderate",
"name": "Development activity",
"note": null,
"notes": [],
"value": 51,
"inputs": {
"commits_last_year": 27,
"human_commit_share": 1,
"days_since_last_push": 1,
"active_weeks_last_year": 3
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 1 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 1
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "3/52 weeks with commits",
"points": 2.1,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 3
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "27 commits in the last year",
"points": 13,
"status": "partial",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 27
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "project was created within the last 90 days. Please review its contents carefully",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 88,
"inputs": {
"releases_count": 17,
"latest_release_tag": "v0.8.9",
"releases_from_tags": true,
"days_since_latest_release": 1,
"mean_days_between_releases": 2
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "17 version tags (no GitHub releases)",
"points": 16.2,
"status": "partial",
"details": [
{
"code": "version_tags_no_releases",
"params": {
"count": 17
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 1 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 1
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~2 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 2
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "unverified",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": "repository_too_young",
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": null,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "maintenance record not established from the collected data",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_unverified",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "critical",
"name": "Community & Adoption",
"value": 24,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"forks": 0,
"stars": 0,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "0 stars",
"points": 0,
"status": "missed",
"details": [
{
"code": "stars",
"params": {
"count": 0
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "0 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 0
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "0 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 0
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "at_risk",
"name": "Sustainability & Governance",
"value": 40,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 20,
"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 4 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "critical",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Issue resolution, PR acceptance. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"issue_resolution",
"pr_acceptance"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 1,
"inputs": {
"merged_prs": 0,
"open_issues": 0,
"closed_issues": 0,
"issue_closed_ratio": null,
"closed_unmerged_prs": 0
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "no issues or no data",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_issues_or_data",
"params": {}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "no decided pull requests or no data",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_decided_prs_or_data",
"params": {}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/27 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 57,
"inputs": {
"followers": 1,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "gomatic",
"public_repos": 92,
"account_age_days": 3651
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "organization-owned",
"points": 30,
"status": "met",
"details": [
{
"code": "owner_organization",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "1 followers of gomatic",
"points": 2.2,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 1,
"login": "gomatic"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "92 public repos, account ~10 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 92
}
},
{
"code": "account_age_years",
"params": {
"years": 10
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/gomatic/go-yze"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 1
},
"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 1 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 1
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "17 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 17
}
}
],
"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": "excellent",
"name": "Engineering practices",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: CI-Tests. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_ci_tests"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 88,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "4 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 4
}
}
],
"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": ".golangci.yaml",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yaml"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "no pull request found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "at_risk",
"name": "Documentation",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"topics": [],
"has_wiki": false,
"homepage": null,
"has_readme": true,
"has_docs_dir": false,
"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": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "at_risk",
"name": "Security",
"value": 46,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "at_risk",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): CI-Tests, Packaging, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"ci_tests",
"packaging",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 33,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 15,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 3,
"scorecard_aggregate": 3.3
},
"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": "no pull request found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"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/27 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 4 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "no update tool detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "project was created within the last 90 days. Please review its contents carefully",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "no SAST tool detected",
"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": "0 existing vulnerabilities detected",
"points": 7.5,
"status": "met",
"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 8 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": 8
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 0,
"affected_packages": 0,
"assessed_packages": 8,
"unassessed_packages": 0,
"affected_by_severity": "none",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "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": 8,
"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": "good",
"name": "AI Readiness",
"value": 70,
"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": "27 of 27 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 27,
"sampled": 27
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 82,
"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": true,
"typecheck_configs": [],
"agent_commit_share": 0.593,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0
},
"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": ".golangci.yaml",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yaml"
}
}
],
"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": "16 of the last 27 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 16,
"sampled": 27
}
}
],
"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": "Go",
"largest_source_bytes": 11807,
"source_files_sampled": 21,
"oversized_source_files": 0
},
"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": "0/21 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 21,
"oversized": 0
}
}
],
"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-21T18:39:14.299534Z",
"schema_version": "0.23.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/g/gomatic/go-yze.svg",
"full_name": "gomatic/go-yze",
"license_state": "standard",
"license_spdx": "MIT"
}