Skip to content

feat: warn when PointSolver extent approaches observed positions - #764

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/pointsolver-extent-sanity-check
Oct 2, 2026
Merged

Jammy2211 merged 1 commit into
mainfrom
feature/pointsolver-extent-sanity-check

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

Add a construction-time PointSolver extent diagnostic to AnalysisPoint, implementing the next single-source CPU campaign member. Warn when observed positions lie outside or within 2 * initial scale + 3 * position sigma of any grid edge. Explain that observed-position coverage does not prove image completeness across the model prior.

Emit an INFO performance hint only when both solver half-widths exceed three times the padded observed envelope about the grid midpoint. Suppress that hint in test/small-dataset mode. Preserve custom/mock solvers without extent metadata and absent diagnostic inputs.

API Changes

No signature, return value, solver default, or likelihood-path changes. AnalysisPoint now logs once at construction: WARNING for insufficient observed-position coverage, INFO for a substantially oversized grid. The latter is suppressed in test/small-dataset mode. No migration required.

Test Plan

  • 27 focused NumPy tests passed (all four edges, scale/noise margin, offset bounds, oversize threshold, missing inputs, test modes and one check per analysis).
  • Standalone workspace JAX regression passed: unchanged -83.38049778 vmap pin (rtol 1e-4), JIT/NumPy parity and no diagnostic logs during repeated likelihood evaluations.
  • Full library suite: 820 passed, 1 expected failure, 44 warnings (1413.88 s).
  • Heart isolated workspace smoke: all 33 distinct scripts passed across retained recovery reports; new regression 56.2 s under unchanged 300 s cap.
  • Heart YELLOW (85): human acknowledged via “prm and continue” after the reported checkpoint. Reasons remain manifest drift (1 mismatch) and missing release rehearsal. Development shipping only; CI and merge gates remain in force.

Campaign scope

Single-source only. No extent, scale or MAX_CONTAINING_SIZE defaults change. Per-package extent choices remain a separate phase.

Refs #763. Companion workspace and campaign-record PRs will be linked here.

@Jammy2211

Copy link
Copy Markdown
Collaborator Author

Workspace companion: PyAutoLabs/autolens_workspace_test#338. Campaign record: PyAutoLabs/autolens_profiling#363. Human acknowledged the reported Heart YELLOW development checkpoint via “prm and continue”. Library-first and workspace release gates remain in force.

@Jammy2211
Jammy2211 merged commit 0dd4208 into main Oct 2, 2026
4 checks passed
@Jammy2211
Jammy2211 deleted the feature/pointsolver-extent-sanity-check branch October 2, 2026 10:41
@Jammy2211 Jammy2211 removed the pending-release PR queued for the next release build label Oct 7, 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.

1 participant