重置项目上下文与规范文档
This commit is contained in:
43
openspec/specs/system-operations/spec.md
Normal file
43
openspec/specs/system-operations/spec.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# 系统运行与配置当前行为
|
||||
|
||||
## Purpose
|
||||
|
||||
描述健康检查、受控系统配置和全局操作密码的当前行为。
|
||||
|
||||
## Requirements
|
||||
|
||||
### Requirement: 健康检查响应语义
|
||||
|
||||
系统 SHALL 让公开 `/health` 固定返回统一成功响应及 `healthy`,让公开 `/ready` 固定返回统一成功响应及 `ready`;当前可达入口不检查 PostgreSQL 或 Redis。
|
||||
|
||||
#### Scenario: 依赖状态不参与健康响应
|
||||
|
||||
- **GIVEN** 应用能够处理 HTTP 请求
|
||||
- **WHEN** 调用 `/health` 或 `/ready`
|
||||
- **THEN** 系统分别返回 `healthy` 或 `ready`,响应不包含 PostgreSQL 或 Redis 的探测结果
|
||||
|
||||
### Requirement: 受控系统配置更新
|
||||
|
||||
系统 SHALL 只允许超级管理员更新已注册且非只读的配置 Key;系统先在事务外完成权限、注册、只读和值校验,再在同一事务内持久化配置并写成功审计;可审计失败通过独立失败接缝记录,敏感值查询时以已配置占位符返回。
|
||||
|
||||
#### Scenario: 更新只读或未注册配置
|
||||
|
||||
- **GIVEN** 配置 Key 未注册、只读或值不符合注册规则
|
||||
- **WHEN** 超级管理员请求更新
|
||||
- **THEN** 系统拒绝更新并保留原数据库事实;可审计失败按当前接缝记录
|
||||
|
||||
## 可达操作索引
|
||||
|
||||
本节只用于入口导航,不是行为 Requirement;业务义务以上述 Requirements 为准。
|
||||
|
||||
### 系统配置
|
||||
|
||||
`GET /api/admin/system-configs`(查询受控系统配置);`PUT /api/admin/system-configs/{key}`(更新受控系统配置)。
|
||||
|
||||
### 超级管理员
|
||||
|
||||
`POST /api/admin/super-admin/operation-password`(设置/修改全局操作密码);`GET /api/admin/super-admin/operation-password/status`(查询操作密码是否已设置)。
|
||||
|
||||
### 系统
|
||||
|
||||
`GET /health`(健康检查);`GET /ready`(就绪检查)。
|
||||
Reference in New Issue
Block a user