kimi-k3 @ high · cursor

cursorhigh
config
kimi-k3-eff-high--cli--cursor--dev
batch
2026-07-19--unified
transport
cursor-agent-cli-isolated-home
protocol
cli · plan
served model
kimi-k3-high
采集于
2026年7月18日 11:54 · N=2
variant
live
slot 0 · P-q · sandboxed iframe
kimi-k3 @high · cursor P-q slot 0 截图

截图是 similarity 通道测量时的原始像素。运行 live 会在 sandboxed iframe 中重新执行原始输出;渲染结果取决于你的浏览器和字体,不保证与测量像素一致。

similarity 邻居本 session 没有 similarity 数据 —— 这个 batch 没有计算 pairs。

Fidelity —— 卡片展示的数据对不对?

  • namematch
  • conditionmatch
  • datematch
  • max tempambiguous展示值:17max-equals-min
  • min tempambiguous展示值:17max-equals-min
  • hourlyambiguouscoverage · 0 命中 · 0 不符 · 24 未展示
  • request sidematch0 处违规

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

源码 —— 原始模型输出,一字节未改

下载 card.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Weather Card</title>
<style>
  :root {
    --ink: #0f172a;
    --ink-soft: rgba(15, 23, 42, 0.62);
    --card: rgba(255, 255, 255, 0.72);
    --card-border: rgba(255, 255, 255, 0.65);
    --accent: #2563eb;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  html, body { height: 100%; }
  body {
    font-family: "Avenir Next", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, Helvetica, Arial, sans-serif;
    color: var(--ink);
    background: #0b1020;
    overflow: hidden;
    -webkit-font-smoothing: antialiased;
  }

  .scene {
    position: fixed;
    inset: 0;
    transition: background 1.2s ease;
    background: linear-gradient(160deg, #1e3a8a 0%, #3b82f6 45%, #93c5fd 100%);
  }
  .scene::before, .scene::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    opacity: 0.55;
    animation: drift 18s ease-in-out infinite alternate;
  }
  .scene::before {
    width: 560px; height: 560px;
    top: -160px; right: -120px;
    background: rgba(255, 255, 255, 0.35);
  }
  .scene::after {
    width: 640px; height: 640px;
    bottom: -240px; left: -160px;
    background: rgba(15, 23, 42, 0.35);
    animation-delay: -9s;
  }
  @keyframes drift {
    from { transform: translate3d(0, 0, 0) scale(1); }
    to   { transform: translate3d(-40px, 30px, 0) scale(1.08); }
  }

  .stage {
    position: relative;
    z-index: 1;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
  }

  .card {
    width: 880px;
    max-width: 100%;
    max-height: 720px;
    background: var(--card);
    border: 1px solid var(--card-border);
    border-radius: 28px;
    box-shadow: 0 30px 80px rgba(2, 6, 23, 0.45), inset 0 1px 0 rgba(255,255,255,0.7);
    backdrop-filter: blur(22px) saturate(1.3);
    -webkit-backdrop-filter: blur(22px) saturate(1.3);
    padding: 40px 44px 32px;
    display: flex;
    flex-direction: column;
    gap: 26px;
    animation: rise 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  }
  @keyframes rise {
    from { opacity: 0; transform: translateY(24px) scale(0.985); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
  }

  .card-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
  }
  .place {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -0.02em;
  }
  .place svg { flex: none; }
  .date {
    font-size: 15px;
    font-weight: 600;
    color: var(--ink-soft);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .hero {
    display: flex;
    align-items: center;
    gap: 36px;
  }
  .hero-icon {
    width: 132px;
    height: 132px;
    flex: none;
    display: grid;
    place-items: center;
    border-radius: 32px;
    background: linear-gradient(150deg, rgba(255,255,255,0.85), rgba(255,255,255,0.35));
    box-shadow: 0 12px 30px rgba(2, 6, 23, 0.18), inset 0 1px 0 rgba(255,255,255,0.9);
  }
  .hero-icon svg { width: 88px; height: 88px; }
  .hero-body { flex: 1; min-width: 0; }
  .condition {
    font-size: 22px;
    font-weight: 650;
    color: var(--ink);
    margin-bottom: 10px;
  }
  .temps {
    display: flex;
    align-items: flex-end;
    gap: 28px;
  }
  .temp-block .label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ink-soft);
    margin-bottom: 2px;
  }
  .temp-block .value {
    font-size: 64px;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1;
    font-variant-numeric: tabular-nums;
  }
  .temp-block .value .deg { font-size: 34px; font-weight: 700; vertical-align: 18px; }
  .temp-block.max .value { color: #b45309; }
  .temp-block.min .value { color: #1d4ed8; }
  .divider {
    width: 1px;
    align-self: stretch;
    background: linear-gradient(to bottom, transparent, rgba(15,23,42,0.18), transparent);
  }

  .section-title {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--ink-soft);
    margin-bottom: 10px;
  }

  .chart-wrap {
    background: rgba(255, 255, 255, 0.45);
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 18px;
    padding: 16px 14px 8px;
  }
  .chart-wrap svg { display: block; width: 100%; height: auto; }

  .hours {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 8px;
  }
  .hour {
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 12px;
    padding: 8px 4px;
    text-align: center;
    transition: transform 0.15s ease, background 0.15s ease;
  }
  .hour:hover { transform: translateY(-2px); background: rgba(255,255,255,0.8); }
  .hour .h {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--ink-soft);
  }
  .hour .t {
    font-size: 15px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    margin-top: 2px;
  }
  .hour.now {
    background: var(--accent);
    border-color: var(--accent);
  }
  .hour.now .h, .hour.now .t { color: #fff; }

  .error {
    display: none;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    text-align: center;
    padding: 60px 20px;
  }
  .error.visible { display: flex; }
  .error .badge {
    width: 72px; height: 72px;
    border-radius: 50%;
    display: grid; place-items: center;
    background: rgba(220, 38, 38, 0.12);
    color: #b91c1c;
  }
  .error h1 { font-size: 24px; font-weight: 700; }
  .error p { font-size: 15px; color: var(--ink-soft); max-width: 420px; line-height: 1.5; }

  .loading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 80px 0;
    color: var(--ink-soft);
    font-size: 15px;
    font-weight: 600;
  }
  .spinner {
    width: 22px; height: 22px;
    border: 3px solid rgba(15,23,42,0.15);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
  }
  @keyframes spin { to { transform: rotate(360deg); } }

  .hidden { display: none !important; }
