pub struct AgenticTaskComparison {
pub task_id: String,
pub category: TaskCategory,
pub raw: Vec<TuneTaskResult>,
pub gglib: Vec<TuneTaskResult>,
}Expand description
One task’s outcome under both arms, for drill-down.
Both sides carry one entry per seed, in seed order, rather than a single result. Collapsing them to a representative run would hide the thing a multi-seed eval is for: a task that passes 3/3 under one arm and 1/3 under the other is a different finding from one that passes 3/3 versus 0/3, and both render as “passed / failed” once the per-seed detail is gone.
Fields§
§task_id: StringTask identifier from the suite.
category: TaskCategoryThe task’s BFCL-style category.
raw: Vec<TuneTaskResult>Per-seed results under the raw arm, in seed order.
gglib: Vec<TuneTaskResult>Per-seed results under the gglib arm, in seed order.
Implementations§
Source§impl AgenticTaskComparison
impl AgenticTaskComparison
Sourcepub fn pass_counts(&self) -> (usize, usize)
pub fn pass_counts(&self) -> (usize, usize)
How many of this task’s seeds passed under each arm.
The per-task view of stability: (2, 3) means two of three seeds
passed, which is a materially different claim from a bare passed: true taken from whichever seed happened to run first.
Sourcepub fn is_unstable(&self) -> bool
pub fn is_unstable(&self) -> bool
Whether either arm disagreed with itself across seeds.
A task that flips between passing and failing on identical configuration is where suite-level variance comes from, and naming it per task is what turns “the numbers moved” into something actionable.
Trait Implementations§
Source§impl Clone for AgenticTaskComparison
impl Clone for AgenticTaskComparison
Source§fn clone(&self) -> AgenticTaskComparison
fn clone(&self) -> AgenticTaskComparison
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more