How we mark

Show your working.

Every case is a small, complete world: what could be wrong, how likely each is at the start, what every question or examination could show, what each finding does to the odds, and what each call is worth if you're right or wrong. From that, the marking works itself out. Nobody's opinion is in the loop.

Four steps

1. Every route

An exact solver walks every route the consultation could take inside the time you have, and works out what each question is worth against the best call you could make right now. It knows that two questions can be worth asking together when neither is alone.

2. Checked twice

A second, separate checker re-does the sums. If the two disagree, the mark is withheld rather than guessed.

3. The four verdicts

Your call is sound, also sound, depends (and we say on what), or can't say. Criticism is only ever given where the evidence supports it.

4. The working

Every mark comes with its working: the sealed case, your sealed answers, and the checker's result. Anyone can re-run it and get the same mark. Nobody has to take our word.

Why "enough" is the mark that matters

Most of the harm in general practice is not the wrong diagnosis. It is the test that could not have changed the plan, the referral made at a likelihood that did not justify it, the reassurance given at a likelihood that did not justify that either. The replay finds the moment you had enough to decide, and shows what came before it and what came after. Once you can see that moment, you start to feel it.

Check the working yourself

The marking engine is a separate piece of software, and it ships a verifier. Give it a case's working and it re-runs the mark in a fresh process, executing nothing from the file, and tells you whether it agrees:

python -m threshold verify working.json

The engine is the `threshold` package in Arcifact's core repository: 379 tests pass on every commit, and the showcase case checks out with 18 routes and 2,631 policies verified independently.

What we promise

  1. The patient can only say what is true in the case. Never a made-up finding.
  2. No language model marks you. Every mark is worked out exactly and can be worked out again by anyone.
  3. Every number in a scored case comes from a named source, or is labelled as a teaching number until one does. No model fills a gap.
  4. Every case ends with your route beside the best one, and one thing to take away.
  5. Uncertainty is the syllabus: when you have enough, what a test is for, where the line is.
  6. Every module has messy patients: more than one problem, presentations that don't read like the textbook.
  7. Your hit rate is kept for as long as you use it, and shown as a range, never as a single flattering number.
  8. You never write a reflection. We write it from what you did; you approve it or change it.
  9. Supervisors get the one page, built for the hour they actually have.
  10. Doctors who trained abroad get content built for the NHS they're joining, not remediation.
  11. Education only. No patient data, no clinical advice, not a medical device, by design.
  12. We publish how reliable our own marks are, and how we make them.

What we don't claim

That any of this makes you a better doctor. Not yet. The engine is exact; whether practising with it changes what you do in a real consultation is a study we will preregister before launch and report here, with the numbers. Every figure in the showcase case is a teaching number and is labelled as one on the numbers page; no case is scored for real until its numbers come from named sources and have been reviewed. The engine works at drill scale, a handful of questions and calls per case, which is exactly the scale of ten minutes a day.