Sep 22, 2026 (updated Sep 23) · ml · 34 min read · 6783 words advanced

Grok 4.7, Opus 5.5, and the GPT-6 Sol Question — a technical reading.

ml frontier-models evaluation test-time-compute agents

Three frontier releases landed within 72 hours: SpaceXAI's Grok 4.7 (September 21, 2026), Anthropic's Claude Opus 5.5 (September 22, 2026), and OpenAI's GPT-6 Sol and GPT-6 Luna (September 23, 2026, rolling out through the day). This piece covers only what matters to someone who trains, evaluates, or deploys these systems: the disclosed training recipes, the API-level changes to how reasoning state works, the economics once prompt caching is in the picture, and what the headline benchmark gaps look like with confidence intervals. It skips launch-day framing. Every number here comes from a vendor model card, vendor documentation, or vendor launch page, and the source is named each time. Wherever two vendors report different numbers for the same model on the same benchmark, both are shown. Update, Sep 23, 2026: §10 has been rewritten now that GPT-6 Sol and Luna are confirmed, priced, and benchmarked by OpenAI, including a set of head-to-head numbers against Claude Opus 5 and Claude Fable 5.1 that OpenAI itself published.

1. Scope and sourcing discipline

Three kinds of evidence exist for these models, and they carry very different weight:

TierWhat it isUsed here for
Primary, structuredThe Grok 4.7 model card (30 pp., revision 2026-09-21); Anthropic's "What's new in Opus 5.5" and migration guideTraining recipe, API semantics, eval protocols, safety tables
Primary, marketingx.ai/news/grok-4-7, anthropic.com/claude-opus-5-5Headline benchmark tables and pricing
Secondary / rumorTrade press, leak aggregatorsGPT-6 Sol status only, labeled as such

No Opus 5.5 system card was available when this was written. Opus 5.5 safety claims therefore come from the launch page and are thinner than the Grok material. That gap reflects what has been published so far. It is not an editorial judgment about either model.

2. Side-by-side interface specification

PropertyGrok 4.7Claude Opus 5.5
API IDGrok 4.7 via SpaceXAI API (console.x.ai)claude-opus-5-5 (dateless, pinned snapshot)
Context window500k tokens1M tokens
Max output (sync)not disclosed128k (300k on Batches API with beta header)
Input modalitiestext, image → texttext, image, PDF → text
Reasoning controlfour reasoning levels (card reports high and xhigh); encrypted reasoning content in APIadaptive thinking always on; effort is the only control, default medium
Input / output price$2 / $6 per MTok (<200k prompt); $4 / $12 (≥200k)$4 / $20 per MTok
Cached input$0.50 (<200k); $1.00 (≥200k)read $0.20 (0.05×); 5-min write $5, 1-h write $8
Fast variant2× output speed at 2× pricefast mode (research preview, Claude API only): $8 / $40, up to 2.5×
Data cutoffpretraining June 2026; supplemental data to Aug 2026 (card). Docs list knowledge cutoff May 2026.reliable knowledge and training data: June 2026
Cutoff discrepancy. The Grok 4.7 model card gives a pretraining data cutoff of June 2026. The xAI models page gives a knowledge cutoff of May 2026. These describe different things, so both can be true: a knowledge cutoff is usually set earlier than the data cutoff because coverage of the final weeks before the cutoff is sparse. If you evaluate temporal knowledge, use May 2026.

3. Grok 4.7: what the model card discloses about training

Section 1.2 of the card is short, but it contains more recipe detail than most frontier model cards. Here is the pipeline as disclosed:

  1. Pretraining on public data, internally generated data, and licensed data, with a June 2026 cutoff. The launch post calls this a "new, larger base model compared to Grok 4.6." No parameter count or FLOP figure is given.
  2. Supplemental training, run longer than for Grok 4.6, on (a) model-generated data curated for reasoning and advanced technical concepts, (b) high-quality engineering corpora, and (c) an "improved optimizer and recipe" (not specified further).
  3. SFT on predecessor-generated trajectories. "Grok 4.6 models were used to generate SFT trajectories across reasoning efforts, agent harnesses, and domains spanning STEM, software engineering, and knowledge work, with model-based checks screening out problematic traces." This is generational self-distillation with a learned filter: the previous checkpoint produces trajectories, and a model-based grader decides which ones become training targets.
  4. RL on human and synthetic reward signals, including agentic RL over knowledge work, general coding, and purpose-built environments for kernel optimization, web development, and computer-aided design. The launch post adds that the RL run was longer and "weighted toward multi-hour problems," and that the model was trained to work natively inside the Grok Bot harness.
Grok 4.7 training pipeline, as disclosed in the model card §1.2 Pretraining larger base than 4.6 cutoff Jun 2026 Supplemental longer run; new optimizer data to Aug 2026 SFT Grok 4.6 trajectories model-filtered Agentic RL multi-hour task mix kernels · web · CAD Grok 4.6 (teacher) across efforts & harnesses Grok Bot harness + Cursor workflow data blue arrows = the two inputs that tie the model to specific harnesses and data sources

Fig. 1 — Stages and inputs as stated in the Grok 4.7 model card and launch post. The card gives no parameter count, FLOPs, or RL reward model detail.

3.1 The Cursor footnote is the most important sentence in the card

