Files
browser/openspec/changes/add-plugin-declared-remote-access/tasks.md
T

2.2 KiB

1. OpenSpec Contracts

  • 1.1 Create proposal, design, and spec for plugin-declared remote access.
  • 1.2 Validate the new change artifacts with openspec validate --strict.

2. Plugin Manifest Contracts

  • 2.1 Extend the game plugin manifest schema with remoteAccess methods, run capabilities, database engines, RCON, and log transfer declarations.
  • 2.2 Update manifest validation tests and examples so SCUM and Minecraft validate with remote access declarations.

3. Platform Registry and Authorization

  • 3.1 Add domain and DTO remote access metadata to game plugin, manifest, and marketplace projections.
  • 3.2 Extend platform validators for remote methods, remote run capabilities, server.remote.access, and remote.access.request.
  • 3.3 Gate server-bound jobs against the server instance plugin's declared capabilities.
  • 3.4 Add bridge execution for declared remote access requests and tests for denied undeclared capabilities.

4. Run Protocol and Worker

  • 4.1 Add remote run capability constants and validation rules for bounded remote assignments.
  • 4.2 Report remote capabilities from run smoke and worker mode.
  • 4.3 Add bounded remote job execution results that keep heavy payloads in artifact/log channels.
  • 4.4 Add run tests for remote DB/RCON/log/file capabilities and unsafe payload rejection.

5. Documentation and Verification

  • 5.1 Update platform, run, and plugin docs for remote access capability declarations.
  • 5.2 Run plugin manifest validation, platform tests, run tests, and scripts/check-structure.sh.
  • 5.3 Record verification evidence in tasks.md.

Evidence

  • openspec validate add-plugin-declared-remote-access --strict - passed; PostHog telemetry flush logged DNS warnings only after validation succeeded.
  • go test ./... in platform/ - passed.
  • go test ./... in run/ - passed.
  • npm test in plugins/ - passed: 14 manifest/SDK tests.
  • npm run typecheck in plugins/ - passed.
  • TMPDIR=/private/tmp npm run validate:manifest in plugins/ - passed for dev, SCUM, and Minecraft manifests.
  • scripts/check-structure.sh - passed.
  • git diff --check - passed.