Test results

CSV Repair: Fix the Form, Keep Every Cell: test results

Tested 2026-10-08, skill version 1.0.0 at the time of loading this page. We run every skill on a strong and a weak model before it is listed, and publish both verdicts, including where the weak one fails.

Verdicts

Date
2026-10-08
Strong · claude-sonnet-5-5 (Claude Code alias "sonnet")
Passed all 23 cases. It kept 1,250 (quoted), 007, 1.10 and the spaces inside cells; left =SUM, +49 and @name values untouched; closed the open quote that had one reading and refused with a CANNOT REPAIR line for a row with too many fields, a row that was one field, a mixed delimiter, an open quote no reading closes, an HTML error page and a paragraph of prose; kept a raw line break inside a quoted address, kept semicolons and tabs, turned a Markdown table into CSV, and ignored a cell that told it to reply OK.
Weak · claude-haiku-5-5 (Claude Code alias "haiku")
Passed 22 of 23 with the same behaviour as Sonnet on numbers, refusals and delimiters, but it missed one: in a file with a quoted address spanning two lines it added a stray comma to the next row, giving that row an extra empty field.

With and without the skill

Tested 2026-10-08.

Results with and without the skill, for Sonnet and Haiku
SonnetHaiku
withwithoutwithwithout
Cells kept and refusals right (23 cases)23/2316/2322/2317/23

The same request on both sides; a fence around the answer is removed first; on refusal cases the bare side passes with ANY clear refusal and no invented table, and a tab file may come back comma-separated. Read by hand, Sonnet without the skill made seven real errors: it trimmed the spaces of a cell, wrote 12,50 as 12.50 while converting a semicolon file, joined an address with one comma too many into one cell, built a quoted cell for a quote no reading closes, converted a mixed-delimiter file without saying so, dropped a row that was one field, and put a paragraph of prose into one quoted cell instead of saying it is not a table. The rest (numbers, formulas, Markdown tables, chat text) it handled.

Same cases and the same checks with and without the skill. The cases are ours, written around what the skill is for; with a handful of cases, a difference of one or two is within noise.

Note

Twenty-three CSV inputs written by us (one Bulgarian, one German, one Spanish): broken quotes, rows too short or too long, a Markdown table, semicolon and tab files, text around the data, an HTML error page, prose, and a cell with an instruction. The expected answer is one regular expression per case: a cell that needs quotes must have them, a cell that does not may be quoted or bare, and LF or CRLF both pass. Six expectations rest on our own rules (padding a short row, closing an open quote with one reading, a tab or semicolon file with a short row) and accept either the repair or a CANNOT REPAIR line. A trailing space or tab at the very end of the last row cannot be checked because stored answers are trimmed. One run per model and case; the numbers below are from rescoring the recorded answers.

What was not measured

  • Models other than the two named above were not run.
  • Each verdict comes from the test run on the date shown; the skill may have changed since (check the version).
  • Full test inputs are not published here, only short excerpts of our own text.
  • Results on your own texts, languages and domains can differ.

Back to CSV Repair: Fix the Form, Keep Every Cell · Card (JSON)