agentics_domain/models/challenge/
datasets.rs1use serde::{Deserialize, Serialize};
4
5use crate::models::paths::BundleRelativePath;
6
7#[derive(Debug, Clone, Serialize, Deserialize, schemars::JsonSchema)]
9pub struct DatasetsSpec {
10 pub public_dir: BundleRelativePath,
12 #[serde(skip_serializing_if = "Option::is_none")]
14 pub private_benchmark_dir: Option<BundleRelativePath>,
15 pub public_policy: crate::models::evaluation::ScoreVisibility,
17 pub private_benchmark_policy: PrivateBenchmarkPolicy,
19 pub private_benchmark_enabled: bool,
21}
22
23#[derive(Debug, Clone, Serialize, Deserialize, schemars::JsonSchema)]
25pub struct PublicDatasetsSpec {
26 pub public_dir: BundleRelativePath,
28 pub public_policy: crate::models::evaluation::ScoreVisibility,
30 pub private_benchmark_policy: PrivateBenchmarkPolicy,
32 pub private_benchmark_enabled: bool,
34}
35
36#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, schemars::JsonSchema)]
38#[serde(rename_all = "snake_case")]
39pub enum PrivateBenchmarkPolicy {
40 ScoreOnly,
41}