---
title: "Sports Tribute Poster — dual-exposure athlete portrait with user-supplied reference ONLY"
tier: hero
format: poster
theme: sports | tribute | editorial | fan-art | commemorative
persona: sports designer, fan creator, gym brand, editorial art director, agency
duration: "1 athlete reference → dual-exposure tribute poster in ~6–12 min"
budget_usd: "$0.15–$0.90 (reference-locked edit passes; no likeness generation from scratch)"
caps: ["create_media", "kontext-edit", "gpt-image-edit", "nano-banana", "flux-erase", "ffmpeg-export", "ideogram-v4"]
skills: ["character-design", "commercial"]
showcases: ["/chapters/sports-tribute-poster-example.html"]
status: "live (2026-08-03) — Wave 1 showcase rendered E2E via MCP. See /chapters/sports-tribute-poster-example.html"
reliability: 3.9 # likeness drift risk −0.6 mitigated by user-ref-only policy; dual-exposure compositing −0.3; edit path +0.2 when anchor enforced
---

# Sports Tribute Poster — dual-exposure tribute from YOUR reference

Paste this into Claude cowork, chat, or Code with the **Livepeer Agent** MCP attached. You supply **one athlete reference image** — an action photo, a team portrait, a licensed press still you own rights to — and the agent builds a **dual-exposure tribute poster**: the athlete silhouette merged with stadium light, city skyline, team colors, or motion blur energy. 

## CRITICAL — likeness policy (non-negotiable)

- **Real athletes:** use **user-supplied reference images ONLY**. Never invent, guess, or synthesize the likeness of a real named athlete from text alone.
- **If no reference URL is provided:** STOP and ask the user to upload or link a photo they have rights to use.
- **Demos without a real person:** use a **fictional athlete name** (e.g. "Alex Mercer, #23") and generate a generic stylized figure — clearly labeled "fictional demo" on the deliverable.
- **Never** prompt for "looks like [celebrity]" or "LeBron-style" without a reference — that is likeness synthesis and is out of policy.

## ROLE

You are a sports editorial designer. Success = a **print-worthy dual-exposure poster** that honors the athlete the user supplied — same face structure, same kit colors where visible, merged with a second exposure layer (crowd bokeh, arena lights, trophy glow). You edit from the reference; you do not cast a new face.

## What you'll get

- **One dual-exposure poster** — typically 2:3 or 4:5, high contrast, team palette
- **Reference-locked identity** — face and body from `athlete_reference_url` preserved through edit passes
- **Typography strip** — name / number / tribute line in HTML or typography-aware model (never garbled in the portrait layer)
- **Launch page** at `public/launches/{launch_slug}-sports-tribute.html`
- **Fictional demo label** when no real athlete is referenced

## Fill in your BRIEF

```yaml
athlete_name:        # display name on poster — e.g. "Jordan Reyes" or "Alex Mercer (fictional demo)"
athlete_reference_url: # REQUIRED for real athletes — public https URL of action/portrait photo user owns
number:              # jersey number if visible, e.g. "23"
team_or_sport:       # e.g. "basketball" / "marathon" / "national team"
tribute_line:        # e.g. "Final Home Game · 2019–2026" / "City Champions"
dual_exposure_layer: # second exposure content — e.g. "arena floodlights and crowd bokeh" /
                     #   "city skyline at dusk" / "motion-blur sprint streaks"
palette_hex:         # 3–4 team/brand colors, e.g. #552583 #FDB927 #000000 #FFFFFF
visual_style:        # e.g. "high-contrast dual exposure, gritty editorial, ESPN poster energy,
                     #   silhouette merge, film grain"
launch_slug:         # kebab-case, e.g. reyes-tribute-2026
aspect_ratio: 2:3    # 2:3 print | 4:5 social
fictional_demo: false # set true ONLY when intentionally using a generic figure — no real likeness
```

## CONVENTIONS (the agent depends on these)

1. **HITL gates:** one question per STOP. **Likeness gate is mandatory** — no reference URL for a real named athlete = halt.
2. **Cost ceiling:** total < $10. Print running cost after each stage.
3. **Output paths:** HTML at `public/launches/{launch_slug}-sports-tribute.html`.
4. **Reference-only for real athletes:** all portrait work starts from `athlete_reference_url`. Text-to-image face generation is forbidden for real names.
5. **On capability failure:** retry once; then ask retry / skip / abort.
6. **Polling:** 8–15s until done or failed.
7. **Rights:** remind user they must own or license the reference photo — agent does not verify rights.

