npc0-hue
300390dc4d
Fill the SCUM user and vehicle tables from the plugin-declared database read path
...
The SCUM 用户管理 list stayed empty because the typed scum_user and
scum_vehicle tables had no producer: the run ingest endpoint is signed-run
only, and the previously registered plugin templates asked for a Run
database capability the endpoint never advertises.
The plugin now declares bounded, read-only SQLite projections for players
and vehicles (sql/scum-db-v57/*.sql with query schemas), and the platform
dispatches those templates as durable remote.run.db.sqlite.query jobs on
run heartbeat and page open, then projects the returned rows into the typed
SCUM tables through the same shared ingest path used by signed run facts.
2026-09-16 18:01:33 +08:00
npc0-hue
05f5a97ba9
Add graceful SCUM stop, restart, and version update flow
...
SCUM 停止/重启/更新以前只有“结束进程”这一条路,插件没有声明任何优雅关闭方式,
平台也没有把停止后重新启动串起来。现在插件声明自己的关闭脚本,run 先执行它,
平台在停止或更新成功后再自动拉起服务。
run:
- lifecycle stop 支持插件声明的 gracefulStop(可执行文件、参数、环境、超时、
fallback=report|terminate);关闭命令超时且声明 report 时任务失败,不再默默杀进程。
- 新增 steam.update 依赖探针:调用 steamcmd +app_info_print 获取公开分支 buildid,
与本地 steamapps/appmanifest_<appid>.acf 的 buildid 比较,输出
installed/latest/update=yes|no|unknown。
platform:
- 新增 POST /api/v1/server-instances/{id}/restart 与 /update。
- restart 派发插件 stop 动作(走优雅关闭),终态成功后入队 start 作业。
- update 派发插件 install 动作;插件在更新前必须先优雅关闭 SCUM,关闭失败直接拒绝
SteamCMD 更新,成功后平台再拉起服务。
- 依赖检查输入带上插件声明的服务器安装根目录,供 steam.update 读取 appmanifest。
plugin (SCUM server plugin 0.1.16):
- bin/scum-stop.cmd:解析已声明的可执行文件路径,定位同路径正在运行的 SCUMServer.exe,
通过本地 RCON 公告并发送关闭命令,等待进程自行退出;不再使用 taskkill。
- bin/scum-rcon.ps1:插件自有的 Source RCON 客户端,从 UE4SS mod config.ini 读取
密码/端口,密钥不离开本机。
- actions/stop.json 声明 gracefulStop;actions/install.json 更新前先执行同一关闭脚本。
platform_web:
- 服务器详情新增“重启”按钮和“SCUM 版本更新”面板;点“检查更新”查询公开分支版本,
只有检测到更新时“更新版本”按钮才会置为可用并高亮,点击后先确认再派发更新任务。
2026-09-15 13:30:15 +08:00
npc0-hue
ba36668668
Keep plugin records out of platform projections
2026-09-04 14:29:50 +08:00
npc0-hue
316efbe780
Add SCUM log sessions and trajectory projections
2026-08-27 12:34:07 +08:00
npc0-hue
a7e2e4c6c0
Remove pre-1.0 audit and protected request scaffolding
2026-08-20 23:42:02 +08:00
npc0-hue
302f1f64b7
Implement platform management features
2026-08-17 08:48:45 +08:00
npc0-hue
b789925ae5
fix: recover run runtime state and logs
2026-08-07 12:01:26 +08:00
npc0-hue
68921b3f68
Add run lifecycle report projection
2026-08-06 20:35:13 +08:00
npc0-hue
0875a1b17e
Make Run runtime state authoritative
2026-08-06 10:07:01 +08:00
npc0-hue
d1249fca85
Move SCUM lifecycle ownership to plugin
2026-08-01 09:36:12 +08:00
npc0-hue
15789e15b4
Complete SCUM controlled deployment lifecycle
2026-07-25 10:13:53 +08:00
npc0-hue
48b8ad8d6c
feat: 完整游戏运维功能
2026-07-18 09:04:01 +08:00
npc0-hue
7e05d0a4e7
first commit
2026-07-11 14:56:10 +08:00