monoco-toolkit 0.3.6__py3-none-any.whl → 0.3.10__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- monoco/cli/workspace.py +1 -1
- monoco/core/config.py +58 -0
- monoco/core/hooks/__init__.py +19 -0
- monoco/core/hooks/base.py +104 -0
- monoco/core/hooks/builtin/__init__.py +11 -0
- monoco/core/hooks/builtin/git_cleanup.py +266 -0
- monoco/core/hooks/builtin/logging_hook.py +78 -0
- monoco/core/hooks/context.py +131 -0
- monoco/core/hooks/registry.py +222 -0
- monoco/core/injection.py +63 -29
- monoco/core/integrations.py +8 -2
- monoco/core/output.py +5 -5
- monoco/core/registry.py +9 -1
- monoco/core/resource/__init__.py +5 -0
- monoco/core/resource/finder.py +98 -0
- monoco/core/resource/manager.py +91 -0
- monoco/core/resource/models.py +35 -0
- monoco/core/resources/en/{SKILL.md → skills/monoco_core/SKILL.md} +2 -0
- monoco/core/resources/zh/{SKILL.md → skills/monoco_core/SKILL.md} +2 -0
- monoco/core/setup.py +1 -1
- monoco/core/skill_framework.py +292 -0
- monoco/core/skills.py +538 -254
- monoco/core/sync.py +73 -1
- monoco/core/workflow_converter.py +420 -0
- monoco/features/{scheduler → agent}/__init__.py +5 -3
- monoco/features/agent/adapter.py +31 -0
- monoco/features/agent/apoptosis.py +44 -0
- monoco/features/agent/cli.py +296 -0
- monoco/features/agent/config.py +96 -0
- monoco/features/agent/defaults.py +12 -0
- monoco/features/{scheduler → agent}/engines.py +32 -6
- monoco/features/agent/flow_skills.py +281 -0
- monoco/features/agent/manager.py +91 -0
- monoco/features/{scheduler → agent}/models.py +6 -3
- monoco/features/agent/resources/atoms/atom-code-dev.yaml +61 -0
- monoco/features/agent/resources/atoms/atom-issue-lifecycle.yaml +73 -0
- monoco/features/agent/resources/atoms/atom-knowledge.yaml +55 -0
- monoco/features/agent/resources/atoms/atom-review.yaml +60 -0
- monoco/features/agent/resources/en/skills/flow_engineer/SKILL.md +94 -0
- monoco/features/agent/resources/en/skills/flow_manager/SKILL.md +93 -0
- monoco/features/agent/resources/en/skills/flow_planner/SKILL.md +85 -0
- monoco/features/agent/resources/en/skills/flow_reviewer/SKILL.md +114 -0
- monoco/features/agent/resources/roles/role-engineer.yaml +49 -0
- monoco/features/agent/resources/roles/role-manager.yaml +46 -0
- monoco/features/agent/resources/roles/role-planner.yaml +46 -0
- monoco/features/agent/resources/roles/role-reviewer.yaml +47 -0
- monoco/features/agent/resources/workflows/workflow-dev.yaml +83 -0
- monoco/features/agent/resources/workflows/workflow-issue-create.yaml +72 -0
- monoco/features/agent/resources/workflows/workflow-review.yaml +94 -0
- monoco/features/agent/resources/zh/skills/flow_engineer/SKILL.md +94 -0
- monoco/features/agent/resources/zh/skills/flow_manager/SKILL.md +88 -0
- monoco/features/agent/resources/zh/skills/flow_planner/SKILL.md +259 -0
- monoco/features/agent/resources/zh/skills/flow_reviewer/SKILL.md +137 -0
- monoco/features/{scheduler → agent}/session.py +36 -1
- monoco/features/{scheduler → agent}/worker.py +40 -4
- monoco/features/glossary/adapter.py +31 -0
- monoco/features/glossary/config.py +5 -0
- monoco/features/glossary/resources/en/AGENTS.md +29 -0
- monoco/features/glossary/resources/en/skills/monoco_glossary/SKILL.md +35 -0
- monoco/features/glossary/resources/zh/AGENTS.md +29 -0
- monoco/features/glossary/resources/zh/skills/monoco_glossary/SKILL.md +35 -0
- monoco/features/i18n/resources/en/skills/i18n_scan_workflow/SKILL.md +105 -0
- monoco/features/i18n/resources/en/{SKILL.md → skills/monoco_i18n/SKILL.md} +2 -0
- monoco/features/i18n/resources/zh/skills/i18n_scan_workflow/SKILL.md +105 -0
- monoco/features/i18n/resources/zh/{SKILL.md → skills/monoco_i18n/SKILL.md} +2 -0
- monoco/features/issue/commands.py +427 -21
- monoco/features/issue/core.py +140 -1
- monoco/features/issue/criticality.py +553 -0
- monoco/features/issue/domain/models.py +28 -2
- monoco/features/issue/engine/machine.py +75 -15
- monoco/features/issue/git_service.py +185 -0
- monoco/features/issue/linter.py +291 -62
- monoco/features/issue/models.py +50 -2
- monoco/features/issue/resources/en/skills/issue_create_workflow/SKILL.md +167 -0
- monoco/features/issue/resources/en/skills/issue_develop_workflow/SKILL.md +224 -0
- monoco/features/issue/resources/en/skills/issue_lifecycle_workflow/SKILL.md +159 -0
- monoco/features/issue/resources/en/skills/issue_refine_workflow/SKILL.md +203 -0
- monoco/features/issue/resources/en/{SKILL.md → skills/monoco_issue/SKILL.md} +50 -0
- monoco/features/issue/resources/zh/skills/issue_create_workflow/SKILL.md +167 -0
- monoco/features/issue/resources/zh/skills/issue_develop_workflow/SKILL.md +224 -0
- monoco/features/issue/resources/zh/skills/issue_lifecycle_workflow/SKILL.md +159 -0
- monoco/features/issue/resources/zh/skills/issue_refine_workflow/SKILL.md +203 -0
- monoco/features/issue/resources/zh/{SKILL.md → skills/monoco_issue/SKILL.md} +52 -0
- monoco/features/issue/validator.py +185 -65
- monoco/features/memo/__init__.py +2 -1
- monoco/features/memo/adapter.py +32 -0
- monoco/features/memo/cli.py +36 -14
- monoco/features/memo/core.py +59 -0
- monoco/features/memo/resources/en/skills/monoco_memo/SKILL.md +77 -0
- monoco/features/memo/resources/en/skills/note_processing_workflow/SKILL.md +140 -0
- monoco/features/memo/resources/zh/AGENTS.md +8 -0
- monoco/features/memo/resources/zh/skills/monoco_memo/SKILL.md +77 -0
- monoco/features/memo/resources/zh/skills/note_processing_workflow/SKILL.md +140 -0
- monoco/features/spike/resources/en/{SKILL.md → skills/monoco_spike/SKILL.md} +2 -0
- monoco/features/spike/resources/en/skills/research_workflow/SKILL.md +121 -0
- monoco/features/spike/resources/zh/{SKILL.md → skills/monoco_spike/SKILL.md} +2 -0
- monoco/features/spike/resources/zh/skills/research_workflow/SKILL.md +121 -0
- monoco/main.py +2 -3
- monoco_toolkit-0.3.10.dist-info/METADATA +124 -0
- monoco_toolkit-0.3.10.dist-info/RECORD +156 -0
- monoco/features/scheduler/cli.py +0 -285
- monoco/features/scheduler/config.py +0 -68
- monoco/features/scheduler/defaults.py +0 -54
- monoco/features/scheduler/manager.py +0 -49
- monoco/features/scheduler/reliability.py +0 -106
- monoco/features/skills/core.py +0 -102
- monoco_toolkit-0.3.6.dist-info/METADATA +0 -127
- monoco_toolkit-0.3.6.dist-info/RECORD +0 -97
- /monoco/core/{hooks.py → githooks.py} +0 -0
- /monoco/features/{skills → glossary}/__init__.py +0 -0
- {monoco_toolkit-0.3.6.dist-info → monoco_toolkit-0.3.10.dist-info}/WHEEL +0 -0
- {monoco_toolkit-0.3.6.dist-info → monoco_toolkit-0.3.10.dist-info}/entry_points.txt +0 -0
- {monoco_toolkit-0.3.6.dist-info → monoco_toolkit-0.3.10.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: issue-lifecycle-workflow
|
|
3
|
+
description: Issue 生命周期工作流 (Flow Skill)。定义从创建到关闭的完整 Issue 管理流程,确保任务追踪和流程合规。
|
|
4
|
+
type: flow
|
|
5
|
+
domain: issue
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Issue Lifecycle Workflow
|
|
10
|
+
|
|
11
|
+
Issue 生命周期的标准化工作流,确保 "Open → Start → Develop → Submit → Review → Close" 流程。
|
|
12
|
+
|
|
13
|
+
## 工作流状态机
|
|
14
|
+
|
|
15
|
+
```mermaid
|
|
16
|
+
stateDiagram-v2
|
|
17
|
+
[*] --> Open: 创建 Issue
|
|
18
|
+
|
|
19
|
+
Open --> Start: 准备开发
|
|
20
|
+
Open --> Open: 需求不清<br/>(等待澄清)
|
|
21
|
+
|
|
22
|
+
Start --> Develop: 分支创建
|
|
23
|
+
Start --> Start: 分支冲突<br/>(解决冲突)
|
|
24
|
+
|
|
25
|
+
Develop --> Submit: 开发完成
|
|
26
|
+
Develop --> Develop: 测试失败<br/>(修复代码)
|
|
27
|
+
|
|
28
|
+
state "Oracle Loop" as ReviewLoop {
|
|
29
|
+
Submit --> Review: 提交评审
|
|
30
|
+
Review --> Fix: 拒绝
|
|
31
|
+
Fix --> Submit: 重新提交
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
Review --> Close: 批准合并
|
|
35
|
+
|
|
36
|
+
Close --> [*]: 清理完成
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## 执行步骤
|
|
40
|
+
|
|
41
|
+
### 1. Open (创建)
|
|
42
|
+
|
|
43
|
+
- **目标**: 创建清晰、可执行的 Issue
|
|
44
|
+
- **输入**: 需求描述、类型、优先级
|
|
45
|
+
- **输出**: Issue Ticket 文件
|
|
46
|
+
- **检查点**:
|
|
47
|
+
- [ ] 使用 `monoco issue create <type> -t "标题"`
|
|
48
|
+
- [ ] 选择合适的类型(epic/feature/chore/fix)
|
|
49
|
+
- [ ] 编写清晰的描述和验收标准
|
|
50
|
+
- [ ] 设置依赖关系(如需要)
|
|
51
|
+
- [ ] 确保至少 2 个 Checkbox
|
|
52
|
+
|
|
53
|
+
### 2. Start (启动)
|
|
54
|
+
|
|
55
|
+
- **目标**: 准备开发环境,创建功能分支
|
|
56
|
+
- **检查点**:
|
|
57
|
+
- [ ] 运行 `monoco issue start <ID> --branch`
|
|
58
|
+
- [ ] 确认分支已创建并切换
|
|
59
|
+
- [ ] 验证当前不在 main/master 分支
|
|
60
|
+
- [ ] 检查依赖 Issue 是否已完成
|
|
61
|
+
|
|
62
|
+
### 3. Develop (开发)
|
|
63
|
+
|
|
64
|
+
- **目标**: 实现功能或修复缺陷
|
|
65
|
+
- **策略**: 迭代开发,持续测试
|
|
66
|
+
- **检查点**:
|
|
67
|
+
- [ ] 遵循项目代码规范
|
|
68
|
+
- [ ] 编写/更新单元测试
|
|
69
|
+
- [ ] 运行测试套件,确保通过
|
|
70
|
+
- [ ] 定期提交代码(小步提交)
|
|
71
|
+
- [ ] 更新文件追踪(`monoco issue sync-files`)
|
|
72
|
+
|
|
73
|
+
### 4. Submit (提交)
|
|
74
|
+
|
|
75
|
+
- **目标**: 准备代码评审
|
|
76
|
+
- **检查点**:
|
|
77
|
+
- [ ] 运行 `monoco issue lint` 检查合规性
|
|
78
|
+
- [ ] 修复所有 Lint 错误
|
|
79
|
+
- [ ] 更新任务清单状态
|
|
80
|
+
- [ ] 运行 `monoco issue submit <ID>`
|
|
81
|
+
- [ ] 编写变更摘要
|
|
82
|
+
|
|
83
|
+
### 5. Review (评审)
|
|
84
|
+
|
|
85
|
+
- **目标**: 代码质量和流程合规检查
|
|
86
|
+
- **检查点**:
|
|
87
|
+
- [ ] 功能是否正确实现
|
|
88
|
+
- [ ] 代码是否符合设计规范
|
|
89
|
+
- [ ] 测试是否充分
|
|
90
|
+
- [ ] 文档是否同步更新
|
|
91
|
+
- [ ] 是否遵循项目规范
|
|
92
|
+
|
|
93
|
+
### 6. Close (关闭)
|
|
94
|
+
|
|
95
|
+
- **目标**: 完成 Issue,清理环境
|
|
96
|
+
- **检查点**:
|
|
97
|
+
- [ ] 代码已合并到主分支
|
|
98
|
+
- [ ] 运行 `monoco issue close <ID> --solution completed --prune`
|
|
99
|
+
- [ ] 验证分支已清理
|
|
100
|
+
- [ ] 更新 Review Comments(如需要)
|
|
101
|
+
|
|
102
|
+
## 决策分支
|
|
103
|
+
|
|
104
|
+
| 条件 | 动作 |
|
|
105
|
+
|------|------|
|
|
106
|
+
| 需求不清晰 | 返回 Open,请求澄清 |
|
|
107
|
+
| 分支创建失败 | 检查 Git 状态,解决冲突 |
|
|
108
|
+
| 测试失败 | 返回 Develop,修复代码 |
|
|
109
|
+
| Lint 失败 | 修复合规性问题,重新 Submit |
|
|
110
|
+
| 评审拒绝 | 返回 Develop,按反馈修改 |
|
|
111
|
+
| 评审通过 | 进入 Close,合并并清理 |
|
|
112
|
+
|
|
113
|
+
## 合规要求
|
|
114
|
+
|
|
115
|
+
- **禁止**: 在 main/master 分支直接修改代码
|
|
116
|
+
- **必须**: 使用 `monoco issue start --branch` 创建功能分支
|
|
117
|
+
- **必须**: 所有单元测试通过后才能 Submit
|
|
118
|
+
- **必须**: 每个 Issue 至少 2 个 Checkbox
|
|
119
|
+
- **必须**: Review/Done 阶段必须包含 Review Comments
|
|
120
|
+
- **建议**: 小步提交,频繁同步文件追踪
|
|
121
|
+
|
|
122
|
+
## 相关命令
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
# 创建 Issue
|
|
126
|
+
monoco issue create feature -t "标题"
|
|
127
|
+
|
|
128
|
+
# 启动开发
|
|
129
|
+
monoco issue start FEAT-0001 --branch
|
|
130
|
+
|
|
131
|
+
# 同步文件追踪
|
|
132
|
+
monoco issue sync-files
|
|
133
|
+
|
|
134
|
+
# 检查合规性
|
|
135
|
+
monoco issue lint
|
|
136
|
+
|
|
137
|
+
# 提交评审
|
|
138
|
+
monoco issue submit FEAT-0001
|
|
139
|
+
|
|
140
|
+
# 关闭 Issue
|
|
141
|
+
monoco issue close FEAT-0001 --solution completed --prune
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
## Issue 类型指南
|
|
145
|
+
|
|
146
|
+
| 类型 | 用途 | 前缀 | Mindset |
|
|
147
|
+
|------|------|------|---------|
|
|
148
|
+
| Epic | 宏大目标、愿景容器 | EPIC- | Architect |
|
|
149
|
+
| Feature | 用户价值增量 | FEAT- | Product Owner |
|
|
150
|
+
| Chore | 工程性事务 | CHORE- | Builder |
|
|
151
|
+
| Fix | 缺陷修复 | FIX- | Debugger |
|
|
152
|
+
|
|
153
|
+
## 与 flow_engineer 的关系
|
|
154
|
+
|
|
155
|
+
此工作流与 `flow_engineer` 互补:
|
|
156
|
+
- `issue-lifecycle-workflow`: 关注 Issue 管理流程
|
|
157
|
+
- `flow_engineer`: 关注代码实现流程
|
|
158
|
+
|
|
159
|
+
Engineer 在执行 Develop 阶段时,应遵循 `flow_engineer` 的 Investigate → Code → Test → Report → Submit 流程。
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: issue-refine-workflow
|
|
3
|
+
description: 调查并细化 Issue,补充技术细节和实现方案 (Copilot 模式)
|
|
4
|
+
type: flow
|
|
5
|
+
domain: issue
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Issue Refine Workflow
|
|
10
|
+
|
|
11
|
+
对新创建或待细化的 Issue 进行技术调查、架构分析和方案设计的标准化工作流。
|
|
12
|
+
|
|
13
|
+
**适用场景**: Copilot 模式(人类主导,AI 辅助)
|
|
14
|
+
**目标用户**: 需要深入理解问题并制定实现方案的开发者
|
|
15
|
+
|
|
16
|
+
## 工作流状态机
|
|
17
|
+
|
|
18
|
+
```mermaid
|
|
19
|
+
stateDiagram-v2
|
|
20
|
+
[*] --> Investigate: 开始细化
|
|
21
|
+
|
|
22
|
+
Investigate --> Analyze: 收集信息
|
|
23
|
+
Investigate --> Investigate: 信息不足<br/>(继续调查)
|
|
24
|
+
|
|
25
|
+
Analyze --> Architect: 需要架构设计
|
|
26
|
+
Analyze --> Document: 直接文档化
|
|
27
|
+
|
|
28
|
+
Architect --> Document: 设计完成
|
|
29
|
+
|
|
30
|
+
Document --> [*]: Issue 细化完成
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## 执行步骤
|
|
34
|
+
|
|
35
|
+
### 1. Investigate (调查)
|
|
36
|
+
|
|
37
|
+
- **目标**: 全面收集与 Issue 相关的信息
|
|
38
|
+
- **输入**: Issue Ticket、相关代码、文档
|
|
39
|
+
- **输出**: 信息收集报告
|
|
40
|
+
- **检查点**:
|
|
41
|
+
- [ ] 阅读 Issue 描述,理解核心问题
|
|
42
|
+
- [ ] 识别相关代码模块和文件
|
|
43
|
+
- [ ] 查看相关 Issue/PR 历史
|
|
44
|
+
- [ ] 检查外部依赖和约束条件
|
|
45
|
+
- [ ] 收集类似实现参考(Spike)
|
|
46
|
+
|
|
47
|
+
**调查维度**:
|
|
48
|
+
| 维度 | 调查内容 |
|
|
49
|
+
|------|----------|
|
|
50
|
+
| 代码 | 相关模块的当前实现 |
|
|
51
|
+
| 历史 | 相关 Issue、PR、设计文档 |
|
|
52
|
+
| 依赖 | 外部库、API、服务依赖 |
|
|
53
|
+
| 约束 | 性能要求、安全要求、兼容性 |
|
|
54
|
+
| 参考 | 类似功能的最佳实践 |
|
|
55
|
+
|
|
56
|
+
### 2. Analyze (分析)
|
|
57
|
+
|
|
58
|
+
- **目标**: 分析收集的信息,识别关键问题和方案选项
|
|
59
|
+
- **检查点**:
|
|
60
|
+
- [ ] 分析架构继承性(如何融入现有架构)
|
|
61
|
+
- [ ] 评估安全性影响
|
|
62
|
+
- [ ] 评估性能影响
|
|
63
|
+
- [ ] 评估可维护性
|
|
64
|
+
- [ ] 识别潜在风险和缓解措施
|
|
65
|
+
|
|
66
|
+
**分析框架**:
|
|
67
|
+
|
|
68
|
+
#### 架构继承性
|
|
69
|
+
- 现有架构模式是否适用?
|
|
70
|
+
- 是否需要引入新的抽象层?
|
|
71
|
+
- 对现有模块的耦合影响?
|
|
72
|
+
|
|
73
|
+
#### 安全性评估
|
|
74
|
+
- 输入验证需求
|
|
75
|
+
- 权限控制需求
|
|
76
|
+
- 数据保护需求
|
|
77
|
+
- 潜在攻击面分析
|
|
78
|
+
|
|
79
|
+
#### 性能评估
|
|
80
|
+
- 时间复杂度影响
|
|
81
|
+
- 空间复杂度影响
|
|
82
|
+
- 并发/并行需求
|
|
83
|
+
- 资源使用预估
|
|
84
|
+
|
|
85
|
+
#### 可维护性评估
|
|
86
|
+
- 代码复杂度变化
|
|
87
|
+
- 测试覆盖需求
|
|
88
|
+
- 文档更新需求
|
|
89
|
+
- 后续扩展性
|
|
90
|
+
|
|
91
|
+
### 3. Architect (架构) - 可选
|
|
92
|
+
|
|
93
|
+
- **目标**: 对复杂 Issue 进行架构设计
|
|
94
|
+
- **适用**: 涉及架构变更或大型功能
|
|
95
|
+
- **检查点**:
|
|
96
|
+
- [ ] 确定技术方案选型
|
|
97
|
+
- [ ] 设计接口和交互协议
|
|
98
|
+
- [ ] 规划数据模型变更
|
|
99
|
+
- [ ] 制定实现里程碑
|
|
100
|
+
|
|
101
|
+
**输出物**:
|
|
102
|
+
- 架构决策记录 (ADR)
|
|
103
|
+
- 接口设计文档
|
|
104
|
+
- 数据模型变更
|
|
105
|
+
- 里程碑计划
|
|
106
|
+
|
|
107
|
+
### 4. Document (文档)
|
|
108
|
+
|
|
109
|
+
- **目标**: 将分析结果更新到 Issue
|
|
110
|
+
- **检查点**:
|
|
111
|
+
- [ ] 更新技术任务清单
|
|
112
|
+
- [ ] 添加架构决策说明
|
|
113
|
+
- [ ] 补充风险和缓解措施
|
|
114
|
+
- [ ] 更新验收标准(如需要)
|
|
115
|
+
- [ ] 添加参考链接和依赖说明
|
|
116
|
+
- [ ] 运行 `monoco issue lint` 验证合规性
|
|
117
|
+
|
|
118
|
+
**细化后 Issue 结构**:
|
|
119
|
+
|
|
120
|
+
```markdown
|
|
121
|
+
## Objective
|
|
122
|
+
[原有内容]
|
|
123
|
+
|
|
124
|
+
## Acceptance Criteria
|
|
125
|
+
- [ ] 验收标准 1
|
|
126
|
+
- [ ] 验收标准 2
|
|
127
|
+
|
|
128
|
+
## Technical Analysis
|
|
129
|
+
|
|
130
|
+
### 现状分析
|
|
131
|
+
描述当前代码状态和相关实现。
|
|
132
|
+
|
|
133
|
+
### 方案选型
|
|
134
|
+
| 方案 | 优点 | 缺点 | 决策 |
|
|
135
|
+
|------|------|------|------|
|
|
136
|
+
| A | ... | ... | 采纳/备选 |
|
|
137
|
+
| B | ... | ... | 备选/放弃 |
|
|
138
|
+
|
|
139
|
+
### 风险评估
|
|
140
|
+
| 风险 | 影响 | 缓解措施 |
|
|
141
|
+
|------|------|----------|
|
|
142
|
+
| 风险1 | 高/中/低 | 措施... |
|
|
143
|
+
|
|
144
|
+
## Technical Tasks
|
|
145
|
+
- [ ] 任务 1
|
|
146
|
+
- [ ] 任务 2
|
|
147
|
+
|
|
148
|
+
## References
|
|
149
|
+
- 相关 Issue: #XXX
|
|
150
|
+
- 参考实现: [链接]
|
|
151
|
+
- ADR: [链接]
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## 决策分支
|
|
155
|
+
|
|
156
|
+
| 条件 | 动作 |
|
|
157
|
+
|------|------|
|
|
158
|
+
| 信息不足 | 返回 Investigate,继续收集 |
|
|
159
|
+
| 需要架构设计 | 进入 Architect 阶段 |
|
|
160
|
+
| 方案明确 | 直接进入 Document 阶段 |
|
|
161
|
+
| 发现阻塞依赖 | 创建依赖 Issue,标记当前 Issue |
|
|
162
|
+
| 问题过于复杂 | 建议拆分为多个 Issue |
|
|
163
|
+
|
|
164
|
+
## 细化程度指南
|
|
165
|
+
|
|
166
|
+
| Issue 类型 | 细化要求 |
|
|
167
|
+
|------------|----------|
|
|
168
|
+
| Epic | 必须包含架构设计、里程碑、子任务分解 |
|
|
169
|
+
| Feature | 必须包含技术方案、风险评估、任务分解 |
|
|
170
|
+
| Chore | 必须包含实施步骤、影响范围 |
|
|
171
|
+
| Fix | 必须包含根因分析、修复方案、测试用例 |
|
|
172
|
+
|
|
173
|
+
## 相关命令
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
# 查看 Issue 详情
|
|
177
|
+
monoco issue show <ID>
|
|
178
|
+
|
|
179
|
+
# 检查合规性
|
|
180
|
+
monoco issue lint
|
|
181
|
+
|
|
182
|
+
# 同步文件追踪
|
|
183
|
+
monoco issue sync-files
|
|
184
|
+
|
|
185
|
+
# 查看相关 Spike
|
|
186
|
+
monoco spike list
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## 与 flow_engineer 的关系
|
|
190
|
+
|
|
191
|
+
此工作流与 `flow_engineer` 互补:
|
|
192
|
+
- `issue-refine-workflow`: 关注 Issue 细化阶段,在开发前完成技术调查
|
|
193
|
+
- `flow_engineer`: 关注代码实现阶段,执行 Investigate → Code → Test → Report → Submit
|
|
194
|
+
|
|
195
|
+
细化阶段收集的信息将为 Engineer 阶段的 Investigate 提供重要输入。
|
|
196
|
+
|
|
197
|
+
## Copilot 模式提示
|
|
198
|
+
|
|
199
|
+
作为 AI Copilot,你应该:
|
|
200
|
+
1. **主动探索**: 帮助开发者发现潜在问题和边界情况
|
|
201
|
+
2. **提供对比**: 给出多个技术方案,分析优缺点
|
|
202
|
+
3. **协助评估**: 帮助进行安全性、性能影响评估
|
|
203
|
+
4. **提醒遗漏**: 检查是否有遗漏的关键信息或风险点
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: monoco-issue
|
|
3
3
|
description: Monoco Issue System 的官方技能定义。将 Issue 视为通用原子 (Universal Atom),管理 Epic/Feature/Chore/Fix 的生命周期。
|
|
4
|
+
type: standard
|
|
5
|
+
version: 1.0.0
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# 自我管理 (Monoco Issue System)
|
|
@@ -67,6 +69,50 @@ Monoco 强制采用 **Feature Branch** 模式。
|
|
|
67
69
|
- **禁止主干开发**: **严禁** 直接在 `main`, `master`, `production` 分支上修改代码。Linter 会拦截此类行为。
|
|
68
70
|
- **Submit**: 在提交 PR 前,运行 `monoco issue submit <ID>` 进行清理和预发布检查。
|
|
69
71
|
|
|
72
|
+
## 标准化工作流 (Standardized Workflow)
|
|
73
|
+
|
|
74
|
+
本指南引导 Agent 遵循 Monoco 标准 Issue 工作流。
|
|
75
|
+
|
|
76
|
+
### 工作流图示
|
|
77
|
+
|
|
78
|
+
```mermaid
|
|
79
|
+
stateDiagram-v2
|
|
80
|
+
[*] --> Plan
|
|
81
|
+
Plan --> Build: monoco issue start
|
|
82
|
+
Build --> Submit: monoco issue submit
|
|
83
|
+
state "Oracle Loop" as Oracle {
|
|
84
|
+
Submit --> Review: Auto/Manual Review
|
|
85
|
+
Review --> Fix: Reject
|
|
86
|
+
Fix --> Submit: Retry
|
|
87
|
+
}
|
|
88
|
+
Review --> Merge: Approve
|
|
89
|
+
Merge --> [*]: monoco issue close
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 执行步骤
|
|
93
|
+
|
|
94
|
+
1. **Plan (计划阶段)**:
|
|
95
|
+
- 确保 Issue 已创作且处于 `Open` 状态。
|
|
96
|
+
- 验证需求描述与任务清单 (Acceptance Criteria)。
|
|
97
|
+
|
|
98
|
+
2. **Build (构建阶段)**:
|
|
99
|
+
- 运行 `monoco issue start <ID> --branch` (强制分支隔离)。
|
|
100
|
+
- 实现功能或修复缺陷。
|
|
101
|
+
- 运行 `monoco issue sync-files` 更新修改文件追踪。
|
|
102
|
+
|
|
103
|
+
3. **Submit (提交阶段 - Oracle 循环)**:
|
|
104
|
+
- 运行测试确保质量。
|
|
105
|
+
- 运行 `monoco issue lint` 检查合规性。
|
|
106
|
+
- 运行 `monoco issue submit <ID>` 触发评审。
|
|
107
|
+
- **如果** 收到报错或反馈:
|
|
108
|
+
- 修复问题。
|
|
109
|
+
- 重新运行测试。
|
|
110
|
+
- 重新运行提交。
|
|
111
|
+
|
|
112
|
+
4. **Merge (合并/关闭阶段)**:
|
|
113
|
+
- 一旦获得批准 (人工或自动):
|
|
114
|
+
- 运行 `monoco issue close <ID> --solution completed --prune` 清理环境并下线。
|
|
115
|
+
|
|
70
116
|
### 2. 文件追踪 (File Tracking)
|
|
71
117
|
|
|
72
118
|
为了保证上下文的自包含性 (Self-Contained Context),Agent 必须记录修改过的文件。
|
|
@@ -136,3 +182,9 @@ Monoco 强制采用 **Feature Branch** 模式。
|
|
|
136
182
|
Linter 包含环境感知防护:
|
|
137
183
|
|
|
138
184
|
- 🛑 **Dirty Main Protection**: 当检测到处于受保护分支 (`main`/`master`) 且存在未提交变更时,Lint 将失败并阻止操作。
|
|
185
|
+
|
|
186
|
+
### 6. ID 格式与层级 (ID Format & Hierarchy)
|
|
187
|
+
|
|
188
|
+
- **ID 规范**: Issue ID 必须严格遵循 `TYPE-XXXX` 格式,其中 `XXXX` 必须是 4 位数字(示例: `FEAT-0001`, `FIX-9999`)。
|
|
189
|
+
- **禁止后缀**: 禁止使用类似 `FEAT-0001-1` 这样带后缀的 ID。
|
|
190
|
+
- **层级表达**: 子功能或子任务应通过 `parent` 字段(在 Front Matter 中)来关联父级 Issue,严禁通过 ID 命名约定(如加分级后缀)来表达层级关系。
|