1.5 KiB
1.5 KiB
ADDED Requirements
Requirement: SCUM feature ownership is plugin-local
The SCUM plugin SHALL own SCUM schemas, allowlists, migration adapters,
Companion behavior, and feature UI. The platform SHALL retain only reusable
authorization, isolation, auditing, queues, storage, and generic plugin-host
primitives. platform_web SHALL not import SCUM code or branch on game.scum.
Scenario: Page mounting
- WHEN an authorized administrator opens the installed plugin route
- THEN the generic host mounts the declared plugin bundle with only server-scoped permission context
Requirement: Feature availability is runtime scoped
The plugin SHALL expose a feature as actionable only when its declared Companion handler or event producer is currently available for that server. Availability SHALL not be gated by a game or adapter version/build/revision.
Scenario: One adapter fails
- WHEN a schema probe for state patching fails
- THEN state patching is unavailable with a typed reason while other declared capabilities remain independently available
Requirement: Transitional records are read-only migration input
Platform records MAY be displayed with provenance while plugin-owned records become authoritative per server and feature. Migration flags SHALL be scoped to the server and feature, never to a game version.
Scenario: Migration flag is absent
- WHEN no unique server-feature migration flag is present
- THEN historical records remain readable and plugin writes stay disabled