Alpha

STYGION Panel a0.3.5

A server can be shared now, and a share means something.

Users

A server had exactly one person who could reach it: its owner. That fits one operator and holds for no group that actually runs a game server, where whoever restarts it at midnight is rarely whoever pays for it. The workaround was sharing the owner's password, which is not a workaround.

A permission is named after the thing it opens. Eleven words, the same ones the tabs are called: console, command, power, files, backups, schedules, databases, network, startup, settings, activity. Roles drift from the screens they guard — somebody adds a tab, forgets the role, and the tab is either invisible to everyone or open to everyone. A word the panel does not enforce cannot even be stored.

Where it is enforced:

  • One gate, on every route. Deleting a server and the Users tab itself stay owner-only: somebody who can grant themselves more has all of it.
  • SFTP answers to the same permission as the file manager. SFTP is the file manager over another protocol, and a share that opens one and not the other is a share nobody can reason about.
  • A stranger gets 404, not 403. Somebody with some access is told which door is shut; somebody with none is not told the server exists.

A shared server appears on the dashboard of whoever it was shared with — one that only shows up if you already know its URL has to be explained every time.

The panel shows only what you can open

A server now says what the person looking at it may do, so tabs, the power controls, delete and the egg export are hidden rather than answering 403 on click. A menu of doors that turn out to be locked is worse than a shorter menu.

Mounts is gone from the menu. It had no backend and led to an "on the roadmap" placeholder. A tab must not advertise what does not exist; that is what a roadmap is for.


Upgrading from 0.3.4 adds one migration and changes nothing for a panel with one account: an owner is still an owner, and nothing is shared until somebody shares it.