claude-sonnet-5 @ xhigh · CC

CCxhigh
config
claude-sonnet-5-eff-xhigh--cli--claude-code--dev
batch
2026-07-19--unified
transport
claude-code-cli-headless
protocol
cli · plan
served model
claude-sonnet-5
captured
Jul 18, 2026, 11:54 AM · N=2
variant
live
slot 0 · P-q · sandboxed iframe
claude-sonnet-5 @xhigh · CC P-q slot 0 screenshot

The screenshot is the exact frozen pixels the similarity channels measured. Run live re-executes the raw output in a sandboxed iframe; its rendering depends on your browser and fonts and is not guaranteed to match the measured pixels.

similarity neighbors

within session 2026-07-19--unified

similarity measures convergence within this session — not quality.

Fidelity — does the card show the right data?

  • namematch
  • conditionmatch
  • datematch
  • max tempambiguousshown: 16max-equals-min
  • min tempambiguousshown: 16max-equals-min
  • hourlyambiguouscoverage · 0 match · 0 mismatch · 24 not shown
  • request sidematch0 violation(s)

extractor fidelity-extractor-v1+Berlin-2026-07-15

Source — raw model output, one byte unchanged

download card.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Weather</title>
<style>
  :root{
    --clear-a:#4a9eea; --clear-b:#8fd1f0; --clear-accent:#ffb84d;
    --cloudy-a:#7c8ba1; --cloudy-b:#aab6c6; --cloudy-accent:#e8edf3;
    --rain-a:#3a5470; --rain-b:#5f7d99; --rain-accent:#9fd0ff;
    --snow-a:#7fa6c9; --snow-b:#cfe6f7; --snow-accent:#ffffff;
    --fog-a:#7c8791; --fog-b:#a9b2ba; --fog-accent:#e4e8eb;
    --thunder-a:#2c2a4a; --thunder-b:#4a4470; --thunder-accent:#ffd84d;
    --bg-a:var(--clear-a); --bg-b:var(--clear-b); --accent:var(--clear-accent);
  }
  *{box-sizing:border-box;}
  html,body{
    margin:0; padding:0; width:1280px; height:800px; overflow:hidden;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  }
  body{
    position:relative;
    display:flex; align-items:center; justify-content:center;
    background:linear-gradient(160deg,var(--bg-a),var(--bg-b) 60%);
    transition:background 0.8s ease;
  }
  .blob{
    position:absolute; border-radius:50%; filter:blur(70px); opacity:0.35; pointer-events:none;
  }
  .blob1{ width:520px; height:520px; background:var(--accent); top:-160px; left:-140px; transition:background 0.8s ease; }
  .blob2{ width:420px; height:420px; background:#ffffff; bottom:-180px; right:-120px; opacity:0.18; }

  .card{
    position:relative;
    width:860px;
    min-height:660px;
    background:rgba(255,255,255,0.14);
    border:1px solid rgba(255,255,255,0.35);
    border-radius:28px;
    box-shadow:0 30px 80px rgba(10,20,40,0.35), inset 0 1px 0 rgba(255,255,255,0.4);
    backdrop-filter:blur(22px) saturate(140%);
    -webkit-backdrop-filter:blur(22px) saturate(140%);
    padding:48px 56px 40px;
    color:#fff;
    display:flex;
    flex-direction:column;
  }

  /* ---- loading state ---- */
  #loading{
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:18px; flex:1; min-height:560px;
  }
  .spinner{
    width:46px; height:46px; border-radius:50%;
    border:3px solid rgba(255,255,255,0.3); border-top-color:#fff;
    animation:spin 0.9s linear infinite;
  }
  @keyframes spin{ to{ transform:rotate(360deg);} }
  #loading p{ margin:0; font-size:15px; letter-spacing:0.3px; color:rgba(255,255,255,0.85); }

  /* ---- error state ---- */
  #error{
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:14px; flex:1; min-height:560px; text-align:center; padding:0 40px;
  }
  #error .err-icon{
    width:64px; height:64px; border-radius:50%;
    background:rgba(255,255,255,0.18); display:flex; align-items:center; justify-content:center;
    font-size:30px;
  }
  #error h2{ margin:0; font-size:20px; font-weight:600; }
  #error p{ margin:0; font-size:14px; color:rgba(255,255,255,0.8); max-width:420px; line-height:1.5; }
  #retryBtn{
    margin-top:6px; padding:10px 22px; border-radius:999px; border:1px solid rgba(255,255,255,0.5);
    background:rgba(255,255,255,0.15); color:#fff; font-size:14px; font-weight:600;
    cursor:pointer; transition:background 0.2s ease;
  }
  #retryBtn:hover{ background:rgba(255,255,255,0.3); }

  /* ---- content ---- */
  #content{ display:flex; flex-direction:column; flex:1; }

  .card-header{ display:flex; align-items:flex-start; justify-content:space-between; }
  .location h1{
    margin:0 0 6px; font-size:32px; font-weight:700; letter-spacing:-0.3px;
    text-shadow:0 2px 12px rgba(0,0,0,0.15);
  }
  .location p{
    margin:0; font-size:15px; font-weight:500; letter-spacing:0.4px;
    color:rgba(255,255,255,0.82); text-transform:capitalize;
  }
  .icon-wrap{ width:104px; height:104px; flex-shrink:0; filter:drop-shadow(0 8px 18px rgba(0,0,0,0.2)); }
  .icon-wrap svg{ width:100%; height:100%; }

  .summary{
    display:flex; align-items:baseline; justify-content:space-between;
    margin-top:26px; padding-bottom:28px; border-bottom:1px solid rgba(255,255,255,0.25);
  }
  .condition{ font-size:19px; font-weight:600; letter-spacing:0.2px; }
  .minmax{ display:flex; align-items:baseline; gap:14px; }
  .minmax .max{ font-size:64px; font-weight:700; line-height:1; letter-spacing:-1.5px; }
  .minmax .sep{ font-size:28px; color:rgba(255,255,255,0.5); font-weight:300; }
  .minmax .min{ font-size:34px; font-weight:500; color:rgba(255,255,255,0.75); }
  .unit{ font-size:0.5em; font-weight:500; vertical-align:top; margin-left:2px; opacity:0.85; }

  .hourly{ margin-top:26px; flex:1; display:flex; flex-direction:column; }
  .hourly-title-row{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
  .hourly-title-row h2{ margin:0; font-size:14px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; color:rgba(255,255,255,0.85); }
  .hourly-title-row span{ font-size:12px; color:rgba(255,255,255,0.55); letter-spacing:0.4px; }

  .chart-wrap{ position:relative; width:100%; }
  #chart{ width:100%; height:190px; display:block; overflow:visible; }
  .hour-point{ fill:#fff; }
  .hour-point-halo{ fill:rgba(255,255,255,0.0); }
  .chart-line{ fill:none; stroke:#fff; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
  .chart-area{ opacity:0.28; }
  .point-label{ font-size:15px; font-weight:600; fill:#fff; text-anchor:middle; }
  .now-line{ stroke:rgba(255,255,255,0.75); stroke-width:1.5; stroke-dasharray:4 4; }
  .now-label{ font-size:11px; font-weight:700; fill:#fff; text-anchor:middle; letter-spacing:0.5px; }

  .hour-labels{ position:relative; height:20px; margin-top:6px; }
  .hour-labels span{
    position:absolute; transform:translateX(-50%); font-size:12px; color:rgba(255,255,255,0.62);
    font-weight:500; letter-spacing:0.3px;
  }

  @keyframes float{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-4px);} }
  @keyframes spinSlow{ to{ transform:rotate(360deg);} }
  .sun-core{ transform-origin:center; }
  .sun-rays{ transform-origin:center; animation:spinSlow 18s linear infinite; }
  .cloud-float{ animation:float 4s ease-in-out infinite; }
</style>
</head>
<body>
  <div class="blob blob1" id="blob1"></div>
  <div class="blob blob2"></div>

  <div class="card" id="card">
    <div id="loading">
      <div class="spinner"></div>
      <p>Loading weather…</p>
    </div>

    <div id="error" hidden>
      <div class="err-icon">⚠️</div>
      <h2>Unable to load weather data</h2>
      <p id="errorMessage">Something went wrong while fetching the forecast.</p>
      <button id="retryBtn">Try again</button>
    </div>

    <div id="content" hidden>
      <header class="card-header">
        <div class="location">
          <h1 id="locationName"></h1>
          <p id="dateLabel"></p>
        </div>
        <div class="icon-wrap" id="iconWrap"></div>
      </header>

      <section class="summary">
        <div class="condition" id="conditionLabel"></div>
        <div class="minmax">
          <span class="max" id="maxTemp"></span>
          <span class="sep">/</span>
          <span class="min" id="minTemp"></span>
        </div>
      </section>

      <section class="hourly">
        <div class="hourly-title-row">
          <h2>Hourly temperature</h2>
          <span>All times UTC</span>
        </div>
        <div class="chart-wrap">
          <svg id="chart" viewBox="0 0 1000 190" preserveAspectRatio="none"></svg>
        </div>
        <div class="hour-labels" id="hourLabels"></div>
      </section>
    </div>
  </div>

<script>
(function(){
  "use strict";

  var WEATHER_MAP = {
    0:{label:"Clear sky", icon:"sun", theme:"clear"},
    1:{label:"Mainly clear", icon:"sunCloud", theme:"clear"},
    2:{label:"Partly cloudy", icon:"sunCloud", theme:"cloudy"},
    3:{label:"Overcast", icon:"cloud", theme:"cloudy"},
    45:{label:"Fog", icon:"fog", theme:"fog"},
    48:{label:"Depositing rime fog", icon:"fog", theme:"fog"},
    51:{label:"Light drizzle", icon:"drizzle", theme:"rain"},
    53:{label:"Moderate drizzle", icon:"drizzle", theme:"rain"},
    55:{label:"Dense drizzle", icon:"drizzle", theme:"rain"},
    56:{label:"Light freezing drizzle", icon:"drizzle", theme:"rain"},
    57:{label:"Dense freezing drizzle", icon:"drizzle", theme:"rain"},
    61:{label:"Slight rain", icon:"rain", theme:"rain"},
    63:{label:"Moderate rain", icon:"rain", theme:"rain"},
    65:{label:"Heavy rain", icon:"rain", theme:"rain"},
    66:{label:"Light freezing rain", icon:"rain", theme:"rain"},
    67:{label:"Heavy freezing rain", icon:"rain", theme:"rain"},
    71:{label:"Slight snow fall", icon:"snow", theme:"snow"},
    73:{label:"Moderate snow fall", icon:"snow", theme:"snow"},
    75:{label:"Heavy snow fall", icon:"snow", theme:"snow"},
    77:{label:"Snow grains", icon:"snow", theme:"snow"},
    80:{label:"Slight rain showers", icon:"rain", theme:"rain"},
    81:{label:"Moderate rain showers", icon:"rain", theme:"rain"},
    82:{label:"Violent rain showers", icon:"rain", theme:"rain"},
    85:{label:"Slight snow showers", icon:"snow", theme:"snow"},
    86:{label:"Heavy snow showers", icon:"snow", theme:"snow"},
    95:{label:"Thunderstorm", icon:"thunder", theme:"thunder"},
    96:{label:"Thunderstorm with hail", icon:"thunder", theme:"thunder"},
    99:{label:"Thunderstorm with heavy hail", icon:"thunder", theme:"thunder"}
  };

  var THEMES = {
    clear:{a:"#4a9eea", b:"#8fd1f0", accent:"#ffb84d"},
    cloudy:{a:"#7c8ba1", b:"#aab6c6", accent:"#e8edf3"},
    rain:{a:"#3a5470", b:"#5f7d99", accent:"#9fd0ff"},
    snow:{a:"#7fa6c9", b:"#cfe6f7", accent:"#ffffff"},
    fog:{a:"#7c8791", b:"#a9b2ba", accent:"#e4e8eb"},
    thunder:{a:"#2c2a4a", b:"#4a4470", accent:"#ffd84d"}
  };

  function icon(name){
    switch(name){
      case "sun":
        return '<svg viewBox="0 0 100 100"><g class="sun-rays" stroke="#ffd77a" stroke-width="5" stroke-linecap="round">' +
          '<line x1="50" y1="4" x2="50" y2="16"/><line x1="50" y1="84" x2="50" y2="96"/>' +
          '<line x1="4" y1="50" x2="16" y2="50"/><line x1="84" y1="50" x2="96" y2="50"/>' +
          '<line x1="17" y1="17" x2="26" y2="26"/><line x1="74" y1="74" x2="83" y2="83"/>' +
          '<line x1="83" y1="17" x2="74" y2="26"/><line x1="26" y1="74" x2="17" y2="83"/></g>' +
          '<circle class="sun-core" cx="50" cy="50" r="24" fill="#ffcc55"/></svg>';
      case "sunCloud":
        return '<svg viewBox="0 0 100 100"><circle cx="38" cy="38" r="19" fill="#ffcc55"/>' +
          '<g class="cloud-float"><ellipse cx="55" cy="66" rx="30" ry="19" fill="#ffffff"/>' +
          '<ellipse cx="36" cy="70" rx="20" ry="15" fill="#f2f6fa"/></g></svg>';
      case "cloud":
        return '<svg viewBox="0 0 100 100"><g class="cloud-float">' +
          '<ellipse cx="52" cy="56" rx="32" ry="21" fill="#ffffff"/>' +
          '<ellipse cx="30" cy="62" rx="21" ry="16" fill="#e9eef3"/></g></svg>';
      case "fog":
        return '<svg viewBox="0 0 100 100"><g stroke="#eef2f5" stroke-width="6" stroke-linecap="round">' +
          '<line x1="14" y1="38" x2="86" y2="38"/><line x1="22" y1="52" x2="86" y2="52"/>' +
          '<line x1="14" y1="66" x2="78" y2="66"/></g></svg>';
      case "drizzle":
      case "rain":
        return '<svg viewBox="0 0 100 100"><g class="cloud-float">' +
          '<ellipse cx="52" cy="42" rx="30" ry="19" fill="#e7edf3"/>' +
          '<ellipse cx="32" cy="48" rx="19" ry="14" fill="#d7e1ea"/></g>' +
          '<g stroke="#9fd0ff" stroke-width="5" stroke-linecap="round">' +
          '<line x1="34" y1="72" x2="28" y2="88"/><line x1="52" y1="72" x2="46" y2="88"/>' +
          '<line x1="70" y1="72" x2="64" y2="88"/></g></svg>';
      case "snow":
        return '<svg viewBox="0 0 100 100"><g class="cloud-float">' +
          '<ellipse cx="52" cy="40" rx="30" ry="19" fill="#eef4f9"/>' +
          '<ellipse cx="32" cy="46" rx="19" ry="14" fill="#dde9f2"/></g>' +
          '<g fill="#ffffff"><circle cx="32" cy="78" r="4"/><circle cx="52" cy="86" r="4"/>' +
          '<circle cx="70" cy="78" r="4"/></g></svg>';
      case "thunder":
        return '<svg viewBox="0 0 100 100"><g>' +
          '<ellipse cx="50" cy="38" rx="30" ry="19" fill="#c9cbe0"/>' +
          '<ellipse cx="30" cy="44" rx="19" ry="14" fill="#b7b9d4"/></g>' +
          '<polygon points="54,58 38,82 50,82 44,96 66,68 52,68" fill="#ffd84d"/></svg>';
      default:
        return '<svg viewBox="0 0 100 100"><circle cx="50" cy="50" r="24" fill="#ffcc55"/></svg>';
    }
  }

  function pad2(n){ return n < 10 ? "0" + n : "" + n; }

  function todayUTC(){
    var d = new Date();
    return d.getUTCFullYear() + "-" + pad2(d.getUTCMonth()+1) + "-" + pad2(d.getUTCDate());
  }

  function parseParams(){
    var qp = new URLSearchParams(window.location.search);
    var lat = parseFloat(qp.get("lat"));
    var lon = parseFloat(qp.get("lon"));
    var name = qp.get("name");
    var date = qp.get("date");

    if (isNaN(lat)) lat = 52.52;
    if (isNaN(lon)) lon = 13.405;
    if (!name || !name.trim()) name = "Berlin";
    if (!date || !/^\d{4}-\d{2}-\d{2}$/.test(date)) date = todayUTC();

    return { lat: lat, lon: lon, name: name, date: date };
  }

  function applyTheme(theme){
    var t = THEMES[theme] || THEMES.clear;
    var root = document.documentElement.style;
    root.setProperty("--bg-a", t.a);
    root.setProperty("--bg-b", t.b);
    root.setProperty("--accent", t.accent);
  }

  function formatDateLabel(dateStr){
    var d = new Date(dateStr + "T00:00:00Z");
    return d.toLocaleDateString("en-US", { weekday:"long", year:"numeric", month:"long", day:"numeric", timeZone:"UTC" });
  }

  function fmtHour(timeStr){
    var hh = timeStr.split("T")[1].split(":")[0];
    return hh + ":00";
  }

  function smoothPath(points){
    if (points.length === 0) return "";
    if (points.length < 3){
      return points.map(function(p,i){ return (i===0?"M":"L") + p.x + "," + p.y; }).join(" ");
    }
    var d = "M " + points[0].x + "," + points[0].y;
    for (var i = 0; i < points.length - 1; i++){
      var p0 = points[i-1] || points[i];
      var p1 = points[i];
      var p2 = points[i+1];
      var p3 = points[i+2] || p2;
      var c1x = p1.x + (p2.x - p0.x) / 6;
      var c1y = p1.y + (p2.y - p0.y) / 6;
      var c2x = p2.x - (p3.x - p1.x) / 6;
      var c2y = p2.y - (p3.y - p1.y) / 6;
      d += " C " + c1x + "," + c1y + " " + c2x + "," + c2y + " " + p2.x + "," + p2.y;
    }
    return d;
  }

  function svgEl(tag, attrs){
    var el = document.createElementNS("http://www.w3.org/2000/svg", tag);
    for (var k in attrs) el.setAttribute(k, attrs[k]);
    return el;
  }

  function renderChart(times, temps, isToday){
    var svg = document.getElementById("chart");
    svg.innerHTML = "";
    var W = 1000, H = 190, padTop = 34, padBottom = 26, padSide = 10;
    var n = temps.length;
    if (n === 0) return;

    var tMin = Math.min.apply(null, temps);
    var tMax = Math.max.apply(null, temps);
    var range = (tMax - tMin) || 1;
    var usableH = H - padTop - padBottom;

    function xFor(i){ return n === 1 ? W/2 : padSide + (i/(n-1)) * (W - padSide*2); }
    function yFor(t){ return H - padBottom - ((t - tMin)/range) * usableH; }

    var points = temps.map(function(t,i){ return { x: xFor(i), y: yFor(t) }; });

    var defs = svgEl("defs", {});
    var grad = svgEl("linearGradient", {id:"areaGrad", x1:"0", y1:"0", x2:"0", y2:"1"});
    var stop1 = svgEl("stop", {offset:"0%", "stop-color":"#ffffff", "stop-opacity":"0.55"});
    var stop2 = svgEl("stop", {offset:"100%", "stop-color":"#ffffff", "stop-opacity":"0"});
    grad.appendChild(stop1); grad.appendChild(stop2); defs.appendChild(grad);
    svg.appendChild(defs);

    var linePath = smoothPath(points);
    var areaPath = linePath + " L " + points[n-1].x + "," + H + " L " + points[0].x + "," + H + " Z";

    svg.appendChild(svgEl("path", { d: areaPath, class:"chart-area", fill:"url(#areaGrad)" }));
    svg.appendChild(svgEl("path", { d: linePath, class:"chart-line" }));

    if (isToday){
      var nowHour = new Date().getUTCHours();
      var idx = -1;
      for (var i = 0; i < times.length; i++){
        if (parseInt(times[i].split("T")[1].split(":")[0], 10) === nowHour){ idx = i; break; }
      }
      if (idx >= 0){
        var nx = xFor(idx);
        svg.appendChild(svgEl("line", { x1:nx, y1:6, x2:nx, y2:H-padBottom, class:"now-line" }));
        var nl = svgEl("text", { x:nx, y:16, class:"now-label" });
        nl.textContent = "NOW";
        svg.appendChild(nl);
      }
    }

    points.forEach(function(p, i){
      var showLabel = (i % 3 === 0) || i === n-1;
      if (showLabel){
        var lbl = svgEl("text", { x:p.x, y: Math.max(14, p.y - 14), class:"point-label" });
        lbl.textContent = Math.round(temps[i]) + "°";
        svg.appendChild(lbl);
      }
      var dot = svgEl("circle", { cx:p.x, cy:p.y, r: showLabel ? 5 : 3.5, class:"hour-point" });
      var title = svgEl("title", {});
      title.textContent = fmtHour(times[i]) + " UTC — " + Math.round(temps[i]) + "°C";
      dot.appendChild(title);
      svg.appendChild(dot);
    });

    var labelsWrap = document.getElementById("hourLabels");
    labelsWrap.innerHTML = "";
    times.forEach(function(t, i){
      if (i % 3 !== 0 && i !== n-1) return;
      var pctX = n === 1 ? 50 : ((padSide + (i/(n-1)) * (W - padSide*2)) / W) * 100;
      var span = document.createElement("span");
      span.style.left = pctX + "%";
      span.textContent = fmtHour(t);
      labelsWrap.appendChild(span);
    });
  }

  function showError(message){
    document.getElementById("loading").hidden = true;
    document.getElementById("content").hidden = true;
    document.getElementById("error").hidden = false;
    document.getElementById("errorMessage").textContent = message;
  }

  function showContent(){
    document.getElementById("loading").hidden = true;
    document.getElementById("error").hidden = true;
    document.getElementById("content").hidden = false;
  }

  function load(){
    document.getElementById("loading").hidden = false;
    document.getElementById("error").hidden = true;
    document.getElementById("content").hidden = true;

    var params = parseParams();
    var isPast = params.date < todayUTC();
    var endpoint = isPast ? "/api/om/archive" : "/api/om/forecast";

    var qs = new URLSearchParams({
      latitude: params.lat,
      longitude: params.lon,
      daily: "temperature_2m_max,temperature_2m_min,weather_code",
      hourly: "temperature_2m",
      timezone: "UTC",
      temperature_unit: "celsius",
      start_date: params.date,
      end_date: params.date
    });

    var url = endpoint + "?" + qs.toString();

    fetch(url).then(function(res){
      return res.json().catch(function(){ throw new Error("The server returned an unreadable response."); })
        .then(function(data){
          if (!res.ok){
            throw new Error((data && data.reason) || ("Request failed with status " + res.status + "."));
          }
          return data;
        });
    }).then(function(data){
      if (data && data.error){
        throw new Error(data.reason || "The weather service returned an error.");
      }
      if (!data || !data.daily || !Array.isArray(data.daily.temperature_2m_max) || data.daily.temperature_2m_max.length === 0){
        throw new Error("No weather data is available for this location and date.");
      }

      var max = data.daily.temperature_2m_max[0];
      var min = data.daily.temperature_2m_min[0];
      var code = data.daily.weather_code ? data.daily.weather_code[0] : null;
      var info = WEATHER_MAP[code] || { label: "Unknown", icon: "cloud", theme: "cloudy" };

      var times = (data.hourly && data.hourly.time) || [];
      var temps = (data.hourly && data.hourly.temperature_2m) || [];

      applyTheme(info.theme);

      document.title = params.name + " Weather";
      document.getElementById("locationName").textContent = params.name;
      document.getElementById("dateLabel").textContent = formatDateLabel(params.date);
      document.getElementById("iconWrap").innerHTML = icon(info.icon);
      document.getElementById("conditionLabel").textContent = info.label;
      document.getElementById("maxTemp").innerHTML = Math.round(max) + '<span class="unit">°C</span>';
      document.getElementById("minTemp").innerHTML = Math.round(min) + '°C';

      if (temps.length > 0){
        renderChart(times, temps, params.date === todayUTC());
      } else {
        document.getElementById("chart").innerHTML = "";
        document.getElementById("hourLabels").innerHTML = "";
      }

      showContent();
    }).catch(function(err){
      showError(err && err.message ? err.message : "Unable to load weather data. Please try again.");
    });
  }

  document.getElementById("retryBtn").addEventListener("click", load);
  load();
})();
</script>
</body>
</html>

L1 — cheap deterministic descriptors

bytes total20,756html / css / js1,535 / 5,905 / 13,316
dom nodes37dom depth7
css rules55js presentyes
brightness128.6contrast13.8
colorfulness26.0whitespace67.8%

This slot's telemetry

prompt tokens4completion tokens28,775
total tokens28,779wall231.8 s
costrequest id
config.json576 B
{
  "N": 2,
  "auth": {
    "credential_ref": "WCB_NONE",
    "method": "oauth-login"
  },
  "billing": "plan",
  "config_id": "claude-sonnet-5-eff-xhigh--cli--claude-code--dev",
  "effort": "xhigh",
  "family": "claude",
  "m": {
    "min": 2,
    "q": 2
  },
  "model_id": "claude-sonnet-5",
  "protocol": "cli",
  "served_model": "claude-sonnet-5",
  "telemetry": {
    "completion_tokens": 92203,
    "cost_usd": null,
    "prompt_tokens": 14,
    "total_tokens": 92217,
    "wall_ms": 769415
  },
  "transport": "claude-code-cli-headless",
  "vendor_sanction_ref": null
}
send-log2.5 KB
{
  "N": 2,
  "batch_id": "2026-07-17--dev-cc-sonnet5",
  "config_id": "claude-sonnet-5-eff-xhigh--cli--claude-code--dev",
  "positions": [
    {
      "attempts": [
        {
          "attempt_index": 0,
          "backoff_ms": null,
          "charged": true,
          "ended_at": "2026-07-17T14:50:37.740504+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-07-17T14:49:14.130037+00:00"
        }
      ],
      "block_index": 0,
      "model_reaching_attempt_index": 0,
      "slot_index": 0,
      "terminal_state": "valid",
      "variant": "P-min"
    },
    {
      "attempts": [
        {
          "attempt_index": 0,
          "backoff_ms": null,
          "charged": true,
          "ended_at": "2026-07-17T14:54:33.144544+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-07-17T14:50:41.406677+00:00"
        }
      ],
      "block_index": 0,
      "model_reaching_attempt_index": 0,
      "slot_index": 0,
      "terminal_state": "valid",
      "variant": "P-q"
    },
    {
      "attempts": [
        {
          "attempt_index": 0,
          "backoff_ms": null,
          "charged": true,
          "ended_at": "2026-07-17T15:00:46.343207+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-07-17T14:54:36.509527+00:00"
        }
      ],
      "block_index": 1,
      "model_reaching_attempt_index": 0,
      "slot_index": 1,
      "terminal_state": "valid",
      "variant": "P-q"
    },
    {
      "attempts": [
        {
          "attempt_index": 0,
          "backoff_ms": null,
          "charged": true,
          "ended_at": "2026-07-17T15:02:14.342728+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-07-17T15:00:50.165393+00:00"
        }
      ],
      "block_index": 1,
      "model_reaching_attempt_index": 0,
      "slot_index": 1,
      "terminal_state": "valid",
      "variant": "P-min"
    }
  ],
  "retry_policy": {
    "max_unreachable_retries": 5,
    "rate_limit_backoff": {
      "max_attempts": 4,
      "max_total_ms": 60000
    }
  }
}