</style>
</head>
<body>
  <div class="scene" id="scene"></div>
  <div class="stage">
    <main class="card">
      <div class="loading" id="loading">
        <div class="spinner"></div>
        <span>Loading weather&hellip;</span>
      </div>

      <div id="content" class="hidden" style="display:flex;flex-direction:column;gap:26px;">
        <div class="card-head">
          <div class="place">
            <svg width="26" height="26" viewBox="0 0 24 24" fill="none" stroke="#2563eb" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
              <path d="M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 1 1 16 0Z"/><circle cx="12" cy="10" r="3"/>
            </svg>
            <span id="placeName"></span>
          </div>
          <div class="date" id="dateLabel"></div>
        </div>

        <div class="hero">
          <div class="hero-icon" id="heroIcon"></div>
          <div class="hero-body">
            <div class="condition" id="condition"></div>
            <div class="temps">
              <div class="temp-block max">
                <div class="label">High</div>
                <div class="value" id="tempMax"></div>
              </div>
              <div class="divider"></div>
              <div class="temp-block min">
                <div class="label">Low</div>
                <div class="value" id="tempMin"></div>
              </div>
            </div>
          </div>
        </div>

        <div>
          <div class="section-title">Hourly temperature</div>
          <div class="chart-wrap"><svg id="chart" viewBox="0 0 780 170" preserveAspectRatio="xMidYMid meet"></svg></div>
        </div>

        <div class="hours" id="hours"></div>
      </div>

      <div class="error" id="error">
        <div class="badge">
          <svg width="34" height="34" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
            <path d="M12 9v4"/><path d="M12 17h.01"/><path d="M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z"/>
          </svg>
        </div>
        <h1>Weather data could not be loaded</h1>
        <p id="errorDetail">The forecast for this location and date is unavailable right now. Please try again later.</p>
      </div>
    </main>
  </div>

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

  var params = new URLSearchParams(window.location.search);
  var lat = parseFloat(params.get("lat"));
  var lon = parseFloat(params.get("lon"));
  if (!isFinite(lat)) lat = 52.52;
  if (!isFinite(lon)) lon = 13.405;
  var name = params.get("name") || "Berlin";
  var todayUTC = new Date().toISOString().slice(0, 10);
  var date = /^\d{4}-\d{2}-\d{2}$/.test(params.get("date") || "") ? params.get("date") : todayUTC;

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

  var THEMES = {
    clear:  "linear-gradient(160deg, #0ea5e9 0%, #38bdf8 45%, #fde68a 100%)",
    partly: "linear-gradient(160deg, #2563eb 0%, #60a5fa 50%, #cbd5e1 100%)",
    cloudy: "linear-gradient(160deg, #334155 0%, #64748b 55%, #94a3b8 100%)",
    fog:    "linear-gradient(160deg, #475569 0%, #94a3b8 55%, #cbd5e1 100%)",
    rain:   "linear-gradient(160deg, #1e3a8a 0%, #3b82f6 50%, #64748b 100%)",
    snow:   "linear-gradient(160deg, #7dd3fc 0%, #bae6fd 50%, #f1f5f9 100%)",
    storm:  "linear-gradient(160deg, #111827 0%, #4c1d95 55%, #7c3aed 100%)"
  };

  function icon(kind) {
    var sun = '<circle cx="12" cy="12" r="4.2" fill="#f59e0b"/>' +
      '<g stroke="#f59e0b" stroke-width="2" stroke-linecap="round">' +
      '<line x1="12" y1="2.5" x2="12" y2="4.5"/><line x1="12" y1="19.5" x2="12" y2="21.5"/>' +
      '<line x1="2.5" y1="12" x2="4.5" y2="12"/><line x1="19.5" y1="12" x2="21.5" y2="12"/>' +
      '<line x1="4.9" y1="4.9" x2="6.3" y2="6.3"/><line x1="17.7" y1="17.7" x2="19.1" y2="19.1"/>' +
      '<line x1="4.9" y1="19.1" x2="6.3" y2="17.7"/><line x1="17.7" y1="6.3" x2="19.1" y2="4.9"/></g>';
    var cloud = function (fill, x, y, s) {
      return '<g transform="translate(' + x + ' ' + y + ') scale(' + s + ')" fill="' + fill + '">' +
        '<path d="M6.5 18a4.5 4.5 0 0 1-.4-8.98 6 6 0 0 1 11.6-1.3A4.2 4.2 0 0 1 17.5 18Z"/></g>';
    };
    var drops = '<g stroke="#3b82f6" stroke-width="2" stroke-linecap="round">' +
      '<line x1="8" y1="17" x2="7" y2="20"/><line x1="12.5" y1="17" x2="11.5" y2="20"/><line x1="17" y1="17" x2="16" y2="20"/></g>';
    var flakes = '<g stroke="#38bdf8" stroke-width="1.8" stroke-linecap="round">' +
      '<path d="M8 17.5v3M6.8 18.2l2.4 1.6M9.2 18.2l-2.4 1.6"/>' +
      '<path d="M13 17.5v3M11.8 18.2l2.4 1.6M14.2 18.2l-2.4 1.6"/>' +
      '<path d="M18 17.5v3M16.8 18.2l2.4 1.6M19.2 18.2l-2.4 1.6"/></g>';
    var bolt = '<path d="M13 15 9.5 21l1.8-4H8.5L12 11h4l-2.2 4Z" fill="#facc15" stroke="#eab308" stroke-width="0.8" stroke-linejoin="round"/>';
    var fogLines = '<g stroke="#94a3b8" stroke-width="2" stroke-linecap="round">' +
      '<line x1="5" y1="16" x2="19" y2="16"/><line x1="7" y1="19" x2="17" y2="19"/><line x1="9" y1="22" x2="15" y2="22"/></g>';

    var body;
    switch (kind) {
      case "clear":  body = sun; break;
      case "partly": body = '<g transform="translate(-2 -2) scale(0.85)">' + sun + '</g>' + cloud("#e2e8f0", 7, 6, 0.95) + cloud("#f8fafc", 7.8, 6.6, 0.8); break;
      case "cloudy": body = cloud("#cbd5e1", 1, 3, 1.05) + cloud("#f1f5f9", 4, 1.5, 0.95); break;
      case "fog":    body = cloud("#e2e8f0", 3, 0, 0.95) + fogLines; break;
      case "rain":   body = cloud("#cbd5e1", 3, 0, 0.95) + drops; break;
      case "snow":   body = cloud("#e2e8f0", 3, 0, 0.95) + flakes; break;
      case "storm":  body = cloud("#94a3b8", 3, -1, 0.95) + bolt; break;
      default:       body = cloud("#e2e8f0", 3, 2, 1);
    }
    return '<svg viewBox="0 0 24 24" width="88" height="88">' + body + '</svg>';
  }

  function fmtTemp(v) {
    return Math.round(v) + '<span class="deg">&deg;C</span>';
  }

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

  function showError(msg) {
    document.getElementById("loading").classList.add("hidden");
    document.getElementById("content").classList.add("hidden");
    if (msg) document.getElementById("errorDetail").textContent = msg;
    document.getElementById("error").classList.add("visible");
  }

  function renderChart(hours, temps) {
    var svg = document.getElementById("chart");
    var W = 780, H = 170, padL = 34, padR = 14, padT = 22, padB = 30;
    var iw = W - padL - padR, ih = H - padT - padB;
    var min = Math.min.apply(null, temps), max = Math.max.apply(null, temps);
    if (max - min < 1) { max += 0.5; min -= 0.5; }
    var x = function (i) { return padL + (i / (temps.length - 1)) * iw; };
    var y = function (t) { return padT + (1 - (t - min) / (max - min)) * ih; };

    var parts = [];
    parts.push('<defs><linearGradient id="area" x1="0" y1="0" x2="0" y2="1">' +
      '<stop offset="0" stop-color="#2563eb" stop-opacity="0.35"/>' +
      '<stop offset="1" stop-color="#2563eb" stop-opacity="0.02"/></linearGradient></defs>');

    [min, (min + max) / 2, max].forEach(function (g) {
      var gy = y(g);
      parts.push('<line x1="' + padL + '" y1="' + gy + '" x2="' + (W - padR) + '" y2="' + gy + '" stroke="rgba(15,23,42,0.1)" stroke-dasharray="3 5"/>');
      parts.push('<text x="' + (padL - 8) + '" y="' + (gy + 4) + '" text-anchor="end" font-size="11" font-weight="600" fill="rgba(15,23,42,0.5)">' + Math.round(g) + '&deg;</text>');
    });

    var d = "M" + x(0) + " " + y(temps[0]);
    for (var i = 1; i < temps.length; i++) {
      var x0 = x(i - 1), y0 = y(temps[i - 1]), x1 = x(i), y1 = y(temps[i]);
      var cx = (x0 + x1) / 2;
      d += " C" + cx + " " + y0 + " " + cx + " " + y1 + " " + x1 + " " + y1;
    }
    parts.push('<path d="' + d + ' L' + x(temps.length - 1) + ' ' + (H - padB) + ' L' + x(0) + ' ' + (H - padB) + ' Z" fill="url(#area)"/>');
    parts.push('<path d="' + d + '" fill="none" stroke="#2563eb" stroke-width="2.5" stroke-linecap="round"/>');

    for (var h = 0; h < temps.length; h += 3) {
      parts.push('<text x="' + x(h) + '" y="' + (H - padB + 18) + '" text-anchor="middle" font-size="11" font-weight="600" fill="rgba(15,23,42,0.5)">' + String(hours[h]).padStart(2, "0") + ":00</text>");
    }

    var iMax = temps.indexOf(max), iMin = temps.indexOf(min);
    [[iMax, "#b45309", -10], [iMin, "#1d4ed8", 20]].forEach(function (m) {
      var i = m[0];
      parts.push('<circle cx="' + x(i) + '" cy="' + y(temps[i]) + '" r="4" fill="#fff" stroke="' + m[1] + '" stroke-width="2.5"/>');
      parts.push('<text x="' + x(i) + '" y="' + (y(temps[i]) + m[2]) + '" text-anchor="middle" font-size="12" font-weight="700" fill="' + m[1] + '">' + Math.round(temps[i]) + '&deg;</text>');
    });

    svg.innerHTML = parts.join("");
  }

  function renderHours(hours, temps) {
    var wrap = document.getElementById("hours");
    var nowHour = date === todayUTC ? new Date().getUTCHours() : -1;
    var html = "";
    for (var i = 0; i < temps.length; i++) {
      html += '<div class="hour' + (hours[i] === nowHour ? " now" : "") + '">' +
        '<div class="h">' + String(hours[i]).padStart(2, "0") + ":00</div>" +
        '<div class="t">' + Math.round(temps[i]) + "&deg;</div></div>";
    }
    wrap.innerHTML = html;
  }

  function render(data) {
    if (!data || !data.daily || !data.daily.time || !data.daily.time.length ||
        !data.hourly || !data.hourly.time || !data.hourly.time.length) {
      showError("No weather data is available for " + name + " on " + fmtDate(date) + ".");
      return;
    }

    var tMax = data.daily.temperature_2m_max[0];
    var tMin = data.daily.temperature_2m_min[0];
    var code = data.daily.weather_code[0];
    if (tMax == null || tMin == null || code == null) {
      showError("No weather data is available for " + name + " on " + fmtDate(date) + ".");
      return;
    }

    var hours = [], temps = [];
    for (var i = 0; i < data.hourly.time.length; i++) {
      var t = data.hourly.time[i];
      if (t.slice(0, 10) === date && data.hourly.temperature_2m[i] != null) {
        hours.push(parseInt(t.slice(11, 13), 10));
        temps.push(data.hourly.temperature_2m[i]);
      }
    }
    if (!temps.length) {
      showError("Hourly temperatures are unavailable for " + name + " on " + fmtDate(date) + ".");
      return;
    }

    var info = WMO[code] || ["Unknown conditions", "cloudy"];
    document.getElementById("scene").style.background = THEMES[info[1]] || THEMES.cloudy;
    document.getElementById("placeName").textContent = name;
    document.getElementById("dateLabel").textContent = fmtDate(date);
    document.getElementById("heroIcon").innerHTML = icon(info[1]);
    document.getElementById("condition").textContent = info[0];
    document.getElementById("tempMax").innerHTML = fmtTemp(tMax);
    document.getElementById("tempMin").innerHTML = fmtTemp(tMin);
    renderChart(hours, temps);
    renderHours(hours, temps);

    document.getElementById("loading").classList.add("hidden");
    document.getElementById("content").classList.remove("hidden");
  }

  var endpoint = date < todayUTC ? "/api/om/archive" : "/api/om/forecast";
  var qs = new URLSearchParams({
    latitude: String(lat),
    longitude: String(lon),
    daily: "temperature_2m_max,temperature_2m_min,weather_code",
    hourly: "temperature_2m",
    timezone: "UTC",
    temperature_unit: "celsius",
    start_date: date,
    end_date: date
  });

  fetch(endpoint + "?" + qs.toString())
    .then(function (res) {
      if (!res.ok) throw new Error("The weather service responded with status " + res.status + ".");
      return res.json();
    })
    .then(function (data) {
      if (data && data.error) throw new Error(typeof data.error === "string" ? data.error : "The weather service reported an error.");
      render(data);
    })
    .catch(function (err) {
      showError("Weather data could not be loaded. " + (err && err.message ? err.message : ""));
    });
})();
</script>
</body>
</html>

