What's Changed
- Revert Tier 4a milestones 3 and 4 (#141, #142) — Sens path didn't deliver wall-time by @roninsightrx in #145
- perf(ode): FSAL stage reuse in DP-RK45 (~11% wall on FOCEI ODE fits) by @roninsightrx in #146
- perf(estimation): bump saem_n_mh_steps default 3 → 10 to escape Emax PKPD cold-start basin by @roninsightrx in #148
- perf(estimation): switch SAEM M-step from SLSQP to BOBYQA — escapes Emax-Hill identifiability ridge by @roninsightrx in #151
- docs(estimation): scope
optimizerto FOCE/FOCEI + GN-hybrid polish by @roninsightrx in #153 - fix(estimation): regularize FD Hessian before covariance inversion [closes #129] by @roninsightrx in #154
- feat(estimation): switch default outer optimizer from SLSQP to BOBYQA by @roninsightrx in #155
- fix(tests): re-anchor GN-TR baselines to Almquist Laplace minimum [closes #144] by @roninsightrx in #156
- fix(tests): re-anchor SAEM & stagnation-guard slow tests after recent improvements by @roninsightrx in #157
- feat(types): add structured WarningEntry with severity/category to FitResult by @TeunP in #152
- test(types): round-trip every engine warning message through classify_warning by @TeunP in #158
- fix(api): error early when IOV model has no occasion labels in dataset by @TeunP in #159
- fix(parser): classify IIV+IOV and derived-base etas as log-normal [closes ferx-r#55] by @TeunP in #161
- fix(tests): widen IOV cold-start SLSQP tolerance + run all slow-test binaries by @roninsightrx in #162
- feat(parser): flexible FIX placement for omega, sigma, kappa, and theta by @TeunP in #165
- feat(parser): warn on declared-but-unused parameters by @TeunP in #166
- feat(api): compute kappa shrinkage for IOV models by @TeunP in #167
- fix(tests): relax iov_chain SAEM-improvement floor + fix nca_sweep fixture by @roninsightrx in #164
- chore: add CodeFactor badge to README by @roninsightrx in #168
- test(suggest_start): cover sweep.rs uncovered branches + count integration tests in coverage by @roninsightrx in #169
Full Changelog: v0.1.0...v0.1.5