gitlink-cli/skills/gitlink-dev-full-cycle/references/checklist.md

112 lines
5.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 各阶段检查清单
> **核心规则:所有 GitLink 平台操作必须使用 `gitlink-cli` 命令,禁止绕过直接使用 Web 界面或 API。**
> **禁止使用 `gitlink-cli api` 命令**(原始 API 请求易误操作,应使用对应的专用子命令)。
> **推送/拉取代码使用原生 `git` 命令,若需认证则向用户询问账号密码或 Token。**
> **🔴 执行 gitlink-cli 命令前,必须先通过 `--help` 查询确认子命令格式!部分子命令有 `+` 前缀(如 `repo +create`),部分没有(如 `auth status`)。不确定时先查 `gitlink-cli <模块> --help`,照抄列表中的格式,禁止凭猜测省略或添加 `+`。**
>
> **分支规则master 严禁直接提交feature-xxx 从 master 拉,开发完 PR 合到 release-xxx发版后 release-xxx PR 合回 master。**
## 前置步骤:认证检查
- [ ] `gitlink-cli auth status` 认证状态已确认
- [ ] 若未认证 → `gitlink-cli auth login` 已完成登录
## ⚠ 阶段零:项目初始化(必须第一个执行!)
> **未完成阶段零,禁止进入后续任何阶段。** 只有项目已有远程仓库且本地已克隆时,经用户确认后方可跳过。
- [ ] 项目信息已确认仓库名、owner、公开/私有、技术栈)
- [ ] `gitlink-cli repo +create` 仓库已在 GitLink 远程创建
- [ ] `gitlink-cli repo +info` 已确认仓库信息正确
- [ ] 本地已克隆并初始化项目骨架,`npm run dev`/`python main.py` 可运行
- [ ] 初始代码已推送 `git push origin master`
- [ ] `gitlink-cli branch +protect -n master` master 已保护(严禁直接推送)
- [ ] `gitlink-cli workflow +health` 健康评分已检查
- [ ] **`README.md`** 已写入(项目简介、技术栈、启动步骤、目录结构)
- [ ] **`.gitignore`** 已生成(匹配当前技术栈)
- [ ] **`docs/`** 目录已创建
---
## 阶段一:需求分析
- [ ] 需求背景、核心功能点、验收标准AC已确认
- [ ] 结构化需求已输出:用户故事 + 功能清单 + AC + Out-of-scope
- [ ] **`docs/requirements.md`** 已按模板写入含背景、目标用户、用户故事、功能清单、验收标准、Out-of-scope、依赖与风险
- [ ] 用户已确认需求文档
---
## 阶段二:技术设计
- [ ] 技术栈、数据模型、接口契约、部署方案已确定
- [ ] 技术风险已识别,有解法或备选
- [ ] **`docs/design.md`** 已按模板写入含技术栈选型表、架构图、数据模型DDL、接口契约、关键实现思路、风险与缓解措施
- [ ] 用户已确认设计文档
---
## 阶段三:编码开发
- [ ] `gitlink-cli branch +create -n "feature-<功能描述>" -f master` feature 开发分支已从 master 创建
- [ ] 本地已 checkout feature 分支
- [ ] 功能模块已拆分任务TaskCreate逐任务完成
- [ ] **代码注释** 已补全(公共函数/类有 docstring/JSDoc用途、参数、返回值
- [ ] **`docs/api.md`** 已写入(如有 HTTP API路径、方法、参数、响应、错误码
- [ ] 配置项新增已文档化
- [ ] 代码已提交推送至 feature 分支
---
## 阶段四:测试验证
- [ ] 单元测试编写并通过Lint 无 Error
- [ ] release-xxx 分支已从 master 创建(`gitlink-cli branch +create -n "release-<版本号>" -f master`
- [ ] feature 已合并到 release-xxx`git merge feature-<功能描述>`
- [ ] CI 流水线已触发(`gitlink-cli pipeline +run`)并运行成功
- [ ] 集成测试通过AC 逐项验证通过
- [ ] `gitlink-cli pr +create --head "feature-<功能描述>" --base "release-<版本号>"` PR 已创建
- [ ] `gitlink-cli workflow +pr-summary -n <pr-number>` AI Review 已生成
- [ ] `gitlink-cli pr +review` Review 已提交approved
- [ ] `gitlink-cli pr +merge` PR 已合并feature-xxx → release-xxx
- [ ] 确认未出现 feature-xxx 直接向 master 发 PR违反分支规则
- [ ] **`docs/test-report.md`** 已按模板写入含测试范围、环境、AC逐条结果、覆盖率、遗留问题
---
## ⚠ 阶段五:发布上线(必须严格按顺序执行,禁止跳步!)
> 🔴 **必须按 第1步→第5步 顺序逐步执行,禁止跳过任何步骤、禁止调换顺序。**
### 第 1 步:发布前确认
- [ ] 所有测试通过 + PR Review 通过feature 已合入 release-xxx
- [ ] 配置已更新,回滚方案已确认
- [ ] **用户明确确认"可以发布"**
### 第 2 步:触发生产流水线,执行发布
- [ ] 生产流水线已触发(`gitlink-cli pipeline +run -w <prod-workflow> -r release-<版本号>`)⚠ 需用户确认
- [ ] 生产流水线运行成功,冒烟测试通过,监控指标正常
### 第 3 步release-xxx 合并回 master⚠ 不可逆,需用户确认)
- [ ] `gitlink-cli pr +create --head "release-<版本号>" --base "master"` PR 已创建
- [ ] **用户已确认**`gitlink-cli pr +merge` PR 已合并
- [ ] release-xxx 分支已保留(不删除,保留最近一个版本)
### 第 4 步:输出文档
- [ ] **`CHANGELOG.md`** 已追加本次版本条目Added/Changed/Fixed/Breaking Changes
- [ ] **`docs/release-notes.md`** 已按模板写入(版本号、上线时间、更新内容、验证方式、回滚方案)
### 第 5 步:创建 Release 并清理
- [ ] `gitlink-cli release +create` Release 已创建(基于 master
- [ ] feature 分支已删除(本地 + 远程)(**release 分支保留,不删除**
- [ ] 相关方已通知
### ❌ 禁止的行为
- [ ] 确认未出现 feature-xxx 直接向 master 发 PR必须经过 release-xxx
- [ ] 确认未经用户确认就触发生产流水线或执行 release → master 合并
- [ ] 确认未直接 `git push origin master`
- [ ] 确认未用 `git merge` 直接操作 master 绕过 PR 流程
- [ ] 确认合并 PR 后已创建 Release
- [ ] 确认创建 Release 后已清理 feature 分支release 保留)