taskPassRate property

double get taskPassRate

Overall task pass rate. Definition depends on suite kind:

  • regression: task passes only if every trial passes (pass^N where N=trialsPerRun)
  • capability: task passes if at least one trial passes (pass@N)
  • mixed: same as regression

Implementation

double get taskPassRate {
  final byTask = trialsByTask();
  if (byTask.isEmpty) return 0.0;
  final passing = byTask.values.where((trs) {
    if (suite.kind == SuiteKind.capability) {
      return trs.any((t) => t.allGradersPassed);
    }
    return trs.every((t) => t.allGradersPassed);
  }).length;
  return passing / byTask.length;
}