Public record
Software health reportschema 0.26.0 · metrics 1.13.0 · 2026-07-21 23:18 UTC

abacusmodeling / abacus-develop

An electronic structure package based on either plane wave basis or numerical atomic orbitals.

C++LGPL-3.0★ 207 stars⑂ 287 forkssince Jan 2021View on GitHub ↗

abacusmodeling/abacus-develop holds a health index of 69 out of 100, placing it in the Moderate band. It scores highest on Engineering Quality (90/100) and lowest on Security (54/100). It was last updated 25 days ago. 6 contributors account for most of its recent work.

69
overall / 100
Moderate

Software health index

Metrics are grouped into weighted categories on one standardized 1–100 scale. Overall starts as their weighted mean; when public evidence triggers the High-Risk Jurisdiction Policy, the rating is adjusted and receives an At risk ceiling of 49. AI Readiness sits outside the overall score.

69
Excellent85-100Exemplary; meets essentially all checked criteria
Good70-84Healthy; minor gaps
Moderate50-69Acceptable with notable gaps; review recommended
At risk30-49Significant weaknesses; adoption warrants caution
Critical1-29Severe problems (abandoned, single-maintainer, no hygiene)
VitalityCommunity &AdoptionSustainability &GovernanceEngineeringQualitySecurityAI Readiness

Score profile

Each axis is a category. The shape matters more than the average — a healthy subject fills the whole shape, while a spike-and-crater profile means strength in one dimension is masking risk in another.

Ownership

abacusmodelingOrganization
35 followers17 public repossince Jan 2021

This repository is backed by an organization — shared, accountable stewardship that can outlive any single maintainer.

Package ecosystems

RegistryPackageVersionDownloads / moVersionsLast publish
PyPIpyabacuspoints to another repo — not scored1.2.1-5770 days ago

Metrics by category

Vitality

Is the project alive — is code being written and are releases shipping?

55Moderate · 22% of overall
How it's scored
28.8/36Push recency — last push 25 days ago
1.4/36Commit cadence — 2/52 weeks with commits
10/18Commit volume — 12 commits in the last year
0/10OpenSSF Scorecard: Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Inputs used
commits_last_year12
human_commit_share1
days_since_last_push25
active_weeks_last_year2
How it's scored
27/27Ships releases — 82 releases published
16.2/36Release recency — latest release 239 days ago
27/27Release cadence — a release every ~14 days
0/10OpenSSF Scorecard: Signed-Releases — no data
Inputs used
releases_count82
latest_release_tagv3.9.0.19
releases_from_tagsno
days_since_latest_release239
mean_days_between_releases14
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.

Community & Adoption

Does the project have users, downloads, attention, and a welcoming setup for contributors?

70Good · 18% of overall
How it's scored
37.5/60Stars — 207 stars
20.5/25Forks — 287 forks
5.8/15Watchers — 12 watchers
Inputs used
forks287
stars207
watchers12
growth_stateorganic
growth_factor_pct100
How it's scored
22.5/22.5README
22.5/22.5License — recognized license (LGPL-3.0)
18/18CONTRIBUTING guide
0/13.5Code of conduct
0/7.2Issue template
6.3/6.3PR template
Inputs used
has_readmeyes
has_licenseyes
has_contributingyes
has_issue_templateno
has_code_of_conductno
has_pull_request_templateyes

Sustainability & Governance

Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?

74Good · 24% of overall
How it's scored
48.6/54Bus factor — 6 contributor(s) cover half of all commits
19.4/22.5Commit distribution — top contributor authored 14% of commits
13.5/13.5Contributor breadth — 99 contributors
10/10OpenSSF Scorecard: Contributors — project has 12 contributing companies or organizations
Inputs used
bus_factor6
contributors_sampled99
top_contributor_share0.139
How it's scored
43.9/46.8Issue resolution — 94% of issues closed
22.8/38.3PR acceptance — 163/273 decided PRs merged
0/15OpenSSF Scorecard: Code-Review — Found 0/30 approved changesets -- score normalized to 0
Inputs used
merged_prs163
open_issues6
closed_issues93
issue_closed_ratio0.939
closed_unmerged_prs110
How it's scored
30/30Ownership backing — organization-owned
0/20Verified domain
11.2/25Owner reach — 35 followers of abacusmodeling
20.1/25Track record — 17 public repos, account ~5 yr old
Inputs used
followers35
owner_typeOrganization
is_verified
owner_loginabacusmodeling
public_repos17
account_age_days2,008

Engineering Quality

Are baseline engineering and documentation practices in place?

90Excellent · 20% of overall
How it's scored
24/24CI workflows — 12 workflow(s)
24/24Tests present
16/16Linter config
9.6/9.6Pre-commit hooks
6.4/6.4.editorconfig
0/20OpenSSF Scorecard: CI-Tests — no data
Inputs used
has_ciyes
has_testsyes
has_editorconfigyes
has_linter_configyes
has_precommit_configyes
Excluded from scoring (no data or not applicable): OpenSSF Scorecard: CI-Tests. Remaining weights renormalized.
How it's scored
30/30README
25/25Documentation directory
0/15Documentation / homepage site
10/10Repository description
0/10Topics
10/10Wiki
Inputs used
topics
has_wikiyes
homepage
has_readmeyes
has_docs_diryes
has_descriptionyes

Security

Are visible security and supply-chain practices strong, without unresolved high-risk jurisdiction exposure?

54Moderate · 16% of overall
How it's scored
7.5/7.5Binary-Artifacts — no binaries found in the repo
0/7.5Branch-Protection — branch protection not enabled on development/release branches
0/2.5CI-Tests — no data
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 12 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5License — license file detected
0/7.5Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
0/5Packaging — no data
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — no SAST tool detected
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — no data
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
7.5/7.5Vulnerabilities — 0 existing vulnerabilities detected
Inputs used
sourceopenssf_scorecard
checks_evaluated15
scorecard_versionv5.5.0
checks_inconclusive3
scorecard_aggregate4.2
Excluded from scoring (no data or not applicable): ci_tests, packaging, signed_releases. Remaining weights renormalized.
How it's scored
35/35Direct dependencies free of known advisories — no direct dependency carries a known advisory
25/25Indirect dependencies free of known advisories — no indirect dependency carries a known advisory
0/40No advisories left outstanding — no advisory carries a publication date
Inputs used
sourceosv
advisories0
affected_packages0
assessed_packages1
unassessed_packages0
affected_by_severitynone
direct_affected_packages0
Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the pypi:pyabacus@1.2.1 runtime dependency closure — what installing the published package pulls in — 1 packages. Reachability is not analyzed.

AI Readiness

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.

64Moderate · 0% of overall
How it's scored
0/45Agent instructions — no CLAUDE.md / AGENTS.md / editor rules
0/15Machine-readable docs (llms.txt)
40/40Legible commit history — 97 of 100 human commits state their intent (structured subject or explanatory body)
Inputs used
has_llms_txtno
legible_history_share0.97
agent_instruction_files
agent_instruction_max_bytes
How it's scored
18/18One-command bootstrap — docs/Makefile, python/pyabacus/noxfile.py, source/Makefile, source/source_basis/module_ao/1_Documents/sphinx/Makefile, source/source_basis/module_pw/test/Makefile, source/source_lcao/module_deepks/test/Makefile, source/source_pw/module_pwdft/Makefile, tools/SIAB/SimulatedAnnealing/backup_old_version/1_Source/Makefile, tools/SIAB/SimulatedAnnealing/source/Makefile
22/22Automated tests
11/11Lint / format config
11/11Static type checking — C++ (statically typed)
10/10Reproducible environment — devcontainer, Dockerfile
0/10Demonstrated agent practice — no agent-authored commits among the last 100
5/8Automated maintenance — dependency automation configured, none observed in the sampled commits
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Inputs used
has_nixno
has_testsyes
lockfiles
has_dockerfileyes
typed_languageyes
bootstrap_filesdocs/Makefile, python/pyabacus/noxfile.py, source/Makefile, source/source_basis/module_ao/1_Documents/sphinx/Makefile, source/source_basis/module_pw/test/Makefile, source/source_lcao/module_deepks/test/Makefile, source/source_pw/module_pwdft/Makefile, tools/SIAB/SimulatedAnnealing/backup_old_version/1_Source/Makefile, tools/SIAB/SimulatedAnnealing/source/Makefile
has_devcontaineryes
has_linter_configyes
typecheck_configs
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
How it's scored
45/45Type-checkable code — C++ (statically typed)
54.6/55Manageable file sizes — 15/2,072 source files over 60KB
Inputs used
primary_languageC++
largest_source_bytes2,185,065
source_files_sampled2,072
oversized_source_files15
How it's scored
0/40API schema (OpenAPI/GraphQL/proto)
0/20MCP server
40/40Runnable examples — examples
Inputs used
example_dirsexamples
has_mcp_signalno
api_schema_files

Key facts

207GitHub stars
99contributors
12commits, last 12 months
25days since last push
82releases
6bus factor
6open issues
PyPIpackage ecosystems

