# Prompt Taxonomy

Every style scores on six axes. This is the language the marketplace uses, the language style authors use, and the language we use to talk to ourselves about what we're building. Get this right and everything downstream — UI affordances, trust copy, model routing — falls into place.

## The six axes

### 1. Aggressiveness — 1 to 5

How much of the photo can change.

| Score | Name | Plain English |
| --- | --- | --- |
| 1 | Subtle | Cleanup only. A grandparent wouldn't notice. |
| 2 | Polished | Pro retouch. Your photographer friend would notice. |
| 3 | Stylized | Color/light-graded. Everyone notices. |
| 4 | Restaged | Subjects repositioned, environment decluttered. |
| 5 | Reimagined | New scene, same memory. |

### 2. Identity — strict / soft / reimagined

How much faces, bodies, and recognizable features stay the same.

- **strict** — pixel-stable faces. The most we'll do is remove a stray hair or a closed eye.
- **soft** — face is preserved as *recognizably the same person*, but minor smoothing, eye-line correction, and expression nudging is allowed.
- **reimagined** — the person is the same person, but their pose, clothing, hair, or makeup can change. Their face stays theirs.

We **never** swap identities. That's a hard constraint at the engine level, not a style setting.

### 3. Geometry — locked / adjusted / free

What can change about the framing.

- **locked** — exact crop, exact aspect ratio, no extension.
- **adjusted** — straighten, minor crop, ≤10% outpaint allowed.
- **free** — the model can reframe entirely, including aspect ratio.

### 4. Color — neutral / graded / stylized

- **neutral** — natural white balance, true-to-life saturation.
- **graded** — intentional color grade (warm, cool, cinematic) but still believable.
- **stylized** — explicit aesthetic (film stock, golden-hour, monochrome, anime, etc.).

### 5. Subject — as-shot / posed-adjusted / restaged

What can happen to the people (or food, or product) in the frame.

- **as-shot** — exactly as captured.
- **posed-adjusted** — minor pose corrections: open eyes, straighten shoulders, hand position fixes.
- **restaged** — the subject can be repositioned, regrouped, or have their clothing/hair changed.

### 6. Environment — cleaned / decluttered / replaced

- **cleaned** — remove lens flares, dust, photobombers in the deep background.
- **decluttered** — remove distracting objects, simplify the background, fix exposure on background.
- **replaced** — new background entirely.

## The trust contract

Identity, geometry, and subject scores **must be visible on every style card**. They are the user's trust contract — if a user thinks they're using a "cleanup" style and it restages their friends, we've broken something they care about.

The UI shows these as three small icons on every marketplace card and a full explainer on every style detail page.

## Default routing

The model router maps aggressiveness + identity preservation to a default model:

| Aggressiveness | Identity | Default model | Why |
| --- | --- | --- | --- |
| 1–2 | strict | **Gemini 2.5 Flash Image** | Best identity preservation, cheapest, fastest. |
| 3 | strict/soft | **Gemini 2.5 Flash Image** | Still wins on identity at moderate edits. |
| 3–4 | soft | **gpt-image-1** | Better at compositional changes. |
| 4–5 | reimagined | **gpt-image-1** | Wins on creative restaging. |

Style authors can override the default in their style.md frontmatter.

## What this taxonomy is for

1. **The user knows what they're opting into.** Three icons on a card tell them more than a paragraph.
2. **Style authors have a vocabulary.** "Aggressiveness 4, identity soft, geometry adjusted" is a complete brief.
3. **The model router has a routing key.** We don't need an LLM to decide which API to call — the style declares it.
4. **The marketplace filters cleanly.** "Show me only styles that preserve identity strictly and aren't aggressive past 2" is a one-click filter.
