12 Commits
Author SHA1 Message Date
npc0-hue a822e9250a Store SCUM facts in typed platform tables
Run pushes typed SCUM facts through POST /api/v1/run/scum/facts, but the
production router rejected that path before the signature middleware because
runServiceRequest listed individual Run channel prefixes, and MySQL kept SCUM
rows inside the whole metadata snapshot instead of platform tables.

- /api/v1/run/ is now the signed machine channel space while
  /api/v1/run/endpoints keeps normal bearer/admin authorization.
- MySQL gets real scum_user, scum_user_trajectory, scum_vehicle,
  scum_vehicle_trajectory and scum_vehicle_lock tables with parameterized
  per-row repositories instead of full snapshot rewrites. Snapshot-shaped
  tables from the unreleased interim build are replaced, and SCUM rows still
  inside a metadata snapshot are migrated once.
- Facts ingest verifies the target server plugin type and converges stale
  online users to offline after SCUMUserOfflineAfter.
- The plugin page and browser read one bounded /scum/surface response instead
  of five list calls per refresh.

Call-count budget for one server: per 5s facts batch, one SELECT plus one
INSERT/UPDATE per reported user and vehicle, one INSERT per moved trajectory
sample or new lock row, one bounded stale-user SELECT, and a trajectory
retention DELETE at most once per hour. One browser refresh issues one surface
request every 15s instead of five list requests.
2026-09-15 12:12:11 +08:00
npc0-hue ecdca8e28b Remove SCUM sqlite user projections 2026-09-14 13:41:44 +08:00
npc0-hue 65353cf269 feat(scum): rebuild plugin-owned management data 2026-08-15 12:43:09 +08:00
npc0-hue a6c4cdac5d Rebuild SCUM plugin data ownership 2026-08-14 10:03:58 +08:00
npc0-hue da01d39866 Align SCUM operations with reference tools 2026-08-13 18:21:08 +08:00
npc0-hue 8b236d7c15 Implement SCUM direct data plane 2026-08-13 16:33:11 +08:00
npc0-hue b07a792784 Revert SCUM real data management change 2026-08-13 15:33:34 +08:00
npc0-hue d831e4ade9 Add SCUM capability negotiation gate 2026-08-13 15:10:57 +08:00
npc0-hue d854d6fda3 Wire SCUM schema probe durable run path 2026-08-12 16:49:05 +08:00
npc0-hue 13746150cb refactor(scum): remove legacy projection workflows 2026-08-11 15:18:03 +08:00
npc0-hue df48d8b283 feat(scum): remove legacy workflow client surfaces 2026-08-11 14:31:05 +08:00
npc0-hue a770bc6250 Integrate SCUM real ops workflows 2026-08-10 21:12:53 +08:00