DAREBench / DEPLOY.md
Ameame1002's picture
DAREBench project page (arXiv 2609.06059v1)
d879501 verified
|
Raw History Blame Contribute Delete
9.26 kB

DAREBench project page

The official project page for DAREBench: Deployment-Aware and Reliable Evaluation of Models as Agents (arXiv 2609.06059, code SeerRay-Lab/DareBench).

It is a static site: HTML, CSS and plain JavaScript, with no build step, no framework and no network dependencies. Fonts are bundled, so the page renders fully offline (and from mainland China).

This folder is the Hugging Face Space SeerRay-Lab/DAREBench. It is generated from the page's source folder homepage/site/ by huggingface/_build/build_space.py; this file is that folder's README.md, renamed so that it does not replace the Space card. Paths such as ../tools/ below are relative to homepage/site/.

Preview

  • Open index.html directly in a browser. It works over file://: scripts are classic <script src> tags, data comes from a global (window.DARE) rather than fetch(), and there are no ES-module imports.
  • Or serve the folder: python3 -m http.server 8000 in this directory, then open http://localhost:8000.

Deploy

This folder is deployed as a Hugging Face static Space: SeerRay-Lab/DAREBench. Hugging Face serves the files at https://seerray-lab-darebench.static.hf.space/ and shows that page inside the Space. Upload the whole folder as the Space repo root, e.g. from this folder: hf repos create SeerRay-Lab/DAREBench --repo-type space --space-sdk static, then hf upload SeerRay-Lab/DAREBench . . --repo-type space (or git push to the Space repo). Nothing here needs a build step.

