The lead scorecard
The app scores every crew lead every day and shows you the numbers: on the Overseers hub's All missions screen each live lead gets a row for the day — moves per turn, how its turns were woken, whether it wrote code itself, its spend beside its helpers', its promises and tasks, and how long its promises have been open — with the fleet median printed beside every number, and any lead the app could not score named rather than left out. The same block rides the evidence a reviewer sees.
What it is
Every crew lead — the crew's Overseer and each foreman under it — is scored by the app, one row per lead per day, on the numbers that say whether the mission moved rather than whether the lead looked busy. You read it on the Overseers hub → All missions screen, under the hub's to-do list.
What a row tells you
- Moves per turn — a move is a deliverable advanced, a task landed or a helper taken on. Notes and status lines are not moves.
- How its turns were woken — by its own crew, by the app's schedule, or from outside its machinery. Those are three different situations and they are never added together.
- Build-shaped turns — turns where the lead itself edited a file or ran a command that changes the repository. This is the number that goes UP when a lead does the work instead of running it, so it is read as a caution, not a score.
- Spend, split — the lead's own spend and the spend of the helpers it directly runs are separate, so a lead is never charged for its helpers' work or credited with it.
- Promises and tasks — how many carry a done test, how many that test proved, and how many closed. Coverage and pass rate are derived from those counts.
- Age — how long its promises have been open, how long a delivered one took, and how many times you had to be the one to speak.
The median beside every number
Each number is printed beside the same column's median across the live leads, so you read a lead against its peers rather than in isolation. The line also says how many leads that median was taken over. An empty fleet prints no median at all rather than a zero, because a zero would read as a bar every lead is failing.
Two clocks on the promise line
The promise line counts two different things and says which is which. "Delivered on this day" is the scored day's closings; "standing", "carry a done test" and "proven" count the crew's promises as they stand, all time. So proven can be larger than delivered without anything being wrong — a crew can have many promises whose check currently passes while only a few closed today. Anything that adds these numbers up across leads has to count each crew once, because every lead in a crew carries the same crew-wide promise facts.
When a number is missing
A day the app could not read part of is written INCOMPLETE and names the columns it could not read — the numbers under it are not a score, and the app says so rather than showing a zero. A lead holding no row for the day is named underneath the section, so a lead that was never scored is visible instead of quietly absent.
Where else you meet it
- A reviewer's evidence pack carries the reviewed lead's row, labelled as measured by the app.
GET /crew/scorecardreturns every live lead's row for a day, for scripts and for a lead's own wake record.
Where it is written down
.claude/memory/contracts/crew-lead-scorecard-contract.md— the invariants..claude/memory/agent-crew-registry-moving-parts.md— the parts, and who draws them.
Last verified 2026-10-10