L1 —— 廉价的确定性描述量

bytes 总计19,458html / css / js2,506 / 6,117 / 10,835
dom 节点47dom 深度10
css 规则52含 js
brightness167.1contrast59.9
colorfulness61.0留白47.7%

该 slot 的 telemetry

prompt tokens17,135completion tokens14,781
total tokens31,916wall117.4 s
costrequest id
config.json558 B
{
  "N": 2,
  "auth": {
    "credential_ref": "WCB_NONE",
    "method": "oauth-login"
  },
  "billing": "plan",
  "config_id": "kimi-k3-eff-high--cli--cursor--dev",
  "effort": "high",
  "family": "kimi",
  "m": {
    "min": 2,
    "q": 2
  },
  "model_id": "kimi-k3",
  "protocol": "cli",
  "served_model": "kimi-k3-high",
  "telemetry": {
    "completion_tokens": 48726,
    "cost_usd": null,
    "prompt_tokens": 63205,
    "total_tokens": 111931,
    "wall_ms": 393349
  },
  "transport": "cursor-agent-cli-isolated-home",
  "vendor_sanction_ref": null
}
send-log2.5 KB
{
  "N": 2,
  "batch_id": "2026-08-13--cursor-s2",
  "config_id": "kimi-k3-eff-high--cli--cursor--dev",
  "positions": [
    {
      "attempts": [
        {
          "attempt_index": 0,
          "backoff_ms": null,
          "charged": true,
          "ended_at": "2026-08-12T17:27:17.088012+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T17:25:44.000180+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-08-12T17:29:17.927330+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T17:27:20.529047+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-08-12T17:31:21.427297+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T17:29:22.341801+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-08-12T17:32:28.731545+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T17:31:24.949356+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
    }
  }
}