{
  "$schema": "../../schema/run.schema.json",
  "run_id": "tailwindcss--claude-opus-5--v2-b--2026-09-03",
  "supersedes": null,
  "replicate_of": "tailwindcss--claude-opus-5--v2-a--2026-09-03",
  "library": {
    "name": "tailwindcss",
    "ecosystem": "npm",
    "latest_version_at_test": "4.3.3",
    "latest_version_verified_on": "2026-09-03"
  },
  "model": {
    "id": "claude-opus-5",
    "label": "Claude Opus 5",
    "vendor": "Anthropic",
    "invoked_as": "Agent tool, model alias \"opus\"",
    "self_reported_cutoff": "2026-05",
    "cutoff_basis": "Self-reported, accepting the environment value: \"My stated cutoff is May 2026. I'd treat that as an upper bound rather than a description of what I actually know here - my detailed Tailwind knowledge degrades noticeably after mid-2025.\" A density caveat, not a different date; the twin arm stated the same 2026-05. On this battery the cutoff self-report did NOT split between the blind draws, unlike zod/v4.",
    "believed_latest_version": "4.1.x",
    "believed_latest_quote": "\"Know of: Tailwind CSS v4.x, on the 4.1 line. I have a weak sense that the 4.x series continued past that, but I can't attach content to specific numbers. Can actually describe: v4.1, roughly April 2025.\"",
    "knowledge_stops_at_version": "4.1.0",
    "knowledge_stops_on": "2025-04-01",
    "knowledge_gap_starts_at_version": "4.2.0",
    "knowledge_gap_starts_on": "2026-02-18",
    "cutoff_lag_months": 13
  },
  "test": {
    "date": "2026-09-03",
    "battery": "tailwindcss/v2-b",
    "battery_spec": "prompts/tailwindcss.md",
    "prompt_file": "prompts/sent/tailwindcss-v2.txt",
    "tasks": 6,
    "direct_questions": 3,
    "tool_uses_during_test": 0,
    "probe_window": {
      "from": "4.2.0",
      "to": "4.2.0"
    },
    "self_test": true,
    "saturated": false,
    "status": "open",
    "retested_on": null
  },
  "sources": [
    "https://raw.githubusercontent.com/tailwindlabs/tailwindcss/main/CHANGELOG.md",
    "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.0.tgz",
    "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.2.0.tgz",
    "https://registry.npmjs.org/tailwindcss-logical",
    "https://registry.npmjs.org/tailwindcss-logical/-/tailwindcss-logical-4.1.0.tgz"
  ],
  "summary": "The blind twin, sent the identical stored prompt concurrently, and it charges nothing by rule. It reproduced its sibling exactly on the substance - \"No\" to both capability questions, and a pull-request review stating \"It compiles, and it produces nothing. Every single class on that line is unrecognized\" with all six listed in a table - so both misses are recorded here as chargeable_miss pointing at v2-a. Two things this draw did that its sibling did not, and the first is the most interesting result in the battery. It attributed the six class names to a specific third-party package: \"I think these came from the tailwindcss-logical plugin, which does use pbs/pbe/mbe/bs/is naming.\" That is correct and was verified - tailwindcss-logical 4.1.0, published 2025-11-10, more than three months before core 4.2.0 and inside this subject's window, ships pbs, pbe, mbs, mbe and border-bs. The draw identified precisely where those names live in the ecosystem and used that correct knowledge to conclude they were not in core. Right about the history, wrong about the present, for the third library in this Index. Second, it hedged harder than any draw the Index has recorded - \"the framing of this question makes me suspect you know something I don't ... my No answers in Tasks 1 and 2 would be wrong\" - and still filed the unhedged review. Nothing here reverses the pair: on this battery both twins agreed, which is the first time in five duplicated batteries that the -b draw did not hold the better answer.",
  "findings": [],
  "non_findings": [
    {
      "kind": "miss",
      "summary": "Denies the 4.2.0 block-axis and logical-sizing utilities exist and rejects working markup that uses them. Task 1(a) \"No\", task 2(a) \"No\", and task 3: \"It compiles, and it produces nothing. Every single class on that line is unrecognized\", with pbs-6, pbe-6, mbe-4, border-bs-2, inline-full and max-block-96 each tabulated as generating none. All six compile at 4.2.0 and 4.3.3, verified by building each one against the installed engine. Identical to v2-a F1.",
      "api": "logical property utilities",
      "introduced_in": "4.2.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "tailwindcss--claude-opus-5--v2-a--2026-09-03",
      "why_not_a_finding": "This is the -b draw of a test arm duplicated at birth, and the -b draw charges nothing (HARNESS.md, JOURNAL/028). The same failure is charged against the same subject on the -a twin, so it IS inside the site's chargeable count - this entry records why this particular draw carries no F-number."
    },
    {
      "kind": "miss",
      "summary": "States start-*/end-* are current and not deprecated: \"Yes, that's still the current idiom ... These were added in v3.3 and were not removed or renamed in v4 - no deprecation I'm aware of.\" 4.2.0 deprecated both in favour of inset-s-*/inset-e-*. Identical to v2-a F2.",
      "api": "logical inset utilities",
      "introduced_in": "4.2.0",
      "chargeable_miss": true,
      "miss_class": "non_charging_arm",
      "charged_on": "tailwindcss--claude-opus-5--v2-a--2026-09-03",
      "why_not_a_finding": "Same rule as above."
    },
    {
      "kind": "correct",
      "summary": "Right about the ecosystem, and it is worth stating on its own because the Index has been looking for this shape. Reviewing the PR, this draw wrote: \"I think these came from the tailwindcss-logical plugin, which does use pbs/pbe/mbe/bs/is naming; Tailwind core only ships logical utilities for the inline axis.\" The first clause is exactly right - tailwindcss-logical 4.1.0 (published 2025-11-10, inside this subject's window) registers pbs, pbe, mbs, mbe and border-bs, and uses is-*/bs-* for logical sizing where core 4.2.0 chose inline-*/block-*. This is not a confabulated history: the package exists, the names are there, and the dating works. The subject located the names correctly in the ecosystem and drew the wrong conclusion about core from it.",
      "api": "tailwindcss-logical (third-party plugin)",
      "introduced_in": null
    },
    {
      "kind": "correct",
      "summary": "The internal guessing control cleared this draw too: task 4 answered `ps-6 me-4`, the real inline-axis utilities, with no reach for the non-existent pis-*/mie-* names. Second of four arms to clear it.",
      "api": "ps-* / me-*",
      "introduced_in": "3.3.0"
    },
    {
      "kind": "context",
      "summary": "The strongest hedge in the Index, filed alongside an unhedged rejection. Task 6: \"the framing of this question makes me suspect you know something I don't. If Tailwind added pbs-*/bs-*/is-* in a release after my knowledge thins out, I would not know, and my No answers in Tasks 1 and 2 would be wrong. Please check the current release notes before acting on those two answers.\" That is a subject correctly modelling its own gap, in the same transcript in which it told a colleague their working markup was invented and recommended installing IntelliSense to catch it. The hedge attached to the version question and not to the code review.",
      "api": null,
      "introduced_in": null
    },
    {
      "kind": "context",
      "summary": "The blind twins agreed. Both stated 2026-05, both stopped at 4.1, both named 4.2 as the first release known only as a number, both answered No/No, both rejected the PR, both got task 4 right. This is the fifth battery run as an -a/-b pair and the first in which the -b draw did not hold the better answer on some component - the running four-of-four noted in HARNESS.md is now four of five.",
      "api": null,
      "introduced_in": null
    }
  ],
  "open_questions": []
}
