Complete SCUM controlled deployment lifecycle

This commit is contained in:
npc0-hue
2026-07-25 10:13:53 +08:00
parent 6cfd929f7f
commit 15789e15b4
28 changed files with 1349 additions and 123 deletions
+7
View File
@@ -111,6 +111,13 @@ Run sessions persist only a token hash, generation, status, expiry, capability f
Installed `GamePlugin` records persist the validated manifest `runtimeProfiles` contract, including discovery, lifecycle, dependency/install, log, transport, and client-manager declarations. One server binding selects one declared lifecycle profile. Platform derives allowed and required logical keys; clients cannot assert `missingKeys` or `status`.
SCUM plugins may additionally declare `runtimeProfiles.serverDeployments`. These
profiles are versioned, freeze into a leased Run assignment, and contain only
logical executable/config markers, field mappings, discovery markers, and
verification checks. A server's `DeploymentProjection` stores bounded evidence
from Run for operator views; protected paths, commands, credentials, process
ids, and sockets never enter that projection.
Bindings are used for action gating and future run-side profile resolution. File and MySQL metadata snapshots include them so a platform restart does not make a configured server appear complete or lose its selected profile. API responses expose only logical key names, configured/secret-backed flags, missing keys, and safe reasons. They never expose stored binding values, raw host paths, direct sockets, FTP/RCON passwords, SQL DSNs, component auth keys, or internal secret locations.
## Runtime Component Keys And Distributions