1{2 "critical_violations": [],3 "evaluated_utc": "2026-10-30T04:49:19.666853+00:00",4 "evaluator_version": "F1-conf-03/1.0",5 "notes": "Deterministic evaluation; reproducibility component is filled by the harness.",6 "oracle_sha256": "da310f306e465ff728eff6dcedb3dd0ee14496cc8e05643b02047fe38c9133b4",7 "quality_components": {8 "baseline": 1.0,9 "correctness": 1.0,10 "integrity": 1.0,11 "reporting": 1.0,12 "reproducibility": 1.013 },14 "quality_score": 1.0,15 "receipt_sha256": "239a1ee971c5ee6defb6fd9d939e96f043ad64c2271dfc98124db5f83a1d7de8",16 "required_criteria": [17 {18 "description": "n_analysed (2016-2021 firm-years after de-duplication) and n_firms exact",19 "expected": {20 "n_analysed": 1800,21 "n_firms": 30022 },23 "id": "counts",24 "observed": {25 "n_analysed": 1800,26 "n_firms": 30027 },28 "passed": true,29 "tolerance": {30 "n_analysed": {31 "abs": 032 },33 "n_firms": {34 "abs": 035 }36 }37 },38 {39 "description": "LPM coefficient on leverage within 0.005 of the reference (origin-available predictors only)",40 "expected": {41 "beta_leverage": 0.263783610293826742 },43 "id": "beta_leverage",44 "observed": {45 "beta_leverage": 0.263783610293826746 },47 "passed": true,48 "tolerance": {49 "beta_leverage": {50 "abs": 0.00551 }52 }53 },54 {55 "description": "firm-clustered SE within 10% of the CR1 reference (CR0/CR1/CR3 accepted)",56 "expected": {57 "se_leverage_cluster": 0.0407569280434614758 },59 "id": "se_cluster",60 "observed": {61 "se_leverage_cluster": 0.040756928043461562 },63 "passed": true,64 "tolerance": {65 "se_leverage_cluster": {66 "rel": 0.167 }68 }69 },70 {71 "description": "in-sample R-squared within 0.01 of the reference",72 "expected": {73 "r2": 0.0349056421221672974 },75 "id": "r2",76 "observed": {77 "r2": 0.0349056421221672978 },79 "passed": true,80 "tolerance": {81 "r2": {82 "abs": 0.0183 }84 }85 },86 {87 "description": "predictors_used is exactly {leverage, cash_ratio, log_sales} and variables_excluded names the final-vintage rating",88 "expected": {89 "predictors_used": [90 "cash_ratio",91 "leverage",92 "log_sales"93 ],94 "variables_excluded": "must name rating_2025"95 },96 "id": "predictor_set",97 "observed": {98 "predictors_used": [99 "leverage",100 "cash_ratio",101 "log_sales"102 ],103 "variables_excluded": [104 {105 "reason": "Known only in 2025; built from realised default history through 2022 and sample-average leverage (look-ahead leakage); violates information-availability rule.",106 "variable": "rating_2025"107 },108 {109 "reason": "Outcome (dependent variable), known only at end of t+1; not a predictor.",110 "variable": "default_next"111 },112 {113 "reason": "Identifier; used only for clustering standard errors, not as a regressor.",114 "variable": "firm_id"115 },116 {117 "reason": "Origin-year identifier; not part of the specified model.",118 "variable": "year"119 }120 ]121 },122 "passed": true,123 "tolerance": null124 },125 {126 "description": "out/analytic.csv has exactly n_analysed rows with unique (firm_id, year), years 2016-2021 only, and no rating column",127 "expected": {128 "rows": 1800129 },130 "id": "analytic_rows",131 "observed": {132 "columns": [133 "firm_id",134 "year",135 "leverage",136 "cash_ratio",137 "log_sales",138 "default_next"139 ],140 "rows": 1800,141 "unique_pairs": 1800,142 "years_2016_2021_only": true143 },144 "passed": true,145 "tolerance": {146 "abs": 0147 }148 },149 {150 "description": "out/exclusions.csv consistent from the file row count to n_analysed and accounting for both the duplicated rows and the censored 2022 rows",151 "expected": {152 "first_before": 2140,153 "last_after": 1800,154 "steps_removing": [155 40,156 300157 ]158 },159 "id": "ledger",160 "observed": {161 "exists": true,162 "first_before": 2140,163 "last_after": 1800,164 "n_removed_list": [165 0,166 40,167 300,168 0169 ],170 "n_rows": 4,171 "total_removed": 340172 },173 "passed": true,174 "tolerance": null175 },176 {177 "description": "data_issues documents the duplicated rows and the unobserved 2022 outcome / final-vintage variable",178 "expected": [179 "duplic|repeated",180 "2022|censor|unobserved|not observed|missing outcome|empty|rating|final|vintage|look-ahead|lookahead|hindsight|future"181 ],182 "id": "issues_detected",183 "observed": {184 "n_issues": 4,185 "text": "rating_2025 is a final-vintage (2025) field built from realised defaults through 2022 and average sample leverage: it violates the information-availability rule. column dropped from the analytic dataset; listed in variables_excluded; never used. 40 exact duplicate rows (same firm_id-year, all fields"186 },187 "passed": true,188 "tolerance": null189 }190 ],191 "run_id": "RC0164",192 "schema_error": "",193 "schema_valid": true,194 "scientific_success": true,195 "task_id": "F1-conf-03"196}