Commit Graph
84 Commits
Author SHA1 Message Date
Jesse Zhang acb27270f0 docs: scope Codex review for benchmark artifacts 2026-07-02 17:08:18 +01:00
Jesse Zhang 5823fed8e1 Add Claude Fable 5 Claude Code xhigh skeleton-watch run 2026-07-02 01:59:34 +01:00
Jesse ZhangandClaude Opus 4.8 4d466f74cb docs: add default-harness (no extra skills) self-check to PR template
Mirror the new contribution rule as a checklist item so contributors confirm
they ran the harness as it ships.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 20:31:27 +01:00
Jesse ZhangandClaude Opus 4.8 308c93ac81 docs: reject runs with extra skills outright (addr Codex #25 P2)
A `note` disclosure does not separate a modified-harness run on the board:
leaderboard identity is only model × harness × effort, so a skill-boosted run
would still land in an Agent row it is explicitly not comparable with. Drop the
"disclose in note" escape hatch and make it a flat non-acceptance.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 20:25:08 +01:00
Jesse ZhangandClaude Opus 4.8 5cd30bac2b docs: require running the harness as it ships (no extra skills)
Address fairness concern from #24: the same harness can load completely
different skills / plugins / MCP / custom system prompts, which shifts the
output as much as swapping the harness and breaks Agent comparability.

- README.md / README.en.md: add a bullet to the Model + Harness section
  stating the harness is evaluated in its default, out-of-the-box form.
- AGENTS.md: add a "Run the harness as it ships" rule — no extra skills
  beyond what the harness bundles; disclose any deviation in `note`.

Enforcement stays honor-system + the PR generation screenshot.

Closes #24

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 20:18:08 +01:00
Jesse ZhangandClaude Opus 4.8 eaf2737ecc ci: verify data to site auto-deploy dispatch
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 12:47:59 +01:00
Jesse ZhangandClaude Opus 4.8 1605c5e20b ci: trigger run to verify registry auto-sync workflow
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 11:32:30 +01:00
Jesse ZhangandClaude Opus 4.8 30983f0e7d Add AGENTS.md + tighten contribution flow
- AGENTS.md: public contributor/agent guide (two-file rule, model-centric
  ids, one-entry-per-harness, bilingual notes, screenshot proof)
- PR template: require a generation proof screenshot; drop the manual
  update-registry step; add id-naming and no-README-edit checks
- CI: PRs only run validate-data; pushes to main auto-regenerate and commit
  the README registry (contents:write on that job, [skip ci], no loop)
- README/update-registry: reflect auto-synced registry; fix stale 'two cases'
  -> three (mythos-craft, pelican-cycling, skeleton-watch); link AGENTS.md

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 11:29:23 +01:00
Jesse ZhangandClaude Opus 4.8 c9cf217db3 Update registry: GLM-5.1 now ran (ZCode · Max, pelican-cycling)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-20 09:17:15 +01:00
Jesse ZhangandClaude Opus 4.8 8fb741ceec Add GPT-5.5 (Codex CLI xhigh) skeleton-watch run
One-shot skeleton-watch generated via codex exec with model gpt-5.5 at
xhigh effort. The prompt was prefixed with an instruction forbidding the
model from reading or referencing any other file in the repo, so it works
purely from its own knowledge. Unmodified original output; renders clean
(no console errors), registered in the model JSON.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 01:20:28 +01:00
Jesse ZhangandClaude Opus 4.8 50a2607db3 Disable GPT-5.5 Pro skeleton-watch bloom entirely for eye safety
The tamed bloom (0.28/0.45/0.9) was still blinding when zoomed in: the
intensity-96 key spotlight's near-white specular on the polished plate
kept blooming into an over-exposed haze over the whole movement. Lowering
threshold/strength was not enough, so disable the bloom (strength 0).
The movement is crisp and the lume still reads via its emissive material.
Done out of concern for photosensitive viewers; note updated.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 01:09:47 +01:00
Jesse ZhangandClaude Opus 4.8 16f528892c Tame GPT-5.5 Pro skeleton-watch blinding bloom glow
UnrealBloomPass used threshold 0.18 / strength 0.72, so with ACES tone
mapping and several strong lights nearly every highlight and lume surface
bloomed into one over-exposed white blob that washed out the whole dial.
Tame it to strength 0.28 / radius 0.45 / threshold 0.9 so the glow only
haloes the lume markers and the watch is legible again. Documented in the
run note (now a 2-line fix).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 01:01:18 +01:00
Jesse ZhangandClaude Opus 4.8 2cbe8b457f Document Opus 4.7 skeleton-watch exploded-view bug in run note
Clicking Exploded View barely moves anything: animate() does
const t = clock.getElapsedTime() then const dt = clock.getDelta().
getElapsedTime() already consumes the frame delta and resets oldTime,
so the following getDelta() returns ~0 and dt is ~0 every frame, leaving
the explode lerp (and crystal offset) effectively frozen. Gear rotations
use t directly so the movement still runs. Bug documented, not fixed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 00:54:59 +01:00
Jesse ZhangandClaude Opus 4.8 6b5c5aba25 Fix GPT-5.5 Pro skeleton-watch mainspring crash (fractional tube segments)
createSpiralTube passed Math.max(96, turns * 38) as TubeGeometry's
tubularSegments, yielding fractional counts (5.8 -> 220.4, 6.4 -> 243.2).
TubeGeometry's trailing generateSegment indexes the Frenet-frame arrays
with that count, hits undefined and reads .x, throwing a TypeError that
aborts init and leaves the page stuck on the loading overlay forever.
Round the count to an integer; documented in the run note.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 00:50:11 +01:00
Jesse ZhangandClaude Opus 4.8 7eaac09dc0 Sort models by version desc and clarify effort belongs to the model (#18)
Reorder the Opus (4.8>4.7>4.6>4.5), MiMo (keep the two variants
adjacent) and GLM (5.2>5.1>5 Turbo) entries so the registry sorts by
version high-to-low instead of the previous scrambled order, adjusting
each model JSON's `order` and regenerating the README registry tables.

Also revise the model-vs-harness explainer: reasoning effort is a
capability dial of the model itself (same weights at high vs low effort
reason like different models), so it belongs to the "model" dimension
alongside the weights rather than being framed as a side parameter of
the agent.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 23:48:13 +01:00
Jesse ZhangandClaude Opus 4.8 3d5bf6967c Normalize artifact filenames and register new runs (#17)
Rename all output artifacts to their canonical case-id names
(mythos-craft.html / pelican-cycling.svg / skeleton-watch.html, with
-2 suffixes for variants) and drop the now-redundant "file" overrides
from the corresponding models/*.json runs.

Register new Claude Code runs for Opus 4.6 and 4.7 (new model JSONs),
add the GPT-5.5 Pro skeleton-watch run, and regenerate the README
registry tables. Remove stray .DS_Store files from outputs/.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 23:36:38 +01:00
Jesse ZhangandClaude Opus 4.8 dd67d6fda5 Add Step 3.7 Flash runs (mythos-craft, pelican-cycling)
Step 3.7 Flash (StepFun) via Claude Code · High, one-shot. The mythos-craft
Write tool call failed during generation, so the model's output was saved into
the HTML by hand (code unmodified) — documented in the run note. Registry
tables regenerated; validation passes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 22:03:52 +01:00
Nagi-ovoandCodex b07823f4be Fix GLM-5.2 mythos startup
Co-authored-by: Codex <codex@openai.com>
2026-06-14 23:53:18 +01:00
Nagi-ovoandCodex f9a44ec74e Fix GLM-5 Turbo mythos startup
Co-authored-by: Codex <codex@openai.com>
2026-06-14 23:48:10 +01:00
Nagi-ovoandCodex 2bcb1409c4 Update registry for GLM-5 Turbo variant
Co-authored-by: Codex <codex@openai.com>
2026-06-14 23:31:20 +01:00
Nagi-ovoandCodex ce906b7f02 Add GLM-5 Turbo mythos variant
Co-authored-by: Codex <codex@openai.com>
2026-06-14 23:30:53 +01:00
Nagi-ovoandCodex 9f899eaeba Add GLM-5 Turbo mythos artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 22:54:20 +01:00
Nagi-ovoandCodex 08f2fb4b7d Add GLM-5 Turbo pelican artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 22:49:09 +01:00
Nagi-ovoandCodex bfeba2bfbd Add GLM-5.2 pelican artifacts
Co-authored-by: Codex <codex@openai.com>
2026-06-14 22:35:12 +01:00
Nagi-ovoandCodex 2b85907eb3 Add Claude Haiku 4.5 artifacts
Co-authored-by: Codex <codex@openai.com>
2026-06-14 06:54:22 +01:00
Nagi-ovoandCodex 00226c3e70 Add Claude Sonnet 4.6 pelican variants
Co-authored-by: Codex <codex@openai.com>
2026-06-14 06:30:44 +01:00
Nagi-ovoandCodex c0d9952c28 Add Gemini 3.1 Pro Cursor pelican artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 01:32:04 +01:00
Nagi-ovoandCodex ac63b84938 Add GPT-5.4 Codex mythos artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 01:20:59 +01:00
Nagi-ovoandCodex 508d601dd3 Add MiniMax M2.7 pelican artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 01:16:44 +01:00
Nagi-ovoandCodex 6db97658b2 Generate registry tables from data
Co-authored-by: Codex <codex@openai.com>
2026-06-14 01:11:56 +01:00
Nagi-ovoandCodex a7b5d09658 Add M3 and K2.7 pelican variants
Co-authored-by: Codex <codex@openai.com>
2026-06-14 01:06:12 +01:00
Nagi-ovoandCodex f5d1f373c5 Add GPT-5.4 Codex pelican variants
Co-authored-by: Codex <codex@openai.com>
2026-06-14 01:01:49 +01:00
Nagi-ovoandCodex 4ceb49d8e1 Add Claude Sonnet 4.6 pelican artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 00:57:37 +01:00
Nagi-ovoandCodex f2208a562d Add Grok 4.3 pelican artifact
Co-authored-by: Codex <codex@openai.com>
2026-06-14 00:42:47 +01:00
Nagi-ovoandCodex 9391a32015 Clarify Cursor CLI provenance
Co-authored-by: Codex <codex@openai.com>
2026-06-14 00:35:10 +01:00
Nagi-ovoandCodex 4a5aad4a35 Add new Cursor artifacts
Co-authored-by: Codex <codex@openai.com>
2026-06-14 00:31:16 +01:00
Jesse Zhang 7a1571f46b Remove empty artifacts from Cursor runs 2026-06-14 00:16:49 +01:00
Jesse Zhang cb79f09c88 Fix Cursor run contributor handles 2026-06-13 20:52:31 +01:00
Jesse Zhang 3936cd26af Add Cursor runs for Claude and Gemini models 2026-06-13 19:24:46 +01:00
Jesse ZhangandClaude Opus 4.8 9bc21c2ace Add GLM-5.2 as a pending model
Zhipu AI's GLM-5.2 listed alongside GLM-5.1 as awaiting a contribution (no
runs yet). Added to both README pending lines.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 14:43:15 +01:00
Jesse ZhangandClaude Opus 4.8 8ece6b8941 README: Kimi K2.7-Code now 02 runs (mythos-craft added via #11)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 14:32:18 +01:00
Jesse Zhang a12017f31e Reorganize artifacts by model and harness 2026-06-13 12:59:01 +01:00
Jesse ZhangandClaude Opus 4.8 4027ba94c2 README: add Kimi K2.7-Code row to both registry tables
PR #9 added models/kimi-k2-7-code.json but not the README snapshot rows; sync
both zh + en tables (Moonshot AI · Kimi Code · Thinking · 01).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 11:59:00 +01:00
Jesse ZhangandClaude Opus 4.8 5f6a44aff7 Qwen3.7-Max: use the red-bike pelican variant
Swap pelican-cycling.svg to the red-bicycle one-shot version (with a pelican
side-profile study inset); drop the blue-bike variant so only the red one and
its matching mythos-craft.html remain. Note updated to mention the inset.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 11:52:38 +01:00
Jesse ZhangandClaude Opus 4.8 f21944db77 Add Qwen3.7-Max (Qoder) runs for both cases
One-shot, unmodified outputs for Qwen3.7-Max (Alibaba) run in Qoder, default
thinking; contributor Nagi-ovo.

- outputs/qwen3-7-max/mythos-craft.html — Three.js voxel world (chunked
  terrain, first-person controls, break/place, fantasy structures).
- outputs/qwen3-7-max/pelican-cycling.svg — hand-authored seaside SVG, pelican
  on a bicycle with a side-profile study inset.

Filenames normalized to the canonical case ids and the folder renamed to match
the model id (qwen3-7-max). Moved out of Pending in both README registries.
Validates: Data OK, 25 models.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 11:43:21 +01:00
Jesse ZhangandClaude Opus 4.8 dc9ad36359 Register Mistral Medium 3.5 × Vibe (Thinking)
Two one-shot runs generated in the Vibe web app (Mistral's renamed
Le Chat, Thinking enabled), contributed by Nagi-ovo.

mythos-craft is a fixed build (1 line changed): the world synchronously
built the full RENDER_DISTANCE=4 ring (9x9 = 81 chunks) on load, each
chunk doing an O(voxels x structures) linear scan over mythStructures
for all 16x16x128 voxels, so the main thread froze before the first
frame and the page never opened. RENDER_DISTANCE 4 -> 1 (a 3x3 = 9-chunk
first-screen load) lets it open at 60fps; terrain/visuals/gameplay are
the model's original output, otherwise unmodified. pelican-cycling is
unmodified. Both documented in the run notes; READMEs updated.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 23:53:16 +01:00
Jesse ZhangandClaude Opus 4.8 9b58bac621 Composer 2.5 Cursor "Fast": effort is Default, not a thinking budget
Cursor's Composer "Fast" is a serving tier (lower latency, higher cost, same
model intelligence) — not a reasoning-effort level. Drop the Fast/effort framing
entirely: effort is Default, notes just state a plain one-shot Composer 2.5 run.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-11 22:40:31 +01:00
Jesse ZhangandClaude Opus 4.8 df5a53a6b6 Composer 2.5 Fast: label is "Composer 2.5", "Fast" is the effort
The Cursor "Fast" run was registered as label "Composer 2.5 Fast" with effort
"Max" — contradictory, and it baked the speed mode into the model name. Per the
model x harness x effort convention (cf. the Grok Build TUI entry), the label is
just "Composer 2.5" and Fast is the effort, so it sits next to the Cursor · Max
entry as a thinking-budget comparison. Fixed the run notes to match, and synced
both README registry tables (which had also missed the Cursor · High Claude
Fable 5 entry from the prior merge).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-11 21:32:36 +01:00
Jesse ZhangandClaude Fable 5 44ebf586aa README: unlock the board at 3 total votes (was 3 per case)
Match the site change — the community leaderboard now unlocks after 3 votes
in any mix of cases, not 3 in each.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 20:01:08 +01:00
Jesse ZhangandClaude Fable 5 816fe537c3 README: add an AI-agent contribution callout to both languages
A blockquote at the top of the contributing section, addressed to coding
agents: states the unit (Agent = model × harness) and the id convention,
names the two current cases with cases.json as the verbatim-prompt source,
and explains how to find open slots from cases.json + models/*.json (and the
Registry "Runs" column) so it stays correct as contributions land.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 16:11:04 +01:00
Jesse ZhangandClaude Fable 5 0facc860b3 Set Composer 2.5 (Grok Build TUI) effort to Default, not blank
A missing effort reads as Max by the repo's "effort defaults to max"
convention; this run was the harness default, so set it explicitly to
"Default" and surface it in both README registry rows.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 16:00:39 +01:00
Jesse ZhangandClaude Fable 5 1857323b57 Frame the eval unit as an Agent (Model + Harness) in both READMEs
Lead the model-vs-harness section with the equation Model + Harness =
Agent (English equation + Chinese gloss): a model is just weights; wrapped
in a harness it becomes an agent that does the work, and that agent is the
unit this bench evaluates. Effort is reframed as a parameter of the agent.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 15:22:17 +01:00
Jesse ZhangandClaude Fable 5 debe4105a8 Register Composer 2.5 × Grok Build TUI; fix its MythiCraft enter-world crash
New Agent composer-2-5-grok-build (Composer 2.5 model in the Grok Build TUI
harness, contributor Nagi-ovo), two runs: mythos-craft + pelican-cycling.

mythos-craft fix (1 line): the WOOD block defines only top+side faces (no
bottom), but the atlas builder requests top/side/bottom for every block.
Fetching WOOD's bottom read t.bottom.image off undefined and threw a
TypeError at the top level of initTextures(), aborting init before the
"enter world" click listener attached — so clicking the start button did
nothing. getFaceImage now falls back to an existing face when one is
missing (bottom→top, the correct ring end-grain for a log). Verified in
headless Chrome: click now fires requestPointerLock and the overlay hides.

Artifacts renamed to the case-id convention; README registry rows synced
(Composer 2.5 now 3 runs across Cursor + Grok Build TUI).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 15:04:13 +01:00
Jesse ZhangandClaude Fable 5 c335473d93 Strip MiMo's embedded model name from its artifacts (blind-Arena identity leak)
MiMo v2.5 Pro's one-shot outputs wrote the model name into the browser
title, an on-screen "Generated by MiMo v2.5 Pro" caption, a console log
(mythos-craft.html) and a watermark text at the bottom of the SVG
(pelican-cycling.svg), which would reveal its identity during blind
Arena voting. Removed those identity strings; generation logic untouched.
Documented the surgical fix in both run notes. MiMo was the only entry
with a visible model-name leak.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 14:31:19 +01:00
Jesse ZhangandClaude Fable 5 48a8f54c6f Add social badges to the READMEs
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 00:08:54 +01:00
Jesse ZhangandClaude Fable 5 80a97bfe21 Regroup the registry tables by model, matching the site
One row per model with its harness x effort combinations listed
together; generated from models/*.json.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 23:54:55 +01:00
Jesse ZhangandClaude Fable 5 8acf16262f Rename Claude Code combination ids to the -cc suffix; refresh the Opus 4.8 mythos build
claude-fable-5-code -> claude-fable-5-cc, claude-opus-4-8 ->
claude-opus-4-8-cc (the entry id doubles as the outputs/ folder name).
The Opus mythos-craft artifact is a newer build of the same one-shot
provenance.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 23:07:51 +01:00
Jesse ZhangandClaude Fable 5 b42022e8ce Keep CLAUDE.md local-only
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 22:43:23 +01:00
Jesse ZhangandClaude Fable 5 42efab56e2 Register the Opus 4.8 mythos-craft run (Claude Code, Max)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 22:42:31 +01:00
Jesse ZhangandClaude Fable 5 664a7115c7 Become the data-only repo: site and worker move to private nagi-bench-site
The showcase app and the arena backend now live in the private
nagi-bench-site repo and deploy to Cloudflare Pages, fetching this
repo's models/, outputs/ and cases.json at build time. CI here is a
standalone data validation (same rules as before, no build), plus an
optional repository_dispatch that triggers an instant site rebuild when
SITE_DISPATCH_TOKEN is configured — otherwise the site's 6-hour cron
picks new data up.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 22:35:53 +01:00
Jesse ZhangandClaude Fable 5 ee081a4e34 Mirror case definitions at the repo root
cases.json is data (bilingual case definitions, maintainer-owned), so it
moves alongside models/ and outputs/; the site build will consume it
from here.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 22:23:32 +01:00
Jesse ZhangandClaude Fable 5 5694580fe4 Confirm Opus 4.8 provenance (Claude Code, Max); fresh Turnstile token per sync batch
Turnstile tokens are single-use — the old implementation memoized one
token forever, so every batch after the first would fail verification.
Each sync now runs a fresh invisible challenge, and vote syncing is
debounced 2.5s so rapid ballots coalesce into one batch + one challenge.
OG count 16 -> 17 ran.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 20:50:24 +01:00
Jesse ZhangandClaude Fable 5 4e4f801f1f Register the Opus 4.8 pelican (provenance TBD); ignore wrangler local state
The artifact landed unregistered which would fail CI's loose-file check;
note marks harness/effort as to-be-confirmed. worker/.wrangler/ cache is
local tooling and leaves the repo.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 20:39:03 +01:00
Jesse ZhangandClaude Fable 5 bf23fc4168 One ballot per matchup + rating-aware matchmaking; register Opus 4.8 as pending
Every (voter, case, pair) now gets exactly one vote: the client sampler
only draws matchups the browser hasn't voted on (with a graduation state
once all are spent, counter shows voted/total pairs), and the worker
normalizes pair order on insert under a unique (ip, case, pair) index so
side-swapping can't double-count. Daily IP cap drops 300 -> 200 since a
voter graduates at ~171 pairs today.

Matchmaking is now active rather than uniform: unvoted pairs are drawn
with weight closeness/(1+battles) — close ratings and under-played
matchups surface more, unrated combos get placement matches first — with
a 25% pure-exploration floor. Ratings come from the community pool (60s
cached) and fall back to local votes. Rankings stay Bradley-Terry.

Also registers the empty outputs/claude-opus-4-8/ folder as a pending
registry entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 20:38:10 +01:00
Jesse ZhangandClaude Fable 5 532985fbc3 Correct Kimi Code effort to Thinking; standardize worker docs on bunx
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 20:13:54 +01:00
Jesse ZhangandClaude Fable 5 6ea3916b83 Add Arena blind battles, model-grouped Demo Show, and a community leaderboard
Each case now defaults to Arena mode: two anonymous artifacts (identities
hidden, footers suppressed) battle via A / B / Neither, reveal after the
vote, with the same clip-reveal motion language as the rest of the site.
Demo Show replaces the per-combination tab strip with one tab per model;
multi-harness models get a harness switcher and a side-by-side compare,
so the lineup no longer bloats as harnesses multiply.

Votes live in lib/arena.ts (localStorage, custom event fan-out) and rank
via Bradley-Terry fits on pairwise wins, LMSYS Chatbot Arena style, with
'neither' surfaced as a both-bad rate. The #board section stays locked
until 3 votes are cast in each case (blind first, board after), then
shows your votes plus the ranking. When VITE_ARENA_API is configured the
store syncs to the zero-dependency Cloudflare Worker + D1 backend in
worker/ (Turnstile verification, per-IP daily caps, idempotent retries);
deploy steps live in worker/README.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 19:49:36 +01:00
Jesse ZhangandClaude Fable 5 844ab3b63f Split LpIuma's AI Studio Gemini runs into their own combinations; add PR template; register Kimi mythos run
Per PR #2's description those two pelicans were generated in Google AI
Studio, not AntiGravity — they move to gemini-3-1-pro-aistudio and
gemini-3-5-flash-aistudio entries (harness Google AI Studio, High).
XA2333's unknown-environment runs stay where they were, disclaimed in
their notes. Adds a bilingual PR template asking for harness/effort/
one-shot info up front, and registers the new Kimi K2.6 mythos-craft
artifact (16 combinations ran).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 19:10:55 +01:00
Jesse ZhangandClaude Fable 5 b7d3badc72 Add four pelican runs: Fable 5 (Claude Code), Grok Build, Kimi K2.6, MiniMax M3
Kimi K2.6 (Kimi Code, local) and MiniMax M3 (MiniMax Code web, Thinking
mode) graduate from pending to ran — 14 combinations ran. Harness icon
rules added for Kimi/MiniMax; READMEs and OG count updated.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 18:24:32 +01:00
Jesse ZhangandClaude Fable 5 b008398b82 Register the Claude Code x Fable 5 Max combination as its own entry
The minecraft.html artifact is Fable 5 Max run inside Claude Code — a
different harness from the existing Claude Web App entry, so per the
model x harness x effort architecture it becomes a new combination
(claude-fable-5-code) rather than a variant. The validator now also
rejects loose files under outputs/<id>/ that no run declares, which is
how this artifact briefly slipped into the repo unregistered. OG count
refreshed (11 -> 12 ran).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 16:56:45 +01:00
Jesse ZhangandClaude Fable 5 4da51805b3 Rename the Codex CLI entry's model label back to GPT-5.5
There is no "GPT-5.5 Codex" model — Codex is the harness. The entry is
GPT-5.5 run in Codex CLI at xhigh effort, which the harness and effort
fields already record; READMEs and code comments updated to match.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 16:35:13 +01:00
Jesse ZhangandClaude Fable 5 52135f4084 Enlarge reading type; add brand icons and per-run metadata chips
- Bump body text across the registry and case sections (notes, prompts,
  tabs, table cells) one size up for readability; SVG viewer no longer
  uses the full-bleed breakout and caps at a smaller height (HTML keeps
  the big frame).
- Brand icons for model, vendor and harness via @lobehub/icons-static-svg
  (zero-dep static assets; deliberately not the @lobehub/icons React
  package, whose peers pull in antd). Mono SVGs are currentColor so they
  follow the theme. Mapping lives in site/src/lib/brands.tsx, derived
  from the strings contributors already fill in models/*.json.
- Case pages now show Harness (with icon) and Effort chips next to the
  contributor chip; registry harness column is labeled 运行环境(Harness).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 13:44:16 +01:00
Jesse ZhangandClaude Fable 5 2e03012b74 Add GPT-5.5 Pro pelican run
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 13:07:50 +01:00
Jesse ZhangandDuJiabao 50ff7f945d Contributor credits, SVG prefetch, integrate Xiaomi MiMo from PR #4
- Runs gain a contributor field (GitHub username); the site renders an
  avatar chip linked to their profile next to each run's notes, and CI
  validates the field. All existing runs are attributed.
- SVG variants of a case are prefetched during idle time, so switching
  model tabs swaps images without a network hiccup.
- Xiaomi MiMo v2.5 Pro (Claude Code, max effort) integrated from PR #4
  with both case runs and provenance notes; README registry tables
  updated.

Co-authored-by: DuJiabao <Jiabao.du@Yunzhisun.com>
2026-06-10 13:03:01 +01:00
Jesse ZhangandClaude Fable 5 6e76858aad Model x harness x effort registry; bigger top-bar controls
Each entry is now explicitly a model x harness x effort combination:
models/*.json gains harness and effort fields, GPT-5.5 xhigh is
relabeled GPT-5.5 Codex (the harness distinguishes it from GPT-5.5
Pro), and the scrolling marquee is replaced by a readable registry
table (model / vendor / harness / effort / runs, pending rows dimmed)
with an explainer on the model-vs-harness relationship.

Top bar controls enlarged: segmented zh/EN switch and bordered 36px
icon buttons. README rewritten Chinese-first with a hand-maintained
registry snapshot table; README.en.md mirrors it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 12:09:09 +01:00
e87ef7e70f Integrate community pelican runs from PRs #2 and #3; run variants
A combination can now ship multiple versions of the same case:
runs.<case-id> accepts an array, each extra variant naming its own
file; the viewer grows a RUN 01/02 switcher and validation enforces
distinct files plus a provenance note per variant.

Integrated content, attributed to their authors:
- Gemini 3.1 Pro + 3.5 Flash pelican runs from both PRs, shown as two
  variants each (PR #2's Google AI Studio runs first, PR #3's second)
- Doubao Seed 2.0 Pro / Mini pelican runs (folders renamed to the
  dash-only convention)
- GPT-5.5 Codex pelican run

Co-authored-by: lpluma <liuyz2023@mails.jlu.edu.cn>
Co-authored-by: XA2333 <97206278+XA2333@users.noreply.github.com>
2026-06-10 12:09:09 +01:00
Jesse ZhangandClaude Fable 5 80817b8a2b Data-only contributions: per-model JSON registry, validation, PR CI
Contributors no longer touch site code. Model registration moves from
cases.ts literals to repo-root models/<model-id>.json files (filename =
model id = outputs/ folder); cases move to cases.json; cases.ts now just
derives MODELS/RUNS via import.meta.glob. Parallel PRs stop conflicting
because each model owns its own file.

scripts/validate-data.ts runs inside `bun run build` and a new PR CI
workflow: dash-only ids, required bilingual provenance note per run,
declared artifacts must exist, no orphan outputs/ dirs.

Also: run notes render whitespace-pre-wrap (multi-line notes, idea from
PR #2), README contribution guide rewritten around the JSON template,
CLAUDE.md updated, OG card refreshed for the DeepSeek merge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 11:48:18 +01:00
Jesse ZhangandClaude Fable 5 6f710ad413 Ignore local agent skills and skills lockfile
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 03:09:02 +01:00
Jesse ZhangandClaude Fable 5 cd2af84f34 Viewer polish, cursor fix, Grok rename + W/S fix, Composer G teleport
Site:
- Cursor follower fades out over iframes (it froze on top of running
  artifacts since iframes swallow pointer events) and when the pointer
  leaves the window
- HTML viewer: full-bleed width on xl screens (up to 90rem), height
  capped to 100dvh-10rem so the frame plus its action row always fits
  the viewport (big iframes ate wheel events and trapped page scroll),
  fullscreen button (overlay + footer action), and Run now auto-aligns
  the frame below the fixed header

Artifacts:
- grok-build: W/S were inverted against the forward vector (W walked
  backward); model label renamed to Grok Build
- composer-2-5: added G-key cycle teleport to its three generated
  landmarks (elven tower, dragon temple, sky ruins) with a start-screen
  hint - they were previously only reachable on foot; ground landmarks
  arrive 10 blocks out facing the structure, sky ruins land on the deck

Run notes updated accordingly.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 00:34:24 +01:00
Jesse ZhangandClaude Fable 5 37f4c8ae86 Fix Gemini 3.5 Flash atlas flip and GPT-5.5 xhigh movement mirror
- gemini-3-5-flash: ATLAS_COORDS and the canvas tiles share a top-origin
  row convention, but default flipY=true mirrored sampling (row r read
  row 3-r): grass tops became purple crystal, sides hit the alpha-holed
  portal/leaves tiles (the "transparent blocks"). flipY=false, 1 line.
- gpt-5-5-xhigh: movement Z component sign-flipped against the -Z
  camera convention, mirroring all motion across the X axis (A/D
  swapped facing +-X). Negated Z, 1 line.

Run notes now carry full provenance: GPT-5.5 Pro Extended Pro, Codex
CLI (no skills) for xhigh, AntiGravity high for both Geminis, and the
local Grok Build TUI.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 00:20:53 +01:00
Jesse ZhangandClaude Fable 5 54896103d8 Add GPT-5.5 Pro/xhigh and Gemini 3.5 Flash runs; fix three artifacts
Surgical fixes (originals preserved in history), each documented in the
per-model run notes as: where the bug is, pre-fix behavior, root cause,
with the shown build being the fixed one:
- grok-build: 0xAETHER invalid hex literal killed the script at parse
  time (pure black screen); atlas flipY mismatch made near terrain
  sample undrawn black texels. 2 lines.
- composer-2-5: horizontal movement multiplied dt twice, walking at
  ~1/60 design speed and making biomes effectively unreachable. 1 line.
- gpt-5-5-pro: 8x2 atlas rows swapped by default flipY, grass became
  obsidian and leaves/sand sampled undrawn slots. 1 line.

Gemini 3.5 Flash added as-is (color/transparency analysis next).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 00:12:24 +01:00
Jesse ZhangandClaude Fable 5 f0869f0670 Add Gemini 3.1 Pro, Grok and Composer 2.5 runs for Mythos Craft
Folders renamed to the outputs/<model-id>/<case-id>.html convention
(grok-build per request); model ids normalized to dash-only so they
double as folder names. Gemini 3.1 Pro, Grok and Composer 2.5 flip to
ran status with tabs wired up.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-09 23:50:48 +01:00
Jesse ZhangandClaude Fable 5 1e41d35e88 Move to bench.nagi.fun with simplified URL scheme
- Vite base '/' and root favicon for the custom domain
- Artifact paths normalized to outputs/<model-id>/<case-id>.<ext>
  (pelican SVG renamed); RUNS now derives the path by convention,
  with an optional file override
- Deep links: #<case-id> anchors a case, #<case-id>:<model-id> also
  preselects the model tab; tab clicks replaceState the hash so the
  current view is always shareable
- README documents the URL scheme and the legacy github.io 301s

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-09 22:53:35 +01:00
Jesse ZhangandClaude Fable 5 642bceb493 Serve from custom domain bench.nagi.fun (base: /)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-09 22:46:10 +01:00
Jesse ZhangandClaude Fable 5 06ba93a94b Initial release: NAGI BENCH eval showcase
One-shot LLM eval cases with a bilingual (zh/EN) showcase site:
Vite + React + Tailwind v4 + GSAP, built with bun, deployed to
GitHub Pages. Ships two Claude Fable 5 Max cases (Mythos Craft
voxel game, pelican-by-the-sea SVG) with placeholder slots for
GPT-5.1, Gemini 3 Pro, DeepSeek V3.2 and Qwen3 Max.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-09 22:20:15 +01:00