)]}'
{
  "commit": "7e2ed7657fd97ffa0329c89b9f3f2e768aa55979",
  "tree": "0038bcf37d80f9a053112454d0b29649a2effa1a",
  "parents": [
    "dffbf9ae56a360a78c4b74377b4e5d8552a3c1d3"
  ],
  "author": {
    "name": "Xuanyan Wang",
    "email": "54443787+shieru1214@users.noreply.github.com",
    "time": "Wed Nov 04 12:07:04 2026 +0100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Nov 04 12:07:04 2026 +0100"
  },
  "message": "[SYSTEMDS-3971] Improve Scuro test coverage\n\nThis change adds 13 tests for persistence and results retrieval in `unimodal_optimizer.py`. \n\n### Persistence\n\n- `store_results`: It saves the optimizer results and execution statistics in two separate files. The tests check the saved contents, the automatically generated file name, and the fallback when the file name does not end with `.pkl`.\n- `load_results`: It loads previously saved results. The test stores one result, clears it from memory, and then checks that it can be loaded again.\n- `_count_results_by_modality`: It counts the results from the first task of each modality for checkpoint progress. The test checks the returned count for both a modality with results and an empty modality.\n- `resume_from_checkpoint`: It restores results from a checkpoint. The tests cover both restoring saved results and keeping the current results when no checkpoint is found.\n\n### Results Retrieval\n\n- `get_k_best_results`: It returns the top `k` results according to their scores. The tests check the score order, using existing cached data, executing the result DAGs when the cache is empty, and returning empty lists when there are no results.\n- `get_dag_by_id`: It searches a list of DAGs by `dag_id`. The tests cover both returning the matching DAG and returning `None` when the ID is not found.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0c56858d6586e4b7829ff4dad906f1669ff44300",
      "old_mode": 33188,
      "old_path": "src/main/python/tests/scuro/test_hp_tuner.py",
      "new_id": "7fd2087232902564ab863945ca355628a4138f18",
      "new_mode": 33188,
      "new_path": "src/main/python/tests/scuro/test_hp_tuner.py"
    },
    {
      "type": "modify",
      "old_id": "8086bcc3f0791382c9451fac5304109f87cb14cd",
      "old_mode": 33188,
      "old_path": "src/main/python/tests/scuro/test_multimodal_fusion.py",
      "new_id": "b50c75d11cb90830724b42d6850bb40942df30e1",
      "new_mode": 33188,
      "new_path": "src/main/python/tests/scuro/test_multimodal_fusion.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dbc5988647621b3519999b5192218f2f58441515",
      "new_mode": 33188,
      "new_path": "src/main/python/tests/scuro/test_representation_dag.py"
    },
    {
      "type": "modify",
      "old_id": "8b08b4495b77d0d5bd8579bbe0c94ab7f6cedbc1",
      "old_mode": 33188,
      "old_path": "src/main/python/tests/scuro/test_unimodal_optimizer.py",
      "new_id": "309eb2de1260205bc0816faee1e3b4db63901406",
      "new_mode": 33188,
      "new_path": "src/main/python/tests/scuro/test_unimodal_optimizer.py"
    }
  ]
}