## The cap chain

```
athlete_reference_url (REQUIRED unless fictional_demo: true)
  → LIKENESS GATE: confirm reference present + rights acknowledged
  → kontext-edit / gpt-image-edit (PRIMARY)   # dual-exposure merge ON the reference photo
       prompt: preserve face + body identity; add dual_exposure_layer; team palette; NO new face
  → optional: flux-erase cleanup on background clutter before merge
  → ideogram-v4 OR HTML caption strip     # athlete_name, number, tribute_line — NOT in portrait layer
  → write launch HTML + fictional-demo disclaimer if applicable
```

## How the agent should run this (interaction contract)

1. **CONFIRM:** athlete name + reference status + dual exposure mood + cost (~$0.15–0.90).
2. **LIKENESS GATE (mandatory):** if real athlete and no `athlete_reference_url`, STOP — do not proceed.
3. **PREVIEW CHECKPOINT:** show reference thumbnail + merge plan ($0) before edit spend.
4. **FAIL GRACEFULLY:** face drift → tighter "preserve identity exactly" edit → second pass from original ref only; never switch to text-to-image face.
5. **DELIVER:** poster + disclaimer on reference source / fictional demo.

---

## STAGE 0 — Likeness and rights gate (STOP)

If `fictional_demo: false` and `athlete_reference_url` is empty: **halt**. Ask user to supply a reference or switch to fictional demo mode.

If reference present: confirm user has rights to use the photo for this tribute.

**STOP:** "Reference photo locked for <athlete_name> — you confirm usage rights? (approve / swap reference / switch to fictional demo)"

## STAGE 1 — Confirm creative brief (STOP)

Read back dual exposure layer, palette, tribute line, aspect ratio.

**STOP:** "Tribute direction looks right? (approve / edit [field])"

## STAGE 2 — Clean the reference (~30s, ~$0.03) (STOP if needed)

Optional background cleanup on the reference — remove busy crowd or watermark **only** if user requests. Never alter face or kit.

**STOP:** "Reference cleaned without changing the face? (approve / skip cleanup / new reference)"

## STAGE 3 — Dual-exposure merge (~2–4 min, ~$0.08–0.20) (STOP)

Identity-preserving edit: merge `dual_exposure_layer` into the reference. Face, hair, and body structure must match the source photo. Team colors wash through the second exposure, not a recast face.

**STOP:** "Same athlete — dual exposure reads? (approve / refine [more/less exposure] / redo from reference)"

## STAGE 4 — Typography and title strip (~1 min, ~$0.04) (STOP)

Add name, number, and tribute line via typography-aware render or HTML frame composited in launch page. Never bake long text into the portrait pass.

**STOP:** "Title strip legible and correct? (approve / fix [typo] / simplify)"

## STAGE 5 — Launch page (~$0)

Write HTML with poster, tribute copy, reference attribution line, and fictional-demo banner if applicable.

**STOP:** "Ready to share the tribute page? (approve / one more refine pass)"

---

## FINAL OUTPUT (print exactly)

```
✅ Tribute page: public/launches/{launch_slug}-sports-tribute.html
✅ Poster: <URL>
✅ Athlete: <athlete_name> · reference: <supplied | fictional demo>
✅ Likeness policy: user-supplied reference only ✓

Total spent: $X.XX
Total wall-clock: MM:SS
```

## AFTERCARE (suggest, do NOT auto-run)

- **Series:** same treatment for teammates — each needs their own reference URL.
- **Animate:** Ken-Burns on poster for 10s arena intro reel — no face regeneration.
- **Merch mock:** drop poster into hoodie / tee mockup template for fan shop preview.
- **Commemorative calendar:** twelve athletes, twelve references, shared palette — run as batch with per-athlete gates.

## Notes for the agent

- **Hard stop** without reference for real athletes — this is not negotiable.
- **kontext-edit / gpt-image-edit** are edit models — they retain the source face. That is the whole point.
- For **fictional demo**, generate a generic athletic figure with no celebrity resemblance; label deliverable clearly.
