Skip to content

chore(sparkline-basic): populate altair quality_score + review (90/100)#5654

Merged
MarkusNeusinger merged 1 commit intomainfrom
chore/sparkline-basic-altair-review-data
May 2, 2026
Merged

chore(sparkline-basic): populate altair quality_score + review (90/100)#5654
MarkusNeusinger merged 1 commit intomainfrom
chore/sparkline-basic-altair-review-data

Conversation

@MarkusNeusinger
Copy link
Copy Markdown
Owner

Summary

PR #5653 (regen of altair sparkline-basic) merged with quality_score: null and a stale review block still referencing the old #306998 Python Blue palette and pyplots.ai title. The Cloud AI review pipeline (impl-review.yml) is not dispatched on regen PRs (the regen flow sets ai-approved directly), so this metadata never got populated automatically.

This PR fills it in by locally evaluating both rendered themes against prompts/quality-criteria.md.

Score: 90/100 — APPROVED

Category Score
Visual Quality 30/30
Design Excellence 13/20
Spec Compliance 15/15
Data Quality 14/15
Code Quality 10/10
Library Mastery 8/10

DE/LM ceilings reflect structural limits: spec is `basic` (annotations forbidden, capping DE-03) and Altair's layered composition is idiomatic but not deeply distinctive (LM-02).

What's populated

  • quality_score: 90 (was null)
  • review.image_description — fresh description of the regenerated plot (both themes)
  • review.strengths / review.weaknesses — current state, no longer references retired colors
  • review.criteria_checklist — full breakdown across all 6 categories using the current quality-criteria schema (VQ-01…VQ-07, DE-01…DE-03, SC-01…SC-04, DQ-01…DQ-03, CQ-01…CQ-05, LM-01…LM-02). Old file used a stale schema without the Design Excellence category.
  • review.verdict: APPROVED (review-1 threshold ≥ 90)
  • impl_tags.styling += okabe-ito, theme-aware-chrome
  • impl_tags.techniques += theme-adaptive

Going forward

/regen (PR #5650) now requires the local flow to view both light and dark renders and write quality_score + review on every iteration — so this kind of follow-up shouldn't be needed again.

Test plan

  • CI green (lint, tests, codeql)
  • sync-postgres run after merge picks up new quality_score and review

Generated by /regen follow-up (no Cloud AI review dispatched).

Copilot AI review requested due to automatic review settings May 2, 2026 21:52
@MarkusNeusinger MarkusNeusinger merged commit c8fd67f into main May 2, 2026
8 checks passed
@MarkusNeusinger MarkusNeusinger deleted the chore/sparkline-basic-altair-review-data branch May 2, 2026 21:53
…100)

PR #5653 (regen) merged with quality_score: null and stale review data
referencing the old #306998 palette and pyplots.ai title. Cloud AI review
is not dispatched on regen PRs (ai-approved is set directly), so the local
regen flow must populate this data itself — which it didn't.

Locally re-evaluated both light and dark renders against
prompts/quality-criteria.md. Current score: 90/100, verdict APPROVED:

  VQ: 30/30 | DE: 13/20 | SC: 15/15 | DQ: 14/15 | CQ: 10/10 | LM: 8/10

DE/LM ceilings reflect that the spec is `basic` (annotations forbidden)
and that layered Altair composition isn't deeply distinctive. Strengths
and weaknesses, image_description, and the full per-criterion checklist
are populated so the next regen has accurate context.

Also adds language: python and theme-adaptive / okabe-ito tags to
impl_tags now that the implementation is theme-aware.

Going forward this is automatic — agentic/commands/regen.md (PR #5650)
now requires the regen flow to view both renders and write quality_score
+ review on every iteration.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR backfills review metadata for the regenerated Altair implementation of sparkline-basic, bringing its YAML metadata in line with the repo’s current quality-review schema and the theme-aware implementation already in the codebase.

Changes:

  • Populates quality_score from null to 90.
  • Rewrites the review block to use the current 6-category scoring schema and updated plot description.
  • Adds new implementation tags for theme-aware styling and adaptive rendering.

preview_html_light: https://storage.googleapis.com/anyplot-images/plots/sparkline-basic/python/altair/plot-light.html
preview_html_dark: https://storage.googleapis.com/anyplot-images/plots/sparkline-basic/python/altair/plot-dark.html
quality_score: null
quality_score: 90
MarkusNeusinger added a commit that referenced this pull request May 2, 2026
## Summary

Follow-up to #5653 / #5654. The `/regen` flow blanked the `Quality:`
line in the docstring header — it now reads `Quality: /100`, but should
match the metadata's `quality_score: 90` populated in #5654.

```diff
-Quality: /100 | Updated: 2026-05-02
+Quality: 90/100 | Updated: 2026-05-02
```

The `regen.md` template (PR #5650) is being updated in parallel to
require `{SCORE}/100`, not blank, so future regens won't drop the score.

## Test plan

- [ ] CI green
- [ ] header matches metadata `quality_score: 90`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants