30 lines
1.8 KiB
Markdown
30 lines
1.8 KiB
Markdown
## Why
|
|
|
|
The current SCUM integration keeps game-version SQL and data-shaping knowledge in Platform projections, which makes a SCUM update require coordinated changes across components. The management console needs to operate on actual SCUM v57 users, squads, activity, gifts, and map data with game-specific knowledge packaged alongside the SCUM plugin.
|
|
|
|
## What Changes
|
|
|
|
- Add a plugin-packaged SCUM data plane: versioned SQL files, log parser definitions, and configuration mappings referenced from the plugin manifest.
|
|
- Let Platform validate and distribute those declarations, accept typed result rows, and persist them in relational `scum_*` tables without dispatching on SCUM query-name substrings.
|
|
- Expose persisted SCUM user, squad, activity, gift, and map datasets through Platform APIs and the first-party game operations console.
|
|
- Replace the old hard-coded SCUM projection pathway with declaration-driven target-table and upsert metadata.
|
|
- **BREAKING** Plugin query-template declarations gain package-relative SQL references and row-target metadata; inline SQL remains invalid.
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
|
|
- `scum-direct-data-plane`: Plugin-owned versioned SCUM data declarations, generic Platform ingestion, and `scum_*` persistence.
|
|
- `scum-operations-console`: First-party views and APIs for persisted SCUM users, squads, activity, gifts, and map points.
|
|
|
|
### Modified Capabilities
|
|
|
|
<!-- None. -->
|
|
|
|
## Impact
|
|
|
|
- `plugins/`: SCUM manifest/schema/validator/tests and versioned SQL, log, and config packages.
|
|
- `platform/`: plugin contracts, generic ingest service, relational repository models/migrations, and SCUM dataset APIs.
|
|
- `platform_web/`: server management SCUM data views using existing themed console conventions.
|
|
- No `run/` source is added; Run continues to perform only generic plugin-declared SQL and file jobs supplied by Platform.
|