Skip to content

fix: guard MCMC thinning and short-chain autocorrelation - #1730

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/mcmc-short-chain-guards
Oct 25, 2026
Merged

Jammy2211 merged 1 commit into
mainfrom
feature/mcmc-short-chain-guards

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Short, well-mixed Emcee/Zeus chains could request thin=0 and crash; Emcee also tried to estimate previous autocorrelations from an empty chain. Clamp thinning to at least one and return an unavailable previous estimate for an empty history, so convergence remains false until there is evidence. Remove the check_size=5 workarounds from the real-sampler alignment tests.

Closes #1725.

API Changes

No signature or output-identifier changes. Chains with autocorrelation time below two use thin=1 (no thinning). This repairs previously failing runs; normal thinning and paired sample/log-probability ordering are unchanged.

Validation

Full library suite: 3922 passed, 1 skipped, 1 xfailed (Python 3.12.14). Focused MCMC tests: 14 passed, including real Emcee/Zeus reduced fits with default check_size=100. Additional real Emcee smoke: 10 walkers, 50 steps, test mode disabled, samples built and previous_times=None. Six new regression cases fail on unchanged main (zero thin and empty previous chain), while ordinary thinning remains unchanged. Author diff review passed.

No downstream API migration. The actual search.fit integration tests and real 50-step smoke exercise the changed paths; the six-workspace smoke matrix was not run. Required CI remains pending at PR creation.

Heart and authorization

User authorized "Find 4 grouped tasks and do them", then "Yes I authorise" after the RED gate was disclosed. Development PR only; no merge or release. Fresh published vitals: organism RED, PyAutoFit scope GREEN; local readiness STALE (fresh checkout has no release evidence). This does not repair or clear the organism's RED.

Disclosed RED reasons
  • install verification FAILED (testpypi; checks F)
  • release validation FAILED (stage integrate)
  • PyAutoHeart/workflows/Release Integrate: failure
  • manifest_drift/checks/workspace checkouts (manifest ↔ disk): red
  • Release readiness: release validation FAILED (stage integrate)
  • Release readiness: install verification FAILED (testpypi; checks F)
  • PyAutoArray/test_autoarray/inversion/inversion/interferometer/test_interferometer.py::test__interferometer_sparse_operator__mapped_reconstructed_data_dict_matc…
  • Unit-test timing: 1 test regressions (>3× baseline), 11 slow (>1.5×)
  • Release validation: NOT release_ready — v2026.10.25.1.dev83701 profile=release (2026-10-25T07:21:05+00:00)
  • validation_report/stages/integrate: fail
  • verify_install FAILED: verify_install FAILED
  • F: colab gate: finufft (declared by autoarray, absent on Colab, imported)
  • Install verification: FAILED (testpypi; F) (2026-10-25T07:42:48.134987+00:00)
  • verify_install: red
  • PyAutoBrain: red
  • PyAutoLens: red
  • autolens_profiling: red
  • Worktree drift: 1 orphan / 0 missing / 3 dirty

@Jammy2211 Jammy2211 added the pending-release PR queued for the next release build label Oct 25, 2026 — with ChatGPT Codex Connector
@Jammy2211
Jammy2211 merged commit 5f77098 into main Oct 25, 2026
5 checks passed
@Jammy2211
Jammy2211 deleted the feature/mcmc-short-chain-guards branch October 25, 2026 15:24
@pyautolabs-bot pyautolabs-bot Bot removed the pending-release PR queued for the next release build label Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix: guard MCMC thinning and short-chain autocorrelation

1 participant