Files
station-master-startos/UPDATING.md
T
Jesse de28b30eea Initial StartOS package for Station Master (v0.5.1)
Built from source via a git submodule pinned to a tag, not a published image
— the Dockerfile, main.ts, and manifest should never need to change for an
ordinary version bump, only the submodule pin (see UPDATING.md). One volume,
one interface serving the browser client + lobby/intent API + SSE stream
from a single origin, no dependencies. The server-wide join secret (D14) is
seeded on install, exposed via the Get Join Secret action, and blocks start
behind a critical task until retrieved — the same first-set/rotation pattern
as actual-budget-startos's admin password.

Verified on phoenix.local: installs, the critical task correctly blocks an
ordinary start, force-starting confirms the daemon binds its port and serves
the client, and store.json correctly holds the install-seeded join secret.
Not verified: the Get Join Secret action's execution end-to-end — start-cli's
`package action run` fails with a client-side deserialization error that
reproduces identically against actual-budget's already-shipped equivalent
action, so this looks like a start-cli issue rather than a defect here.

icon.svg is still the scaffold's hello-world placeholder — no real Station
Master icon exists yet to ship in its place.
2026-08-21 08:44:07 -04:00

1.8 KiB

Updating the upstream version

Station Master is built from a git submodule at station-master/ (tracking Jesse.Markowitz/station-master, a self-hosted Gitea repo — this is Jesse's own game, not a third-party upstream, but it is packaged the same way: Dockerfile builds whatever commit the submodule points at, with no pinned dockerTag in the manifest. The submodule pin is the version.

Station Master tags its releases (v0.5.1, …) at the commit that bumped package.json. Nothing else about this package should need to change for a bump — not the Dockerfile, not main.ts, not the manifest — only the submodule pin and this package's own version (below).

Determining the upstream version

cd station-master && git fetch --tags && git tag -l --sort=-v:refname | head -5

The current pin is the submodule's checked-out commit:

git submodule status station-master

Applying the bump

cd station-master && git fetch --tags && git checkout v<new version>
cd .. && git add station-master

Then bump this package's own version in startos/versions/current.ts (see Versions) with release notes naming the Station Master version now bundled — e.g. "Bundles Station Master v0.5.2." — and rebuild (make).

If the jump carries a multiplayer protocol or persistence-format change (check the game repo's CHANGELOG.md and docs/architecture/multiplayer.md), read it before bumping: a running server's saved games are stamped with engineVersion and refuse to resume under a mismatched one (src/server/index.ts in the game repo) — nothing in this package works around that, so an in-progress game must finish (or be accepted as lost) before an incompatible bump.