d3bc43daca
Created critique_criteria.py with purpose-specific evaluation: TUTORIAL: - Clarity (30%), Completeness (25%), Progressiveness (20%) - Actionability (15%), Error Prevention (10%) EXPLAINER: - Analogy Quality (25%), Examples (25%), Mental Model (20%) - Depth (15%), Misconceptions (15%) TRANSFORMATION: - Emotional Honesty (30%), Relatability (25%), Hope (20%) - Specificity (15%), Actionability (10%) DECIDE: - Evidence Quality (30%), Balance (25%), Credibility (20%) - Clarity (15%), Completeness (10%) REFERENCE: - Accuracy (35%), Completeness (30%), Organization (20%) - Examples (15%) INSPIRED: - Emotional Impact (30%), Vision (25%), Authenticity (25%) - Story Quality (20%) Each criterion has: - Weight - Description - Evaluation questions - Pass threshold Functions: - get_critique_criteria(purpose) → CritiqueCriteriaSet - evaluate_chapter(content, purpose) → scores - get_evaluation_prompt(content, purpose) → LLM prompt - list_all_criteria() → overview