{
  "schema_version": 2,
  "manifest_ref": "agent-research:progrouter:toolroute-l2.1-v1",
  "method": "progrouter",
  "benchmark": "toolroute-l2.1",
  "dataset": "toolroute-l2.1-v1",
  "seeds": [
    42,
    43,
    44
  ],
  "metrics": {
    "answer_accuracy": 0.7777777777777778,
    "plan_exact_match": 0.7777777777777778,
    "plan_step_f1": 0.8036637744971079,
    "joint_success": 0.7777777777777778,
    "recovery_success_rate": 0.6666666666666666,
    "invalid_tool_rate": 0.016382715153875006,
    "irreversible_error_rate": 0.0,
    "average_tool_calls": 5.161111111111111,
    "average_cost": 4.632444444444444
  },
  "aggregate_metrics": {
    "answer_accuracy": {
      "mean": 0.7777777777777778,
      "std": 0.025458753860865796,
      "ci95_radius": 0.028809292053814453
    },
    "plan_exact_match": {
      "mean": 0.7777777777777778,
      "std": 0.025458753860865796,
      "ci95_radius": 0.028809292053814453
    },
    "plan_step_f1": {
      "mean": 0.8036637744971079,
      "std": 0.019300096976820252,
      "ci95_radius": 0.02184011572250799
    },
    "joint_success": {
      "mean": 0.7777777777777778,
      "std": 0.025458753860865796,
      "ci95_radius": 0.028809292053814453
    },
    "recovery_success_rate": {
      "mean": 0.6666666666666666,
      "std": 0.0,
      "ci95_radius": 0.0
    },
    "invalid_tool_rate": {
      "mean": 0.016382715153875006,
      "std": 0.01187984526243933,
      "ci95_radius": 0.013443310445992878
    },
    "irreversible_error_rate": {
      "mean": 0.0,
      "std": 0.0,
      "ci95_radius": 0.0
    },
    "average_tool_calls": {
      "mean": 5.161111111111111,
      "std": 0.15485955405295945,
      "ci95_radius": 0.17524008222936063
    },
    "average_cost": {
      "mean": 4.632444444444444,
      "std": 0.12171110299636827,
      "ci95_radius": 0.1377290786335062
    }
  },
  "validation_metrics": {
    "answer_accuracy": 0.7222222222222222,
    "plan_exact_match": 0.7222222222222222,
    "plan_step_f1": 0.7692841109507775,
    "joint_success": 0.7222222222222222,
    "recovery_success_rate": 0.6666666666666666,
    "invalid_tool_rate": 0.05841503267973856,
    "irreversible_error_rate": 0.0,
    "average_tool_calls": 4.283333333333333,
    "average_cost": 3.9627777777777777
  },
  "validation_aggregate_metrics": {
    "answer_accuracy": {
      "mean": 0.7222222222222222,
      "std": 0.01924500897298752,
      "ci95_radius": 0.021777777777777774
    },
    "plan_exact_match": {
      "mean": 0.7222222222222222,
      "std": 0.01924500897298752,
      "ci95_radius": 0.021777777777777774
    },
    "plan_step_f1": {
      "mean": 0.7692841109507775,
      "std": 0.011572558094488341,
      "ci95_radius": 0.013095582280888234
    },
    "joint_success": {
      "mean": 0.7222222222222222,
      "std": 0.01924500897298752,
      "ci95_radius": 0.021777777777777774
    },
    "recovery_success_rate": {
      "mean": 0.6666666666666666,
      "std": 0.0,
      "ci95_radius": 0.0
    },
    "invalid_tool_rate": {
      "mean": 0.05841503267973856,
      "std": 0.007288662395323836,
      "ci95_radius": 0.008247897944106138
    },
    "irreversible_error_rate": {
      "mean": 0.0,
      "std": 0.0,
      "ci95_radius": 0.0
    },
    "average_tool_calls": {
      "mean": 4.283333333333333,
      "std": 0.044095855184409685,
      "ci95_radius": 0.04989915756729675
    },
    "average_cost": {
      "mean": 3.9627777777777777,
      "std": 0.03938461816684453,
      "ci95_radius": 0.0445678910050943
    }
  },
  "seed_results": [
    {
      "seed": 42,
      "training": {
        "split": "train",
        "metrics": {
          "answer_accuracy": 0.75,
          "plan_exact_match": 0.75,
          "plan_step_f1": 0.795679012345679,
          "joint_success": 0.75,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.07317073170731707,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 3.4166666666666665,
          "average_cost": 3.2344444444444447
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.5,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 12,
          "reflections": 0,
          "skill_reuses": 91,
          "verifications": 28,
          "compressions": 14,
          "memory_writes": 20
        },
        "trace": []
      },
      "validation": {
        "split": "validation",
        "metrics": {
          "answer_accuracy": 0.7333333333333333,
          "plan_exact_match": 0.7333333333333333,
          "plan_step_f1": 0.7740440115440115,
          "joint_success": 0.7333333333333333,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.0625,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 4.266666666666667,
          "average_cost": 3.958
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.4,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 24,
          "reflections": 0,
          "skill_reuses": 206,
          "verifications": 36,
          "compressions": 18,
          "memory_writes": 30
        },
        "trace": [
          {
            "task_id": "toolroute-l21-validation-42-0000",
            "split": "validation",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.8888888888888888,
            "has_failure": true,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.760000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "resolver",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0001",
            "split": "validation",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.720000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0002",
            "split": "validation",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.8888888888888888,
            "has_failure": true,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.36,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "search",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0003",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2857142857142857,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 1.9000000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "maps"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0004",
            "split": "validation",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.8888888888888888,
            "has_failure": true,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.680000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "resolver",
              "search",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0005",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.94,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0006",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.74,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0007",
            "split": "validation",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.4,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0008",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.3333333333333333,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.06,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "database"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0009",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.720000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0010",
            "split": "validation",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.8888888888888888,
            "has_failure": true,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.44,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-42-0011",
            "split": "validation",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2857142857142857,
            "has_failure": true,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 1.9000000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "maps"
            ]
          }
        ]
      },
      "test": {
        "split": "test",
        "metrics": {
          "answer_accuracy": 0.75,
          "plan_exact_match": 0.75,
          "plan_step_f1": 0.7826728826728827,
          "joint_success": 0.75,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.030100334448160536,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 4.983333333333333,
          "average_cost": 4.493
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.5,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 26,
          "reflections": 0,
          "skill_reuses": 248,
          "verifications": 42,
          "compressions": 21,
          "memory_writes": 30
        },
        "trace": [
          {
            "task_id": "toolroute-l21-test-42-0000",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.54,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0001",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2222222222222222,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0002",
            "split": "test",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.4,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0003",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.22,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "files"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0004",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.16,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "search",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0005",
            "split": "test",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9230769230769231,
            "has_failure": true,
            "tool_calls": 7.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 6.2,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "maps",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0006",
            "split": "test",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.32,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0007",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9230769230769231,
            "has_failure": true,
            "tool_calls": 7.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 6.28,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "search",
              "database",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0008",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.16,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "search",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0009",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2222222222222222,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0010",
            "split": "test",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.4,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-42-0011",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9230769230769231,
            "has_failure": true,
            "tool_calls": 7.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 6.28,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "search",
              "database",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          }
        ]
      },
      "metrics": {
        "answer_accuracy": 0.75,
        "plan_exact_match": 0.75,
        "plan_step_f1": 0.7826728826728827,
        "joint_success": 0.75,
        "recovery_success_rate": 0.6666666666666666,
        "invalid_tool_rate": 0.030100334448160536,
        "irreversible_error_rate": 0.0,
        "average_tool_calls": 4.983333333333333,
        "average_cost": 4.493
      },
      "axis_metrics": {
        "clean": 1,
        "transient": 1,
        "ambiguous": 0.5,
        "fallback": 1,
        "irreversible": 1,
        "combined": 0
      },
      "telemetry": {
        "retries": 26,
        "reflections": 0,
        "skill_reuses": 248,
        "verifications": 42,
        "compressions": 21,
        "memory_writes": 30
      },
      "trace": [
        {
          "task_id": "toolroute-l21-test-42-0000",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 5.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 4.54,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0001",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.2222222222222222,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.9000000000000004,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0002",
          "split": "test",
          "axis": "transient",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.4,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0003",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": false,
          "tool_calls": 2.0,
          "invalid_calls": 1.0,
          "irreversible_errors": 0.0,
          "cost": 2.22,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "files"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0004",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.16,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "search",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0005",
          "split": "test",
          "axis": "transient",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9230769230769231,
          "has_failure": true,
          "tool_calls": 7.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 6.2,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "maps",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0006",
          "split": "test",
          "axis": "irreversible",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 5.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 4.32,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0007",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9230769230769231,
          "has_failure": true,
          "tool_calls": 7.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 6.28,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "search",
            "database",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0008",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.16,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "search",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0009",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.2222222222222222,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.9000000000000004,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0010",
          "split": "test",
          "axis": "transient",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.4,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-42-0011",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9230769230769231,
          "has_failure": true,
          "tool_calls": 7.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 6.28,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "search",
            "database",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        }
      ]
    },
    {
      "seed": 43,
      "training": {
        "split": "train",
        "metrics": {
          "answer_accuracy": 0.75,
          "plan_exact_match": 0.75,
          "plan_step_f1": 0.7975308641975308,
          "joint_success": 0.75,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.046153846153846156,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 3.611111111111111,
          "average_cost": 3.3961111111111113
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.5,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 15,
          "reflections": 0,
          "skill_reuses": 96,
          "verifications": 26,
          "compressions": 13,
          "memory_writes": 21
        },
        "trace": []
      },
      "validation": {
        "split": "validation",
        "metrics": {
          "answer_accuracy": 0.7333333333333333,
          "plan_exact_match": 0.7333333333333333,
          "plan_step_f1": 0.7777176527176527,
          "joint_success": 0.7333333333333333,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.05,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 4.333333333333333,
          "average_cost": 4.004333333333333
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.4,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 26,
          "reflections": 0,
          "skill_reuses": 208,
          "verifications": 38,
          "compressions": 19,
          "memory_writes": 31
        },
        "trace": [
          {
            "task_id": "toolroute-l21-validation-43-0000",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.0600000000000005,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0001",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.94,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0002",
            "split": "validation",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.52,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0003",
            "split": "validation",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.24,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "catalog",
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0004",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.8400000000000003,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0005",
            "split": "validation",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0006",
            "split": "validation",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.52,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0007",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.62,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0008",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.3333333333333333,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.06,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "database"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0009",
            "split": "validation",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.720000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0010",
            "split": "validation",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.8888888888888888,
            "has_failure": true,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.36,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "search",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-43-0011",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.4,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          }
        ]
      },
      "test": {
        "split": "test",
        "metrics": {
          "answer_accuracy": 0.8,
          "plan_exact_match": 0.8,
          "plan_step_f1": 0.8206423206423207,
          "joint_success": 0.8,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.00949367088607595,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 5.266666666666667,
          "average_cost": 4.717333333333333
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.8,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 29,
          "reflections": 0,
          "skill_reuses": 265,
          "verifications": 36,
          "compressions": 18,
          "memory_writes": 29
        },
        "trace": [
          {
            "task_id": "toolroute-l21-test-43-0000",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.16,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "search",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0001",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9230769230769231,
            "has_failure": true,
            "tool_calls": 7.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 6.2,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "search",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0002",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0003",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.22,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "files"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0004",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.54,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0005",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2222222222222222,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0006",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.54,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0007",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9230769230769231,
            "has_failure": true,
            "tool_calls": 7.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 6.28,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "search",
              "database",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0008",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.74,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0009",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.58,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0010",
            "split": "test",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.4,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-43-0011",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": true,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.14,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "weather"
            ]
          }
        ]
      },
      "metrics": {
        "answer_accuracy": 0.8,
        "plan_exact_match": 0.8,
        "plan_step_f1": 0.8206423206423207,
        "joint_success": 0.8,
        "recovery_success_rate": 0.6666666666666666,
        "invalid_tool_rate": 0.00949367088607595,
        "irreversible_error_rate": 0.0,
        "average_tool_calls": 5.266666666666667,
        "average_cost": 4.717333333333333
      },
      "axis_metrics": {
        "clean": 1,
        "transient": 1,
        "ambiguous": 0.8,
        "fallback": 1,
        "irreversible": 1,
        "combined": 0
      },
      "telemetry": {
        "retries": 29,
        "reflections": 0,
        "skill_reuses": 265,
        "verifications": 36,
        "compressions": 18,
        "memory_writes": 29
      },
      "trace": [
        {
          "task_id": "toolroute-l21-test-43-0000",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.16,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "search",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0001",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9230769230769231,
          "has_failure": true,
          "tool_calls": 7.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 6.2,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "search",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0002",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.9000000000000004,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0003",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": false,
          "tool_calls": 2.0,
          "invalid_calls": 1.0,
          "irreversible_errors": 0.0,
          "cost": 2.22,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "files"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0004",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 5.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 4.54,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0005",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.2222222222222222,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.9000000000000004,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0006",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 5.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 4.54,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0007",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9230769230769231,
          "has_failure": true,
          "tool_calls": 7.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 6.28,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "search",
            "database",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0008",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.74,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0009",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.58,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0010",
          "split": "test",
          "axis": "transient",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.4,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-43-0011",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": true,
          "tool_calls": 2.0,
          "invalid_calls": 1.0,
          "irreversible_errors": 0.0,
          "cost": 2.14,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "weather"
          ]
        }
      ]
    },
    {
      "seed": 44,
      "training": {
        "split": "train",
        "metrics": {
          "answer_accuracy": 0.7222222222222222,
          "plan_exact_match": 0.7222222222222222,
          "plan_step_f1": 0.7761904761904762,
          "joint_success": 0.7222222222222222,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.07377049180327869,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 3.388888888888889,
          "average_cost": 3.192777777777778
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.3333333333333333,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 13,
          "reflections": 0,
          "skill_reuses": 88,
          "verifications": 30,
          "compressions": 15,
          "memory_writes": 23
        },
        "trace": []
      },
      "validation": {
        "split": "validation",
        "metrics": {
          "answer_accuracy": 0.7,
          "plan_exact_match": 0.7,
          "plan_step_f1": 0.7560906685906685,
          "joint_success": 0.7,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.06274509803921569,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 4.25,
          "average_cost": 3.926
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.2,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 25,
          "reflections": 0,
          "skill_reuses": 203,
          "verifications": 40,
          "compressions": 20,
          "memory_writes": 29
        },
        "trace": [
          {
            "task_id": "toolroute-l21-validation-44-0000",
            "split": "validation",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.8400000000000003,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0001",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.94,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0002",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.74,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0003",
            "split": "validation",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.24,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "catalog",
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0004",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.3333333333333333,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.06,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "database"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0005",
            "split": "validation",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0006",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 3.74,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0007",
            "split": "validation",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2857142857142857,
            "has_failure": true,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 1.9000000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "maps"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0008",
            "split": "validation",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 4.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.0600000000000005,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calculator",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0009",
            "split": "validation",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.5600000000000005,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "weather",
              "calculator",
              "search",
              "resolver",
              "files",
              "calendar"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0010",
            "split": "validation",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.8888888888888888,
            "has_failure": true,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.36,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "catalog",
              "weather",
              "search",
              "calculator",
              "resolver"
            ]
          },
          {
            "task_id": "toolroute-l21-validation-44-0011",
            "split": "validation",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2857142857142857,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 1.9000000000000001,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "database",
              "maps"
            ]
          }
        ]
      },
      "test": {
        "split": "test",
        "metrics": {
          "answer_accuracy": 0.7833333333333333,
          "plan_exact_match": 0.7833333333333333,
          "plan_step_f1": 0.8076761201761202,
          "joint_success": 0.7833333333333333,
          "recovery_success_rate": 0.6666666666666666,
          "invalid_tool_rate": 0.009554140127388535,
          "irreversible_error_rate": 0.0,
          "average_tool_calls": 5.233333333333333,
          "average_cost": 4.687
        },
        "axis_metrics": {
          "clean": 1,
          "transient": 1,
          "ambiguous": 0.7,
          "fallback": 1,
          "irreversible": 1,
          "combined": 0
        },
        "telemetry": {
          "retries": 30,
          "reflections": 0,
          "skill_reuses": 261,
          "verifications": 38,
          "compressions": 19,
          "memory_writes": 29
        },
        "trace": [
          {
            "task_id": "toolroute-l21-test-44-0000",
            "split": "test",
            "axis": "transient",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.24,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0001",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2222222222222222,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0002",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.16,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "search",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0003",
            "split": "test",
            "axis": "irreversible",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.58,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "search",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0004",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.74,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0005",
            "split": "test",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.36,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "database",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0006",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.16,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "search",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0007",
            "split": "test",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.36,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "search",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0008",
            "split": "test",
            "axis": "fallback",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 0.9090909090909091,
            "has_failure": true,
            "tool_calls": 6.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 5.16,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "maps",
              "database",
              "search",
              "catalog",
              "weather",
              "calculator"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0009",
            "split": "test",
            "axis": "combined",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.2222222222222222,
            "has_failure": true,
            "tool_calls": 3.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 2.9000000000000004,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "validator",
              "maps",
              "search"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0010",
            "split": "test",
            "axis": "clean",
            "answer_ok": true,
            "plan_ok": true,
            "joint_ok": true,
            "plan_step_f1": 1.0,
            "has_failure": false,
            "tool_calls": 5.0,
            "invalid_calls": 0.0,
            "irreversible_errors": 0.0,
            "cost": 4.32,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "search",
              "validator",
              "maps",
              "database",
              "catalog"
            ]
          },
          {
            "task_id": "toolroute-l21-test-44-0011",
            "split": "test",
            "axis": "ambiguous",
            "answer_ok": false,
            "plan_ok": false,
            "joint_ok": false,
            "plan_step_f1": 0.25,
            "has_failure": false,
            "tool_calls": 2.0,
            "invalid_calls": 1.0,
            "irreversible_errors": 0.0,
            "cost": 2.22,
            "source": "l2.1/progrouter/public-observation-tool-loop",
            "calls": [
              "calendar",
              "files"
            ]
          }
        ]
      },
      "metrics": {
        "answer_accuracy": 0.7833333333333333,
        "plan_exact_match": 0.7833333333333333,
        "plan_step_f1": 0.8076761201761202,
        "joint_success": 0.7833333333333333,
        "recovery_success_rate": 0.6666666666666666,
        "invalid_tool_rate": 0.009554140127388535,
        "irreversible_error_rate": 0.0,
        "average_tool_calls": 5.233333333333333,
        "average_cost": 4.687
      },
      "axis_metrics": {
        "clean": 1,
        "transient": 1,
        "ambiguous": 0.7,
        "fallback": 1,
        "irreversible": 1,
        "combined": 0
      },
      "telemetry": {
        "retries": 30,
        "reflections": 0,
        "skill_reuses": 261,
        "verifications": 38,
        "compressions": 19,
        "memory_writes": 29
      },
      "trace": [
        {
          "task_id": "toolroute-l21-test-44-0000",
          "split": "test",
          "axis": "transient",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.24,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0001",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.2222222222222222,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.9000000000000004,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0002",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.16,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "search",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0003",
          "split": "test",
          "axis": "irreversible",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.58,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "search",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0004",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.74,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0005",
          "split": "test",
          "axis": "clean",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.36,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "database",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0006",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.16,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "search",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0007",
          "split": "test",
          "axis": "clean",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.36,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "search",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0008",
          "split": "test",
          "axis": "fallback",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 0.9090909090909091,
          "has_failure": true,
          "tool_calls": 6.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 5.16,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "maps",
            "database",
            "search",
            "catalog",
            "weather",
            "calculator"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0009",
          "split": "test",
          "axis": "combined",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.2222222222222222,
          "has_failure": true,
          "tool_calls": 3.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 2.9000000000000004,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "validator",
            "maps",
            "search"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0010",
          "split": "test",
          "axis": "clean",
          "answer_ok": true,
          "plan_ok": true,
          "joint_ok": true,
          "plan_step_f1": 1.0,
          "has_failure": false,
          "tool_calls": 5.0,
          "invalid_calls": 0.0,
          "irreversible_errors": 0.0,
          "cost": 4.32,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "search",
            "validator",
            "maps",
            "database",
            "catalog"
          ]
        },
        {
          "task_id": "toolroute-l21-test-44-0011",
          "split": "test",
          "axis": "ambiguous",
          "answer_ok": false,
          "plan_ok": false,
          "joint_ok": false,
          "plan_step_f1": 0.25,
          "has_failure": false,
          "tool_calls": 2.0,
          "invalid_calls": 1.0,
          "irreversible_errors": 0.0,
          "cost": 2.22,
          "source": "l2.1/progrouter/public-observation-tool-loop",
          "calls": [
            "calendar",
            "files"
          ]
        }
      ]
    }
  ],
  "diagnostics": {
    "split_episodes": {
      "train": 36,
      "validation": 60,
      "test": 60
    },
    "total_episodes": 468,
    "oracle_fields_exposed": false,
    "guide_endpoint": "absent",
    "split_family_overlap": false,
    "test_route_depths": [
      5,
      6
    ],
    "public_observation_type": "CapabilityObservation",
    "hidden_labels": [
      "answer",
      "allowed_steps",
      "canonical_route"
    ],
    "fidelity": "shared no-oracle held-out capability benchmark"
  },
  "evaluation_protocol": {
    "tier": "l2_capability",
    "seeds": [
      42,
      43,
      44
    ],
    "formal_comparison": true,
    "claim_policy": "held-out test, no guide/oracle; compare only within toolroute-l2.1-v1"
  },
  "provenance": {
    "dataset_fingerprint": "25d906c4d33d7476f423f672765ab420349dbc390492744612d987d6c614ec60",
    "artifact_path": "docs/agent-research/2608.25992-progrouter/metrics/toolroute-l2-seeds42-44.json",
    "original_code_commit": "current working tree"
  }
}
