0.7.1:0 — bundle Station Master v0.7.1

Four playtest fixes off the Gitea tracker. The submodule pin moves to v0.7.1 and the version follows
it; the downstream digit resets to :0, since v0.7.0 only ended on :3 because three test packs were
played before it was released.

- An empties-only train may couple a caboose again — a caboose carries the crew, not freight.
- The end of a Day is a modal carrying the standings, the Days left and the combined target, instead
  of passing between one click and the next inside the automatic phases.
- A Timetabled train may be discarded to a Department pile for a rival to pick up, governed by a new
  discardTimetabled setting that appears in both the New Game dialog and the lobby, on by default. An
  Extra never may.
- A blocked passenger platform now gives its reason, including the coach shortage and what ends it.

No new version file and no migration: current.ts's migrations.up is empty and nothing is carried from
0.7.0. GAMES IN PROGRESS SURVIVE THIS UPDATE — all three engine-visible changes only widen what is
legal, so every intent a 0.7.0 game recorded still replays, and the server resumes a save by replaying
it rather than by comparing version strings (src/server/index.ts in the game repo).

README.md and instructions.md both named 0.7.0 and carry the three user-visible changes now.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FLnYR4XtXQNamYJXGYT8oC
This commit is contained in:
Jesse
2026-08-25 10:58:14 -04:00
co-authored by Claude Opus 5
parent d26d44d9e2
commit ea8e9dbcb8
4 changed files with 75 additions and 33 deletions
+12
View File
@@ -43,6 +43,18 @@ changing any of them marks the game **Custom**, which keeps the scoring of the t
from. The seed, the number of players and the number of Days sit above the type and do not make a
game Custom — the targets re-derive from them.
**What changed in 0.7.1.** Three things you will see at the table. The **end of a Day now stops and
says so** — a dialog with the standings, how many Days are left and the combined target, because a
Day used to turn over inside the phases that run themselves and pass between one click and the next.
A **Timetabled train may now be thrown away**: toss it face-up to a Department slot and a rival may
pick it up. That is a New Game setting (*A Timetabled train may be discarded*, on by default) — turn
it off and a train card can only ever be played onto the timetable. An **Extra is never discardable**
either way. And a **platform where nothing can be worked now tells you why** — no train for the
passengers waiting, a train whose card bars Porters, coaches already full, the same-district rule, or
the Division Yard being out of coaches, in which case it says how many are stranded in the
Classification Yard and what brings them back. Running out of coaches is part of the game, not a
fault; what was missing was the explanation.
**Leaving, and coming back.** Anyone may leave a lobby, and the host can clear a chair, so a
mis-join or somebody who wanders off no longer blocks a table that cannot start until every seat is
taken. A **Leave game** button appears once a game is running: it keeps your seat and the table