feat: 实现技能审核全流程 - 新增审核管理模块、技能状态机、版本审核机制
- 新增审核管理页面:版本审核列表、下架审核列表、审核详情页 - 完善技能状态机:开发中/已上架/下架审核中/已下架四种状态 - 实现版本审核机制:审核中/通过/拒绝/撤销四种状态 - 更新 README:详细记录技能开发流程与审核机制 - 优化技能详情页:根据状态展示不同操作按钮 - 完善我的技能列表:状态筛选与操作限制 - 新增上传新版本页面:分离版本上传与基本信息编辑 - 更新 openspec 规范:技能审核流程与状态定义
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
## ADDED Requirements
|
||||
## MODIFIED Requirements
|
||||
|
||||
### Requirement: 开发者指标展示
|
||||
开发台总览页 SHALL 展示开发者维度的核心指标数据,以卡片形式呈现。
|
||||
|
||||
#### Scenario: 指标卡片展示
|
||||
- **WHEN** 用户打开开发台总览页
|
||||
- **THEN** 页面顶部显示4个指标卡片:我的技能总数、已发布数量、草稿数量、待审核版本数量,每个卡片包含数值
|
||||
- **THEN** 页面顶部显示4个指标卡片:我的技能总数、已上架数量、开发中数量、待审核版本数量,每个卡片包含数值
|
||||
|
||||
### Requirement: 待审核项目提醒
|
||||
开发台总览页 SHALL 展示待审核的版本项目列表。
|
||||
@@ -18,6 +18,10 @@
|
||||
- **WHEN** 待审核列表中包含被拒绝的版本
|
||||
- **THEN** 该项显示拒绝状态标签和"查看原因"链接
|
||||
|
||||
#### Scenario: 下架审核项展示
|
||||
- **WHEN** 待审核列表中包含下架审核
|
||||
- **THEN** 该项显示"下架审核"状态标签
|
||||
|
||||
### Requirement: 最近动态展示
|
||||
开发台总览页 SHALL 展示开发者最近的操作动态记录。
|
||||
|
||||
|
||||
42
openspec/specs/skill-review-workflow/spec.md
Normal file
42
openspec/specs/skill-review-workflow/spec.md
Normal file
@@ -0,0 +1,42 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: 管理台审核列表
|
||||
AdminPage SHALL 提供版本审核和下架审核的列表展示。
|
||||
|
||||
#### Scenario: 审核管理入口
|
||||
- **WHEN** 用户点击管理台侧边栏"审核管理"导航
|
||||
- **THEN** 页面显示审核管理列表页面,包含版本审核和下架审核Tab
|
||||
|
||||
#### Scenario: Tab切换展示
|
||||
- **WHEN** 用户打开审核管理列表页
|
||||
- **THEN** 页面顶部显示"版本审核"和"下架审核"两个Tab,默认选中版本审核
|
||||
|
||||
#### Scenario: 版本审核列表展示
|
||||
- **WHEN** 用户查看版本审核Tab
|
||||
- **THEN** 页面显示待审核版本列表,每条包含技能名称、版本号、提交时间、开发者、操作按钮
|
||||
|
||||
#### Scenario: 下架审核列表展示
|
||||
- **WHEN** 用户切换到下架审核Tab
|
||||
- **THEN** 页面显示待审核下架列表,每条包含技能名称、当前版本、申请时间、开发者、操作按钮
|
||||
|
||||
### Requirement: 管理台版本审核详情
|
||||
AdminPage SHALL 提供版本审核的详情展示和操作。
|
||||
|
||||
#### Scenario: 版本信息展示
|
||||
- **WHEN** 用户点击版本审核列表中的"审核"按钮
|
||||
- **THEN** 页面显示技能基本信息(名称、开发者、分类、标签)、版本信息(版本号、提交时间、版本说明)、文件列表
|
||||
|
||||
#### Scenario: 审核操作按钮
|
||||
- **WHEN** 用户查看版本审核详情
|
||||
- **THEN** 页面底部显示"拒绝"和"通过"两个按钮
|
||||
|
||||
### Requirement: 管理台下架审核详情
|
||||
AdminPage SHALL 提供下架审核的详情展示和操作。
|
||||
|
||||
#### Scenario: 下架信息展示
|
||||
- **WHEN** 用户点击下架审核列表中的"审核"按钮
|
||||
- **THEN** 页面显示技能信息(名称、开发者、当前版本、订阅数、申请时间)
|
||||
|
||||
#### Scenario: 下架审核操作
|
||||
- **WHEN** 用户查看下架审核详情
|
||||
- **THEN** 页面底部显示"拒绝"和"通过"两个按钮
|
||||
45
openspec/specs/skill-status-display/spec.md
Normal file
45
openspec/specs/skill-status-display/spec.md
Normal file
@@ -0,0 +1,45 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: 技能状态标签展示
|
||||
MySkillsPage SHALL 在技能列表中展示技能状态。
|
||||
|
||||
#### Scenario: 技能状态列展示
|
||||
- **WHEN** 用户查看我的技能列表
|
||||
- **THEN** 状态列显示技能的当前状态:开发中、已上架、下架审核中、已下架
|
||||
|
||||
#### Scenario: 审核中版本提示
|
||||
- **WHEN** 技能存在审核中的版本
|
||||
- **THEN** 状态列额外显示版本审核状态(如"已上架 · v1.2 审核中")
|
||||
|
||||
### Requirement: 侧边栏技能状态展示
|
||||
DeveloperPage SHALL 在侧边栏技能列表中展示状态标签。
|
||||
|
||||
#### Scenario: 侧边栏状态展示
|
||||
- **WHEN** 用户查看开发台侧边栏的技能列表
|
||||
- **THEN** 每个技能项显示对应的状态标签(开发中、已上架、下架审核中、已下架)
|
||||
|
||||
### Requirement: 技能操作按钮可用性
|
||||
MySkillsPage 和 SkillEditorPage SHALL 根据技能状态控制操作按钮的可用性。
|
||||
|
||||
#### Scenario: 开发中状态按钮
|
||||
- **WHEN** 技能状态为开发中
|
||||
- **THEN** 显示"更新基本信息"、"删除技能"按钮,"下架"按钮不显示
|
||||
|
||||
#### Scenario: 已上架状态按钮
|
||||
- **WHEN** 技能状态为已上架
|
||||
- **THEN** 显示"更新基本信息"、"下架技能"按钮,"删除技能"按钮禁用并提示"已上架的技能需要先下架才能删除"
|
||||
|
||||
#### Scenario: 已下架状态按钮
|
||||
- **WHEN** 技能状态为已下架
|
||||
- **THEN** 显示"更新基本信息"、"删除技能"按钮
|
||||
|
||||
### Requirement: 上传新版本按钮可用性
|
||||
SkillEditorPage SHALL 根据版本审核状态控制上传按钮。
|
||||
|
||||
#### Scenario: 无审核中版本
|
||||
- **WHEN** 技能不存在审核中的版本
|
||||
- **THEN** "上传新版本"按钮可用
|
||||
|
||||
#### Scenario: 有审核中版本
|
||||
- **WHEN** 技能存在审核中的版本
|
||||
- **THEN** "上传新版本"按钮禁用并提示"存在审核中的版本,请先撤回后再上传新版本"
|
||||
45
openspec/specs/skill-version-management/spec.md
Normal file
45
openspec/specs/skill-version-management/spec.md
Normal file
@@ -0,0 +1,45 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: 版本上传表单
|
||||
UploadVersionPage SHALL 提供版本上传的表单界面。
|
||||
|
||||
#### Scenario: 版本信息输入
|
||||
- **WHEN** 用户打开上传新版本页面
|
||||
- **THEN** 页面显示版本说明输入框和文件上传区域
|
||||
|
||||
#### Scenario: 文件上传展示
|
||||
- **WHEN** 用户在上传页面看到文件上传区域
|
||||
- **THEN** 页面展示拖拽上传区域,支持 .zip 格式,显示上传图标和提示文字
|
||||
|
||||
### Requirement: 版本历史展示
|
||||
SkillEditorPage SHALL 展示技能的版本历史列表。
|
||||
|
||||
#### Scenario: 版本列表展示
|
||||
- **WHEN** 用户打开技能详情页
|
||||
- **THEN** 页面显示版本历史表格,包含版本号、版本说明、状态、更新时间、操作列
|
||||
|
||||
#### Scenario: 版本状态展示
|
||||
- **WHEN** 用户查看版本历史列表
|
||||
- **THEN** 每个版本显示对应的状态标签:审核中(warning)、审核通过(running)、审核拒绝(error)、已撤销(stopped)
|
||||
|
||||
#### Scenario: 审核拒绝理由展示
|
||||
- **WHEN** 版本状态为审核拒绝
|
||||
- **THEN** 版本说明下方显示拒绝理由文本
|
||||
|
||||
### Requirement: 版本操作按钮
|
||||
版本历史表格 SHALL 根据版本状态展示不同的操作按钮。
|
||||
|
||||
#### Scenario: 审核中版本操作
|
||||
- **WHEN** 版本状态为审核中
|
||||
- **THEN** 显示"撤回审核"、"下载"按钮
|
||||
|
||||
#### Scenario: 已完结版本操作
|
||||
- **WHEN** 版本状态为审核通过/审核拒绝/已撤销
|
||||
- **THEN** 仅显示"下载"按钮
|
||||
|
||||
### Requirement: 技能市场版本展示
|
||||
SkillDetailPage SHALL 展示技能的最新版本信息。
|
||||
|
||||
#### Scenario: 最新版本展示
|
||||
- **WHEN** 用户打开技能市场详情页
|
||||
- **THEN** 页面显示当前版本号、更新说明、更新时间(仅展示最新版本,不展示完整历史)
|
||||
Reference in New Issue
Block a user