OdysseysMega

I need help choosing a JavaScript chart libraryComputers Electronics and Technology

How each model performed on this task. Every chart states its N, and the reward carries a 95% confidence interval once there is more than one run to measure.

Core metrics

Check Pass %

Mean share of the task's checks passing, averaged over runs. N = 1 run per model.

  1. 100%

    Claude Opus 5.5

  2. 93%

    GPT-5.6 sol

  3. 43%

    GPT-6 sol

  4. 21%

    Claude Opus 5

Extended metrics

Median Time

Wall-clock minutes, median across runs. N = 1 run per model.

  1. 38m

    Claude Opus 5

  2. 25m

    GPT-5.6 sol

Tool Calls

Tool invocations, median across runs — counted from the trajectories. N = 1 run per model.

  1. 119

    Claude Opus 5

  2. 100

    Claude Opus 5.5

  3. 100

    GPT-6 sol

  4. 37

    GPT-5.6 sol

Verifier × model pass rate

How often each verifier passed, per model. Green is passing, red is failing — a red band across a row is a verifier nothing clears.

VerifierClaude Opus 5.5n=1GPT-6 soln=1GPT-5.6 soln=1Claude Opus 5n=1
checks (14)
100%100%100%100%

How to pass

Open https://cryptpad.fr/ and make a new document. Add headings for earthquake data, library evidence, accessibility, scoring, prototype plan, tests, comparison, recommendation and handoff. Put all research notes, evidence tables and test tables in this document unless a later step clearly says to place something inside a prototype.

100%100%100%100%

How to pass

Read the USGS GeoJSON guide at https://earthquake.usgs.gov/earthquakes/feed/v1.0/geojson.php and open the current all-month feed at https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/all_month.geojson. Sort the records from newest to oldest and keep the latest 500, or all records if there are fewer. Use a second CryptPad Code pad for JSON or CryptPad Sheet for CSV to save the exact sample and get its share link.

100%100%100%100%

How to pass

Verify that the saved sample preserves the USGS fields needed by the prototypes, including event time, magnitude, place, and geographic coordinates, without inventing replacements for null, absent, or malformed values. Confirm the full-feed record count and the number of records saved after sorting newest to oldest and applying the 500-record limit. In the Data section of the CryptPad research document, create a sample-details table containing the sample share link, feed access time, feed generation time, full-feed record count, saved-sample count, and the count or description of missing values for each prototype-relevant field. Treat the saved sample as fixed input for every later score, plan, prototype, and test.

100%0%100%0%

How to pass

In the library-evidence section of CryptPad, make a five-row table. Use these official documentation pages: Chart.js, https://www.chartjs.org/docs/latest/; D3, https://d3js.org/; Apache ECharts, https://echarts.apache.org/en/index.html; Plotly.js, https://plotly.com/javascript/; and Vega-Lite, https://vega.github.io/vega-lite/. Use these official repositories: Chart.js, https://github.com/chartjs/Chart.js; D3, https://github.com/d3/d3; Apache ECharts, https://github.com/apache/echarts; Plotly.js, https://github.com/plotly/plotly.js; and Vega-Lite, https://github.com/vega/vega-lite. Record all ten links in the table.

100%0%100%0%

How to pass

Add columns to the five-row CryptPad library-evidence table for current stable version, open-source licence, latest non-preview stable release date, evidence link, and research date. For version and release-date evidence, use an official project release page first where one clearly identifies the stable release, then GitHub Releases, then the newest clearly non-preview repository tag. Exclude alpha, beta, release-candidate, nightly, or other preview versions from the stable-release field. If the official documentation, release page, package/repository information, or newest stable tag differs, record the discrepancy below the table and explain which evidence was used and why rather than silently reconciling it.

100%0%100%0%

How to pass

Add feature columns to the same five-row CryptPad library-evidence table for free browser setup, time-magnitude scatter support, magnitude-band bar-chart support, data/filter updates, responsive behaviour, accessibility guidance, official examples, documentation quality, and suitability for use with the fixed USGS sample. Support factual feature findings with an official documentation or repository link in the relevant cell. Evaluate documentation quality using stated criteria such as whether browser setup is documented, required chart types have examples or API references, update/filter behaviour is explained, accessibility information is discoverable, and current examples correspond to the documented stable version. Record “not found in official documentation” rather than inferring unsupported capabilities.

100%0%100%0%

How to pass

Read the WCAG 2.2 quick reference at https://www.w3.org/WAI/WCAG22/quickref/ and the WAI complex-images tutorial at https://www.w3.org/WAI/tutorials/images/complex/. In the accessibility section of CryptPad, write a checklist for keyboard use, visible focus, colour, chart labels, a text alternative and the 360, 768 and 1280 pixel layouts.

