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

PrincetonUniversity / PsyNeuLink / 28116648026
84%
master: 85%

Build:
Build:
LAST BUILD BRANCH: devel
DEFAULT BRANCH: master
Ran 24 Jun 2026 06:33PM UTC
Jobs 1
Files 167
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

24 Jun 2026 05:20PM UTC coverage: 84.029% (+0.02%) from 84.008%
28116648026

push

github

web-flow
Fix PEC degenerate-likelihood warning re-printing stale parameter sets (#3571)

# Summary
The Parameter Estimation Composition (PEC) prints a warning summarizing
parameter sets that produced degenerate objective-function values (e.g.
BadLikelihoodWarning when a simulation has zero variance and the KDE
can't be computed). A user reported that this warning repeatedly lists
parameter sets that were not just evaluated — pinning the first bad set
seen to the top of the log and re-printing it on every subsequent
iteration, cluttering the output.

# Root cause
The optimizer callback (progress_callback in both
_fit_differential_evolution and _fit_optuna) summarized warnings from a
warns_with_params list that was never cleared. Each callback re-printed
the entire accumulated history of degenerate parameter sets, so the
earliest bad set kept reappearing regardless of what was actually
evaluated in the current iteration/trial.

A related latent bug: the per-evaluation warns buffer was only cleared
inside the display_iter branch, so with display_iter=False a stale
warns[-1] could be mis-attributed to a later (possibly warning-free)
parameter set.

# Changes
Extracted the duplicated "print summary + clear" logic into a new
_report_degenerate_warnings helper, which clears warns_with_params after
printing so each callback only reports sets that went degenerate since
the last callback.
Always clear the per-evaluation warns buffer at the end of each
evaluation (not just in the display_iter branch), and hoisted the
warning check into a single got_pec_warning flag so the captured warning
and parameters always come from the same evaluation.
Fixed a missing space in the footer text (fitting todata → fitting to
data).

11020 of 14380 branches covered (76.63%)

Branch coverage included in aggregate %.

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

37665 of 43558 relevant lines covered (86.47%)

0.86 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28116648026.1 24 Jun 2026 06:33PM UTC 167
84.03
GitHub Action Run
Source Files on build 28116648026
  • Tree
  • List 167
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • ddbc0e83 on github
  • Prev Build on devel (#28069691708)
  • Next Build on devel (#28132814695)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc