{
  "generation_id": "2026-07-17_20260717T163117Z_latest_001",
  "model": "text:gpt-4.1-mini;image:gpt-image-1",
  "seed_theme": "underground, eerie yet vibrant with high energy",
  "title": "Melting Mecha Totem",
  "slogan": "When ancient spirits and future machines merge in a dreamy dissolve.",
  "prompt": "Create a square t-shirt graphic design with the following concept:\n\nTitle: Melting Mecha Totem\nVisual style: A vintage comic-inspired dark fantasy illustration with pastel dream colors and bold comic primary contrasts, featuring a large vertically stacked grid layout of melting mecha totem masks forming a powerful oversized graphic.\nMood: underground, eerie yet vibrant with high energy\nCore concept prompt: an oversized vertical stack of dark fantasy mecha totem masks arranged in a grid layout, illustrated in vintage comic style with melting effect dripping over robotic and tribal features, color palette blending soft pastel dream tones with bright comic primaries, overall composition bold and centered with strong silhouette, evoke underground high-energy atmosphere without any text or labels\nTypography density rule: CRITICAL: This design must contain absolutely zero text, letters, numbers, words, labels, fake brand marks, typography-like glyph clusters, title text, or slogan text. It is a purely visual illustration.\n\nHard constraints:\n- Keep composition centered and shirt-print friendly.\n- Use high-contrast, clear forms suitable for print.\n- Keep the final artwork icon-led or illustration-led, not poster-led or typography-led.\n- Follow the typography density rule exactly. If text is not explicitly allowed, include no letters, words, numbers, labels, title text, slogan text, fake brand marks, or typography-like glyph clusters.\n- If text is explicitly allowed, it must be sparse, intentional, and easily readable.\n- Exclude all forbidden elements: real brands, celebrities, political slogans, explicit content, text\n- Do not include real brand names/logos, celebrity likenesses, copyrighted characters, political campaign slogans, hateful content, or explicit content.\n\nOutput a clean standalone design graphic, no mockup, no watermark, no background scene.",
  "genome": {
    "motifs": [
      "mecha",
      "totem_mask"
    ],
    "style": [
      "dark_fantasy",
      "vintage_comic"
    ],
    "effects": [
      "melting_effect"
    ],
    "palette": [
      "pastel_dream",
      "comic_primary"
    ],
    "mood": [
      "underground"
    ],
    "composition": [
      "grid_layout",
      "vertical_stack",
      "oversized_graphic"
    ],
    "typography": [
      "cyber_terminal",
      "glitch_text"
    ],
    "typography_density": "pure_graphic",
    "energy": "high",
    "complexity": "medium"
  },
  "genome_version": "v1",
  "collection": "latest",
  "text_policy": "no_text",
  "text_policy_source": "default",
  "wearability_intent": "graphic-led wearable shirt design with controlled text",
  "evolution": {
    "generation_mode_id": "latest-canvas-weighted-heritage-v1",
    "generation_mode_name": "Latest Canvas + Weighted Heritage Traits",
    "generation_mode_version": "v1",
    "generation_mode_steps": [
      "collect_latest_canvas",
      "collect_feedback",
      "score_weighted_candidates",
      "select_trait_parents",
      "build_child_genome",
      "apply_mutation",
      "analyze_canvas_improvement",
      "build_prompt_context",
      "select_concept",
      "enforce_typography_policy",
      "generate_image",
      "persist_publish"
    ],
    "pipeline_trace": [
      {
        "stage_id": "collect_latest_canvas",
        "label": "Collect latest canvas",
        "status": "completed",
        "input_summary": "Newest non-archived generated design.",
        "output_summary": "Canvas parent 2026-07-16_20260716T163119Z_latest_001 from design_url.",
        "details": {
          "canvas_parent_generation_id": "2026-07-16_20260716T163119Z_latest_001"
        }
      },
      {
        "stage_id": "collect_feedback",
        "label": "Collect feedback",
        "status": "completed",
        "input_summary": "weighted feedback history.",
        "output_summary": "37 weighted signals available.",
        "details": {
          "feedback_rating": "up"
        }
      },
      {
        "stage_id": "score_weighted_candidates",
        "label": "Score weighted candidates",
        "status": "completed",
        "input_summary": "Last 25 relevant rated designs.",
        "output_summary": "25 candidates scored.",
        "details": {
          "candidate_scores": [
            {
              "generation_id": "2026-07-03_20260703T163113Z_latest_001",
              "heritage_score": 15.0,
              "ticket_weight": 15.0,
              "base_ticket_weight": 15.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-07-01_20260701T163136Z_latest_001",
              "heritage_score": 37.0,
              "ticket_weight": 37.0,
              "base_ticket_weight": 37.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-30_20260630T163111Z_latest_001",
              "heritage_score": 20.0,
              "ticket_weight": 20.0,
              "base_ticket_weight": 20.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-29_20260629T163112Z_latest_001",
              "heritage_score": 4.0,
              "ticket_weight": 4.0,
              "base_ticket_weight": 4.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-29_20260629T152448Z_latest_001",
              "heritage_score": -1.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-28_20260628T163115Z_latest_001",
              "heritage_score": -5.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-27_20260627T163113Z_latest_001",
              "heritage_score": 3.0,
              "ticket_weight": 3.0,
              "base_ticket_weight": 3.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-24_20260624T163120Z_latest_001",
              "heritage_score": 5.0,
              "ticket_weight": 5.0,
              "base_ticket_weight": 5.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-23_20260623T163127Z_latest_001",
              "heritage_score": 28.0,
              "ticket_weight": 28.0,
              "base_ticket_weight": 28.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-21_20260621T163123Z_latest_001",
              "heritage_score": 29.0,
              "ticket_weight": 29.0,
              "base_ticket_weight": 29.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-20_20260620T163125Z_latest_001",
              "heritage_score": -11.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-16_20260616T160144Z_latest_001",
              "heritage_score": -28.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-16_20260616T120142Z_latest_001",
              "heritage_score": -21.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-16_20260616T080129Z_latest_001",
              "heritage_score": -8.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-15_20260615T200141Z_latest_001",
              "heritage_score": -11.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-12_20260612T160125Z_latest_001",
              "heritage_score": -15.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-07_20260607T160116Z_latest_001",
              "heritage_score": -11.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-06_20260606T200115Z_latest_001",
              "heritage_score": -1.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-06_20260606T120117Z_latest_001",
              "heritage_score": 10.0,
              "ticket_weight": 10.0,
              "base_ticket_weight": 10.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-05_20260605T120122Z_latest_001",
              "heritage_score": -17.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-05_20260605T080122Z_latest_001",
              "heritage_score": -5.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-04_20260604T091701Z_latest_001",
              "heritage_score": -26.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-06-03_20260603T210150Z_latest_001",
              "heritage_score": -28.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-05-30_20260530T202118Z_latest_001",
              "heritage_score": -49.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            },
            {
              "generation_id": "2026-05-29_20260529T204612Z_latest_001",
              "heritage_score": -26.0,
              "ticket_weight": 1.0,
              "base_ticket_weight": 1.0,
              "new_trait_multiplier": null,
              "new_trait_count": null
            }
          ]
        }
      },
      {
        "stage_id": "select_trait_parents",
        "label": "Select trait parents",
        "status": "completed",
        "input_summary": "Strategy weighted-heritage-lottery-50-50.",
        "output_summary": "Trait parents: 2026-07-01_20260701T163136Z_latest_001, 2026-06-21_20260621T163123Z_latest_001",
        "details": {
          "trait_parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001",
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        }
      },
      {
        "stage_id": "build_child_genome",
        "label": "Build child genome",
        "status": "completed",
        "input_summary": "50/50 locked genome crossover.",
        "output_summary": "Locked child genome created."
      },
      {
        "stage_id": "apply_mutation",
        "label": "Apply mutation",
        "status": "skipped",
        "input_summary": "Mutation chance roll 28.",
        "output_summary": "Mutation not applied."
      },
      {
        "stage_id": "build_prompt_context",
        "label": "Build prompt context",
        "status": "completed",
        "input_summary": "Locked genome, canvas reference, and intentional inheritance metadata.",
        "output_summary": "Prompt variation mode latest_canvas_weighted_trait."
      },
      {
        "stage_id": "analyze_canvas_improvement",
        "label": "Analyze canvas improvement",
        "status": "completed",
        "input_summary": "Latest canvas reference image and trait parent summary.",
        "output_summary": "Visual improvement guidance created.",
        "model": "gpt-4.1-mini",
        "details": {
          "prompt_version": "latest-canvas-improvement-analysis-v1",
          "reference_image_source": "design_url"
        }
      },
      {
        "stage_id": "select_concept",
        "label": "Select concept",
        "status": "completed",
        "input_summary": "System prompt, concept prompt, and locked genome when available.",
        "output_summary": "Selected concept 'Melting Mecha Totem'.",
        "model": "gpt-4.1-mini",
        "details": {
          "prompt_selection_mode": "single_call_candidates"
        }
      },
      {
        "stage_id": "resolve_prompt_conflicts",
        "label": "Resolve prompt conflicts",
        "status": "completed",
        "input_summary": "Selected concept forbidden elements and positive VLM guidance.",
        "output_summary": "Removed 2 conflicting forbidden elements.",
        "details": {
          "status": "resolved",
          "mode": "latest_canvas_weighted_trait",
          "raw_forbidden_elements": [
            "real brands",
            "celebrities",
            "copyrighted characters",
            "political slogans",
            "explicit content",
            "text",
            "small unreadable text"
          ],
          "final_forbidden_elements": [
            "real brands",
            "celebrities",
            "political slogans",
            "explicit content",
            "text"
          ],
          "protected_tokens": [
            "accent",
            "appeal",
            "apply",
            "central",
            "character",
            "clarity",
            "color",
            "comic",
            "density",
            "detail",
            "distinct",
            "dot",
            "dream",
            "drip",
            "element",
            "focu",
            "friendliness",
            "highlight",
            "keeping",
            "layout",
            "maintaining",
            "mask",
            "mecha",
            "neon",
            "noise",
            "organize",
            "overcrowding",
            "palette",
            "pastel",
            "point",
            "preserve",
            "pure",
            "selectively",
            "small",
            "soften",
            "some",
            "stack",
            "striking",
            "strong",
            "stronger",
            "stylized",
            "totem",
            "typography",
            "use",
            "using",
            "vertical",
            "vibrancy",
            "visually",
            "wearable",
            "while",
            "without"
          ],
          "positive_sources": [
            {
              "field": "composition_instruction",
              "index": null,
              "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
              "tokens": [
                "central",
                "totem",
                "mask",
                "focu",
                "vertical",
                "stack",
                "layout",
                "soften",
                "neon",
                "color",
                "using",
                "pastel",
                "dream",
                "palette",
                "friendliness",
                "while",
                "keeping",
                "comic",
                "highlight",
                "small",
                "dot",
                "drip",
                "detail",
                "noise",
                "preserve",
                "strong",
                "stylized",
                "character",
                "using",
                "pure",
                "typography",
                "density"
              ]
            },
            {
              "field": "canvas_strengths",
              "index": 3,
              "text": "The graphic is visually striking with a clear central focal point on the mecha totem mask.",
              "tokens": [
                "visually",
                "striking",
                "central",
                "point",
                "mecha",
                "totem",
                "mask"
              ]
            },
            {
              "field": "recommended_trait_applications",
              "index": 0,
              "text": "Apply the pastel_dream palette selectively to soften some neon colors for print-friendliness and wearable appeal, maintaining the comic_primary accents for vibrancy.",
              "tokens": [
                "apply",
                "pastel",
                "dream",
                "palette",
                "selectively",
                "soften",
                "some",
                "neon",
                "color",
                "friendliness",
                "wearable",
                "appeal",
                "maintaining",
                "comic",
                "accent",
                "vibrancy"
              ]
            },
            {
              "field": "recommended_trait_applications",
              "index": 1,
              "text": "Use the vertical_stack composition to better organize elements and focus on central totem mask for stronger primary subject clarity.",
              "tokens": [
                "use",
                "vertical",
                "stack",
                "organize",
                "element",
                "focu",
                "central",
                "totem",
                "mask",
                "stronger",
                "clarity"
              ]
            },
            {
              "field": "recommended_trait_applications",
              "index": 3,
              "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
              "tokens": [
                "use",
                "pure",
                "typography",
                "density",
                "character",
                "distinct",
                "without",
                "overcrowding"
              ]
            }
          ],
          "conflicts_detected": [
            {
              "forbidden_element": "copyrighted characters",
              "matched_tokens": [
                "character"
              ],
              "source_positive": [
                {
                  "field": "composition_instruction",
                  "index": null,
                  "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
                  "matched_tokens": [
                    "character"
                  ]
                },
                {
                  "field": "recommended_trait_applications",
                  "index": 3,
                  "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
                  "matched_tokens": [
                    "character"
                  ]
                }
              ],
              "source_negative": "concept.forbidden_elements",
              "resolution": "removed_from_forbidden_elements",
              "reason": "Explicit positive VLM guidance protected this token."
            },
            {
              "forbidden_element": "small unreadable text",
              "matched_tokens": [
                "small"
              ],
              "source_positive": [
                {
                  "field": "composition_instruction",
                  "index": null,
                  "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
                  "matched_tokens": [
                    "small"
                  ]
                }
              ],
              "source_negative": "concept.forbidden_elements",
              "resolution": "removed_from_forbidden_elements",
              "reason": "Explicit positive VLM guidance protected this token."
            }
          ]
        }
      },
      {
        "stage_id": "enforce_typography_policy",
        "label": "Enforce typography policy",
        "status": "completed",
        "input_summary": "Policy no_text from default.",
        "output_summary": "Typography density pure_graphic.",
        "details": {
          "records": []
        }
      },
      {
        "stage_id": "generate_image",
        "label": "Generate image",
        "status": "completed",
        "input_summary": "Prompt plus reference image canvas.",
        "output_summary": "Generated image with latest_canvas_weighted_trait.",
        "model": "gpt-image-2",
        "details": {
          "reference_generation_id": "2026-07-16_20260716T163119Z_latest_001",
          "reference_image_source": "design_url"
        }
      },
      {
        "stage_id": "persist_publish",
        "label": "Persist and publish",
        "status": "completed",
        "input_summary": "Generated concept, prompt, image outputs, metadata, and commerce settings.",
        "output_summary": "Metadata prepared for local output, Supabase persistence, and configured commerce publish steps."
      }
    ],
    "parent_generation_id": "2026-07-01_20260701T163136Z_latest_001",
    "parent_generation_ids": [
      "2026-07-01_20260701T163136Z_latest_001",
      "2026-06-21_20260621T163123Z_latest_001"
    ],
    "parent_source": "feedback_events.weighted_heritage",
    "parent_selection_strategy": "weighted-heritage-lottery-50-50",
    "parent_selection_pool_size": 2,
    "parent_selection_seed": "20260717T163117Z-latest-successor-crossover-001",
    "historical_window": 2,
    "feedback_rating": "up",
    "feedback_label": "weighted",
    "preserved_traits": [
      "typography.cyber_terminal",
      "style.dark_fantasy",
      "composition.grid_layout",
      "palette.pastel_dream",
      "composition.vertical_stack",
      "complexity.medium",
      "composition.oversized_graphic",
      "motifs.mecha",
      "mood.underground",
      "typography_density.pure_graphic",
      "palette.comic_primary",
      "motifs.totem_mask",
      "effects.melting_effect",
      "style.vintage_comic",
      "typography.glitch_text",
      "energy.high"
    ],
    "inherited_trait_sources": [
      {
        "trait": "typography.cyber_terminal",
        "category": "typography",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "style.dark_fantasy",
        "category": "style",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "composition.grid_layout",
        "category": "composition",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "palette.pastel_dream",
        "category": "palette",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "composition.vertical_stack",
        "category": "composition",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "complexity.medium",
        "category": "complexity",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "composition.oversized_graphic",
        "category": "composition",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "motifs.mecha",
        "category": "motifs",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "mood.underground",
        "category": "mood",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "typography_density.pure_graphic",
        "category": "typography_density",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "palette.comic_primary",
        "category": "palette",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "motifs.totem_mask",
        "category": "motifs",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "effects.melting_effect",
        "category": "effects",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "style.vintage_comic",
        "category": "style",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "typography.glitch_text",
        "category": "typography",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "energy.high",
        "category": "energy",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      }
    ],
    "mutation_instruction": "Combine the inherited traits into one coherent standard t-shirt design; do not mutate away the core inherited identity unless required for safety.",
    "novelty_instruction": "Add only enough connective creative tissue to make the two-parent crossover feel intentional and printable.",
    "taste_profile": {
      "typography.cyber_terminal": 1.0,
      "style.dark_fantasy": 1.0,
      "composition.grid_layout": 1.0,
      "palette.pastel_dream": 1.0,
      "composition.vertical_stack": 1.0,
      "complexity.medium": 1.0,
      "composition.oversized_graphic": 1.0,
      "motifs.mecha": 1.0,
      "mood.underground": 1.0,
      "typography_density.pure_graphic": 1.0,
      "palette.comic_primary": 1.0,
      "motifs.totem_mask": 1.0,
      "effects.melting_effect": 1.0,
      "style.vintage_comic": 1.0,
      "typography.glitch_text": 1.0,
      "energy.high": 1.0
    },
    "recent_motifs": [
      "mecha",
      "skull",
      "totem_mask"
    ],
    "child_genome": {
      "motifs": [
        "mecha",
        "totem_mask"
      ],
      "style": [
        "dark_fantasy",
        "vintage_comic"
      ],
      "effects": [
        "melting_effect"
      ],
      "palette": [
        "pastel_dream",
        "comic_primary"
      ],
      "mood": [
        "underground"
      ],
      "composition": [
        "grid_layout",
        "vertical_stack",
        "oversized_graphic"
      ],
      "typography": [
        "cyber_terminal",
        "glitch_text"
      ],
      "typography_density": "pure_graphic",
      "energy": "high",
      "complexity": "medium"
    },
    "mutation_applied": false,
    "mutation_roll": 28,
    "mutation_source": "data/genome-trait-pool.json",
    "mutation_category": null,
    "mutation_replaced_trait": null,
    "mutation_inserted_trait": null,
    "mutation_records": [],
    "genome_floor_fills": [],
    "parent_heritage_scores": [
      {
        "generation_id": "2026-07-01_20260701T163136Z_latest_001",
        "heritage_score": 37.0,
        "base_ticket_weight": 37.0,
        "active_new_traits": [],
        "ticket_weight": 37.0
      },
      {
        "generation_id": "2026-06-21_20260621T163123Z_latest_001",
        "heritage_score": 29.0,
        "base_ticket_weight": 29.0,
        "active_new_traits": [],
        "ticket_weight": 29.0
      }
    ],
    "parent_candidate_scores": [
      {
        "generation_id": "2026-07-03_20260703T163113Z_latest_001",
        "heritage_score": 15.0,
        "ticket_weight": 15.0,
        "base_ticket_weight": 15.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-07-01_20260701T163136Z_latest_001",
        "heritage_score": 37.0,
        "ticket_weight": 37.0,
        "base_ticket_weight": 37.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-30_20260630T163111Z_latest_001",
        "heritage_score": 20.0,
        "ticket_weight": 20.0,
        "base_ticket_weight": 20.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-29_20260629T163112Z_latest_001",
        "heritage_score": 4.0,
        "ticket_weight": 4.0,
        "base_ticket_weight": 4.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-29_20260629T152448Z_latest_001",
        "heritage_score": -1.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-28_20260628T163115Z_latest_001",
        "heritage_score": -5.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-27_20260627T163113Z_latest_001",
        "heritage_score": 3.0,
        "ticket_weight": 3.0,
        "base_ticket_weight": 3.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-24_20260624T163120Z_latest_001",
        "heritage_score": 5.0,
        "ticket_weight": 5.0,
        "base_ticket_weight": 5.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-23_20260623T163127Z_latest_001",
        "heritage_score": 28.0,
        "ticket_weight": 28.0,
        "base_ticket_weight": 28.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-21_20260621T163123Z_latest_001",
        "heritage_score": 29.0,
        "ticket_weight": 29.0,
        "base_ticket_weight": 29.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-20_20260620T163125Z_latest_001",
        "heritage_score": -11.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-16_20260616T160144Z_latest_001",
        "heritage_score": -28.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-16_20260616T120142Z_latest_001",
        "heritage_score": -21.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-16_20260616T080129Z_latest_001",
        "heritage_score": -8.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-15_20260615T200141Z_latest_001",
        "heritage_score": -11.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-12_20260612T160125Z_latest_001",
        "heritage_score": -15.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-07_20260607T160116Z_latest_001",
        "heritage_score": -11.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-06_20260606T200115Z_latest_001",
        "heritage_score": -1.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-06_20260606T120117Z_latest_001",
        "heritage_score": 10.0,
        "ticket_weight": 10.0,
        "base_ticket_weight": 10.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-05_20260605T120122Z_latest_001",
        "heritage_score": -17.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-05_20260605T080122Z_latest_001",
        "heritage_score": -5.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-04_20260604T091701Z_latest_001",
        "heritage_score": -26.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-03_20260603T210150Z_latest_001",
        "heritage_score": -28.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-05-30_20260530T202118Z_latest_001",
        "heritage_score": -49.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-05-29_20260529T204612Z_latest_001",
        "heritage_score": -26.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      }
    ],
    "child_creation_score": 29.0,
    "prompt_variation_mode": "latest_canvas_weighted_trait",
    "founder_prompt": null,
    "founder_title": null,
    "founder_slogan": null,
    "reference_canvas_role": "latest_generated_canvas_parent",
    "reference_variation_strength": "preserve broad composition from the latest generated design while introducing weighted heritage traits",
    "canvas_parent_generation_id": "2026-07-16_20260716T163119Z_latest_001",
    "trait_parent_generation_id": "2026-07-01_20260701T163136Z_latest_001",
    "trait_parent_generation_ids": [
      "2026-07-01_20260701T163136Z_latest_001",
      "2026-06-21_20260621T163123Z_latest_001"
    ],
    "vlm_analysis": {
      "status": "succeeded",
      "model": "gpt-4.1-mini",
      "prompt_version": "latest-canvas-improvement-analysis-v1",
      "canvas_strengths": [
        "Distinctive and vibrant motif with mecha-inspired futuristic masks and geometric shapes.",
        "Strong use of neon colors that create a clear and readable silhouette.",
        "Highly detailed design showing a complex but balanced composition with a grid layout.",
        "The graphic is visually striking with a clear central focal point on the mecha totem mask.",
        "Good use of color contrast between the glowing neon characters and darker background."
      ],
      "canvas_weaknesses": [
        "The palette is very vibrant but somewhat chaotic, blending neon pink, blue, yellow, and green, which might reduce print-friendliness and wearable appeal in some cases.",
        "The complexity level is quite high, causing potential visual noise and diminishing readability from a distance.",
        "The vertical stacking and grid layout combined with oversized graphic elements can make the design overwhelming for some viewers.",
        "Some small details like dots and lines add to the visual noise, making the design busy."
      ],
      "recommended_trait_applications": [
        "Apply the pastel_dream palette selectively to soften some neon colors for print-friendliness and wearable appeal, maintaining the comic_primary accents for vibrancy.",
        "Use the vertical_stack composition to better organize elements and focus on central totem mask for stronger primary subject clarity.",
        "Incorporate the dark_fantasy style subtly in the masks' design to add mood depth without overwhelming detail.",
        "Use pure_graphic typography density to keep characters bold and distinct without overcrowding."
      ],
      "traits_to_avoid": [
        "Adding typography.cyber_terminal since existing typography is very dominant and modifying it may reduce clarity.",
        "Increasing complexity beyond medium level to avoid further visual noise.",
        "Applying grid_layout effects that could fragment the design and reduce silhouette strength.",
        "Overusing oversized_graphic elements which may cause imbalance and less wearable appeal."
      ],
      "composition_instruction": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
      "sellability_rationale": "This design balances a futuristic mecha motif with vibrant colors and distinct silhouettes, appealing to streetwear fans of sci-fi and fantasy themes. Applying a softened pastel palette and refining the composition enhances print-friendliness and wearable appeal, making it more versatile for diverse consumers while retaining uniqueness and visual impact.",
      "reference_image_source": "design_url"
    },
    "weighted_selection_metadata": {
      "selection_strategy": "weighted-heritage-lottery-50-50",
      "selection_seed": "20260717T163117Z-latest-weighted-parent-lottery-001",
      "crossover_seed": "20260717T163117Z-latest-successor-crossover-001",
      "candidate_pool_size": 25,
      "weighted_signal_count": 37,
      "feedback_rating": "up",
      "feedback_label": "weighted",
      "parent_source": "feedback_events.weighted_heritage",
      "candidate_scores": [
        {
          "generation_id": "2026-07-03_20260703T163113Z_latest_001",
          "heritage_score": 15.0,
          "ticket_weight": 15.0,
          "base_ticket_weight": 15.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-07-01_20260701T163136Z_latest_001",
          "heritage_score": 37.0,
          "ticket_weight": 37.0,
          "base_ticket_weight": 37.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-30_20260630T163111Z_latest_001",
          "heritage_score": 20.0,
          "ticket_weight": 20.0,
          "base_ticket_weight": 20.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-29_20260629T163112Z_latest_001",
          "heritage_score": 4.0,
          "ticket_weight": 4.0,
          "base_ticket_weight": 4.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-29_20260629T152448Z_latest_001",
          "heritage_score": -1.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-28_20260628T163115Z_latest_001",
          "heritage_score": -5.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-27_20260627T163113Z_latest_001",
          "heritage_score": 3.0,
          "ticket_weight": 3.0,
          "base_ticket_weight": 3.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-24_20260624T163120Z_latest_001",
          "heritage_score": 5.0,
          "ticket_weight": 5.0,
          "base_ticket_weight": 5.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-23_20260623T163127Z_latest_001",
          "heritage_score": 28.0,
          "ticket_weight": 28.0,
          "base_ticket_weight": 28.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-21_20260621T163123Z_latest_001",
          "heritage_score": 29.0,
          "ticket_weight": 29.0,
          "base_ticket_weight": 29.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-20_20260620T163125Z_latest_001",
          "heritage_score": -11.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-16_20260616T160144Z_latest_001",
          "heritage_score": -28.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-16_20260616T120142Z_latest_001",
          "heritage_score": -21.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-16_20260616T080129Z_latest_001",
          "heritage_score": -8.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-15_20260615T200141Z_latest_001",
          "heritage_score": -11.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-12_20260612T160125Z_latest_001",
          "heritage_score": -15.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-07_20260607T160116Z_latest_001",
          "heritage_score": -11.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-06_20260606T200115Z_latest_001",
          "heritage_score": -1.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-06_20260606T120117Z_latest_001",
          "heritage_score": 10.0,
          "ticket_weight": 10.0,
          "base_ticket_weight": 10.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-05_20260605T120122Z_latest_001",
          "heritage_score": -17.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-05_20260605T080122Z_latest_001",
          "heritage_score": -5.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-04_20260604T091701Z_latest_001",
          "heritage_score": -26.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-06-03_20260603T210150Z_latest_001",
          "heritage_score": -28.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-05-30_20260530T202118Z_latest_001",
          "heritage_score": -49.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        },
        {
          "generation_id": "2026-05-29_20260529T204612Z_latest_001",
          "heritage_score": -26.0,
          "ticket_weight": 1.0,
          "base_ticket_weight": 1.0,
          "new_trait_multiplier": null,
          "new_trait_count": null
        }
      ],
      "selected_parent_generation_ids": [
        "2026-07-01_20260701T163136Z_latest_001",
        "2026-06-21_20260621T163123Z_latest_001"
      ],
      "canvas_parent_generation_id": "2026-07-16_20260716T163119Z_latest_001",
      "trait_parent_generation_id": "2026-07-01_20260701T163136Z_latest_001",
      "trait_parent_generation_ids": [
        "2026-07-01_20260701T163136Z_latest_001",
        "2026-06-21_20260621T163123Z_latest_001"
      ],
      "canvas_parent_image_source": "design_url",
      "canvas_parent_design_url": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
      "canvas_parent_design_storage_key": "generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
      "mutation_applied": false,
      "mutation_roll": 28,
      "mutation_category": null,
      "mutation_replaced_trait": null,
      "mutation_inserted_trait": null,
      "inherited_trait_sources": [
        {
          "trait": "typography.cyber_terminal",
          "category": "typography",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001"
          ]
        },
        {
          "trait": "style.dark_fantasy",
          "category": "style",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001"
          ]
        },
        {
          "trait": "composition.grid_layout",
          "category": "composition",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001",
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "palette.pastel_dream",
          "category": "palette",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001",
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "composition.vertical_stack",
          "category": "composition",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001"
          ]
        },
        {
          "trait": "complexity.medium",
          "category": "complexity",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001",
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "composition.oversized_graphic",
          "category": "composition",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001"
          ]
        },
        {
          "trait": "motifs.mecha",
          "category": "motifs",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001"
          ]
        },
        {
          "trait": "mood.underground",
          "category": "mood",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001"
          ]
        },
        {
          "trait": "typography_density.pure_graphic",
          "category": "typography_density",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001",
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "palette.comic_primary",
          "category": "palette",
          "parent_generation_ids": [
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "motifs.totem_mask",
          "category": "motifs",
          "parent_generation_ids": [
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "effects.melting_effect",
          "category": "effects",
          "parent_generation_ids": [
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "style.vintage_comic",
          "category": "style",
          "parent_generation_ids": [
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "typography.glitch_text",
          "category": "typography",
          "parent_generation_ids": [
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        },
        {
          "trait": "energy.high",
          "category": "energy",
          "parent_generation_ids": [
            "2026-07-01_20260701T163136Z_latest_001",
            "2026-06-21_20260621T163123Z_latest_001"
          ]
        }
      ],
      "child_creation_score": 29.0,
      "parent_heritage_scores": [
        {
          "generation_id": "2026-07-01_20260701T163136Z_latest_001",
          "heritage_score": 37.0,
          "base_ticket_weight": 37.0,
          "active_new_traits": [],
          "ticket_weight": 37.0
        },
        {
          "generation_id": "2026-06-21_20260621T163123Z_latest_001",
          "heritage_score": 29.0,
          "base_ticket_weight": 29.0,
          "active_new_traits": [],
          "ticket_weight": 29.0
        }
      ]
    },
    "prompt_conflict_resolution": {
      "status": "resolved",
      "mode": "latest_canvas_weighted_trait",
      "raw_forbidden_elements": [
        "real brands",
        "celebrities",
        "copyrighted characters",
        "political slogans",
        "explicit content",
        "text",
        "small unreadable text"
      ],
      "final_forbidden_elements": [
        "real brands",
        "celebrities",
        "political slogans",
        "explicit content",
        "text"
      ],
      "protected_tokens": [
        "accent",
        "appeal",
        "apply",
        "central",
        "character",
        "clarity",
        "color",
        "comic",
        "density",
        "detail",
        "distinct",
        "dot",
        "dream",
        "drip",
        "element",
        "focu",
        "friendliness",
        "highlight",
        "keeping",
        "layout",
        "maintaining",
        "mask",
        "mecha",
        "neon",
        "noise",
        "organize",
        "overcrowding",
        "palette",
        "pastel",
        "point",
        "preserve",
        "pure",
        "selectively",
        "small",
        "soften",
        "some",
        "stack",
        "striking",
        "strong",
        "stronger",
        "stylized",
        "totem",
        "typography",
        "use",
        "using",
        "vertical",
        "vibrancy",
        "visually",
        "wearable",
        "while",
        "without"
      ],
      "positive_sources": [
        {
          "field": "composition_instruction",
          "index": null,
          "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
          "tokens": [
            "central",
            "totem",
            "mask",
            "focu",
            "vertical",
            "stack",
            "layout",
            "soften",
            "neon",
            "color",
            "using",
            "pastel",
            "dream",
            "palette",
            "friendliness",
            "while",
            "keeping",
            "comic",
            "highlight",
            "small",
            "dot",
            "drip",
            "detail",
            "noise",
            "preserve",
            "strong",
            "stylized",
            "character",
            "using",
            "pure",
            "typography",
            "density"
          ]
        },
        {
          "field": "canvas_strengths",
          "index": 3,
          "text": "The graphic is visually striking with a clear central focal point on the mecha totem mask.",
          "tokens": [
            "visually",
            "striking",
            "central",
            "point",
            "mecha",
            "totem",
            "mask"
          ]
        },
        {
          "field": "recommended_trait_applications",
          "index": 0,
          "text": "Apply the pastel_dream palette selectively to soften some neon colors for print-friendliness and wearable appeal, maintaining the comic_primary accents for vibrancy.",
          "tokens": [
            "apply",
            "pastel",
            "dream",
            "palette",
            "selectively",
            "soften",
            "some",
            "neon",
            "color",
            "friendliness",
            "wearable",
            "appeal",
            "maintaining",
            "comic",
            "accent",
            "vibrancy"
          ]
        },
        {
          "field": "recommended_trait_applications",
          "index": 1,
          "text": "Use the vertical_stack composition to better organize elements and focus on central totem mask for stronger primary subject clarity.",
          "tokens": [
            "use",
            "vertical",
            "stack",
            "organize",
            "element",
            "focu",
            "central",
            "totem",
            "mask",
            "stronger",
            "clarity"
          ]
        },
        {
          "field": "recommended_trait_applications",
          "index": 3,
          "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
          "tokens": [
            "use",
            "pure",
            "typography",
            "density",
            "character",
            "distinct",
            "without",
            "overcrowding"
          ]
        }
      ],
      "conflicts_detected": [
        {
          "forbidden_element": "copyrighted characters",
          "matched_tokens": [
            "character"
          ],
          "source_positive": [
            {
              "field": "composition_instruction",
              "index": null,
              "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
              "matched_tokens": [
                "character"
              ]
            },
            {
              "field": "recommended_trait_applications",
              "index": 3,
              "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
              "matched_tokens": [
                "character"
              ]
            }
          ],
          "source_negative": "concept.forbidden_elements",
          "resolution": "removed_from_forbidden_elements",
          "reason": "Explicit positive VLM guidance protected this token."
        },
        {
          "forbidden_element": "small unreadable text",
          "matched_tokens": [
            "small"
          ],
          "source_positive": [
            {
              "field": "composition_instruction",
              "index": null,
              "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
              "matched_tokens": [
                "small"
              ]
            }
          ],
          "source_negative": "concept.forbidden_elements",
          "resolution": "removed_from_forbidden_elements",
          "reason": "Explicit positive VLM guidance protected this token."
        }
      ]
    },
    "typography_policy_records": [],
    "image_generation_mode": "latest_canvas_weighted_trait",
    "reference_generation_id": "2026-07-16_20260716T163119Z_latest_001",
    "reference_design_url": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
    "reference_design_storage_key": "generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
    "reference_image_source": "design_url",
    "reference_image_error": null
  },
  "timestamp": "2026-07-17T16:32:58Z",
  "mockup_source": "assets/tshirt_mockup.png",
  "mockup_output": "shirt_001.png",
  "design_output": "design_001.png",
  "mockup_print_area": {
    "left": 364,
    "top": 532,
    "right": 660,
    "bottom": 828
  },
  "prompt_selection_mode": "single_call_candidates",
  "prompt_candidate_count": 3,
  "prompt_candidates": [
    {
      "index": 0,
      "score": 92.0,
      "rationale": "This candidate best balances the complex genome traits with print-friendly composition. The clear single concept of melting mecha totem masks respects the dark fantasy vintage comic style and pastel/comic palette. The grid vertical stack layout uses an oversized graphic for strong silhouette and focus. The no-text policy is respected, and the design feels distinctive, wearable, and high-energy.",
      "concept": {
        "title": "Melting Mecha Totem",
        "slogan": "When ancient spirits and future machines merge in a dreamy dissolve.",
        "visual_style": "A vintage comic-inspired dark fantasy illustration with pastel dream colors and bold comic primary contrasts, featuring a large vertically stacked grid layout of melting mecha totem masks forming a powerful oversized graphic.",
        "mood": "underground, eerie yet vibrant with high energy",
        "forbidden_elements": [
          "real brands",
          "celebrities",
          "copyrighted characters",
          "political slogans",
          "explicit content",
          "text",
          "small unreadable text"
        ],
        "image_prompt": "an oversized vertical stack of dark fantasy mecha totem masks arranged in a grid layout, illustrated in vintage comic style with melting effect dripping over robotic and tribal features, color palette blending soft pastel dream tones with bright comic primaries, overall composition bold and centered with strong silhouette, evoke underground high-energy atmosphere without any text or labels",
        "product_description": "This t-shirt showcases a striking fusion of dark fantasy mecha and tribal totem masks in a melting effect, rendered in a vintage comic style with dreamy pastel and bold comic colors. The oversized graphic uses a grid layout with a vertical stack composition to create an eye-catching, high-energy underground mood design that stands out without a single word.",
        "genome": {
          "motifs": [
            "mecha",
            "totem_mask"
          ],
          "style": [
            "dark_fantasy",
            "vintage_comic"
          ],
          "effects": [
            "melting_effect"
          ],
          "palette": [
            "pastel_dream",
            "comic_primary"
          ],
          "mood": [
            "underground"
          ],
          "composition": [
            "grid_layout",
            "vertical_stack",
            "oversized_graphic"
          ],
          "typography": [
            "cyber_terminal",
            "glitch_text"
          ],
          "typography_density": "pure_graphic",
          "energy": "high",
          "complexity": "medium"
        }
      }
    },
    {
      "index": 1,
      "score": 88.0,
      "rationale": "This concept closely follows the genome with glitch and melting effects on mecha totem masks, retaining the vintage comic style and intended palette. The abstract fragmentation adds complexity and high energy, but the composition is slightly less straightforward than the first candidate, potentially reducing immediate silhouette clarity.",
      "concept": {
        "title": "Glitching Totem Mecha",
        "slogan": "Digital spirits dissolve into mechanical rituals.",
        "visual_style": "A vintage comic dark fantasy style featuring mecha totem masks fragmented with melting and glitch effects, arranged in a vertical stack forming an oversized graphic using a grid layout. Palette blends pastel dream with comic primaries creating surreal hues and contrast.",
        "mood": "high-energy underground with unsettling abstract rhythm",
        "forbidden_elements": [
          "real brands",
          "celebrities",
          "copyrighted characters",
          "political slogans",
          "explicit content",
          "rendered text"
        ],
        "image_prompt": "close-up vertical stack of dark fantasy mecha totem masks fragmented with glitch and melting effects, arranged in grid layout with vintage comic linework and pastel dream plus comic primary colors, emphasizing broken robotic tribal faces and liquid distortions, bold oversized central composition with strong silhouette, devoid of any text or labels",
        "product_description": "A bold t-shirt design blending glitching and melting dark fantasy mecha totem masks in a vintage comic style. The pastel dream and comic primary palette enriches the surreal fragmented faces arranged in a grid vertical stack oversized graphic form. This underground high-energy piece captivates with its striking abstract mechanical ritual imagery.",
        "genome": {
          "motifs": [
            "mecha",
            "totem_mask"
          ],
          "style": [
            "dark_fantasy",
            "vintage_comic"
          ],
          "effects": [
            "melting_effect"
          ],
          "palette": [
            "pastel_dream",
            "comic_primary"
          ],
          "mood": [
            "underground"
          ],
          "composition": [
            "grid_layout",
            "vertical_stack",
            "oversized_graphic"
          ],
          "typography": [
            "cyber_terminal",
            "glitch_text"
          ],
          "typography_density": "pure_graphic",
          "energy": "high",
          "complexity": "medium"
        }
      }
    },
    {
      "index": 2,
      "score": 85.0,
      "rationale": "This design fits the genome requirements and respects the no-text rule with a clear oversized vertical grid layout. However, the cascading motif is slightly less distinctive than the first two, and the effect is subtler overall, potentially making it less immediately eye-catching on a shirt.",
      "concept": {
        "title": "Comic Mecha Totem Cascade",
        "slogan": "A cascade of ancient machines melting through pastel dreams.",
        "visual_style": "Vintage comic style dark fantasy illustration with mecha-totem masks cascading downward in a vertical grid layout forming an oversized melting graphic. Use of pastel dream blended with comic primary colors, minimal abstract glitch textures, balanced composition emphasizing vertical stack.",
        "mood": "energetic underground vibe with surreal melting visuals",
        "forbidden_elements": [
          "real brands",
          "celebrities",
          "copyrighted characters",
          "political slogans",
          "explicit content",
          "typographic text elements"
        ],
        "image_prompt": "vertical cascading grid of mecha totem masks in dark fantasy vintage comic style, showing melting textures with pastel dream and comic primary palette, subtle glitch abstract shapes complementing the oversized graphic, strong centered composition with clear bold silhouette, no text or lettering",
        "product_description": "This t-shirt features a cascade of dark fantasy mecha totem masks illustrated in a vintage comic style using pastel and comic primary colors. The melting effect paired with subtle glitched abstract shapes creates a surreal underground energy. The oversized vertical grid layout yields a strong silhouette that’s both striking and wearable.",
        "genome": {
          "motifs": [
            "mecha",
            "totem_mask"
          ],
          "style": [
            "dark_fantasy",
            "vintage_comic"
          ],
          "effects": [
            "melting_effect"
          ],
          "palette": [
            "pastel_dream",
            "comic_primary"
          ],
          "mood": [
            "underground"
          ],
          "composition": [
            "grid_layout",
            "vertical_stack",
            "oversized_graphic"
          ],
          "typography": [
            "cyber_terminal",
            "glitch_text"
          ],
          "typography_density": "pure_graphic",
          "energy": "high",
          "complexity": "medium"
        }
      }
    }
  ],
  "selected_prompt_index": 0,
  "selected_prompt_rationale": "The first candidate \"Melting Mecha Totem\" offers the strongest concept with a bold, clear silhouette and distinct vintage comic dark fantasy style. It fully incorporates the melting effect and color palette in a balanced oversized vertical stack, creating high-impact underground energy suitable for print. This candidate best aligns with all genome traits and no-text policy while offering a wearable and memorable design.",
  "creative_memory": {
    "note_ids": [
      30,
      29,
      28,
      27,
      26,
      25,
      24,
      23,
      22,
      21,
      20,
      19
    ],
    "notes": [
      {
        "id": 30,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 29,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 28,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 27,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 26,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 25,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 24,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 23,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 22,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 21,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 20,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      },
      {
        "id": 19,
        "note_type": "try",
        "note": "Daily market analytics: sessions=0, design_views=0, buy_clicks=0, instagram_reach=0. Do not judge design appeal yet; focus on distribution and making the product path obvious.",
        "collection": null,
        "priority": 20
      }
    ]
  },
  "generation_mode_id": "latest-canvas-weighted-heritage-v1",
  "generation_mode_name": "Latest Canvas + Weighted Heritage Traits",
  "generation_mode_version": "v1",
  "generation_mode_steps": [
    "collect_latest_canvas",
    "collect_feedback",
    "score_weighted_candidates",
    "select_trait_parents",
    "build_child_genome",
    "apply_mutation",
    "analyze_canvas_improvement",
    "build_prompt_context",
    "select_concept",
    "enforce_typography_policy",
    "generate_image",
    "persist_publish"
  ],
  "pipeline_trace": [
    {
      "stage_id": "collect_latest_canvas",
      "label": "Collect latest canvas",
      "status": "completed",
      "input_summary": "Newest non-archived generated design.",
      "output_summary": "Canvas parent 2026-07-16_20260716T163119Z_latest_001 from design_url.",
      "details": {
        "canvas_parent_generation_id": "2026-07-16_20260716T163119Z_latest_001"
      }
    },
    {
      "stage_id": "collect_feedback",
      "label": "Collect feedback",
      "status": "completed",
      "input_summary": "weighted feedback history.",
      "output_summary": "37 weighted signals available.",
      "details": {
        "feedback_rating": "up"
      }
    },
    {
      "stage_id": "score_weighted_candidates",
      "label": "Score weighted candidates",
      "status": "completed",
      "input_summary": "Last 25 relevant rated designs.",
      "output_summary": "25 candidates scored.",
      "details": {
        "candidate_scores": [
          {
            "generation_id": "2026-07-03_20260703T163113Z_latest_001",
            "heritage_score": 15.0,
            "ticket_weight": 15.0,
            "base_ticket_weight": 15.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-07-01_20260701T163136Z_latest_001",
            "heritage_score": 37.0,
            "ticket_weight": 37.0,
            "base_ticket_weight": 37.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-30_20260630T163111Z_latest_001",
            "heritage_score": 20.0,
            "ticket_weight": 20.0,
            "base_ticket_weight": 20.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-29_20260629T163112Z_latest_001",
            "heritage_score": 4.0,
            "ticket_weight": 4.0,
            "base_ticket_weight": 4.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-29_20260629T152448Z_latest_001",
            "heritage_score": -1.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-28_20260628T163115Z_latest_001",
            "heritage_score": -5.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-27_20260627T163113Z_latest_001",
            "heritage_score": 3.0,
            "ticket_weight": 3.0,
            "base_ticket_weight": 3.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-24_20260624T163120Z_latest_001",
            "heritage_score": 5.0,
            "ticket_weight": 5.0,
            "base_ticket_weight": 5.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-23_20260623T163127Z_latest_001",
            "heritage_score": 28.0,
            "ticket_weight": 28.0,
            "base_ticket_weight": 28.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-21_20260621T163123Z_latest_001",
            "heritage_score": 29.0,
            "ticket_weight": 29.0,
            "base_ticket_weight": 29.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-20_20260620T163125Z_latest_001",
            "heritage_score": -11.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-16_20260616T160144Z_latest_001",
            "heritage_score": -28.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-16_20260616T120142Z_latest_001",
            "heritage_score": -21.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-16_20260616T080129Z_latest_001",
            "heritage_score": -8.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-15_20260615T200141Z_latest_001",
            "heritage_score": -11.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-12_20260612T160125Z_latest_001",
            "heritage_score": -15.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-07_20260607T160116Z_latest_001",
            "heritage_score": -11.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-06_20260606T200115Z_latest_001",
            "heritage_score": -1.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-06_20260606T120117Z_latest_001",
            "heritage_score": 10.0,
            "ticket_weight": 10.0,
            "base_ticket_weight": 10.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-05_20260605T120122Z_latest_001",
            "heritage_score": -17.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-05_20260605T080122Z_latest_001",
            "heritage_score": -5.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-04_20260604T091701Z_latest_001",
            "heritage_score": -26.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-06-03_20260603T210150Z_latest_001",
            "heritage_score": -28.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-05-30_20260530T202118Z_latest_001",
            "heritage_score": -49.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          },
          {
            "generation_id": "2026-05-29_20260529T204612Z_latest_001",
            "heritage_score": -26.0,
            "ticket_weight": 1.0,
            "base_ticket_weight": 1.0,
            "new_trait_multiplier": null,
            "new_trait_count": null
          }
        ]
      }
    },
    {
      "stage_id": "select_trait_parents",
      "label": "Select trait parents",
      "status": "completed",
      "input_summary": "Strategy weighted-heritage-lottery-50-50.",
      "output_summary": "Trait parents: 2026-07-01_20260701T163136Z_latest_001, 2026-06-21_20260621T163123Z_latest_001",
      "details": {
        "trait_parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      }
    },
    {
      "stage_id": "build_child_genome",
      "label": "Build child genome",
      "status": "completed",
      "input_summary": "50/50 locked genome crossover.",
      "output_summary": "Locked child genome created."
    },
    {
      "stage_id": "apply_mutation",
      "label": "Apply mutation",
      "status": "skipped",
      "input_summary": "Mutation chance roll 28.",
      "output_summary": "Mutation not applied."
    },
    {
      "stage_id": "build_prompt_context",
      "label": "Build prompt context",
      "status": "completed",
      "input_summary": "Locked genome, canvas reference, and intentional inheritance metadata.",
      "output_summary": "Prompt variation mode latest_canvas_weighted_trait."
    },
    {
      "stage_id": "analyze_canvas_improvement",
      "label": "Analyze canvas improvement",
      "status": "completed",
      "input_summary": "Latest canvas reference image and trait parent summary.",
      "output_summary": "Visual improvement guidance created.",
      "model": "gpt-4.1-mini",
      "details": {
        "prompt_version": "latest-canvas-improvement-analysis-v1",
        "reference_image_source": "design_url"
      }
    },
    {
      "stage_id": "select_concept",
      "label": "Select concept",
      "status": "completed",
      "input_summary": "System prompt, concept prompt, and locked genome when available.",
      "output_summary": "Selected concept 'Melting Mecha Totem'.",
      "model": "gpt-4.1-mini",
      "details": {
        "prompt_selection_mode": "single_call_candidates"
      }
    },
    {
      "stage_id": "resolve_prompt_conflicts",
      "label": "Resolve prompt conflicts",
      "status": "completed",
      "input_summary": "Selected concept forbidden elements and positive VLM guidance.",
      "output_summary": "Removed 2 conflicting forbidden elements.",
      "details": {
        "status": "resolved",
        "mode": "latest_canvas_weighted_trait",
        "raw_forbidden_elements": [
          "real brands",
          "celebrities",
          "copyrighted characters",
          "political slogans",
          "explicit content",
          "text",
          "small unreadable text"
        ],
        "final_forbidden_elements": [
          "real brands",
          "celebrities",
          "political slogans",
          "explicit content",
          "text"
        ],
        "protected_tokens": [
          "accent",
          "appeal",
          "apply",
          "central",
          "character",
          "clarity",
          "color",
          "comic",
          "density",
          "detail",
          "distinct",
          "dot",
          "dream",
          "drip",
          "element",
          "focu",
          "friendliness",
          "highlight",
          "keeping",
          "layout",
          "maintaining",
          "mask",
          "mecha",
          "neon",
          "noise",
          "organize",
          "overcrowding",
          "palette",
          "pastel",
          "point",
          "preserve",
          "pure",
          "selectively",
          "small",
          "soften",
          "some",
          "stack",
          "striking",
          "strong",
          "stronger",
          "stylized",
          "totem",
          "typography",
          "use",
          "using",
          "vertical",
          "vibrancy",
          "visually",
          "wearable",
          "while",
          "without"
        ],
        "positive_sources": [
          {
            "field": "composition_instruction",
            "index": null,
            "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
            "tokens": [
              "central",
              "totem",
              "mask",
              "focu",
              "vertical",
              "stack",
              "layout",
              "soften",
              "neon",
              "color",
              "using",
              "pastel",
              "dream",
              "palette",
              "friendliness",
              "while",
              "keeping",
              "comic",
              "highlight",
              "small",
              "dot",
              "drip",
              "detail",
              "noise",
              "preserve",
              "strong",
              "stylized",
              "character",
              "using",
              "pure",
              "typography",
              "density"
            ]
          },
          {
            "field": "canvas_strengths",
            "index": 3,
            "text": "The graphic is visually striking with a clear central focal point on the mecha totem mask.",
            "tokens": [
              "visually",
              "striking",
              "central",
              "point",
              "mecha",
              "totem",
              "mask"
            ]
          },
          {
            "field": "recommended_trait_applications",
            "index": 0,
            "text": "Apply the pastel_dream palette selectively to soften some neon colors for print-friendliness and wearable appeal, maintaining the comic_primary accents for vibrancy.",
            "tokens": [
              "apply",
              "pastel",
              "dream",
              "palette",
              "selectively",
              "soften",
              "some",
              "neon",
              "color",
              "friendliness",
              "wearable",
              "appeal",
              "maintaining",
              "comic",
              "accent",
              "vibrancy"
            ]
          },
          {
            "field": "recommended_trait_applications",
            "index": 1,
            "text": "Use the vertical_stack composition to better organize elements and focus on central totem mask for stronger primary subject clarity.",
            "tokens": [
              "use",
              "vertical",
              "stack",
              "organize",
              "element",
              "focu",
              "central",
              "totem",
              "mask",
              "stronger",
              "clarity"
            ]
          },
          {
            "field": "recommended_trait_applications",
            "index": 3,
            "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
            "tokens": [
              "use",
              "pure",
              "typography",
              "density",
              "character",
              "distinct",
              "without",
              "overcrowding"
            ]
          }
        ],
        "conflicts_detected": [
          {
            "forbidden_element": "copyrighted characters",
            "matched_tokens": [
              "character"
            ],
            "source_positive": [
              {
                "field": "composition_instruction",
                "index": null,
                "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
                "matched_tokens": [
                  "character"
                ]
              },
              {
                "field": "recommended_trait_applications",
                "index": 3,
                "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
                "matched_tokens": [
                  "character"
                ]
              }
            ],
            "source_negative": "concept.forbidden_elements",
            "resolution": "removed_from_forbidden_elements",
            "reason": "Explicit positive VLM guidance protected this token."
          },
          {
            "forbidden_element": "small unreadable text",
            "matched_tokens": [
              "small"
            ],
            "source_positive": [
              {
                "field": "composition_instruction",
                "index": null,
                "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
                "matched_tokens": [
                  "small"
                ]
              }
            ],
            "source_negative": "concept.forbidden_elements",
            "resolution": "removed_from_forbidden_elements",
            "reason": "Explicit positive VLM guidance protected this token."
          }
        ]
      }
    },
    {
      "stage_id": "enforce_typography_policy",
      "label": "Enforce typography policy",
      "status": "completed",
      "input_summary": "Policy no_text from default.",
      "output_summary": "Typography density pure_graphic.",
      "details": {
        "records": []
      }
    },
    {
      "stage_id": "generate_image",
      "label": "Generate image",
      "status": "completed",
      "input_summary": "Prompt plus reference image canvas.",
      "output_summary": "Generated image with latest_canvas_weighted_trait.",
      "model": "gpt-image-2",
      "details": {
        "reference_generation_id": "2026-07-16_20260716T163119Z_latest_001",
        "reference_image_source": "design_url"
      }
    },
    {
      "stage_id": "persist_publish",
      "label": "Persist and publish",
      "status": "completed",
      "input_summary": "Generated concept, prompt, image outputs, metadata, and commerce settings.",
      "output_summary": "Metadata prepared for local output, Supabase persistence, and configured commerce publish steps."
    }
  ],
  "image_generation_mode": "latest_canvas_weighted_trait",
  "reference_generation_id": "2026-07-16_20260716T163119Z_latest_001",
  "reference_design_url": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
  "reference_image_source": "design_url",
  "reference_image_error": null,
  "reference_canvas_role": "latest_generated_canvas_parent",
  "reference_variation_strength": "preserve broad composition from the latest generated design while introducing weighted heritage traits",
  "canvas_parent_generation_id": "2026-07-16_20260716T163119Z_latest_001",
  "trait_parent_generation_id": "2026-07-01_20260701T163136Z_latest_001",
  "trait_parent_generation_ids": [
    "2026-07-01_20260701T163136Z_latest_001",
    "2026-06-21_20260621T163123Z_latest_001"
  ],
  "vlm_analysis": {
    "status": "succeeded",
    "model": "gpt-4.1-mini",
    "prompt_version": "latest-canvas-improvement-analysis-v1",
    "canvas_strengths": [
      "Distinctive and vibrant motif with mecha-inspired futuristic masks and geometric shapes.",
      "Strong use of neon colors that create a clear and readable silhouette.",
      "Highly detailed design showing a complex but balanced composition with a grid layout.",
      "The graphic is visually striking with a clear central focal point on the mecha totem mask.",
      "Good use of color contrast between the glowing neon characters and darker background."
    ],
    "canvas_weaknesses": [
      "The palette is very vibrant but somewhat chaotic, blending neon pink, blue, yellow, and green, which might reduce print-friendliness and wearable appeal in some cases.",
      "The complexity level is quite high, causing potential visual noise and diminishing readability from a distance.",
      "The vertical stacking and grid layout combined with oversized graphic elements can make the design overwhelming for some viewers.",
      "Some small details like dots and lines add to the visual noise, making the design busy."
    ],
    "recommended_trait_applications": [
      "Apply the pastel_dream palette selectively to soften some neon colors for print-friendliness and wearable appeal, maintaining the comic_primary accents for vibrancy.",
      "Use the vertical_stack composition to better organize elements and focus on central totem mask for stronger primary subject clarity.",
      "Incorporate the dark_fantasy style subtly in the masks' design to add mood depth without overwhelming detail.",
      "Use pure_graphic typography density to keep characters bold and distinct without overcrowding."
    ],
    "traits_to_avoid": [
      "Adding typography.cyber_terminal since existing typography is very dominant and modifying it may reduce clarity.",
      "Increasing complexity beyond medium level to avoid further visual noise.",
      "Applying grid_layout effects that could fragment the design and reduce silhouette strength.",
      "Overusing oversized_graphic elements which may cause imbalance and less wearable appeal."
    ],
    "composition_instruction": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
    "sellability_rationale": "This design balances a futuristic mecha motif with vibrant colors and distinct silhouettes, appealing to streetwear fans of sci-fi and fantasy themes. Applying a softened pastel palette and refining the composition enhances print-friendliness and wearable appeal, making it more versatile for diverse consumers while retaining uniqueness and visual impact.",
    "reference_image_source": "design_url"
  },
  "prompt_conflict_resolution": {
    "status": "resolved",
    "mode": "latest_canvas_weighted_trait",
    "raw_forbidden_elements": [
      "real brands",
      "celebrities",
      "copyrighted characters",
      "political slogans",
      "explicit content",
      "text",
      "small unreadable text"
    ],
    "final_forbidden_elements": [
      "real brands",
      "celebrities",
      "political slogans",
      "explicit content",
      "text"
    ],
    "protected_tokens": [
      "accent",
      "appeal",
      "apply",
      "central",
      "character",
      "clarity",
      "color",
      "comic",
      "density",
      "detail",
      "distinct",
      "dot",
      "dream",
      "drip",
      "element",
      "focu",
      "friendliness",
      "highlight",
      "keeping",
      "layout",
      "maintaining",
      "mask",
      "mecha",
      "neon",
      "noise",
      "organize",
      "overcrowding",
      "palette",
      "pastel",
      "point",
      "preserve",
      "pure",
      "selectively",
      "small",
      "soften",
      "some",
      "stack",
      "striking",
      "strong",
      "stronger",
      "stylized",
      "totem",
      "typography",
      "use",
      "using",
      "vertical",
      "vibrancy",
      "visually",
      "wearable",
      "while",
      "without"
    ],
    "positive_sources": [
      {
        "field": "composition_instruction",
        "index": null,
        "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
        "tokens": [
          "central",
          "totem",
          "mask",
          "focu",
          "vertical",
          "stack",
          "layout",
          "soften",
          "neon",
          "color",
          "using",
          "pastel",
          "dream",
          "palette",
          "friendliness",
          "while",
          "keeping",
          "comic",
          "highlight",
          "small",
          "dot",
          "drip",
          "detail",
          "noise",
          "preserve",
          "strong",
          "stylized",
          "character",
          "using",
          "pure",
          "typography",
          "density"
        ]
      },
      {
        "field": "canvas_strengths",
        "index": 3,
        "text": "The graphic is visually striking with a clear central focal point on the mecha totem mask.",
        "tokens": [
          "visually",
          "striking",
          "central",
          "point",
          "mecha",
          "totem",
          "mask"
        ]
      },
      {
        "field": "recommended_trait_applications",
        "index": 0,
        "text": "Apply the pastel_dream palette selectively to soften some neon colors for print-friendliness and wearable appeal, maintaining the comic_primary accents for vibrancy.",
        "tokens": [
          "apply",
          "pastel",
          "dream",
          "palette",
          "selectively",
          "soften",
          "some",
          "neon",
          "color",
          "friendliness",
          "wearable",
          "appeal",
          "maintaining",
          "comic",
          "accent",
          "vibrancy"
        ]
      },
      {
        "field": "recommended_trait_applications",
        "index": 1,
        "text": "Use the vertical_stack composition to better organize elements and focus on central totem mask for stronger primary subject clarity.",
        "tokens": [
          "use",
          "vertical",
          "stack",
          "organize",
          "element",
          "focu",
          "central",
          "totem",
          "mask",
          "stronger",
          "clarity"
        ]
      },
      {
        "field": "recommended_trait_applications",
        "index": 3,
        "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
        "tokens": [
          "use",
          "pure",
          "typography",
          "density",
          "character",
          "distinct",
          "without",
          "overcrowding"
        ]
      }
    ],
    "conflicts_detected": [
      {
        "forbidden_element": "copyrighted characters",
        "matched_tokens": [
          "character"
        ],
        "source_positive": [
          {
            "field": "composition_instruction",
            "index": null,
            "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
            "matched_tokens": [
              "character"
            ]
          },
          {
            "field": "recommended_trait_applications",
            "index": 3,
            "text": "Use pure_graphic typography density to keep characters bold and distinct without overcrowding.",
            "matched_tokens": [
              "character"
            ]
          }
        ],
        "source_negative": "concept.forbidden_elements",
        "resolution": "removed_from_forbidden_elements",
        "reason": "Explicit positive VLM guidance protected this token."
      },
      {
        "forbidden_element": "small unreadable text",
        "matched_tokens": [
          "small"
        ],
        "source_positive": [
          {
            "field": "composition_instruction",
            "index": null,
            "text": "Maintain the central totem_mask as primary focus with a vertical stack layout. Soften neon colors using pastel_dream palette to improve print-friendliness while keeping comic_primary highlights. Reduce small dot and drip details to minimize noise. Preserve the strong silhouette and clear readability of stylized characters by using pure_graphic typography density.",
            "matched_tokens": [
              "small"
            ]
          }
        ],
        "source_negative": "concept.forbidden_elements",
        "resolution": "removed_from_forbidden_elements",
        "reason": "Explicit positive VLM guidance protected this token."
      }
    ]
  },
  "weighted_selection": {
    "selection_strategy": "weighted-heritage-lottery-50-50",
    "selection_seed": "20260717T163117Z-latest-weighted-parent-lottery-001",
    "crossover_seed": "20260717T163117Z-latest-successor-crossover-001",
    "candidate_pool_size": 25,
    "weighted_signal_count": 37,
    "feedback_rating": "up",
    "feedback_label": "weighted",
    "parent_source": "feedback_events.weighted_heritage",
    "candidate_scores": [
      {
        "generation_id": "2026-07-03_20260703T163113Z_latest_001",
        "heritage_score": 15.0,
        "ticket_weight": 15.0,
        "base_ticket_weight": 15.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-07-01_20260701T163136Z_latest_001",
        "heritage_score": 37.0,
        "ticket_weight": 37.0,
        "base_ticket_weight": 37.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-30_20260630T163111Z_latest_001",
        "heritage_score": 20.0,
        "ticket_weight": 20.0,
        "base_ticket_weight": 20.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-29_20260629T163112Z_latest_001",
        "heritage_score": 4.0,
        "ticket_weight": 4.0,
        "base_ticket_weight": 4.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-29_20260629T152448Z_latest_001",
        "heritage_score": -1.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-28_20260628T163115Z_latest_001",
        "heritage_score": -5.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-27_20260627T163113Z_latest_001",
        "heritage_score": 3.0,
        "ticket_weight": 3.0,
        "base_ticket_weight": 3.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-24_20260624T163120Z_latest_001",
        "heritage_score": 5.0,
        "ticket_weight": 5.0,
        "base_ticket_weight": 5.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-23_20260623T163127Z_latest_001",
        "heritage_score": 28.0,
        "ticket_weight": 28.0,
        "base_ticket_weight": 28.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-21_20260621T163123Z_latest_001",
        "heritage_score": 29.0,
        "ticket_weight": 29.0,
        "base_ticket_weight": 29.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-20_20260620T163125Z_latest_001",
        "heritage_score": -11.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-16_20260616T160144Z_latest_001",
        "heritage_score": -28.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-16_20260616T120142Z_latest_001",
        "heritage_score": -21.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-16_20260616T080129Z_latest_001",
        "heritage_score": -8.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-15_20260615T200141Z_latest_001",
        "heritage_score": -11.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-12_20260612T160125Z_latest_001",
        "heritage_score": -15.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-07_20260607T160116Z_latest_001",
        "heritage_score": -11.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-06_20260606T200115Z_latest_001",
        "heritage_score": -1.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-06_20260606T120117Z_latest_001",
        "heritage_score": 10.0,
        "ticket_weight": 10.0,
        "base_ticket_weight": 10.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-05_20260605T120122Z_latest_001",
        "heritage_score": -17.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-05_20260605T080122Z_latest_001",
        "heritage_score": -5.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-04_20260604T091701Z_latest_001",
        "heritage_score": -26.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-06-03_20260603T210150Z_latest_001",
        "heritage_score": -28.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-05-30_20260530T202118Z_latest_001",
        "heritage_score": -49.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      },
      {
        "generation_id": "2026-05-29_20260529T204612Z_latest_001",
        "heritage_score": -26.0,
        "ticket_weight": 1.0,
        "base_ticket_weight": 1.0,
        "new_trait_multiplier": null,
        "new_trait_count": null
      }
    ],
    "selected_parent_generation_ids": [
      "2026-07-01_20260701T163136Z_latest_001",
      "2026-06-21_20260621T163123Z_latest_001"
    ],
    "canvas_parent_generation_id": "2026-07-16_20260716T163119Z_latest_001",
    "trait_parent_generation_id": "2026-07-01_20260701T163136Z_latest_001",
    "trait_parent_generation_ids": [
      "2026-07-01_20260701T163136Z_latest_001",
      "2026-06-21_20260621T163123Z_latest_001"
    ],
    "canvas_parent_image_source": "design_url",
    "canvas_parent_design_url": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
    "canvas_parent_design_storage_key": "generations/2026-07-16_20260716T163119Z_latest_001/design_001.png",
    "mutation_applied": false,
    "mutation_roll": 28,
    "mutation_category": null,
    "mutation_replaced_trait": null,
    "mutation_inserted_trait": null,
    "inherited_trait_sources": [
      {
        "trait": "typography.cyber_terminal",
        "category": "typography",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "style.dark_fantasy",
        "category": "style",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "composition.grid_layout",
        "category": "composition",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "palette.pastel_dream",
        "category": "palette",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "composition.vertical_stack",
        "category": "composition",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "complexity.medium",
        "category": "complexity",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "composition.oversized_graphic",
        "category": "composition",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "motifs.mecha",
        "category": "motifs",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "mood.underground",
        "category": "mood",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001"
        ]
      },
      {
        "trait": "typography_density.pure_graphic",
        "category": "typography_density",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "palette.comic_primary",
        "category": "palette",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "motifs.totem_mask",
        "category": "motifs",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "effects.melting_effect",
        "category": "effects",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "style.vintage_comic",
        "category": "style",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "typography.glitch_text",
        "category": "typography",
        "parent_generation_ids": [
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      },
      {
        "trait": "energy.high",
        "category": "energy",
        "parent_generation_ids": [
          "2026-07-01_20260701T163136Z_latest_001",
          "2026-06-21_20260621T163123Z_latest_001"
        ]
      }
    ],
    "child_creation_score": 29.0,
    "parent_heritage_scores": [
      {
        "generation_id": "2026-07-01_20260701T163136Z_latest_001",
        "heritage_score": 37.0,
        "base_ticket_weight": 37.0,
        "active_new_traits": [],
        "ticket_weight": 37.0
      },
      {
        "generation_id": "2026-06-21_20260621T163123Z_latest_001",
        "heritage_score": 29.0,
        "base_ticket_weight": 29.0,
        "active_new_traits": [],
        "ticket_weight": 29.0
      }
    ]
  },
  "generation_source": "github_actions",
  "printify_product_id": null,
  "printify_upload_id": null,
  "printify_product_url": null,
  "printify_mockup_url": null,
  "shopify_product_id": null,
  "shopify_product_handle": null,
  "shopify_product_url": null,
  "commerce_status": null,
  "commerce_error": null,
  "commerce_synced_at": null,
  "printful_product_id": null,
  "printful_product_url": null,
  "printful_mockup_url": null,
  "printful_external_id": null,
  "printful_store_id": null,
  "shopify_publication_id": null,
  "shopify_publication_status": null,
  "shopify_publication_error": null,
  "shopify_published_at": null,
  "design_storage_key": "generations/2026-07-17_20260717T163117Z_latest_001/design_001.png",
  "design_url": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/design_001.png",
  "mockup_storage_key": "generations/2026-07-17_20260717T163117Z_latest_001/shirt_001.png",
  "mockup_url": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/shirt_001.png",
  "artifact_urls": {
    "metadata": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/metadata_001.json",
    "concept": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/concept_001.json",
    "prompt": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/design_prompt_001.txt",
    "readme": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/README_001.md",
    "rating": "https://pub-ba22defe826e49c8be53dce2ada7ab89.r2.dev/generations/2026-07-17_20260717T163117Z_latest_001/rating_001.txt"
  },
  "artifact_storage_keys": {
    "metadata": "generations/2026-07-17_20260717T163117Z_latest_001/metadata_001.json",
    "concept": "generations/2026-07-17_20260717T163117Z_latest_001/concept_001.json",
    "prompt": "generations/2026-07-17_20260717T163117Z_latest_001/design_prompt_001.txt",
    "readme": "generations/2026-07-17_20260717T163117Z_latest_001/README_001.md",
    "rating": "generations/2026-07-17_20260717T163117Z_latest_001/rating_001.txt"
  }
}
