@gian-tiaga/eda 2.0.0 → 2.1.0
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/MIGRATION.md +5 -3
- package/README.md +18 -19
- package/agents/eda-plan-review-api/prompt.md +5 -4
- package/agents/eda-plan-review-architecture/prompt.md +5 -4
- package/agents/eda-plan-review-database/prompt.md +5 -4
- package/agents/eda-plan-review-execution/agent.json +1 -1
- package/agents/eda-plan-review-execution/prompt.md +5 -4
- package/agents/eda-plan-review-feasibility/prompt.md +5 -4
- package/agents/eda-plan-review-frontend/prompt.md +5 -4
- package/agents/eda-plan-review-performance/prompt.md +5 -4
- package/agents/eda-plan-review-previous/agent.json +1 -1
- package/agents/eda-plan-review-previous/prompt.md +5 -5
- package/agents/eda-plan-review-requirements/prompt.md +5 -4
- package/agents/eda-plan-review-rules/prompt.md +5 -4
- package/agents/eda-plan-review-security/prompt.md +5 -4
- package/agents/eda-plan-review-verification/prompt.md +5 -4
- package/agents/eda-review-api/prompt.md +4 -3
- package/agents/eda-review-architecture/prompt.md +4 -3
- package/agents/eda-review-business/prompt.md +4 -3
- package/agents/eda-review-code-quality/prompt.md +5 -4
- package/agents/eda-review-correctness/prompt.md +4 -3
- package/agents/eda-review-database/prompt.md +4 -3
- package/agents/eda-review-documentation/prompt.md +4 -3
- package/agents/eda-review-frontend/prompt.md +4 -3
- package/agents/eda-review-performance/prompt.md +4 -3
- package/agents/eda-review-plan-alignment/prompt.md +4 -3
- package/agents/eda-review-previous-reviews/prompt.md +5 -4
- package/agents/eda-review-references/prompt.md +4 -3
- package/agents/eda-review-rules/prompt.md +4 -3
- package/agents/eda-review-security/prompt.md +4 -3
- package/agents/eda-review-tests/prompt.md +4 -3
- package/lib/install.js +3 -3
- package/package.json +1 -1
- package/skills/eda-business/SKILL.md +47 -32
- package/skills/eda-fix-by-review/SKILL.md +41 -58
- package/skills/eda-orhestra/SKILL.md +1 -1
- package/skills/eda-plan/SKILL.md +18 -23
- package/skills/eda-plan-polish/SKILL.md +12 -12
- package/skills/eda-plan-review/SKILL.md +25 -24
- package/skills/eda-plan-review-fix/SKILL.md +22 -39
- package/skills/eda-polish/SKILL.md +19 -31
- package/skills/eda-review/SKILL.md +8 -16
- package/skills/eda-send-review/SKILL.md +7 -7
|
@@ -1,30 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: eda-plan-review-fix
|
|
3
|
-
description: 'Исправляет готовый план по
|
|
3
|
+
description: 'Исправляет готовый план по всем находкам сохранённого plan-review.'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Скил: Исправитель плана по ревью (eda-plan-review-fix)
|
|
7
7
|
|
|
8
|
-
Применяй подтверждённые
|
|
8
|
+
Применяй подтверждённые находки из `docs/plan-reviews/` только к связанному плану. Не делай новое ревью: твой контракт — точечно изменить основные разделы плана и сохранить проверяемую цепочку SHA-256.
|
|
9
9
|
|
|
10
10
|
## Вход из сообщения пользователя
|
|
11
11
|
|
|
12
|
-
Разбери путь или название review, «последнее ревью»,
|
|
13
|
-
|
|
14
|
-
## Режимы
|
|
15
|
-
|
|
16
|
-
Обычный режим:
|
|
17
|
-
|
|
18
|
-
- все required применяй без дополнительного подтверждения;
|
|
19
|
-
- optional собери в один-два раунда `AskUserQuestion`;
|
|
20
|
-
- waived и отклонённые findings не применяй.
|
|
21
|
-
|
|
22
|
-
`apply-optional`:
|
|
23
|
-
|
|
24
|
-
- все required применяй;
|
|
25
|
-
- optional применяй, если правка конкретна, обратима, остаётся в scope и улучшает исполнимость;
|
|
26
|
-
- иначе пометь optional как `waived` с конкретной причиной;
|
|
27
|
-
- продуктовое решение, конфликт с business/rules/architecture или расширение scope всё равно требует пользователя.
|
|
12
|
+
Разбери путь или название review, «последнее ревью», ограничения и явные решения пользователя. Если вход однозначен, продолжай без вопроса. При нескольких равных review или противоречивом target используй `AskUserQuestion`.
|
|
28
13
|
|
|
29
14
|
## Вопросы
|
|
30
15
|
|
|
@@ -37,20 +22,21 @@ description: 'Исправляет готовый план по сохранён
|
|
|
37
22
|
1. Работай только с review из `docs/plan-reviews/` и его `plan` из `docs/plans/`.
|
|
38
23
|
2. Вычисли SHA-256 текущего плана до правок. Он обязан совпадать с `plan_sha256` review. При несовпадении остановись: review устарел, нужен новый `eda-plan-review`.
|
|
39
24
|
3. Перед правкой прочитай план, `docs/rules.md`, `docs/arch.md`, только применимые `sources.business`, `sources.references` и `sources.research`.
|
|
40
|
-
4. Не переоценивай
|
|
41
|
-
5.
|
|
42
|
-
6.
|
|
43
|
-
7.
|
|
44
|
-
8.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
25
|
+
4. Не переоценивай находки и не создавай новые. Каждая находка в итоговом review требует исправления. Если находка недоказана, противоречит контексту или непонятна, остановись и попроси повторное review либо решение пользователя.
|
|
26
|
+
5. Не пропускай находку и не заменяй её пожеланием на будущее. Продуктовый выбор, конфликт с business/rules/architecture или расширение scope передай пользователю одним блокирующим вопросом до любых правок.
|
|
27
|
+
6. Делай минимально достаточный diff. Сначала удаляй лишнее или заменяй существующую формулировку; не добавляй новый абзац, если достаточно одной строки, не повторяй сведения между разделами и не добавляй rationale, примеры или фон, которых не требует находка.
|
|
28
|
+
7. Встраивай правки в `Целевой алгоритм`, `Контракты реализации`, фазы, тесты, логирование и эксплуатацию. Не создавай длинный журнал ревью в теле плана.
|
|
29
|
+
8. Сохраняй ID задач и прямые зависимости; при структурной правке актуализируй все ссылки.
|
|
30
|
+
9. Не правь код, конфиги, зависимости, миграции или другие документы. Не запускай проверки проекта.
|
|
31
|
+
|
|
32
|
+
## Применить находки
|
|
33
|
+
|
|
34
|
+
1. Прочитай раздел `Gate`, все открытые находки и `Отклонённые предложения`.
|
|
35
|
+
2. До редактирования собери все реальные блокирующие вопросы. Не делай частичную правку до ответа.
|
|
36
|
+
3. Примени все открытые находки одним связным минимальным изменением плана. Отклонённые предложения не применяй.
|
|
37
|
+
4. Для каждого ID зафиксируй `applied`; не меняй fingerprint.
|
|
52
38
|
5. Заранее определи `$FIX_FILE`, обнови front matter плана полями `status`, `plan_review` и `plan_review_fix`, затем вычисли окончательный SHA-256 как `$AFTER_SHA256`.
|
|
53
|
-
6. Если
|
|
39
|
+
6. Если находки были, но итоговый SHA-256 не изменился, остановись `blocked: fix не изменил план` и не выдавай успех.
|
|
54
40
|
|
|
55
41
|
После успешного изменения:
|
|
56
42
|
|
|
@@ -74,32 +60,29 @@ date: <YYYY-MM-DD HH:MM>
|
|
|
74
60
|
|
|
75
61
|
# Исправления плана по ревью: <название>
|
|
76
62
|
|
|
77
|
-
## Применённые
|
|
63
|
+
## Применённые находки
|
|
78
64
|
| ID | Что изменено | Раздел плана | Статус |
|
|
79
65
|
|---|---|---|---|
|
|
80
66
|
| PR-001 | <конкретная правка> | <раздел> | applied |
|
|
81
67
|
|
|
82
|
-
## Waived optional
|
|
83
|
-
| ID | Причина | Новые доказательства для пересмотра |
|
|
84
|
-
|---|---|---|
|
|
85
|
-
|
|
86
68
|
## Цепочка
|
|
87
69
|
- **Before SHA-256:** `<hash>`
|
|
88
70
|
- **After SHA-256:** `<hash>`
|
|
89
71
|
- **Нужен подтверждающий review:** да
|
|
90
72
|
```
|
|
91
73
|
|
|
92
|
-
После записи отчёта допиши в review один раздел `## Применённые исправления` со ссылкой на fix, after SHA-256 и списком
|
|
74
|
+
После записи отчёта допиши в review один раздел `## Применённые исправления` со ссылкой на fix, after SHA-256 и списком applied ID. Не дублируй раздел при повторном продолжении того же запуска.
|
|
93
75
|
|
|
94
76
|
## Финал
|
|
95
77
|
|
|
96
|
-
Сообщи пути к plan/review/fix, before/after SHA-256, applied
|
|
78
|
+
Сообщи пути к plan/review/fix, before/after SHA-256, applied ID, оставшиеся блокеры и что изменения не закоммичены. Следующий шаг — `eda-plan-review` для подтверждения или возврат вызывающему `eda-plan-polish`.
|
|
97
79
|
|
|
98
80
|
## Чего НЕ делать
|
|
99
81
|
|
|
100
82
|
- Делать новое ревью или выставлять score.
|
|
101
83
|
- Исправлять код или файлы вне выбранного плана, review и fix-отчёта.
|
|
102
84
|
- Применять stale review к другому SHA-256.
|
|
103
|
-
- Молча
|
|
85
|
+
- Молча пропускать находку или самостоятельно разрешать продуктовый конфликт.
|
|
86
|
+
- Раздувать план пояснениями и повторами вместо минимального удаления или замены.
|
|
104
87
|
- Добавлять журнал итераций в тело плана.
|
|
105
88
|
- Коммитить, запускать тесты, lint, build, typecheck, миграции или другой CLI.
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: eda-polish
|
|
3
|
-
description: 'Итеративно ревьюит и исправляет изменения до заданной оценки качества.'
|
|
3
|
+
description: 'Итеративно ревьюит и исправляет изменения до чистого результата и заданной оценки качества.'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Скил: Полировка изменений (eda-polish)
|
|
7
7
|
|
|
8
|
-
Оркестрируй цикл `eda-review` → `eda-fix-by-review
|
|
9
|
-
В начале каждой итерации запускай полное `eda-review` целевого изменения.
|
|
8
|
+
Оркестрируй цикл `eda-review` → `eda-fix-by-review` → повторное `eda-review`. Основной агент только управляет итерациями, читает сохранённые артефакты и сообщает результат. В начале каждой итерации запускай полное `eda-review` целевого изменения.
|
|
10
9
|
|
|
11
10
|
## Вход из сообщения пользователя
|
|
12
11
|
|
|
@@ -16,12 +15,12 @@ description: 'Итеративно ревьюит и исправляет изм
|
|
|
16
15
|
|
|
17
16
|
## Правила
|
|
18
17
|
|
|
19
|
-
1. Каждый вызов `eda-review` и `eda-fix-by-review
|
|
18
|
+
1. Каждый вызов `eda-review` и `eda-fix-by-review` запускай отдельным изолированным субагентом. Основной агент не делает их работу.
|
|
20
19
|
2. Если нативные субагенты недоступны, остановись; не заменяй шаги CLI-процессами.
|
|
21
|
-
3.
|
|
22
|
-
4.
|
|
20
|
+
3. Успех требует одновременно: полный review со статусом `reviewed` или `reviewed-with-warnings`, `result: clean`, ноль находок и `score >= threshold`.
|
|
21
|
+
4. Любая находка обязательно исправляется независимо от score. Порог не превращает найденную проблему в допустимую.
|
|
23
22
|
5. Не коммить и не отправляй ревью.
|
|
24
|
-
6. Останавливайся при повторном сбое обязательной проверки review, блокере fix-агента,
|
|
23
|
+
6. Останавливайся при повторном сбое обязательной проверки review, блокере fix-агента, неизменном наборе находок один полный круг или достижении лимита.
|
|
25
24
|
|
|
26
25
|
## Вопросы
|
|
27
26
|
|
|
@@ -29,53 +28,42 @@ description: 'Итеративно ревьюит и исправляет изм
|
|
|
29
28
|
|
|
30
29
|
## Цикл
|
|
31
30
|
|
|
32
|
-
Сформируй `$TARGET_CONTEXT`, `$THRESHOLD`, `$LIMIT` и
|
|
31
|
+
Сформируй `$TARGET_CONTEXT`, `$THRESHOLD`, `$LIMIT` и журнал: номер итерации, review file, result, score, список находок, fix report и причина продолжения.
|
|
33
32
|
|
|
34
33
|
Для каждой итерации:
|
|
35
34
|
|
|
36
|
-
1. Запусти отдельного
|
|
35
|
+
1. Запусти отдельного субагента:
|
|
37
36
|
|
|
38
37
|
```text
|
|
39
38
|
Используй eda-review для <TARGET_CONTEXT>.
|
|
40
39
|
План: <PLAN_FILE | none>.
|
|
41
40
|
Overrides проверок и моделей: <из запроса | none>.
|
|
42
|
-
Верни путь к файлу, status, score и coverage.
|
|
41
|
+
Верни путь к файлу, status, result, score, находки и coverage.
|
|
43
42
|
```
|
|
44
43
|
|
|
45
|
-
2. Если review остановился из-за обязательного агента, останови
|
|
46
|
-
3. Если `score >= threshold`, заверши успешно.
|
|
47
|
-
4. Если
|
|
48
|
-
5. Запусти отдельного субагента:
|
|
44
|
+
2. Если review остановился из-за обязательного агента, останови цикл. `reviewed-with-warnings` из-за недоступных previous reviews разрешён.
|
|
45
|
+
3. Если `result: clean`, находок нет и `score >= threshold`, заверши успешно. Если `result` противоречит числу находок, считай файл невалидным и остановись.
|
|
46
|
+
4. Если находки есть, запусти отдельного субагента:
|
|
49
47
|
|
|
50
48
|
```text
|
|
51
|
-
Используй eda-fix-by-review
|
|
52
|
-
Примени все
|
|
49
|
+
Используй eda-fix-by-review для <REVIEW_FILE>.
|
|
50
|
+
Примени все находки минимальными достаточными правками и выполни проверки.
|
|
53
51
|
Верни путь к fix-отчёту и результат проверок.
|
|
54
52
|
```
|
|
55
53
|
|
|
56
|
-
|
|
54
|
+
5. После успешных исправлений начни новую итерацию с полным `eda-review`.
|
|
57
55
|
|
|
58
|
-
Если
|
|
56
|
+
Если после полного круга набор находок не изменился, остановись раньше лимита с конкретными оставшимися проблемами. При достижении лимита не скрывай незавершённую сходимость. Состояние `clean` со score ниже threshold является несогласованным с контрактом `eda-review`: при отсутствии находок score должен быть `100`; остановись как на ошибке контракта.
|
|
59
57
|
|
|
60
58
|
## Финал
|
|
61
59
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
- результат: достигнут порог, достигнут лимит, blocked, нет применимых замечаний или score не растёт;
|
|
65
|
-
- итоговую оценку и порог;
|
|
66
|
-
- количество итераций;
|
|
67
|
-
- последний review file и fix report;
|
|
68
|
-
- предупреждения coverage, если они были;
|
|
69
|
-
- что изменения не закоммичены.
|
|
70
|
-
|
|
71
|
-
При успехе предложи `eda-commit`. При неуспехе назови конкретный блокер или оставшиеся замечания.
|
|
60
|
+
Сообщи результат, итоговый result и score, порог, число итераций, последний review file и fix report, оставшиеся находки и coverage warnings. Укажи, что изменения не закоммичены. При успехе предложи `eda-commit`; при неуспехе назови конкретный блокер.
|
|
72
61
|
|
|
73
62
|
## Чего НЕ делать
|
|
74
63
|
|
|
75
64
|
- Делать ревью или исправления основным агентом.
|
|
76
65
|
- Запускать отдельный этап проверки готового ревью.
|
|
77
|
-
-
|
|
78
|
-
-
|
|
79
|
-
- Терять причины отклонённых optional-решений.
|
|
66
|
+
- Считать цикл успешным только по score при наличии находок.
|
|
67
|
+
- Выбирать или отклонять принятые находки.
|
|
80
68
|
- Переписывать `docs/settings.yaml`, правила или архитектуру ради score.
|
|
81
69
|
- Коммитить, пушить или отправлять ревью.
|
|
@@ -114,7 +114,7 @@ REVIEW_CONTEXT: <краткий общий контекст>
|
|
|
114
114
|
|
|
115
115
|
## Проверить ответы и обработать сбои
|
|
116
116
|
|
|
117
|
-
Проверь для каждого ответа `status`, `check`, фактически запрошенный `model` и структуру
|
|
117
|
+
Проверь для каждого ответа `status`, `check`, фактически запрошенный `model` и структуру `находки`. Несовпадение модели считай ошибкой контракта. Каждая находка означает дефект, который обязательно исправить. Находка без точного места, конкретного достижимого риска, доказательства и проверяемого способа исправления не подтверждена.
|
|
118
118
|
|
|
119
119
|
- При `blocked`, неверном YAML или отсутствующих обязательных полях один раз повтори того же агента на той же модели с исходным контекстом и описанием ошибки формата.
|
|
120
120
|
- `completed` означает успешно выполненную проверку. `not_applicable` перенеси в skipped с причиной и не повторяй.
|
|
@@ -128,9 +128,11 @@ REVIEW_CONTEXT: <краткий общий контекст>
|
|
|
128
128
|
|
|
129
129
|
1. Проверь находки по указанным evidence и отклони неподтверждённые.
|
|
130
130
|
2. Объедини дубли разных агентов в один пункт, сохранив все полезные доказательства.
|
|
131
|
-
3.
|
|
132
|
-
4.
|
|
133
|
-
5.
|
|
131
|
+
3. Оставь только конкретные ошибки, нарушения контрактов и существенные неточности, которые нельзя безопасно игнорировать. Косметические улучшения, вкусовой рефакторинг, спекулятивное усиление, необязательные тесты, документацию и оптимизации отклони, а не превращай в находку.
|
|
132
|
+
4. Для каждой принятой находки проверь точное место, доказательство, практическое влияние, минимальное исправление и способ проверки. Если хотя бы одного элемента нет, отклони находку.
|
|
133
|
+
5. Сам выставь итоговый `score` от 0 до 100 по серьёзности, вероятности, влиянию и общему качеству реализации. Не используй фиксированные вычеты, среднее или минимум оценок агентов. Ориентир: `100` — находок нет; `95–99` — только low; `80–94` — medium или несколько low; `60–79` — high; ниже `60` — critical или нужна существенная переработка. Любое снижение score связывай с принятыми находками; если находок нет, score равен `100`. Добавь короткое обоснование числа.
|
|
134
|
+
6. Установи `result: clean`, только если находок нет; при любой находке используй `result: changes-required` независимо от score.
|
|
135
|
+
7. Не выполняй дополнительное самостоятельное ревью и не добавляй новые domain-находки от себя.
|
|
134
136
|
|
|
135
137
|
Ревью содержит только проблемы. Не перечисляй выполненную работу, похвалу и успешные проверки. Исключение — короткий технический раздел покрытия.
|
|
136
138
|
|
|
@@ -144,6 +146,7 @@ target: <что проверено>
|
|
|
144
146
|
plan: <docs/plans/... | none>
|
|
145
147
|
score: <0..100>
|
|
146
148
|
status: <reviewed | reviewed-with-warnings>
|
|
149
|
+
result: <clean | changes-required>
|
|
147
150
|
date: <YYYY-MM-DD HH:MM>
|
|
148
151
|
checks:
|
|
149
152
|
- name: <check>
|
|
@@ -184,29 +187,18 @@ checks:
|
|
|
184
187
|
|
|
185
188
|
- **Тип:** <check>
|
|
186
189
|
- **Тяжесть:** <critical | high | medium | low>
|
|
187
|
-
- **Рекомендация:** <править обязательно | на усмотрение автора>
|
|
188
190
|
- **Файлы:** `<path:line>`
|
|
189
191
|
- **Что подтверждает проблему:** <evidence>
|
|
190
192
|
- **Как исправить:** <общий подход и конкретные шаги>
|
|
191
193
|
- **Тесты:** <что добавить или обновить>
|
|
192
194
|
|
|
193
|
-
## Рекомендации
|
|
194
|
-
|
|
195
|
-
### Править обязательно
|
|
196
|
-
- <номера или «Нет»>
|
|
197
|
-
|
|
198
|
-
### На усмотрение автора
|
|
199
|
-
- <номера или «Нет»>
|
|
200
|
-
|
|
201
|
-
### Не править
|
|
202
|
-
- <только явно отклонённые пункты или «Нет»>
|
|
203
195
|
```
|
|
204
196
|
|
|
205
197
|
Основная часть каждого замечания — главный ответ: простой язык, 1–3 коротких абзаца и контекст, понятный без чтения diff или плана. Файлы, строки, SQL, DTO и внутренние имена давай ниже в `Технические детали`.
|
|
206
198
|
|
|
207
199
|
## Финал
|
|
208
200
|
|
|
209
|
-
Коротко сообщи путь к ревью,
|
|
201
|
+
Коротко сообщи путь к ревью, status, result, score, количество находок, completed/skipped/warnings. При `changes-required` предложи `eda-fix-by-review`; при `clean` — `eda-commit`.
|
|
210
202
|
|
|
211
203
|
## Чего НЕ делать
|
|
212
204
|
|
|
@@ -53,9 +53,9 @@ description: 'Публикует готовое ревью из `docs/reviews/`
|
|
|
53
53
|
### 2. Выбрать ревью и что отправлять
|
|
54
54
|
Сначала разбери текст рядом с вызовом: путь к ревью, название или часть названия, «последнее ревью», PR (`PR 12`, `#12`), статус отправки (`comment`, `review-comment`, `approve`, `request-changes`) и указание закрыть или сохранить предыдущие ревью.
|
|
55
55
|
|
|
56
|
-
Если найдено ровно одно ревью — продолжай без вопроса. Если найдено несколько одинаково подходящих ревью — `AskUserQuestion` со списком вариантов. Если входа нет — `AskUserQuestion` со списком последних файлов из `docs/reviews/`. Если `docs/reviews/` отсутствует или пуста — остановись с понятным вопросом или статусом `blocked: нужно ревью`. Прочитай файл целиком:
|
|
56
|
+
Если найдено ровно одно ревью — продолжай без вопроса. Если найдено несколько одинаково подходящих ревью — `AskUserQuestion` со списком вариантов. Если входа нет — `AskUserQuestion` со списком последних файлов из `docs/reviews/`. Если `docs/reviews/` отсутствует или пуста — остановись с понятным вопросом или статусом `blocked: нужно ревью`. Прочитай файл целиком: result, оценку и замечания. Отсутствие статуса отправки само по себе не считается недостатком входа и не требует вопроса.
|
|
57
57
|
|
|
58
|
-
**Что отправлять.** По умолчанию — все замечания. Если в тексте указано подмножество, отправь только его. Синтаксис свободный, распознавай по смыслу: по номерам («пункты 1, 3, 5»)
|
|
58
|
+
**Что отправлять.** По умолчанию — все замечания. Если в тексте указано подмножество, отправь только его. Синтаксис свободный, распознавай по смыслу: по номерам («пункты 1, 3, 5») или по типу («только security» → замечания с этим `Тип`). У находок нет разных степеней обязательности: каждый отправляемый пункт требует исправления. Выбор влияет и на сводку, и на комментарии к строкам. Для старого формата отправляй только раздел `Править обязательно`; предложения из остальных групп отбрасывай.
|
|
59
59
|
|
|
60
60
|
### 3. Найти целевой PR
|
|
61
61
|
Если номер PR указан в тексте пользователя — используй его. Иначе попробуй `gh pr view --json number,url,headRefName` — если у текущей ветки уже есть PR, возьми его номер.
|
|
@@ -73,7 +73,7 @@ Review отправляется всегда; здесь выбирается т
|
|
|
73
73
|
| явно указано `comment` / `review-comment` | `COMMENT` | не задавать |
|
|
74
74
|
| статус не указан | `COMMENT` | не задавать |
|
|
75
75
|
|
|
76
|
-
`comment` и `review-comment` означают review без решения о принятии изменений (`event=COMMENT`) — обычный комментарий-ревью, который тоже несёт сводку и комментарии к строкам. Явно приложенный или названный пользователем контекст текущего вызова учитывай наравне с текстом рядом со скиллом. Не выводи статус из score,
|
|
76
|
+
`comment` и `review-comment` означают review без решения о принятии изменений (`event=COMMENT`) — обычный комментарий-ревью, который тоже несёт сводку и комментарии к строкам. Явно приложенный или названный пользователем контекст текущего вызова учитывай наравне с текстом рядом со скиллом. Не выводи статус из result, score, старого обсуждения или предыдущих запусков. Если в текущем контексте одновременно указаны несовместимые статусы и приоритет неясен — `AskUserQuestion` с тремя вариантами.
|
|
77
77
|
|
|
78
78
|
### 5. Собрать сводку и комментарии к строкам
|
|
79
79
|
Из выбранных пунктов собери две части.
|
|
@@ -84,12 +84,12 @@ Review отправляется всегда; здесь выбирается т
|
|
|
84
84
|
## Ревью: <заголовок>
|
|
85
85
|
|
|
86
86
|
**Оценка:** N/100. <одно-два предложения почему>
|
|
87
|
+
**Результат:** <clean | changes-required>
|
|
87
88
|
|
|
88
89
|
<короткое резюме: что отправлено и общий вывод>
|
|
89
90
|
|
|
90
|
-
###
|
|
91
|
-
|
|
92
|
-
- **На усмотрение автора:** 2, 4
|
|
91
|
+
### Замечания
|
|
92
|
+
1. **[тип]** <краткая суть и требуемое исправление>
|
|
93
93
|
|
|
94
94
|
### Замечания вне diff
|
|
95
95
|
1. **[тип]** `path/file.py:42` — <что не так>. → <что предлагаешь>
|
|
@@ -170,7 +170,7 @@ gh api graphql -f query='mutation($id: ID!) { resolveReviewThread(input: {thread
|
|
|
170
170
|
- Делать само ревью или править замечания — это `eda-review` / `eda-fix-by-review`.
|
|
171
171
|
- Отправлять всё одним обычным комментарием PR, когда строки можно привязать к diff — обычный комментарий только fallback при отсутствии diff.
|
|
172
172
|
- Терять замечания вне diff — они идут в сводку отдельным разделом.
|
|
173
|
-
- Выводить `approve` или `request-changes` из
|
|
173
|
+
- Выводить `approve` или `request-changes` из result, score или не связанного с вызовом старого контекста — без явного статуса в контексте текущего вызова всегда `COMMENT`.
|
|
174
174
|
- Скрывать или резолвить чужие, ручные или не связанные с предыдущими отправками `eda-send-review` комментарии.
|
|
175
175
|
- Закрывать предыдущие отправки до успешной публикации нового ревью.
|
|
176
176
|
- Передавать тело через `-b "..."` со спецсимволами — только `--input` (Reviews API) или `--body-file` (fallback).
|