| 1 | # Image Palettes Legacy Reference |
| 2 | |
| 3 | Compatibility tombstone for retired `image_palette` fields and historical palette comparison assets. |
| 4 | |
| 5 | ## 1. Current Generation Contract |
| 6 | |
| 7 | **Hard rule**: Current deck generation never presents, selects, authors, or consumes `image_palette` or `image_palette_behavior`. |
| 8 | |
| 9 | | Input | Current behavior | |
| 10 | |---|---| |
| 11 | | `spec_lock.md colors` | Core recurring deck-color anchors; interpret them with the completed Design Spec and image context, and allow coherent tonal/material/lighting derivatives without creating another palette | |
| 12 | | `image_rendering` | Controls rendering treatment only; it does not create a second color decision | |
| 13 | | Legacy `image_palette` row | Ignore it; it cannot override the confirmed deck identity or current contextual color judgment | |
| 14 | | No palette row | Expected; do not synthesize a preset or `custom` fallback | |
| 15 | |
| 16 | **Forbidden — legacy activation**: |
| 17 | |
| 18 | - Do not load sibling palette preset files while planning or generating a current deck. |
| 19 | - Do not use the historical auto-selection table, compatibility matrix, or prompt snippets. |
| 20 | - Do not write `image_palette: custom` or `image_palette_behavior`. |
| 21 | |
| 22 | --- |
| 23 | |
| 24 | ## 2. Legacy Interpretation and Maintenance |
| 25 | |
| 26 | The sibling preset files remain archived in place for diagnosing historical locks and maintaining the legacy palette comparison assets documented by [`README.md`](../ai-image-comparison/README.md). They are not a runtime catalog. |
| 27 | |
| 28 | | Legacy row | Historical meaning | |
| 29 | |---|---| |
| 30 | | `image_palette: <preset>` | Selects the named sibling preset as the archived color-behavior definition. | |
| 31 | | `image_palette: custom` | Declares that no preset owns the behavior; the required sibling `image_palette_behavior` row is the complete definition. | |
| 32 | | `image_palette_behavior: <prose>` | With `custom`, records a 2–5 sentence mapping from the lock's HEX roles to intended proportion and temperament. It must not name a competing preset or invent another HEX value. | |
| 33 | |
| 34 | A historical `custom` row without a non-empty `image_palette_behavior` is incomplete. Report the missing legacy definition; do not reconstruct it. |
| 35 | |
| 36 | When that maintenance is explicitly requested, read only the named historical asset or preset. Keep its palette behavior inside the historical fixture; do not copy it into current recommendations, `design_spec.md`, `spec_lock.md`, or generated-image prompts. |
| 37 |