Skip to main content

batuta/falsification/hypothesis_driven/
mod.rs

1//! Section 3: Hypothesis-Driven & Equation-Driven Development (HDD-01 to EDD-03)
2//!
3//! Implements Scientific Method integration for ML development.
4//!
5//! # TPS Principles
6//!
7//! - **Scientific Method**: Falsifiable hypotheses, pre-registration
8//! - **Muda**: Overprocessing prevention via baseline comparison
9//! - **Kaizen**: Learning from negative results
10
11mod edd;
12mod hdd_reproducibility;
13mod hdd_scientific;
14mod helpers;
15
16#[cfg(test)]
17mod tests;
18
19use super::types::CheckItem;
20use std::path::Path;
21
22// Re-export all check functions for public API
23pub use edd::{
24    check_emc_completeness, check_equation_verification, check_numerical_analytical_validation,
25};
26pub use hdd_reproducibility::{
27    check_baseline_comparison, check_data_version_control, check_environment_containerization,
28    check_gold_reproducibility, check_hypothesis_statement, check_random_seed_documentation,
29};
30pub use hdd_scientific::{
31    check_ablation_study, check_metric_preregistration, check_negative_result_documentation,
32    check_statistical_significance,
33};
34
35/// Evaluate all Hypothesis-Driven Development checks.
36pub fn evaluate_all(project_path: &Path) -> Vec<CheckItem> {
37    vec![
38        check_hypothesis_statement(project_path),
39        check_baseline_comparison(project_path),
40        check_gold_reproducibility(project_path),
41        check_random_seed_documentation(project_path),
42        check_environment_containerization(project_path),
43        check_data_version_control(project_path),
44        check_statistical_significance(project_path),
45        check_ablation_study(project_path),
46        check_negative_result_documentation(project_path),
47        check_metric_preregistration(project_path),
48        check_equation_verification(project_path),
49        check_emc_completeness(project_path),
50        check_numerical_analytical_validation(project_path),
51    ]
52}