Until this week, MushMate showed a table of the big long-distance races — the Iditarod with its 14 dogs at the start and 5 required at the finish, the Finnmarksløpet, La Grande Odyssée. A fine table. And completely inert: you read it on one screen, then typed 14 and 5 by hand into the objective's configuration two screens away.

That is over.

Pick your race, stop retyping

In an objective's configuration, a Reference race dropdown now lists the catalogue. Picking one fills in the minimum and maximum team sizes. If you would rather enter them yourself, your entry always wins: the pre-fill never comes back to overwrite what you typed.

Each kennel can also create its own race definitions, visible to it alone.

The bib number, the meeting point, the deadlines

A race is not only its rules. It is also what belongs to you that particular year: your bib number, the car park where everyone meets, the registration deadline, the briefing time, the start time.

Your objective's Race tab now carries a My entry block where all of that is entered. And a link opens the printable race sheet: an A4 page that finally brings the two halves together — the race on one side, your entry on the other. Race, date and time, distance, team sizes, bib number, meeting point, deadlines in the order they arrive, rules, and your entered dogs.

Web addresses are written out in full. On paper, a clickable link leads nowhere.

Your dogs are on it, with their full description

This is the part of the sheet that took the most work, and it is the least spectacular.

At the vet check, nobody asks you for a list of your dogs. They ask you, for each one: sex, date of birth, breed, coat colour, microchip number, your insurer and your policy number. Eight columns. A sheet carrying nothing but names answers none of those questions — and that is exactly what the sheet printed until today.

It now carries all eight, in the order entry forms ask for them: identity, then description, then insurance. Copying straight down the page is enough.

A missing value shows a dash. A dog with no insurance shows "not recorded", not an empty cell: on paper the two read alike, and only the second tells you something is still left to do — the night before the start rather than the morning of.

What the sheet shows, and what it shows nobody

The sheet carries your insurance policy number. It is reachable only by your kennel: it is not a public page, it does not travel through the leaderboard, and the public race catalogue knows nothing about it. What leaves, leaves through your hands — the printer, or the PDF your browser makes.

The number that was missing: how many dogs you can lose

A musher pointed out something the product said nowhere: in long distance, the odds of dropping one or several dogs are very high, and the training plan took no account of it.

The number of drops the rules allow is the maximum team size minus the minimum. Beyond that you are disqualified. That number is now computed and shown — on the sheet, and on your phone.

"If you have to drop dogs"

On the Race tab, a new block answers the question a drop really poses: what does each lost dog cost the dogs that remain?

The natural intuition is wrong. Halving the team does not double the load per dog. On a 650 km scenario, starting with 14 dogs and finishing with 6 means +36% load on each remaining dog — not +100%.

The reason fits in one sentence: a dog's own body weight is never divided. A dog running 650 km first pays for moving its own 24 kilos, however many teammates it has. Only the loaded sled is shared. That is why the block also shows the share of the load coming from the body — 74% at the start, 55% at six dogs on that scenario. Without that figure the curve would be a claim; with it, it is an explanation.

The curve is computed by the planner itself, with exactly your race week's parameters: your towed weight, your dogs' mean weight, your route's grade, your peak pace, your season's temperature. So it appears once the plan has been generated, and the screen says so plainly when it has not.

On the phone: the sheet without a signal

At the start of a long-distance race there is no signal. That is precisely when you reread your bib number, your meeting point, the briefing time.

The sheet therefore travels to the phone and shows on the Objective screen, with no connection at all. It does not show at all while nothing has been entered: an empty frame reads as a breakage, not as a field to fill.

The pre-start wizard now also counts the secondary participants you declared on the web — dogs running this race without having their plan on it. They arrive in the proposed team instead of being added by hand every time.

What this does not do

Four things, and none of them is an oversight.

The sheet does not email itself. You print it, or save it as a PDF from your browser. Sending a sheet carrying your policy numbers to an address typed into a field is a different decision from printing one, and it needs its own guard rail: who receives it, what we keep of the sending, what leaves the kennel. We would rather not open that halfway.

The plan still does not prepare your finishers to pull at the minimum team size. The race is still computed at a constant team size. The curve SHOWS you what that costs; it does not yet correct the prescribed load. Making the team shrink inside the prescription changes the plan numbers of every long-distance musher, and that needs a veterinary review we are waiting on.

The phone shows neither the race name nor its rules. The public catalogue belongs to no kennel, and mobile sync works kennel by kennel. Copying the name onto the objective would recreate exactly the double catalogue this work just removed.

Your existing objectives are attached to no race. They have no name by which to recognise them. Attaching is optional: an objective with no reference race keeps all its team sizes, its sheet and its curve.

One decision taken against the obvious

A kennel can create its own race definition. We can then promote it into the public catalogue so everyone benefits.

That act transfers ownership: the kennel that created the race can no longer correct it, and it becomes visible to every account. The alternative — copy the definition and leave the original private — looked gentler. We ruled it out: it would have created two entries for one race, they would have drifted apart, and objectives already attached would have kept pointing at the version nobody corrects. That is the very defect this work exists to close.

So a promotion will always be announced to you, never done silently.