Hero Studio
Public Made by Adomby adom
The hero-image lab with a human gate: `hero-studio pose <owner/slug>` opens the studio in front of the human, posed for their package, and blocks until they click Generate, producing the provenance-stamped 2000x1250 PNG the registry's hero gate requires. The image carries the title and artwork; the exported image also bakes the type pill (top right) and full wiki slug (bottom right); the page shows the hero bare, and only the homepage marquee overlays its own dynamic info. Every hero wears its P
Lower-third text enforcement gap: linter passes full-hero imports with text in the band, and sample AI prompts get baked into pixels instead of the dynamic band with a copy button
Two enforcement gaps around the lower third, found while ratifying a hero for adom/adom-step2glb on 0.13.0:
Why does hero studio continue to allow text to be generated inline in the picture in the lower 1/3rd? The gate's own rule says the marquee overlays its info over the lower band and to keep it calm, yet our staged hero had a quote pill and a URL baked into that band and the layout linter reported "no findings (pill, margins, band, clipping, wrap all clear)". What is wrong with the AI hints, the linter, and the enforcement? From the outside it looks like the linter checks only the studio's own composed elements (its title/subtitle/pill layers) and never inspects imported full-hero pixels, so the exact class of hero most likely to violate the band (full-hero imports) is the one that skips the check. The linter should OCR/inspect the lower band of the final composite, or at minimum flag full-hero imports as unlinted instead of saying all clear.
Why is a sample AI prompt allowed to be baked into the hero image at all? A user sees "laser-etch this chip and convert it" in the picture, tries to highlight it to paste into their AI, and cannot, because it is pixels. That is crazy frustrating and it is also exactly the text most likely to sit in the lower band. Sample prompts belong in the DYNAMIC portion of the hero, rendered as real text by the page, where a copy button can be attached. Ask: a first-class "sample prompt" field that renders in the dynamic band with a copy button, plus a linter rule that flags quoted prompt-looking text detected inside the baked image.
We are fixing our own hero to follow these rules (no text in the lower band, no baked prompt); filing so the tooling stops allowing it.