mirror of
https://github.com/pbakaus/impeccable.git
synced 2026-09-14 07:06:45 +03:00
Records stdout/stderr/exit/files for every impeccable verb over a fixed corpus and replays them against an alternate implementation. Adds a loader hook that captures per-function call vectors from the pure engine modules. Prepared with AI assistance (Claude Code).
8 lines
3.0 KiB
JSON
8 lines
3.0 KiB
JSON
{
|
|
"stdout": "[\n {\n \"antipattern\": \"tight-leading\",\n \"name\": \"Tight line height\",\n \"description\": \"Line height below 1.3x the font size makes multi-line text hard to read. Use 1.5 to 1.7 for body text so lines have room to breathe.\",\n \"severity\": \"warning\",\n \"category\": \"quality\",\n \"file\": \"<REPO>/tests/fixtures/antipatterns/typography.html\",\n \"line\": 0,\n \"snippet\": \"line-height 1.05x (need >=1.3)\"\n },\n {\n \"antipattern\": \"tiny-text\",\n \"name\": \"Tiny body text\",\n \"description\": \"Body text below 12px is hard to read, especially on high-DPI screens. Use at least 14px for body content, 16px is ideal.\",\n \"severity\": \"warning\",\n \"category\": \"quality\",\n \"file\": \"<REPO>/tests/fixtures/antipatterns/typography.html\",\n \"line\": 0,\n \"snippet\": \"10px body text\"\n },\n {\n \"antipattern\": \"all-caps-body\",\n \"name\": \"All-caps body text\",\n \"description\": \"Long passages in uppercase are hard to read. We recognize words by shape (ascenders and descenders), which all-caps removes. Reserve uppercase for short labels and headings.\",\n \"severity\": \"warning\",\n \"category\": \"quality\",\n \"file\": \"<REPO>/tests/fixtures/antipatterns/typography.html\",\n \"line\": 0,\n \"snippet\": \"text-transform: uppercase on 159 chars of body text\"\n },\n {\n \"antipattern\": \"wide-tracking\",\n \"name\": \"Wide letter spacing on body text\",\n \"description\": \"Letter spacing above 0.05em on body text disrupts natural character groupings and slows reading. Reserve wide tracking for short uppercase labels only.\",\n \"severity\": \"warning\",\n \"category\": \"quality\",\n \"file\": \"<REPO>/tests/fixtures/antipatterns/typography.html\",\n \"line\": 0,\n \"snippet\": \"letter-spacing: 0.08em on body text\"\n },\n {\n \"antipattern\": \"justified-text\",\n \"name\": \"Justified text\",\n \"description\": \"Justified text without hyphenation creates uneven word spacing (\\\"rivers of white\\\"). Use text-align: left for body text, or enable hyphens: auto if you must justify.\",\n \"severity\": \"warning\",\n \"category\": \"quality\",\n \"file\": \"<REPO>/tests/fixtures/antipatterns/typography.html\",\n \"line\": 0,\n \"snippet\": \"text-align: justify without hyphens: auto\"\n },\n {\n \"antipattern\": \"overused-font\",\n \"name\": \"Overused font\",\n \"description\": \"Inter, Roboto, Fraunces, Geist, Plus Jakarta Sans, and Space Grotesk are used on so many sites they no longer feel distinctive. Each new wave of AI-generated UIs converges on the same handful of faces. Choose a face that gives your interface personality.\",\n \"severity\": \"warning\",\n \"category\": \"slop\",\n \"file\": \"<REPO>/tests/fixtures/antipatterns/typography.html\",\n \"line\": 0,\n \"snippet\": \"Primary font: inter\"\n }\n]\n",
|
|
"stderr": "",
|
|
"exit": 2,
|
|
"signal": null,
|
|
"files": {}
|
|
}
|