Skip to content

v2.1.0 — Tri-state theme, pipeline resilience & 2 new plot types

Choose a tag to compare

@MarkusNeusinger MarkusNeusinger released this 25 Apr 22:08
048f38f

Three days after the anyplot.ai relaunch (v2.0.0), this release adds two new plot types, completes library coverage on two more, regenerates five existing plots for higher quality, introduces a tri-state theme mode, and hardens the implementation pipeline against transient Claude Code Action failures. No breaking changes — drop-in over v2.0.0.

🎨 New plot types

Two brand-new specifications, fully (or near-fully) rolled out across the nine supported libraries:

Spec Coverage Description
venn-labeled-items 9/9 Venn diagram with labeled members per region
area-mountain-panorama 7/9 Panoramic alpine silhouette with labeled summits — spec was refined mid-flight to require jagged piecewise-linear ridgelines and forbid Gaussian peaks (#5411). bokeh + highcharts still in-flight.

✅ Coverage filled on existing plots

Spec New library Status before / after
donut-basic plotnine 8/9 → 9/9
contour-basic pygal 8/9 → 9/9

🔁 Regenerated plots

The following existing specs were regenerated for quality / pipeline alignment — same plot type, fresh code:

  • gauge-basic (9 libs)
  • errorbar-basic (9 libs)
  • ecdf-basic (9 libs)
  • sudoku-basic (9 libs)
  • scatter-basic (6 libs)

🌗 Tri-state theme mode

The site theme toggle gained a third state: system / light / dark with live OS sync. The site now follows the OS theme automatically by default, while still respecting an explicit user override (#5412).

🔧 Implementation pipeline resilience

The impl-generate / impl-review / impl-repair pipeline is now self-healing against transient Claude Code Action failures (#5410):

  • Generate retry budget bumped from 2 → 3 attempts, aligning with the existing failure-label description and the repair phase budget.
  • Repair workflow gained a failure handler that restores ai-rejected and auto-retries the same attempt once via a marker comment, then falls back to manual.
  • Review auto-retries once via repository_dispatch for both Claude crashes and missing/invalid quality_score.txt outputs.
  • All marker counts now use --paginate --per_page=100 so they stay reliable on PRs/issues with many comments.

📊 Analytics & SEO

  • Tracking added for the landing-page hero, libraries section, palette section, navigation, and footer interactions — the new chrome from v2.0.0 is now properly instrumented (#5400).
  • Tightened SEO metadata for landing-page sections.

🎨 Frontend polish

  • Scroll restoration: route changes now scroll to top (#5403) and the prior scrollRestoration value is preserved across mount/unmount (#5404).
  • Code view: paper aesthetic in light mode, brand-green comments, overflow fix (#5401).
  • Filter bar: widened mobile search input, dark-mode text fixed (#5363).

🛠️ Backend / API

  • Specs API: in-memory caching for spec lookups, sturdier error responses.
  • Debug status: daily activity & common-weaknesses tracking added to the debug endpoint.
  • Regeneration: review feedback from the previous attempt is now extracted and passed to Claude during regeneration, so subsequent runs improve on prior weaknesses.

🧰 Tooling

  • Audit command expanded with four new auditors and best-practice mechanics (#5402).

Migration notes

None. This release is a drop-in upgrade over v2.0.0.

Full Changelog: v2.0.0...v2.1.0