Skip to content

Console Output

+ export PATH=/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
+ PATH=/home/jenkins/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
+ node --version
v22.23.3
+ bash tests/run_pytests.sh -dash -include_generated --junitxml=/home/jenkins/workspace/clubb_branch_dash/output/tests/pytests/dash.xml --durations=10
Installing uv 0.11.32 in /home/jenkins/workspace/clubb_branch_dash/.clubb-python-tools/bin
downloading uv 0.11.32 x86_64-unknown-linux-gnu
installing to /home/jenkins/workspace/clubb_branch_dash/.clubb-python-tools/bin
  uv
  uvx
everything's installed!
Creating CLUBB virtualenv: /home/jenkins/workspace/clubb_branch_dash/.venv-python
Using CPython 3.12.3 interpreter at: /usr/bin/python3.12
Creating virtual environment at: .venv-python
Activate with: source .venv-python/bin/activate
Installing dash requirements into /home/jenkins/workspace/clubb_branch_dash/.venv-python
Using Python 3.12.3 environment at: .venv-python
Resolved 71 packages in 955ms
Downloading pygments (1.2MiB)
Downloading scipy (33.7MiB)
Downloading pydantic-core (2.1MiB)
Downloading matplotlib (8.4MiB)
Downloading cftime (1.6MiB)
Downloading kiwisolver (1.4MiB)
Downloading cryptography (4.5MiB)
Downloading pillow (6.6MiB)
Downloading numpy (16.0MiB)
Downloading dash (7.6MiB)
Downloading meson (1.1MiB)
Downloading fonttools (5.2MiB)
Downloading plotly (9.5MiB)
Downloading netcdf4 (10.1MiB)
 Downloaded kiwisolver
 Downloaded cftime
 Downloaded pydantic-core
 Downloaded meson
 Downloaded pygments
 Downloaded cryptography
 Downloaded fonttools
 Downloaded pillow
 Downloaded dash
 Downloaded netcdf4
 Downloaded matplotlib
 Downloaded numpy
 Downloaded scipy
 Downloaded plotly
Prepared 71 packages in 3.62s
Installed 71 packages in 103ms
 + annotated-types==0.8.0
 + anyio==4.15.1
 + attrs==26.1.0
 + blinker==1.9.0
 + certifi==2026.7.22
 + cffi==2.1.1
 + cftime==1.6.6.1
 + charset-normalizer==3.5.2
 + click==8.5.0
 + contourpy==1.4.0
 + cryptography==50.0.2
 + cycler==0.12.1
 + dash==3.4.0
 + dill==0.4.1
 + diskcache==5.6.3
 + flask==3.1.3
 + fonttools==4.67.0
 + h11==0.16.0
 + httpcore==1.0.9
 + httpx==0.28.1
 + httpx-sse==0.4.3
 + idna==3.20
 + importlib-metadata==9.0.1
 + iniconfig==2.3.1
 + itsdangerous==2.2.0
 + jinja2==3.1.6
 + jsonschema==4.26.0
 + jsonschema-specifications==2025.9.1
 + kiwisolver==1.5.1
 + markupsafe==3.0.4
 + matplotlib==3.10.9
 + mcp==1.30.0
 + meson==1.12.1
 + multiprocess==0.70.19
 + narwhals==2.27.1
 + nest-asyncio==1.6.0
 + netcdf4==1.7.5
 + ninja==1.13.2
 + numpy==2.5.4
 + packaging==26.3
 + pillow==12.3.0
 + plotly==6.9.0
 + pluggy==1.7.0
 + psutil==7.2.2
 + pycparser==3.11
 + pydantic==2.14.1
 + pydantic-core==2.50.1
 + pydantic-settings==2.16.0
 + pygments==2.21.0
 + pyjwt==2.15.1
 + pyparsing==3.3.3
 + pytest==9.1.1
 + python-dateutil==2.9.0.post0
 + python-dotenv==1.2.4
 + python-multipart==0.0.32
 + referencing==0.37.0
 + requests==2.34.2
 + retrying==1.4.2
 + rpds-py==2026.9.1
 + scipy==1.18.1
 + setuptools==84.0.0
 + six==1.17.0
 + sse-starlette==3.5.0
 + starlette==1.8.0
 + tabulate==0.10.0
 + typing-extensions==4.16.0
 + typing-inspection==0.4.4
 + urllib3==2.8.0
 + uvicorn==0.54.0
 + werkzeug==3.1.9
 + zipp==4.1.1
