workflow-ai 1.0.59 → 1.0.60
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.
- package/README.md +1 -2
- package/package.json +1 -1
- package/src/init.mjs +0 -1
- package/src/runner.mjs +3 -1
- package/configs/config.yaml +0 -134
- package/configs/pipeline.yaml +0 -592
- package/configs/ticket-movement-rules.yaml +0 -80
- package/src/scripts/archive-plan-tickets.js +0 -102
- package/src/scripts/check-anomalies.js +0 -161
- package/src/scripts/check-conditions.js +0 -258
- package/src/scripts/check-plan-decomposed.js +0 -179
- package/src/scripts/check-plan-templates.js +0 -295
- package/src/scripts/check-relevance.js +0 -308
- package/src/scripts/get-next-id.js +0 -110
- package/src/scripts/move-ticket.js +0 -260
- package/src/scripts/move-to-ready.js +0 -115
- package/src/scripts/move-to-review.js +0 -151
- package/src/scripts/pick-next-task.js +0 -742
package/README.md
CHANGED
|
@@ -81,7 +81,7 @@ The `workflow run` command executes a multi-stage pipeline:
|
|
|
81
81
|
6. **move-to-ready** — move tickets from backlog to ready
|
|
82
82
|
7. **pick-next-task** — select next ticket for execution
|
|
83
83
|
8. **move-to-in-progress** — start execution
|
|
84
|
-
9. **check-relevance** — verify ticket is still relevant
|
|
84
|
+
9. **check-relevance** — verify ticket is still relevant (script-based, no LLM)
|
|
85
85
|
10. **execute-task** — perform the work via AI agent
|
|
86
86
|
11. **move-to-review** — submit for review
|
|
87
87
|
12. **review-result** — validate results against Definition of Done
|
|
@@ -108,7 +108,6 @@ Built-in skills for different task types:
|
|
|
108
108
|
| Skill | Description |
|
|
109
109
|
|-------|-------------|
|
|
110
110
|
| `analyze-report` | Report analysis |
|
|
111
|
-
| `check-relevance` | Ticket relevance verification |
|
|
112
111
|
| `coach` | Skill management and improvement |
|
|
113
112
|
| `create-plan` | Plan creation |
|
|
114
113
|
| `create-report` | Report generation |
|
package/package.json
CHANGED
package/src/init.mjs
CHANGED
|
@@ -96,7 +96,6 @@ function generateSkillsTable(workflowRoot) {
|
|
|
96
96
|
'pick-next-task': 'Выбор следующей задачи',
|
|
97
97
|
'decompose-gaps': 'Декомпозиция пробелов',
|
|
98
98
|
'review-result': 'Ревью результата',
|
|
99
|
-
'check-relevance': 'Проверка актуальности',
|
|
100
99
|
'coach': 'Коуч скилов',
|
|
101
100
|
'deep-research': 'Глубокий ресерч'
|
|
102
101
|
};
|
package/src/runner.mjs
CHANGED
|
@@ -630,10 +630,12 @@ class FileGuard {
|
|
|
630
630
|
* Рекурсивно получает все файлы в директории
|
|
631
631
|
* @param {string} dir - Директория для сканирования
|
|
632
632
|
* @returns {string[]} Список путей к файлам (нормализованных через /)
|
|
633
|
-
|
|
633
|
+
*/
|
|
634
634
|
_getAllFiles(dir) {
|
|
635
635
|
const files = [];
|
|
636
636
|
if (!fs.existsSync(dir)) return files;
|
|
637
|
+
const stats = fs.statSync(dir);
|
|
638
|
+
if (!stats.isDirectory()) return files;
|
|
637
639
|
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
638
640
|
for (const entry of entries) {
|
|
639
641
|
const entryPath = path.join(dir, entry.name).replace(/\\/g, '/');
|
package/configs/config.yaml
DELETED
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
# Конфигурация системы координации агентов
|
|
2
|
-
# Версия: 1.0
|
|
3
|
-
|
|
4
|
-
version: "1.0"
|
|
5
|
-
|
|
6
|
-
# Информация о проекте
|
|
7
|
-
project:
|
|
8
|
-
name: ""
|
|
9
|
-
description: ""
|
|
10
|
-
created_at: ""
|
|
11
|
-
|
|
12
|
-
# Типы задач и их настройки
|
|
13
|
-
task_types:
|
|
14
|
-
arch:
|
|
15
|
-
prefix: ARCH
|
|
16
|
-
description: "Задачи планирования и архитектуры"
|
|
17
|
-
|
|
18
|
-
impl:
|
|
19
|
-
prefix: IMPL
|
|
20
|
-
description: "Написание и изменение кода"
|
|
21
|
-
|
|
22
|
-
fix:
|
|
23
|
-
prefix: FIX
|
|
24
|
-
description: "Исправление ошибок и багов"
|
|
25
|
-
|
|
26
|
-
review:
|
|
27
|
-
prefix: REVIEW
|
|
28
|
-
description: "Ревью кода и документации"
|
|
29
|
-
|
|
30
|
-
docs:
|
|
31
|
-
prefix: DOCS
|
|
32
|
-
description: "Создание и обновление документации"
|
|
33
|
-
|
|
34
|
-
admin:
|
|
35
|
-
prefix: ADMIN
|
|
36
|
-
description: "Административные задачи"
|
|
37
|
-
|
|
38
|
-
qa:
|
|
39
|
-
prefix: QA
|
|
40
|
-
description: "Написание тестов, проверка coverage, E2E-сценарии, тест-планы, валидация качества"
|
|
41
|
-
|
|
42
|
-
coach:
|
|
43
|
-
prefix: COACH
|
|
44
|
-
description: "Улучшение и аудит скилов (обрабатывается коуч-скилом)"
|
|
45
|
-
|
|
46
|
-
human:
|
|
47
|
-
prefix: HUMAN
|
|
48
|
-
description: "Задачи, требующие действия человека"
|
|
49
|
-
|
|
50
|
-
rsh:
|
|
51
|
-
prefix: RSH
|
|
52
|
-
description: "Deep Research — глубокие исследования, анализ рынка/конкурентов/трендов, сбор бенчмарков, текстовые отчёты"
|
|
53
|
-
|
|
54
|
-
# Приоритеты задач
|
|
55
|
-
priorities:
|
|
56
|
-
1:
|
|
57
|
-
name: critical
|
|
58
|
-
description: "Блокирует всю работу"
|
|
59
|
-
color: "#FF0000"
|
|
60
|
-
2:
|
|
61
|
-
name: high
|
|
62
|
-
description: "Важно для прогресса"
|
|
63
|
-
color: "#FF6600"
|
|
64
|
-
3:
|
|
65
|
-
name: medium
|
|
66
|
-
description: "Стандартный приоритет"
|
|
67
|
-
color: "#FFCC00"
|
|
68
|
-
4:
|
|
69
|
-
name: low
|
|
70
|
-
description: "Когда будет время"
|
|
71
|
-
color: "#00CC00"
|
|
72
|
-
5:
|
|
73
|
-
name: someday
|
|
74
|
-
description: "Может быть когда-нибудь"
|
|
75
|
-
color: "#CCCCCC"
|
|
76
|
-
|
|
77
|
-
# Статусы задач
|
|
78
|
-
statuses:
|
|
79
|
-
backlog:
|
|
80
|
-
folder: backlog
|
|
81
|
-
description: "Ожидает выполнения условий"
|
|
82
|
-
ready:
|
|
83
|
-
folder: ready
|
|
84
|
-
description: "Готов к выполнению"
|
|
85
|
-
in-progress:
|
|
86
|
-
folder: in-progress
|
|
87
|
-
description: "В работе"
|
|
88
|
-
blocked:
|
|
89
|
-
folder: blocked
|
|
90
|
-
description: "Заблокирована"
|
|
91
|
-
review:
|
|
92
|
-
folder: review
|
|
93
|
-
description: "На проверке"
|
|
94
|
-
done:
|
|
95
|
-
folder: done
|
|
96
|
-
description: "Завершена"
|
|
97
|
-
|
|
98
|
-
# Типы условий для задач
|
|
99
|
-
condition_types:
|
|
100
|
-
tasks_completed:
|
|
101
|
-
description: "Указанные задачи должны быть выполнены"
|
|
102
|
-
|
|
103
|
-
date_after:
|
|
104
|
-
description: "Дата должна быть после указанной"
|
|
105
|
-
|
|
106
|
-
date_before:
|
|
107
|
-
description: "Дата должна быть до указанной"
|
|
108
|
-
|
|
109
|
-
file_exists:
|
|
110
|
-
description: "Указанный файл должен существовать"
|
|
111
|
-
|
|
112
|
-
file_not_exists:
|
|
113
|
-
description: "Указанный файл не должен существовать"
|
|
114
|
-
|
|
115
|
-
file_contains:
|
|
116
|
-
description: "Файл должен содержать указанный текст"
|
|
117
|
-
|
|
118
|
-
manual_approval:
|
|
119
|
-
description: "Требуется ручное подтверждение"
|
|
120
|
-
|
|
121
|
-
# Настройки путей
|
|
122
|
-
paths:
|
|
123
|
-
plans: plans
|
|
124
|
-
tickets: tickets
|
|
125
|
-
reports: reports
|
|
126
|
-
templates: templates
|
|
127
|
-
plan_templates: plans/templates
|
|
128
|
-
archive: archive
|
|
129
|
-
|
|
130
|
-
# Настройки отчётности
|
|
131
|
-
reporting:
|
|
132
|
-
daily_report_time: "18:00"
|
|
133
|
-
sprint_length_days: 7
|
|
134
|
-
archive_completed_after_days: 30
|