← NewTon DC Tournament Manager

One Throw, One Score

NewTon DC Tournament Manager v5.1.6 — September 6, 2026

Download v5.1.6

Overview

Another one for the code, not the board.

v5.1.5 put the whole codebase under the microscope and started working through a six-phase improvement plan. v5.1.6 finishes it — the last of the data-integrity work, and then the part the plan had been building towards: finding everywhere the app was doing the same job several times over, and making it do the job once.

Recording a result used to save your tournament two to four times in a row. Drawing a 32-player bracket used to re-read the entire match history sixty-odd times, once per card on screen. Neither was ever wrong — it was just work nobody asked for, repeated every time you completed a match, assigned a lane, or changed a referee. Now it happens once. The scores, the brackets, the standings are identical to the last decimal; there is simply less happening behind them.

Along the way, a few small things that were wrong turned up and got fixed.


Doing Less, Getting the Same

Four places where the app was quietly repeating itself:

One more thing simply stopped: the help system had been watching the entire page for changes, waking on every bracket render, every table repaint, every tick of the clock, just to work out which page you were on. The app already knows when it changes page. Now it just says so.


Small Things, Now Right


Safer With Your Data


One Place, Not Five

The quiet half of this release: the app had grown second and third copies of the same logic in a dozen places, and copies drift. Two of them mattered enough to name.

Whether an undo is allowed, and why it isn’t. Two separate pieces of code worked out whether a completed match could still be undone — one answering yes or no, deciding whether a winner’s name is clickable, the other producing the wording you see on hover and in Match Controls: “Cannot Undo, blocked by FS-3-1 (live).” They had to be kept in step by hand, and once already weren’t: when QR completions arrived, the same fix was needed in both and got made in only one. They now share a single answer, so the button and the explanation cannot disagree.

How player names are matched. Analytics identifies players by name — each tournament stores its own player numbering, so there is nothing else to match on across tournaments. That means every screen has to agree on exactly how a name is tidied up before comparing it, or the same person quietly becomes two people, or a player’s record differs between the Leaderboard and the Players tab. That tidying was written out by hand in twenty places. It is now defined once.

And a long list of smaller ones, all invisible from the outside: the achievement-points formula that lived in five places, two hand-rolled copies of the Chalker score decoder, the referee assign and clear paths, the bracket’s default zoom, the 32-player backside layout, the tournament export. Roughly a thousand lines lighter across this release and the last, with fewer places for the next fix to be missed.


Migration

No migration required. Fully compatible with all existing tournament data, match history, and Analytics. This release changes how much work the app does, not the data it works on. Installed Chalker PWAs refresh to the new version automatically on their next online launch.


Fun fact: every change here was checked by replaying whole tournaments through the old code and the new, side by side, and demanding identical results down to the byte. One of those test harnesses passed cheerfully for an afternoon before anyone noticed it was comparing nothing at all.

NewTon DC Tournament Manager v5.1.6 — One Throw, One Score.

Download v5.1.6

Previous Releases

For older releases, see the GitHub releases page.