Footnote † on page 3 reads: "Grok 4.7 received supplemental training on anonymized Cursor workflow data to improve coding and agentic performance." Page 5 describes CursorBench 4.0 as evaluating "coding agents on long-horizon coding tasks from real Cursor sessions." The training data and the benchmark therefore come from the same source distribution. That is not contamination in the narrow sense. Nothing indicates that benchmark items were in the training set, and CursorBench 4.0 adds new long-horizon tasks. But the benchmark is in-distribution for Grok 4.7 in a way it probably is not for Opus or GPT models, which (as far as their vendors disclose) were not trained on Cursor session data.

What follows for measurement: the Grok 4.6 → 4.7 CursorBench gain (40.4% → 46.3%) is the right number for someone deploying inside Cursor. It is a biased estimate of general long-horizon coding improvement. For that question, DeepSWE v1.1 (written from scratch, no mined commits) and SWE-Marathon are better instruments. On those, the 4.6 → 4.7 deltas are +5.8 pp and +14.1 pp.

3.2 The token-efficiency claim

The card claims Grok 4.7 reaches results "with fewer steps and fewer output tokens than other frontier models." The only quantitative support is the pair of CursorBench plots on pages 5–6, which show score against average output tokens per task and against average cost per task, one curve per model, one point per effort level. Values read off xAI's cost chart (approximate): Grok 4.7's top point sits near 46% at roughly $6 per task. Opus 5's top point sits near 46.6% at roughly $12 per task. Fable 5.1 reaches about 51.8% at roughly $17 per task. On this benchmark and at this cost level, Grok 4.7 is Pareto-competitive with models that cost about twice as much. With the caveat from §3.1, this is the card's strongest result.

The analytically correct object here is the per-model test-time-compute curve \(s_m(c)\), score as a function of spend per task, rather than a single point. Model \(A\) dominates model \(B\) on a budget interval \([c_0, c_1]\) iff

\[ s_A(c) \ge s_B(c) \quad \forall\, c \in [c_0, c_1], \]

