Initial commit: 1人+2AI协作框架 - 完整目录结构和AI宪法
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"name": "Dev AI",
|
||||
"role": "代码开发者",
|
||||
"responsibilities": [
|
||||
"编写业务代码",
|
||||
"生成技术文档",
|
||||
"维护代码质量"
|
||||
],
|
||||
"allowed_paths": [
|
||||
"projects/*/src/",
|
||||
"projects/*/docs/",
|
||||
"shared/",
|
||||
"review/*/task.md",
|
||||
"review/*/acceptance.md",
|
||||
"review/*/impact.md"
|
||||
],
|
||||
"forbidden_paths": [
|
||||
"projects/*/tests/",
|
||||
"reports/",
|
||||
"review/*/feedback/"
|
||||
],
|
||||
"prompt_templates": {
|
||||
"coding": ".ai/prompts/coding/",
|
||||
"documentation": ".ai/prompts/coding/"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"name": "QA AI",
|
||||
"role": "测试工程师",
|
||||
"responsibilities": [
|
||||
"编写测试用例",
|
||||
"执行测试",
|
||||
"生成测试报告",
|
||||
"提供反馈"
|
||||
],
|
||||
"allowed_paths": [
|
||||
"projects/*/tests/",
|
||||
"reports/",
|
||||
"review/*/acceptance.md",
|
||||
"review/*/feedback/"
|
||||
],
|
||||
"forbidden_paths": [
|
||||
"projects/*/src/",
|
||||
"projects/*/docs/",
|
||||
"shared/",
|
||||
"review/*/task.md",
|
||||
"review/*/impact.md"
|
||||
],
|
||||
"prompt_templates": {
|
||||
"testing": ".ai/prompts/testing/"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"workflow": "human-ai-collaboration",
|
||||
"roles": ["human", "dev-ai", "qa-ai"],
|
||||
"stages": [
|
||||
{
|
||||
"name": "需求分析",
|
||||
"actor": "human",
|
||||
"output": "review/{task_id}/task.md"
|
||||
},
|
||||
{
|
||||
"name": "开发实现",
|
||||
"actor": "dev-ai",
|
||||
"input": "review/{task_id}/task.md",
|
||||
"output": ["projects/*/src/", "projects/*/docs/"]
|
||||
},
|
||||
{
|
||||
"name": "影响评估",
|
||||
"actor": "dev-ai",
|
||||
"output": "review/{task_id}/impact.md"
|
||||
},
|
||||
{
|
||||
"name": "验收标准定义",
|
||||
"actor": "dev-ai",
|
||||
"output": "review/{task_id}/acceptance.md"
|
||||
},
|
||||
{
|
||||
"name": "测试设计",
|
||||
"actor": "qa-ai",
|
||||
"input": ["review/{task_id}/task.md", "review/{task_id}/acceptance.md"],
|
||||
"output": "projects/*/tests/"
|
||||
},
|
||||
{
|
||||
"name": "测试执行",
|
||||
"actor": "qa-ai",
|
||||
"output": ["reports/test-results/", "reports/reviews/"]
|
||||
},
|
||||
{
|
||||
"name": "反馈提交",
|
||||
"actor": "qa-ai",
|
||||
"output": "review/{task_id}/feedback/round{round}.md"
|
||||
},
|
||||
{
|
||||
"name": "验收确认",
|
||||
"actor": "human",
|
||||
"input": ["review/{task_id}/feedback/", "reports/test-results/"]
|
||||
}
|
||||
],
|
||||
"ci_triggers": {
|
||||
"on_push_to_main": ["run-tests", "generate-reports"],
|
||||
"on_pr_open": ["run-tests", "code-review"],
|
||||
"on_task_update": ["notify-qa-ai"]
|
||||
}
|
||||
}
|
||||
+58
@@ -0,0 +1,58 @@
|
||||
# Dependencies
|
||||
node_modules/
|
||||
vendor/
|
||||
__pycache__/
|
||||
*.pyc
|
||||
*.pyo
|
||||
venv/
|
||||
|
||||
# Build outputs
|
||||
dist/
|
||||
build/
|
||||
*.log
|
||||
*.out
|
||||
|
||||
# IDE
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
*.DS_Store
|
||||
|
||||
# OS
|
||||
Thumbs.db
|
||||
.DS_Store
|
||||
|
||||
# Environment variables
|
||||
.env
|
||||
.env.local
|
||||
.env.*.local
|
||||
.env.production
|
||||
|
||||
# Test reports
|
||||
reports/test-results/*.json
|
||||
reports/test-results/*.xml
|
||||
reports/reviews/*.md
|
||||
|
||||
# Model files
|
||||
models/
|
||||
*.pt
|
||||
*.pth
|
||||
*.onnx
|
||||
|
||||
# Data files
|
||||
data/
|
||||
*.csv
|
||||
*.jsonl
|
||||
|
||||
# Temporary files
|
||||
*.tmp
|
||||
*.temp
|
||||
*.bak
|
||||
|
||||
# Logs
|
||||
logs/
|
||||
*.log
|
||||
|
||||
# AI history (optional - uncomment to track)
|
||||
# .ai/history/
|
||||
@@ -0,0 +1,287 @@
|
||||
---
|
||||
name: "ai-collab-setup"
|
||||
description: "Creates complete '1 Human + 2 AI' collaboration framework with directory structure and AI constitution. Invoke when starting a new AI-assisted programming project."
|
||||
---
|
||||
|
||||
# AI 协作框架快速搭建
|
||||
|
||||
## 功能
|
||||
|
||||
一键创建"1 人+2AI(Coder+Tester)"协作框架,包括:
|
||||
- 完整的目录结构
|
||||
- AI 角色定义与权限约定(AGENTS.md)
|
||||
- AI 配置文件
|
||||
- 示例任务模板
|
||||
- README 文档
|
||||
|
||||
## 使用方法
|
||||
|
||||
在新项目根目录执行:
|
||||
|
||||
```bash
|
||||
# 调用此 skill
|
||||
# skill 会自动创建所有必要的目录和文件
|
||||
```
|
||||
|
||||
## 创建的内容
|
||||
|
||||
### 目录结构
|
||||
```
|
||||
.
|
||||
├── AGENTS.md # AI 宪法(角色定义 + 权限约定)
|
||||
├── README.md # 项目说明
|
||||
├── .gitignore
|
||||
├── .ai/
|
||||
│ ├── config/
|
||||
│ │ ├── coder.json # Dev AI 配置
|
||||
│ │ ├── tester.json # QA AI 配置
|
||||
│ │ └── workflow.json # 工作流配置
|
||||
│ └── prompts/
|
||||
│ ├── coding/ # 编码提示词
|
||||
│ └── testing/ # 测试提示词
|
||||
├── projects/
|
||||
│ ├── P01_app/
|
||||
│ │ ├── src/ # Dev AI 工作区
|
||||
│ │ ├── tests/ # QA AI 工作区
|
||||
│ │ ├── docs/
|
||||
│ │ └── ENVIRONMENT.md
|
||||
│ └── P02_training/
|
||||
│ ├── src/
|
||||
│ ├── tests/
|
||||
│ ├── docs/
|
||||
│ └── ENVIRONMENT.md
|
||||
├── review/
|
||||
│ ├── active/ # 活跃任务
|
||||
│ │ ├── P01-001/
|
||||
│ │ │ ├── task.md
|
||||
│ │ │ ├── acceptance.md
|
||||
│ │ │ ├── impact.md
|
||||
│ │ │ └── feedback/
|
||||
│ │ ├── P01-002/
|
||||
│ │ └── CROSS-001/
|
||||
│ └── archived/ # 归档任务
|
||||
│ └── 2026-Q2/
|
||||
├── shared/
|
||||
│ ├── scripts/
|
||||
│ ├── templates/
|
||||
│ └── utils/
|
||||
├── reports/
|
||||
│ ├── test-results/
|
||||
│ └── quality-reports/
|
||||
└── .github/workflows/
|
||||
```
|
||||
|
||||
### 核心文件
|
||||
|
||||
**AGENTS.md** - AI 宪法:
|
||||
- 三个角色定义(人类、Dev AI、QA AI)
|
||||
- 权限矩阵
|
||||
- 工作流程(8 个步骤)
|
||||
- 沟通规范
|
||||
- 命名规范
|
||||
|
||||
**AI 配置文件**:
|
||||
- `.ai/config/coder.json` - Dev AI 权限和职责
|
||||
- `.ai/config/tester.json` - QA AI 权限和职责
|
||||
- `.ai/config/workflow.json` - 工作流配置
|
||||
|
||||
**示例任务**:
|
||||
- `review/active/P01-001/` - 示例任务(包含 task、acceptance、impact、feedback)
|
||||
- `review/active/CROSS-001/` - 跨项目任务示例
|
||||
|
||||
## 执行命令
|
||||
|
||||
```bash
|
||||
# 1. 创建目录结构
|
||||
mkdir -p .ai/{config,prompts/{coding,testing}} \
|
||||
projects/{P01_app,P02_training}/{src,tests,docs} \
|
||||
review/{active/{P01-001, P01-002, CROSS-001},archived/2026-Q2}/feedback \
|
||||
shared/{scripts,templates,utils} \
|
||||
reports/{test-results,quality-reports} \
|
||||
.github/workflows
|
||||
|
||||
# 2. 创建 AGENTS.md
|
||||
cat > AGENTS.md << 'EOF'
|
||||
# AI 角色定义与权限约定
|
||||
|
||||
## 团队架构
|
||||
|
||||
| 角色 | 是谁 | 干什么 | 不干什么 |
|
||||
|------|------|--------|----------|
|
||||
| 人类 | 你 | 下指令、审阅、做决策 | 不写代码、不写测试 |
|
||||
| Dev AI | Claude/TRAE 等 | 写代码 + 文档、修 bug | 不动 tests/、不跑测试 |
|
||||
| QA AI | 扣子编程 AI | 写测试、跑测试、写反馈 | 不动 src/、不改业务代码 |
|
||||
|
||||
## 目录权限矩阵
|
||||
|
||||
| 目录 | Dev AI | QA AI | 人类 |
|
||||
|------|--------|-------|------|
|
||||
| projects/*/src/ | ✅ | ❌ | ✅ |
|
||||
| projects/*/tests/ | ❌ | ✅ | ✅ |
|
||||
| projects/*/docs/ | ✅ | ❌ | ✅ |
|
||||
| review/*/task.md | ❌ | ❌ | ✅ |
|
||||
| review/*/acceptance.md | ✅ | ✅ | ✅ |
|
||||
| review/*/impact.md | ✅ | ❌ | ✅ |
|
||||
| review/*/feedback/ | ❌ | ✅ | ✅ |
|
||||
| shared/ | ✅ | ❌ | ✅ |
|
||||
| reports/ | ❌ | ✅ | ✅ |
|
||||
|
||||
## 工作流程
|
||||
|
||||
1. 人类创建 task.md
|
||||
2. Dev AI 写代码、文档、impact.md
|
||||
3. 人类审核
|
||||
4. QA AI 写测试、执行、写 feedback
|
||||
5. 人类确认或返回修改
|
||||
|
||||
## 任务状态
|
||||
|
||||
TODO → IN_PROGRESS → REVIEW → DONE → ARCHIVED
|
||||
EOF
|
||||
|
||||
# 3. 创建 README.md
|
||||
cat > README.md << 'EOF'
|
||||
# AI 协作项目
|
||||
|
||||
## 目录结构
|
||||
|
||||
详见 AGENTS.md
|
||||
|
||||
## 快速开始
|
||||
|
||||
1. 在 review/active/ 下创建任务目录
|
||||
2. 编写 task.md
|
||||
3. Dev AI 开始工作
|
||||
EOF
|
||||
|
||||
# 4. 创建 AI 配置
|
||||
cat > .ai/config/coder.json << 'EOF'
|
||||
{
|
||||
"name": "Dev AI",
|
||||
"role": "代码开发者",
|
||||
"allowed_paths": ["projects/*/src/", "projects/*/docs/", "shared/"],
|
||||
"forbidden_paths": ["projects/*/tests/", "reports/"]
|
||||
}
|
||||
EOF
|
||||
|
||||
cat > .ai/config/tester.json << 'EOF'
|
||||
{
|
||||
"name": "QA AI",
|
||||
"role": "测试工程师",
|
||||
"allowed_paths": ["projects/*/tests/", "reports/"],
|
||||
"forbidden_paths": ["projects/*/src/", "shared/"]
|
||||
}
|
||||
EOF
|
||||
|
||||
cat > .ai/config/workflow.json << 'EOF'
|
||||
{
|
||||
"workflow": "human-ai-collaboration",
|
||||
"roles": ["human", "dev-ai", "qa-ai"],
|
||||
"stages": [
|
||||
{"name": "需求分析", "actor": "human"},
|
||||
{"name": "开发实现", "actor": "dev-ai"},
|
||||
{"name": "测试执行", "actor": "qa-ai"},
|
||||
{"name": "验收确认", "actor": "human"}
|
||||
]
|
||||
}
|
||||
EOF
|
||||
|
||||
# 5. 创建示例任务
|
||||
cat > review/active/P01-001/task.md << 'EOF'
|
||||
# P01-001 - 示例任务
|
||||
|
||||
## 任务信息
|
||||
- 任务编号:P01-001
|
||||
- 项目:P01_app
|
||||
- 状态:TODO
|
||||
|
||||
## 任务描述
|
||||
这是一个示例任务,展示任务单的结构。
|
||||
|
||||
## 交付物
|
||||
- src/example.js
|
||||
- tests/example.test.js
|
||||
EOF
|
||||
|
||||
cat > review/active/P01-001/acceptance.md << 'EOF'
|
||||
# P01-001 - 验收标准
|
||||
|
||||
## 功能验收
|
||||
- [ ] 功能点 1
|
||||
- [ ] 功能点 2
|
||||
|
||||
## 测试覆盖要求
|
||||
- 单元测试覆盖率:>= 80%
|
||||
EOF
|
||||
|
||||
cat > review/active/P01-001/impact.md << 'EOF'
|
||||
# P01-001 - 变更影响范围
|
||||
|
||||
## 修改的文件
|
||||
| 文件路径 | 修改类型 | 影响等级 |
|
||||
|---------|---------|---------|
|
||||
| src/example.js | 新增 | HIGH |
|
||||
|
||||
## 需要回归测试的场景
|
||||
- 场景 1
|
||||
EOF
|
||||
|
||||
cat > review/active/P01-001/feedback/round1.md << 'EOF'
|
||||
# P01-001 - 第一轮测试反馈
|
||||
|
||||
## 测试结果
|
||||
- 通过:0
|
||||
- 失败:0
|
||||
|
||||
## 反馈
|
||||
待执行测试
|
||||
EOF
|
||||
|
||||
# 6. 创建项目环境文件
|
||||
cat > projects/P01_app/ENVIRONMENT.md << 'EOF'
|
||||
# P01_app - 环境准备
|
||||
|
||||
## 依赖
|
||||
- Node.js >= 20.x
|
||||
- npm >= 10.x
|
||||
|
||||
## 安装
|
||||
npm install
|
||||
EOF
|
||||
|
||||
cat > projects/P02_training/ENVIRONMENT.md << 'EOF'
|
||||
# P02_training - 环境准备
|
||||
|
||||
## 依赖
|
||||
- Python >= 3.10
|
||||
- PyTorch >= 2.0
|
||||
|
||||
## 安装
|
||||
pip install -r requirements.txt
|
||||
EOF
|
||||
```
|
||||
|
||||
## 使用场景
|
||||
|
||||
**何时调用此 skill:**
|
||||
- ✅ 启动新的 AI 辅助编程项目
|
||||
- ✅ 需要建立标准化的 AI 协作流程
|
||||
- ✅ 团队开始使用"1 人+2AI"模式
|
||||
|
||||
**不适用场景:**
|
||||
- ❌ 纯人工开发项目
|
||||
- ❌ 已有现成的协作框架
|
||||
|
||||
## 后续步骤
|
||||
|
||||
skill 执行后:
|
||||
1. 检查 `review/active/P01-001/` 示例任务
|
||||
2. 根据实际需求修改 `AGENTS.md`
|
||||
3. 创建第一个真实任务
|
||||
4. 开始协作开发
|
||||
|
||||
---
|
||||
|
||||
**Version**: 1.0
|
||||
**Created**: 2026-05-22
|
||||
**Based On**: ErrLens AI Programming Project
|
||||
@@ -0,0 +1,188 @@
|
||||
# AI 角色定义与权限约定
|
||||
|
||||
## 团队架构
|
||||
```
|
||||
┌─────────────────────────────────────────────┐
|
||||
│ 人类负责人 │
|
||||
│ 需求分析 · 架构设计 · 最终决策 │
|
||||
└───────────────────┬─────────────────────────┘
|
||||
│
|
||||
┌───────────┴───────────┐
|
||||
▼ ▼
|
||||
┌───────────────┐ ┌───────────────┐
|
||||
│ Dev AI │ │ QA AI │
|
||||
│ 代码编写 │ │ 测试设计 │
|
||||
│ 文档生成 │ │ 测试执行 │
|
||||
│ 影响评估 │ │ 质量保障 │
|
||||
└───────────────┘ └───────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 角色职责
|
||||
|
||||
### Dev AI (编码AI)
|
||||
**职责范围:**
|
||||
- ✅ 编写业务代码 (`projects/*/src/`)
|
||||
- ✅ 生成技术文档 (`projects/*/docs/`)
|
||||
- ✅ 定义验收标准 (`review/*/acceptance.md`)
|
||||
- ✅ 评估变更影响 (`review/*/impact.md`)
|
||||
- ✅ 维护共享资源 (`shared/`)
|
||||
|
||||
**禁止操作:**
|
||||
- ❌ 修改测试代码 (`projects/*/tests/`)
|
||||
- ❌ 修改测试报告 (`reports/`)
|
||||
- ❌ 提交测试反馈 (`review/*/feedback/`)
|
||||
|
||||
### QA AI (测试AI)
|
||||
**职责范围:**
|
||||
- ✅ 编写测试用例 (`projects/*/tests/`)
|
||||
- ✅ 执行测试并生成报告 (`reports/`)
|
||||
- ✅ 补充验收标准 (`review/*/acceptance.md`)
|
||||
- ✅ 提交测试反馈 (`review/*/feedback/`)
|
||||
|
||||
**禁止操作:**
|
||||
- ❌ 修改业务代码 (`projects/*/src/`)
|
||||
- ❌ 修改技术文档 (`projects/*/docs/`)
|
||||
- ❌ 修改共享资源 (`shared/`)
|
||||
- ❌ 修改任务描述和影响评估
|
||||
|
||||
### 人类负责人
|
||||
**职责范围:**
|
||||
- ✅ 可以修改所有目录
|
||||
- ✅ 审核 AI 输出质量
|
||||
- ✅ 解决 AI 之间的冲突
|
||||
- ✅ 最终决策和验收
|
||||
|
||||
---
|
||||
|
||||
## 工作流程
|
||||
|
||||
```
|
||||
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
||||
│ 需求分析 │ ──→ │ 开发实现 │ ──→ │ 影响评估 │
|
||||
│ (人类) │ │ (Dev AI) │ │ (Dev AI) │
|
||||
└─────────────┘ └─────────────┘ └─────────────┘
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
||||
│ 验收标准 │ ──→ │ 测试设计 │ ──→ │ 测试执行 │
|
||||
│ (Dev AI) │ │ (QA AI) │ │ (QA AI) │
|
||||
└─────────────┘ └─────────────┘ └─────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────┐ ┌─────────────┐
|
||||
│ 反馈提交 │ ──→ │ 验收确认 │
|
||||
│ (QA AI) │ │ (人类) │
|
||||
└─────────────┘ └─────────────┘
|
||||
```
|
||||
|
||||
### 详细流程说明
|
||||
|
||||
**1. 需求分析阶段**
|
||||
- 人类负责人创建任务单
|
||||
- 输出: `review/{task_id}/task.md`
|
||||
|
||||
**2. 开发实现阶段**
|
||||
- Dev AI 根据任务描述编写代码
|
||||
- 输出: `projects/*/src/`, `projects/*/docs/`
|
||||
|
||||
**3. 影响评估阶段**
|
||||
- Dev AI 分析变更影响范围
|
||||
- 输出: `review/{task_id}/impact.md`
|
||||
|
||||
**4. 验收标准定义**
|
||||
- Dev AI 定义验收标准
|
||||
- QA AI 可补充测试要点
|
||||
- 输出: `review/{task_id}/acceptance.md`
|
||||
|
||||
**5. 测试设计阶段**
|
||||
- QA AI 根据验收标准编写测试用例
|
||||
- 输出: `projects/*/tests/`
|
||||
|
||||
**6. 测试执行阶段**
|
||||
- QA AI 执行测试并生成报告
|
||||
- 输出: `reports/test-results/`, `reports/quality-reports/`
|
||||
|
||||
**7. 反馈提交阶段**
|
||||
- QA AI 提交测试反馈
|
||||
- 输出: `review/{task_id}/feedback/round{round}.md`
|
||||
|
||||
**8. 验收确认阶段**
|
||||
- 人类负责人审核测试结果
|
||||
- 确认任务完成或返回修改
|
||||
|
||||
---
|
||||
|
||||
## 目录权限矩阵
|
||||
|
||||
| 目录路径 | Dev AI | QA AI | 人类 |
|
||||
|---------|--------|-------|------|
|
||||
| `.ai/` | ❌ | ❌ | ✅ |
|
||||
| `shared/` | ✅ | ❌ | ✅ |
|
||||
| `projects/*/src/` | ✅ | ❌ | ✅ |
|
||||
| `projects/*/tests/` | ❌ | ✅ | ✅ |
|
||||
| `projects/*/docs/` | ✅ | ❌ | ✅ |
|
||||
| `review/*/task.md` | ❌ | ❌ | ✅ |
|
||||
| `review/*/acceptance.md` | ✅ | ✅ | ✅ |
|
||||
| `review/*/impact.md` | ✅ | ❌ | ✅ |
|
||||
| `review/*/feedback/` | ❌ | ✅ | ✅ |
|
||||
| `reports/` | ❌ | ✅ | ✅ |
|
||||
| `.github/` | ❌ | ❌ | ✅ |
|
||||
|
||||
---
|
||||
|
||||
## 沟通规范
|
||||
|
||||
### Dev AI → QA AI
|
||||
在 `review/{task_id}/` 目录提交:
|
||||
- **验收标准** (`acceptance.md`) - 明确测试目标
|
||||
- **变更影响范围** (`impact.md`) - 指导回归测试
|
||||
- **环境准备** 参考项目级 `ENVIRONMENT.md`
|
||||
|
||||
### QA AI → Dev AI
|
||||
在 `review/{task_id}/feedback/` 目录提交:
|
||||
- **测试结果报告** (`round{round}.md`)
|
||||
- **Bug清单** - 列出问题和严重程度
|
||||
- **改进建议** - 代码优化建议
|
||||
|
||||
---
|
||||
|
||||
## 命名规范
|
||||
|
||||
### 项目命名
|
||||
```
|
||||
P01_项目名称 # P01 表示项目编号
|
||||
```
|
||||
|
||||
### 任务编号
|
||||
```
|
||||
P01-001 # P01 项目编号 + 001 任务编号
|
||||
```
|
||||
|
||||
### 分支命名
|
||||
```
|
||||
feature/P01-001-login # 功能开发
|
||||
bugfix/P01-001-password # Bug修复
|
||||
test/P01-001-testcases # 测试用例
|
||||
```
|
||||
|
||||
### 提交信息
|
||||
```
|
||||
feat(P01-001): 实现用户登录功能
|
||||
fix(P01-001): 修复密码验证问题
|
||||
docs(P01-001): 更新接口文档
|
||||
test(P01-001): 添加登录测试用例
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## AI 配置文件说明
|
||||
|
||||
| 文件 | 说明 |
|
||||
|------|------|
|
||||
| `.ai/config/coder.json` | Dev AI 配置(权限、职责) |
|
||||
| `.ai/config/tester.json` | QA AI 配置(权限、职责) |
|
||||
| `.ai/config/workflow.json` | 工作流配置(阶段、触发器) |
|
||||
| `.ai/prompts/coding/` | 编码提示词模板 |
|
||||
| `.ai/prompts/testing/` | 测试提示词模板 |
|
||||
@@ -0,0 +1,141 @@
|
||||
# ErrLens AI 编程项目
|
||||
|
||||
一个"人+2AI"协作模式的 AI 辅助编程项目仓库。
|
||||
|
||||
---
|
||||
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
.
|
||||
├── AGENTS.md # AI角色定义+权限约定+工作流
|
||||
├── README.md
|
||||
├── .gitignore
|
||||
├── .ai/ # AI协作核心配置
|
||||
│ ├── config/
|
||||
│ │ ├── coder.json # Dev AI 配置
|
||||
│ │ ├── tester.json # QA AI 配置
|
||||
│ │ └── workflow.json # 工作流配置
|
||||
│ └── prompts/
|
||||
│ ├── coding/ # 编码提示词模板
|
||||
│ └── testing/ # 测试提示词模板
|
||||
├── projects/ # 项目代码
|
||||
│ ├── P01_errlens_app/ # 主应用项目
|
||||
│ │ ├── src/ # 业务代码 (Dev AI)
|
||||
│ │ ├── tests/ # 测试代码 (QA AI)
|
||||
│ │ ├── docs/ # 项目文档 (Dev AI)
|
||||
│ │ │ ├── 01_需求概要.md
|
||||
│ │ │ ├── 02_架构设计.md
|
||||
│ │ │ └── 03_接口定义.md
|
||||
│ │ └── ENVIRONMENT.md # 项目级环境准备
|
||||
│ └── P02_errlens_training/ # AI训练项目
|
||||
│ ├── src/
|
||||
│ ├── tests/
|
||||
│ ├── docs/
|
||||
│ │ ├── 01_需求概要.md
|
||||
│ │ ├── 02_架构设计.md
|
||||
│ │ └── 03_训练流程.md
|
||||
│ └── ENVIRONMENT.md
|
||||
├── review/ # 交接中心
|
||||
│ ├── active/ # 活跃任务
|
||||
│ │ ├── P01-001/ # 项目1-任务001
|
||||
│ │ │ ├── task.md # 任务描述
|
||||
│ │ │ ├── acceptance.md # 验收标准
|
||||
│ │ │ ├── impact.md # 变更影响范围
|
||||
│ │ │ └── feedback/ # 反馈记录
|
||||
│ │ │ └── round1.md
|
||||
│ │ ├── P01-002/ # 项目1-任务002
|
||||
│ │ ├── P02-001/ # 项目2-任务001
|
||||
│ │ └── CROSS-001/ # 跨项目任务
|
||||
│ └── archived/ # 已完成任务(按季度归档)
|
||||
│ ├── 2026-Q2/
|
||||
│ └── 2026-Q3/
|
||||
├── shared/ # 共享资源
|
||||
│ ├── scripts/ # 共享脚本
|
||||
│ ├── templates/ # 代码/文档模板
|
||||
│ └── utils/ # 工具函数
|
||||
├── reports/ # 统一报告
|
||||
│ ├── test-results/ # 测试结果
|
||||
│ └── quality-reports/ # 质量评审报告
|
||||
└── .github/ # CI/CD配置
|
||||
└── workflows/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 团队角色
|
||||
|
||||
| 角色 | 是谁 | 干什么 | 不干什么 |
|
||||
|------|------|--------|----------|
|
||||
| **人类负责人** | 你 | 下指令、审阅、做决策、定验收标准 | 不写代码、不写测试 |
|
||||
| **Dev AI** | Claude/TRAE/元宝等 | 写业务代码+文档、修bug、写impact | 不动tests/、不跑测试 |
|
||||
| **QA AI** | 扣子编程AI | 写测试、跑测试、写反馈 | 不动src/、不改业务代码 |
|
||||
|
||||
---
|
||||
|
||||
## 工作流程
|
||||
|
||||
1. **你**在 `review/active/P01-001/` 下写 `task.md`(要做什么)
|
||||
2. **你或Dev AI**补充 `acceptance.md`(怎么算做完了)
|
||||
3. **Dev AI** 在 `projects/P01_errlens_app/src/` 写代码,在 `docs/` 写文档,写 `impact.md`
|
||||
4. **你**审一眼,没问题就触发QA AI
|
||||
5. **QA AI** 读 `task.md` + `acceptance.md` + `impact.md`,按 `ENVIRONMENT.md` 准备环境,在 `tests/` 写测试并执行,写 `feedback/round1.md`
|
||||
6. **有bug** → 你看反馈 → 让Dev AI修 → 回到步骤3(round2)
|
||||
**通过** → 你确认 → 任务关闭,报告归档到 `reports/`
|
||||
|
||||
---
|
||||
|
||||
## 任务状态流转
|
||||
|
||||
```
|
||||
TODO → IN_PROGRESS → REVIEW → DONE → ARCHIVED(移入archived/季度目录)
|
||||
```
|
||||
|
||||
`task.md` 中添加状态字段:
|
||||
```
|
||||
status: TODO | IN_PROGRESS | REVIEW | DONE | ARCHIVED
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 决策总结
|
||||
|
||||
| 问题 | 决策 |
|
||||
|------|------|
|
||||
| 任务创建 | 先手动,中期脚本化(create-task.sh),后期CI联动Issue |
|
||||
| 跨项目任务 | `CROSS-xxx/`,feedback按项目分文件(如 `P01-round1.md`) |
|
||||
| 任务归档 | `review/active/` + `review/archived/2026-Qx/`,状态字段驱动,定期归档 |
|
||||
|
||||
---
|
||||
|
||||
## 快速开始
|
||||
|
||||
```bash
|
||||
# 克隆仓库
|
||||
git clone <repository-url>
|
||||
cd errlens
|
||||
|
||||
# 查看目录结构
|
||||
find . -type d | sort
|
||||
|
||||
# 查看当前任务
|
||||
ls -la review/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 参考文档
|
||||
|
||||
| 文件 | 说明 |
|
||||
|------|------|
|
||||
| [AGENTS.md](AGENTS.md) | AI角色定义与权限约定 |
|
||||
| [workflow.json](.ai/config/workflow.json) | 工作流配置 |
|
||||
| [P01-001 任务](review/P01-001/task.md) | 示例任务单 |
|
||||
|
||||
---
|
||||
|
||||
## 版本历史
|
||||
|
||||
| 版本 | 日期 | 说明 |
|
||||
|------|------|------|
|
||||
| v1.0 | 2026-05-22 | 初始版本,完成目录结构设计 |
|
||||
@@ -0,0 +1,37 @@
|
||||
# P01_errlens_app - 环境准备指南
|
||||
|
||||
## 依赖要求
|
||||
- Node.js >= 20.x
|
||||
- npm >= 10.x
|
||||
- 数据库: PostgreSQL 15+
|
||||
|
||||
## 安装步骤
|
||||
```bash
|
||||
# 安装依赖
|
||||
npm install
|
||||
|
||||
# 配置环境变量
|
||||
cp .env.example .env
|
||||
|
||||
# 初始化数据库
|
||||
npm run db:migrate
|
||||
```
|
||||
|
||||
## 环境变量
|
||||
| 变量名 | 说明 | 默认值 |
|
||||
|--------|------|--------|
|
||||
| PORT | 服务端口 | 3000 |
|
||||
| DATABASE_URL | 数据库连接 | postgresql://localhost:5432/errlens |
|
||||
| NODE_ENV | 运行环境 | development |
|
||||
|
||||
## 运行命令
|
||||
```bash
|
||||
# 开发模式
|
||||
npm run dev
|
||||
|
||||
# 生产构建
|
||||
npm run build
|
||||
|
||||
# 运行测试
|
||||
npm test
|
||||
```
|
||||
@@ -0,0 +1,21 @@
|
||||
# P01_errlens_app - 需求概要
|
||||
|
||||
## 项目概述
|
||||
ErrLens 是一个 AI 辅助编程工具,旨在帮助开发者快速定位和修复代码错误。
|
||||
|
||||
## 核心功能
|
||||
1. **错误检测** - 实时分析代码中的潜在问题
|
||||
2. **智能修复** - 自动生成修复建议
|
||||
3. **代码审查** - 提供代码质量评估
|
||||
4. **学习建议** - 根据错误类型提供学习资源
|
||||
|
||||
## 用户角色
|
||||
- 初级开发者:学习编程时获得实时反馈
|
||||
- 中级开发者:提高代码质量和效率
|
||||
- 团队负责人:监控团队代码质量
|
||||
|
||||
## 技术栈
|
||||
- 前端:React + TypeScript
|
||||
- 后端:Node.js + Express
|
||||
- 数据库:PostgreSQL
|
||||
- AI 服务:自定义模型 + OpenAI API
|
||||
@@ -0,0 +1,59 @@
|
||||
# P01_errlens_app - 架构设计
|
||||
|
||||
## 系统架构
|
||||
采用微服务架构,前后端分离。
|
||||
|
||||
### 架构图
|
||||
```
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ 前端层 │
|
||||
│ React + TypeScript + Tailwind CSS │
|
||||
└──────────────────────┬──────────────────────────────┘
|
||||
│ HTTP/WebSocket
|
||||
▼
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ API网关 │
|
||||
│ Express + Middleware │
|
||||
└──────────────────────┬──────────────────────────────┘
|
||||
│
|
||||
┌─────────────────┼─────────────────┐
|
||||
▼ ▼ ▼
|
||||
┌──────────┐ ┌──────────┐ ┌──────────┐
|
||||
│ 代码分析 │ │ AI服务 │ │ 用户管理 │
|
||||
│ Service │ │ Service │ │ Service │
|
||||
└──────────┘ └──────────┘ └──────────┘
|
||||
│ │ │
|
||||
└─────────────────┼─────────────────┘
|
||||
▼
|
||||
┌──────────────┐
|
||||
│ PostgreSQL │
|
||||
└──────────────┘
|
||||
```
|
||||
|
||||
## 核心模块
|
||||
|
||||
### 1. 代码分析模块
|
||||
- 解析源代码
|
||||
- 静态分析检测
|
||||
- 错误分类与评级
|
||||
|
||||
### 2. AI 服务模块
|
||||
- 调用 AI 模型
|
||||
- 生成修复建议
|
||||
- 优化提示词
|
||||
|
||||
### 3. 用户管理模块
|
||||
- 用户认证授权
|
||||
- 使用统计
|
||||
- 个性化配置
|
||||
|
||||
## 目录结构
|
||||
```
|
||||
src/
|
||||
├── api/ # REST API 路由
|
||||
├── controllers/ # 业务逻辑
|
||||
├── services/ # 核心服务
|
||||
├── models/ # 数据模型
|
||||
├── middleware/ # 中间件
|
||||
└── utils/ # 工具函数
|
||||
```
|
||||
@@ -0,0 +1,95 @@
|
||||
# P01_errlens_app - 接口定义
|
||||
|
||||
## API 基础路径
|
||||
`/api/v1`
|
||||
|
||||
## 认证方式
|
||||
JWT Token,放在 Authorization 头:
|
||||
```
|
||||
Authorization: Bearer <token>
|
||||
```
|
||||
|
||||
## 接口列表
|
||||
|
||||
### 1. 代码分析
|
||||
|
||||
#### POST /api/v1/analyze
|
||||
分析代码中的错误
|
||||
|
||||
**请求体:**
|
||||
```json
|
||||
{
|
||||
"code": "string",
|
||||
"language": "string",
|
||||
"options": {
|
||||
"strict": true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**响应:**
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"errors": [
|
||||
{
|
||||
"line": 10,
|
||||
"column": 5,
|
||||
"type": "error",
|
||||
"message": "变量未定义",
|
||||
"suggestion": "建议在使用前定义变量"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 2. 用户管理
|
||||
|
||||
#### POST /api/v1/users/login
|
||||
用户登录
|
||||
|
||||
**请求体:**
|
||||
```json
|
||||
{
|
||||
"email": "string",
|
||||
"password": "string"
|
||||
}
|
||||
```
|
||||
|
||||
**响应:**
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"token": "string",
|
||||
"user": {
|
||||
"id": "string",
|
||||
"email": "string",
|
||||
"name": "string"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 3. 修复建议
|
||||
|
||||
#### POST /api/v1/fix
|
||||
获取修复建议
|
||||
|
||||
**请求体:**
|
||||
```json
|
||||
{
|
||||
"code": "string",
|
||||
"error": {
|
||||
"type": "string",
|
||||
"message": "string"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**响应:**
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"fixedCode": "string",
|
||||
"explanation": "string"
|
||||
}
|
||||
```
|
||||
@@ -0,0 +1,38 @@
|
||||
# P02_errlens_training - 环境准备指南
|
||||
|
||||
## 依赖要求
|
||||
- Python >= 3.10
|
||||
- PyTorch >= 2.0
|
||||
- CUDA >= 11.8 (GPU训练)
|
||||
|
||||
## 安装步骤
|
||||
```bash
|
||||
# 创建虚拟环境
|
||||
python -m venv venv
|
||||
source venv/bin/activate
|
||||
|
||||
# 安装依赖
|
||||
pip install -r requirements.txt
|
||||
|
||||
# 下载预训练模型
|
||||
python scripts/download_model.py
|
||||
```
|
||||
|
||||
## 环境变量
|
||||
| 变量名 | 说明 | 默认值 |
|
||||
|--------|------|--------|
|
||||
| MODEL_DIR | 模型存储目录 | ./models |
|
||||
| DATA_DIR | 数据集目录 | ./data |
|
||||
| GPU_ENABLED | 是否使用GPU | true |
|
||||
|
||||
## 运行命令
|
||||
```bash
|
||||
# 训练模型
|
||||
python train.py
|
||||
|
||||
# 评估模型
|
||||
python evaluate.py
|
||||
|
||||
# 运行测试
|
||||
pytest tests/
|
||||
```
|
||||
@@ -0,0 +1,21 @@
|
||||
# P02_errlens_training - 需求概要
|
||||
|
||||
## 项目概述
|
||||
ErrLens Training 是 AI 模型训练组件,负责训练和优化代码错误检测模型。
|
||||
|
||||
## 核心功能
|
||||
1. **数据集管理** - 收集和预处理训练数据
|
||||
2. **模型训练** - 训练代码分析模型
|
||||
3. **模型评估** - 评估模型性能
|
||||
4. **模型部署** - 导出和部署模型
|
||||
|
||||
## 技术栈
|
||||
- Python 3.10+
|
||||
- PyTorch 2.0
|
||||
- Hugging Face Transformers
|
||||
- scikit-learn
|
||||
|
||||
## 数据来源
|
||||
- 开源代码仓库
|
||||
- 开发者上传的错误代码
|
||||
- 人工标注的错误样本
|
||||
@@ -0,0 +1,39 @@
|
||||
# P02_errlens_training - 架构设计
|
||||
|
||||
## 系统架构
|
||||
|
||||
### 架构图
|
||||
```
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ 数据层 │
|
||||
│ 原始数据 → 清洗 → 标注 → 特征提取 → 数据集 │
|
||||
└──────────────────────┬──────────────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ 训练层 │
|
||||
│ 模型定义 → 训练循环 → 验证 → 保存 │
|
||||
└──────────────────────┬──────────────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ 评估层 │
|
||||
│ 测试集评估 → 指标计算 → 报告生成 │
|
||||
└──────────────────────┬──────────────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────────────────────┐
|
||||
│ 部署层 │
|
||||
│ 模型导出 → 量化优化 → 服务部署 │
|
||||
└─────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
## 目录结构
|
||||
```
|
||||
src/
|
||||
├── data/ # 数据处理模块
|
||||
├── models/ # 模型定义
|
||||
├── training/ # 训练逻辑
|
||||
├── evaluation/ # 评估模块
|
||||
└── deployment/ # 部署工具
|
||||
```
|
||||
@@ -0,0 +1,50 @@
|
||||
# P02_errlens_training - 训练流程
|
||||
|
||||
## 训练流程
|
||||
|
||||
### 阶段一:数据准备
|
||||
```bash
|
||||
# 1. 下载原始数据
|
||||
python src/data/download.py
|
||||
|
||||
# 2. 数据清洗
|
||||
python src/data/clean.py
|
||||
|
||||
# 3. 数据标注(可选)
|
||||
python src/data/label.py
|
||||
```
|
||||
|
||||
### 阶段二:模型训练
|
||||
```bash
|
||||
# 训练命令
|
||||
python src/training/train.py \
|
||||
--data data/train \
|
||||
--model-base microsoft/codebert-base \
|
||||
--epochs 10 \
|
||||
--batch-size 32 \
|
||||
--lr 2e-5
|
||||
```
|
||||
|
||||
### 阶段三:模型评估
|
||||
```bash
|
||||
# 评估命令
|
||||
python src/evaluation/evaluate.py \
|
||||
--model models/best_model \
|
||||
--data data/test
|
||||
```
|
||||
|
||||
### 阶段四:模型导出
|
||||
```bash
|
||||
# 导出为 ONNX 格式
|
||||
python src/deployment/export.py \
|
||||
--model models/best_model \
|
||||
--output models/exported
|
||||
```
|
||||
|
||||
## 评估指标
|
||||
| 指标 | 说明 | 目标值 |
|
||||
|------|------|--------|
|
||||
| Precision | 精确率 | >= 0.90 |
|
||||
| Recall | 召回率 | >= 0.85 |
|
||||
| F1 Score | F1分数 | >= 0.87 |
|
||||
| Accuracy | 准确率 | >= 0.92 |
|
||||
@@ -0,0 +1,20 @@
|
||||
# CROSS-001 - 验收标准
|
||||
|
||||
## 功能验收
|
||||
- [ ] 字符串处理工具优化完成
|
||||
- [ ] 日期格式化工具添加完成
|
||||
- [ ] 日志工具bug修复完成
|
||||
- [ ] P01 项目测试通过
|
||||
- [ ] P02 项目测试通过
|
||||
|
||||
## 非功能验收
|
||||
- [ ] 工具函数性能提升 >= 20%
|
||||
- [ ] 代码覆盖率 >= 80%
|
||||
|
||||
## 测试覆盖要求
|
||||
- P01 回归测试覆盖率: >= 90%
|
||||
- P02 回归测试覆盖率: >= 90%
|
||||
|
||||
## 验收通过条件
|
||||
- 所有功能点验证通过
|
||||
- 两个项目回归测试通过
|
||||
@@ -0,0 +1,23 @@
|
||||
# CROSS-001 - P01 测试反馈
|
||||
|
||||
## 测试执行信息
|
||||
- 测试时间: 2026-05-23
|
||||
- 测试项目: P01_errlens_app
|
||||
- 测试人员: QA AI
|
||||
|
||||
## 测试结果概览
|
||||
- 测试用例总数: 15
|
||||
- 通过: 14
|
||||
- 失败: 1
|
||||
- 跳过: 0
|
||||
|
||||
## 失败用例详情
|
||||
- **测试点**: API响应日期格式
|
||||
- **预期结果**: 返回 ISO 8601 格式日期
|
||||
- **实际结果**: 返回格式不一致
|
||||
- **严重程度**: MEDIUM
|
||||
- **建议修复**: 统一日期格式化输出
|
||||
|
||||
## 代码质量评估
|
||||
- 代码覆盖率: 85%
|
||||
- 静态检查警告: 0 个
|
||||
@@ -0,0 +1,19 @@
|
||||
# CROSS-001 - P02 测试反馈
|
||||
|
||||
## 测试执行信息
|
||||
- 测试时间: 2026-05-23
|
||||
- 测试项目: P02_errlens_training
|
||||
- 测试人员: QA AI
|
||||
|
||||
## 测试结果概览
|
||||
- 测试用例总数: 12
|
||||
- 通过: 12
|
||||
- 失败: 0
|
||||
- 跳过: 0
|
||||
|
||||
## 代码质量评估
|
||||
- 代码覆盖率: 88%
|
||||
- 静态检查警告: 0 个
|
||||
|
||||
## 测试结论
|
||||
P02 项目测试全部通过,工具库更新未引入新问题。
|
||||
@@ -0,0 +1,22 @@
|
||||
# CROSS-001 - 变更影响范围
|
||||
|
||||
## 修改的文件
|
||||
| 文件路径 | 修改类型 | 影响等级 |
|
||||
|---------|---------|---------|
|
||||
| shared/utils/stringUtils.js | 更新 | HIGH |
|
||||
| shared/utils/dateUtils.js | 新增 | MEDIUM |
|
||||
| shared/utils/logUtils.js | 更新 | HIGH |
|
||||
|
||||
## 影响的项目和模块
|
||||
- **P01_errlens_app**:
|
||||
- [x] API模块
|
||||
- [x] 工具模块
|
||||
- **P02_errlens_training**:
|
||||
- [x] 数据处理模块
|
||||
- [x] 日志模块
|
||||
|
||||
## 需要回归测试的场景
|
||||
- P01: API响应格式验证
|
||||
- P01: 日志记录完整性
|
||||
- P02: 数据处理流程
|
||||
- P02: 训练日志输出
|
||||
@@ -0,0 +1,26 @@
|
||||
# CROSS-001 - 共享工具库更新
|
||||
|
||||
## 任务信息
|
||||
- 任务编号: CROSS-001
|
||||
- 项目: 跨项目任务
|
||||
- 创建时间: 2026-05-22
|
||||
- 负责人: Dev AI
|
||||
- 状态: TODO
|
||||
|
||||
## 任务描述
|
||||
更新 shared/utils/ 中的工具函数,修复影响 P01 和 P02 的通用问题:
|
||||
1. 优化字符串处理工具
|
||||
2. 添加日期格式化工具
|
||||
3. 修复日志工具的bug
|
||||
|
||||
## 影响项目
|
||||
- P01_errlens_app
|
||||
- P02_errlens_training
|
||||
|
||||
## 需求来源
|
||||
- 技术债务清理计划
|
||||
|
||||
## 交付物
|
||||
- `shared/utils/stringUtils.js` - 字符串处理工具
|
||||
- `shared/utils/dateUtils.js` - 日期格式化工具
|
||||
- `shared/utils/logUtils.js` - 日志工具修复
|
||||
@@ -0,0 +1,24 @@
|
||||
# P01-001 - 验收标准
|
||||
|
||||
## 功能验收
|
||||
- [ ] 用户可以注册新账户
|
||||
- [ ] 用户可以使用邮箱密码登录
|
||||
- [ ] 登录成功返回 JWT Token
|
||||
- [ ] 密码错误时返回明确的错误信息
|
||||
- [ ] 支持密码重置功能
|
||||
|
||||
## 非功能验收
|
||||
- [ ] 密码使用 bcrypt 加密存储
|
||||
- [ ] JWT Token 有效期为 24 小时
|
||||
- [ ] 密码强度验证(至少8位,包含大小写和数字)
|
||||
- [ ] API 响应时间 < 200ms
|
||||
|
||||
## 测试覆盖要求
|
||||
- 单元测试覆盖率: >= 80%
|
||||
- 集成测试覆盖率: >= 60%
|
||||
- E2E 测试场景: 3 个
|
||||
|
||||
## 验收通过条件
|
||||
- 所有功能点验证通过
|
||||
- 测试覆盖率达标
|
||||
- 无重大安全漏洞
|
||||
@@ -0,0 +1,37 @@
|
||||
# P01-001 - 第一轮测试反馈
|
||||
|
||||
## 测试执行信息
|
||||
- 测试时间: 2026-05-23
|
||||
- 测试人员: QA AI
|
||||
- 测试环境: 测试服务器
|
||||
|
||||
## 测试结果概览
|
||||
- 测试用例总数: 12
|
||||
- 通过: 10
|
||||
- 失败: 2
|
||||
- 跳过: 0
|
||||
|
||||
## 失败用例详情
|
||||
|
||||
### 1. 用户注册 - 密码强度验证
|
||||
- **测试点**: 密码强度验证
|
||||
- **预期结果**: 密码不足8位时拒绝注册
|
||||
- **实际结果**: 密码6位也能注册成功
|
||||
- **严重程度**: HIGH
|
||||
- **建议修复**: 增加密码长度验证逻辑
|
||||
|
||||
### 2. Token 过期测试
|
||||
- **测试点**: Token 过期处理
|
||||
- **预期结果**: Token 过期后返回 401 错误
|
||||
- **实际结果**: 返回 500 服务器错误
|
||||
- **严重程度**: MEDIUM
|
||||
- **建议修复**: 在中间件中正确处理 TokenExpiredError
|
||||
|
||||
## 代码质量评估
|
||||
- 代码覆盖率: 78% (目标: 80%)
|
||||
- 静态检查警告: 3 个
|
||||
- 建议优化: authService.js 第45行有未使用的变量
|
||||
|
||||
## 下一步行动
|
||||
- Dev AI 修复上述问题
|
||||
- 进行第二轮测试
|
||||
@@ -0,0 +1,26 @@
|
||||
# P01-001 - 变更影响范围
|
||||
|
||||
## 修改的文件
|
||||
| 文件路径 | 修改类型 | 影响等级 |
|
||||
|---------|---------|---------|
|
||||
| src/api/users.js | 新增 | HIGH |
|
||||
| src/controllers/userController.js | 新增 | HIGH |
|
||||
| src/services/authService.js | 新增 | HIGH |
|
||||
| docs/03_接口定义.md | 更新 | MEDIUM |
|
||||
| src/models/User.js | 更新 | MEDIUM |
|
||||
|
||||
## 影响的功能模块
|
||||
- [x] 用户管理模块
|
||||
- [x] 认证授权模块
|
||||
- [ ] 代码分析模块(无影响)
|
||||
- [ ] AI服务模块(无影响)
|
||||
|
||||
## 需要回归测试的场景
|
||||
- 场景1: 用户注册后立即登录
|
||||
- 场景2: 使用错误密码登录
|
||||
- 场景3: 密码重置流程
|
||||
- 场景4: Token 过期后重新登录
|
||||
|
||||
## 外部依赖变更
|
||||
- 新增依赖: bcrypt, jsonwebtoken
|
||||
- 影响说明: 需更新 package.json
|
||||
@@ -0,0 +1,30 @@
|
||||
# P01-001 - 用户登录功能开发
|
||||
|
||||
## 任务信息
|
||||
- 任务编号: P01-001
|
||||
- 项目: P01_errlens_app
|
||||
- 创建时间: 2026-05-22
|
||||
- 负责人: Dev AI
|
||||
- 状态: TODO
|
||||
|
||||
## 任务描述
|
||||
实现用户登录功能,包括:
|
||||
1. 用户注册
|
||||
2. 用户登录(邮箱+密码)
|
||||
3. JWT Token 生成
|
||||
4. 密码重置
|
||||
|
||||
## 需求来源
|
||||
- 产品需求文档: PRD-001
|
||||
- 相关Issue: #123
|
||||
|
||||
## 技术要求
|
||||
- 使用 bcrypt 进行密码加密
|
||||
- JWT Token 有效期 24 小时
|
||||
- 支持密码强度验证
|
||||
|
||||
## 交付物
|
||||
- `src/api/users.js` - 用户API路由
|
||||
- `src/controllers/userController.js` - 用户控制器
|
||||
- `src/services/authService.js` - 认证服务
|
||||
- `docs/03_接口定义.md` - 更新接口文档
|
||||
@@ -0,0 +1,21 @@
|
||||
# P01-002 - 验收标准
|
||||
|
||||
## 功能验收
|
||||
- [ ] 支持 JavaScript/TypeScript 代码分析
|
||||
- [ ] 支持 Python 代码分析
|
||||
- [ ] 检测常见语法错误
|
||||
- [ ] 检测代码质量问题
|
||||
- [ ] 生成修复建议
|
||||
|
||||
## 非功能验收
|
||||
- [ ] 分析时间 < 500ms
|
||||
- [ ] 支持最大 1000 行代码
|
||||
- [ ] 错误分类准确率 >= 90%
|
||||
|
||||
## 测试覆盖要求
|
||||
- 单元测试覆盖率: >= 75%
|
||||
- 集成测试覆盖率: >= 50%
|
||||
|
||||
## 验收通过条件
|
||||
- 所有功能点验证通过
|
||||
- 测试覆盖率达标
|
||||
@@ -0,0 +1,18 @@
|
||||
# P01-002 - 变更影响范围
|
||||
|
||||
## 修改的文件
|
||||
| 文件路径 | 修改类型 | 影响等级 |
|
||||
|---------|---------|---------|
|
||||
| src/api/analyze.js | 新增 | HIGH |
|
||||
| src/controllers/analyzeController.js | 新增 | HIGH |
|
||||
| src/services/analyzeService.js | 新增 | HIGH |
|
||||
|
||||
## 影响的功能模块
|
||||
- [x] 代码分析模块
|
||||
- [x] AI服务模块
|
||||
- [ ] 用户管理模块(无影响)
|
||||
|
||||
## 需要回归测试的场景
|
||||
- 场景1: JavaScript 代码分析
|
||||
- 场景2: Python 代码分析
|
||||
- 场景3: 大文件分析性能
|
||||
@@ -0,0 +1,27 @@
|
||||
# P01-002 - 代码分析API开发
|
||||
|
||||
## 任务信息
|
||||
- 任务编号: P01-002
|
||||
- 项目: P01_errlens_app
|
||||
- 创建时间: 2026-05-22
|
||||
- 负责人: Dev AI
|
||||
- 状态: TODO
|
||||
|
||||
## 任务描述
|
||||
实现代码分析API,包括:
|
||||
1. 代码解析
|
||||
2. 错误检测
|
||||
3. 修复建议生成
|
||||
|
||||
## 需求来源
|
||||
- 产品需求文档: PRD-002
|
||||
|
||||
## 技术要求
|
||||
- 支持多种编程语言
|
||||
- 与AI服务模块集成
|
||||
- 返回结构化的错误信息
|
||||
|
||||
## 交付物
|
||||
- `src/api/analyze.js` - 分析API路由
|
||||
- `src/controllers/analyzeController.js` - 分析控制器
|
||||
- `src/services/analyzeService.js` - 分析服务
|
||||
@@ -0,0 +1,19 @@
|
||||
# P02-001 - 验收标准
|
||||
|
||||
## 功能验收
|
||||
- [ ] 支持从 GitHub 下载代码仓库
|
||||
- [ ] 自动清洗无效代码
|
||||
- [ ] 支持人工标注接口
|
||||
- [ ] 提取代码特征向量
|
||||
|
||||
## 非功能验收
|
||||
- [ ] 处理速度: 1000 文件/分钟
|
||||
- [ ] 内存占用: < 2GB
|
||||
- [ ] 数据准确率: >= 95%
|
||||
|
||||
## 测试覆盖要求
|
||||
- 单元测试覆盖率: >= 80%
|
||||
|
||||
## 验收通过条件
|
||||
- 所有功能点验证通过
|
||||
- 测试覆盖率达标
|
||||
@@ -0,0 +1,18 @@
|
||||
# P02-001 - 变更影响范围
|
||||
|
||||
## 修改的文件
|
||||
| 文件路径 | 修改类型 | 影响等级 |
|
||||
|---------|---------|---------|
|
||||
| src/data/download.py | 新增 | HIGH |
|
||||
| src/data/clean.py | 新增 | HIGH |
|
||||
| src/data/label.py | 新增 | MEDIUM |
|
||||
| src/data/features.py | 新增 | HIGH |
|
||||
|
||||
## 影响的功能模块
|
||||
- [x] 数据处理模块
|
||||
- [x] 模型训练模块
|
||||
|
||||
## 需要回归测试的场景
|
||||
- 场景1: 大规模数据下载
|
||||
- 场景2: 数据清洗质量
|
||||
- 场景3: 特征提取准确性
|
||||
@@ -0,0 +1,29 @@
|
||||
# P02-001 - 数据集预处理模块
|
||||
|
||||
## 任务信息
|
||||
- 任务编号: P02-001
|
||||
- 项目: P02_errlens_training
|
||||
- 创建时间: 2026-05-22
|
||||
- 负责人: Dev AI
|
||||
- 状态: TODO
|
||||
|
||||
## 任务描述
|
||||
实现数据集预处理模块,包括:
|
||||
1. 数据下载
|
||||
2. 数据清洗
|
||||
3. 数据标注
|
||||
4. 特征提取
|
||||
|
||||
## 需求来源
|
||||
- 模型训练需求文档
|
||||
|
||||
## 技术要求
|
||||
- 支持多线程处理
|
||||
- 数据格式标准化
|
||||
- 支持增量更新
|
||||
|
||||
## 交付物
|
||||
- `src/data/download.py` - 数据下载
|
||||
- `src/data/clean.py` - 数据清洗
|
||||
- `src/data/label.py` - 数据标注
|
||||
- `src/data/features.py` - 特征提取
|
||||
Reference in New Issue
Block a user