# Qwen 3 4B - Evaluation

## Instruction Following: Did it only list snippets or also tell what to implement?

- **Heavily violates the core instruction.** The prompt explicitly said "DON'T CHANGE ANY CODE, JUST GIVE ME THE SNIPPETS I NEED" but the response:
  - Tells you exactly what to add (`prefixImage: UIImage?` to `PosterDecoration`)
  - Provides a "Final Answer: Required Snippets (Copy-Paste)" section containing **fabricated code** that doesn't exist in the original (the entire `if let prefixImage = decoration.prefixImage { ... }` block)
  - Includes step-by-step implementation instructions ("To actually add a prefix image, you must: 1. Add `prefixImage: UIImage?`...")
  - Adds explanatory "Why?" notes telling you what to modify in each snippet
- The snippets shown are **truncated and altered** from the original code (e.g., `decorate()` is shortened with `...` placeholders, removing critical layout context)

## Completeness: Did it find all related places?

**Found (4):**
- `decorate()` method - title drawing section
- `PosterDecoration` struct
- `drawDecorations()` method
- `calculateDecorationHeight()` method

**Missed (significant):**
- `Configuration` struct (the actual config class where new properties would live - more appropriate than `PosterDecoration`)
- Title area height calculation (lines 3738-3766) - crucial for reserving vertical space for a prefix image
- Layout position calculations (lines 3831-3853) - where title/map/decoration Y positions are computed
- `alignedX` helper function - calculates title X position, would need adjustment to shift title right if prefix image is beside it
- `decoratorConfig` in `ExportSheet` - where the configuration is assembled from state
- `applyTemplateSettings` - needed if templates should support prefix images
- `previewTriggerHash` - would need to include the new state for preview updates
- `fittedFont` / `maxTextWidth` calculation - title font fitting width may need adjustment

## Other Issues

- Suggests adding `prefixImage` to `PosterDecoration` (a struct for geometric decorative shapes) rather than to `Configuration` - a questionable design choice
- The "What You Don't Need" section dismisses the `exportContent` view and `@State`/`@Binding`, but those are actually relevant (state drives the configuration, the export content view is where the user would configure a prefix image)
- Fabricated implementation code presented as if it were existing snippets is misleading

## Grade: D

The model fails the primary instruction (snippets only, no implementation guidance) and misses more locations than it finds. The fabricated code blocks mixed with real snippets make the response actively misleading.