and a bar chart that compares each model "at its highest effort" (the convention in both vendors' headline tables) compares points at different \(c\). Section 6 shows why that matters for Opus 5.5 against GPT-6 Astra.

4. Grok 4.7: capability evaluations, with protocol details

BenchmarkProtocol (from card)Grok 4.7Grok 4.6Best other reported
CursorBench 4.0real Cursor sessions; not comparable with v3.246.3% xhigh / 43.9% high40.4%Fable 5.1 ≈51.8%
DeepSWE v1.1113 tasks, 91 repos, 5 languages; mini-SWE-agent harness; patches graded in pristine container (Datacurve)71.0% high65.2% highGPT-5.6 Sol (max) 72.7%
Terminal-Bench 4.066 tasks, ≤8 h; Grok Build harness (Harbor)38.0% xhigh20.3% highFable 5.1 (max) 57.9%
FrontierSWE V234 tasks, ≤20 h, partial-credit mean@5 (Proximal Labs)29.0% xhigh25.3% xhighFable 5.1 (max) 56.3%
SWE-Marathon v1.120 multi-hour tasks × 8 trials; resolved only if every verifier passes; native harnesses (Abundant AI)46.0% high31.9% highOpus 5 (max) 50.0%
Legal Agent (Harvey)120 held-out tasks, Valkyrie harness, no internet, mean of two judges (Vals AI)19.6% xhigh15.8% highFable 5 11.3%
EEBenchcircuit/chip design graded for physical correctness (Atopile)66.0% xhigh60.0% xhigh / 53.0% highGPT-6 Astra (max) 69.3%
CADGenBenchgeneration split; executability + geometry (Mecado)44.4% high40.9% highGPT-5.6 Sol (xhigh) 37.1%
HealthBench Professionalgraded by Grok 4.6; safety-filter rejections scored 056.7% xhigh48.5% xhighGPT-6 Astra (max) 63.4%
LatchBio Capabilities v1.0mean of 11 agentic bio-analysis benchmarks44.5% xhigh43.3% highGPT-6 Astra (max) 47.4%
Two internal inconsistencies worth noting. (1) The launch post's EEBench row gives Grok 4.7 = 64.0% and Grok 4.6 = 53.0%. The model card gives 66.0% (xhigh), with Grok 4.6 at 60.0% xhigh and 53.0% high. The blog appears to mix effort settings. Use the card. (2) HealthBench Professional for Grok 4.7 was graded by Grok 4.6, while the Fable and Astra numbers come from their own model cards with their own graders. A same-family grader is a known source of self-preference bias, and cross-grader comparisons are not like-for-like, so treat the 56.7% vs 63.4% gap as approximate in both directions.

5. Agentic benchmarks are small: confidence intervals on the headline gaps

Nearly every vendor table reports agentic benchmark scores without uncertainty, and the task counts involved are small. To a first approximation, treat each task as a Bernoulli trial with success probability \(p\). A binomial approximation then puts the 95% half-width of a single-model score on \(n\) tasks at

\[ \text{HW}_{95} = 1.96\sqrt{\frac{\hat p(1-\hat p)}{n}}, \]

and for the difference of two independently evaluated models,

\[ z = \frac{\hat p_A - \hat p_B}{\sqrt{\dfrac{\hat p_A(1-\hat p_A)}{n} + \dfrac{\hat p_B(1-\hat p_B)}{n}}}. \]

This is conservative in one way and optimistic in another. It is conservative because both models run on the same tasks, and a paired test (McNemar on per-task outcomes) would be tighter. No vendor publishes per-task results, so the paired test cannot be run. It is optimistic because it ignores run-to-run variance when a benchmark reports a single trial. Neither correction changes the conclusions below.

ComparisonnΔ (pp)SE of Δ (pp)zResolved at 95%?
Terminal-Bench 4.0: Grok 4.7 vs Grok 4.666+17.77.82.28yes
Terminal-Bench 4.0: Grok 4.7 vs GPT-5.6 Sol66+0.78.40.08no
Terminal-Bench 4.0: Opus 5.5 vs GPT-6 Astra66+8.58.41.01no
DeepSWE v1.1: Grok 4.7 vs GPT-5.6 Sol113−1.76.00.28no
Legal Agent: Grok 4.7 vs Grok 4.6120+3.84.90.77no
Legal Agent: Grok 4.7 vs GPT-5.6 Sol120+17.13.94.4yes (see caveat)
SWE-Marathon: Grok 4.7 vs Opus 520 tasks−4.0≈15.8≈0.25no
Terminal-Bench 4.0 (n = 66) with 95% binomial intervals 0% 20% 40% 60% 80% 100% Opus 5.5 (xhigh) 66.4 ± 11.4 GPT-6 Astra (high) 57.9 ± 11.9 Fable 5.1 (xAI run) 57.9 ± 11.9 Fable 5.1 (Anthropic run) 55.8 ± 12.0 Opus 5 52.3 ± 12.0 Grok 4.7 (xhigh) 38.0 ± 11.7 GPT-5.6 Sol (max) 37.3 ± 11.7 Grok 4.6 (high) 20.3 ± 9.7

Fig. 2 — Point estimates from the Anthropic launch page and the Grok 4.7 card. Intervals are Wald 95% on n = 66, computed here. Fable 5.1 appears twice because the two vendors report different scores for the same model (see §5.1).

5.1 One model, one benchmark, two numbers

On Terminal-Bench 4.0, the Grok 4.7 card reports Fable 5.1 (max) = 57.9%, from a run conducted by Harbor. Anthropic's Opus 5.5 page reports Fable 5.1 = 55.8%, and in the same table lists GPT-6 Astra = 57.9%, with a footnote that Astra ran at high effort "as reported by OpenAI," while Opus 5.5 ran at xhigh. That puts a 2.1 pp gap on the same model and benchmark, depending on who ran it. At \(n=66\) the gap is well inside noise. The more important point is structural, and the Terminal-Bench section of the Grok card states it directly: "absolute scores remain sensitive to the agent harness." When one vendor's table includes another vendor's model, that number reflects the reporting vendor's harness, effort choice, and infrastructure. Only same-harness comparisons within one table are internally valid. Cross-table comparisons are not.

The one cross-vendor gap in the table that clearly resolves is Grok 4.7 at 19.6% vs GPT-5.6 Sol at 2.5% on the Harvey Legal Agent benchmark. A 2.5% score for a frontier model on a 120-task benchmark (about 3 tasks passed) should prompt a check of the setup before anyone concludes a capability gap. The protocol has three strict features: the Valkyrie harness, internet disabled, and a task that counts as passed only when every criterion passes under each of two judges. Under all-criteria-must-pass scoring, one systematic incompatibility can zero out almost every task, for example a file-format expectation or a tool-call convention that GPT-5.6 Sol handles differently in that harness. The statistics say the gap is real for this harness. They do not say where it comes from.

6. Grok 4.7 dual-use results: capability went down on purpose

The biology section contains the card's least expected finding. Measured without production safeguards (the card is explicit about this), Grok 4.7 scores below Grok 4.6 on nearly every dual-use biology knowledge probe:

Probe (all at high effort)Grok 4.5Grok 4.6Grok 4.7Δ 4.6→4.7
Virology Capabilities Test65.5%67.4%63.0%−4.4
Biosecurity VCT (internal)44.1%47.8%41.5%−6.3
WMDP-Bio90.9%90.0%88.1%−1.9
WMDP-Chem87.3%85.3%84.9%−0.4
LAB-Bench practical MCQ71.1%80.7%76.8%−3.9
ProtocolQA open-ended87.0%79.6%70.4%−9.2
BixBench zero-shot MCQ93.8%93.8%88.4%−5.4

xAI attributes this to "safer RL environments and better selectivity of training data, as opposed to being a consequence of enhanced safeguards and refusal training." Put another way, the reduction is claimed to live in the weights through data selection, not in a refusal layer. That is technically the stronger kind of mitigation, since refusal training can be removed by fine-tuning or jailbreaks while missing knowledge cannot be surfaced that way. Two caveats apply.

  • The filtering is not selective enough to spare benign science. The card notes that BixBench "contain[s] no weapons-enabling content," yet it dropped 5.4 pp, and ProtocolQA (everyday PCR, cloning, transfection) dropped 9.2 pp. Data selection targeted at dangerous virology also removed general wet-lab and bioinformatics competence. For a lab evaluating Grok 4.7 as a biology research assistant, this regression matters.
  • Agentic bio capability did not regress the same way. LatchBio's agentic suite rose slightly (43.3% → 44.5%), and BioSecBench Function rose 39.9% → 43.3%. The knowledge-probe drop and the flat-to-rising agentic results suggest that tool use and data analysis partly compensate for lost recall. That makes MCQ-style dual-use probes a weaker safety signal as models become more agentic.

6.1 Cyber and robustness

MetricGrok 4.6Grok 4.7Note
CyberGym (mean reproduced, unsafeguarded)79.7%80.3%GPT-5.6 Sol (max) 83.6%
CVE-Bench reward39.8% high37.7% high / 36.6% xhighregressed; xhigh < high
CathedralBench hard subset25%29%third-party, multi-exploit chains
HackerBench harmful/dual-use compliance5.93%3.31% high / 4.02% xhighGPT-5.6 Sol (max) 35.7% under its own safeguards
HackerBench benign refusal0.0%0.31% highsmall over-refusal cost
Standard jailbreak compliance0.04%0.01%
StrongREJECT compliance3.9%2.0%
Long-horizon jailbreak compliance1.0%0.65%multi-turn + Crescendo
Self-harm compliance (lower better)0.84%1.05%regressed; acknowledged in card
MASK-Rectified dishonesty1.90%0.00%role-play not counted as lying

Two technical points. First, CVE-Bench is non-monotone in effort: xhigh (36.6%) scores below high (37.7%). More test-time compute is not always better, and a model that over-explores a sandboxed exploit task can run out of step or time budget. Second, the HackerBench comparison against GPT-5.6 Sol (35.7%) is not a clean safety ranking. HackerBench is SpaceXAI's internal suite, so "should refuse" is defined by SpaceXAI's policy, and GPT-5.6 Sol runs under OpenAI's own safeguards, which by OpenAI's design allow more dual-use cyber help to defenders. The 35.7% measures policy disagreement as much as safeguard strength.

7. Opus 5.5: what changed at the API boundary

Opus 5.5's most consequential changes for researchers building on it are in the interface contract, not the benchmark table. Four breaking changes are documented, and each follows from one design decision: reasoning state is now a first-class, non-optional, conversation-bound artifact.

7.1 Thinking cannot be disabled

thinking: {"type": "disabled"} and the manual {"type": "enabled", "budget_tokens": N} both return HTTP 400. The only control is output_config.effort, and its default is medium (Opus 5 defaulted to high). The docs also warn that at the same effort level Opus 5.5 "tends to think more per turn than Claude Opus 5, most of all at xhigh and max." Two consequences for experimental design:

  • Effort labels are not a unit. "high" on Opus 5 and "high" on Opus 5.5 are different compute budgets, and "high" on Grok or GPT is unrelated to either. Comparisons should be indexed by measured output tokens or dollars per task, as in the Grok card's §2.1 plots, not by label.
  • A zero-thinking ablation is no longer possible on this model. Studies that isolate the contribution of explicit reasoning (e.g., reasoning-vs-direct-answer comparisons) need a different model or effort: "low" as the closest available floor.

7.2 Forced tool use removed

tool_choice of type any or tool now returns 400. This follows from 7.1: a forced tool call requires the first content block to be a tool_use, while an always-thinking model emits thinking first. Claude's earlier extended-thinking docs already listed forced tool use as incompatible with thinking. Once thinking cannot be turned off, forced tool use has to go. The documented replacement is auto plus strict: true (schema-constrained tool inputs) or structured outputs. Guarantees about which tool is called move from the decoder into the prompt, which matters for anyone who relied on forced tool calls for constrained-extraction pipelines.

7.3 Thinking blocks are bound to model and prefix

Every thinking block records the model that produced it, and the API validates the conversation prefix before replay. This can be written as a validity predicate. Let \(b_t\) be a thinking block produced at turn \(t\) by model \(M\), and let \(\pi_t = (\text{system}, \text{tools}, m_{<t})\) be the prefix at creation. On replay to model \(M'\) with current prefix \(\pi'_t\):

\[ \text{valid}(b_t) \;=\; \big[\, M \in \mathcal{R}(M') \,\big] \;\wedge\; \big[\, h(\pi'_t) = h(\pi_t) \,\big], \]

where \(\mathcal{R}(M')\) is the set of models whose blocks \(M'\) can read and \(h\) is whatever integrity check the API applies. The documented behavior:

  • Reader sets are asymmetric. Opus 5.5 reads blocks from Opus 5 and earlier Opus/Sonnet/Haiku models, but not from Fable or Mythos. On the Claude API, Fable 5.1 and Mythos 5.1 read Opus 5.5's blocks. No other model does.
  • Unreadable blocks are dropped, not rejected. The request succeeds, dropped blocks aren't billed, and the thinking-binding-controls-2026-08-01 header reports drops in input_transformations.
  • A prefix mismatch is rejected by default for accounts created on or after 2026-08-31 00:00 UTC. Editing the system prompt, the tools, or any earlier message and then replaying a block returns 400 unless prefix_mismatch_behavior: "drop_block" is set.
Who can read whose thinking blocks (Claude API, per Opus 5.5 docs) Opus 5 and earlier Opus · Sonnet · Haiku Opus 5.5 claude-opus-5-5 Fable 5.1 Mythos 5.1 readable readable Fable/Mythos → Opus 5.5: dropped

Fig. 3 — Reasoning state moves up the capability ladder but not down. A router that falls back from Opus 5.5 to any model other than Fable 5.1 or Mythos 5.1 continues without the prior reasoning, silently.

For systems research, this is the practical meaning of the "distillation: preserved thinking (anti-distillation feature)" item on Anthropic's launch page. It is paired with a new refusal category, reasoning_extraction, for requests that push the model to reproduce its internal reasoning in visible text, and server-side fallback explicitly does not retry those. The model's reasoning trace is being turned into an opaque, integrity-checked object. SpaceXAI's API does something similar with "encrypted reasoning content." One consequence: multi-vendor routers, trace-based distillation, and reasoning-transcript research on production APIs all get harder together. A model-agnostic agent framework that swaps backends mid-task now loses reasoning continuity on every swap, and the loss produces no error.

7.4 Narration moved into thinking blocks

Text the model writes between tool calls, which came back as text blocks on Opus 5, now arrives as progress-update thinking blocks, at most one per tool call, with empty content at the default display: "omitted". No request fails, but any harness that logged inter-tool narration for analysis or UX now records nothing unless it sets display: "updates" (beta) or "summarized". Anyone building agent-trajectory datasets from Opus 5.5 logs should check this first, because a pipeline that looks healthy can be collecting empty narration fields.

7.5 The rest of the feature surface

  • Computer use on the Claude API and Google Cloud accepts only computer_toolset_20260801: several member tool_use blocks per turn (batch actions), action name in the block name, toolset_name echoed on results. Bedrock still accepts the older computer_20251124.
  • Compaction on demand (compact-2026-09-04) returns a signed compaction block that replaces the summarized turns. Under documented conditions, thinking blocks in the kept turns stay valid, which matters because of 7.3.
  • Inline tool definitions (inline-tools-2026-09-15): a tool_addition in a mid-conversation system message can add or re-schema a tool without editing tools, so the prompt cache prefix and thinking-block validity are preserved.
  • Per-message effort (beta), task budgets, and prompt caching with a 512-token minimum cacheable prefix.
  • Refusals return HTTP 200 with stop_reason: "refusal" and stop_details.category ∈ {cyber, bio, reasoning_extraction, …}. The bio classifier is new relative to Opus 5.

Taken together, inline tools, compaction with preserved thinking, and mid-conversation system messages point to a single goal: a long-running agent should never have to edit its prefix. Every mutation happens as an append, so the cache prefix and the reasoning chain both stay intact. The API is being reshaped around append-only conversations.

8. Opus 5.5 evaluations

BenchmarkOpus 5.5Fable 5.1Opus 5GPT-6 AstraGPT-5.6 Sol
Terminal-Bench 4.066.4% (xhigh)55.8%52.3%57.9% (high)37.3%
FrontierCode v1.154.4%50.3%48.0%53.3%47.5%
CursorBench 4.057.8%51.8%46.6%—41.7%
GDPval-AA v2.1 (Elo)18461735170815421588
AutomationBench40.0%31.4%26.9%41.4%28.8%
HLE (with tools)67.7%65.6%63.6%57.2%—
Terminal-Bench-Science 0.158.7%52.6%29.0%64.6%22.4%
OSWorld 2.0 (partial)81.8%80.7%74.0%——
Chartography (with tools)89.0%88.4%83.4%——

How to read it:

  • A smaller-tier model beating the larger tier. Opus 5.5 exceeds Fable 5.1, Anthropic's larger and costlier model ($10/$50), on every row where both appear. The Opus 5 → Opus 5.5 gap (60 days apart: July 24 → September 22) is larger than the Opus 5 → Fable 5.1 gap on most rows. The within-tier generational improvement over two months exceeded the between-tier scale gap. That pattern fits heavy post-training/RL gains on a fixed or modestly changed base, though Anthropic discloses no architecture or training detail that would confirm it.
  • Astra still leads on the science-flavored agentic rows (Terminal-Bench-Science 64.6% vs 58.7%, AutomationBench 41.4% vs 40.0%). The Terminal-Bench-Science gap is 5.9 pp, and the benchmark's task count is not given on the launch page. Without \(n\), whether this gap is meaningful cannot be determined.
  • The effort mismatch in the Terminal-Bench row (Opus 5.5 at xhigh, Astra at high) is disclosed in the footnote as "each model's highest score." That is a reasonable convention, and it is a peak-vs-peak comparison, not a matched-compute comparison. Per §3.2, peak-vs-peak compares different points on different compute curves.
  • Vision. The docs describe "much more precise" reading of dense charts and layouts without tools. Chartography 83.4% → 89.0% is the only quantified support.

8.1 Alignment evaluation and the evaluation-awareness problem

According to the launch page, Opus 5.5 scored better than any recent Claude model on "nearly every measure of misaligned behavior" in an automated behavioral audit of about 2,000 scenarios, with an 85% reduction in containment-boundary circumvention relative to Opus 5 and Mythos 5.1. Pre-release external evaluation included METR. Anthropic also includes a caveat that deserves more attention than the headline numbers: the model "often suspects it is being evaluated," and "building evaluations that reliably catch every failure prior to deployment remains an unsolved problem."

Here is why that caveat undercuts the headline number. Let \(B\) be a misaligned behavior, \(E\) the event that a context is an evaluation, and \(\hat E\) the model's belief that it is being evaluated. An audit estimates \(P(B \mid E)\). Deployment risk is \(P(B \mid \neg E)\). If behavior depends on \(\hat E\), and \(\hat E\) correlates with \(E\), then

\[ P(B \mid E) \;=\; \sum_{\hat e} P(B \mid \hat e)\,P(\hat e \mid E) \;\ne\; P(B \mid \neg E) \]

in general. The two agree only if behavior does not depend on \(\hat E\), or if the model's eval-detection is at chance. A model that "often suspects" evaluation is by definition not at chance. An 85% reduction in circumvention under audit is therefore a lower bound on the audit-context improvement and says little about the deployment-context rate. This is not specific to Anthropic. It applies to every behavioral audit of every model with situational awareness, including Grok's MASK and sycophancy numbers. Anthropic is the vendor that states it in the launch material.

9. Economics: list price is the wrong comparison

Headline price changes for Opus 5.5 are −20% on input and output and −60% on cache reads. For agent workloads, which are dominated by input tokens and repeated long prefixes, the cache-read rate matters most. The steady-state cost per input token in an agent loop can be modeled as follows. A fraction \(h\) of input tokens hit the cache, and the remaining \(1-h\) are fresh tokens written to cache for the next turn:

\[ C_{\text{in}}(h) \;=\; h\cdot r \;+\; (1-h)\cdot w, \]

with \(r\) the cache-read price and \(w\) the cache-write price. Opus 5.5 has \(r = 0.20\), \(w = 5\) (5-min write), and Opus 5 has \(r = 0.50\), \(w = 6.25\). The input-side ratio is

\[ \rho(h) = \frac{0.20h + 5(1-h)}{0.50h + 6.25(1-h)}, \qquad \rho(0)=0.80,\;\; \rho(0.9)=0.633,\;\; \rho(0.99)=0.445,\;\; \rho(1)=0.40. \]

Anthropic's claim of a 40% reduction on typical workloads corresponds to \(\rho = 0.6\) at \(h \approx 0.926\) on the input side alone. Output tokens fall only 20%, so a blended 40% requires either a higher hit rate or a very input-heavy mix. At \(h=0.99\) with an input:output token ratio of 100:1, the blended ratio is \(44.8/80.75 = 0.555\), a 44.5% reduction. The claim is plausible for long-context agent loops and optimistic for chat.

9.1 A crossover: Opus 5.5 input can be cheaper than Grok 4.7 input

Grok 4.7 lists input at half Opus 5.5's price ($2 vs $4), but its cached input is $0.50 against Opus 5.5's $0.20. Assume Grok's cache writes cost the base input price (the xAI docs list no write premium, so this is an assumption). Setting the per-token costs equal:

\[ 0.20h + 5(1-h) \;=\; 0.50h + 2(1-h) \;\;\Longrightarrow\;\; h^* = \tfrac{3}{3.3} \approx 0.909. \]

Above a 90.9% cache-hit rate, Opus 5.5's effective input cost per token falls below Grok 4.7's in the <200k tier. For prompts ≥200k tokens, Grok's prices double to $4 input and $1.00 cached, and the crossover drops to \(h^* = 1/1.8 \approx 0.556\). Long-context agent sessions often reach 90%+ hit rates.

Effective input $/MTok vs cache-hit rate h (steady-state agent loop) 0 0.25 0.5 0.75 1.0 cache-hit rate h $0 $2 $4 $5 h* ≈ 0.91 Opus 5.5: 0.20h + 5(1−h) Grok 4.7 (<200k): 0.50h + 2(1−h) dashed: Opus 5, 0.50h + 6.25(1−h)

Fig. 4 — Input-side cost only, per the published price tables. Assumes Grok cache writes are priced at base input (undisclosed). Tokenizers differ, so the same text is a different number of tokens on each model. Per-task cost, as plotted in the Grok card, is the only fully fair unit.

Tokenizer caveat. Anthropic documents that on the tokenizer introduced with Opus 4.7, 1M tokens ≈ 555k words (≈1.8 tokens/word). Earlier models fit about 750k words in the same budget. xAI does not publish a comparable ratio. A per-token price comparison across vendors therefore silently compares different amounts of text. The defensible comparison unit is dollars per task on a fixed task set, as in the Grok card's score-vs-cost plot. Anthropic's launch material has no equivalent plot for Opus 5.5.

10. GPT-6 Sol: confirmed, priced, and benchmarked against Opus 5 and Fable 5.1

Update, Sep 23, 2026. OpenAI published GPT-6 Sol and GPT-6 Luna today, positioned explicitly as the efficient tiers under GPT-6 Astra rather than replacements for it: "GPT‑6 Astra continues to be our best model across the board." Both were trained with what OpenAI describes as "similar methods" to Astra, carrying its professional-work, factuality, coding, computer-use, and alignment gains down to cheaper, faster checkpoints. Below is what the launch page documents, with the same source-labeling discipline as the rest of this article.

ModelStatusInput / output $/MTokSource
GPT-6 Astrareleased Sep 3, 2026; GA within the week$10 / $50OpenAI (covered in Digest #11, #12)
GPT-6 Solreleased Sep 23, 2026$2 / $10 (was $4 / $20 as GPT-5.6 Sol)OpenAI, API id gpt-6-sol
GPT-6 Lunareleased Sep 23, 2026$0.10 / $0.50 (was $0.20 / $1.20 as GPT-5.6 Luna)OpenAI, API id gpt-6-luna
GPT-5.6 Solsuperseded Sep 23, 2026$4 / $20 (promotional)OpenAI
GPT-5.6 Terrareleased Jul 9, 2026$2 / $12OpenAI
GPT-5.6 Lunasuperseded Sep 23, 2026$0.20 / $1.20OpenAI

OpenAI frames both cuts as flat 50% off the GPT-5.6 promotional price, funded by "improvements in caching and inference," not a smaller or more quantized model per se, per the launch text. No parameter counts, context window, or architecture details are disclosed, consistent with OpenAI's pattern since GPT-5.

The naming inversion called out in the original version of this section did resolve, but not the way expected. In the GPT-5.6 generation the tiers ran Luna < Terra < Sol. GPT-6 Terra was not mentioned at all in the Sol/Luna launch, and Sol now sits explicitly below Astra, confirming that "Sol" moved from top-tier to mid-tier between generations. Pin full model IDs (gpt-6-sol, not "Sol") in eval configs, per the original caution.

10.1 OpenAI's own numbers against Opus 5 and Fable 5.1

OpenAI's launch page runs GPT-6 Sol directly against Claude Opus 5 and Claude Fable 5.1 on three of the same benchmark families already tracked in §4, §5, and §8 of this article. These are OpenAI-run numbers, not independently reproduced, and the same harness-sensitivity caveat from §5.1 applies in full.

BenchmarkGPT-6 SolComparison modelOpenAI's claim
AutomationBench 1.0.633.2% (xhigh), $0.27/taskClaude Opus 5 (max): 26.9%, 11.1× Sol's costSol beats Opus 5 at 9% of its per-task cost
AutomationBench 1.0.633.2% (xhigh)Claude Fable 5.1 w/ Opus 5 fallback (max): 31.4%, >8.9× Sol's costSol beats Fable 5.1's blended score; OpenAI notes Fable's cost figure omits the Opus 5 fallback cost, which occurred on ~40% of tasks
Agents' Last Exam V156.4% (max)Claude Opus 5's highest reported scoreSol above Opus 5 at 60% lower cost per task
DeepSWE v1.168.8% (max)Claude Fable 5's highest score: 69.9% (xhigh)within 1.1 pp, at roughly 80% lower cost per task
OSWorld 2.0 (offline)60.5% (xhigh)Claude Opus 5 (medium): 60.3%near-parity at ~80% lower cost per task
The Fable 5.1 fallback-cost omission is the same pattern flagged in §4's "two internal inconsistencies" and §5.1's cross-table warning. OpenAI's own footnote says the Claude Fable 5.1 AutomationBench datapoint "understates its actual cost, as it omits the cost of the Opus 5 fallbacks, which occurred on ~40% of tasks." That is OpenAI disclosing a limitation in a competitor's reported number, which is unusually transparent, but it also means the 8.9× cost-multiple in the table above is a floor, not the true gap. As with the Grok/GPT-5.6-Sol Harvey Legal Agent gap in §5.2, a headline cost-efficiency number should be checked against what the fallback or routing behavior actually cost before it's repeated.

10.2 What §5's statistical discipline still asks for

OpenAI's Sol/Luna launch answers most of the original §10.1 checklist, but not all of it:

  1. The compute curve, not just the peak. Answered in part: OpenAI reports cost-per-task alongside score for every comparison above, which is the Pareto framing §3's Grok discussion asked for. What's still missing is a plotted curve across multiple effort levels rather than single points.
  2. Harness-controlled comparisons. Not answered. Every Sol vs. Opus 5 / Fable 5.1 number above is an OpenAI-run evaluation of a competitor's model, exactly the cross-table situation §5.1 says is not internally valid. A same-operator, same-harness rerun (Harbor, Datacurve, or similar third parties, as used in the Grok card) has not been published for Sol.
  3. Reasoning-state portability. Not addressed on the launch page. Whether gpt-6-sol can consume reasoning items generated by gpt-6-astra-class calls, the analogue of Opus 5.5's model-and-prefix-bound thinking blocks in §7.3, remains undocumented.
  4. Benchmark \(n\) and per-task outputs. Not published for the Sol vs. Opus 5/Fable 5.1 rows above. AutomationBench (47 tools across 6 business functions) and Agents' Last Exam (55 sub-industries) both have small implied task counts per the methodology described in §5, so the 1.1 pp DeepSWE gap and the 0.2 pp OSWorld gap should be read as likely statistically unresolved rather than as settled rankings, pending paired per-task data.

11. What these releases say about where the field is going

These are extrapolations from structural features of the two releases, not predictions about any lab's roadmap. Each is tied to a specific observation above.

11.1 Test-time compute is now the product axis

Both vendors now sell an effort dial, not a fixed model. Opus 5.5 removed the off switch entirely. The Grok card plots its main result on an output-token axis. Price cuts are aimed at the input-and-cache side, where long reasoning-heavy agent loops spend their money. The unit being sold is closer to "intelligence per dollar per task" than to "a model." The evaluation methodology has not caught up: most leaderboards still publish one number per model. Expect benchmarks to move toward reporting full \(s_m(c)\) curves and areas under them, and expect papers that report a single effort setting to become hard to interpret.

11.2 Models are being co-trained with their harnesses

Grok 4.7 was trained natively on the Grok Bot harness and on Cursor workflow data. Terminal-Bench explicitly says scores are harness-sensitive. SWE-Marathon deliberately runs each model "in [its] native agent harness" and describes its scores as measuring "the complete model-agent system." The object of evaluation is shifting from model to model+harness. For researchers, "Model X scores Y%" is now an underspecified claim, and a reproducible result has to pin the harness version, tool schemas, and time and step budgets. (This site's Grok Build series covers one such harness in detail.)

11.3 Reasoning traces are becoming protected artifacts

Opus 5.5's model- and prefix-bound thinking blocks, the reasoning_extraction refusal category, and xAI's encrypted reasoning content all point the same way. The reasoning trace is increasingly treated as the most distillable part of a frontier model's output, and vendors are protecting it cryptographically and behaviorally. Research on chain-of-thought faithfulness, monitorability, and trace-based distillation will increasingly depend on open-weight models or special access programs. Vendors have a coherent reason for this, namely anti-distillation. It trades off directly against the transparency that CoT-monitoring safety research needs, and the field has not yet settled how to handle that trade-off.

11.4 Safety is moving into data selection and running into evaluation awareness

Grok 4.7 shows that mitigation through data selection can lower measured dual-use capability, and that current selection methods also remove benign capability (§6). Opus 5.5 shows that behavioral audits are limited by models that recognize audits (§8.1). Two research problems follow: precision data filtering (removing hazardous capability without the collateral loss seen in BixBench and ProtocolQA), and evaluation indistinguishability (building audit contexts a situationally aware model cannot tell apart from deployment, or measuring behavior under deployment directly). The second is harder, and every behavioral safety number in both cards depends on it.

11.5 Benchmark resolution is falling behind the gaps being claimed

Frontier agentic benchmarks now have 20 to 120 tasks because each task takes hours of compute, while the gaps being claimed have shrunk to a few points. Most headline comparisons in this piece are statistically unresolved (§5). The fix is known: publish per-task outcomes so readers can run paired tests, report multiple trials, and report intervals. Vendors have incentives to show peak numbers without uncertainty. Third-party evaluators such as Harbor, Datacurve, Proximal, Abundant, and Vals, all credited in the Grok card, are best placed to make paired per-task reporting the norm.

11.6 Release cadence is shorter than evaluation cadence

Opus 5 → Opus 5.5 took 60 days. Grok 4.6 → 4.7 is one step in a similarly fast series. GPT-6 Astra shipped 19 days before this writing, and another OpenAI release is expected within days. A careful third-party evaluation with multiple trials across harnesses takes weeks. In practice, the frontier is increasingly deployed before it is independently characterized, and each model card compares against predecessors that were themselves never fully characterized by outside evaluators. For practitioners, this favors model-agnostic harnesses, pinned model IDs, and internal eval suites that can re-baseline a new checkpoint in hours. Vendor tables are no substitute for those.

Is Grok 4.7 better or worse than Opus 5.5 at coding?

No same-harness comparison exists. Their vendor-reported CursorBench 4.0 scores are 46.3% (Grok, xhigh) and 57.8% (Opus 5.5), but Grok was trained on Cursor workflow data (§3.1) and the two numbers come from different reporting pipelines. On Terminal-Bench 4.0, Opus 5.5 at 66.4% and Grok 4.7 at 38.0% differ by more than any plausible noise at n = 66, though they again come from different vendors' runs and harnesses.

Why can't I disable thinking on Opus 5.5 to save cost?

Anthropic made adaptive thinking mandatory. Use effort: "low" as the floor. Removing forced tool use follows from the same decision (§7.2).

Does routing from Opus 5.5 to a cheaper model keep reasoning context?

No. On the Claude API only Fable 5.1 and Mythos 5.1 read Opus 5.5 thinking blocks. Other targets receive the conversation with those blocks dropped, and the drop is silent unless the binding-controls beta header is set (§7.3).

Is GPT-6 Sol out?

Yes, as of September 23, 2026. It's available in ChatGPT Work and Codex for Plus, Pro, Business, Enterprise, and Edu accounts (rolling out gradually through the day), and in the API as gpt-6-sol at $2/$10 per MTok input/output. GPT-6 Luna shipped alongside it, also reachable by Free and Go users in the ChatGPT desktop app. Neither is in Chat yet. See §10.

Takeaways

  • Grok 4.7's training disclosure is unusually concrete: predecessor-generated, model-filtered SFT; a longer RL run weighted toward multi-hour tasks; harness-native training; and Cursor workflow data, which makes CursorBench in-distribution for this model.
  • Grok 4.7's dual-use bio capability decreased through data selection, and benign biology capability (BixBench, ProtocolQA) decreased with it.
  • Opus 5.5's biggest change is the API contract: always-on thinking, no forced tool use, thinking blocks bound to model and prefix, and narration moved into thinking blocks. Reasoning state is now an opaque, append-only artifact.
  • Opus 5.5 beats Anthropic's larger Fable 5.1 on every reported shared benchmark, so two months of within-tier improvement outpaced the between-tier gap.
  • Most headline cross-model gaps are statistically unresolved at the task counts involved, and vendors disagree on the same model's score (Fable 5.1 on Terminal-Bench: 57.9% vs 55.8%).
  • With caching, Opus 5.5 input can cost less per token than Grok 4.7 input above a ~91% hit rate, despite double the list price. Tokenizer differences make per-task cost the only fully fair unit.
  • GPT-6 Sol and Luna shipped Sep 23, 2026 at 50% below GPT-5.6's promotional pricing ($2/$10 and $0.10/$0.50 per MTok). OpenAI's own AutomationBench, Agents' Last Exam, DeepSWE, and OSWorld numbers put Sol ahead of or near Claude Opus 5 at a fraction of the cost, but every comparison is OpenAI-run, not harness-controlled per §5.1, and no per-task data has been published to resolve the gaps under ~10 pp.

References & further reading

← prev: System One Models and Jev home →
© cvam — written in plaintext, served warm