6.6 KiB
ADDED Requirements
Requirement: Exact SCUM detail navigation
The SCUM server detail view SHALL contain exactly five tabs in this order: 用户管理, 队伍管理, 实时地图, 礼包管理, AI 助手.
Scenario: SCUM detail opens normally
- WHEN an operator opens a SCUM server detail without a valid section selector
- THEN the page selects
用户管理as the default and renders no standalone管理orWorkflow 状态tab
Scenario: Legacy section is requested
- WHEN a legacy
manage,workflows, or otherwise invalid SCUM section is requested - THEN the page replaces/falls back to
用户管理without an empty screen or a Workflow/management placeholder
Scenario: Non-SCUM server detail is rendered
- WHEN another plugin/server type legitimately declares different navigation
- THEN the SCUM-only five-tab restriction does not silently remove that plugin's declared pages
Requirement: Required management controls are relocated
Removing the SCUM 管理 tab SHALL NOT remove server deployment, metadata, or administrator-membership capabilities.
Scenario: Operator edits deployment
- WHEN an authorized operator needs to change the SCUM deployment definition
- THEN the existing server-list deployment action remains available and no replacement permanent detail tab is introduced
Scenario: Server owner opens settings
- WHEN the server owner selects the compact settings action in the detail header
- THEN a drawer or dialog permits display-name and administrator membership changes with the existing ownership authorization
Scenario: Non-owner opens server settings
- WHEN a server member who is not the owner views the settings surface
- THEN owner-only membership mutations are unavailable and a direct API attempt remains forbidden
Requirement: Projection and Workflow concepts are removed from the product
SCUM pages and browser contracts SHALL NOT render or offer projection, observation, manual synchronization, audit-initiation, pending-review counter, or Workflow product concepts.
Scenario: Any retained SCUM page renders
- WHEN users, squads, map, gifts, or AI content is displayed
- THEN it contains none of
Workflow 状态,投影,真实投影,玩家投影,刷新投影,刷新世界投影,刷新真实数据,发起审计,创建发放 workflow,typed workflow,typed observation,typed operation,待审操作,审批/确认队列,清理旧入口,目前暂无真实投影数据,暂无真实投影数据,暂无玩家投影, orCompanion 可用
Scenario: Plugin page loads data
- WHEN any of the four SCUM management pages initializes or retries a failed local read
- THEN it calls only its local resource API and does not list/create Workflow instances/steps or start a query, projection refresh, real-data refresh, or audit
Scenario: Removed endpoint is requested
- WHEN a browser requests the removed SCUM Workflow, Workflow-step, observation, operation-list/approve, projection/real-data refresh, or audit-initiation endpoint
- THEN Platform returns not found or a stable removal response without dispatching a job or exposing a replacement raw execution path
Scenario: Legacy operation approval route is requested
- WHEN a caller invokes a legacy SCUM operation-list,
/scum/operations/{id}/approve, pending-review, or confirmation-queue route - THEN Platform returns not found or a stable removal response and SHALL NOT create an approval record, dispatch a write, or revive an approval product domain
Scenario: Internal write safety is recorded
- WHEN Platform records authorization, idempotency, backup, execution, or confirmation evidence for a write
- THEN the record remains internal/safe and does not create a user-facing audit-start action or Workflow status page
Requirement: Trustworthy management page layouts
The user, squad, map, and gift pages SHALL use full-width business data layouts and shared theme-aware table, drawer, dialog, and status patterns without placeholder product data.
Scenario: Management page is implemented
- WHEN a first-party SCUM page adds or changes styles
- THEN it preserves black-mecha and magical-girl theme readability, reuses shared tokens/components, keeps CSS declarations compact, and does not add unrelated opaque SaaS cards or page-local fixed decorative effects
Scenario: Data load fails
- WHEN a local API request fails
- THEN the page shows a readable error and may retry only the local read; it does not generate sample players, squads, vehicles, flags, positions, gifts, maintenance evidence, backups, or operation results
Requirement: AI assistant is preserved with reviewable effects
The AI 助手 SHALL remain the final SCUM tab and SHALL support plugin-declared configuration suggestions and controlled player-operation drafts without receiving provider secrets or independent write authority.
Scenario: AI suggests plugin configuration
- WHEN an authorized operator requests SCUM plugin configuration assistance
- THEN AI proposes only plugin-declared fields, Platform validates and displays a reviewable diff, and the authorized review-and-confirm config-write path applies the change only after explicit confirmation
Scenario: User can view but cannot apply a suggestion
- WHEN the user may invoke/read an AI suggestion but lacks the permission required for the proposed config or player write
- THEN the suggestion remains reviewable while the apply action is disabled and backend application is forbidden
Scenario: AI provider is invoked
- WHEN Platform sends the allowed prompt/context to the configured AI provider
- THEN raw AI keys, database credentials, SCUM.db paths, raw XML, and protected Run material never reach the plugin page/browser
Requirement: Obsolete UI actions and placeholders are removed
The SCUM product SHALL replace hard-coded actions and placeholder map/gift behavior with the declared business flows.
Scenario: Player actions render
- WHEN a player has writable verified fields
- THEN the UI offers explicit named-field editing and contains no
Fame +100,现金 +1000,855 审批, fake before value, fake maintenance ID, or fake backup reference
Scenario: Map renders
- WHEN the map page is available
- THEN it uses the verified map capability and contains no gradient-only board or arbitrary percentage-dot transform
Scenario: Gift page renders
- WHEN gift management is available
- THEN it reads local gift packages and contains no hard-coded
starter-pack, fixed player-card delivery, or fixed notification text