Ready: /home/jenkins/workspace/clubb_branch_dash/.venv-python/bin/python
============================= test session starts ==============================
platform linux -- Python 3.12.3, pytest-9.1.1, pluggy-1.7.0
rootdir: /home/jenkins/workspace/clubb_branch_dash
plugins: dash-3.4.0, anyio-4.15.1
collected 585 items

dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py ........ [  1%]
.........                                                                [  2%]
dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py . [  3%]
..............                                                           [  5%]
dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py . [  5%]
                                                                         [  5%]
dash_app/pytests/test_activity.py .........                              [  7%]
dash_app/pytests/test_agent_integration.py ..............                [  9%]
dash_app/pytests/test_agent_plot_actions.py ........                     [ 10%]
dash_app/pytests/test_agent_services.py ................................ [ 16%]
.................                                                        [ 19%]
dash_app/pytests/test_agent_tab_registry.py ......                       [ 20%]
dash_app/pytests/test_agent_tuning.py ............                       [ 22%]
dash_app/pytests/test_analysis.py .....                                  [ 23%]
dash_app/pytests/test_app_startup.py ..........                          [ 24%]
dash_app/pytests/test_atlas.py .                                         [ 25%]
dash_app/pytests/test_bivariate_heatmap.py ..                            [ 25%]
dash_app/pytests/test_callbacks_runs.py ............                     [ 27%]
dash_app/pytests/test_compile_tab_build_status.py .................      [ 30%]
dash_app/pytests/test_custom_plot.py ........                            [ 31%]
dash_app/pytests/test_dashboard_activity_labels.py .                     [ 31%]
dash_app/pytests/test_dashboard_lifecycle.py ...                         [ 32%]
dash_app/pytests/test_dashboard_manager.py ......                        [ 33%]
dash_app/pytests/test_equations.py ...                                   [ 34%]
dash_app/pytests/test_fill_holes_viewer.py ....                          [ 34%]
dash_app/pytests/test_jax_device.py .....................                [ 38%]
dash_app/pytests/test_mcp_endpoint.py ...                                [ 38%]
dash_app/pytests/test_misc_tab.py ...                                    [ 39%]
dash_app/pytests/test_netcdf.py ......                                   [ 40%]
dash_app/pytests/test_output_directory_picker.py ......                  [ 41%]
dash_app/pytests/test_output_discovery.py .......                        [ 42%]
dash_app/pytests/test_pane_resize.py ...                                 [ 43%]
dash_app/pytests/test_param_disclosures.py ........                      [ 44%]
dash_app/pytests/test_pdf_contour_plot.py ......................         [ 48%]
dash_app/pytests/test_performance_polling.py .......                     [ 49%]
dash_app/pytests/test_persistence.py ....                                [ 50%]
dash_app/pytests/test_plot_case_cache.py ..........                      [ 51%]
dash_app/pytests/test_plot_extraction.py ............................... [ 57%]
                                                                         [ 57%]
dash_app/pytests/test_plot_grid_updates.py .....                         [ 57%]
dash_app/pytests/test_plot_help.py ...                                   [ 58%]
dash_app/pytests/test_plot_tasks.py ..........                           [ 60%]
dash_app/pytests/test_plot_transitions.py .............                  [ 62%]
dash_app/pytests/test_profile_tab.py ..............................      [ 67%]
dash_app/pytests/test_profiles.py ......                                 [ 68%]
dash_app/pytests/test_pyplotgen_export.py ......                         [ 69%]
dash_app/pytests/test_pyplotgen_output_handler.py .                      [ 69%]
dash_app/pytests/test_reports_tab.py .......                             [ 70%]
dash_app/pytests/test_run_broker_simplification.py ..................... [ 74%]
                                                                         [ 74%]
