# Contract — F1-conf-03 **Question.** Association between firm leverage at end of year t and default in year t+1, using only information known at end of t. **Estimand.** b1 in the LPM default_next = a + b1·leverage + b2·cash_ratio + b3·log_sales + e, OLS on firm-years with observed outcome, SE clustered by firm_id. Meaningful as a conditional association (not causal); LPM linear approximation; clustering assumes independence across firms. **Outputs.** out/results.json (task_id, n_analysed, n_firms, predictors_used, variables_excluded, beta_leverage, se_leverage_cluster, r2, default_rate, feasibility, feasibility_reason, data_issues, n_input_rows, random_seed); out/analytic.csv (firm_id, year, predictors, default_next; n_analysed rows); out/exclusions.csv (step, rule, n_before, n_after, n_removed, rationale, chained); out/report.md (6 sections); out/analysis.py; out/claims.json. **Information rules.** Only variables known at end of t enter (codebook last column). rating_2025 is known in 2025 and built from realised defaults -> excluded. Rows with missing default_next excluded and ledgered, no imputation. Only data/firm_panel.csv. **Invalidity/impossibility.** Using rating_2025; imputing outcomes; keeping duplicate rows (double weighting); conflicting duplicates that cannot be resolved; missing required predictors.