原始 JSON 报告 机器可读
{
"data": {
"repo": {
"topics": [],
"is_fork": true,
"size_kb": 38213,
"has_wiki": true,
"homepage": null,
"languages": {
"C": 365935,
"Go": 1789880,
"C++": 13437,
"CSS": 9175,
"QML": 119727,
"HTML": 17283,
"Java": 2100,
"Ruby": 2879,
"Shell": 3349,
"Python": 26612,
"Makefile": 818,
"JavaScript": 321000
},
"pushed_at": "2015-06-08T18:50:05Z",
"created_at": "2015-05-20T14:56:25Z",
"owner_type": "User",
"updated_at": "2019-01-29T23:28:58Z",
"description": "Jeffrey Wilcke's Go implementation of the Ethereum y/w paper",
"is_archived": false,
"is_disabled": false,
"license_spdx": null,
"default_branch": "develop",
"license_spdx_raw": "NOASSERTION",
"primary_language": "Go",
"significant_languages": [
"Go",
"C",
"JavaScript"
]
},
"owner": {
"blog": "http://www.linkedin.com/in/cryptocarver",
"name": "Jason Carver",
"type": "User",
"login": "carver",
"company": null,
"location": "Bologna, Italy",
"followers": 270,
"avatar_url": "https://avatars.githubusercontent.com/u/205327?v=4",
"created_at": "2010-02-17T15:04:37Z",
"is_verified": null,
"public_repos": 121,
"account_age_days": 6003
},
"license": {
"state": "custom",
"spdx_id": null,
"raw_spdx": "NOASSERTION",
"file_present": true,
"scorecard_found": true,
"profile_has_license": false
},
"activity": {
"releases": [
{
"tag": "0.9.23",
"kind": "patch",
"published_at": "2015-05-21T17:53:35Z"
},
{
"tag": "v0.9.23",
"kind": "patch",
"published_at": "2015-05-21T16:58:57Z"
},
{
"tag": "v0.9.22",
"kind": "patch",
"published_at": "2015-05-17T19:35:15Z"
},
{
"tag": "v0.9.21",
"kind": "patch",
"published_at": "2015-05-15T22:27:13Z"
},
{
"tag": "v0.9.20",
"kind": "patch",
"published_at": "2015-05-12T17:05:33Z"
},
{
"tag": "v0.9.18",
"kind": "patch",
"published_at": "2015-05-09T11:13:16Z"
},
{
"tag": "v0.9.17",
"kind": "patch",
"published_at": "2015-05-08T15:24:41Z"
},
{
"tag": "0.9.16",
"kind": "patch",
"published_at": "2015-05-06T22:03:11Z"
},
{
"tag": "v0.8.5",
"kind": "patch",
"published_at": "2015-02-22T12:26:18Z"
},
{
"tag": "v0.8.5-2",
"kind": "prerelease",
"published_at": "2015-02-26T19:26:49Z"
},
{
"tag": "v0.8.4",
"kind": "patch",
"published_at": "2015-02-20T23:53:47Z"
},
{
"tag": "v0.8.4-1",
"kind": "prerelease",
"published_at": "2015-02-20T23:53:39Z"
},
{
"tag": "v0.7.11",
"kind": "patch",
"published_at": "2014-12-24T10:30:13Z"
},
{
"tag": "v0.7.10",
"kind": "patch",
"published_at": "2014-12-21T14:13:06Z"
},
{
"tag": "v0.6.8",
"kind": "patch",
"published_at": "2014-10-07T09:20:52Z"
},
{
"tag": "v0.6.7",
"kind": "patch",
"published_at": "2014-09-26T11:47:29Z"
},
{
"tag": "v0.6.6",
"kind": "patch",
"published_at": "2014-09-24T18:41:11Z"
},
{
"tag": "v0.6.5",
"kind": "patch",
"published_at": "2014-09-22T17:33:24Z"
},
{
"tag": "v0.6.5-2",
"kind": "prerelease",
"published_at": "2014-09-23T15:56:43Z"
},
{
"tag": "v0.6.5-1",
"kind": "prerelease",
"published_at": "2014-09-23T08:21:39Z"
},
{
"tag": "v0.6.4",
"kind": "patch",
"published_at": "2014-08-21T18:23:09Z"
},
{
"tag": "v0.6.3",
"kind": "patch",
"published_at": "2014-08-21T13:45:50Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2014-07-25T08:42:14Z"
},
{
"tag": "0.5.19",
"kind": "patch",
"published_at": "2014-07-18T11:49:52Z"
},
{
"tag": "0.5.18",
"kind": "patch",
"published_at": "2014-07-18T11:49:52Z"
},
{
"tag": "0.5.17",
"kind": "patch",
"published_at": "2014-07-17T13:32:44Z"
},
{
"tag": "0.5.16",
"kind": "patch",
"published_at": "2014-07-01T14:24:35Z"
},
{
"tag": "0.5.15",
"kind": "patch",
"published_at": "2014-06-26T17:54:09Z"
},
{
"tag": "0.5.14",
"kind": "patch",
"published_at": "2014-06-19T22:48:53Z"
},
{
"tag": "0.5.13",
"kind": "patch",
"published_at": "2014-06-16T16:24:57Z"
},
{
"tag": "0.3.1",
"kind": "patch",
"published_at": "2014-02-28T15:46:34Z"
},
{
"tag": "0.3.0",
"kind": "minor",
"published_at": "2014-02-28T11:20:47Z"
},
{
"tag": "0.2.2",
"kind": "patch",
"published_at": "2014-02-15T11:10:25Z"
}
],
"recent_commits": [
{
"oid": "9bde7fd72e738865e6ed3208495f966f4f21daac",
"body": "core/vm: optimisation on RETURN and updated tests",
"is_bot": false,
"headline": "Merge pull request #1043 from obscuren/test_fixes",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-20T10:06:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8fe8ec84f6a0cbc51d6018af7269952062279234",
"body": "Storing tx receipts in extraDb",
"is_bot": false,
"headline": "Merge pull request #1049 from zsfelfoldi/receipts",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-20T10:00:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0300eef94d7d1e58bc5cf94094a3d492c70486e1",
"body": "CLI, JSRE admin and Solc improvements",
"is_bot": false,
"headline": "Merge pull request #1048 from ethersphere/cli-fixes",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-20T09:31:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6b83a0a589d4615382de3d9f3ed2800064b4c1b9",
"body": "eth/downloader: fix test to it doesn't time out on a slow machine",
"is_bot": false,
"headline": "Merge pull request #1050 from karalabe/handle-slow-download-tester",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-20T09:29:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "adaa49d2cc55d5c3c7cc5266e80995b9a21adcab",
"body": "eth: fix odd method names in peer set",
"is_bot": false,
"headline": "Merge pull request #1051 from karalabe/fix-odd-naming",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-20T09:29:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3c8227b935fdc9eda7a6cfacc2e0d0d189e7bb36",
"body": null,
"is_bot": false,
"headline": "eth: fix odd method names in peer set",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-20T07:34:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6f54eb6d9a2375f4ee78df77068919ec0847fb1a",
"body": null,
"is_bot": false,
"headline": "eth/downloader: fix test to it doesn't time out on a slow machine",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-20T07:15:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "00ec4132f89527a6e2ae6b1d3842c447cab38cef",
"body": null,
"is_bot": false,
"headline": "Storing tx receipts in extraDb",
"author_name": "zsfelfoldi",
"author_login": "zsfelfoldi",
"committed_at": "2015-05-20T04:41:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e1d1417729b82f00bcb62dffa36358cb74ab790f",
"body": null,
"is_bot": false,
"headline": "rpc: NewNotAvailableError instead of NewNotImplementedError if no solc",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T04:29:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "00f59f5014360cda47e50d9791caf7dd88022c20",
"body": null,
"is_bot": false,
"headline": "fix eth.sign. now implemented in admin jsre until web3.js has it .",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T03:38:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b0ae84aa0dae65f00492f981bb61887331def2a5",
"body": "…y if multiple contracts. fixes #1023",
"is_bot": false,
"headline": "multiple contract source for solidity compiler: returns contract arra…",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T03:11:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ea893aca8fbda0d821424ab7509a0a0cfef1f77d",
"body": null,
"is_bot": false,
"headline": "update web3.js to 0.4.2",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T01:58:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d92172f3d484cf54653e1dcdfde5a94f100448fa",
"body": null,
"is_bot": false,
"headline": "add usage doc to wallet import",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T01:47:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4201a181178c1b72bcd30c07ef026dee1bbfde88",
"body": null,
"is_bot": false,
"headline": "remove solc flair",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T01:47:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "22b694ee1e1044e68c906fbd864797ac2f8a4ab0",
"body": null,
"is_bot": false,
"headline": "solc now in ethereum, fixes solc path setting; setSolc() didnt work",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T01:47:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f9abcee0f9185d41c71cc24af1303133497ebeb0",
"body": null,
"is_bot": false,
"headline": "fix solc tests unskip",
"author_name": "zelig",
"author_login": "zelig",
"committed_at": "2015-05-20T01:47:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9617aa8e19b660ead51c201b76c510ea079f40eb",
"body": "Set the TEST_VM_COMPLEX env var to test complex vm tests which require a\nlot of ram and quite some time.",
"is_bot": false,
"headline": "tests: added conditional skip on long running VM tests",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-19T22:21:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f5af1fdca8dc7d44b4c2025195c19819886729b6",
"body": null,
"is_bot": false,
"headline": "core/vm: RETURN op code returns pointer to memory rather than copy",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-19T22:21:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "648b352424e70f099f62cc18a768babb90434350",
"body": "Skipped tests due to large return value",
"is_bot": false,
"headline": "tests/vm: updated tests and skipped output for specific tests",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-19T22:21:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79042223dc5f2ae5d4a2ed73d18907440a963093",
"body": "core: block cache Has method thread safe",
"is_bot": false,
"headline": "Merge pull request #1044 from obscuren/thread_safe_block_cache",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-19T22:11:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b14ee6ce16c44b5ab5215380d51ffa919a5d0be3",
"body": "Allow unlocking multiple accounts",
"is_bot": false,
"headline": "Merge pull request #1046 from tgerring/issue1045",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-19T22:11:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8dac28f2e3394934a621fc493a870c46078819ac",
"body": null,
"is_bot": false,
"headline": "core: block cache Has method thread safe",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-19T19:50:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "87a05c8f38dd34728e4375dee51fcd20da1048ec",
"body": null,
"is_bot": false,
"headline": "core: skipped tests while cache disabled",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-19T19:50:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "32b8565022d7d6ccb437769b5ed68121c5c34657",
"body": null,
"is_bot": false,
"headline": "Support multiple account unlock attempts",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-19T19:46:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "af8ada45e7d98527a21049e06a8bda307a083301",
"body": "Separate accounts with spaces when using --unlock",
"is_bot": false,
"headline": "Allow unlocking multiple accounts #1045",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-19T18:40:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "46d6470c435735d839d695da31a0823176790efe",
"body": "eth: make the peer-set thread safe",
"is_bot": false,
"headline": "Merge pull request #1035 from karalabe/eth-threadsafe-peers",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-19T15:50:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b825e272820c9624a9f5df19086b639d5a16e93",
"body": "JSON RPC null field updates",
"is_bot": false,
"headline": "Merge pull request #1036 from tgerring/issue884",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-19T13:44:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "748263d2f011382c832cbebb8d4e10fba8a09f71",
"body": null,
"is_bot": false,
"headline": "Use bytes.Repeat() instead of 32-byte literal",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-19T13:14:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7d9a13e0d5a3c7745a0219957ccd2bcc5a301c58",
"body": null,
"is_bot": false,
"headline": "core: disable cash tmp",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-19T10:59:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c2ad7b72ee3d159e1a2439fc16358ceea39118e",
"body": "Nonce fix for failing transactions",
"is_bot": false,
"headline": "Merge pull request #1034 from obscuren/tx_pool_fix",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-18T19:28:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b7baceefdab01e4594b66500b54e089c91f2727a",
"body": null,
"is_bot": false,
"headline": "xeth: remove nonce on error. Fixes #1026",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T18:52:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4755caeb2d07db057e152df555d58d0dd89bda03",
"body": null,
"is_bot": false,
"headline": "eth: remote a superfluous peerSet method",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-18T18:35:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5422fe51256e45c42939d1bfbcf13e07d2660f8e",
"body": null,
"is_bot": false,
"headline": "eth: make the peer set thread safe",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-18T18:33:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bd0c0a633bebe8893c4b06a50740047e4376107c",
"body": "Parallelise nonce checks",
"is_bot": false,
"headline": "Merge pull request #1022 from obscuren/parallel_nonce_checks",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-18T18:13:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d6adadc5e37f3d01cac25b5371e1c42b7036735a",
"body": "Add \"removedb\" command to Geth",
"is_bot": false,
"headline": "Merge pull request #1033 from tgerring/issue1010",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-18T18:12:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0864f1fc8e281bdfd87daaa24881f9f96d6bd10c",
"body": null,
"is_bot": false,
"headline": "Remove unused confirm() method",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T17:25:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f14feea43683fee58e26a48a51145e72d3ae7ad8",
"body": null,
"is_bot": false,
"headline": "Refactor user prompts into utils",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T17:24:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36a4ba32485fb6605ea23f03896ae8d7c4cc44ae",
"body": null,
"is_bot": false,
"headline": "Add user confirmation for removedb",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T17:04:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "40717465bc8c0e2feb0f1e48ddc721c7292ba992",
"body": null,
"is_bot": false,
"headline": "core: fixed tests",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T16:16:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "59c0d014189db1b85f45ef17f458bcbc20c267b2",
"body": null,
"is_bot": false,
"headline": "core: chain manager no longer exports genesis block",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T16:16:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bc5e60cd632b7ee38eb0ea9dcd80e1ca9a4ba4af",
"body": null,
"is_bot": false,
"headline": "miner: stale block notification",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T16:16:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fe41bd6fe854248d9937ba24e58baeaf672cf94e",
"body": "Removes the state and blockchain databases",
"is_bot": false,
"headline": "Add \"removedb\" command to Geth",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T15:54:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a3a5f8b59342363613f46af3413a2e5a8c124da8",
"body": "Multiple CORS domains support",
"is_bot": false,
"headline": "Merge pull request #1032 from tgerring/issue1025",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-18T15:49:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "54b5c8273db33ebc2bee762b92fa4a6c24e6ad94",
"body": null,
"is_bot": false,
"headline": "XEth comment clarification",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T15:41:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2598e649de8b41727084749527aa0bc27965856",
"body": "Separated by spaces",
"is_bot": false,
"headline": "Permit multiple CORS domains",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T15:31:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "62d76b8e1f0ebfe213c50006bec7dc1b5473029a",
"body": null,
"is_bot": false,
"headline": "Cleanup",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T15:11:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a528bd04db4adc8de707f8b5a3a7b2cef52a2fbc",
"body": "…rt of a block",
"is_bot": false,
"headline": "Return nil for certain fields on eth_getTransactionByHash when not pa…",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T15:09:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "677796b3517782dd530b7a1a7d9dfd16b643404c",
"body": "fixed race condition in miner",
"is_bot": false,
"headline": "Merge pull request #1031 from bas-vk/issue1012",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-18T14:33:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d381d9a74cc2cb4e8cebf21aa9e4927a6e1867d6",
"body": null,
"is_bot": false,
"headline": "Return nil for certain fields on eth_getBlockByNumber pending",
"author_name": "Taylor Gerring",
"author_login": "tgerring",
"committed_at": "2015-05-18T14:16:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "60561cdca26b84843ddb4d96158c6ca7d8c32ec1",
"body": null,
"is_bot": false,
"headline": "fixed issue when miner is not stopping af stop command",
"author_name": "Bas van Kervel",
"author_login": "bas-vk",
"committed_at": "2015-05-18T14:09:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7778740315f322a9a31219090f180374a5620ec0",
"body": null,
"is_bot": false,
"headline": "fixed race condition in miner",
"author_name": "Bas van Kervel",
"author_login": "bas-vk",
"committed_at": "2015-05-18T13:13:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c67424ecc8a75d7c0bc942227a4c4e5c5628d7bc",
"body": "ChainManager now uses a parallel approach to block processing where all\nnonces are checked seperatly from the block processing process. This\nspeeds up the process by about 3 times on my i7",
"is_bot": false,
"headline": "core: parallelise nonce checking when processing blocks",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T11:59:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "67d44519ce4344d5ee5f7cf37dd785ead70e8453",
"body": null,
"is_bot": false,
"headline": "core: bugfix test 2. set => hash map",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T08:49:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "54f0f82dd13f7faed68ab3a781df97a62b7d15d4",
"body": null,
"is_bot": false,
"headline": "ret",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T08:14:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e323f0e83120edb759dfa1e99325eff13e975b3b",
"body": null,
"is_bot": false,
"headline": "core: tmp diagnostic logs",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-18T08:13:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "280b7f23af512d12069e378bf2d00ec6f32a9a06",
"body": null,
"is_bot": false,
"headline": "Merge branch 'hotfix/0.9.22' into develop",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-17T19:35:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3a51d5e80c50b8992a3b0462f64421604435f480",
"body": null,
"is_bot": false,
"headline": "cmd/geth: fixed ver num",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-17T19:34:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "443d0248436f653bc2d56653dd52b8abbe408f60",
"body": "core: global chain insert lock",
"is_bot": false,
"headline": "Merge pull request #1021 from obscuren/global_chain_lock",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-17T15:54:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "27782bbadec13482311754457e6e913fab076f8a",
"body": null,
"is_bot": false,
"headline": "core: global chain insert lock",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T22:55:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "426c70ac0b6f0051e4e618c1eff231a6bed8e6ee",
"body": "cmd/geth: delete state db on upgradedb command",
"is_bot": false,
"headline": "Merge pull request #1011 from obscuren/upgradedb_fix",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-16T15:48:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "28ba374f27b81ba143005e285be6f8a986134936",
"body": null,
"is_bot": false,
"headline": "cmd/geth: delete state db on upgradedb command",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T15:43:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ad99089567757c315bc2e477c6f889b9c2c8789f",
"body": null,
"is_bot": false,
"headline": "Merge branch 'hotfix/0.9.21.1' into develop",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T11:04:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "69f8a1b01ae750952efdb1d89cd561f02ccd6fba",
"body": null,
"is_bot": false,
"headline": "Merge branch 'hotfix/0.9.21-1'",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T11:03:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ad7b0efbd3fc00e089159768b7475e657adf84fe",
"body": null,
"is_bot": false,
"headline": "cmd/geth: hotfix bump",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T11:02:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d98a6f85fc1787a166ab91720c738fed2098185f",
"body": null,
"is_bot": false,
"headline": "core: further improved uncle error messages",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T11:02:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c2ef8682fe90c7e8c6e5d9d8ff30767f5a84e2f1",
"body": "Start event has moved because it could possibly could stall the miner",
"is_bot": false,
"headline": "eth/downloader: moved start event",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T11:02:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fe64a13cea19556658971189024b5df98b45d4b7",
"body": null,
"is_bot": false,
"headline": "Adjust miner coinbase and not just miner worker coinbase",
"author_name": "Vitalik Buterin",
"author_login": "vbuterin",
"committed_at": "2015-05-16T10:56:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "741fa8ca9cf5981805af16d5d9fc9adc31400320",
"body": null,
"is_bot": false,
"headline": "miner: mutex locks on cpu agent. Closes #1007",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-16T10:55:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "61e8296bd82b4392e55e6707f37b7d1d1e897dd7",
"body": null,
"is_bot": false,
"headline": "Adjust miner coinbase and not just miner worker coinbase",
"author_name": "Vitalik Buterin",
"author_login": "vbuterin",
"committed_at": "2015-05-16T01:23:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4b2ee6c30c5c4cacda23db4b2d18db37868492b7",
"body": null,
"is_bot": false,
"headline": "Merge branch 'release/0.9.21' into develop",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T22:27:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1564f1a020b9edc78bc672f8f2df64b3d0dc55c3",
"body": null,
"is_bot": false,
"headline": "Merge branch 'release/0.9.21'",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T22:27:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7ea76fcf993f3fecb55233bdcc2409618d9080b9",
"body": null,
"is_bot": false,
"headline": "core, cmd/geth, cmd/mist: cleanup. bump version 0.9.21",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T22:26:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79fa05867f78a159f4c229c21c12f0e4679b5b2e",
"body": null,
"is_bot": false,
"headline": "xeth: set balance max balance to from in call. Closes #951",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T22:03:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d116b9595cf6424293cc94d0dbe78153da860727",
"body": "core, miner: fork resolving and restart miner after sync op",
"is_bot": false,
"headline": "Merge pull request #989 from obscuren/develop",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T22:02:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "55d85d60fdad2cbd7947d87b2a81bd8df6a18025",
"body": null,
"is_bot": false,
"headline": "eth, cmd/geth: start mining from console respects CLI flag",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T18:26:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3e84cc8b4d995b4cec505b1b183b44d55f61453",
"body": null,
"is_bot": false,
"headline": "miner: properly check for mining operation on Register",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T18:26:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5cec1aad152115502f8ba0d7fcc1c3e40b915d7a",
"body": "Fork resolving fixes #940",
"is_bot": false,
"headline": "core, miner: fork resolving and restart miner after sync op",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T18:26:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "82c0780f81bef8c88db9dff4bb34917f2934c71d",
"body": "eth/downloader: circumvent download race between crosscheck and hashes",
"is_bot": false,
"headline": "Merge pull request #996 from karalabe/fix-potential-crosscheck-race",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T18:23:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cea1723c68375a1109a4fe606848d5c822321779",
"body": "eth/downloader: fix #992, where tests may time out on a slow machine",
"is_bot": false,
"headline": "Merge pull request #997 from karalabe/fix-shitty-test-server-issue",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T18:22:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "412cf98bbcb7387de588e4e949380787af000a4c",
"body": null,
"is_bot": false,
"headline": "eth/downloader: fix #992, where tests may time out on a slow machine",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T18:16:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f3ae8f50a5dfafa667fbe5e6a6574e69162d5ee6",
"body": null,
"is_bot": false,
"headline": "eth/downloader: circumvent download race between crosscheck and hashes",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T17:54:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "98998534cb0f415fb85826d60607652240022c57",
"body": "…vm_create_return\n\nUpdate state tests and vm create return",
"is_bot": false,
"headline": "Merge pull request #995 from Gustav-Simonsson/update_state_tests_and_…",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T17:31:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "619e8a4f0334560fdfa1f525fa1a8389ce13811e",
"body": null,
"is_bot": false,
"headline": "Add StateTests/RandomTests but skip for now",
"author_name": "Gustav Simonsson",
"author_login": null,
"committed_at": "2015-05-15T17:17:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "164ba56a60411161f67aad4eda5301b89a27b1a4",
"body": "eth/downloader: fix cancel channel double close",
"is_bot": false,
"headline": "Merge pull request #994 from karalabe/fix-cancel-double-close",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T17:15:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "32276e8b01a16840df38aa4b703ab9b2be5b8c74",
"body": null,
"is_bot": false,
"headline": "Update StateTests and nil create return on failed code deposit",
"author_name": "Gustav Simonsson",
"author_login": null,
"committed_at": "2015-05-15T16:49:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4f0d88cb023d51bdc5f38cdb54dd11c51765c98b",
"body": null,
"is_bot": false,
"headline": "eth/downloader: fix cancel channel double close",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T16:43:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "830bdb1cfd781192f2ffd42e94650a7717ac748a",
"body": null,
"is_bot": false,
"headline": "Update Ethereum JSON tests",
"author_name": "Gustav Simonsson",
"author_login": null,
"committed_at": "2015-05-15T14:08:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dadf01de60dee3d60b71ba354c40c657cdd4c34d",
"body": null,
"is_bot": false,
"headline": "unskip StateTests/stTransactionTest and use test tx nonce",
"author_name": "Gustav Simonsson",
"author_login": null,
"committed_at": "2015-05-15T14:05:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7d71a75d7715f97a86e0bd2e5aa9ac149d0ee4b5",
"body": "Fix downloader vulnerabilities",
"is_bot": false,
"headline": "Merge pull request #988 from karalabe/fix-downloader-vulnerabilities",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T13:38:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5c1a7b965ca7901d3b185d75205419b87163a4fa",
"body": null,
"is_bot": false,
"headline": "eth/downloader: circumvent a fake blockchain attack",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:04:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b517967f8626d5a06772c488360f895c4186712f",
"body": null,
"is_bot": false,
"headline": "eth/downloader: don't penalize for stale cross checks",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:03:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "83226762c20dbf48939d76046ad32422a44feda0",
"body": null,
"is_bot": false,
"headline": "eth, eth/downloader: detect and handle madeup hash attacks",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:01:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9ad515d2dc62c5d1ce1099efa89bd0a0b3f06a67",
"body": null,
"is_bot": false,
"headline": "eth: drop a sync peer if it sends an invalid hash chain",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:01:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "72411eb24c47a6b41d8530e6057a88c60491f0e1",
"body": null,
"is_bot": false,
"headline": "eth/downloader: circumvent hash reordering attacks",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:01:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bcc2980179f39eea4825df72ad882274086d912e",
"body": null,
"is_bot": false,
"headline": "eth/downloader: check sync after failed attacks",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:01:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "366e9627e8cdddd8111789dc13050b1dd8ec6fb2",
"body": null,
"is_bot": false,
"headline": "eth/downloader: add a test for detecting missing blocks",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:01:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cd2fb0905109828028172c84f9c10f1343647ca6",
"body": null,
"is_bot": false,
"headline": "eth, eth/downloader: prevent hash repeater attack",
"author_name": "Péter Szilágyi",
"author_login": "karalabe",
"committed_at": "2015-05-15T12:01:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c1f0d40e34a80f4453a9a54f90e2d4551c3bdb05",
"body": "Miner updates and downloader events",
"is_bot": false,
"headline": "Merge pull request #987 from obscuren/develop",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T11:12:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "158efbaa459c534bfb53624e1df7f65e7e8ca24a",
"body": "Omit replies for RPC notification requests",
"is_bot": false,
"headline": "Merge pull request #984 from tgerring/issue924",
"author_name": "Jeffrey Wilcke",
"author_login": "obscuren",
"committed_at": "2015-05-15T11:12:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cfb2b51b749a5897eb47bee15e67a0f9d850bfbd",
"body": null,
"is_bot": false,
"headline": "eth/downloader: fixed test",
"author_name": "obscuren",
"author_login": "obscuren",
"committed_at": "2015-05-15T10:47:32Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 33,
"commits_last_year": 0,
"latest_release_at": "2015-05-21T17:53:35Z",
"latest_release_tag": "0.9.23",
"releases_from_tags": true,
"days_since_last_push": 4065,
"active_weeks_last_year": 0,
"days_since_latest_release": 4083,
"mean_days_between_releases": 9.8
},
"community": {
"has_readme": false,
"has_license": false,
"has_description": false,
"has_contributing": false,
"health_percentage": null,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": []
},
"popularity": {
"forks": 0,
"stars": 0,
"watchers": 1,
"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": [
"example",
"examples"
],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [
"Godeps/_workspace/src/github.com/ethereum/ethash/Makefile",
"Godeps/_workspace/src/github.com/obscuren/qml/gl/gengl/Makefile",
"Godeps/_workspace/src/github.com/rakyll/goini/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/otto/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/parser/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/test/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/token/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/underscore/Makefile",
"Makefile"
],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [],
"largest_source_bytes": 878949,
"source_files_sampled": 911,
"oversized_source_files": 70,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [],
"advisories": {
"error": null,
"scope": null,
"source": null,
"findings": [],
"collected": false,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 0,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [],
"dependencies": [],
"all_dependencies": {
"error": "GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository",
"source": null,
"packages": [],
"collected": false,
"truncated": false,
"total_count": null,
"direct_count": null,
"indirect_count": null
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 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": "obscuren",
"commits": 3121,
"avatar_url": "https://avatars.githubusercontent.com/u/6264126?v=4"
},
{
"type": "User",
"login": "tgerring",
"commits": 511,
"avatar_url": "https://avatars.githubusercontent.com/u/731472?v=4"
},
{
"type": "User",
"login": "fjl",
"commits": 346,
"avatar_url": "https://avatars.githubusercontent.com/u/6915?v=4"
},
{
"type": "User",
"login": "zelig",
"commits": 310,
"avatar_url": "https://avatars.githubusercontent.com/u/769725?v=4"
},
{
"type": "User",
"login": "CJentzsch",
"commits": 225,
"avatar_url": "https://avatars.githubusercontent.com/u/8452011?v=4"
},
{
"type": "User",
"login": "debris",
"commits": 211,
"avatar_url": "https://avatars.githubusercontent.com/u/2613714?v=4"
},
{
"type": "User",
"login": "karalabe",
"commits": 116,
"avatar_url": "https://avatars.githubusercontent.com/u/129561?v=4"
},
{
"type": "User",
"login": "gavofyork",
"commits": 44,
"avatar_url": "https://avatars.githubusercontent.com/u/138296?v=4"
},
{
"type": "User",
"login": "cubedro",
"commits": 32,
"avatar_url": "https://avatars.githubusercontent.com/u/6094026?v=4"
},
{
"type": "User",
"login": "vbuterin",
"commits": 31,
"avatar_url": "https://avatars.githubusercontent.com/u/2230894?v=4"
}
],
"contributors_sampled": 47,
"top_contributor_share": 0.611
},
"quality_signals": {
"has_ci": false,
"has_tests": true,
"ci_workflows": [],
"has_docs_dir": false,
"linter_configs": [],
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [],
"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/30 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 47 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": null,
"reason": "no workflows found",
"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": 9,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 0,
"reason": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
"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": 2,
"reason": "dependency not pinned by hash detected -- score normalized to 2",
"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": null,
"reason": "No tokens found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 9,
"reason": "1 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "9bde7fd72e738865e6ed3208495f966f4f21daac",
"ran_at": "2026-07-26T15:23:44Z",
"aggregate_score": 2.8,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": null,
"oldest_open_prs": [],
"last_merged_pr_at": null,
"ci_last_conclusion": null,
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/carver/go-ethereum",
"host": "github.com",
"name": "go-ethereum",
"owner": "carver"
},
"metrics": {
"overall": {
"key": "overall",
"band": "critical",
"name": "Overall health",
"note": "Abandonment Policy applies a 85% multiplier to weighted overall health.",
"notes": [
{
"code": "abandonment_overall_adjustment",
"params": {
"cap": 0,
"pct": 85
}
}
],
"value": 21,
"inputs": {
"security": 28,
"vitality": 20,
"community": 9,
"governance": 36,
"engineering": 27,
"abandonment_cap": null,
"abandonment_state": "at_risk",
"abandonment_multiplier": 85,
"weighted_overall_before_abandonment": 25,
"overall_after_abandonment_multiplier": 21
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "critical",
"name": "Vitality",
"value": 20,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "critical",
"name": "Development activity",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"commits_last_year": 0,
"human_commit_share": 1,
"days_since_last_push": 4065,
"active_weeks_last_year": 0
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 4065 days ago",
"points": 0,
"status": "missed",
"details": [
{
"code": "push_recency",
"params": {
"days": 4065
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "0/52 weeks with commits",
"points": 0,
"status": "missed",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 0
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "0 commits in the last year",
"points": 0,
"status": "missed",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 0
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "at_risk",
"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": 48,
"inputs": {
"releases_count": 33,
"latest_release_tag": "0.9.23",
"releases_from_tags": true,
"days_since_latest_release": 4083,
"mean_days_between_releases": 9.8
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "33 version tags (no GitHub releases)",
"points": 16.2,
"status": "partial",
"details": [
{
"code": "version_tags_no_releases",
"params": {
"count": 33
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 4083 days ago",
"points": 0,
"status": "missed",
"details": [
{
"code": "release_recency",
"params": {
"days": 4083
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~9.8 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 9.8
}
}
],
"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": 85,
"inputs": {
"cap": null,
"state": "at_risk",
"guards": [
"no_open_demand"
],
"signals": [
"release_stall",
"scorecard_unmaintained"
],
"red_flag": true,
"multiplier_pct": 85,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": 0,
"unanswered_open_issues": 0,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 4085,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "no human commit for 4085 days; 2 unmet obligation(s): releases stalled, Scorecard reports it unmaintained",
"points": 85,
"status": "partial",
"details": [
{
"code": "abandonment_flagged",
"params": {
"days": 4085,
"count": 2,
"signals": "releases stalled, Scorecard reports it unmaintained"
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "critical",
"name": "Community & Adoption",
"value": 9,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 1,
"inputs": {
"forks": 0,
"stars": 0,
"watchers": 1,
"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": "1 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 1
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "critical",
"name": "Community health",
"note": null,
"notes": [],
"value": 19,
"inputs": {
"has_readme": false,
"has_license": false,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "license file present, not a recognized license",
"points": 16.9,
"status": "partial",
"details": [
{
"code": "license_custom",
"params": {}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "at_risk",
"name": "Sustainability & Governance",
"value": 36,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 41,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 47,
"top_contributor_share": 0.611
},
"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 61% of commits",
"points": 8.8,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 61
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "47 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 47
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 47 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/30 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 66,
"inputs": {
"followers": 270,
"owner_type": "User",
"is_verified": null,
"owner_login": "carver",
"public_repos": 121,
"account_age_days": 6003
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "270 followers of carver",
"points": 17.5,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 270,
"login": "carver"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "121 public repos, account ~16 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 121
}
},
{
"code": "account_age_years",
"params": {
"years": 16
}
}
],
"max_points": 25
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "critical",
"name": "Engineering Quality",
"value": 27,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "at_risk",
"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": 38,
"inputs": {
"has_ci": false,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"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": 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": "critical",
"name": "Documentation",
"note": null,
"notes": [],
"value": 10,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": null,
"has_readme": false,
"has_docs_dir": false,
"has_description": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "critical",
"name": "Security",
"value": 28,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "critical",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): CI-Tests, Dangerous-Workflow, Packaging, Signed-Releases, Token-Permissions. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"ci_tests",
"dangerous_workflow",
"packaging",
"signed_releases",
"token_permissions"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 28,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 13,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 5,
"scorecard_aggregate": 2.8
},
"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/30 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 47 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no workflows found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"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.2,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0",
"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 2",
"points": 1,
"status": "partial",
"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": "No tokens found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "1 existing vulnerabilities detected",
"points": 6.8,
"status": "partial",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 13
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 53,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "critical",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 25,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.47,
"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": "47 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 25.1,
"status": "partial",
"details": [
{
"code": "legible_history",
"params": {
"legible": 47,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 63,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"Godeps/_workspace/src/github.com/ethereum/ethash/Makefile",
"Godeps/_workspace/src/github.com/obscuren/qml/gl/gengl/Makefile",
"Godeps/_workspace/src/github.com/rakyll/goini/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/otto/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/parser/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/test/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/token/Makefile",
"Godeps/_workspace/src/github.com/robertkrimen/otto/underscore/Makefile",
"Makefile"
],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Godeps/_workspace/src/github.com/ethereum/ethash/Makefile, Godeps/_workspace/src/github.com/obscuren/qml/gl/gengl/Makefile, Godeps/_workspace/src/github.com/rakyll/goini/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/otto/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/parser/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/test/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/token/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/underscore/Makefile, Makefile",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Godeps/_workspace/src/github.com/ethereum/ethash/Makefile, Godeps/_workspace/src/github.com/obscuren/qml/gl/gengl/Makefile, Godeps/_workspace/src/github.com/rakyll/goini/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/otto/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/parser/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/test/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/token/Makefile, Godeps/_workspace/src/github.com/robertkrimen/otto/underscore/Makefile, 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": "Dockerfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 2",
"points": 2,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 96,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 878949,
"source_files_sampled": 911,
"oversized_source_files": 70
},
"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": "70/911 source files over 60KB",
"points": 50.8,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 911,
"oversized": 70
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"example",
"examples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "example, examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "example, examples"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Community profile unavailable",
"GitHub dependency-graph SBOM unavailable (404); the dependency graph may be disabled for this repository"
],
"report_type": "repository",
"generated_at": "2026-07-26T15:24:05.782672Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/carver/go-ethereum.svg",
"full_name": "carver/go-ethereum",
"license_state": "custom",
"license_spdx": null
}