refactor: 完成技能数据结构重构 - 分离内部信息与发布信息

- 新增技能内部信息与商店发布信息分离的数据结构
- 重构技能详情页为四段式布局(概览+当前生效版本+版本历史+管理)
- 移除历史版本中的下载按钮
- 版本历史改为卡片布局,新增发布信息预览
- 分类与标签合并显示,分类作为第一个标签
- 更新按钮禁用逻辑:下架审核中/已下架状态禁用上传新版本
- 下架技能按钮添加二次确认弹窗
- 补充10个不同状态的技能示例数据
- 同步 delta specs 到主 specs
- 归档变更:refactor-skill-data-structure
This commit is contained in:
2026-03-21 18:09:43 +08:00
parent 8179ff2f95
commit 017a8af2a3
21 changed files with 1452 additions and 646 deletions

View File

@@ -182,14 +182,33 @@ pnpm build
### 5. 开发台Developer
- **总览**:开发者指标卡片(我的技能总数、已上架、开发中、待审核)、待审核项目列表、最近动态
- **我的技能**:技能列表,支持关键词搜索、分类筛选、状态筛选(开发中/已上架/下架审核中/已下架)、分页,支持下架(需要先撤回审核中的版本)、删除(已上架需要先下架)
- **技能详情**基本信息只读展示、版本历史管理(根据状态展示操作按钮:审核中-撤回审核+下载、审核通过/拒绝/撤销-仅下载、审核拒绝-显示拒绝理由)、技能操作(上传新版本-有审核中版本时禁用、下架技能、删除技能-已上架时禁用)
- **创建技能**基本信息表单 + 技能图标选择(移除技能包上传
- **更新基本信息**:独立页面编辑技能名称/描述/分类/标签/图标,与版本上传分离
- **上传新版本**仅包含版本说明和技能包上传NEW
- **我的技能**:技能列表,支持关键词搜索(内部名称/内部描述)、状态筛选(开发中/已上架/下架审核中/已下架)、分页,支持下架(需要先撤回审核中的版本)、删除(已上架需要先下架),仅展示开发者内部信息
- **技能详情**四段式布局 - 1) 概览卡片内部信息内部名称、状态、编辑按钮2) 当前生效版本卡片商店展示效果预览分类作为第一个标签显示3) 版本历史卡片普通卡片布局展示版本号、状态、日期、版本说明、发布信息预览、操作按钮无下载按钮4) 管理操作卡片
- **创建技能**简化表单 - 仅内部技能名称、内部技能描述(明确标注仅供开发者管理使用
- **编辑内部信息**:独立页面编辑内部技能名称/内部技能描述(明确标注不影响商店展示)
- **上传新版本**增强表单 - 版本说明区域 + 发布信息区域(技能发布名称、技能发布描述、分类、标签、图标),非首版本默认继承当前生效版本的值
- **开发文档**:技能开发相关文档
- **开发者设置**:开发者账号信息
#### 重要数据结构变更说明
- **开发者内部信息**:内部名称、内部描述 - 仅供开发者管理,与商店展示完全无关,可随时修改无需审核
- **版本发布信息**:发布名称、发布描述、分类、标签、图标 - 存储在版本中,随版本审核通过后生效,修改必须发布新版本
- **技能商店展示**:完全从当前生效版本取发布信息,确保任何商店内容变更都经过版本审核
- **分类与标签展示**:分类始终作为第一个标签显示,与普通标签一起展示
#### 按钮禁用规则
基于 `hasPendingReview` 标志和技能状态控制操作按钮可用性:
- **上传新版本按钮**`status === 'unlisting' || status === 'unlisted' || hasPendingReview === true` 时禁用
- **下架技能按钮**`hasPendingReview === true` 时禁用
- **删除技能按钮**`status === 'published' || status === 'unlisting' || hasPendingReview === true` 时禁用
#### 撤回审核按钮样式
- **按钮类型**:警告按钮(橙色)
- **按钮类名**`btn btn-warning btn-sm`
- **按钮图标**逆时针旋转图标FiRotateCcw
- **按钮文案**"撤回审核"
- **展示位置**:版本历史卡片中审核中版本的操作区域
## 路由结构
项目使用 **HashRouter**所有路由基于哈希路径支持直接打开HTML文件运行。