feat: 资产同步状态与同步轨迹入口
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 4m43s
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 4m43s
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Asset Polling Status Display
|
||||
|
||||
The asset information page SHALL display the current polling status for both card and device assets from the `polling` object returned by `GET /api/admin/assets/resolve/{identifier}`.
|
||||
|
||||
#### Scenario: Display complete polling status for a card asset
|
||||
|
||||
- **GIVEN** 用户正在查看卡资产信息页
|
||||
- **WHEN** 资产解析响应包含 `polling.enabled`、`activity_level`、`last_activity_at`、`last_activity_scene` 和 `next_poll_at`
|
||||
- **THEN** 页面 MUST 展示轮询是否启用、活跃级别、最后活跃时间、最后活跃场景和下次轮询时间
|
||||
- **AND** 时间字段 MUST 使用资产信息页统一的时间格式
|
||||
|
||||
#### Scenario: Display complete polling status for a device asset
|
||||
|
||||
- **GIVEN** 用户正在查看设备资产信息页
|
||||
- **WHEN** 资产解析响应包含 `polling` 对象
|
||||
- **THEN** 页面 MUST 展示轮询是否启用、活跃级别、最后活跃时间、最后活跃场景和下次轮询时间
|
||||
|
||||
#### Scenario: Display placeholders for unavailable polling values
|
||||
|
||||
- **GIVEN** 用户正在查看卡或设备资产信息页
|
||||
- **WHEN** `last_activity_at`、`last_activity_scene` 或 `next_poll_at` 为 `null`、空字符串或未返回
|
||||
- **THEN** 页面 MUST 保留对应字段标签
|
||||
- **AND** `next_poll_at` MUST 显示 `-`
|
||||
- **AND** 其他不可用字段 MUST 显示稳定占位内容
|
||||
|
||||
### Requirement: Asset Manual Refresh Remains the Only Refresh Entry
|
||||
|
||||
The asset information page SHALL preserve the existing manual refresh button and interface contract as the only asset refresh entry.
|
||||
|
||||
#### Scenario: Preserve existing manual refresh behavior
|
||||
|
||||
- **WHEN** 用户在资产信息页发起手动刷新
|
||||
- **THEN** 系统 MUST 调用现有手动刷新接口
|
||||
- **AND** 页面 MUST NOT 新增第二个同步或刷新按钮
|
||||
|
||||
#### Scenario: Show rate limited result without countdown
|
||||
|
||||
- **WHEN** 手动刷新请求返回 `rate_limited` 或等价限流失败结果
|
||||
- **THEN** 系统 MUST 仅展示本次请求失败信息
|
||||
- **AND** 系统 MUST NOT 展示自动退避倒计时
|
||||
|
||||
### Requirement: Asset Sync Trail Navigation
|
||||
|
||||
The asset information page SHALL provide a `查看同步轨迹` entry that navigates to the global audit integration page with filters for the current asset. The target query SHALL support `resource_type`, `resource_key`, and `correlation_id` so the audit page can display the immediate, 3-minute, and 5-minute consecutive sync results for the asset.
|
||||
|
||||
#### Scenario: Navigate to filtered sync trail from a card asset
|
||||
|
||||
- **GIVEN** 用户正在查看卡资产信息页
|
||||
- **WHEN** 用户点击“查看同步轨迹”
|
||||
- **THEN** 系统 MUST 跳转到全局审计外部集成页
|
||||
- **AND** 跳转参数 MUST 带入当前卡资产对应的 `resource_type`、`resource_key` 或 `correlation_id` 筛选信息
|
||||
|
||||
#### Scenario: Navigate to filtered sync trail from a device asset
|
||||
|
||||
- **GIVEN** 用户正在查看设备资产信息页
|
||||
- **WHEN** 用户点击“查看同步轨迹”
|
||||
- **THEN** 系统 MUST 跳转到全局审计外部集成页
|
||||
- **AND** 跳转参数 MUST 带入当前设备资产对应的 `resource_type`、`resource_key` 或 `correlation_id` 筛选信息
|
||||
|
||||
#### Scenario: Sync trail includes consecutive polling results
|
||||
|
||||
- **GIVEN** 用户已通过资产信息页进入带筛选的同步轨迹
|
||||
- **WHEN** 全局审计外部集成页查询该资产轨迹
|
||||
- **THEN** 查询结果 MUST 支持按立即、3分钟、5分钟连续同步结果展示
|
||||
|
||||
#### Scenario: Audit integration page implementation is out of scope
|
||||
|
||||
- **WHEN** 本次变更落地
|
||||
- **THEN** 资产信息页的同步轨迹跳转入口 MUST 可用
|
||||
- **AND** 全局审计外部集成页面自身 MUST NOT 被要求在本提案中改造
|
||||
Reference in New Issue
Block a user