{
  "_class" : "org.jenkinsci.plugins.workflow.job.WorkflowRun",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.triggers.SCMTrigger$SCMTriggerCause",
          "shortDescription" : "Started by an SCM change"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "jenkins.metrics.impl.TimeInQueueAction",
      "blockedDurationMillis" : 0,
      "blockedTimeMillis" : 0,
      "buildableDurationMillis" : 0,
      "buildableTimeMillis" : 472582,
      "buildingDurationMillis" : 3506389,
      "executingTimeMillis" : 5439534,
      "executorUtilization" : 1.55,
      "subTaskCount" : 5,
      "waitingDurationMillis" : 5398,
      "waitingTimeMillis" : 5398
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.libs.LibrariesAction"
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "refs/remotes/origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 20,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
            "branch" : [
              {
                "SHA1" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
                "name" : "refs/remotes/origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
            "branch" : [
              {
                "SHA1" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
                "name" : "refs/remotes/origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
        "branch" : [
          {
            "SHA1" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
            "name" : "refs/remotes/origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "https://github.com/larson-group/clubb.git"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    },
    {
      "_class" : "org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.job.views.FlowGraphAction"
    },
    {
      
    },
    {
      
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#20",
  "duration" : 3506389,
  "estimatedDuration" : 3535703,
  "executor" : None,
  "fullDisplayName" : "clubb_stats_output_consistency #20",
  "id" : "20",
  "keepLog" : False,
  "number" : 20,
  "queueId" : 11287,
  "result" : "SUCCESS",
  "timestamp" : 1792570567634,
  "url" : "https://carson.math.uwm.edu/jenkins/job/clubb_stats_output_consistency/20/",
  "changeSets" : [
    {
      "_class" : "hudson.plugins.git.GitChangeSetList",
      "items" : [
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "clubb_python_api/clubb_python/microphys.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_correlations_vs_fortran.py",
            "clubb_python_api/clubb_python/clubb_api.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_adg2_driver_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_clip_covar_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_close_luhar_pdf_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_xpyp_term_ta_godunov_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_roots_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_comp_corrs_binormal_vs_fortran.py",
            "tests/README.md",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calendar_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_compute_gamma_skw_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_wp3_on_wp2_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pdf_utilities_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_ddzt_umvm_sqd_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_compute_sigma_sqd_w_vs_fortran.py",
            "clubb_python_api/f2py_fortran_wrappers/interpolation_wrapper.F90",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_fill_holes_mean_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_hydrostatic_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pos_definite_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_Nc_Ncn_eqns_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_hybrid_pdf_main_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_luhar_params_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_limits_f_x_responder_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_remapping_ppm_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mono_flux_limiter_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_interpolation_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_spurious_source_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cloud_drop_sed_vs_fortran.py",
            "jenkins_tests/clubb_jax/Jenkinsfile",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_w_up_in_cloud_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cos_solar_zen_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sfc_varnce_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_ly93_pdf_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sponge_damp_xp23_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sunray_sw_vs_fortran.py",
            "clubb_python_api/clubb_f2py.pyf",
            ".agents/skills/clubb-pytests/SKILL.md",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_upxp_vs_fortran.py",
            "clubb_python_api/f2py_fortran_wrappers/cloud_sed_module_wrapper.F90",
            "clubb_jax/README.md",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cholesky_factor_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mirror_lower_triangular_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_binormal_moments_vs_fortran.py",
            "clubb_jax/src/CLUBB_core/advance_helper_module.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_skx_func_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_pdf_main_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pvertinterp_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calculate_thvm_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_clip_variance_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_advance_helper_extras_vs_fortran.py",
            "clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cholesky_corr_mtx_approx_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_rcm_sat_adj_vs_fortran.py",
            "tests/run_pytests.sh",
            "clubb_jax/pytests/f2py_unit_test_helpers.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_T_in_K_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_setter_var_params_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/conftest.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_grid_operators_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_advance_xp3_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diffusion_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_solver_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_config_flags_complete_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_smooth_heaviside_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mixing_length_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calculate_w_responder_params_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_remapping_module_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_saturation_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_tsdadg_pdf_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_clip_skewness_vs_fortran.py",
            "clubb_python_api/clubb_python/CLUBB_core/interpolation.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mean_adv_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_luhar_3d_driver_vs_fortran.py",
            "clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_responder_params_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_coefs_semiimpl_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_xp3_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_xpyp_term_ta_pdf_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_param_names_vs_fortran.py",
            "clubb_python_api/clubb_python/CLUBB_core/skx_module.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_pdf_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pdf_moment_integrals_vs_fortran.py"
          ],
          "commitId" : "bb08268b3348ef71f7eec35eb0fb5ee4eb10197d",
          "timestamp" : 1792526227000,
          "author" : {
            "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/noreply",
            "fullName" : "noreply"
          },
          "authorEmail" : "noreply@github.com",
          "comment" : "Restore jax fortran oracle tests (#1404)\u000a\u000aRestored clubb_jax vs clubb_f2py fortran bindings tests that compare the outputs of clubb_jax functions directly to their compiled fortran counterparts.\u000a\u000aclubb_jax changes are minimal:\u000a\u000aUse hardcoded pi that matches the pi used in fortran instead of jnp.pi\u000aremove the clubb_release hardcoded path from the gases_ckd_data.py parser.\u000a",
          "date" : "2026-10-20 14:57:07 -0500",
          "id" : "bb08268b3348ef71f7eec35eb0fb5ee4eb10197d",
          "msg" : "Restore jax fortran oracle tests (#1404)",
          "paths" : [
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_compute_gamma_skw_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cholesky_factor_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_grid_operators_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_roots_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cos_solar_zen_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/README.md"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_adg2_driver_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_hydrostatic_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_smooth_heaviside_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/clubb_python/clubb_api.py"
            },
            {
              "editType" : "edit",
              "file" : "tests/run_pytests.sh"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_close_luhar_pdf_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_ly93_pdf_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sunray_sw_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_advance_helper_extras_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_clip_variance_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_coefs_semiimpl_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_comp_corrs_binormal_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_xpyp_term_ta_godunov_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_xpyp_term_ta_pdf_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_skx_func_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_python_api/clubb_python/microphys.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_binormal_moments_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pdf_utilities_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mirror_lower_triangular_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_correlations_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_advance_xp3_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_rcm_sat_adj_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diffusion_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mono_flux_limiter_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_wp3_on_wp2_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_luhar_3d_driver_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sfc_varnce_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_solver_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mean_adv_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_pdf_main_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_responder_params_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/CLUBB_core/advance_helper_module.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_param_names_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_pdf_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_ddzt_umvm_sqd_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_upxp_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/clubb_f2py.pyf"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_xp3_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sponge_damp_xp23_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_clip_covar_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_config_flags_complete_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_spurious_source_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_limits_f_x_responder_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_compute_sigma_sqd_w_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pos_definite_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cloud_drop_sed_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_T_in_K_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pdf_moment_integrals_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cholesky_corr_mtx_approx_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_tsdadg_pdf_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "jenkins_tests/clubb_jax/Jenkinsfile"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_hybrid_pdf_main_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90"
            },
            {
              "editType" : "edit",
              "file" : ".agents/skills/clubb-pytests/SKILL.md"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/f2py_fortran_wrappers/interpolation_wrapper.F90"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_pvertinterp_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_remapping_module_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_Nc_Ncn_eqns_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_fill_holes_mean_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "tests/README.md"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_luhar_params_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_w_up_in_cloud_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_setter_var_params_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calendar_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calculate_thvm_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calculate_w_responder_params_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_remapping_ppm_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_python_api/f2py_fortran_wrappers/cloud_sed_module_wrapper.F90"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_clip_skewness_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/clubb_python/CLUBB_core/interpolation.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/clubb_python/CLUBB_core/skx_module.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/conftest.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_interpolation_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_mixing_length_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_saturation_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/f2py_unit_test_helpers.py"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "clubb_jax/src/CLUBB_core/fill_holes.py",
            ".agents/skills/clubb-documentation/language/SKILL.md",
            "clubb_jax/pytests/auto_llm_generated_pytests/test_multicolumn_microphys_adapters.py",
            "clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py",
            ".agents/skills/clubb-documentation/change-messages/SKILL.md"
          ],
          "commitId" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
          "timestamp" : 1792549343000,
          "author" : {
            "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/noreply",
            "fullName" : "noreply"
          },
          "authorEmail" : "noreply@github.com",
          "comment" : "Fix per-column inputs in JAX microphysics (#1407)\u000a\u000a* Align JAX microphysics with per-column Fortran inputs\u000a\u000aPass each column’s parameters into PDF preparation and its own grid spacing into hydrometeor hole filling after the master multi-column fix. The previous scalar remapping disagreed with current Fortran from step 2.\u000a\u000aSix focused eager/JIT checks pass, covering column independence, conserved mass and derivatives. Both regressions detect the retained pre-fix adapters; full case comparisons are in progress.\u000a\u000a(cherry picked from commit 7fc8280d9ce3fe0ec51bf5e7f3cfd3a0e7c8838a)\u000a\u000a* Explain PR problems before describing their solutions\u000a\u000aChange-first PR openings make their motivation harder to follow. Use\u000aMotivation and Change to describe the problem first, then its cause and\u000athe proposed solution; align the language guidance with that order.\u000a\u000aBoth documentation skills validate, and relative-link checks pass.\u000a",
          "date" : "2026-10-20 21:22:23 -0500",
          "id" : "82c8fdb39580f015d26f9cb021b8376696d96b7f",
          "msg" : "Fix per-column inputs in JAX microphysics (#1407)",
          "paths" : [
            {
              "editType" : "edit",
              "file" : ".agents/skills/clubb-documentation/language/SKILL.md"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/CLUBB_core/fill_holes.py"
            },
            {
              "editType" : "edit",
              "file" : ".agents/skills/clubb-documentation/change-messages/SKILL.md"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/test_multicolumn_microphys_adapters.py"
            }
          ]
        }
      ],
      "kind" : "git"
    }
  ],
  "culprits" : [
    {
      "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/noreply",
      "fullName" : "noreply"
    }
  ],
  "inProgress" : False,
  "nextBuild" : None,
  "previousBuild" : {
    "number" : 19,
    "url" : "https://carson.math.uwm.edu/jenkins/job/clubb_stats_output_consistency/19/"
  }
}