Skip to content

Add v2 artwork and card-data release script with SVG defaults - #19

Merged
ralyodio merged 1 commit into
masterfrom
feat/artwork-data-v2
Sep 13, 2026
Merged

ralyodio merged 1 commit into
masterfrom
feat/artwork-data-v2

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

The existing card pipelines produce PNG artwork and have previously allowed image generation to alter factual card text. This adds a separate, resumable edition-2 release workflow covering the existing 277 cards across all six series.

pnpm release:v2 authors native SVG contribution artwork through gpt-6-astra with xhigh reasoning. --format png uses gpt-image-2; --png-fallback opts into Image 2 after invalid SVG fails repair, and --png-copies exports raster copies of vector faces. The artwork direction uses original editorial compositions derived from each person's work, avoiding Magic: The Gathering styling and invented portraits. Names and factual copy are typeset separately.

NicheDB integration uses /api/v1/search, requires corroborated person matches, and records source URLs, timestamps, match reasons and copied metadata. Missing, unconfirmed and unavailable data are distinguished; existing curated biographies remain intact. A live lookup for Linus Torvalds returned no records.

The builder stages artwork, card JSON, a review gallery, provenance, checksums and per-card checkpoints. Validation rejects incomplete/corrupt releases. activate updates local artwork paths and copies final assets; it does not deploy or tag. Social preview rendering now supports SVG masters, and v2 cards no longer display obsolete photo-portrait attribution.

Validation: 14 automated tests pass (mocked API calls, SVG safety/rendering, metadata matching, PNG fallback, resume/recovery and activation); all 277 real cards fit the text layout; pnpm exec tsc --noEmit and git diff --check pass. Visually inspected front/back layout with fixture art. No paid artwork was generated because OPENAI_API_KEY is not configured in this environment.

Start with a one-card proof:

pnpm release:v2 --series legends --only 2 --out dist/releases/v2-proof

See docs/artwork-v2.md for configuration, full release generation, review, activation and recovery.

@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​xmldom/​xmldom@​0.9.1210010010091100

View full report

@github-actions

Copy link
Copy Markdown

ThreatCrush Security Scan

7 finding(s)

MEDIUM: 7

Severity Rule Location
MEDIUM js-credential-logged scripts/migrate.mjs:16
MEDIUM js-unescaped-html-sink src/app/cards/[slug]/page.tsx:60
MEDIUM js-unescaped-html-sink src/app/gods-of-ai/[slug]/page.tsx:68
MEDIUM js-unescaped-html-sink src/app/hacking-legends/[slug]/page.tsx:68
MEDIUM js-unescaped-html-sink src/app/security-professionals/[slug]/page.tsx:68
MEDIUM js-unescaped-html-sink src/app/tech-ceos/[slug]/page.tsx:68
MEDIUM js-unescaped-html-sink src/app/women-in-tech/[slug]/page.tsx:68

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio marked this pull request as ready for review September 13, 2026 18:46
@ralyodio
ralyodio merged commit aebe4f4 into master Sep 13, 2026
4 checks passed
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.

1 participant