{
  "report": {
    "id": 78,
    "period": "[All] Jun 24 - Jul 08, 2026 (Part 5 of 14)",
    "created_at": "2026-07-08T21:58:08.759545+00:00",
    "workflow_note": ""
  },
  "generation_diagnostics": {
    "available": true,
    "generated_at": "2026-07-08T21:58:40.230510Z",
    "tag": "All",
    "media_scope": "all_media",
    "generation_strategy": "deep_chunked_two_pass_candidate_discovery_and_validation",
    "report_profile": "deep",
    "model": "~google/gemini-flash-latest",
    "previous_report_context": null,
    "vision_preflight": {
      "enabled": true,
      "since": "2026-06-24T21:39:21.810258Z",
      "media_scope": "all_media",
      "scoped_post_count": 0,
      "batch_size": 500,
      "max_batches": 20,
      "batch_count": 2,
      "images_requested": 470,
      "images_analyzed": 174,
      "posts_touched": 482,
      "reached_batch_cap": false,
      "batches": [
        {
          "batch_number": 1,
          "images_requested": 470,
          "images_analyzed": 174,
          "posts_touched": 482,
          "completion_reconciled": true
        },
        {
          "batch_number": 2,
          "images_requested": 0,
          "images_analyzed": 0,
          "posts_touched": 0,
          "completion_reconciled": false
        }
      ]
    },
    "chunking": {
      "enabled": true,
      "chunk_number": 5,
      "chunk_count": 14,
      "max_posts_per_chunk": 200,
      "max_media_per_chunk": 500,
      "chunk_post_count": 200,
      "chunk_media_count": 248,
      "full_source_post_count": 3559,
      "full_eligible_post_count": 2630,
      "full_source_media_count": 4064
    },
    "criteria": {
      "time_window_days": 14,
      "window_start": "2026-06-24T21:39:21.810258Z",
      "minimum_confidence": 0.7,
      "minimum_matching_images": 4,
      "minimum_parent_posts": 3,
      "maximum_images_per_parent_post": 2,
      "preferred_matching_images": "6-12 when available; 4+ accepted for emerging micro-trends",
      "visual_similarity_is_primary": true,
      "caption_required": false,
      "captionless_posts_included": true,
      "engagement_included_in_prompt": true,
      "single_campaign_trends_excluded": true,
      "media_refs_can_support_multiple_trends": true,
      "deep_report_max_posts": 200,
      "deep_report_max_media": 500,
      "prompt_character_limit": 300000,
      "caption_character_limit": 600,
      "media_tag_limit": 14,
      "media_tag_character_limit": 0
    },
    "source_post_count": 3559,
    "source_media_count": 4064,
    "eligible_post_count": 2630,
    "chunk_post_count": 200,
    "chunk_media_count": 248,
    "analyzed_post_count": 200,
    "analyzed_post_ids": [
      150188,
      150186,
      150187,
      150176,
      150177,
      150178,
      150179,
      150180,
      150181,
      150182,
      150183,
      150184,
      150185,
      150166,
      150169,
      150174,
      150171,
      150167,
      150170,
      150172,
      150175,
      150164,
      150173,
      150168,
      150165,
      150158,
      150161,
      150160,
      150159,
      150154,
      150157,
      150153,
      150155,
      150156,
      150152,
      150163,
      150162,
      150150,
      150140,
      150142,
      150151,
      150149,
      150148,
      150147,
      150146,
      150145,
      150144,
      150143,
      150141,
      150119,
      150132,
      150117,
      150134,
      150128,
      150138,
      150135,
      150133,
      150120,
      150123,
      150130,
      150127,
      150126,
      150122,
      150125,
      150116,
      150129,
      150124,
      150136,
      150137,
      150121,
      150118,
      150139,
      150107,
      150115,
      150058,
      150066,
      150068,
      150069,
      150105,
      150110,
      150109,
      150111,
      150106,
      150104,
      150099,
      150083,
      150085,
      150084,
      150074,
      150076,
      150072,
      150070,
      150067,
      150062,
      150061,
      150063,
      150059,
      150060,
      150073,
      150075,
      150077,
      150079,
      150080,
      150093,
      150094,
      150098,
      150101,
      150102,
      150103,
      150112,
      150114,
      150064,
      150065,
      150095,
      150092,
      150091,
      150071,
      150088,
      150087,
      150082,
      150100,
      150086,
      150097,
      150096,
      150108,
      150204,
      150216,
      150217,
      150215,
      150214,
      150212,
      150210,
      150209,
      150208,
      150211,
      150205,
      150203,
      150206,
      150218,
      150213,
      151624,
      151090,
      151069,
      151216,
      151173,
      150733,
      151226,
      151122,
      151123,
      151235,
      150748,
      151484,
      151012,
      151635,
      151325,
      151327,
      150982,
      151611,
      151109,
      151580,
      151016,
      150790,
      151378,
      151306,
      151402,
      151110,
      151199,
      150934,
      151250,
      150826,
      151349,
      150800,
      151469,
      151514,
      151078,
      151603,
      151244,
      151160,
      151307,
      151202,
      149833,
      151326,
      149845,
      150972,
      151403,
      151359,
      151561,
      151473,
      149840,
      151491,
      151598,
      150833,
      150965,
      151207,
      151022,
      151230,
      151397,
      151332,
      151304,
      149841
    ],
    "analyzed_media_count": 248,
    "analyzed_media_refs": [
      "150188:1",
      "150186:1",
      "150187:1",
      "150176:1",
      "150177:1",
      "150178:1",
      "150179:1",
      "150180:1",
      "150181:1",
      "150182:1",
      "150183:1",
      "150184:1",
      "150185:1",
      "150166:1",
      "150169:1",
      "150174:1",
      "150171:1",
      "150167:1",
      "150170:1",
      "150172:1",
      "150175:1",
      "150164:1",
      "150173:1",
      "150168:1",
      "150165:1",
      "150158:1",
      "150161:1",
      "150160:1",
      "150159:1",
      "150154:1",
      "150157:1",
      "150153:1",
      "150155:1",
      "150156:1",
      "150152:1",
      "150163:1",
      "150162:1",
      "150150:1",
      "150140:1",
      "150142:1",
      "150151:1",
      "150149:1",
      "150148:1",
      "150147:1",
      "150146:1",
      "150145:1",
      "150144:1",
      "150143:1",
      "150141:1",
      "150119:1",
      "150132:1",
      "150117:1",
      "150134:1",
      "150128:1",
      "150138:1",
      "150135:1",
      "150133:1",
      "150120:1",
      "150123:1",
      "150130:1",
      "150127:1",
      "150126:1",
      "150122:1",
      "150125:1",
      "150116:1",
      "150129:1",
      "150124:1",
      "150136:1",
      "150137:1",
      "150121:1",
      "150118:1",
      "150139:1",
      "150107:1",
      "150115:1",
      "150058:1",
      "150066:1",
      "150068:1",
      "150069:1",
      "150105:1",
      "150110:1",
      "150109:1",
      "150111:1",
      "150106:1",
      "150104:1",
      "150099:1",
      "150083:1",
      "150085:1",
      "150084:1",
      "150074:1",
      "150076:1",
      "150072:1",
      "150070:1",
      "150067:1",
      "150062:1",
      "150061:1",
      "150063:1",
      "150059:1",
      "150060:1",
      "150073:1",
      "150075:1",
      "150077:1",
      "150079:1",
      "150080:1",
      "150093:1",
      "150094:1",
      "150098:1",
      "150101:1",
      "150102:1",
      "150103:1",
      "150112:1",
      "150114:1",
      "150064:1",
      "150065:1",
      "150095:1",
      "150092:1",
      "150091:1",
      "150071:1",
      "150088:1",
      "150087:1",
      "150082:1",
      "150100:1",
      "150086:1",
      "150097:1",
      "150096:1",
      "150108:1",
      "150204:1",
      "150216:1",
      "150217:1",
      "150215:1",
      "150214:1",
      "150212:1",
      "150210:1",
      "150209:1",
      "150208:1",
      "150211:1",
      "150205:1",
      "150203:1",
      "150206:1",
      "150218:1",
      "150213:1",
      "151624:1",
      "151624:2",
      "151624:3",
      "151624:4",
      "151624:5",
      "151090:1",
      "151069:1",
      "151216:1",
      "151216:2",
      "151216:3",
      "151216:4",
      "151173:1",
      "150733:1",
      "150733:2",
      "150733:3",
      "150733:4",
      "151226:1",
      "151122:1",
      "151122:2",
      "151123:1",
      "151123:2",
      "151123:3",
      "151123:4",
      "151235:1",
      "150748:1",
      "151484:1",
      "151012:1",
      "151635:1",
      "151325:1",
      "151325:2",
      "151325:3",
      "151325:4",
      "151325:5",
      "151327:1",
      "150982:1",
      "151611:1",
      "151109:1",
      "151580:1",
      "151016:1",
      "150790:1",
      "151378:1",
      "151378:2",
      "151378:3",
      "151378:4",
      "151378:5",
      "151378:6",
      "151378:7",
      "151378:8",
      "151306:1",
      "151402:1",
      "151110:1",
      "151199:1",
      "150934:1",
      "151250:1",
      "151250:2",
      "151250:3",
      "151250:4",
      "151250:5",
      "150826:1",
      "151349:1",
      "150800:1",
      "151469:1",
      "151514:1",
      "151078:1",
      "151078:2",
      "151078:3",
      "151078:4",
      "151078:5",
      "151078:6",
      "151078:7",
      "151078:8",
      "151078:9",
      "151078:10",
      "151603:1",
      "151244:1",
      "151160:1",
      "151307:1",
      "151202:1",
      "149833:1",
      "149833:2",
      "149833:3",
      "149833:4",
      "149833:5",
      "151326:1",
      "149845:1",
      "150972:1",
      "151403:1",
      "151359:1",
      "151561:1",
      "151473:1",
      "149840:1",
      "149840:2",
      "151491:1",
      "151491:2",
      "151598:1",
      "150833:1",
      "150965:1",
      "151207:1",
      "151207:2",
      "151207:3",
      "151207:4",
      "151022:1",
      "151230:1",
      "151397:1",
      "151332:1",
      "151304:1",
      "149841:1",
      "149841:2"
    ],
    "full_source_prompt_character_count": 142355,
    "source_prompt_character_count": 142355,
    "prompt_character_count": 142355,
    "prompt_character_limit": 300000,
    "prompt_was_truncated": false,
    "candidate_prompt_character_count": 146514,
    "validation_prompt_character_count": 152761,
    "candidate_reasoning_scratchpad": "Preppy academic details like checks, crests, and layered tailoring are transitioning effortlessly into seasonal wardrobes alongside highly functional, contrast-trimmed activewear. Rich warm tones like chocolate brown and burgundy are anchoring both street style looks and wellness-driven athleisure sets.",
    "validation_reasoning_scratchpad": "The validated trends reflect a strong shift toward classical layering, preppy design details, and monochromatic depth across current street and activewear looks. Coastal elements are seamlessly blending with dark academia and modern collegiate codes. The emergence of contrast trim activewear and bold primary pops highlights a playful transition between functional fitness and daytime street style.",
    "ai_discovered_candidate_count": 8,
    "candidate_trends": [
      {
        "candidate_name": "Preppy Plaid & Checked Blazers",
        "trend_type": "outfit",
        "visual_axis": "garment_type",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "150174:1",
          "150175:1",
          "150161:1",
          "150058:1",
          "150091:1"
        ],
        "visual_cues": [
          "plaid blazer",
          "brown check print",
          "houndstooth pattern",
          "collegiate patch detail",
          "preppy aesthetic"
        ]
      },
      {
        "candidate_name": "Contrast Trim & Piping Activewear",
        "trend_type": "outfit",
        "visual_axis": "styling_formula",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "151325:1",
          "151325:2",
          "151325:3",
          "151325:4",
          "151325:5"
        ],
        "visual_cues": [
          "contrast trim",
          "white trim detail",
          "ribbed activewear set",
          "black and white unitard"
        ]
      },
      {
        "candidate_name": "Espresso & Chocolate Brown Monostatement",
        "trend_type": "color",
        "visual_axis": "color",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "150119:1",
          "150149:1",
          "150156:1",
          "150067:1",
          "150733:4"
        ],
        "visual_cues": [
          "chocolate brown",
          "espresso brown",
          "neutral color palette",
          "monochromatic tracksuit",
          "chocolate brown cardigan"
        ]
      },
      {
        "candidate_name": "Nautical Stripe Cardigans & Sweaters",
        "trend_type": "outfit",
        "visual_axis": "garment_type",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "150165:1",
          "150152:1",
          "150141:1",
          "150137:1",
          "150135:1"
        ],
        "visual_cues": [
          "striped cardigan",
          "navy and white palette",
          "button down cardigan",
          "classic stripes",
          "blue and navy stripes"
        ]
      },
      {
        "candidate_name": "Plum & Cherry Burgundy Active Sets",
        "trend_type": "color",
        "visual_axis": "color",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "151624:1",
          "151624:2",
          "151624:3",
          "151624:4",
          "151624:5"
        ],
        "visual_cues": [
          "burgundy activewear",
          "plum and white",
          "cherry red",
          "sculpting fit",
          "biker shorts"
        ]
      },
      {
        "candidate_name": "Boho Crochet Summer Sets & Tops",
        "trend_type": "texture",
        "visual_axis": "texture",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "150074:1",
          "150060:1",
          "150073:1",
          "150065:1",
          "150212:1"
        ],
        "visual_cues": [
          "crochet",
          "textural layering",
          "co-ord set",
          "cream crochet knit",
          "multicolored knit"
        ]
      },
      {
        "candidate_name": "Collar Detailing & Attached Denim Collars",
        "trend_type": "outfit",
        "visual_axis": "styling_formula",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "150188:1",
          "150181:1",
          "150151:1",
          "150106:1",
          "150105:1"
        ],
        "visual_cues": [
          "denim collar",
          "layered collar",
          "attached collar",
          "preppy aesthetic",
          "mock neck top"
        ]
      },
      {
        "candidate_name": "Preppy Shoulder-Draped Knit Layering",
        "trend_type": "outfit",
        "visual_axis": "styling_formula",
        "historical_relationship": "net_new",
        "seed_media_count": 5,
        "seed_media_refs": [
          "150142:1",
          "150143:1",
          "150210:1",
          "150208:1",
          "150147:1"
        ],
        "visual_cues": [
          "sweaters tied over shoulders",
          "shoulder-draped styling",
          "red sweater draped",
          "preppy aesthetic"
        ]
      }
    ],
    "ai_candidate_trend_count": 8,
    "ai_validated_trend_count_before_filter": 8,
    "accepted_trend_count": 6,
    "rejected_trend_count": 2,
    "rejected_trends": [
      {
        "trend_name": "Plum & Cherry Burgundy Active Sets",
        "confidence_score": 0.88,
        "valid_matching_image_count": 3,
        "matching_parent_post_count": 2,
        "matching_author_count": 2,
        "invalid_or_out_of_scope_media_refs": [],
        "unparseable_media_refs": [],
        "excluded_same_post_media_refs": [
          "151624:3",
          "151624:4",
          "151624:5"
        ],
        "reasons": [
          "Only 3 valid matching images; minimum is 4.",
          "Images came from only 2 parent posts; minimum is 3."
        ]
      },
      {
        "trend_name": "Contrast Trim & Piping Activewear",
        "confidence_score": 0.98,
        "valid_matching_image_count": 2,
        "matching_parent_post_count": 1,
        "matching_author_count": 1,
        "invalid_or_out_of_scope_media_refs": [],
        "unparseable_media_refs": [],
        "excluded_same_post_media_refs": [
          "151325:3",
          "151325:4",
          "151325:5"
        ],
        "reasons": [
          "Only 2 valid matching images; minimum is 4.",
          "Images came from only 1 parent posts; minimum is 3."
        ]
      }
    ]
  },
  "accepted_trend_audit": [
    {
      "trend_number": 1,
      "trend_name": "Preppy Plaid & Checked Blazers",
      "blog_title": "Academic Effortless: The Plaid Blazer Formula",
      "trend_type": "outfit",
      "signal_strength": "strong",
      "confidence_percent": 95.0,
      "matching_image_count": 6,
      "matching_parent_post_count": 6,
      "visual_similarity_reason": "Repeated use of tailored check-pattern blazers styled in high-low outfits with casual layers like denim or hoodies.",
      "description": "Structured plaid, houndstooth, and check blazers layered over casual basics to elevate everyday denim, leather skirts, and hoodies with academic polish.",
      "keywords": [
        "plaid blazer",
        "houndstooth",
        "preppy aesthetic",
        "smart casual",
        "layering"
      ],
      "post_ids": [
        150174,
        150175,
        150161,
        150170,
        150058,
        150091
      ],
      "media_refs": [
        "150174:1",
        "150175:1",
        "150161:1",
        "150170:1",
        "150058:1",
        "150091:1"
      ],
      "qualification_reason": "Accepted with 6 matching images across 6 parent posts at 95.0% confidence. Repeated use of tailored check-pattern blazers styled in high-low outfits with casual layers like denim or hoodies."
    },
    {
      "trend_number": 2,
      "trend_name": "Espresso & Chocolate Brown Monostatement",
      "blog_title": "Rich Decadence: Espresso & Chocolate Brown Monostatement",
      "trend_type": "color",
      "signal_strength": "strong",
      "confidence_percent": 92.0,
      "matching_image_count": 6,
      "matching_parent_post_count": 6,
      "visual_similarity_reason": "Cohesive solid dark brown palettes across varied cozy outerwear silhouettes and relaxed sets.",
      "description": "Chunky cardigans, tracksuits, structured outerwear, and matching lounge sets in a rich, deeply saturated monochromatic palette of chocolate and espresso brown.",
      "keywords": [
        "chocolate brown",
        "espresso brown",
        "monochromatic",
        "cozy knitwear",
        "rich neutrals"
      ],
      "post_ids": [
        150156,
        150149,
        150119,
        150067,
        150070,
        150733
      ],
      "media_refs": [
        "150156:1",
        "150149:1",
        "150119:1",
        "150067:1",
        "150070:1",
        "150733:4"
      ],
      "qualification_reason": "Accepted with 6 matching images across 6 parent posts at 92.0% confidence. Cohesive solid dark brown palettes across varied cozy outerwear silhouettes and relaxed sets."
    },
    {
      "trend_number": 3,
      "trend_name": "Nautical Stripe Cardigans & Sweaters",
      "blog_title": "Nautical Notes: Striped Cardigans & Sweaters",
      "trend_type": "outfit",
      "signal_strength": "strong",
      "confidence_percent": 94.0,
      "matching_image_count": 6,
      "matching_parent_post_count": 6,
      "visual_similarity_reason": "Consistency in stripe patterns and structured button-down knit cardigans styled over denims and relaxed pants.",
      "description": "Button-down knit cardigans and crewneck sweaters utilizing crisp horizontal stripes, typically in navy-and-white or classic red-and-brown maritime schemes.",
      "keywords": [
        "striped cardigan",
        "nautical palette",
        "coastal grandmother",
        "button down knit",
        "classic stripes"
      ],
      "post_ids": [
        150165,
        150152,
        150141,
        150137,
        150135,
        150204
      ],
      "media_refs": [
        "150165:1",
        "150152:1",
        "150141:1",
        "150137:1",
        "150135:1",
        "150204:1"
      ],
      "qualification_reason": "Accepted with 6 matching images across 6 parent posts at 94.0% confidence. Consistency in stripe patterns and structured button-down knit cardigans styled over denims and relaxed pants."
    },
    {
      "trend_number": 4,
      "trend_name": "Boho Crochet Summer Sets & Tops",
      "blog_title": "Woven Textures: Boho Crochet Sets & Tops",
      "trend_type": "texture",
      "signal_strength": "medium",
      "confidence_percent": 85.0,
      "matching_image_count": 5,
      "matching_parent_post_count": 5,
      "visual_similarity_reason": "Visible open-knit crochet patterns and textured coordinates styled casual-cool for summer and poolside vacations.",
      "description": "Intricately detailed crochet knit cardigans, coordinate tops and pants, hoodies, and co-ord sets in earthy tones and creams.",
      "keywords": [
        "crochet knit",
        "co-ord set",
        "boho style",
        "vacation aesthetic",
        "textural layering"
      ],
      "post_ids": [
        150074,
        150060,
        150073,
        150065,
        150212
      ],
      "media_refs": [
        "150074:1",
        "150060:1",
        "150073:1",
        "150065:1",
        "150212:1"
      ],
      "qualification_reason": "Accepted with 5 matching images across 5 parent posts at 85.0% confidence. Visible open-knit crochet patterns and textured coordinates styled casual-cool for summer and poolside vacations."
    },
    {
      "trend_number": 5,
      "trend_name": "Collar Detailing & Attached Denim Collars",
      "blog_title": "Perfect Layer Mimic: Attached Denim Collars",
      "trend_type": "styling_formula",
      "signal_strength": "medium",
      "confidence_percent": 82.0,
      "matching_image_count": 5,
      "matching_parent_post_count": 5,
      "visual_similarity_reason": "Specific visual details of sweaters featuring attached contrasting preppy collars and denim integrations.",
      "description": "Knitwear and cardigans with simulated layering via attached contrasting denim or crisp white collars, offering a structured preppy vibe without the extra heat or bulk.",
      "keywords": [
        "denim collar",
        "attached collar",
        "preppy aesthetic",
        "mock layer",
        "smart casual"
      ],
      "post_ids": [
        150188,
        150181,
        150151,
        150105,
        150106
      ],
      "media_refs": [
        "150188:1",
        "150181:1",
        "150151:1",
        "150105:1",
        "150106:1"
      ],
      "qualification_reason": "Accepted with 5 matching images across 5 parent posts at 82.0% confidence. Specific visual details of sweaters featuring attached contrasting preppy collars and denim integrations."
    },
    {
      "trend_number": 6,
      "trend_name": "Preppy Shoulder-Draped Knit Layering",
      "blog_title": "The Prep Drape: Over-The-Shoulder Knit Styling",
      "trend_type": "styling_formula",
      "signal_strength": "medium",
      "confidence_percent": 80.0,
      "matching_image_count": 5,
      "matching_parent_post_count": 5,
      "visual_similarity_reason": "Visible use of long-sleeve knitwear styled directly over shoulders for an added preppy layer.",
      "description": "Sweaters and cardigans draped over the shoulders and tied over jackets, outer coats, and shirts to build dimensions and elevate daily street looks.",
      "keywords": [
        "shoulder drape",
        "sweaters over shoulders",
        "preppy aesthetic",
        "layering hacks",
        "nautical style"
      ],
      "post_ids": [
        150142,
        150143,
        150210,
        150208,
        150147
      ],
      "media_refs": [
        "150142:1",
        "150143:1",
        "150210:1",
        "150208:1",
        "150147:1"
      ],
      "qualification_reason": "Accepted with 5 matching images across 5 parent posts at 80.0% confidence. Visible use of long-sleeve knitwear styled directly over shoulders for an added preppy layer."
    }
  ],
  "report_payload": {
    "reasoning_scratchpad": "The validated trends reflect a strong shift toward classical layering, preppy design details, and monochromatic depth across current street and activewear looks. Coastal elements are seamlessly blending with dark academia and modern collegiate codes. The emergence of contrast trim activewear and bold primary pops highlights a playful transition between functional fitness and daytime street style.",
    "content_ideas": [
      {
        "blog_title": "Academic Effortless: The Plaid Blazer Formula",
        "trend_name": "Preppy Plaid & Checked Blazers",
        "trend_type": "outfit",
        "trend_trajectory": "net_new",
        "historical_note": "This is a net-new trend identified for the current autumn-winter transition cycle.",
        "description": "Structured plaid, houndstooth, and check blazers layered over casual basics to elevate everyday denim, leather skirts, and hoodies with academic polish.",
        "visual_similarity_reason": "Repeated use of tailored check-pattern blazers styled in high-low outfits with casual layers like denim or hoodies.",
        "instagram_caption": "Major academic-chic energy. \ud83e\udd0e\u2615\ufe0f\nElevating our favorite casuals with the ultimate structured blazer.\nHow are you styling your checks this season?\n#PreppyLook #PlaidBlazer #DarkAcademiaStyle #OOTD",
        "trend_signal_strength": "strong",
        "confidence_score": 0.95,
        "keywords": [
          "plaid blazer",
          "houndstooth",
          "preppy aesthetic",
          "smart casual",
          "layering"
        ],
        "example_media_refs": [
          "150174:1",
          "150175:1",
          "150161:1",
          "150170:1",
          "150058:1",
          "150091:1"
        ],
        "example_post_ids": [
          150174,
          150175,
          150161,
          150170,
          150058,
          150091
        ],
        "matching_image_count": 6,
        "matching_parent_post_count": 6,
        "matching_author_count": 5
      },
      {
        "blog_title": "Rich Decadence: Espresso & Chocolate Brown Monostatement",
        "trend_name": "Espresso & Chocolate Brown Monostatement",
        "trend_type": "color",
        "trend_trajectory": "net_new",
        "historical_note": "This is a net-new color trend replacing classic flat black with warmer, highly saturated chocolate tones.",
        "description": "Chunky cardigans, tracksuits, structured outerwear, and matching lounge sets in a rich, deeply saturated monochromatic palette of chocolate and espresso brown.",
        "visual_similarity_reason": "Cohesive solid dark brown palettes across varied cozy outerwear silhouettes and relaxed sets.",
        "instagram_caption": "Sipping on espresso tones. \u2615\ufe0f\ud83c\udf42\nDitching basic black for deep, delicious chocolate layers.\nWhich monochromatic look is yours?\n#EspressoBrown #ChocolateBrown #NeutralCozy #FallVibes #Loungewear",
        "trend_signal_strength": "strong",
        "confidence_score": 0.92,
        "keywords": [
          "chocolate brown",
          "espresso brown",
          "monochromatic",
          "cozy knitwear",
          "rich neutrals"
        ],
        "example_media_refs": [
          "150156:1",
          "150149:1",
          "150119:1",
          "150067:1",
          "150070:1",
          "150733:4"
        ],
        "example_post_ids": [
          150156,
          150149,
          150119,
          150067,
          150070,
          150733
        ],
        "matching_image_count": 6,
        "matching_parent_post_count": 6,
        "matching_author_count": 5
      },
      {
        "blog_title": "Nautical Notes: Striped Cardigans & Sweaters",
        "trend_name": "Nautical Stripe Cardigans & Sweaters",
        "trend_type": "outfit",
        "trend_trajectory": "net_new",
        "historical_note": "This is a net-new preppy styling trend combining coastal grandmother aesthetics with transitional knits.",
        "description": "Button-down knit cardigans and crewneck sweaters utilizing crisp horizontal stripes, typically in navy-and-white or classic red-and-brown maritime schemes.",
        "visual_similarity_reason": "Consistency in stripe patterns and structured button-down knit cardigans styled over denims and relaxed pants.",
        "instagram_caption": "Coastal charm meets cozy layers. \u2693\ufe0f\ud83c\udf0a\nNothing says transition-ready quite like classic stripes.\nRepeat, remix, and style on repeat.\n#NauticalStripe #CozyKnits #StripeSweater #CoastalChic",
        "trend_signal_strength": "strong",
        "confidence_score": 0.94,
        "keywords": [
          "striped cardigan",
          "nautical palette",
          "coastal grandmother",
          "button down knit",
          "classic stripes"
        ],
        "example_media_refs": [
          "150165:1",
          "150152:1",
          "150141:1",
          "150137:1",
          "150135:1",
          "150204:1"
        ],
        "example_post_ids": [
          150165,
          150152,
          150141,
          150137,
          150135,
          150204
        ],
        "matching_image_count": 6,
        "matching_parent_post_count": 6,
        "matching_author_count": 5
      },
      {
        "blog_title": "Woven Textures: Boho Crochet Sets & Tops",
        "trend_name": "Boho Crochet Summer Sets & Tops",
        "trend_type": "texture",
        "trend_trajectory": "net_new",
        "historical_note": "A net-new summer texture trend offering artisanal, open-stitch apparel for warm-weather styling.",
        "description": "Intricately detailed crochet knit cardigans, coordinate tops and pants, hoodies, and co-ord sets in earthy tones and creams.",
        "visual_similarity_reason": "Visible open-knit crochet patterns and textured coordinates styled casual-cool for summer and poolside vacations.",
        "instagram_caption": "Soft textures and effortless cool-girl energy. \u2728\ud83c\udf3f\nCrochet coordinates are officially the summer statement of our dreams.\nPack your bags and style on repeat.\n#BohoCrochet #TexturedKnit #CrochetSet #SummerResortWear",
        "trend_signal_strength": "medium",
        "confidence_score": 0.85,
        "keywords": [
          "crochet knit",
          "co-ord set",
          "boho style",
          "vacation aesthetic",
          "textural layering"
        ],
        "example_media_refs": [
          "150074:1",
          "150060:1",
          "150073:1",
          "150065:1",
          "150212:1"
        ],
        "example_post_ids": [
          150074,
          150060,
          150073,
          150065,
          150212
        ],
        "matching_image_count": 5,
        "matching_parent_post_count": 5,
        "matching_author_count": 5
      },
      {
        "blog_title": "Perfect Layer Mimic: Attached Denim Collars",
        "trend_name": "Collar Detailing & Attached Denim Collars",
        "trend_type": "styling_formula",
        "trend_trajectory": "net_new",
        "historical_note": "An innovative, net-new styling detail focused on preppy layered collars built right into the knits.",
        "description": "Knitwear and cardigans with simulated layering via attached contrasting denim or crisp white collars, offering a structured preppy vibe without the extra heat or bulk.",
        "visual_similarity_reason": "Specific visual details of sweaters featuring attached contrasting preppy collars and denim integrations.",
        "instagram_caption": "Layered look, zero bulk. \ud83e\ude75\u2728\nLoving the genius behind the built-in denim collar trend.\nInstant structure with all the comfort.\n#PreppyChic #AttachedCollar #DenimCollar #SmartCasual",
        "trend_signal_strength": "medium",
        "confidence_score": 0.82,
        "keywords": [
          "denim collar",
          "attached collar",
          "preppy aesthetic",
          "mock layer",
          "smart casual"
        ],
        "example_media_refs": [
          "150188:1",
          "150181:1",
          "150151:1",
          "150105:1",
          "150106:1"
        ],
        "example_post_ids": [
          150188,
          150181,
          150151,
          150105,
          150106
        ],
        "matching_image_count": 5,
        "matching_parent_post_count": 5,
        "matching_author_count": 5
      },
      {
        "blog_title": "The Prep Drape: Over-The-Shoulder Knit Styling",
        "trend_name": "Preppy Shoulder-Draped Knit Layering",
        "trend_type": "styling_formula",
        "trend_trajectory": "net_new",
        "historical_note": "A net-new styling formula utilizing sweaters as immediate shoulder-draped accessories.",
        "description": "Sweaters and cardigans draped over the shoulders and tied over jackets, outer coats, and shirts to build dimensions and elevate daily street looks.",
        "visual_similarity_reason": "Visible use of long-sleeve knitwear styled directly over shoulders for an added preppy layer.",
        "instagram_caption": "The ultimate quick-style hack. \ud83e\udde3\u2728\nDraping dynamic knits over the shoulders for that instant dimensional glow.\nEffortless, classic, and completely elevated.\n#ShoulderDraped #PreppyAesthetic #StyleHack #FallLayering",
        "trend_signal_strength": "medium",
        "confidence_score": 0.8,
        "keywords": [
          "shoulder drape",
          "sweaters over shoulders",
          "preppy aesthetic",
          "layering hacks",
          "nautical style"
        ],
        "example_media_refs": [
          "150142:1",
          "150143:1",
          "150210:1",
          "150208:1",
          "150147:1"
        ],
        "example_post_ids": [
          150142,
          150143,
          150210,
          150208,
          150147
        ],
        "matching_image_count": 5,
        "matching_parent_post_count": 5,
        "matching_author_count": 4
      }
    ],
    "overview_title": "Latest Trends",
    "overview_description": "This week, street style is embracing structural academic polish, as seen in the rise of sharp checked blazers from @thechiceditorial and effortless, shoulder-draped layering styled by @lyndsayalmeida. Simultaneously, the transition toward rich textures is defined by highly saturated monochromatic chocolate knits from @mrkt_showroom, nautical knits curated by @bymashie, and intricate earthy-toned crochet sets from @swoon.central. To round out the seasonal shift, designers are leaning into simulated, bulk-free layering with the clever collar-detail sweaters spotted via @tamminsursok.",
    "generation_diagnostics": {
      "available": true,
      "generated_at": "2026-07-08T21:58:40.230510Z",
      "tag": "All",
      "media_scope": "all_media",
      "generation_strategy": "deep_chunked_two_pass_candidate_discovery_and_validation",
      "report_profile": "deep",
      "model": "~google/gemini-flash-latest",
      "previous_report_context": null,
      "vision_preflight": {
        "enabled": true,
        "since": "2026-06-24T21:39:21.810258Z",
        "media_scope": "all_media",
        "scoped_post_count": 0,
        "batch_size": 500,
        "max_batches": 20,
        "batch_count": 2,
        "images_requested": 470,
        "images_analyzed": 174,
        "posts_touched": 482,
        "reached_batch_cap": false,
        "batches": [
          {
            "batch_number": 1,
            "images_requested": 470,
            "images_analyzed": 174,
            "posts_touched": 482,
            "completion_reconciled": true
          },
          {
            "batch_number": 2,
            "images_requested": 0,
            "images_analyzed": 0,
            "posts_touched": 0,
            "completion_reconciled": false
          }
        ]
      },
      "chunking": {
        "enabled": true,
        "chunk_number": 5,
        "chunk_count": 14,
        "max_posts_per_chunk": 200,
        "max_media_per_chunk": 500,
        "chunk_post_count": 200,
        "chunk_media_count": 248,
        "full_source_post_count": 3559,
        "full_eligible_post_count": 2630,
        "full_source_media_count": 4064
      },
      "criteria": {
        "time_window_days": 14,
        "window_start": "2026-06-24T21:39:21.810258Z",
        "minimum_confidence": 0.7,
        "minimum_matching_images": 4,
        "minimum_parent_posts": 3,
        "maximum_images_per_parent_post": 2,
        "preferred_matching_images": "6-12 when available; 4+ accepted for emerging micro-trends",
        "visual_similarity_is_primary": true,
        "caption_required": false,
        "captionless_posts_included": true,
        "engagement_included_in_prompt": true,
        "single_campaign_trends_excluded": true,
        "media_refs_can_support_multiple_trends": true,
        "deep_report_max_posts": 200,
        "deep_report_max_media": 500,
        "prompt_character_limit": 300000,
        "caption_character_limit": 600,
        "media_tag_limit": 14,
        "media_tag_character_limit": 0
      },
      "source_post_count": 3559,
      "source_media_count": 4064,
      "eligible_post_count": 2630,
      "chunk_post_count": 200,
      "chunk_media_count": 248,
      "analyzed_post_count": 200,
      "analyzed_post_ids": [
        150188,
        150186,
        150187,
        150176,
        150177,
        150178,
        150179,
        150180,
        150181,
        150182,
        150183,
        150184,
        150185,
        150166,
        150169,
        150174,
        150171,
        150167,
        150170,
        150172,
        150175,
        150164,
        150173,
        150168,
        150165,
        150158,
        150161,
        150160,
        150159,
        150154,
        150157,
        150153,
        150155,
        150156,
        150152,
        150163,
        150162,
        150150,
        150140,
        150142,
        150151,
        150149,
        150148,
        150147,
        150146,
        150145,
        150144,
        150143,
        150141,
        150119,
        150132,
        150117,
        150134,
        150128,
        150138,
        150135,
        150133,
        150120,
        150123,
        150130,
        150127,
        150126,
        150122,
        150125,
        150116,
        150129,
        150124,
        150136,
        150137,
        150121,
        150118,
        150139,
        150107,
        150115,
        150058,
        150066,
        150068,
        150069,
        150105,
        150110,
        150109,
        150111,
        150106,
        150104,
        150099,
        150083,
        150085,
        150084,
        150074,
        150076,
        150072,
        150070,
        150067,
        150062,
        150061,
        150063,
        150059,
        150060,
        150073,
        150075,
        150077,
        150079,
        150080,
        150093,
        150094,
        150098,
        150101,
        150102,
        150103,
        150112,
        150114,
        150064,
        150065,
        150095,
        150092,
        150091,
        150071,
        150088,
        150087,
        150082,
        150100,
        150086,
        150097,
        150096,
        150108,
        150204,
        150216,
        150217,
        150215,
        150214,
        150212,
        150210,
        150209,
        150208,
        150211,
        150205,
        150203,
        150206,
        150218,
        150213,
        151624,
        151090,
        151069,
        151216,
        151173,
        150733,
        151226,
        151122,
        151123,
        151235,
        150748,
        151484,
        151012,
        151635,
        151325,
        151327,
        150982,
        151611,
        151109,
        151580,
        151016,
        150790,
        151378,
        151306,
        151402,
        151110,
        151199,
        150934,
        151250,
        150826,
        151349,
        150800,
        151469,
        151514,
        151078,
        151603,
        151244,
        151160,
        151307,
        151202,
        149833,
        151326,
        149845,
        150972,
        151403,
        151359,
        151561,
        151473,
        149840,
        151491,
        151598,
        150833,
        150965,
        151207,
        151022,
        151230,
        151397,
        151332,
        151304,
        149841
      ],
      "analyzed_media_count": 248,
      "analyzed_media_refs": [
        "150188:1",
        "150186:1",
        "150187:1",
        "150176:1",
        "150177:1",
        "150178:1",
        "150179:1",
        "150180:1",
        "150181:1",
        "150182:1",
        "150183:1",
        "150184:1",
        "150185:1",
        "150166:1",
        "150169:1",
        "150174:1",
        "150171:1",
        "150167:1",
        "150170:1",
        "150172:1",
        "150175:1",
        "150164:1",
        "150173:1",
        "150168:1",
        "150165:1",
        "150158:1",
        "150161:1",
        "150160:1",
        "150159:1",
        "150154:1",
        "150157:1",
        "150153:1",
        "150155:1",
        "150156:1",
        "150152:1",
        "150163:1",
        "150162:1",
        "150150:1",
        "150140:1",
        "150142:1",
        "150151:1",
        "150149:1",
        "150148:1",
        "150147:1",
        "150146:1",
        "150145:1",
        "150144:1",
        "150143:1",
        "150141:1",
        "150119:1",
        "150132:1",
        "150117:1",
        "150134:1",
        "150128:1",
        "150138:1",
        "150135:1",
        "150133:1",
        "150120:1",
        "150123:1",
        "150130:1",
        "150127:1",
        "150126:1",
        "150122:1",
        "150125:1",
        "150116:1",
        "150129:1",
        "150124:1",
        "150136:1",
        "150137:1",
        "150121:1",
        "150118:1",
        "150139:1",
        "150107:1",
        "150115:1",
        "150058:1",
        "150066:1",
        "150068:1",
        "150069:1",
        "150105:1",
        "150110:1",
        "150109:1",
        "150111:1",
        "150106:1",
        "150104:1",
        "150099:1",
        "150083:1",
        "150085:1",
        "150084:1",
        "150074:1",
        "150076:1",
        "150072:1",
        "150070:1",
        "150067:1",
        "150062:1",
        "150061:1",
        "150063:1",
        "150059:1",
        "150060:1",
        "150073:1",
        "150075:1",
        "150077:1",
        "150079:1",
        "150080:1",
        "150093:1",
        "150094:1",
        "150098:1",
        "150101:1",
        "150102:1",
        "150103:1",
        "150112:1",
        "150114:1",
        "150064:1",
        "150065:1",
        "150095:1",
        "150092:1",
        "150091:1",
        "150071:1",
        "150088:1",
        "150087:1",
        "150082:1",
        "150100:1",
        "150086:1",
        "150097:1",
        "150096:1",
        "150108:1",
        "150204:1",
        "150216:1",
        "150217:1",
        "150215:1",
        "150214:1",
        "150212:1",
        "150210:1",
        "150209:1",
        "150208:1",
        "150211:1",
        "150205:1",
        "150203:1",
        "150206:1",
        "150218:1",
        "150213:1",
        "151624:1",
        "151624:2",
        "151624:3",
        "151624:4",
        "151624:5",
        "151090:1",
        "151069:1",
        "151216:1",
        "151216:2",
        "151216:3",
        "151216:4",
        "151173:1",
        "150733:1",
        "150733:2",
        "150733:3",
        "150733:4",
        "151226:1",
        "151122:1",
        "151122:2",
        "151123:1",
        "151123:2",
        "151123:3",
        "151123:4",
        "151235:1",
        "150748:1",
        "151484:1",
        "151012:1",
        "151635:1",
        "151325:1",
        "151325:2",
        "151325:3",
        "151325:4",
        "151325:5",
        "151327:1",
        "150982:1",
        "151611:1",
        "151109:1",
        "151580:1",
        "151016:1",
        "150790:1",
        "151378:1",
        "151378:2",
        "151378:3",
        "151378:4",
        "151378:5",
        "151378:6",
        "151378:7",
        "151378:8",
        "151306:1",
        "151402:1",
        "151110:1",
        "151199:1",
        "150934:1",
        "151250:1",
        "151250:2",
        "151250:3",
        "151250:4",
        "151250:5",
        "150826:1",
        "151349:1",
        "150800:1",
        "151469:1",
        "151514:1",
        "151078:1",
        "151078:2",
        "151078:3",
        "151078:4",
        "151078:5",
        "151078:6",
        "151078:7",
        "151078:8",
        "151078:9",
        "151078:10",
        "151603:1",
        "151244:1",
        "151160:1",
        "151307:1",
        "151202:1",
        "149833:1",
        "149833:2",
        "149833:3",
        "149833:4",
        "149833:5",
        "151326:1",
        "149845:1",
        "150972:1",
        "151403:1",
        "151359:1",
        "151561:1",
        "151473:1",
        "149840:1",
        "149840:2",
        "151491:1",
        "151491:2",
        "151598:1",
        "150833:1",
        "150965:1",
        "151207:1",
        "151207:2",
        "151207:3",
        "151207:4",
        "151022:1",
        "151230:1",
        "151397:1",
        "151332:1",
        "151304:1",
        "149841:1",
        "149841:2"
      ],
      "full_source_prompt_character_count": 142355,
      "source_prompt_character_count": 142355,
      "prompt_character_count": 142355,
      "prompt_character_limit": 300000,
      "prompt_was_truncated": false,
      "candidate_prompt_character_count": 146514,
      "validation_prompt_character_count": 152761,
      "candidate_reasoning_scratchpad": "Preppy academic details like checks, crests, and layered tailoring are transitioning effortlessly into seasonal wardrobes alongside highly functional, contrast-trimmed activewear. Rich warm tones like chocolate brown and burgundy are anchoring both street style looks and wellness-driven athleisure sets.",
      "validation_reasoning_scratchpad": "The validated trends reflect a strong shift toward classical layering, preppy design details, and monochromatic depth across current street and activewear looks. Coastal elements are seamlessly blending with dark academia and modern collegiate codes. The emergence of contrast trim activewear and bold primary pops highlights a playful transition between functional fitness and daytime street style.",
      "ai_discovered_candidate_count": 8,
      "candidate_trends": [
        {
          "candidate_name": "Preppy Plaid & Checked Blazers",
          "trend_type": "outfit",
          "visual_axis": "garment_type",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "150174:1",
            "150175:1",
            "150161:1",
            "150058:1",
            "150091:1"
          ],
          "visual_cues": [
            "plaid blazer",
            "brown check print",
            "houndstooth pattern",
            "collegiate patch detail",
            "preppy aesthetic"
          ]
        },
        {
          "candidate_name": "Contrast Trim & Piping Activewear",
          "trend_type": "outfit",
          "visual_axis": "styling_formula",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "151325:1",
            "151325:2",
            "151325:3",
            "151325:4",
            "151325:5"
          ],
          "visual_cues": [
            "contrast trim",
            "white trim detail",
            "ribbed activewear set",
            "black and white unitard"
          ]
        },
        {
          "candidate_name": "Espresso & Chocolate Brown Monostatement",
          "trend_type": "color",
          "visual_axis": "color",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "150119:1",
            "150149:1",
            "150156:1",
            "150067:1",
            "150733:4"
          ],
          "visual_cues": [
            "chocolate brown",
            "espresso brown",
            "neutral color palette",
            "monochromatic tracksuit",
            "chocolate brown cardigan"
          ]
        },
        {
          "candidate_name": "Nautical Stripe Cardigans & Sweaters",
          "trend_type": "outfit",
          "visual_axis": "garment_type",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "150165:1",
            "150152:1",
            "150141:1",
            "150137:1",
            "150135:1"
          ],
          "visual_cues": [
            "striped cardigan",
            "navy and white palette",
            "button down cardigan",
            "classic stripes",
            "blue and navy stripes"
          ]
        },
        {
          "candidate_name": "Plum & Cherry Burgundy Active Sets",
          "trend_type": "color",
          "visual_axis": "color",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "151624:1",
            "151624:2",
            "151624:3",
            "151624:4",
            "151624:5"
          ],
          "visual_cues": [
            "burgundy activewear",
            "plum and white",
            "cherry red",
            "sculpting fit",
            "biker shorts"
          ]
        },
        {
          "candidate_name": "Boho Crochet Summer Sets & Tops",
          "trend_type": "texture",
          "visual_axis": "texture",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "150074:1",
            "150060:1",
            "150073:1",
            "150065:1",
            "150212:1"
          ],
          "visual_cues": [
            "crochet",
            "textural layering",
            "co-ord set",
            "cream crochet knit",
            "multicolored knit"
          ]
        },
        {
          "candidate_name": "Collar Detailing & Attached Denim Collars",
          "trend_type": "outfit",
          "visual_axis": "styling_formula",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "150188:1",
            "150181:1",
            "150151:1",
            "150106:1",
            "150105:1"
          ],
          "visual_cues": [
            "denim collar",
            "layered collar",
            "attached collar",
            "preppy aesthetic",
            "mock neck top"
          ]
        },
        {
          "candidate_name": "Preppy Shoulder-Draped Knit Layering",
          "trend_type": "outfit",
          "visual_axis": "styling_formula",
          "historical_relationship": "net_new",
          "seed_media_count": 5,
          "seed_media_refs": [
            "150142:1",
            "150143:1",
            "150210:1",
            "150208:1",
            "150147:1"
          ],
          "visual_cues": [
            "sweaters tied over shoulders",
            "shoulder-draped styling",
            "red sweater draped",
            "preppy aesthetic"
          ]
        }
      ],
      "ai_candidate_trend_count": 8,
      "ai_validated_trend_count_before_filter": 8,
      "accepted_trend_count": 6,
      "rejected_trend_count": 2,
      "rejected_trends": [
        {
          "trend_name": "Plum & Cherry Burgundy Active Sets",
          "confidence_score": 0.88,
          "valid_matching_image_count": 3,
          "matching_parent_post_count": 2,
          "matching_author_count": 2,
          "invalid_or_out_of_scope_media_refs": [],
          "unparseable_media_refs": [],
          "excluded_same_post_media_refs": [
            "151624:3",
            "151624:4",
            "151624:5"
          ],
          "reasons": [
            "Only 3 valid matching images; minimum is 4.",
            "Images came from only 2 parent posts; minimum is 3."
          ]
        },
        {
          "trend_name": "Contrast Trim & Piping Activewear",
          "confidence_score": 0.98,
          "valid_matching_image_count": 2,
          "matching_parent_post_count": 1,
          "matching_author_count": 1,
          "invalid_or_out_of_scope_media_refs": [],
          "unparseable_media_refs": [],
          "excluded_same_post_media_refs": [
            "151325:3",
            "151325:4",
            "151325:5"
          ],
          "reasons": [
            "Only 2 valid matching images; minimum is 4.",
            "Images came from only 1 parent posts; minimum is 3."
          ]
        }
      ]
    }
  }
}