• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

johanjoensson / rspt2spectra / 31096220512
79%

Build:
DEFAULT BRANCH: master
Ran 06 Aug 2026 11:11AM UTC
Jobs 4
Files 15
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Aug 2026 08:54AM UTC coverage: 80.034% (+0.2%) from 79.83%
31096220512

push

github

johanjoensson
Declare spin_ordering: down_first as a structural guarantee, not a measurement

build_h0 now writes spin_ordering: "down_first" unconditionally, and
write_h0_file adds "spin_ordering" to required_features whenever the
caller declares it, so an older reader that doesn't understand the key
must refuse rather than silently mismatch it.

The convention is not detected per file -- it follows from how RSPt lays
out its arrays. green_trunk_interface.F90's lda_mlmsatomicqn assigns
qn(2, :offset) = -1 (2*ms, spin down) to the first packed block and
qn(2, offset+1:) = 1 (spin up) to the second, for both the local
Hamiltonian and the rotation matrices RSPt prints; generate_rspt_T_matrix
already reproduces that block order, so no permutation is ever needed.
This happens to already match c2i's own convention (s=0 first, s=0=down),
which is why no checked workload ever needed the spin blocks swapped.

The originally planned empirical check (compare a sign to a reported
moment on a spin-split workload) turned out not to be executable: every
stored RSPt workload's printed Local hamiltonian and hybridization
function are spin-degenerate between the two blocks, even for magnetic
materials like FCC Ni -- confirming and generalizing the earlier BCC_Fe
finding rather than contradicting it. The source-level argument does not
depend on such a workload existing.

Also fixes a real bug this surfaced: the golden_h0_v1_index.h0 fixture
(shared with impurityModel, hash-pinned) already had a "spin_ordering"
header key but never listed it in required_features -- exactly the
declared-but-dead state that made the key silently ignorable everywhere.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

3 of 3 new or added lines in 1 file covered. (100.0%)

129 existing lines in 4 files now uncovered.

1888 of 2359 relevant lines covered (80.03%)

3.2 hits per line

Coverage Regressions

Lines Coverage ∆ File
97
38.28
9.71% src/rspt2spectra/scripts/build_h0.py
12
77.78
-22.22% src/rspt2spectra/op_printer.py
11
90.98
15.08% src/rspt2spectra/readfile.py
9
26.67
-60.0% src/rspt2spectra/h2imp.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.12 - 31096220512.1 06 Aug 2026 11:11AM UTC 15
80.03
GitHub Action Run
2 python-3.11 - 31096220512.2 06 Aug 2026 11:11AM UTC 15
80.03
GitHub Action Run
3 python-3.14 - 31096220512.3 06 Aug 2026 11:11AM UTC 15
80.03
GitHub Action Run
4 python-3.13 - 31096220512.4 06 Aug 2026 11:11AM UTC 15
80.03
GitHub Action Run
Source Files on build 31096220512
  • Tree
  • List 15
  • Changed 4
  • Source Changed 3
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #31096220512
  • b1b3b3b7 on github
  • Prev Build on master (#29685580649)
  • Next Build on master (#33256169623)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc