Files
T
2026-07-11 14:56:10 +08:00

5.0 KiB

ADDED Requirements

Requirement: Acceptance suite runs against the real local debug stack

The repository SHALL provide an automated browser acceptance suite that verifies platform_web against the API-backed local debug stack and safe game plugin fixture.

Scenario: Suite prepares local debug fixture

  • WHEN the acceptance suite is run from a clean checkout with documented local debug prerequisites
  • THEN it MUST start or reuse platform, run worker, platform_web, and the dev game plugin fixture through documented local debug commands and MUST seed or verify game.example, server-local-debug, and run-local-debug before browser assertions begin

Scenario: Suite uses platform-owned browser API path

  • WHEN platform_web is exercised by the acceptance suite
  • THEN browser requests MUST go through the configured platform API proxy with VITE_PLATFORM_API_BASE_URL=/api/v1 and MUST NOT require direct run URLs, run credentials, or plugin-owned transports in browser code or visible output

Requirement: Acceptance suite verifies first-party console areas

The browser acceptance suite SHALL verify the required first-party platform_web areas with an API-backed user session.

Scenario: Suite logs in with local debug user

  • WHEN the acceptance suite opens platform_web
  • THEN it MUST log in with the documented local debug operator account and confirm the session lands on an API-backed workspace rather than local fallback data

Scenario: Suite verifies required routes

  • WHEN browser acceptance route checks run
  • THEN they MUST open 首页、服务器管理、插件市场、用户管理、AI 提供商管理 and assert stable API-backed content for each route

Scenario: Suite rejects fallback content

  • WHEN any required route renders fallback, mock, demo-only, or local-auth fallback content
  • THEN the acceptance suite MUST fail and report the route, visible evidence, and failed assertion

Requirement: Acceptance suite verifies plugin and server operation surfaces

The browser acceptance suite SHALL verify core plugin/server operation surfaces that prove the console is connected to platform-mediated lifecycle and plugin data.

Scenario: Suite verifies server detail lifecycle surface

  • WHEN the suite opens the local debug server detail route
  • THEN it MUST assert that Local Debug Example Server, server-local-debug, game.example, run-local-debug, lifecycle controls, operation history, log entry points, and artifact or artifact-reference entry points are visible or otherwise represented through platform-owned UI state

Scenario: Suite verifies plugin marketplace data

  • WHEN the suite opens the plugin marketplace route or plugin detail surface
  • THEN it MUST assert that game.example, manifest reference metadata, installed state, platform-mediated permissions, bridge actions, and lifecycle capabilities are visible without exposing unsafe runtime transport details

Scenario: Suite verifies operation proof without direct run access

  • WHEN the suite triggers or inspects a lifecycle operation
  • THEN it MUST verify platform-owned job or operation-history evidence and MUST NOT rely on platform_web or plugin pages contacting run directly

Requirement: Acceptance suite scans visible safety boundaries

The browser acceptance suite SHALL scan accepted browser-visible content for fallback indicators and forbidden sensitive fragments.

Scenario: Suite scans each accepted route

  • WHEN a required route or plugin/server operation surface is accepted
  • THEN the suite MUST scan visible text for /Users/, /private/, unix://, tcp://, Bearer , sk-, password=, apiKeyRef, rawApiKey, run session tokens, direct run URLs, and plugin-owned transport details

Scenario: Suite fails on forbidden visible fragments

  • WHEN any forbidden sensitive fragment is visible on an accepted route
  • THEN the suite MUST fail and report the route, matched fragment class, and enough nearby evidence to debug the leak without printing raw credentials

Requirement: Acceptance suite produces reproducible evidence

The browser acceptance suite SHALL provide concrete commands and evidence outputs that can be used to close OpenSpec tasks.

Scenario: Suite command is documented

  • WHEN contributors read the change documentation or tasks
  • THEN they MUST find concrete commands for running local debug smoke, browser acceptance, frontend checks, structure checks, and strict OpenSpec validation

Scenario: Suite writes acceptance evidence

  • WHEN browser acceptance passes
  • THEN it MUST write or print evidence including stack URLs, seed evidence directory, routes checked, required assertions, fallback scan results, forbidden-fragment scan results, and plugin/server operation proof

Scenario: Suite cleans up self-started services

  • WHEN the suite starts local debug services itself
  • THEN it MUST stop or reset only the documented local debug root after completion or failure, using the same safe reset scope as the local debug workspace