Individual skill

make-static-ads-render-review

Step of make-static-ads: a fresh judge checks every render against its concept-board row and the official product photos, one retry inside the marketer's approval, then the claims and set checks; records each verdict in tags and the batch file. Run make-static-ads instead; not for direct use.

skills/marketing/make-static-ads-render-review/SKILL.md

Read pinned source

Source commit df8298140d434a6363de0c265eb6af2e571d97a5

What was checked

Matches the observed repository HEAD
Yes
Scanner rules are current
No
Repository scan complete
No
Skill scan complete
No
Observed behavior
Not checked yet
Last checked
Nov 11, 2026

These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.

Install this skill

Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.

An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.

Repository context

Repository stars (not skill ratings)
1,315
Repository last updated
Nov 6, 2026
License
MIT

Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.

Files and excerpt

File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.

Browse files
Read excerpt

# render-review

Shared principles for reviewing generated media (looking vs reading metadata, unseen images): the `honest-review` skill (`../honest-review/SKILL.md`). Checks and their severities: `../make-static-ads/references/review-rubric.md`. This file is the one home of the retry rule.

**Reads:** each render (`gooseworks:ads_creative_read` `creative_id`, `include: ["renders"]`), its board row (level, style and template), its exact prompt and copy, `profile.md` with two of the brand's own ads, the official product photos or UI screenshots, and the logo.
**Writes:** per render the verdict and the failed checks; retries; the drop list; tags; all of it in the batch file.

0. **Failed or empty render.** Say so in one line. Read the job (`gooseworks:job_get`): charged, or no charge shown → it counts as this ad and ratio's first try; its one retry (step 5) is still covered; clearly uncharged → submit the same quoted request once more, outside the retry. If that fails too, stop for that ad and ratio and tell the marketer.
1. **Place the logo on every try** (unless the marketer said none; then, as with no shell, the raw render is the kept version): on a shell host run `../make-static-ads/scripts/place_logo.py` with the real logo file (corner and width as the prompt left clear), upload the result with `gooseworks:media_upload` (`scope: "brand"`, `kind: "image"`, `source: {type: "bytes"}`, base64, under 8 MB), and `gooseworks:ads_save` it with the raw render's creative as `parent_creative_id`. This logo version is what the judge sees, what gets the tags, and what the marketer receives; tag the raw render `superseded`. Record the box the script prints. No shell: the marketer's choice (playbook Step 2, or graphic-request step 3): a clear corner they fill, or the model's logo; the raw render is then the kept version.
2. **The judge.** A fresh subagent gets only: the kept version (step 1), the product photos or screenshots and logo, the exact on-image copy, the board row's visual idea, style, protected choice, level, and the template's image with its description, `profile.md` with two of the brand's own ads, and the rubric. Not the conversation. It runs every rubric check except 1, 7, 12, 17, 19, 20, 21 and 29, and returns each failed check's number and severity with one sentence each. It works in the rubric's Order. For software, the screen must match the real screenshot in layout, colours and its large labels; soft small UI text is a NOTE, never a retry. No subagents → you judge from exactly those inputs, and the batch file says so.
3. **Your checks**, on every try: 1 by Pass B of the `make-static-ads-claims-extract` skill (`../make-static-ads-claims-extract/SKILL.md`: invented badges, stars, prices, changed words); 7 by the price rule (`../make-static-ads/references/claims-and-policy.md` §2); 21 against the copy (12 and 17 ran at the copy step; re-run them only on changed copy); 20 against the permissions on file; 29 against the made-before list; for a direct competitor's template, 22's side-by-side with both logos covered.
4. **Verdict**, in this order:
   - Label drift only (scene, shape and pose pass): the free repair first. A shell host may patch the official label's real pixels in with `../make-static-ads/scripts/repair_patch.py` (`../make-static-ads/scripts/repair_patch.md`), then judge the patched image again in full; keep the original render. A seam, altered geometry or wrong product still fails.
   - A stray mark or small artifact outside the protected choice and the words: a free pixel fix on a shell host, then judged again in full.
Back to top