Skip to content

Bump AGNI to restore the SOCRATES thermal source-function grid - #866

Merged
timlichtenberg merged 2 commits into
mainfrom
tl/fix-banded-olr-tolerance
Sep 10, 2026
Merged

timlichtenberg merged 2 commits into
mainfrom
tl/fix-banded-olr-tolerance

Conversation

@timlichtenberg

Copy link
Copy Markdown
Member

Description

Bump the AGNI pin from c7ffdf00 to 8a494d7c to restore the SOCRATES thermal source-function tabulation grid.

The nightly Integration tier fails on test_transparent_banded_olr_recovers_blackbody_emission: the banded transparent OLR at T_surf = 1500 K overshoots the black-body emission by about 0.073% (F_olr 287271.57 vs 287062.70 W/m^2, tolerance RTOL_SOCRATES = 5e-4), on both ubuntu and macos with an identical value, so it is not a toolchain effect. It traces to AGNI commit 66a61da0, which coarsened the prep_spec thermal source-function grid from a roughly 3.25 K step to a 25 K step; the coarser tabulation raises the banded-RT interpolation error enough to tip this tolerance. AGNI restored a finer grid upstream (ba7bec1e, then 8a494d7c at a 5 K step as a runtime-vs-accuracy compromise), so moving the pin forward to 8a494d7c recovers the accuracy while keeping the hydrostatic-integration and spin parameters that the previous pin bump added. The SOCRATES pin is unchanged and still satisfies AGNI's minimum-version check.

Validation of changes

Test configuration: Linux and macOS, Python 3.12, real SOCRATES spectral files.

Built AGNI at 8a494d7c and ran test_transparent_banded_olr_recovers_blackbody_emission: it passes over the full surface-temperature sweep (1000, 1500, 2000, 3000 K), all inside RTOL_SOCRATES. The full AGNI integration tier (-m 'integration and not slow') passes (44 of 44). The change to pyproject.toml is the single-line pin bump; the diff carries no other file. I confirmed by reverting only the thermal-grid constants in the previous pin that the test flips from failing to passing, which isolates the grid coarsening as the cause.

Checklist

  • I have followed the contributing guidelines
  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • My changes generate no new warnings or errors
  • I have checked that the tests still pass on my computer
  • I have updated the docs, as appropriate
  • I have added tests for these changes, as appropriate
  • I have checked that all dependencies have been updated, as required

AGNI c7ffdf00 coarsened the SOCRATES thermal-source-function table from a 3.25 K step to a 25 K step, which pushed the banded-OLR interpolation error in the transparent-limit test past its tolerance. Move to 8a494d7c, which restores a 5 K step; the transparent blackbody test now passes across the full T_surf sweep (1000-3000 K) within RTOL_SOCRATES.

SOCRATES stays pinned at 43b86d4d. Its reported version 2603.9 still meets AGNI's new minimum-version check.
@timlichtenberg
timlichtenberg requested a review from a team as a code owner September 10, 2026 01:47
The AGNI badge in the module-version table still pointed at c7ffdf00 after the pin moved to 8a494d7c. Regenerate the table from pyproject.toml.
@codecov

codecov Bot commented Sep 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.46%. Comparing base (30bec52) to head (8d10be2).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #866   +/-   ##
=======================================
  Coverage   93.45%   93.46%           
=======================================
  Files         113      113           
  Lines       16797    16797           
  Branches     2992     2992           
=======================================
+ Hits        15698    15699    +1     
+ Misses       1093     1092    -1     
  Partials        6        6           
Flag Coverage Δ
unit-tests 87.25% <ø> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@timlichtenberg
timlichtenberg merged commit e2fd794 into main Sep 10, 2026
14 checks passed
@timlichtenberg
timlichtenberg deleted the tl/fix-banded-olr-tolerance branch September 10, 2026 02:03
@egpbos

egpbos commented Sep 10, 2026

Copy link
Copy Markdown
Member

This was a (partial?) duplicate of #863.

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.

2 participants