The Day-100 Gauntlet
The rules of the Day-100 test, written down before it happens. A blind, beginner-level quiz across five capability areas, graded on a published syllabus. The operator is not telling us the questions — only the level. If it's on W3Schools, it may or may not be fair game.
The operator is not telling us the questions. Only the level, and roughly the shape. “If it’s on W3Schools… it may or may not be fair game.”
Day 100 is a blind quiz. No question list, no warning, no chance to tune against the test. The only thing declared in advance is the difficulty — self-taught beginner — and the five areas the questions come from.
This page exists so the rules are on record before the test rather than reconstructed after it.
The five areas
| area | what it means |
|---|---|
| facts | “what is a closure?” — answer from the owned card libraries, cite, or abstain |
| code gen | “make a for loop that is 21 long” — write it, run it, show the output |
| fix my code | “why doesnt my link work.. <a src="/about">about</a>” — repair their snippet |
| talking | ordinary conversation, from the owned weights, at conversational speed |
| tools | “what is tailwind css?” — search, cite the source, and say that’s what happened |
The rules
1. The questions are unknown. Which means coverage matters more than accuracy. Scoring 100% on a fixture we authored proves nothing about a fixture we didn’t. Every number on this site that comes from a set we wrote is labelled as such.
2. Beginner level. Not “implement a red-black tree.” The actual distribution is the published
beginner curriculum — headings, links, images, lists, tables, forms, the box model, let vs var.
That distribution is enumerable, which is the single most useful fact about this test.
3. W3Schools is the syllabus, not the answer key. “May or may not be fair game” is the honest version: the topics are a fair guide to the shape of what’s coming, and no guarantee about any specific question.
4. The scope line, drawn explicitly. “Beginner” was doing too much work in the sentence above, so here it is concretely. A fair ask is one a self-taught person hits in their first weeks:
| fair game | out of scope |
|---|---|
"can you center my text? <div>text</div>" | "why don't my signals work in Angular?" |
| inline styles, a class, a colour, padding | BEM naming conventions |
| plain CSS rules | SCSS @mixin, nesting, @extend |
let vs var, == vs === | module bundlers, build config |
| a for loop, an if/else, an array method | frameworks, reactivity, state management |
“Angular is way harder than basic HTML or CSS — like not even BEM convention or @mixins. That
would be more advanced than what we are trying to do on Day 100.”
This matters because it changes what gets built. A tier aimed at BEM and mixins would be a tier that answers nothing a beginner asks. The line is drawn at the first few weeks of W3Schools, and anything past it should abstain rather than guess — an honest “I don’t know Angular” is a correct answer here, not a failure.
5. Misspellings count. “can you chnag emy styling on my div?” is a real message. A matcher that needs correct spelling fails on real input, so typo tolerance is part of the task and not a bonus.
6. The comparison is llama3.2:3b. Same questions, same grader, no allowances. Beating a 3B at
beginner-level coding is the bar. Not beating a frontier model; not beating a 14B.
7. An abstain is a legal answer. “I don’t know” scores better than a confident wrong answer, and the whole system is built that way. A wrong fix to working code is the worst possible outcome.
Where it stands, 22 days out
Measured, on a fixture we wrote — so read it as an upper bound:
code gen / fix / modify 26/26 0.1ms owned, no model in the answer path
llama3.2:3b, same asks 16/26 14,215ms
Honest coverage against the beginner syllabus — 24 topics, 58 distinct asks:
covered 6
partial 8
NOT COVERED 10 <- the real exposure
Uncovered, largest first: HTML Tables · HTML Forms · HTML Semantics · JS Strings · JS DOM · JS Variables · JS Functions · JS Conditionals. (CSS Text, Colors and Display closed on Day 79.)
And the weakest area is not code at all — it is explain. Asked “when to use let vs var” the
card libraries return a code snippet rather than an explanation, because 10,454 graded JavaScript
cards answer “what does this code do?” and the question is “when do I use this?” Those are
different card types. On that one area a 3B probably wins today, and saying so now is cheaper than
discovering it on the day.
What we are deliberately not building yet
The interesting version of the tools area is search → learn → then USE what was learned:
"i dont know tailwind" -> scan -> learn -> "import the CDN in <head>, and that margin
you wanted is class='mt-3'"
Step four — applying vocabulary learned seconds ago to the user’s actual code — is scoped as a Day-150 feature. It is by far the most interesting item on the list, which is exactly why it is the most dangerous one to start: failing three beginner asks while building frontier-level learning would be the wrong trade. Coverage of a published syllabus is what a blind beginner test measures.
Why the test is shaped this way
A benchmark you can see in advance measures how well you tuned. A blind one measures whether the thing works. Every result on this site that came from a set we authored has been wrong at least once in a way the authoring hid — a metric that ranked four models backwards, an OOD detector fitted to six probes, a rubric that punished a 3B for writing paragraphs. The only honest way to find the next one of those is to be quizzed on questions we did not write.