100%0%100%0%

How to pass

In the Scoring section of CryptPad, create a 100-point table with one row per library and columns for accessibility (25), student clarity (20), charts and interaction (20), browser setup (15), sample performance (10), documentation and activity (10), total, and evidence-based reason. Before assigning scores, define a concise scoring rule for each criterion showing what evidence is required for high, medium, or low performance so that the point allocation is reproducible rather than impressionistic. Use the evidence collected in Steps 4–7 to score all five libraries and cite the relevant evidence for each material score. Rank all five libraries and select the top two finalists. If two totals are equal, rank the library with the higher accessibility score first. Keep missing evidence visible rather than automatically treating “not documented” as either full capability or proven absence.

100%100%100%0%

How to pass

In the Prototype Plan section of the CryptPad research document, create a two-column table with one column for each finalist. Define the common prototype specification before opening the browser editor. Both finalists must use the same frozen earthquake sample, total-count definition, magnitude-filter options and behaviour, time-versus-magnitude scatter-plot variables, magnitude-band definitions for the bar chart, 20-row table rule, wording, exactly three learning goals, exactly six glossary terms, units, USGS attribution, feed-generation time, sample access date, sample link, and overall page-layout structure. Record any library-specific implementation difference separately so it does not silently change the functionality being compared. Do not begin either prototype until this matched specification is complete.

100%100%100%0%

How to pass

Open JSFiddle or another free public HTML, CSS, and JavaScript editor that provides a shareable editor link and preview/result link without requiring creation of a new account for this task. Build a prototype using the first finalist and the exact specification defined in Step 9. Use the fixed earthquake sample and include the total count, magnitude filter, time-versus-magnitude scatter plot, magnitude-band bar chart, and table of the 20 most recent earthquakes according to the common table rule. Include exactly three learning goals, exactly six glossary terms, relevant units, USGS credit, feed-generation time, sample access date, and the fixed-sample link. Record both the editor link and preview/result link in the CryptPad research document.

100%100%100%0%

How to pass

In a separate project in the same browser editor where feasible, or another qualifying free public HTML/CSS/JavaScript editor if necessary, build the second finalist prototype using the exact matched specification from Step 9. Use the same fixed earthquake sample, total-count definition, magnitude filter, chart definitions, 20-row table rule, wording, exactly three learning goals, exactly six glossary terms, units, USGS credit, feed-generation time, sample access date, sample link, and page-layout structure used for the first prototype. Do not introduce additional features or different content that would advantage one finalist. Record the second editor link and preview/result link in CryptPad.

100%0%0%0%

How to pass

In the Tests section of CryptPad, create a table with columns for test, expected result, first prototype result, second prototype result, and fix made. Test both prototypes using the same procedure. Verify the unfiltered record count and use the same two explicitly recorded magnitude-filter settings for both prototypes. Check that the resulting chart data and 20-row table follow the matched rules. Also verify keyboard operation, visible focus, use of colour, chart labels and text alternative, layouts at 360, 768, and 1280 CSS pixels, exactly three learning goals, exactly six glossary terms, units, USGS attribution, feed-generation time, sample access date, sample link, other source links, and browser-console errors. Record the observed result for every check, fix every identified defect, and retest changed behaviour before marking the row complete.

100%0%100%0%

How to pass

In the Comparison section of CryptPad, create a table comparing the two finalists on setup, student clarity, accessibility, charts and interaction, responsiveness, observed performance with the fixed sample, documentation and maintainability. Use both the source-based research scores and the matched-prototype test evidence, and identify where the prototype evidence changes or qualifies the earlier research score. In the Recommendation section, name one winner and one backup with evidence-based reasons. Add at least one material limitation or uncertainty affecting the recommendation and explain what evidence or requirement could cause the choice to change.

100%0%100%0%

How to pass

In the Handoff section of CryptPad, create exactly six rows for: the CryptPad research-document share link, fixed-sample share link, first-prototype editor link, first-prototype preview/result link, second-prototype editor link, and second-prototype preview/result link. Add columns for resource, link, signed-out result, and access note. Open each of the six links in a signed-out browser session and record whether the intended content is accessible without an account, login, subscription, or payment. If any link cannot be made publicly accessible under the task constraints, record the limitation rather than claiming the handoff succeeded.

Failure modes on this task

20 tagged verifier failures, by the stage they were assigned to. Higher is worse.

Failure stageClaude Opus 5.5GPT-6 solGPT-5.6 solClaude Opus 5
Delivering the result1 mode—4—5
Standing up the evidence1 mode—413
No signal in the judge’s words1 mode · the grader———3