Research · Fluency Bench
How the AI fluency test works - and why you can check our math.
Every non-technical job posting says “AI fluency required” and nobody can check it. Fluency Bench is a timed, three-round work-sample test of about 90 minutes. The output is not a score - it is an artifact: the candidate's actual submissions, the rubric they were graded against, and where the graders disagreed. This page publishes the whole instrument: what it measures, the full rubric with its scoring anchors, how much of the grade is computed by plain code against authored ground truth, and what the test deliberately does not claim yet.
Construct
Six things get measured - each visible in a work product
Nothing here is inferred from a questionnaire. Every dimension shows up in something the candidate actually produced under time pressure. Not measured, on purpose: model trivia, release dates, the ability to define “transformer,” and coding - those decay in months and screen for the wrong population.
D1 Specification
Turns a vague request into an unambiguous task with audience, constraints, and a definition of done.
D2 Context engineering
Gives the model the right source material and nothing else; quotes rather than paraphrases.
D3 Verification
Catches what the model got wrong; does not ship a plausible number.
D4 Iteration
Diagnoses why an output failed and changes the cause, not the adjectives.
D5 Cost & model judgment
Matches model and context size to what the task is worth.
D6 Systems
Turns a one-off into something a teammate can run, with a rubric and an escape hatch.
Format
Three rounds, weighted toward the least fakeable
Round 1 - The Brief · 30 min · 30% of the composite
A deliberately underspecified request from a colleague plus a messy source packet - a buried data distortion, a high-noise source, and one theme that is real but irrelevant to the decision. The candidate ships a deliverable, and a 120-word note on what they decided the ask really was.
Round 2 - The Catch · 25 min · 30% of the composite
A finished, confident, AI-generated memo with defects seeded in it - fabricated facts, misread sources, unsupported inferences - alongside true-but-suspicious decoys. Flag what you would not sign, prove each flag from the sources, decide send or hold, inside a token budget.
Round 3 - The System · 35 min · 40% of the composite
Build the process a new hire could run on day one, under a cost ceiling per item - then actually run it. Three of the visible test cases are adversarial by construction, and the score comes from twenty more cases the candidate never sees.
Round 3 carries the most weight because it is the closest to the actual job and the hardest to fake: the grade depends on what the candidate's system actually did when executed, not on how the design reads.
Rubric
The full rubric, public before you start
Four anchored levels everywhere - 3 distinctive, 2 solid, 1 recoverable, 0 fail - defined per criterion, never generically. What follows is rendered from the same constants the scoring code executes, so this page cannot drift from the implementation. Studying it and coming back better is not cheating; it is learning the construct, which is the point.
Round 1 - The Brief (30%)
C1.1 - Resolves the ambiguity · D1 · 25% · panel-scored
- 0 - Answers the literal question ("why people churned") with no audience or decision in mind
- 1 - Names the audience but not what the board is deciding
- 2 - States audience, decision, and what is out of scope, and the deliverable matches
- 3 - Also flags the one thing Dana asked for that would mislead the board, and says so in the note
C1.2 - Grounds in the source packet · D2 · 25% · panel-scored
- 0 - Prompts from memory; sources unused
- 1 - Pastes everything into one prompt, including the irrelevant CSV columns
- 2 - Selects the relevant subset, passes it structured, asks for citations
- 3 - Splits the work: extraction pass over tickets, then synthesis over the extraction, so nothing is summarized twice
C1.3 - Claim integrity · D3 · 20% · panel-scored
- 0 - Ships at least one number or quote not present in the sources
- 1 - All claims traceable but uncited
- 2 - Every number cited to a ticket ID or CSV row and correct on spot-check
- 3 - Also states the confidence limit ("42 tickets is not the churn population")
C1.4 - Iteration quality · D4 · 20% · panel-scored
- 0 - Same prompt resent verbatim, or full rewrite each time with no diagnosis
- 1 - Retries with vague "make it better" instructions
- 2 - Each retry changes one identified failure cause
- 3 - Fixes it by changing the input or the task decomposition rather than by adding adjectives
C1.5 - Deliverable fitness · D1 · 10% · panel-scored
- 0 - Wall of prose
- 1 - Right content, wrong format for a board slide
- 2 - Format, length, and tone fit the stated audience
- 3 - Fits, and is shorter than the model's default output because the candidate cut
Round 2 - The Catch (30%)
C2.1 - Critical defect recall · D3 · 40% · machine-scored
- 0 - Fewer than 3 of the 6 critical defects flagged
- 1 - 3-4 of 6 flagged
- 2 - 5 of 6 flagged
- 3 - All 6 critical defects flagged, each with the span
C2.2 - Precision · D3 · 20% · machine-scored
- 0 - 4 or more false flags on decoys or clean spans
- 1 - 2-3 false flags
- 2 - 1 false flag
- 3 - Zero false flags - every flag lands on a real defect
C2.3 - Proof, not vibes · D3 · 15% · panel-scored
- 0 - Flags carry no source evidence at all
- 1 - Some flags cite sources; most assert without proof
- 2 - Most flags cite the source line that establishes the error
- 3 - Every flag cites the exact source line, quoted or precisely located
C2.4 - Fix quality · D3 · 10% · panel-scored
- 0 - Fixes introduce new unsupported claims
- 1 - Fixes are directionally right but imprecise
- 2 - Corrections are accurate against the sources
- 3 - Corrections are accurate and scoped - cut what cannot be said rather than replaced with guesses
C2.5 - Budget discipline · D5 · 15% · machine-scored
- 0 - Budget spent and critical defects missed
- 1 - Over the 40k budget, though defects found
- 2 - All critical defects found under 40k tokens
- 3 - All critical defects found under 15k tokens
Round 3 - The System (40%)
C3.1 - Transferability · D6 · 20% · panel-scored
- 0 - Instruction only works if you already know the answer
- 1 - Works for the author, assumes unstated context
- 2 - A new hire could run it unaided
- 3 - Also states what the system is not for
C3.2 - Rubric quality · D6 · 20% · panel-scored
- 0 - No rubric, or "high quality output"
- 1 - Criteria named but not defined; two graders would disagree
- 2 - Criteria with observable definitions and at least one boundary case
- 3 - Includes a case the rubric deliberately refuses to decide, and says who decides it
C3.3 - Handles the three hard cases · D6 · 25% · machine-scored
- 0 - All three processed as normal leads
- 1 - One caught, by luck rather than by rule
- 2 - Two or three caught, and the rule that caught them is in the written spec
- 3 - Caught, and the escape hatch routes each to the right human with the right context
C3.4 - Cost model · D5 · 20% · machine-scored
- 0 - No cost estimate, or off by more than 5x
- 1 - Estimate present, arithmetic wrong or model choice unjustified
- 2 - Per-item cost within 25% of measured, under the ceiling
- 3 - Two-tier design: cheap model handles the common case, the expensive model is called only on cases that earn it
C3.5 - Failure honesty · D6 · 15% · panel-scored
- 0 - Claims the system handles everything
- 1 - Generic "review outputs regularly"
- 2 - Names specific failure modes and what happens when they occur
- 3 - Names the failure mode the candidate could not solve in 35 minutes and what they would do with a day
Scoring
Plain code first, judges only where judgment is real
Every criterion marked machine-scored above is computed by deterministic code against hand-authored ground truth: defect recall and precision against seeded spans, token budgets from verified usage records, adversarial-case detection from actual run outputs, cost arithmetic from measured usage. That part of the grade never drifts and costs nothing to run.
The criteria that genuinely need judgment go to a blind panel of three fixed seats. Each seat has a conflicting objective rather than a persona, because objectives make disagreement informative:
literalist
Grade ONLY what the rubric text says. If the anchor's condition is not literally met in the submission, the level is not earned - no charitable reading, no credit for intent.
skeptic
Assume every claim is wrong until the submission itself proves it. Your question on every criterion: is the evidence actually there? Prefer the lower level when proof is missing.
hiring_manager
You are deciding whether to hand this person real work. Grade what the submission tells you about how they would perform on the job, using the anchors as the scale.
Seats grade blind - the submission, the rubric, nothing else - and the final level per criterion is the seat median. When seats disagree by two or more levels, the disagreement is printed on the report, not averaged away. If the panel is unavailable, panel criteria are excluded and weights renormalise: infrastructure trouble neither punishes nor inflates a candidate. The panel never grants the top levels of the objective criteria - those are earned deterministically or not at all.
Generalization
The held-out run: cases the candidate never sees
Round 3's score does not come from the eight cases the candidate watched. At scoring time their system runs server-side against twenty more: twelve normal, five hard-but-fair boundary cases a good written rubric decides, and three adversarial cases from the same families as the visible traps - one defeats keyword matching, one defeats trusting stated intent, one defeats assuming the model will notice - with different surface content.
The gap between visible-set and held-out accuracy is printed on the report as overfit_delta. A candidate who hand-tuned their prompts to the visible cases sees it collapse in public. It is the closest thing in the test to a train/test split: the instrument runs a stranger's AI workflow against cases they never saw and scores what actually came out.
Results
Bands, and the two rules that override them
| band | composite | what it means |
|---|---|---|
| 4 - Builds systems | 80-100 | Can hand a repeatable AI workflow to a team and be right about what it costs and where it breaks. |
| 3 - Trustworthy operator | 62-79 | Produces work you can ship without re-checking every claim. |
| 2 - Productive with supervision | 42-61 | Gets real leverage; still ships the occasional fabricated number. |
| 1 - Beginner | 0-41 | Uses AI as a search box with opinions. |
Two hard caps override the composite, because the employer's real question is not “how good” but “will this person hand me something wrong with a straight face”: shipping a fabricated fact in Round 2 without flagging it caps the report at band 2, and missing all three adversarial cases in Round 3 caps it at band 2. Both are printed on the report by name - never folded silently into the number.
Integrity
AI use is the subject, so the test watches the work, not the person
The strongest integrity instrument is the reflective note: 120 words, written in-workspace with paste disabled, on what the candidate decided the ask really was. Someone who did not do the work cannot write it in sixty seconds, and a clean transcript with a note describing a different journey is the signature. The full workspace transcript - every prompt, every model choice, every token, dead ends included - is part of the submission and appears on the report.
The Round 2 decoys - true facts that read as implausible - mean flagging everything scores badly: the round rewards verification, not suspicion. No integrity signal changes a score on its own; every flag routes to a human, and the candidate is told a review happened. No demographic data is collected, and there is no video, face, or keystroke-derived inference anywhere in the product.
Limitations
What this version does not claim
- One form. One item per round. Deterministic multi-form assignment, retake spacing, and cross-form equating are designed but not live.
- The panel is not yet calibrated. The target is agreement with hand-graded submissions before a form ships (quadratic-weighted kappa ≥ 0.75); that calibration set does not exist yet, and until it does the deterministic majority of the grade is the part to trust most.
- Three seats, one to three model families. The spec calls for seats spread across model families because judges favor output from their own family; seat models are configurable per family but may run on one in a given deployment.
- Not for employment decisions yet. A test used to screen candidates is a selection procedure with legal obligations attached. Until an independent bias audit exists, results are candidate-owned artifacts: the report belongs to the person who took the test, is private by default, and is shared only by their action.