Data collection warnings

  • Could not fetch pypi package 'abacus_plot' from its registry
  • pypi package 'pyabacus' points at a different repository (https://github.com/Tausand-dev/PyAbacus); excluded from ecosystem scoring

More detail

Star and fork history 207 ★ / 287 ⇿
207Stars
287Forks
82Releases

When each star and fork was added, collected from GitHub and bucketed by day. Cumulative growth sits directly above the daily additions it is made of, so the two read against each other: steady organic accretion looks nothing like an abrupt, short-lived burst. Where that difference is measurable, it is reported as growth authenticity.

040801201602002402073952021-012023-102026-07
Major 1Minor 11Patch 51

Each point covers 6 days.

OpenSSF Scorecard 4.2 / 10
4.2aggregate

Independent, tool-agnostic security assessment from the open-source OpenSSF Scorecard. Each check rewards a security practice, not a specific vendor's tool. Checks Scorecard could not determine are marked n/a and excluded from the security score (never counted as zero).Scorecard v5.5.0 · 2026-07-21 23:17 UTC

10Binary-Artifactsno binaries found in the repo
0Branch-Protectionbranch protection not enabled on development/release branches
n/aCI-Testsno pull request found
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
10Contributorsproject has 12 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
0Maintained0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
n/aPackagingpackaging workflow not detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTno SAST tool detected
0Security-Policysecurity policy file not detected
n/aSigned-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
10Vulnerabilities0 existing vulnerabilities detected
All dependencies 12

Full resolved dependency set from the GitHub dependency graph: 0 direct and 12 indirect (transitive) packages. The transitive closure is complete when the repository commits a lockfile.

RegistryPackageVersionRelation
PyPIbreatheindirect
PyPIdeepmodeling-sphinxindirect
PyPIexhaleindirect
PyPIlxmlindirect
PyPImatplotlibindirect
PyPImyst-parserindirect
PyPInumpyindirect
PyPIsetuptoolsindirect
PyPIsphinxindirect
PyPIsphinx-book-themeindirect
PyPIsphinx-rtd-themeindirect
PyPIurllib3indirect
Dependency advisories 0

Installing pypi:pyabacus@1.2.1 pulls in 1 packages, direct and transitive: 0 carry known advisories, of which 0 are direct dependencies.

No known advisories affect the assessed dependencies.

An advisory means the version recorded in the dependency graph falls inside an advisory’s affected range. Reachability is not analysed, and the graph includes development and test pins — a finding may concern tooling rather than shipped software.

Raw JSON report machine-readable
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 161595,
      "has_wiki": true,
      "homepage": null,
      "languages": {
        "C": 52320,
        "C++": 18252421,
        "Cuda": 843203,
        "HTML": 1330,
        "Roff": 4490,
        "CMake": 180234,
        "Shell": 338720,
        "Python": 493794,
        "Gnuplot": 2234,
        "Makefile": 28621,
        "Batchfile": 799,
        "PureBasic": 1656
      },
      "pushed_at": "2026-06-26T08:33:04Z",
      "created_at": "2021-01-20T03:44:16Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-18T16:18:25Z",
      "description": "An electronic structure package based on either plane wave basis or numerical atomic orbitals.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "LGPL-3.0",
      "default_branch": "develop",
      "license_spdx_raw": "LGPL-3.0",
      "primary_language": "C++",
      "significant_languages": [
        "C++"
      ]
    },
    "owner": {
      "blog": "http://abacus.ustc.edu.cn/",
      "name": null,
      "type": "Organization",
      "login": "abacusmodeling",
      "company": null,
      "location": null,
      "followers": 35,
      "avatar_url": "https://avatars.githubusercontent.com/u/77711195?v=4",
      "created_at": "2021-01-20T03:34:01Z",
      "is_verified": null,
      "public_repos": 17,
      "account_age_days": 2008
    },
    "license": {
      "state": "standard",
      "spdx_id": "LGPL-3.0",
      "raw_spdx": "LGPL-3.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v3.9.0.19",
          "kind": "other",
          "published_at": "2025-11-24T10:13:57Z"
        },
        {
          "tag": "v3.10.1",
          "kind": "patch",
          "published_at": "2025-11-21T08:18:41Z"
        },
        {
          "tag": "v3.9.0.18",
          "kind": "other",
          "published_at": "2025-11-24T10:13:10Z"
        },
        {
          "tag": "v3.9.0.17",
          "kind": "other",
          "published_at": "2025-11-24T10:12:14Z"
        },
        {
          "tag": "v3.9.0.16",
          "kind": "other",
          "published_at": "2025-11-24T10:11:25Z"
        },
        {
          "tag": "v3.9.0.15",
          "kind": "other",
          "published_at": "2025-11-24T10:10:46Z"
        },
        {
          "tag": "v3.9.0.14",
          "kind": "other",
          "published_at": "2025-11-24T10:10:09Z"
        },
        {
          "tag": "v3.9.0.13",
          "kind": "other",
          "published_at": "2025-11-24T10:09:20Z"
        },
        {
          "tag": "v3.9.0.11",
          "kind": "other",
          "published_at": "2025-08-04T10:11:47Z"
        },
        {
          "tag": "v3.9.0.10",
          "kind": "other",
          "published_at": "2025-07-21T12:38:16Z"
        },
        {
          "tag": "v3.9.0.9",
          "kind": "other",
          "published_at": "2025-07-21T12:37:29Z"
        },
        {
          "tag": "v3.9.0.8",
          "kind": "other",
          "published_at": "2025-07-21T12:36:27Z"
        },
        {
          "tag": "v3.9.0.7",
          "kind": "other",
          "published_at": "2025-06-09T10:04:35Z"
        },
        {
          "tag": "v3.9.0.6",
          "kind": "other",
          "published_at": "2025-06-09T10:03:41Z"
        },
        {
          "tag": "v3.9.0.5",
          "kind": "other",
          "published_at": "2025-06-09T10:02:45Z"
        },
        {
          "tag": "v3.9.0.4",
          "kind": "other",
          "published_at": "2025-06-09T10:02:03Z"
        },
        {
          "tag": "v3.9.0.3",
          "kind": "other",
          "published_at": "2025-06-09T10:01:17Z"
        },
        {
          "tag": "LTSv3.10.0",
          "kind": "other",
          "published_at": "2025-04-02T09:14:07Z"
        },
        {
          "tag": "v3.9.0.2",
          "kind": "other",
          "published_at": "2025-06-09T10:00:17Z"
        },
        {
          "tag": "v3.9.0.1",
          "kind": "other",
          "published_at": "2025-06-09T09:59:30Z"
        },
        {
          "tag": "v3.9.0",
          "kind": "minor",
          "published_at": "2025-01-02T09:27:15Z"
        },
        {
          "tag": "v3.8.5",
          "kind": "patch",
          "published_at": "2024-12-16T10:08:11Z"
        },
        {
          "tag": "v3.8.4",
          "kind": "patch",
          "published_at": "2024-12-02T10:19:25Z"
        },
        {
          "tag": "v3.8.3",
          "kind": "patch",
          "published_at": "2024-12-02T10:18:07Z"
        },
        {
          "tag": "v3.8.2",
          "kind": "patch",
          "published_at": "2024-12-02T10:17:06Z"
        },
        {
          "tag": "v3.8.1",
          "kind": "patch",
          "published_at": "2024-12-02T10:15:58Z"
        },
        {
          "tag": "v3.8.0",
          "kind": "minor",
          "published_at": "2024-10-08T08:59:00Z"
        },
        {
          "tag": "v3.7.5",
          "kind": "patch",
          "published_at": "2024-10-08T08:57:37Z"
        },
        {
          "tag": "v3.7.4",
          "kind": "patch",
          "published_at": "2024-08-26T06:21:10Z"
        },
        {
          "tag": "v3.7.3",
          "kind": "patch",
          "published_at": "2024-08-26T03:19:44Z"
        },
        {
          "tag": "v3.7.2",
          "kind": "patch",
          "published_at": "2024-08-26T03:18:43Z"
        },
        {
          "tag": "v3.7.1",
          "kind": "patch",
          "published_at": "2024-08-26T03:17:12Z"
        },
        {
          "tag": "v3.7.0",
          "kind": "minor",
          "published_at": "2024-08-26T03:15:43Z"
        },
        {
          "tag": "v3.6.5",
          "kind": "patch",
          "published_at": "2024-06-07T12:33:38Z"
        },
        {
          "tag": "3.6.4",
          "kind": "patch",
          "published_at": "2024-06-07T12:04:49Z"
        },
        {
          "tag": "v3.6.3",
          "kind": "patch",
          "published_at": "2024-06-07T12:02:47Z"
        },
        {
          "tag": "v3.6.2",
          "kind": "patch",
          "published_at": "2024-04-28T02:13:38Z"
        },
        {
          "tag": "v3.6.1",
          "kind": "patch",
          "published_at": "2024-04-28T02:10:53Z"
        },
        {
          "tag": "v3.6.0",
          "kind": "minor",
          "published_at": "2024-04-01T02:56:55Z"
        },
        {
          "tag": "v3.5.4",
          "kind": "patch",
          "published_at": "2024-03-04T10:16:24Z"
        },
        {
          "tag": "v3.5.3",
          "kind": "patch",
          "published_at": "2024-02-19T06:03:02Z"
        },
        {
          "tag": "v3.5.2",
          "kind": "patch",
          "published_at": "2024-01-30T02:30:10Z"
        },
        {
          "tag": "v3.5.1",
          "kind": "patch",
          "published_at": "2024-01-15T10:17:20Z"
        },
        {
          "tag": "v3.5.0",
          "kind": "minor",
          "published_at": "2023-12-29T08:01:27Z"
        },
        {
          "tag": "v3.4.4",
          "kind": "patch",
          "published_at": "2023-12-25T05:07:35Z"
        },
        {
          "tag": "v3.4.3",
          "kind": "patch",
          "published_at": "2023-11-20T09:54:04Z"
        },
        {
          "tag": "v3.4.2",
          "kind": "patch",
          "published_at": "2023-11-04T03:10:52Z"
        },
        {
          "tag": "v3.4.1",
          "kind": "patch",
          "published_at": "2023-12-25T05:27:41Z"
        },
        {
          "tag": "v3.4.0",
          "kind": "minor",
          "published_at": "2023-10-07T02:50:56Z"
        },
        {
          "tag": "v3.3.4",
          "kind": "patch",
          "published_at": "2023-12-25T05:25:24Z"
        },
        {
          "tag": "v3.3.3",
          "kind": "patch",
          "published_at": "2023-12-25T05:23:59Z"
        },
        {
          "tag": "v3.3.2",
          "kind": "patch",
          "published_at": "2023-08-14T12:58:06Z"
        },
        {
          "tag": "v3.3.1",
          "kind": "patch",
          "published_at": "2023-12-25T05:21:55Z"
        },
        {
          "tag": "v3.3.0",
          "kind": "minor",
          "published_at": "2023-07-13T14:48:23Z"
        },
        {
          "tag": "v3.2.5",
          "kind": "patch",
          "published_at": "2023-06-16T07:51:06Z"
        },
        {
          "tag": "v3.2.4",
          "kind": "patch",
          "published_at": "2023-06-02T07:42:00Z"
        },
        {
          "tag": "v3.2.3",
          "kind": "patch",
          "published_at": "2023-05-19T09:43:00Z"
        },
        {
          "tag": "v3.2.2",
          "kind": "patch",
          "published_at": "2023-04-28T09:38:10Z"
        },
        {
          "tag": "v3.2.1",
          "kind": "patch",
          "published_at": "2023-04-13T07:48:10Z"
        },
        {
          "tag": "v3.2.0",
          "kind": "minor",
          "published_at": "2023-03-31T14:11:13Z"
        },
        {
          "tag": "v3.1.4",
          "kind": "patch",
          "published_at": "2023-03-10T08:41:41Z"
        },
        {
          "tag": "v3.1.3",
          "kind": "patch",
          "published_at": "2023-02-24T09:07:59Z"
        },
        {
          "tag": "v3.1.2",
          "kind": "patch",
          "published_at": "2023-02-10T05:38:34Z"
        },
        {
          "tag": "v3.1.1",
          "kind": "patch",
          "published_at": "2023-01-13T09:58:30Z"
        },
        {
          "tag": "v3.1.0",
          "kind": "minor",
          "published_at": "2022-12-30T04:26:14Z"
        },
        {
          "tag": "v3.0.5",
          "kind": "patch",
          "published_at": "2022-12-16T04:39:52Z"
        },
        {
          "tag": "v3.0.4",
          "kind": "patch",
          "published_at": "2022-12-01T10:04:12Z"
        },
        {
          "tag": "v3.0.3",
          "kind": "patch",
          "published_at": "2022-11-18T10:24:17Z"
        },
        {
          "tag": "v3.0.2",
          "kind": "patch",
          "published_at": "2022-11-04T11:29:50Z"
        },
        {
          "tag": "v3.0.1",
          "kind": "patch",
          "published_at": "2022-10-21T06:58:17Z"
        },
        {
          "tag": "v3.0.0",
          "kind": "major",
          "published_at": "2022-09-30T09:56:01Z"
        },
        {
          "tag": "v2.3.5",
          "kind": "patch",
          "published_at": "2022-09-08T09:49:01Z"
        },
        {
          "tag": "v2.3.4",
          "kind": "patch",
          "published_at": "2022-08-28T09:57:29Z"
        },
        {
          "tag": "v2.3.3",
          "kind": "patch",
          "published_at": "2022-09-06T07:02:25Z"
        },
        {
          "tag": "v2.3.2",
          "kind": "patch",
          "published_at": "2022-07-29T06:41:01Z"
        },
        {
          "tag": "v2.3.1",
          "kind": "patch",
          "published_at": "2022-07-15T16:37:10Z"
        },
        {
          "tag": "v2.3.0",
          "kind": "minor",
          "published_at": "2022-07-01T09:43:05Z"
        },
        {
          "tag": "v2.2.4",
          "kind": "patch",
          "published_at": "2022-06-11T08:02:22Z"
        },
        {
          "tag": "v2.2.3",
          "kind": "patch",
          "published_at": "2022-05-27T14:42:51Z"
        },
        {
          "tag": "v2.2.2",
          "kind": "patch",
          "published_at": "2022-05-13T11:38:13Z"
        },
        {
          "tag": "v2.2.1",
          "kind": "patch",
          "published_at": "2022-04-25T04:37:50Z"
        },
        {
          "tag": "v2.2.0",
          "kind": "minor",
          "published_at": "2022-04-07T05:05:28Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "2f59a6fcfc787a024694201c77ccfe8549c80193",
          "body": "* Feature: plot sts_line_ave\n\n* Fix: dav_subspace for uspp\n\n* Fix: refresh sphi in dav_subspace\n\n* Fix: pyabacus interface\n\n* add syncmem_op for PyDiagoDavSubspace",
          "is_bot": false,
          "headline": "Fix: dav_subspace for uspp (#6428)",
          "author_name": "Yu Liu",
          "author_login": "YuLiu98",
          "committed_at": "2025-08-04T03:09:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "acaa1fc23ae11986df7ffbb09c6052a1ae2fffeb",
          "body": "* add cuda support for cal_force_loc\n\n* fix compilation bug\n\n* fix bug",
          "is_bot": false,
          "headline": "Perf: add cuda support for cal_force_loc (#6427)",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-08-04T03:08:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "940a66457ec1e91845dce219c7fec7cee0de5b79",
          "body": null,
          "is_bot": false,
          "headline": "Update version.h (#6426)",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-08-02T11:38:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8d76d26e1a4264538a97d922ea634cbfdf12ab4c",
          "body": "Co-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "fix bug in Pseudopot_upf::set_empty_element() (#6423)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-08-01T13:36:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f16364decd02228715d1d0e6ec8fed69a40a4919",
          "body": "* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix Makefile Intel toolchains compile errors\n\n* Fix even more PEXSI related Makefile compiling issues\n\n* M\n[…]\nohan Chen <mohanchen@pku.edu.cn>\nCo-authored-by: Critsium <tsfxwbbzxy@163.com>\nCo-authored-by: Taoni Bao <baotaoni@pku.edu.cn>\nCo-authored-by: Chen Nuo <49788094+Cstandardlib@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Feature: EXX PW GPU Support (#6407)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-07-31T14:05:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3f7e7a4b2a43c757d5ea2f9e8331e93906c9bb56",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\nohan Chen <mohanchen@pku.edu.cn>\nCo-authored-by: Critsium <tsfxwbbzxy@163.com>\nCo-authored-by: Taoni Bao <baotaoni@pku.edu.cn>\nCo-authored-by: Chen Nuo <49788094+Cstandardlib@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Fix: wrong name in cuda \"lapack\" interface (#6411)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-07-31T02:10:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2fcc64e3d53ecdda11e044763056a57a8ffa091c",
          "body": "* Fix numerical error in pyabacus.\n\n* Add test for TwoCenterIntegrator for pyabacus.\n\n* Update numerica_radial.cpp.",
          "is_bot": false,
          "headline": "Fix: Numerical error in pyabacus. (#6414)",
          "author_name": "Erjie Wu",
          "author_login": "ErjieWu",
          "committed_at": "2025-07-26T13:22:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "355eaf331d3e4e82337727be5afa342cae9635c7",
          "body": "* Remove unreferenced header lapack_connector in source_hsolver/test\n\n* Remove unreferenced header lapack_connector in source_hsolver/kernels\n\n* Remove unreferenced header blas_connector in tests",
          "is_bot": false,
          "headline": "Remove blas/lapack_connector.h that are not referenced in test (#6413)",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-25T09:25:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "afd9b089e9cb4299eaeabece8207ee6d46d39798",
          "body": "* Add files via upload\n\n* Add files via upload",
          "is_bot": false,
          "headline": "Fix rt-tddft crash (#6410)",
          "author_name": "HTZhao",
          "author_login": "ESROAMER",
          "committed_at": "2025-07-23T14:04:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a52361b819fe53ba1900fa59671f235332e3c69d",
          "body": "* Update FetchContent URL for cereal to use the latest master version\n\n* Use std::abs instead of abs to suppress warning message\n\"using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]\"",
          "is_bot": false,
          "headline": "Refactor: changed cereal url with codeload  (#6408)",
          "author_name": "Kai Luo (罗凯)",
          "author_login": null,
          "committed_at": "2025-07-23T14:02:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61c325c10abfdefb0a5ccf55137278ecb2297378",
          "body": "* Remove unreferenced header lapack_connector in source_hsolver\n\n* Remove unreferenced header lapack_connector in source_esolver\n\n* Remove unreferenced header lapack_connector in source_relax\n\n* Remove unreferenced header lapack_connector in source_hsolver\n\n* Remove unreferenced header lapack_connector in source_io\n\n* Remove unreferenced header lapack_connector in source_lcao/module_rt\n\n* Remove unreferenced header lapack_connector in source_hsolver",
          "is_bot": false,
          "headline": "Remove lapack_connector.h that are not referenced (#6400)",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-23T14:01:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "954d24a675e618b55ed2f2d994b3125f1d37171f",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\nohan Chen <mohanchen@pku.edu.cn>\nCo-authored-by: Critsium <tsfxwbbzxy@163.com>\nCo-authored-by: Taoni Bao <baotaoni@pku.edu.cn>\nCo-authored-by: Chen Nuo <49788094+Cstandardlib@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Fix: fix exx_gamma_extrapolation error in MPI (#6404)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-07-22T05:41:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "939582f317edcd46345a72338a9287af628b1f9a",
          "body": "…ue control flow. (#6403)",
          "is_bot": false,
          "headline": "Fix control flow of occNum_func in rdmft_tools to include default val…",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-21T14:21:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b51a108dea38368980f4c6a86fd75fb5ac02d38",
          "body": "…overridden (#6401)",
          "is_bot": false,
          "headline": "explicitly introduce push_data version of the base class that is not …",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-21T14:21:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23421806a7dbe3f7f007ebe3644de27af25dc7e7",
          "body": "… include directly and will be removed in future CUDA release, eliminating compile warning by nvcc. (#6399)",
          "is_bot": false,
          "headline": "Remove internal header file device_functions.h that is not allowed to…",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-21T14:20:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "93cd909c5e54ead46f3b6d582c0aad4cf29a614c",
          "body": "* Remove unreferenced header blas_connector in hsolver\n\n* Remove unreferenced header blas_connector in source_lcao/module_gint\n\n* Remove unreferenced header blas_connector in source_lcao/module_ri\n\n* Remove unreferenced header blas_connector in source_lcao/module_operator_lcao\n\n* Remove unreferenced\n[…]\n Remove unreferenced header blas_connector in source_pw/module_stodft\n\n* Remove unreferenced header blas_connector in source_pw/module_pwdft\n\n* Remove unreferenced header blas_connector in source_base",
          "is_bot": false,
          "headline": "Remove unreferenced blas_connector.h header (#6398)",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-21T14:19:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "dc02067edb121173ff37b40e76ba604ca7ddc66e",
          "body": "…ually referenced (#6396)\n\n* Clean dependency: remove headers scalapack_connector that are not actually referenced\n\n* Remove header in hsolver test\n\n* Remove header in module_deltaspin\n\n* Remove header in source_lcao/module_dftu\n\n* Remove unreferenced header in source_io\n\n* Remove unreferenced header in source_lcao/module_rt",
          "is_bot": false,
          "headline": "Clean dependency: remove headers scalapack_connector that are not act…",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-21T14:18:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a94c62d265d825f39a8d6b3b52c35e8ec68d887d",
          "body": "Co-authored-by: Liang Sun <50293369+sunliang98@users.noreply.github.com>",
          "is_bot": false,
          "headline": "bump version to 3.9.0.10 (#6397)",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-07-20T01:09:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fe38a7021985dd60dcc5b1fde57d5682cbd4c197",
          "body": "* update the output formats of rt-TDDFT\n\n* update the output formats of rt-TDDFT\n\n* fix a bug\n\n* update initialized velocities\n\n* found some output information is still lacking in MD module\n\n* update output information\n\n* remove some global variables in relax_driver\n\n* update outputs\n\n* update relax\n[…]\nan the cell length, it is fine to proceed the relaxation calculations\n\n* fix tests for unitcells\n\n* update cell\n\n* update some function names, update output A to Angstrom\n\n* change eV/A to eV/Angstrom",
          "is_bot": false,
          "headline": "Fix a bug for the output information after relaxation (#6395)",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-07-19T11:30:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "063bd69e11afbc8ab0a31760f7934e26f81e2e85",
          "body": "…external in source_base (#6388)\n\n* Move module_lr to source_lcao\n\n* Fix test build\n\n* Move blas_connector to module_external\n\n* Fix header use\n\n* Fix internal header use\n\n* A fierce battle with Makefile😡\n\n* Move blacs_connector.h to module_external\n\n* Move lapack_connector.h and lapack_wrapper.h to module_external\n\n* Fix header usage\n\n* Move scalapack_connector.h to module_external",
          "is_bot": false,
          "headline": "[Refactor] Move module_lr to source_lcao and add a new folder module_…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-07-19T07:35:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d035e76c1d5c301c062a4b66bd6efc5103e7cde",
          "body": "* support GPU version of cal_force_cc with LCAO basis\n\n* fix a bug",
          "is_bot": false,
          "headline": "Perf: support GPU version of cal_force_cc with LCAO basis (#6392)",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-07-19T07:17:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7edc682b445021b572de896ecfb77c66255666b2",
          "body": null,
          "is_bot": false,
          "headline": "Optimize RT-TDDFT dipole output (#6393)",
          "author_name": "Taoni Bao",
          "author_login": "AsTonyshment",
          "committed_at": "2025-07-18T12:36:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "14ae255c8225f54b89276a0f18b464f719352d28",
          "body": "…en `device=gpu` (#6391)\n\n* Fix GPU output of out_pchg and out_wfc_norm, out_wfc_re_im\n\n* GPU integrate test is functional again",
          "is_bot": false,
          "headline": "Feature: Output real space wavefunction and partial charge density wh…",
          "author_name": "Taoni Bao",
          "author_login": "AsTonyshment",
          "committed_at": "2025-07-18T12:35:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b994d95ab08476598ddab329189602d65585e336",
          "body": "* Feature: support output the matrix representation of symmetry operation\n\n* Feature: support the output of matrix representation of symm_ops\n\n* update the document",
          "is_bot": false,
          "headline": "Feature: support the output of matrix representation of symm_ops (#6390)",
          "author_name": "kirk0830",
          "author_login": "kirk0830",
          "committed_at": "2025-07-18T12:32:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23271d2da0493415835f692d2d58ff59c13f57b4",
          "body": "* update the output formats of rt-TDDFT\n\n* update the output formats of rt-TDDFT\n\n* fix a bug\n\n* update initialized velocities\n\n* found some output information is still lacking in MD module\n\n* update output information\n\n* remove some global variables in relax_driver\n\n* update outputs\n\n* update relax\n[…]\n output stress format\n\n* change update_cell.cpp algorithm, when the ion move is larger than the cell length, it is fine to proceed the relaxation calculations\n\n* fix tests for unitcells\n\n* update cell",
          "is_bot": false,
          "headline": "Update the outputs of geometry relaxation (#6387)",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-07-14T14:58:22Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7aa668ae1e7a1d13b2260400bb877c536458d367",
          "body": "…#6386)\n\n* Rename grid to module_grid\n\n* Rename genelpa to module_genelpa\n\n* Fix cmake",
          "is_bot": false,
          "headline": "[Refactor] Rename grid to module_grid and genelpa to module_genelpa (…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-07-14T07:32:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d48a64608eba50c81e0a047bf61462a61e8017ec",
          "body": "* update the output formats of rt-TDDFT\n\n* update the output formats of rt-TDDFT\n\n* fix a bug\n\n* update initialized velocities\n\n* found some output information is still lacking in MD module",
          "is_bot": false,
          "headline": "Update the output formats of rt-TDDFT (#6381)",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-07-13T08:20:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9cfddf3a10311b129169b6b35a395fe9274c2774",
          "body": "* remove float error in sunway\n\n* fix ig=0\n\n* add the sw\n\n* change the make_dir\n\n* unify the gg use\n\n* fix compile bug\n\n* add init\n\n* temporarily remove the sunway define\n\n* add the pesduo\n\n* fix compile bug\n\n* fix bug in the betar\n\n* modify the test",
          "is_bot": false,
          "headline": "Add use sw and fix Floating point exception  (#6372)",
          "author_name": "liiutao",
          "author_login": "A-006",
          "committed_at": "2025-07-12T13:37:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3f312e8a8f5f47c48ac3417ab500ee57083d4c83",
          "body": "Co-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "refactor Exx_Opt_Orb (#6378)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-07-12T13:34:54Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "012c2169b56519dfb9c52f2151fe83f1aaf9ff9d",
          "body": "* fix memory leak\n\n* delete copy assignment",
          "is_bot": false,
          "headline": "Fix: Fix memory leak introduced by new gint module (#6375)",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-07-10T16:54:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7c68dfc9a2a8fb7a265fa7f0cd99e63430f1c494",
          "body": "* Refactor: Replace PARAM.inp with inp in ESolver classes for consistency\n\n* Refactor: Replace local input parameters with PARAM.inp in ESolver classes for consistency\n\n* Refactor: Use PARAM.inp.scf_ene_thr in ESolver_KS_LCAO iter_finish method\n\n* Revert \"Refactor: Use PARAM.inp.scf_ene_thr in ESolv\n[…]\na46630cd0acddc392e8ca8f7a22918c4f.\n\n* Revert \"Refactor: Replace local input parameters with PARAM.inp in ESolver classes for consistency\"\n\nThis reverts commit f4f81e3902315e4446a55094ee93ff771eb68855.",
          "is_bot": false,
          "headline": "Refactor: Remove redundant Input_para from ESolver Class (#6370)",
          "author_name": "Liang Sun",
          "author_login": "sunliang98",
          "committed_at": "2025-07-10T05:21:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b8e9264f01df592ad6add6bb0b39b7312a6d0589",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\n531+jingan-181@users.noreply.github.com>\nCo-authored-by: StarGrys <771582678@qq.com>\nCo-authored-by: Haozhi Han <haozhi.han@stu.pku.edu.cn>\nCo-authored-by: Mohan Chen <mohan.chen.chen.mohan@gmail.com>",
          "is_bot": false,
          "headline": "Feature: Support linear combination of coulomb_param for EXX PW (#6371)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-07-10T01:25:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "db416007d6d7339d31b088d6b44196ea8c9505da",
          "body": "* Improve md calculation stress output in running log\n\n* Module_IO Unittest modify\n\n* ModuleMD Unittests modify\n\n* modify code comment in fire_test.cpp\n\n* maintain setprecision(8) for md stress output",
          "is_bot": false,
          "headline": "Improve md calculation stress output in running log (#6366)",
          "author_name": "lanshuyue",
          "author_login": "lanshuyue",
          "committed_at": "2025-07-10T01:11:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8e8c30fb431e46b75a8ccd47a3dd0f57301a21f6",
          "body": "* hybrid gague\n\n* update tests\n\n* update\n\n* update\n\n* update\n\n* update\n\n* update unit test\n\n* fix tests\n\n* update tests\n\n* fix read_wfc\n\n* fix catch_properties.sh\n\n* fix restart\n\n* update gpu test\n\n* update tests\n\n* fix\n\n* fix input_conv",
          "is_bot": false,
          "headline": "Uploading hybrid gauge tddft (#6369)",
          "author_name": "HTZhao",
          "author_login": "ESROAMER",
          "committed_at": "2025-07-10T01:07:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b554f40abdb44dde642f99fa711e2da05c64bd00",
          "body": null,
          "is_bot": false,
          "headline": "Print eigenvalues for all k-points in running log when kpar > 1 (#6367)",
          "author_name": "lanshuyue",
          "author_login": "lanshuyue",
          "committed_at": "2025-07-09T01:20:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3a842b009401d2cf02165dd67cdfc19d88f97185",
          "body": "* Use template to reconstruct parse_expression\n\n* Feature: output R matrix at each MD step\n\n* Modify'matrix_HS' to 'matrix' for R matrix output\n\n* Merge branches 'develop' and 'develop' of https://github.com/1041176461/abacus-develop into develop\n\n* Fix: modify index in parse_expression\n\n* Fix: add \n[…]\nby: HTZhao <104255052+ESROAMER@users.noreply.github.com>\nCo-authored-by: maki49 <1579492865@qq.com>\nCo-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Refactor: the initialization scheme in LRI_CV (#6363)",
          "author_name": "jiyuyang",
          "author_login": "1041176461",
          "committed_at": "2025-07-08T06:19:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c873197784aa63e77facec7c97f43556ef924eb0",
          "body": "… (#6358)\n\n* Move module_parameter to source_io\n\n* Move operator_lcao out and rename\n\n* Modify source_lcao folder structure\n\n* Fix test probelm\n\n* Fix Conflict and fix compilation",
          "is_bot": false,
          "headline": "[Refactor] Move module_parameter to source_io. Reorganize source_lcao…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-07-05T07:36:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "83709c975c633075e19bb393aac58d2ac46f6fbb",
          "body": "* Feature: Implement Xu-Wang-Ma KEDF\n\n* Test: Add two integrate tests for XWM KEDF\n\n* Doc: Update document of XWM KEDF.\n\n* Fix: update kedf_manager.h",
          "is_bot": false,
          "headline": "Feature: Implement Xu-Wang-Ma KEDF (#6359)",
          "author_name": "Liang Sun",
          "author_login": "sunliang98",
          "committed_at": "2025-07-05T05:53:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bb2226365eba7b18211272ef32e85c70772eb1c",
          "body": "Co-authored-by: Liang Sun <50293369+sunliang98@users.noreply.github.com>",
          "is_bot": false,
          "headline": "update version (#6360)",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-07-04T12:00:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ab49ad984d25db311019e84a2de57e2a9029699a",
          "body": "…Spencer-Alavi truncation Coulomb potential (#6351)\n\n* Use template to reconstruct parse_expression\n\n* Feature: output R matrix at each MD step\n\n* Modify'matrix_HS' to 'matrix' for R matrix output\n\n* Merge branches 'develop' and 'develop' of https://github.com/1041176461/abacus-develop into develop\n\n[…]\nby: HTZhao <104255052+ESROAMER@users.noreply.github.com>\nCo-authored-by: maki49 <1579492865@qq.com>\nCo-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Feature: long-range corrected hybrid functionals implementation with …",
          "author_name": "jiyuyang",
          "author_login": "1041176461",
          "committed_at": "2025-07-04T09:24:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4b1566311db182b82843928bc55d316cb91178db",
          "body": "…U CI/CD test case `07_NO_EDM_TDDFT_GPU` is functional again (#6354)\n\n* Fix ekb MPI sync error in RT-TDDFT\n\n* Add back integrate test 07_NO_EDM_TDDFT_GPU\n\n* Delete useless myid",
          "is_bot": false,
          "headline": "Fix: Add MPI synchronization for `ekb` band energy tensor, and now GP…",
          "author_name": "Taoni Bao",
          "author_login": "AsTonyshment",
          "committed_at": "2025-07-04T04:21:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "918d11bb2f0333d1b3a2a6d40609da78545d9cf0",
          "body": null,
          "is_bot": false,
          "headline": "Fix calculation type inconsistency across MPI ranks (#6356)",
          "author_name": "Taoni Bao",
          "author_login": "AsTonyshment",
          "committed_at": "2025-07-04T04:19:44Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f5e43ab062f659cd3d36435a723a39882ffdf4a2",
          "body": "… hamilt_pwdft (#6353)\n\n* Rename module_tddft\n\n* Rename hamilt_ofdft\n\n* Renamd hamilt_ofdft\n\n* Rename hamilt_pwdft\n\n* Align doucments",
          "is_bot": false,
          "headline": "[Refactor] Rename module_tddft and hamilt_ofdft and hamilt_stodft and…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-07-03T06:22:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca96d8eb0218a6dad3990021512466087f764b6e",
          "body": null,
          "is_bot": false,
          "headline": "type 1 fix with std::complex (#6346)",
          "author_name": "Kai Luo (罗凯)",
          "author_login": null,
          "committed_at": "2025-07-02T14:49:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47bfd69bead325c5f46b621dc200b3b9c11e2702",
          "body": "* Refactor KEDF management in ESolver_OF\n\n- Introduced KEDF_Manager class to encapsulate KEDF functionalities, replacing individual KEDF instances (TF, VW, WT, LKT, ML) in ESolver_OF.\n- Updated ESolver_OF to initialize and utilize KEDF_Manager for potential, energy, energy density, and stress calculations.\n\n* Update Makefile.Objects",
          "is_bot": false,
          "headline": "Refactor: Refactor KEDF management in ESolver_OF (#6349)",
          "author_name": "Liang Sun",
          "author_login": "sunliang98",
          "committed_at": "2025-07-02T13:56:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8528f511a11d78b7ca0f3563bb9a73423420cbdd",
          "body": "* Use template to reconstruct parse_expression\n\n* Feature: output R matrix at each MD step\n\n* Modify'matrix_HS' to 'matrix' for R matrix output\n\n* Merge branches 'develop' and 'develop' of https://github.com/1041176461/abacus-develop into develop\n\n* Fix: modify index in parse_expression\n\n* Fix: add \n[…]\nby: HTZhao <104255052+ESROAMER@users.noreply.github.com>\nCo-authored-by: maki49 <1579492865@qq.com>\nCo-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Refactor: new ccp param framework (#6350)",
          "author_name": "jiyuyang",
          "author_login": "1041176461",
          "committed_at": "2025-07-02T11:30:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "174f31f68b4f95c5875a03f5f43e063fd9a0fee1",
          "body": "…o source_lcao/module_rdmft and correct some documents (#6344)\n\n* Move module_ri to source_lcao/module_ri\n\n* Modify pathes of file in source_lcao/module_ri\n\n* Fix CMakeFiles in test\n\n* Move module_rdmft to source_lcao/module_rdmft\n\n* Correct documentation\n\n* Line up document\n\n* Fix document about source_relax",
          "is_bot": false,
          "headline": "[Refactor] Move module_ri to source_lcao/module_ri and module_rdmft t…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-07-01T04:35:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2260530c45659f1e2eb8fe14b5c38216672dd5fc",
          "body": "…ated docs and examples (#6345)\n\n* Update docs related to wfc and modify examples\n\n* Remove write_psi_r_1 interface from ABACUS",
          "is_bot": false,
          "headline": "Remove useless and outdated `write_psi_r_1` interface and improve rel…",
          "author_name": "Taoni Bao",
          "author_login": "AsTonyshment",
          "committed_at": "2025-07-01T04:32:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e7917d49bcbe96b1e8dbc3dbe55587b8ec94d1e1",
          "body": "* add #TOTAL ENERGY# for each ion step\n\n* fix bug",
          "is_bot": false,
          "headline": "Add \"#TOTAL ENERGY#\" after each ion step (#6342)",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-07-01T04:29:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "adaa38e9bceefef94eee380b54cd5044a9354aad",
          "body": null,
          "is_bot": false,
          "headline": "Rename module_md module_relax module_hamilt_lcao module_io (#6340)",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-27T13:49:32Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96730e8bcc935df95f09e1f515c69f7172ffd314",
          "body": "…#6296)\n\n* version 0.0\n\n* change gemm function\n\n* enable gint_vl_gpu\n\n* add new gemm function\n\n* support rho calculation\n\n* enable fvl calculation\n\n* small change\n\n* enable vlocal-metagga and tau calculation\n\n* add set ddphi\n\n* enable gint_vl_nspin4_gpu\n\n* add gint_vl_metagga_nspin4_gpu\n\n* enable fv\n[…]\n module_lr\n\n* replace module with source\n\n* include missing header\n\n* fix a bug\n\n* update some result.ref\n\n* fix compilation error when MPI is disabled\n\n* add makefile support\n\n* fix compilation error",
          "is_bot": false,
          "headline": "new gint module (This is a big PR that replaces old integral codes) (…",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-06-27T09:02:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "96316975ec30e07205914f4df8f9ff55e4f289e5",
          "body": "…pace wave function and partial charge density (#6336)\n\n* Refactor get_pchg for LCAO, remove nbands_istate\n\n* Delete useless CASES_mylist.txt\n\n* Refactor get_pchg for PW, remove useless function input\n\n* Remove useless header files in get_pchg_lcao.h\n\n* Rename IState_Charge to Get_pchg_lcao\n\n* Refactor get_wf for LCAO, remove nbands_istate\n\n* Remove useless header files and cout message in get_wf_lcao\n\n* Unify wf naming in get_wf_pw\n\n* Remove nbands_istate from ABACUS",
          "is_bot": false,
          "headline": "Remove INPUT parameter `nbands_istate` and unify the naming of real s…",
          "author_name": "Taoni Bao",
          "author_login": "AsTonyshment",
          "committed_at": "2025-06-26T14:26:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "37bc08a78e61f0865c30f508b68c85d73810e352",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\n531+jingan-181@users.noreply.github.com>\nCo-authored-by: StarGrys <771582678@qq.com>\nCo-authored-by: Haozhi Han <haozhi.han@stu.pku.edu.cn>\nCo-authored-by: Mohan Chen <mohan.chen.chen.mohan@gmail.com>",
          "is_bot": false,
          "headline": "Fix: Fix Compile Error on CUDA Version > 12.9 (#6337)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-06-26T13:47:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3e3f708edc708c53a39cad8dc7f9d1f36000ea6c",
          "body": "…w (#6334)\n\n* Rename module_elecstate to source_estate\n\n* Rename module_psi to source_psi\n\n* Rename module_hamilt_pw to source_pw\n\n* Rename module_hamilt_general to source_hamilt",
          "is_bot": false,
          "headline": "[Refactor] Rename module_elecstate and module_psi and module_hamilt_p…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-25T14:18:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "17d9f1d96ab1efff9846c5d83a8671a41c9c3047",
          "body": "…elated code (#6330)\n\n* Remove scc calculation deprecated code of traditional Davidson algorithm.\n\n* Remove scc completely in traditional Davidson.\n\n* Fix test after removal of scc",
          "is_bot": false,
          "headline": "Refactor: clean Davidson code, remove deprecated overlap matrix scc r…",
          "author_name": "Chen Nuo",
          "author_login": "Cstandardlib",
          "committed_at": "2025-06-24T16:22:41Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "286131292ccfcf91d2499956ad2c11d3d719ddbd",
          "body": "* don't mix_dmr in the last step\n\n* fix test reference values",
          "is_bot": false,
          "headline": "Fix: skip mix_dmr after the last iteration (#6331)",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-06-24T16:20:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "71a7b2d3adf9b988cdf3f54f05e162b9afbcac20",
          "body": "…T (#6329)",
          "is_bot": false,
          "headline": "Refactor: release the limit (<150) on length of comment lines of INPU…",
          "author_name": "kirk0830",
          "author_login": "kirk0830",
          "committed_at": "2025-06-23T13:49:57Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "80c5265df0309a4b5efe52e7d383159d386298fe",
          "body": "…tput eigenvalue information issue (#6326)\n\n* update output files\n\n* keep updating the output information in running log\n\n* update output formats\n\n* change the file name of write_istate_info write_eig_occ\n\n* update output of band information\n\n* update output of eigenvalues, delete useless functions\n\n[…]\nupdate pband\n\n* update DOS info\n\n* fix two tests\n\n* update dH and T(R) matrix output information\n\n* update elecstate_print_test\n\n* update file name of dH/dR\n\n* update examples of dhrxs1\n\n* update test",
          "is_bot": false,
          "headline": "Reformat running log, delete 'printe' command in INPUT and fix the ou…",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-23T13:48:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eb9b2283afafc73915437f86c1a8de642e1c69ee",
          "body": "…ic steps (#6325)\n\n* add parameter \"deepks_out_freq_elec\"\n\n* set global_deepks_label_elec_dir, make the directory named \"DeePKS_Label_Elec\" when needed\n\n* output files during electronic steps, add function get_filename to simplify the process\n\n* modify get_filename\n\n* change the output process of de\n[…]\ns labels during electronic steps\n\n* add test for deepks_out_freq_elec > 0\n\n* optimize LCAO_deepks_interface\n\n* modify test script for deepks\n\n* add doc for deepks_out_freq_elec\n\n* Update input-main.md",
          "is_bot": false,
          "headline": "Add deepks_out_freq_elec for outputting deepks labels during electron…",
          "author_name": "Xinyuan Liang",
          "author_login": "xuan112358",
          "committed_at": "2025-06-22T04:52:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7f417b28b841faa92c9c5359308b0fe997bfe137",
          "body": "…ce_cell (#6319)\n\n* Rename module_basis to source_basis\n\n* Rename module_cell to source_cell\n\n---------\n\nCo-authored-by: Mohan Chen <mohanchen@pku.edu.cn>",
          "is_bot": false,
          "headline": "[Refactor] Rename module_basis to source_basis || module_cell to sour…",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-21T13:56:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f0490592ef2afd4bf2d0fedf691d3eb7c89ce108",
          "body": "* Move DeePKS printing message from screen to log file.\n\n* Add support for DeePKS Real space Hamiltonian.\n\n* Fix a merge bug.\n\n* Add DeePKS V_delta_R support in doc&value_check.\n\n* Add integrate test for deepks_v_delta<0.\n\n* Remove redundant code.\n\n* Fix the bug that DeePKS integrate test output 0/1 file.\n\n* Add UT for DeePKS H(R).\n\n* clang-format change.\n\n---------\n\nCo-authored-by: Mohan Chen <mohanchen@pku.edu.cn>",
          "is_bot": false,
          "headline": "Feature&Doc&Tests: Support for deepks_v_delta=-1&-2 (#6245)",
          "author_name": "Erjie Wu",
          "author_login": "ErjieWu",
          "committed_at": "2025-06-21T09:15:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "867adf7ca114241f50a0d59690d470ce3b84a772",
          "body": "* change INPUT exx_ for linear combination of coulomb_param\n\n* git revert a1452937d02b0fb18\n\n* update read_input_ptest.cpp, read_input_item_test.cpp, integrate_tests/INPUT\n\n---------\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>\nCo-authored-by: Mohan Chen <mohanchen@pku.edu.cn>",
          "is_bot": false,
          "headline": "change INPUT exx_ for linear combination of coulomb_param (#6316)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-21T02:45:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9cd3350d162c9971191a66be929748cadeb54245",
          "body": "…o not recommend using unordered_map, which has defects in C++11) (#6318)\n\n* change INPUT exx_ for linear combination of coulomb_param\n\n* git revert a1452937d02b0fb18\n\n* remove deprecated INPUT exx parameters\n\n* 1. change Exx_Info_Global::coulomb_param from unordered_map to map\n2. move exx_symmetry_\n[…]\n_input_item_test.cpp, integrate_tests/INPUT\n\n* add threshold in integrate test 002_NO_GO_AF\n\n---------\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>\nCo-authored-by: Mohan Chen <mohanchen@pku.edu.cn>",
          "is_bot": false,
          "headline": "1. change Exx_Info_Global::coulomb_param from unordered_map to map (D…",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-21T02:22:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "44ff32eb552623caa961c4ec527b1a493a628b48",
          "body": null,
          "is_bot": false,
          "headline": "Fix reinterpret bug for c10::complex<double>. (#6321)",
          "author_name": "Erjie Wu",
          "author_login": "ErjieWu",
          "committed_at": "2025-06-21T02:11:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7620b59e01850020c00587830ae0cfdb630824fd",
          "body": null,
          "is_bot": false,
          "headline": "Update version.h (#6320)",
          "author_name": "Xinyuan Liang",
          "author_login": "xuan112358",
          "committed_at": "2025-06-20T08:00:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8419964626df3b117500dc3f09a19f83e452ee02",
          "body": "* change INPUT exx_ for linear combination of coulomb_param\n\n* git revert a1452937d02b0fb18\n\n* remove deprecated INPUT exx parameters\n\n* update read_input_ptest.cpp, read_input_item_test.cpp, integrate_tests/INPUT\n\n---------\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "remove deprecated INPUT exx parameters (#6317)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-20T03:25:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5f96c22f3ef960562cd55a4e670f08e33b6f8a50",
          "body": "* print out geometry information during bfgs_trad relax\n\n* print out geometry information during bfgs_trad relax",
          "is_bot": false,
          "headline": "print out geometry information during bfgs_trad relax (#6314)",
          "author_name": "lanshuyue",
          "author_login": "lanshuyue",
          "committed_at": "2025-06-19T09:49:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8d6b780f7c9cc9ae44cb6f38b15152f4608048a8",
          "body": "…ut` for clarity (#6313)\n\n* Refactor: change the name of keyword `force_thr_ev2` to `force_zero_out` for clarity\n\n* update the name of variable in unittest\n\n* update testfile",
          "is_bot": false,
          "headline": "Refactor: change the name of keyword `force_thr_ev2` to `force_zero_o…",
          "author_name": "kirk0830",
          "author_login": "kirk0830",
          "committed_at": "2025-06-19T09:48:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "abcb9f237e6e1b837a7ecccc395ee759cd28669f",
          "body": "* Rename module_base to source_base\n\n* Update Makefile",
          "is_bot": false,
          "headline": "[Refactor] Rename module_base to source_base (#6311)",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-19T09:47:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a1452937d02b0fb18361612a0c52521e19f1a091",
          "body": "…struction methods. (#6307)\n\n* Use template to reconstruct parse_expression\n\n* Feature: output R matrix at each MD step\n\n* Modify'matrix_HS' to 'matrix' for R matrix output\n\n* Merge branches 'develop' and 'develop' of https://github.com/1041176461/abacus-develop into develop\n\n* Fix: modify index in \n[…]\nby: HTZhao <104255052+ESROAMER@users.noreply.github.com>\nCo-authored-by: maki49 <1579492865@qq.com>\nCo-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Refactor: the ccp parameters to support additional Coulomb matrix con…",
          "author_name": "jiyuyang",
          "author_login": "1041176461",
          "committed_at": "2025-06-19T05:04:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fe446791725e24019a4f6f6412d8be8a21476c69",
          "body": "* update bfgs method\n\n* update bfgs method and modify the parameter force in relax_step to be passed by reference\n\n* update bfgs method and modify the parameter force in relax_step to be passed by reference\n\n* Introduce the differences between the two BFGS methods\n\n* Add & in relax_step input parame\n[…]\nRefactor the code and add comments\n\n* Modify comments\n\n* remove auto\n\n* remove auto\n\n* remove auto\n\n* remove auto\n\n* remove auto\n\n* combine relax_new with relax_old\n\n* combine relax_new with relax_old",
          "is_bot": false,
          "headline": "Combine relax_new with relax_old (#6303)",
          "author_name": "费扬",
          "author_login": "19hello",
          "committed_at": "2025-06-18T13:36:10Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9ac5750efe312abb0bbad543f4681b6dd5653cc0",
          "body": "* add write_libxc_r\n\n* 1. chage file_name of write_xc_r according to v3.9.0.7\n2. fix bug of write_xc_r when compiled without Libxc\n3. add description in input-main.md\n\n---------\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "add write_libxc_r (#6293)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-18T05:01:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9efc3e9ef8fa57260fdbb88034ae2e097de0f10d",
          "body": "* Rename module_hsolver to source_hsolver\n\n* Move .dat files into new directory",
          "is_bot": false,
          "headline": "[Refactor] Rename module_hsolver to source_hsolver (#6305)",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-18T00:57:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dc4a8f5306880bdb07457348e0e38749629be38f",
          "body": "Co-authored-by: haozhihan <haozhi.han@stu.pku.edu.cn>",
          "is_bot": false,
          "headline": "Rename module_esolver to source_esolver (#6300)",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-17T08:39:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5011d10aebebb1bc9266bd50674a6f176659527d",
          "body": "* update PCHG\n\n* update output file names of pchg\n\n* update reference data for PW tests\n\n* delete useless 074 example in 01_PW tests\n\n* update result.ref\n\n* update pchg output\n\n* delete a test in 01_PW\n\n* add ctrl_output_fp files\n\n* update tests in 01_PW\n\n* comment out a test in 11_PW_GPU",
          "is_bot": false,
          "headline": "Update output filenames for PCHG (#6299)",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-17T08:36:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "415390d5ea1e7d8dcb824b4569e8c535dca29301",
          "body": "* Use template to reconstruct parse_expression\n\n* Feature: output R matrix at each MD step\n\n* Modify'matrix_HS' to 'matrix' for R matrix output\n\n* Merge branches 'develop' and 'develop' of https://github.com/1041176461/abacus-develop into develop\n\n* Fix: modify index in parse_expression\n\n* Fix: add \n[…]\nby: HTZhao <104255052+ESROAMER@users.noreply.github.com>\nCo-authored-by: maki49 <1579492865@qq.com>\nCo-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Feature: add complex erf function (#6301)",
          "author_name": "jiyuyang",
          "author_login": "1041176461",
          "committed_at": "2025-06-17T08:29:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "eb7b555cafd5e4553c03916eeefebab018aa0172",
          "body": "* refactor Exx_Info::coulomb_param for RI\n\n* refactor in_built_xc_func_ext_params()\n\n* add precision in ModuleBase::GlobalFunc::TO_STRING()\n\n---------\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "refactor `Exx_Info::coulomb_param` for RI (#6295)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-16T12:31:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9b0c1f71f9834542132a9550a53043feec641ac9",
          "body": "* Move certain files to source_main\n\n* Fix MakeFile\n\n* Fix Makefile 2\n\n* Fix MakeFile 3\n\n* Fix Makefile 4\n\n* Fix Makefile 5\n\n* Fix Makefile 6\n\n* Fix Makefile 8\n\n* Fix Makefile 8\n\n* Fix Makefile 9\n\n* Fix Makefile 10",
          "is_bot": false,
          "headline": "[Refactor] Move certain files to source_main (#6290)",
          "author_name": "Critsium",
          "author_login": "Critsium-xy",
          "committed_at": "2025-06-16T12:29:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "725baaf46f8989ebd512cba91f9b624cdaa30981",
          "body": "* begin changing the output file names of out_mat_hs\n\n* update output vxc an output tk\n\n* Fix example 006_NO_GO_OH in 02_NAO_Gamma\n\n* fix a bug\n\n* fix 17_NO_KP_OH example in 03_NAO_multik\n\n* partly update the 19_NO_KP_OH_nscf exxample and related codes\n\n* partly update 20_NO_KP_OHS_S4\n\n* fix the exa\n[…]\nate reference data for DOS\n\n* fix a bug in example 05_NO_KP_DJ_OC2\n\n* fix bug\n\n* update SDFT DOS\n\n* update dos ref\n\n* update DOS examples\n\n* update deepks examples\n\n* add index for examples\n\n* add KPT",
          "is_bot": false,
          "headline": "Change examples and update DOS files, etc. (#6291)",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-13T14:57:47Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "61268435eedb2e92efd3f2ae89d0f1a13522edc5",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\n531+jingan-181@users.noreply.github.com>\nCo-authored-by: StarGrys <771582678@qq.com>\nCo-authored-by: Haozhi Han <haozhi.han@stu.pku.edu.cn>\nCo-authored-by: Mohan Chen <mohan.chen.chen.mohan@gmail.com>",
          "is_bot": false,
          "headline": "Refactor: Optimize the code structure of K_Vectors (#6263)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-06-13T12:01:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6742c156a4d55faaacdf6f98ba0b6a2060496ff5",
          "body": "…n functionals (#6270)\n\n* Feature: add xcpnet_exch/corr_placeholder parameters to tune XC manually\n\n* Refactor: remove the xc_functional_libxc_id.cpp because it is not used\n\n* Change the default values of xcpnet_exch/corr_placeholder to those of pbe\n\n* change the name of keywords\n\n* update docs\n\n* c\n[…]\nap\n\n* remove unnecessary dependency on parameter.h\n\n* update the name of parameters and polish the note in docs\n\n* add assertion to avoid memory access ub\n\n* update doc\n\n* correct extended -> external",
          "is_bot": false,
          "headline": "Feature: universal customized parameterization on exchange-correlatio…",
          "author_name": "kirk0830",
          "author_login": "kirk0830",
          "committed_at": "2025-06-13T05:27:28Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "3cad42496341e0377b2a56292a21aa83df182ff1",
          "body": "* Combine some checking functions in DeePKS.\n\n* Remove check_f_delta().\n\n* Remove check_o_delta().\n\n* Update vdpre_ref.dat\n\n* Fix a bug.\n\n* Fix a merge bug.\n\n* Reduce the memory cost for DeePKS GO-UT.",
          "is_bot": false,
          "headline": "Refactor: Combine some checking functions in DeePKS. (#6285)",
          "author_name": "Erjie Wu",
          "author_login": "ErjieWu",
          "committed_at": "2025-06-13T05:20:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "83aee57f58ab3f6508ffe008a1bed01eb7f19b1f",
          "body": "…o (#6287)\n\n* Refactor: Move the code about calculation and output of ML KEDF descriptors to module_io\n\n* Refactor: Remove ml_data.h, ml_data.cpp, and ml_data_descriptor.cpp\n\n* Doc: Update the doc of of_ml_gene_data.",
          "is_bot": false,
          "headline": "Refactor: Migrate ML KEDF Descriptor Calculation & Output to module_i…",
          "author_name": "Liang Sun",
          "author_login": "sunliang98",
          "committed_at": "2025-06-13T05:18:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "42042b4e31e298e707f1c29fb4306ea861d9ca28",
          "body": "Co-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "add exx nscf file check (#6288)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-13T05:08:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7155c3fa88cc83dc08352208c8bf79918c9b1d8a",
          "body": "…6271)\n\n* replace ENABLE_DEEPKS & ENABLE_MLKEDF with ENABLE_ML4DFT\n\n* update doc\n\n* update doc\n\n* update ENABLE_MLALGO\n\n* solve some comments\n\n* update __DMLALGO\n\n* update __MLALGO\n\n* update cmakelists\n\n* update the meaning of machine learning algorithms\n\n---------\n\nCo-authored-by: Mohan Chen <mohanchen@pku.edu.cn>\nCo-authored-by: Liang Sun <50293369+sunliang98@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Refactor: replace ENABLE_DEEPKS & ENABLE_MLKEDF with ENABLE_MLALGO (#…",
          "author_name": "Haozhi Han",
          "author_login": "haozhihan",
          "committed_at": "2025-06-12T01:14:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "12acec28a09cd8a225f0dff3a218baa61cc828ee",
          "body": null,
          "is_bot": false,
          "headline": "fix a bug (#6283)",
          "author_name": "dzzz2001",
          "author_login": "dzzz2001",
          "committed_at": "2025-06-09T13:00:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db9c16ca7c6e42b9bc1f9e2c97144734bd25f2c8",
          "body": null,
          "is_bot": false,
          "headline": "Move DeePKS printing message from screen to log file. (#6281)",
          "author_name": "Erjie Wu",
          "author_login": "ErjieWu",
          "committed_at": "2025-06-09T04:19:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "20142c8e0e727a21419fb2a71113ee563598e4e2",
          "body": "…output filenames. Move some functions in 'after_all_runners' to 'after_scf'. Change 'out_dm' to 'out_dmk' and change 'out_dm1' to 'out_dmr' (#6278)\n\n* begin changing the output file names of out_mat_hs\n\n* update output vxc an output tk\n\n* Fix example 006_NO_GO_OH in 02_NAO_Gamma\n\n* fix a bug\n\n* fix\n[…]\nodes\n\n* update 031 032 103 104\n\n* update reference data for DOS\n\n* fix a bug in example 05_NO_KP_DJ_OC2\n\n* fix bug\n\n* update SDFT DOS\n\n* update dos ref\n\n* update DOS examples\n\n* update deepks examples",
          "is_bot": false,
          "headline": "Update the 'get_s' command and related description. Update the 'DOS' …",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-09T04:10:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a05c14a024dfd4a26c87cd769bdef8951e6e818b",
          "body": "…, enable a unified control of output information every few ionic steps. (#6272)\n\n* begin changing the output file names of out_mat_hs\n\n* update output vxc an output tk\n\n* Fix example 006_NO_GO_OH in 02_NAO_Gamma\n\n* fix a bug\n\n* fix 17_NO_KP_OH example in 03_NAO_multik\n\n* partly update the 19_NO_KP_\n[…]\nis before using ctrl_outut_lcao in lcao_after_scf\n\n* update\n\n* the functions turn normal, reconstruction finished\n\n* merge\n\n* fix bug related to deepks and exc\n\n* update input-main.md\n\n* fix exx codes",
          "is_bot": false,
          "headline": "Reconstruct the LCAO codes for the parameter 'PARAM.inp.out_interval'…",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-07T12:56:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2b1e662b6014828a6a9a406aeab2f6ec197d00b1",
          "body": "* change globalv\n\n* add dsp for the nonlocal_pw\n\n* modify basis name",
          "is_bot": false,
          "headline": "Add Mt_Gemm for the nonlocal_pw (#6253)",
          "author_name": "liiutao",
          "author_login": "A-006",
          "committed_at": "2025-06-07T04:08:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "262be9e02d8374134bbeccd41fbafe036d6973f6",
          "body": "* Test: Add version check workflow for release validation\n\n* Test: Update version_check.yml",
          "is_bot": false,
          "headline": "Test: Add version check workflow for release validation (#6273)",
          "author_name": "Liang Sun",
          "author_login": "sunliang98",
          "committed_at": "2025-06-07T03:15:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6dbaae8018e10ac5faa5a524e80a0253548cd936",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\n531+jingan-181@users.noreply.github.com>\nCo-authored-by: StarGrys <771582678@qq.com>\nCo-authored-by: Haozhi Han <haozhi.han@stu.pku.edu.cn>\nCo-authored-by: Mohan Chen <mohan.chen.chen.mohan@gmail.com>",
          "is_bot": false,
          "headline": "Bump version v3.9.0.7 (#6275)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-06-06T03:15:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d3c9d0f08e909c3553598d2aff6d3e614045f15a",
          "body": "… modify the filenames of H(R), S(R), T(R), and Vxc (#6262)\n\n* begin changing the output file names of out_mat_hs\n\n* update output vxc an output tk\n\n* Fix example 006_NO_GO_OH in 02_NAO_Gamma\n\n* fix a bug\n\n* fix 17_NO_KP_OH example in 03_NAO_multik\n\n* partly update the 19_NO_KP_OH_nscf exxample and \n[…]\nO_KP_OHS_S4\n\n* fix the example 20_NO_KP_OHS_S4\n\n* print out the information for H(R), S(R), H(k) and S(k)\n\n* update 08_EXX examples\n\n* update output filenames related to dH, dS, rR\n\n* update documents",
          "is_bot": false,
          "headline": "Update the output filenames of H(k), S(k), T(k) and Vxc. In addition,…",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-03T14:21:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6654849f13a791c060c8f3f2d3b5c45e217c99fa",
          "body": "* Feature: implement k continuity initialization strategy & kernel\noptimization in davidson-subspcae algorithm\n\n- add k continuity initialization strategy in planewave basis\n- implement heterogenous computation branching between CPU and DCU\n- implement optimized eigenvalue operations for GPU & DCU\n- implement optimized preconditioner for GPU & DCU\n- implement optimized normalization op for GPU & DCU\n\n* add tests & docs\n\n* fix brace error",
          "is_bot": false,
          "headline": "Feature: implement k continuity initialization strategy & kernel (#6171)",
          "author_name": "Jie Li",
          "author_login": "jieli-matrix",
          "committed_at": "2025-06-03T09:27:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "025e574bc719857537764409e342c0f6d2e83dea",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\n531+jingan-181@users.noreply.github.com>\nCo-authored-by: StarGrys <771582678@qq.com>\nCo-authored-by: Haozhi Han <haozhi.han@stu.pku.edu.cn>\nCo-authored-by: Mohan Chen <mohan.chen.chen.mohan@gmail.com>",
          "is_bot": false,
          "headline": "Docs: EXX PW Documents (#6259)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-06-03T03:22:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "80ada9e406b9098e5a33226746ff70ddd02ccc33",
          "body": "* feat pexsi\n\n* fix : diag not completed\n\n* feat\n\n* feat: pexsi hsolver\n\n* CMake building implemented\n\n* Works\n\n* adapt to the new container\n\n* Turn off USE_PEXSI\n\n* Update LibRI to 553c91c\n\n* modify include files\n\n* namespace-ize\n\n* new inputs added\n\n* Configure Makefile Compiling, fix typos\n\n* Fix\n[…]\n531+jingan-181@users.noreply.github.com>\nCo-authored-by: StarGrys <771582678@qq.com>\nCo-authored-by: Haozhi Han <haozhi.han@stu.pku.edu.cn>\nCo-authored-by: Mohan Chen <mohan.chen.chen.mohan@gmail.com>",
          "is_bot": false,
          "headline": "Feature: Spin-polarized calculations for EXX PW (#6260)",
          "author_name": "Hongxu Ren",
          "author_login": "Flying-dragon-boxing",
          "committed_at": "2025-06-02T14:28:59Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9cfa31f8fe6b5266318a408aab643333f26d9187",
          "body": "… \"out_band\" (open files eigs1.txt and eigs2.txt). In the 'after_all_runners\" subroutine in SDFT, use after_all_runners from ESolver_KS (#6257)\n\n* add notes for the modified output file names, specify the names in the 3.10-LTS version\n\n* update the CHG file names in input-main.md and change the outp\n[…]\nng to eig.txt instead of the old istate.info\n\n* update write_istate_info.cpp\n\n* fix write_istate_info test\n\n* update the test read_wf2rho_pw_test.cpp\n\n* change the name of reference data eigs1.txt.ref",
          "is_bot": false,
          "headline": "Change 'istate.info' to 'eig.txt', add explanations for the parameter…",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-06-02T06:38:11Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2d6accbf5a3f4b57f71c24e3935d0cf5041b68bd",
          "body": "* add check and update code format in exx (#6244)\n\n* fix bug and update code format in exx\n\n* Fix bug in Exx_LRI_Interface. Change && to ||\n\n* update exx in ESolver_KS_LCAO and FORCE_STRESS\n\n* update runtime check in Exx_LRI_Interface\n\n* move exx_lri_double from ESolver_KS_LCAO to Exx_LRI_Interface\n\n[…]\n-\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>\nConflicts:\n\tsource/module_ri/Exx_LRI_interface.hpp\n\n* refactor RI_Util::get_ccp_parameter()\n\n---------\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "Exx ccp parameter (#6256)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-01T02:53:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9d78d905569bce85c963d0150e3cc7374f2a09c8",
          "body": "* fix bug and update code format in exx\n\n* Fix bug in Exx_LRI_Interface. Change && to ||\n\n* update exx in ESolver_KS_LCAO and FORCE_STRESS\n\n* update runtime check in Exx_LRI_Interface\n\n* move exx_lri_double from ESolver_KS_LCAO to Exx_LRI_Interface\n\n---------\n\n\nConflicts:\n\tsource/module_ri/Exx_LRI_interface.hpp\n\nCo-authored-by: linpz <linpz@mail.ustc.edu.cn>",
          "is_bot": false,
          "headline": "add check and update code format in exx (#6244) (#6255)",
          "author_name": "linpeize",
          "author_login": "linpeize",
          "committed_at": "2025-06-01T02:51:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9f3e6e72de43da16dd50435bf23cc99662633436",
          "body": "…ensities (#6254)\n\n* add notes for the modified output file names, specify the names in the 3.10-LTS version\n\n* update the CHG file names in input-main.md and change the output file names of charge density\n\n* add explanations for taus1.cube, etc.\n\n* change the file names for 203_PW_OK example\n\n* upd\n[…]\n050_PW_CHG_mismatch\n\n* update the file names of charge densities\n\n* update CHG files in support directories\n\n* fix file names in rho_io_test.cpp\n\n* update 203_PW_OK\n\n* update result.ref in 23_NO_KP_OK",
          "is_bot": false,
          "headline": "Change the file names of output charge densities and kinetic energy d…",
          "author_name": "Mohan Chen",
          "author_login": "mohanchen",
          "committed_at": "2025-05-31T14:49:40Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 82,
      "commits_last_year": 12,
      "latest_release_at": "2025-11-24T10:13:57Z",
      "latest_release_tag": "v3.9.0.19",
      "releases_from_tags": false,
      "days_since_last_push": 25,
      "active_weeks_last_year": 2,
      "days_since_latest_release": 239,
      "mean_days_between_releases": 14
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 62,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "pyabacus",
          "exists": true,
          "license": "GPL",
          "keywords": [
            "Development Status :: 5 - Production/Stable",
            "License :: OSI Approved :: GNU General Public License (GPL)",
            "Operating System :: OS Independent",
            "Programming Language :: Python :: 3",
            "Topic :: Utilities"
          ],
          "ecosystem": "pypi",
          "matches_repo": false,
          "registry_url": "https://pypi.org/project/pyabacus/",
          "is_deprecated": false,
          "latest_version": "1.2.1",
          "repository_url": "https://github.com/Tausand-dev/PyAbacus",
          "versions_count": 5,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": "2018-06-20T14:28:10.483017Z",
          "latest_published_at": "2024-06-11T17:39:23.875739Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 770
        }
      ]
    },
    "popularity": {
      "forks": 287,
      "stars": 207,
      "watchers": 12,
      "fork_history": {
        "days": [
          {
            "date": "2021-02-01",
            "count": 1
          },
          {
            "date": "2021-02-06",
            "count": 1
          },
          {
            "date": "2021-05-25",
            "count": 1
          },
          {
            "date": "2021-07-15",
            "count": 1
          },
          {
            "date": "2021-08-16",
            "count": 1
          },
          {
            "date": "2021-09-28",
            "count": 1
          },
          {
            "date": "2021-10-13",
            "count": 1
          },
          {
            "date": "2022-08-15",
            "count": 1
          },
          {
            "date": "2022-08-21",
            "count": 1
          },
          {
            "date": "2022-09-27",
            "count": 1
          },
          {
            "date": "2022-10-04",
            "count": 1
          },
          {
            "date": "2022-12-02",
            "count": 1
          },
          {
            "date": "2023-02-10",
            "count": 1
          },
          {
            "date": "2023-03-13",
            "count": 1
          },
          {
            "date": "2023-04-10",
            "count": 1
          },
          {
            "date": "2023-12-05",
            "count": 1
          },
          {
            "date": "2024-04-18",
            "count": 1
          },
          {
            "date": "2024-05-31",
            "count": 1
          },
          {
            "date": "2024-06-04",
            "count": 1
          },
          {
            "date": "2024-06-16",
            "count": 1
          },
          {
            "date": "2024-09-20",
            "count": 2
          },
          {
            "date": "2024-10-31",
            "count": 1
          },
          {
            "date": "2024-11-19",
            "count": 1
          },
          {
            "date": "2025-03-18",
            "count": 1
          },
          {
            "date": "2025-03-27",
            "count": 1
          },
          {
            "date": "2025-04-01",
            "count": 1
          },
          {
            "date": "2025-07-03",
            "count": 1
          },
          {
            "date": "2025-08-05",
            "count": 1
          },
          {
            "date": "2025-08-24",
            "count": 1
          },
          {
            "date": "2025-09-30",
            "count": 1
          },
          {
            "date": "2025-11-26",
            "count": 1
          },
          {
            "date": "2026-03-18",
            "count": 1
          },
          {
            "date": "2026-03-23",
            "count": 1
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-27",
            "count": 1
          },
          {
            "date": "2026-03-28",
            "count": 1
          },
          {
            "date": "2026-04-03",
            "count": 1
          },
          {
            "date": "2026-07-10",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 39,
        "total_forks": 287
      },
      "star_history": {
        "days": [
          {
            "date": "2021-01-21",
            "count": 1
          },
          {
            "date": "2021-01-27",
            "count": 1
          },
          {
            "date": "2021-01-30",
            "count": 1
          },
          {
            "date": "2021-02-01",
            "count": 2
          },
          {
            "date": "2021-02-03",
            "count": 1
          },
          {
            "date": "2021-03-26",
            "count": 4
          },
          {
            "date": "2021-03-27",
            "count": 1
          },
          {
            "date": "2021-03-28",
            "count": 1
          },
          {
            "date": "2021-04-03",
            "count": 1
          },
          {
            "date": "2021-04-08",
            "count": 1
          },
          {
            "date": "2021-04-11",
            "count": 1
          },
          {
            "date": "2021-04-22",
            "count": 1
          },
          {
            "date": "2021-05-05",
            "count": 1
          },
          {
            "date": "2021-05-17",
            "count": 1
          },
          {
            "date": "2021-05-25",
            "count": 1
          },
          {
            "date": "2021-06-02",
            "count": 1
          },
          {
            "date": "2021-07-15",
            "count": 1
          },
          {
            "date": "2021-07-26",
            "count": 1
          },
          {
            "date": "2021-08-19",
            "count": 1
          },
          {
            "date": "2021-09-03",
            "count": 1
          },
          {
            "date": "2021-09-10",
            "count": 1
          },
          {
            "date": "2021-09-22",
            "count": 1
          },
          {
            "date": "2021-09-23",
            "count": 2
          },
          {
            "date": "2021-09-28",
            "count": 2
          },
          {
            "date": "2021-10-04",
            "count": 1
          },
          {
            "date": "2021-10-10",
            "count": 1
          },
          {
            "date": "2021-10-29",
            "count": 1
          },
          {
            "date": "2021-11-04",
            "count": 1
          },
          {
            "date": "2021-11-11",
            "count": 1
          },
          {
            "date": "2021-11-30",
            "count": 1
          },
          {
            "date": "2021-12-03",
            "count": 1
          },
          {
            "date": "2021-12-09",
            "count": 1
          },
          {
            "date": "2021-12-22",
            "count": 1
          },
          {
            "date": "2022-01-02",
            "count": 1
          },
          {
            "date": "2022-01-03",
            "count": 1
          },
          {
            "date": "2022-01-07",
            "count": 1
          },
          {
            "date": "2022-04-08",
            "count": 1
          },
          {
            "date": "2022-04-11",
            "count": 1
          },
          {
            "date": "2022-04-12",
            "count": 1
          },
          {
            "date": "2022-04-18",
            "count": 1
          },
          {
            "date": "2022-04-28",
            "count": 1
          },
          {
            "date": "2022-05-05",
            "count": 1
          },
          {
            "date": "2022-05-30",
            "count": 1
          },
          {
            "date": "2022-06-01",
            "count": 1
          },
          {
            "date": "2022-06-29",
            "count": 1
          },
          {
            "date": "2022-06-30",
            "count": 1
          },
          {
            "date": "2022-07-01",
            "count": 1
          },
          {
            "date": "2022-07-08",
            "count": 1
          },
          {
            "date": "2022-07-13",
            "count": 1
          },
          {
            "date": "2022-07-14",
            "count": 1
          },
          {
            "date": "2022-07-16",
            "count": 1
          },
          {
            "date": "2022-07-21",
            "count": 2
          },
          {
            "date": "2022-08-01",
            "count": 2
          },
          {
            "date": "2022-08-09",
            "count": 2
          },
          {
            "date": "2022-08-11",
            "count": 1
          },
          {
            "date": "2022-08-12",
            "count": 1
          },
          {
            "date": "2022-08-13",
            "count": 1
          },
          {
            "date": "2022-08-14",
            "count": 1
          },
          {
            "date": "2022-08-15",
            "count": 1
          },
          {
            "date": "2022-08-24",
            "count": 1
          },
          {
            "date": "2022-08-29",
            "count": 1
          },
          {
            "date": "2022-09-07",
            "count": 1
          },
          {
            "date": "2022-09-20",
            "count": 1
          },
          {
            "date": "2022-09-23",
            "count": 2
          },
          {
            "date": "2022-09-25",
            "count": 1
          },
          {
            "date": "2022-09-27",
            "count": 1
          },
          {
            "date": "2022-10-04",
            "count": 1
          },
          {
            "date": "2022-10-05",
            "count": 1
          },
          {
            "date": "2022-10-28",
            "count": 1
          },
          {
            "date": "2022-11-11",
            "count": 1
          },
          {
            "date": "2022-11-14",
            "count": 1
          },
          {
            "date": "2022-11-16",
            "count": 1
          },
          {
            "date": "2022-11-22",
            "count": 1
          },
          {
            "date": "2022-11-24",
            "count": 2
          },
          {
            "date": "2022-11-25",
            "count": 1
          },
          {
            "date": "2022-12-06",
            "count": 1
          },
          {
            "date": "2022-12-08",
            "count": 1
          },
          {
            "date": "2022-12-09",
            "count": 1
          },
          {
            "date": "2022-12-16",
            "count": 1
          },
          {
            "date": "2023-01-01",
            "count": 1
          },
          {
            "date": "2023-02-06",
            "count": 1
          },
          {
            "date": "2023-02-16",
            "count": 1
          },
          {
            "date": "2023-02-17",
            "count": 1
          },
          {
            "date": "2023-02-18",
            "count": 1
          },
          {
            "date": "2023-02-22",
            "count": 1
          },
          {
            "date": "2023-03-02",
            "count": 1
          },
          {
            "date": "2023-03-08",
            "count": 1
          },
          {
            "date": "2023-03-10",
            "count": 2
          },
          {
            "date": "2023-03-13",
            "count": 1
          },
          {
            "date": "2023-03-15",
            "count": 1
          },
          {
            "date": "2023-03-28",
            "count": 1
          },
          {
            "date": "2023-04-03",
            "count": 1
          },
          {
            "date": "2023-04-11",
            "count": 2
          },
          {
            "date": "2023-04-12",
            "count": 2
          },
          {
            "date": "2023-04-15",
            "count": 1
          },
          {
            "date": "2023-04-18",
            "count": 1
          },
          {
            "date": "2023-04-23",
            "count": 2
          },
          {
            "date": "2023-05-04",
            "count": 1
          },
          {
            "date": "2023-05-23",
            "count": 1
          },
          {
            "date": "2023-05-26",
            "count": 1
          },
          {
            "date": "2023-05-30",
            "count": 1
          },
          {
            "date": "2023-06-08",
            "count": 1
          },
          {
            "date": "2023-06-22",
            "count": 1
          },
          {
            "date": "2023-07-04",
            "count": 1
          },
          {
            "date": "2023-07-13",
            "count": 1
          },
          {
            "date": "2023-07-18",
            "count": 1
          },
          {
            "date": "2023-07-22",
            "count": 1
          },
          {
            "date": "2023-07-26",
            "count": 1
          },
          {
            "date": "2023-08-09",
            "count": 1
          },
          {
            "date": "2023-08-25",
            "count": 1
          },
          {
            "date": "2023-09-05",
            "count": 1
          },
          {
            "date": "2023-09-15",
            "count": 1
          },
          {
            "date": "2023-09-20",
            "count": 1
          },
          {
            "date": "2023-10-13",
            "count": 1
          },
          {
            "date": "2023-10-16",
            "count": 1
          },
          {
            "date": "2023-10-22",
            "count": 1
          },
          {
            "date": "2023-11-18",
            "count": 1
          },
          {
            "date": "2023-11-28",
            "count": 1
          },
          {
            "date": "2023-12-03",
            "count": 1
          },
          {
            "date": "2023-12-11",
            "count": 1
          },
          {
            "date": "2023-12-13",
            "count": 1
          },
          {
            "date": "2023-12-22",
            "count": 1
          },
          {
            "date": "2024-01-13",
            "count": 1
          },
          {
            "date": "2024-01-27",
            "count": 1
          },
          {
            "date": "2024-03-11",
            "count": 1
          },
          {
            "date": "2024-03-14",
            "count": 1
          },
          {
            "date": "2024-03-21",
            "count": 1
          },
          {
            "date": "2024-04-17",
            "count": 1
          },
          {
            "date": "2024-05-10",
            "count": 1
          },
          {
            "date": "2024-06-21",
            "count": 1
          },
          {
            "date": "2024-07-13",
            "count": 1
          },
          {
            "date": "2024-07-27",
            "count": 1
          },
          {
            "date": "2024-08-18",
            "count": 1
          },
          {
            "date": "2024-08-20",
            "count": 2
          },
          {
            "date": "2024-08-28",
            "count": 2
          },
          {
            "date": "2024-09-20",
            "count": 1
          },
          {
            "date": "2024-10-02",
            "count": 1
          },
          {
            "date": "2024-10-09",
            "count": 1
          },
          {
            "date": "2024-11-26",
            "count": 1
          },
          {
            "date": "2024-12-02",
            "count": 1
          },
          {
            "date": "2024-12-23",
            "count": 1
          },
          {
            "date": "2024-12-30",
            "count": 1
          },
          {
            "date": "2025-01-06",
            "count": 1
          },
          {
            "date": "2025-01-09",
            "count": 1
          },
          {
            "date": "2025-01-20",
            "count": 1
          },
          {
            "date": "2025-02-25",
            "count": 1
          },
          {
            "date": "2025-03-12",
            "count": 1
          },
          {
            "date": "2025-03-18",
            "count": 1
          },
          {
            "date": "2025-03-31",
            "count": 1
          },
          {
            "date": "2025-04-01",
            "count": 1
          },
          {
            "date": "2025-04-04",
            "count": 1
          },
          {
            "date": "2025-05-10",
            "count": 1
          },
          {
            "date": "2025-07-11",
            "count": 1
          },
          {
            "date": "2025-07-15",
            "count": 1
          },
          {
            "date": "2025-07-20",
            "count": 1
          },
          {
            "date": "2025-07-29",
            "count": 1
          },
          {
            "date": "2025-08-08",
            "count": 1
          },
          {
            "date": "2025-08-16",
            "count": 1
          },
          {
            "date": "2025-08-20",
            "count": 1
          },
          {
            "date": "2025-09-10",
            "count": 1
          },
          {
            "date": "2025-09-23",
            "count": 1
          },
          {
            "date": "2025-09-26",
            "count": 1
          },
          {
            "date": "2025-09-30",
            "count": 1
          },
          {
            "date": "2025-10-20",
            "count": 1
          },
          {
            "date": "2025-10-24",
            "count": 1
          },
          {
            "date": "2025-10-27",
            "count": 1
          },
          {
            "date": "2025-10-28",
            "count": 1
          },
          {
            "date": "2025-10-29",
            "count": 1
          },
          {
            "date": "2025-11-05",
            "count": 1
          },
          {
            "date": "2025-11-06",
            "count": 1
          },
          {
            "date": "2025-11-27",
            "count": 1
          },
          {
            "date": "2025-12-18",
            "count": 1
          },
          {
            "date": "2026-01-06",
            "count": 1
          },
          {
            "date": "2026-01-22",
            "count": 1
          },
          {
            "date": "2026-01-30",
            "count": 1
          },
          {
            "date": "2026-03-10",
            "count": 1
          },
          {
            "date": "2026-03-26",
            "count": 1
          },
          {
            "date": "2026-03-28",
            "count": 1
          },
          {
            "date": "2026-04-13",
            "count": 1
          },
          {
            "date": "2026-04-19",
            "count": 1
          },
          {
            "date": "2026-05-19",
            "count": 1
          },
          {
            "date": "2026-05-21",
            "count": 1
          },
          {
            "date": "2026-05-30",
            "count": 1
          },
          {
            "date": "2026-06-05",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 1
          },
          {
            "date": "2026-06-15",
            "count": 1
          },
          {
            "date": "2026-06-27",
            "count": 1
          },
          {
            "date": "2026-06-30",
            "count": 1
          },
          {
            "date": "2026-07-17",
            "count": 1
          },
          {
            "date": "2026-07-18",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 207,
        "total_stars": 207
      },
      "open_issues_and_prs": 9
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "docs/Makefile",
        "python/pyabacus/noxfile.py",
        "source/Makefile",
        "source/source_basis/module_ao/1_Documents/sphinx/Makefile",
        "source/source_basis/module_pw/test/Makefile",
        "source/source_lcao/module_deepks/test/Makefile",
        "source/source_pw/module_pwdft/Makefile",
        "tools/SIAB/SimulatedAnnealing/backup_old_version/1_Source/Makefile",
        "tools/SIAB/SimulatedAnnealing/source/Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": true,
      "typecheck_configs": [],
      "toolchain_manifests": [],
      "largest_source_bytes": 2185065,
      "source_files_sampled": 2072,
      "oversized_source_files": 15,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "docs/requirements.txt"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {},
        "advisory_count": 0,
        "affected_count": 0,
        "assessed_count": 1,
        "malicious_count": 0,
        "assessed_package": "pypi:pyabacus@1.2.1",
        "unassessed_count": 0,
        "direct_affected_count": 0
      },
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "breathe",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "deepmodeling-sphinx",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "exhale",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "myst-parser",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sphinx",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sphinx-book-theme",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "sphinx-rtd-theme",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 12,
        "direct_count": 0,
        "indirect_count": 12
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 3,
        "merged_prs": 163,
        "open_issues": 6,
        "closed_ratio": 0.939,
        "closed_issues": 93,
        "closed_unmerged_prs": 110
      },
      "bus_factor": 6,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "dyzheng",
          "commits": 931,
          "avatar_url": "https://avatars.githubusercontent.com/u/49852742?v=4"
        },
        {
          "type": "User",
          "login": "Qianruipku",
          "commits": 577,
          "avatar_url": "https://avatars.githubusercontent.com/u/76200646?v=4"
        },
        {
          "type": "User",
          "login": "caic99",
          "commits": 539,
          "avatar_url": "https://avatars.githubusercontent.com/u/78061359?v=4"
        },
        {
          "type": "User",
          "login": "mohanchen",
          "commits": 504,
          "avatar_url": "https://avatars.githubusercontent.com/u/14967846?v=4"
        },
        {
          "type": "User",
          "login": "YuLiu98",
          "commits": 450,
          "avatar_url": "https://avatars.githubusercontent.com/u/77716030?v=4"
        },
        {
          "type": "User",
          "login": "hongriTianqi",
          "commits": 412,
          "avatar_url": "https://avatars.githubusercontent.com/u/18049272?v=4"
        },
        {
          "type": "User",
          "login": "wenfei-li",
          "commits": 390,
          "avatar_url": "https://avatars.githubusercontent.com/u/38569667?v=4"
        },
        {
          "type": "User",
          "login": "maki49",
          "commits": 378,
          "avatar_url": "https://avatars.githubusercontent.com/u/33978601?v=4"
        },
        {
          "type": "User",
          "login": "pxlxingliang",
          "commits": 283,
          "avatar_url": "https://avatars.githubusercontent.com/u/91927439?v=4"
        },
        {
          "type": "User",
          "login": "PeizeLin",
          "commits": 263,
          "avatar_url": "https://avatars.githubusercontent.com/u/78645006?v=4"
        }
      ],
      "contributors_sampled": 99,
      "top_contributor_share": 0.139
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "build_test_cmake.yml",
        "build_test_makefile.yml",
        "coverage.yml",
        "cuda.yml",
        "devcontainer.yml",
        "doxygen.yml",
        "dynamic.yml",
        "mirror_gitee.yml",
        "performance.yml",
        "pytest.yml",
        "test.yml",
        "version_check.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [],
      "has_editorconfig": true,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "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 12 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": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 0,
            "reason": "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": 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": "2f59a6fcfc787a024694201c77ccfe8549c80193",
        "ran_at": "2026-07-21T23:17:41Z",
        "aggregate_score": 4.2,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": true
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-19T16:43:21Z",
      "oldest_open_prs": [
        {
          "number": 361,
          "created_at": "2026-03-28T06:39:58Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 364,
          "created_at": "2026-04-06T07:59:39Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 371,
          "created_at": "2026-06-07T07:04:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2025-06-09T09:40:34Z",
      "ci_last_conclusion": "SKIPPED",
      "oldest_open_issues": [
        {
          "number": 274,
          "created_at": "2023-04-26T04:00:58Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 276,
          "created_at": "2023-05-08T08:29:18Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 334,
          "created_at": "2024-09-26T08:53:58Z",
          "last_comment_at": "2024-09-26T08:58:24Z",
          "last_comment_author": "kirk0830"
        },
        {
          "number": 350,
          "created_at": "2026-01-12T13:57:53Z",
          "last_comment_at": "2026-01-12T14:00:07Z",
          "last_comment_author": "runoobworker"
        },
        {
          "number": 352,
          "created_at": "2026-02-10T17:17:20Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 366,
          "created_at": "2026-05-06T07:45:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/abacusmodeling/abacus-develop",
    "host": "github.com",
    "name": "abacus-develop",
    "owner": "abacusmodeling"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 69,
      "inputs": {
        "security": 54,
        "vitality": 55,
        "community": 70,
        "governance": 74,
        "engineering": 90
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "moderate",
        "name": "Vitality",
        "value": 55,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "at_risk",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "commits_last_year": 12,
              "human_commit_share": 1,
              "days_since_last_push": 25,
              "active_weeks_last_year": 2
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 25 days ago",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 25
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "2/52 weeks with commits",
                "points": 1.4,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 2
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "12 commits in the last year",
                "points": 10,
                "status": "partial",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "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": "good",
            "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": 78,
            "inputs": {
              "releases_count": 82,
              "latest_release_tag": "v3.9.0.19",
              "releases_from_tags": false,
              "days_since_latest_release": 239,
              "mean_days_between_releases": 14
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "82 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 82
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 239 days ago",
                "points": 16.2,
                "status": "partial",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 239
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~14 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 14
                    }
                  }
                ],
                "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": "dormant",
              "guards": [
                "recent_release",
                "dependencies_clean"
              ],
              "signals": [
                "scorecard_unmaintained"
              ],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": 0,
              "unanswered_open_issues": 3,
              "days_since_last_merged_pr": 407,
              "days_since_last_human_commit": 351,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "no human commit for 351 days, with nothing left unanswered; held at dormant by a release within the year, no affected dependency",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_quiet",
                    "params": {
                      "days": 351
                    }
                  },
                  {
                    "code": "abandonment_guarded",
                    "params": {
                      "guards": "a release within the year, no affected dependency"
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 70,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "moderate",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 64,
            "inputs": {
              "forks": 287,
              "stars": 207,
              "watchers": 12,
              "growth_state": "organic",
              "growth_factor_pct": 100
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "207 stars",
                "points": 37.5,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 207
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "287 forks",
                "points": 20.5,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 287
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "12 watchers",
                "points": 5.8,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "recognized license (LGPL-3.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "LGPL-3.0"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 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": 6.3,
                "status": "met",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 74,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "excellent",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 92,
            "inputs": {
              "bus_factor": 6,
              "contributors_sampled": 99,
              "top_contributor_share": 0.139
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "6 contributor(s) cover half of all commits",
                "points": 48.6,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 14% of commits",
                "points": 19.4,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 14
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "99 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 99
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 12 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 67,
            "inputs": {
              "merged_prs": 163,
              "open_issues": 6,
              "closed_issues": 93,
              "issue_closed_ratio": 0.939,
              "closed_unmerged_prs": 110
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "94% of issues closed",
                "points": 43.9,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 94
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "163/273 decided PRs merged",
                "points": 22.8,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 163,
                      "decided": 273
                    }
                  }
                ],
                "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": null,
            "notes": [],
            "value": 61,
            "inputs": {
              "followers": 35,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "abacusmodeling",
              "public_repos": 17,
              "account_age_days": 2008
            },
            "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": "35 followers of abacusmodeling",
                "points": 11.2,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 35,
                      "login": "abacusmodeling"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "17 public repos, account ~5 yr old",
                "points": 20.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 17
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 5
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 90,
        "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": 100,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": true,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "12 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 12
                    }
                  }
                ],
                "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": 16,
                "status": "met",
                "details": [],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "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": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "topics": [],
              "has_wiki": true,
              "homepage": null,
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "moderate",
        "name": "Security",
        "value": 54,
        "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": 42,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 15,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 3,
              "scorecard_aggregate": 4.2
            },
            "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 12 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": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "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 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): No advisories left outstanding. Remaining weights renormalized. Matched the pypi:pyabacus@1.2.1 runtime dependency closure — what installing the published package pulls in — 1 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "no_advisories_left_outstanding"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "pypi:pyabacus@1.2.1",
                  "assessed": 1
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "source": "osv",
              "advisories": 0,
              "affected_packages": 0,
              "assessed_packages": 1,
              "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": "no indirect dependency carries a known advisory",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "no_indirect_advisories",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "no advisory 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": 1,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 3
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 64,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "at_risk",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.97,
              "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": "97 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 97,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 77,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "docs/Makefile",
                "python/pyabacus/noxfile.py",
                "source/Makefile",
                "source/source_basis/module_ao/1_Documents/sphinx/Makefile",
                "source/source_basis/module_pw/test/Makefile",
                "source/source_lcao/module_deepks/test/Makefile",
                "source/source_pw/module_pwdft/Makefile",
                "tools/SIAB/SimulatedAnnealing/backup_old_version/1_Source/Makefile",
                "tools/SIAB/SimulatedAnnealing/source/Makefile"
              ],
              "has_devcontainer": true,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "docs/Makefile, python/pyabacus/noxfile.py, source/Makefile, source/source_basis/module_ao/1_Documents/sphinx/Makefile, source/source_basis/module_pw/test/Makefile, source/source_lcao/module_deepks/test/Makefile, source/source_pw/module_pwdft/Makefile, tools/SIAB/SimulatedAnnealing/backup_old_version/1_Source/Makefile, tools/SIAB/SimulatedAnnealing/source/Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "docs/Makefile, python/pyabacus/noxfile.py, source/Makefile, source/source_basis/module_ao/1_Documents/sphinx/Makefile, source/source_basis/module_pw/test/Makefile, source/source_lcao/module_deepks/test/Makefile, source/source_pw/module_pwdft/Makefile, tools/SIAB/SimulatedAnnealing/backup_old_version/1_Source/Makefile, tools/SIAB/SimulatedAnnealing/source/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": 11,
                "status": "met",
                "details": [],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "C++ (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "C++"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "devcontainer, Dockerfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "devcontainer, 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": "dependency automation configured, none observed in the sampled commits",
                "points": 5,
                "status": "partial",
                "details": [
                  {
                    "code": "dependency_bot_config_only",
                    "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": "C++",
              "largest_source_bytes": 2185065,
              "source_files_sampled": 2072,
              "oversized_source_files": 15
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "C++ (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "C++"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "15/2072 source files over 60KB",
                "points": 54.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 2072,
                      "oversized": 15
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Could not fetch pypi package 'abacus_plot' from its registry",
    "pypi package 'pyabacus' points at a different repository (https://github.com/Tausand-dev/PyAbacus); excluded from ecosystem scoring"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-21T23:18:12.275993Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/a/abacusmodeling/abacus-develop.svg",
  "full_name": "abacusmodeling/abacus-develop",
  "license_state": "standard",
  "license_spdx": "LGPL-3.0"
}

Scores are signals, not warranties. They reflect publicly visible practices on GitHub — not a code audit, and not a security guarantee.

Missing data is excluded and weights renormalized, never scored as zero. Methodology is versioned and open: metrics v1.13.0, schema v0.26.0 — full methodology · metrics wiki.

How one result sits in the wider record: aggregate statisticsPyPI.