feat(altair): implement area-mountain-panorama#9563
Conversation
Regen from quality 93. Key improvements: - canvas: fixed to 3200×1800 via width=620 height=190 scale_factor=4.0 with PIL pad-only - alpenglow rim highlight added at sky-to-silhouette boundary (DE-01) - "python" language token added to title - elevation sub-labels raised to fontSize=12 (48 source px at scale_factor=4.0) - "Imprint palette" comment (was "Okabe-Ito") corrected - label overlap fixed: reduced to 6 peaks (dropped Ober Gabelhorn/Liskamm); Dent Blanche uses right-align text to clear Matterhorn SPECIAL label at 14° gap Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
AI Review - Attempt 1/3Image Description
Score: 85/100
Visual Quality (27/30)
Design Excellence (15/20)
Spec Compliance (13/15)
Data Quality (12/15)
Code Quality (10/10)
Library Mastery (8/10)
Score Caps Applied
Strengths
Weaknesses
Issues Found
AI Feedback for Next Attempt
Verdict: REJECTED |
Attempt 1/3 - fixes based on AI review
🔧 Repair Attempt 1/4Applied fixes based on AI review feedback. Status: Repair completed, re-triggering review... |
AI Review - Attempt 2/3Image Description
Score: 84/100
Visual Quality (22/30)
Design Excellence (15/20)
Spec Compliance (15/15)
Data Quality (15/15)
Code Quality (10/10)
Library Mastery (7/10)
Score Caps Applied
Strengths
Weaknesses
Issues Found
AI Feedback for Next Attempt
Verdict: APPROVED |
Summary
width=620 height=190 scale_factor=4.0+ PIL pad-only; explicitalt.Scaleon secondary layers was found to cause ~2× height overhead in vl-convert (sky layer is the sole scale anchor)mark_line, ALPENGLOW color, strokeWidth=3.5) added at the sky-to-silhouette boundary (DE-01 improvement)"python"language token added to mandated title stringfontSize=12(= 48 source px at scale_factor=4.0, ≥ 48 px spec requirement)align="right"so its text extends left of the leader, clearing Matterhorn's center-aligned SPECIAL label at 14°/48px gapTest plan
ANYPLOT_THEME=light python altair.py→plot-light.png= 3200×1800 ✓ANYPLOT_THEME=dark python altair.py→plot-dark.png= 3200×1800 ✓ruff check --fix+ruff format— clean ✓🤖 Generated with Claude Code