raw output — byte exact
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 120" role="img" aria-labelledby="title desc">
<title id="title">Weather icon set</title>
<desc id="desc">Six monochrome weather icons: sun, cloud, rain, snow, fog, and thunderstorm.</desc>
<defs>
<path id="cloud" d="M24 68h52c7 0 12-4 12-10 0-7-6-12-13-12h-4C70 36 62 29 51 29c-11 0-20 7-22 18h-1c-7 0-12 5-12 11s4 10 8 10z"/>
<style>
.weather {
fill: none;
stroke: #111;
stroke-width: 4;
stroke-linecap: round;
stroke-linejoin: round;
}
</style>
</defs>
<g class="weather">
<!-- Sun -->
<g transform="translate(0 0)">
<circle cx="50" cy="54" r="17"/>
<path d="M50 18v9M50 81v9M14 54h9M77 54h9M24.5 28.5l6.4 6.4M69.1 73.1l6.4 6.4M75.5 28.5l-6.4 6.4M30.9 73.1l-6.4 6.4"/>
</g>
<!-- Cloud -->
<g transform="translate(100 0)">
<use href="#cloud"/>
</g>
<!-- Rain -->
<g transform="translate(200 0)">
<use href="#cloud"/>
<path d="M32 78l-5 11M50 78l-5 11M68 78l-5 11"/>
</g>
<!-- Snow -->
<g transform="translate(300 0)">
<use href="#cloud"/>
<path d="M31 78v14M24 85h14M26 80l10 10M36 80L26 90M50 78v14M43 85h14M45 80l10 10M55 80L45 90M69 78v14M62 85h14M64 80l10 10M74 80L64 90"/>
</g>
<!-- Fog -->
<g transform="translate(400 0)">
<use href="#cloud"/>
<path d="M22 78h56M16 89h48"/>
</g>
<!-- Thunderstorm -->
<g transform="translate(500 0)">
<use href="#cloud"/>
<path d="M52 73L41 87h10l-5 14 16-20H52z"/>
</g>
</g>
</svg>request envelope — prompt redacted
{
"model": "openai/gpt-5.6-luna",
"system": "Respond with a single complete <svg> element and nothing else. No markdown fences, no explanation. Include an explicit viewBox. Do not reference external fonts, images, or stylesheets — the SVG must be fully self-contained.",
"messages": [
{
"role": "user",
"content": "«REDACTED — 68 words, 386 chars»"
}
],
"maxOutputTokens": 16000,
"gatewayStringId": "cb3bc47b-271f-4c9b-a222-cd70fff1d39b"
}