What differs from the source folder homepage/site/ (all applied by build_space.py; do not edit this folder by hand: change the source or the script and rebuild):

  • README.md is the Space card: its YAML front matter holds the Space settings (sdk: static, app_file: index.html, title, emoji, colours, tags, linked dataset).
  • .gitattributes stores images, fonts and other binaries with Git LFS (the Hub rejects binaries committed as plain Git objects).
  • index.html: the social preview images (og:image, twitter:image) are absolute (https://seerray-lab-darebench.static.hf.space/assets/img/social-card.png) and <link rel="canonical"> points to the Space page. (The Hugging Face dataset links in the hero, cite and footer rows are part of the source page itself.)
  • Hugging Face embeds the page in a sandboxed frame that cannot navigate the whole window, and sites such as GitHub refuse to be framed, so a small script in index.html opens links to other sites in a new tab, only while the page is framed.
  • _shots/ (review screenshots) is left out.

The same files also work on any other static host (GitHub Pages, Netlify, an nginx folder, ...). There, change the absolute og:image / twitter:image URLs and the canonical URL in index.html to the new address; crawlers ignore relative image URLs.

Layout

index.html                  page skeleton (no data digits in static text), SVG sprite and mascot inline
assets/data/data.js         window.DARE: every number, name and paper text shown on the page
assets/js/util.js           helpers: DOM builder, tooltips, radiogroups, roving focus, copy, lightbox
assets/js/content.js        hero, motivation, overview, findings, case study, cite, footer
assets/js/workloads.js      2x3 workload matrix, source benchmarks, task explorer
assets/js/leaderboard.js    Table 1 leaderboard (Full / Text track, API / Local filter, sorting)
assets/js/cost.js           Fig. 1 accuracy-cost scatter and the tokens-vs-dollars chart (Table 2)
assets/js/reliability.js    evidence-based audit, hallucination patterns (Table 3), Figs. 5-6, taxonomy
assets/js/quickstart.js     README quick start, tools used in the paper, task-file anatomy
assets/js/main.js           boot: each section renders inside its own try/catch
assets/css/palette.css      validated color tokens (data colors, surfaces, status)
assets/css/style.css        the "underwater storybook" skin and all components
assets/fonts/               self-hosted woff2 (SIL OFL 1.1, licenses in licenses/)
assets/img/                 paper figures, task images (img/examples/), favicon.svg, social-card.png

Updating numbers

All numbers come from assets/data/data.js. The paper is the single source of truth.

  1. Edit assets/data/data.js (or regenerate it with the data builder and copy it here). The comment header at the top documents every key. Keep data.js a plain window.DARE = {...}; assignment.
  2. Do not type numbers into index.html or the JS modules. Charts, tables, tiles and prose read their values from window.DARE; derived values (for example an Overall accuracy the paper does not tabulate) use the paper's own definition and are labelled as derived on the page. Overall = the paper's prose value where it states one, otherwise (162 × Table 1 Text Avg + 71 × MM Avg) / 233 (Eq. 11); this form reproduces all 9 prose-stated Overalls. The round-1 QA patch that sets this (and withholds the task-file rubric) is homepage/tools/data_build/patch_data_r1.py; the round-2 patch homepage/tools/data_build/patch_data_r2.py keeps the example tasks disjoint from the tasks shown in the paper figures on the page (Fig. 3 = task_agentvista_00, Fig. 5 = task_simplevqa_07, Fig. 6 = task_tablebench_10, whose answers those figures show). The data builder re-applies both after every build. An English rendering of a Chinese prompt that the paper does not give is stored as englishTranslation and labelled "our translation" (englishGloss is reserved for wording quoted from the paper).
  3. Paper-vs-code mismatches go into discrepancies in data.js. That list is never displayed.
  4. Re-run the checks below.

Figures referenced by data.js (for example img/overview.png) resolve under assets/.

Checks

The review tools live next to this folder, in ../tools/ (Node + Playwright Chromium; they are not part of the deploy):

Command What it checks
node ../tools/smoke.cjs 101 interaction checks: leaderboard tracks/filters/sorting/medals and the compact (overflowing) layout, workload matrix, table views, scatter and keyboard navigation, keyboard tooltips, focus rings, accessible names, lightbox, copy buttons, mobile menu (incl. focus leaving it), the Pause animations button, reduced motion, no horizontal overflow at 360–1920 px, zero console errors; round-2 regressions (no example task shown in an on-page figure, slim phone leaderboard, focused sort buttons never hidden under the sticky column, text-only notice inside the visible table, sources table scrolls in its card); round-3 regressions (every chart table view on a 390 px phone is a named, focusable region with its caption outside the scroller, a swipe hint while it overflows and arrow-key scrolling to the last column; a pixel diff shows the hero kelp never paints over hero text at 1024–1280 px, at rest or at either end of its sway)
node ../tools/numbers.cjs static HTML has no digits in visible text; every number rendered on the page traces back to data.js
node ../tools/labels.cjs scatter: every point is named or numbered (numbers are keyed under the chart) at every width; no label/label, label/point or label/tick overlaps; every name or number sits closer to its own dot than to any other, and a name next to its dot never runs over another dot that is nearer its centre
node ../tools/audit.cjs real file:// policy: fonts load, no external requests, WCAG AA text contrast, focus indicators, headings, landmarks, page weight
node ../tools/shoot.cjs <dir> --full desktop (1440) and mobile (390) section screenshots, plus a full-page capture
python3 ../tools/make-social-card.py rebuilds assets/img/social-card.png (1200x630) from the page's own art and data

Browser support and accessibility notes

  • Tested in Chromium (desktop and mobile widths, real file:// policy). Fonts load from assets/fonts/fonts.css. Firefox gives every file:// page its own origin and may refuse web fonts loaded from files, so a small inline script in <head> switches to assets/fonts/fonts.inline.css (the same fonts as data URIs) only when the page is opened from disk in Firefox. Served over http(s), every browser uses the woff2 files.
  • Light theme only. Every chart has a hover and keyboard-focus tooltip and a table view; charts use one Tab stop with arrow-key navigation (the leaderboard is a real table: its cell tooltips repeat what the headers, crowns, ◆ marks and footnotes already show). All ambient motion stops under prefers-reduced-motion, pauses when off screen, and can be paused with the "Pause animations" button in the hero (remembered in localStorage).

Credits

Illustrations (the lobster evaluator and the sea creatures) are original SVG art made for this page. Figures 1, 2, 3, 5 and 6 are reproduced from the paper (Fig. 4 and the appendix case images are not used on the page). The page acknowledges OpenClaw and the 22 source benchmarks.