重置项目上下文与规范文档
This commit is contained in:
39
openspec/specs/notification-delivery/spec.md
Normal file
39
openspec/specs/notification-delivery/spec.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# 站内通知当前行为
|
||||
|
||||
## Purpose
|
||||
|
||||
描述管理端与个人客户站内通知的当前可观察行为。
|
||||
|
||||
## Requirements
|
||||
|
||||
### Requirement: 通知接收人隔离
|
||||
|
||||
系统 SHALL 只向当前后台账号或个人客户返回其自身且未过期的通知、未读数量和受控目标;其他接收人的通知按不可见处理。
|
||||
|
||||
#### Scenario: 读取其他接收人的通知
|
||||
|
||||
- **GIVEN** 通知属于另一后台账号或个人客户
|
||||
- **WHEN** 当前接收人查询通知、目标或请求标记已读
|
||||
- **THEN** 系统不返回通知内容且不改变其已读状态
|
||||
|
||||
### Requirement: 通知已读幂等
|
||||
|
||||
系统 SHALL 仅首次把当前接收人的未过期未读通知标记为已读并记录读取时间;重复单条或批量已读不重复改变事实。
|
||||
|
||||
#### Scenario: 重复标记已读
|
||||
|
||||
- **GIVEN** 当前接收人的通知已经标记为已读
|
||||
- **WHEN** 再次执行单条或批量已读
|
||||
- **THEN** 通知保持原读取事实且不影响其他接收人的通知
|
||||
|
||||
## 可达操作索引
|
||||
|
||||
本节只用于入口导航,不是行为 Requirement;业务义务以上述 Requirements 为准。
|
||||
|
||||
### 站内通知
|
||||
|
||||
`GET /api/admin/notifications`(查询通知列表);`PUT /api/admin/notifications/{id}/read`(标记单条通知已读);`GET /api/admin/notifications/{id}/target`(解析通知受控目标);`PUT /api/admin/notifications/read-all`(批量标记通知已读);`GET /api/admin/notifications/unread-count`(查询通知未读数);`GET /api/admin/notifications/unread-summary`(查询通知未读分类汇总)。
|
||||
|
||||
### 个人客户 - 站内通知
|
||||
|
||||
`GET /api/c/v1/notifications`(查询个人客户通知列表);`PUT /api/c/v1/notifications/{id}/read`(标记个人客户单条通知已读);`PUT /api/c/v1/notifications/read-all`(全部标记个人客户通知已读);`GET /api/c/v1/notifications/unread-count`(查询个人客户通知未读数)。
|
||||
Reference in New Issue
Block a user