systemprompt_evaluation/repository/
mod.rs1mod cases;
8mod judge_calls;
9mod results;
10mod rubrics;
11mod runs;
12mod sampling;
13
14pub use cases::EvalCaseRepository;
15pub use judge_calls::{EvalJudgeCallRepository, JudgeCallRecord};
16pub use results::EvalResultRepository;
17pub use rubrics::EvalRubricRepository;
18pub use runs::EvalRunRepository;
19pub use sampling::SamplingRepository;
20
21use crate::error::Result;
22use systemprompt_database::DbPool;
23
24#[derive(Debug, Clone)]
25pub struct EvalRepositories {
26 pub runs: EvalRunRepository,
27 pub cases: EvalCaseRepository,
28 pub results: EvalResultRepository,
29 pub rubrics: EvalRubricRepository,
30 pub sampling: SamplingRepository,
31}
32
33impl EvalRepositories {
34 pub fn new(db: &DbPool) -> Result<Self> {
35 Ok(Self {
36 runs: EvalRunRepository::new(db)?,
37 cases: EvalCaseRepository::new(db)?,
38 results: EvalResultRepository::new(db)?,
39 rubrics: EvalRubricRepository::new(db)?,
40 sampling: SamplingRepository::new(db)?,
41 })
42 }
43}