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

pirl-unc / hitlist / 33463069439
81%

Build:
DEFAULT BRANCH: main
Ran 01 Sep 2026 02:39AM UTC
Jobs 1
Files 30
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

01 Sep 2026 02:34AM UTC coverage: 81.084% (-0.05%) from 81.13%
33463069439

push

github

web-flow
v1.54.0: stop asserting a control arm where the arm is unknown (#392) (#395)

* v1.54.0: stop asserting a control arm where the arm is unknown (#392)

Two separable defects in the APM columns on `generate_observations_table`,
both found by measuring the corpus rather than reading the code.

`study_apm_perturbed` was routed through the sample join, so every row whose
arm could not be resolved reported False -- denying a perturbation the deposit
plainly records. That fact is a property of the PMID and needs no sample match
at all. It now joins on PMID alongside `quantification_method`, which was
already doing exactly this. All 221,930 affected rows are corrected, and five
studies that were previously invisible reappear: the corpus now shows 29
APM-perturbed studies covering 1,333,793 observations, up from 24 and
1,284,775. Those five had no attributable row anywhere, so the panel context
was lost entirely.

`apm_perturbed` was a plain bool with no unknown state, so `_BOOL_META_COLS`
forced unresolved rows to False -- indistinguishable from a real WT control.
Among rows in APM studies that do have an arm, 32.5% are perturbed, so a
comparable share of the unattributed block was mislabeled, and mislabeled
toward the control class. That is the one direction that cancels the KO-vs-WT
contrast rather than merely adding noise. It is now a tri-state string
matching `is_control_arm`: 270,948 unresolved rows read "" instead of False.

`ms_samples` never emits the blank -- every row there is a sample -- so the
column has one vocabulary across both tables and the unknown state simply goes
unused where it cannot arise. `study_apm_perturbed` stays a real bool, since a
deposit's perturbations list is either present or absent.

`_BOOL_META_COLS` is now empty and kept as the seam: the coalesce still needs
to know which meta columns are not strings, and the next bool one should not
have to rediscover the pyarrow constraint.

BREAKING: `apm_perturbed` is "true"/"false"/""... (continued)

6134 of 7565 relevant lines covered (81.08%)

0.81 hits per line

Coverage Regressions

Lines Coverage ∆ File
153
85.76
-0.35% export.py
Jobs
ID Job ID Ran Files Coverage
1 33463069439.1 01 Sep 2026 02:39AM UTC 30
81.08
GitHub Action Run
Source Files on build 33463069439
  • Tree
  • List 30
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #33463069439
  • 031dfab9 on github
  • Prev Build on main (#33456779337)
  • Next Build on main (#33540198140)
  • Delete
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