{
  "_class" : "org.jenkinsci.plugins.workflow.job.WorkflowRun",
  "actions" : [
    {
      "_class" : "hudson.model.ParametersAction",
      "parameters" : [
        {
          "_class" : "net.uaznia.lukanus.hudson.plugins.gitparameter.GitParameterValue",
          "name" : "BRANCH",
          "value" : "origin/mixing_length_fix_2"
        },
        {
          "_class" : "hudson.model.BooleanParameterValue",
          "name" : "INCLUDE_GENERATED_PYTESTS",
          "value" : false
        }
      ]
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UserIdCause",
          "shortDescription" : "Started by user agent_dev",
          "userId" : "agent_dev",
          "userName" : "agent_dev"
        }
      ]
    },
    {
      "_class" : "jenkins.metrics.impl.TimeInQueueAction",
      "blockedDurationMillis" : 0,
      "blockedTimeMillis" : 0,
      "buildableDurationMillis" : 0,
      "buildableTimeMillis" : 106865,
      "buildingDurationMillis" : 404755,
      "executingTimeMillis" : 273206,
      "executorUtilization" : 0.67,
      "subTaskCount" : 1,
      "waitingDurationMillis" : 9293,
      "waitingTimeMillis" : 9293
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "refs/remotes/origin/remove_perl" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 9,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "551dc8ee42fffabccdde729dd122e5c54b113740",
            "branch" : [
              {
                "SHA1" : "551dc8ee42fffabccdde729dd122e5c54b113740",
                "name" : "refs/remotes/origin/remove_perl"
              }
            ]
          },
          "revision" : {
            "SHA1" : "551dc8ee42fffabccdde729dd122e5c54b113740",
            "branch" : [
              {
                "SHA1" : "551dc8ee42fffabccdde729dd122e5c54b113740",
                "name" : "refs/remotes/origin/remove_perl"
              }
            ]
          }
        },
        "refs/remotes/origin/mixing_length_fix_2" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 56,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "a4f1c774ef18f9a896d27e51bc6b867baec68118",
            "branch" : [
              {
                "SHA1" : "a4f1c774ef18f9a896d27e51bc6b867baec68118",
                "name" : "refs/remotes/origin/mixing_length_fix_2"
              }
            ]
          },
          "revision" : {
            "SHA1" : "a4f1c774ef18f9a896d27e51bc6b867baec68118",
            "branch" : [
              {
                "SHA1" : "a4f1c774ef18f9a896d27e51bc6b867baec68118",
                "name" : "refs/remotes/origin/mixing_length_fix_2"
              }
            ]
          }
        },
        "refs/remotes/origin/run_scripts_cleanup" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 16,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8789ee4aa42564f9dc0e07c553a7cde89fb6cd35",
            "branch" : [
              {
                "SHA1" : "8789ee4aa42564f9dc0e07c553a7cde89fb6cd35",
                "name" : "refs/remotes/origin/run_scripts_cleanup"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8789ee4aa42564f9dc0e07c553a7cde89fb6cd35",
            "branch" : [
              {
                "SHA1" : "8789ee4aa42564f9dc0e07c553a7cde89fb6cd35",
                "name" : "refs/remotes/origin/run_scripts_cleanup"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_python_fix" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 36,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "c8ba90242c2b1852449f71f939c9239c9e3925f9",
            "branch" : [
              {
                "SHA1" : "c8ba90242c2b1852449f71f939c9239c9e3925f9",
                "name" : "refs/remotes/origin/clubb_python_fix"
              }
            ]
          },
          "revision" : {
            "SHA1" : "c8ba90242c2b1852449f71f939c9239c9e3925f9",
            "branch" : [
              {
                "SHA1" : "c8ba90242c2b1852449f71f939c9239c9e3925f9",
                "name" : "refs/remotes/origin/clubb_python_fix"
              }
            ]
          }
        },
        "refs/remotes/origin/script_arg_cleanup" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 44,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1c0b48510ab117eb44b876f950c76eff9d133c6c",
            "branch" : [
              {
                "SHA1" : "1c0b48510ab117eb44b876f950c76eff9d133c6c",
                "name" : "refs/remotes/origin/script_arg_cleanup"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1c0b48510ab117eb44b876f950c76eff9d133c6c",
            "branch" : [
              {
                "SHA1" : "1c0b48510ab117eb44b876f950c76eff9d133c6c",
                "name" : "refs/remotes/origin/script_arg_cleanup"
              }
            ]
          }
        },
        "refs/remotes/origin/jenkins_test_cleanup" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 43,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "9f57da44abd6db2352506aff45f2a848032e994e",
            "branch" : [
              {
                "SHA1" : "9f57da44abd6db2352506aff45f2a848032e994e",
                "name" : "refs/remotes/origin/jenkins_test_cleanup"
              }
            ]
          },
          "revision" : {
            "SHA1" : "9f57da44abd6db2352506aff45f2a848032e994e",
            "branch" : [
              {
                "SHA1" : "9f57da44abd6db2352506aff45f2a848032e994e",
                "name" : "refs/remotes/origin/jenkins_test_cleanup"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_organization_part2" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 7,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "459670f95f44c50b0d802d4c8284399339b446e3",
            "branch" : [
              {
                "SHA1" : "459670f95f44c50b0d802d4c8284399339b446e3",
                "name" : "refs/remotes/origin/clubb_organization_part2"
              }
            ]
          },
          "revision" : {
            "SHA1" : "459670f95f44c50b0d802d4c8284399339b446e3",
            "branch" : [
              {
                "SHA1" : "459670f95f44c50b0d802d4c8284399339b446e3",
                "name" : "refs/remotes/origin/clubb_organization_part2"
              }
            ]
          }
        },
        "refs/remotes/origin/pytest_cleanup" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 48,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "56aa733c290ca067dc886adda228251f718712ad",
            "branch" : [
              {
                "SHA1" : "56aa733c290ca067dc886adda228251f718712ad",
                "name" : "refs/remotes/origin/pytest_cleanup"
              }
            ]
          },
          "revision" : {
            "SHA1" : "56aa733c290ca067dc886adda228251f718712ad",
            "branch" : [
              {
                "SHA1" : "56aa733c290ca067dc886adda228251f718712ad",
                "name" : "refs/remotes/origin/pytest_cleanup"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_organization_part3" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 8,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "1b6d8b99367e3980a2a9873faa50fe4be632b47e",
            "branch" : [
              {
                "SHA1" : "1b6d8b99367e3980a2a9873faa50fe4be632b47e",
                "name" : "refs/remotes/origin/clubb_organization_part3"
              }
            ]
          },
          "revision" : {
            "SHA1" : "1b6d8b99367e3980a2a9873faa50fe4be632b47e",
            "branch" : [
              {
                "SHA1" : "1b6d8b99367e3980a2a9873faa50fe4be632b47e",
                "name" : "refs/remotes/origin/clubb_organization_part3"
              }
            ]
          }
        },
        "refs/remotes/origin/microphys_loop_push" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 39,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "0c683a909cfc6e2e5c7306e0258c018d3a88dd85",
            "branch" : [
              {
                "SHA1" : "0c683a909cfc6e2e5c7306e0258c018d3a88dd85",
                "name" : "refs/remotes/origin/microphys_loop_push"
              }
            ]
          },
          "revision" : {
            "SHA1" : "0c683a909cfc6e2e5c7306e0258c018d3a88dd85",
            "branch" : [
              {
                "SHA1" : "0c683a909cfc6e2e5c7306e0258c018d3a88dd85",
                "name" : "refs/remotes/origin/microphys_loop_push"
              }
            ]
          }
        },
        "refs/remotes/origin/test_fix" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 32,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "87d4e8d1298d8c6196811bb634cbb3af6e9b0fd8",
            "branch" : [
              {
                "SHA1" : "87d4e8d1298d8c6196811bb634cbb3af6e9b0fd8",
                "name" : "refs/remotes/origin/test_fix"
              }
            ]
          },
          "revision" : {
            "SHA1" : "87d4e8d1298d8c6196811bb634cbb3af6e9b0fd8",
            "branch" : [
              {
                "SHA1" : "87d4e8d1298d8c6196811bb634cbb3af6e9b0fd8",
                "name" : "refs/remotes/origin/test_fix"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_organization_part1" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 6,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "d96d0021affc8242c8b983575bcf3b802920929b",
            "branch" : [
              {
                "SHA1" : "d96d0021affc8242c8b983575bcf3b802920929b",
                "name" : "refs/remotes/origin/clubb_organization_part1"
              }
            ]
          },
          "revision" : {
            "SHA1" : "d96d0021affc8242c8b983575bcf3b802920929b",
            "branch" : [
              {
                "SHA1" : "d96d0021affc8242c8b983575bcf3b802920929b",
                "name" : "refs/remotes/origin/clubb_organization_part1"
              }
            ]
          }
        },
        "refs/remotes/origin/tuner_additions" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 18,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "f13d88fea3c40d0093c1ff5b0bdeab9a4f3513d3",
            "branch" : [
              {
                "SHA1" : "f13d88fea3c40d0093c1ff5b0bdeab9a4f3513d3",
                "name" : "refs/remotes/origin/tuner_additions"
              }
            ]
          },
          "revision" : {
            "SHA1" : "f13d88fea3c40d0093c1ff5b0bdeab9a4f3513d3",
            "branch" : [
              {
                "SHA1" : "f13d88fea3c40d0093c1ff5b0bdeab9a4f3513d3",
                "name" : "refs/remotes/origin/tuner_additions"
              }
            ]
          }
        },
        "refs/remotes/origin/copilot/fix-api-signature-mismatch" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 35,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "9e026a902b73da3381b02f40399de18e79154827",
            "branch" : [
              {
                "SHA1" : "9e026a902b73da3381b02f40399de18e79154827",
                "name" : "refs/remotes/origin/copilot/fix-api-signature-mismatch"
              }
            ]
          },
          "revision" : {
            "SHA1" : "9e026a902b73da3381b02f40399de18e79154827",
            "branch" : [
              {
                "SHA1" : "9e026a902b73da3381b02f40399de18e79154827",
                "name" : "refs/remotes/origin/copilot/fix-api-signature-mismatch"
              }
            ]
          }
        },
        "refs/remotes/origin/jax_microphys" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 42,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "3c9b3d56e24d3a766f45e84903e76ee980eb5aa5",
            "branch" : [
              {
                "SHA1" : "3c9b3d56e24d3a766f45e84903e76ee980eb5aa5",
                "name" : "refs/remotes/origin/jax_microphys"
              }
            ]
          },
          "revision" : {
            "SHA1" : "3c9b3d56e24d3a766f45e84903e76ee980eb5aa5",
            "branch" : [
              {
                "SHA1" : "3c9b3d56e24d3a766f45e84903e76ee980eb5aa5",
                "name" : "refs/remotes/origin/jax_microphys"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_case_runner" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 50,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "0c985605a47a651c813c6697e3c3c4e32365f9c7",
            "branch" : [
              {
                "SHA1" : "0c985605a47a651c813c6697e3c3c4e32365f9c7",
                "name" : "refs/remotes/origin/clubb_case_runner"
              }
            ]
          },
          "revision" : {
            "SHA1" : "0c985605a47a651c813c6697e3c3c4e32365f9c7",
            "branch" : [
              {
                "SHA1" : "0c985605a47a651c813c6697e3c3c4e32365f9c7",
                "name" : "refs/remotes/origin/clubb_case_runner"
              }
            ]
          }
        },
        "refs/remotes/origin/dash_updates" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 27,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "0f566dae5ca0ef106a2a8a601d5dd08e95db606b",
            "branch" : [
              {
                "SHA1" : "0f566dae5ca0ef106a2a8a601d5dd08e95db606b",
                "name" : "refs/remotes/origin/dash_updates"
              }
            ]
          },
          "revision" : {
            "SHA1" : "0f566dae5ca0ef106a2a8a601d5dd08e95db606b",
            "branch" : [
              {
                "SHA1" : "0f566dae5ca0ef106a2a8a601d5dd08e95db606b",
                "name" : "refs/remotes/origin/dash_updates"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_jax" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 37,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8f7e4cdbf7555ae67075c02d9d1f4b392e51ed3f",
            "branch" : [
              {
                "SHA1" : "8f7e4cdbf7555ae67075c02d9d1f4b392e51ed3f",
                "name" : "refs/remotes/origin/clubb_jax"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8f7e4cdbf7555ae67075c02d9d1f4b392e51ed3f",
            "branch" : [
              {
                "SHA1" : "8f7e4cdbf7555ae67075c02d9d1f4b392e51ed3f",
                "name" : "refs/remotes/origin/clubb_jax"
              }
            ]
          }
        },
        "refs/remotes/origin/venv_improvement" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 41,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "dec83a0e1d500014c3ea9734d7ef2f1d645f12e7",
            "branch" : [
              {
                "SHA1" : "dec83a0e1d500014c3ea9734d7ef2f1d645f12e7",
                "name" : "refs/remotes/origin/venv_improvement"
              }
            ]
          },
          "revision" : {
            "SHA1" : "dec83a0e1d500014c3ea9734d7ef2f1d645f12e7",
            "branch" : [
              {
                "SHA1" : "dec83a0e1d500014c3ea9734d7ef2f1d645f12e7",
                "name" : "refs/remotes/origin/venv_improvement"
              }
            ]
          }
        },
        "refs/remotes/origin/calc_sfc_varnce_movement" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 4,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8f36aca5fd9c284c280761ab152931bd884e21f2",
            "branch" : [
              {
                "SHA1" : "8f36aca5fd9c284c280761ab152931bd884e21f2",
                "name" : "refs/remotes/origin/calc_sfc_varnce_movement"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8f36aca5fd9c284c280761ab152931bd884e21f2",
            "branch" : [
              {
                "SHA1" : "8f36aca5fd9c284c280761ab152931bd884e21f2",
                "name" : "refs/remotes/origin/calc_sfc_varnce_movement"
              }
            ]
          }
        },
        "refs/remotes/origin/tiny_dash_updates" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 21,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "605dc2d2f5105cfe41e0f1c900793dca76ddc513",
            "branch" : [
              {
                "SHA1" : "605dc2d2f5105cfe41e0f1c900793dca76ddc513",
                "name" : "refs/remotes/origin/tiny_dash_updates"
              }
            ]
          },
          "revision" : {
            "SHA1" : "605dc2d2f5105cfe41e0f1c900793dca76ddc513",
            "branch" : [
              {
                "SHA1" : "605dc2d2f5105cfe41e0f1c900793dca76ddc513",
                "name" : "refs/remotes/origin/tiny_dash_updates"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_f2py" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 3,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "148a89be2c9a46527294056ad471087e68a10b46",
            "branch" : [
              {
                "SHA1" : "148a89be2c9a46527294056ad471087e68a10b46",
                "name" : "refs/remotes/origin/clubb_f2py"
              }
            ]
          },
          "revision" : {
            "SHA1" : "148a89be2c9a46527294056ad471087e68a10b46",
            "branch" : [
              {
                "SHA1" : "148a89be2c9a46527294056ad471087e68a10b46",
                "name" : "refs/remotes/origin/clubb_f2py"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_loss_driver" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 15,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "965904c404fffb0eba94e0f8b2e7f9688c5a8bd5",
            "branch" : [
              {
                "SHA1" : "965904c404fffb0eba94e0f8b2e7f9688c5a8bd5",
                "name" : "refs/remotes/origin/clubb_loss_driver"
              }
            ]
          },
          "revision" : {
            "SHA1" : "965904c404fffb0eba94e0f8b2e7f9688c5a8bd5",
            "branch" : [
              {
                "SHA1" : "965904c404fffb0eba94e0f8b2e7f9688c5a8bd5",
                "name" : "refs/remotes/origin/clubb_loss_driver"
              }
            ]
          }
        },
        "refs/remotes/origin/clubb_timer_upgrade" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 22,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b9b00dc447cfd726549a2a6f14d1deac8539203b",
            "branch" : [
              {
                "SHA1" : "b9b00dc447cfd726549a2a6f14d1deac8539203b",
                "name" : "refs/remotes/origin/clubb_timer_upgrade"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b9b00dc447cfd726549a2a6f14d1deac8539203b",
            "branch" : [
              {
                "SHA1" : "b9b00dc447cfd726549a2a6f14d1deac8539203b",
                "name" : "refs/remotes/origin/clubb_timer_upgrade"
              }
            ]
          }
        },
        "refs/remotes/origin/nice_dash_updates" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 29,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "b2ad24e20e65739d395fadafa7b738b8f4b19b88",
            "branch" : [
              {
                "SHA1" : "b2ad24e20e65739d395fadafa7b738b8f4b19b88",
                "name" : "refs/remotes/origin/nice_dash_updates"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b2ad24e20e65739d395fadafa7b738b8f4b19b88",
            "branch" : [
              {
                "SHA1" : "b2ad24e20e65739d395fadafa7b738b8f4b19b88",
                "name" : "refs/remotes/origin/nice_dash_updates"
              }
            ]
          }
        },
        "refs/remotes/origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 55,
          "buildResult" : null,
          "marked" : {
            "SHA1" : "8369512fcc6487603491e12ac13376de2aec2a0b",
            "branch" : [
              {
                "SHA1" : "8369512fcc6487603491e12ac13376de2aec2a0b",
                "name" : "refs/remotes/origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "8369512fcc6487603491e12ac13376de2aec2a0b",
            "branch" : [
              {
                "SHA1" : "8369512fcc6487603491e12ac13376de2aec2a0b",
                "name" : "refs/remotes/origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "a4f1c774ef18f9a896d27e51bc6b867baec68118",
        "branch" : [
          {
            "SHA1" : "a4f1c774ef18f9a896d27e51bc6b867baec68118",
            "name" : "refs/remotes/origin/mixing_length_fix_2"
          }
        ]
      },
      "remoteUrls" : [
        "https://github.com/larson-group/clubb.git"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.libs.LibrariesAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.junit.TestResultAction",
      "failCount" : 2,
      "skipCount" : 0,
      "totalCount" : 528,
      "urlName" : "testReport"
    },
    {
      "_class" : "org.jenkinsci.plugins.workflow.cps.EnvActionImpl"
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_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" : null,
  "displayName" : "#56",
  "duration" : 404755,
  "estimatedDuration" : 415425,
  "executor" : null,
  "fullDisplayName" : "clubb_branch_python #56",
  "id" : "56",
  "keepLog" : false,
  "number" : 56,
  "queueId" : 11233,
  "result" : "FAILURE",
  "timestamp" : 1792568257273,
  "url" : "https://carson.math.uwm.edu/jenkins/view/clubb_branch_tests/job/clubb_branch_python/56/",
  "changeSets" : [
    {
      "_class" : "hudson.plugins.git.GitChangeSetList",
      "items" : [
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "clubb_jax/src/CLUBB_core/fill_holes.py",
            "clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/test_multicolumn_microphys_adapters.py"
          ],
          "commitId" : "7fc8280d9ce3fe0ec51bf5e7f3cfd3a0e7c8838a",
          "timestamp" : 1792481751000,
          "author" : {
            "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/huebler",
            "fullName" : "Gunther Huebler"
          },
          "authorEmail" : "huebler@uwm.edu",
          "comment" : "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",
          "date" : "2026-10-20 02:35:51 -0500",
          "id" : "7fc8280d9ce3fe0ec51bf5e7f3cfd3a0e7c8838a",
          "msg" : "Align JAX microphysics with per-column Fortran inputs",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/CLUBB_core/fill_holes.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/test_multicolumn_microphys_adapters.py"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "tests/run_jax_vs_fortran_cases.py"
          ],
          "commitId" : "05e5a9ebe39c01681f423a7dc09ef62a4222b1d0",
          "timestamp" : 1792481763000,
          "author" : {
            "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/huebler",
            "fullName" : "Gunther Huebler"
          },
          "authorEmail" : "huebler@uwm.edu",
          "comment" : "Keep the legacy DYCOMS comparison below its roundoff-sensitive interval\u000a\u000aReduce the dycoms2_rf02_ds curated limit from 240 to the requested 230 steps. Historical Jenkins runs first fail the cumulative comparison at step 236; matched local runs fail at 242. Tolerances and saved fields stay unchanged.\u000a\u000aA one-ULP entrainment perturbation in Fortran alone produces a similar late failure. Identical-input parcel checks agree within 6.3e-9 m, and the matched historical coherent run agrees through 360 steps. This evidence concerns the pre-master multi-column configuration; corrected-master validation is in progress.\u000a",
          "date" : "2026-10-20 02:36:03 -0500",
          "id" : "05e5a9ebe39c01681f423a7dc09ef62a4222b1d0",
          "msg" : "Keep the legacy DYCOMS comparison below its roundoff-sensitive interval",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "tests/run_jax_vs_fortran_cases.py"
            }
          ]
        },
        {
          "_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_clip_covar_vs_fortran.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_close_luhar_pdf_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_xpyp_term_ta_godunov_vs_fortran.py",
            "tests/README.md",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calc_comp_corrs_binormal_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_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_calc_ddzt_umvm_sqd_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_compute_sigma_sqd_w_vs_fortran.py",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_fill_holes_mean_vs_fortran.py",
            "clubb_python_api/f2py_fortran_wrappers/interpolation_wrapper.F90",
            "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_Nc_Ncn_eqns_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_luhar_params_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_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_w_up_in_cloud_vs_fortran.py",
            "jenkins_tests/clubb_jax/Jenkinsfile",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cloud_drop_sed_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_python_api/f2py_fortran_wrappers/cloud_sed_module_wrapper.F90",
            "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_upxp_vs_fortran.py",
            "clubb_jax/README.md",
            "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_cholesky_factor_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/conftest.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/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_saturation_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_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_diagnose_xp3_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_grid_operators_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/README.md"
            },
            {
              "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_new_pdf_main_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_luhar_params_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_sponge_damp_xp23_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" : "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_solver_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diffusion_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_python_api/clubb_python/clubb_api.py"
            },
            {
              "editType" : "edit",
              "file" : "jenkins_tests/clubb_jax/Jenkinsfile"
            },
            {
              "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_sunray_sw_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_python_api/f2py_fortran_wrappers/cloud_sed_module_wrapper.F90"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/f2py_unit_test_helpers.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_new_tsdadg_pdf_vs_fortran.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_clip_skewness_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_calc_ddzt_umvm_sqd_vs_fortran.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_diagnose_upxp_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" : "edit",
              "file" : "clubb_python_api/clubb_python/CLUBB_core/interpolation.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_limits_f_x_responder_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_skx_func_vs_fortran.py"
            },
            {
              "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_cholesky_corr_mtx_approx_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_saturation_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_spurious_source_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py"
            },
            {
              "editType" : "edit",
              "file" : "tests/README.md"
            },
            {
              "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_compute_gamma_skw_vs_fortran.py"
            },
            {
              "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_calendar_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_binormal_moments_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_cos_solar_zen_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/conftest.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_fill_holes_mean_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_cholesky_factor_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_calculate_thvm_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_close_luhar_pdf_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_new_hybrid_pdf_main_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_calc_comp_corrs_binormal_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_responder_params_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_remapping_module_vs_fortran.py"
            },
            {
              "editType" : "edit",
              "file" : "tests/run_pytests.sh"
            },
            {
              "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_smooth_heaviside_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_config_flags_complete_vs_fortran.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/test_setter_var_params_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_remapping_ppm_vs_fortran.py"
            },
            {
              "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_mean_adv_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_T_in_K_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_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_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_new_pdf_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_advance_helper_extras_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_hydrostatic_vs_fortran.py"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/f2py_unit_tests/test_diagnose_correlations_vs_fortran.py"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            ".agents/skills/clubb-finalization/SKILL.md",
            ".agents/skills/clubb-testing-and-reporting/SKILL.md"
          ],
          "commitId" : "ca84407de0b4dff85f5da42c649e537c764c7dcb",
          "timestamp" : 1792545867000,
          "author" : {
            "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/huebler",
            "fullName" : "Gunther Huebler"
          },
          "authorEmail" : "huebler@uwm.edu",
          "comment" : "Require completed validation before branch finalization\u000a\u000aTreat urgency as approval to proceed without routine review pauses while\u000apreserving the stop for substantive unaccepted issues. Require reviewed test\u000aresults, including relevant Jenkins jobs, before completion, with a narrow\u000atrivial-prose exception and owner checks where no Jenkins job applies.\u000a\u000aBoth skill validators and relative-link checks pass.\u000a",
          "date" : "2026-10-20 20:24:27 -0500",
          "id" : "ca84407de0b4dff85f5da42c649e537c764c7dcb",
          "msg" : "Require completed validation before branch finalization",
          "paths" : [
            {
              "editType" : "edit",
              "file" : ".agents/skills/clubb-testing-and-reporting/SKILL.md"
            },
            {
              "editType" : "edit",
              "file" : ".agents/skills/clubb-finalization/SKILL.md"
            }
          ]
        },
        {
          "_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/change-messages/SKILL.md"
            },
            {
              "editType" : "add",
              "file" : "clubb_jax/pytests/auto_llm_generated_pytests/test_multicolumn_microphys_adapters.py"
            },
            {
              "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/language/SKILL.md"
            }
          ]
        },
        {
          "_class" : "hudson.plugins.git.GitChangeSet",
          "affectedPaths" : [
            "src/CLUBB_core/parameters_tunable.F90",
            "doc/coherence_mixing_length.md",
            "utilities/clubb_settings_validation.py",
            "utilities/pytests/test_settings_rules.py",
            "tests/run_clubb_settings_validation_test.py",
            "clubb_jax/src/CLUBB_core/parameters_tunable.py",
            "src/CLUBB_core/mixing_length.F90"
          ],
          "commitId" : "68d2474118daf0de3fd3d002a1e8944713757bc8",
          "timestamp" : 1792568162000,
          "author" : {
            "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/huebler",
            "fullName" : "Gunther Huebler"
          },
          "authorEmail" : "huebler@uwm.edu",
          "comment" : "Require positive launch-energy scaling and clarify parcel averaging\u000a\u000aReject zero Lscale_tke_multiplier consistently in Fortran, JAX and the\u000asettings validator. Remove redundant nonnegative-TKE handling from the\u000acoherent parcel calculation and retain the reviewed explanatory cleanup.\u000a\u000aThe settings-rule checks (19 tests), native/Python bounds parity and\u000apublic native/JAX startup checks pass, including zero and negative inputs.\u000aFull Jenkins branch validation follows the master merge.\u000a",
          "date" : "2026-10-21 02:36:02 -0500",
          "id" : "68d2474118daf0de3fd3d002a1e8944713757bc8",
          "msg" : "Require positive launch-energy scaling and clarify parcel averaging",
          "paths" : [
            {
              "editType" : "edit",
              "file" : "utilities/clubb_settings_validation.py"
            },
            {
              "editType" : "edit",
              "file" : "src/CLUBB_core/parameters_tunable.F90"
            },
            {
              "editType" : "edit",
              "file" : "clubb_jax/src/CLUBB_core/parameters_tunable.py"
            },
            {
              "editType" : "edit",
              "file" : "doc/coherence_mixing_length.md"
            },
            {
              "editType" : "edit",
              "file" : "utilities/pytests/test_settings_rules.py"
            },
            {
              "editType" : "edit",
              "file" : "src/CLUBB_core/mixing_length.F90"
            },
            {
              "editType" : "edit",
              "file" : "tests/run_clubb_settings_validation_test.py"
            }
          ]
        }
      ],
      "kind" : "git"
    }
  ],
  "culprits" : [
    {
      "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/huebler",
      "fullName" : "Gunther Huebler"
    },
    {
      "absoluteUrl" : "https://carson.math.uwm.edu/jenkins/user/noreply",
      "fullName" : "noreply"
    }
  ],
  "inProgress" : false,
  "nextBuild" : {
    "number" : 57,
    "url" : "https://carson.math.uwm.edu/jenkins/view/clubb_branch_tests/job/clubb_branch_python/57/"
  },
  "previousBuild" : {
    "number" : 55,
    "url" : "https://carson.math.uwm.edu/jenkins/view/clubb_branch_tests/job/clubb_branch_python/55/"
  }
}