dash_app/pytests/test_run_callbacks_settings.py ..............           [ 76%]
dash_app/pytests/test_run_runtime.py ..........                          [ 78%]
dash_app/pytests/test_runtime.py ..                                      [ 78%]
dash_app/pytests/test_runtime_logging.py .....                           [ 79%]
dash_app/pytests/test_runtime_loss_batches.py .                          [ 80%]
dash_app/pytests/test_sam_3d_reference.py .                              [ 80%]
dash_app/pytests/test_scm_override.py ......                             [ 81%]
dash_app/pytests/test_selected_build.py .....................            [ 84%]
dash_app/pytests/test_state_persistence.py .............                 [ 87%]
dash_app/pytests/test_stats_selection.py ............................... [ 92%]
                                                                         [ 92%]
dash_app/pytests/test_taylor_window_display.py .....                     [ 93%]
dash_app/pytests/test_tunable_config_save.py ...............             [ 95%]
dash_app/pytests/test_tune_callbacks_settings.py .............           [ 97%]
dash_app/pytests/test_tutorial_tab.py ..                                 [ 98%]
dash_app/pytests/test_two_gaussian_model.py ......                       [ 99%]
dash_app/pytests/test_workspace_selection.py ....                        [100%]

=============================== warnings summary ===============================
dash_app/pytests/test_plot_case_cache.py::test_hydration_keeps_saved_view_and_scans_once
  /home/jenkins/workspace/clubb_branch_dash/dash_app/plot_tab/case_definitions.py:35: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead
    legacy_str = getattr(ast, "Str", None)

dash_app/pytests/test_plot_case_cache.py: 4120 warnings
  /home/jenkins/workspace/clubb_branch_dash/dash_app/plot_tab/case_definitions.py:36: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead
    if legacy_str is not None and isinstance(node, legacy_str):

dash_app/pytests/test_plot_case_cache.py::test_hydration_keeps_saved_view_and_scans_once
  /home/jenkins/workspace/clubb_branch_dash/dash_app/plot_tab/case_definitions.py:39: DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead
    legacy_num = getattr(ast, "Num", None)

dash_app/pytests/test_plot_case_cache.py: 4120 warnings
  /home/jenkins/workspace/clubb_branch_dash/dash_app/plot_tab/case_definitions.py:40: DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead
    if legacy_num is not None and isinstance(node, legacy_num):

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
- generated xml file: /home/jenkins/workspace/clubb_branch_dash/output/tests/pytests/dash.xml -
============================= slowest 10 durations =============================
4.47s call     dash_app/pytests/test_agent_plot_actions.py::test_profile_png_renderer_writes_a_real_png
1.74s call     dash_app/pytests/test_agent_services.py::test_mcp_stdio_discovery_and_structured_error_round_trip
1.51s call     dash_app/pytests/test_plot_tasks.py::test_browser_updates_selection_immediately_and_ignores_stale_results
1.21s call     dash_app/pytests/test_plot_case_cache.py::test_background_worker_snapshot_resolves_in_main_process
1.01s call     dash_app/pytests/test_agent_services.py::test_mcp_exposes_closed_world_typed_tools_and_annotations
1.00s call     dash_app/pytests/test_plot_tasks.py::test_real_worker_inspects_missing_directory_and_serializes_no_update
0.92s call     dash_app/pytests/test_pdf_contour_plot.py::test_pdf_compare_mode_builds_shared_axis_directory_panels
0.67s call     dash_app/pytests/test_pdf_contour_plot.py::test_all_projections_map_nonzero_clubb_probability_and_signed_transport
0.65s call     dash_app/pytests/test_fill_holes_viewer.py::test_profile_field_scale_defaults_to_log_and_can_be_linear
0.63s call     dash_app/pytests/test_netcdf.py::test_shared_netcdf_consumers_import_as_dashboard_packages
===================== 585 passed, 8242 warnings in 37.27s ======================