dsh-desktop-kit 1.0.0 → 2.0.1
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 +106 -41
- package/client.js +780 -28
- package/docs/ARCHITECTURE.md +114 -0
- package/docs/COMPATIBILITY.md +61 -0
- package/docs/INSTALL.md +97 -0
- package/docs/PRIVACY.md +50 -0
- package/docs/ROADMAP.md +57 -0
- package/docs/TOKENS.md +118 -0
- package/docs/TROUBLESHOOTING.md +68 -0
- package/docs/images/hero.png +0 -0
- package/index.js +4 -0
- package/package.json +15 -5
- package/plugins/dsh-gkb-ru-ui/lib/client.js +276 -28
- package/plugins/dsh-gkb-ru-ui/lib/index.js +45 -1
- package/plugins/dsh-gkb-ru-ui/lib/skills.js +195 -1
- package/plugins/dsh-gkb-ru-ui/package.json +2 -2
- package/plugins/dsh-gkb-ru-ui/screenshots/01-home-tiles-1440-light.png +0 -0
- package/plugins/dsh-gkb-ru-ui/screenshots/02-skills-1440-light.png +0 -0
- package/plugins/dsh-gkb-ru-ui/screenshots/03-skills-editor-1440-light.png +0 -0
- package/plugins/dsh-gkb-ru-ui/screenshots/04-skills-1440-dark.png +0 -0
- package/plugins/dsh-gkb-ru-ui/screenshots/05-skills-390-light.png +0 -0
- package/plugins/dsh-gkb-ru-ui/screenshots/06-home-tiles-1440-dark.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/01-real-time-peak-start.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/02-real-time-peak-end.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/03-peak-card-1440-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/04-peak-card-1440-dark.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/05-peak-card-390-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/05-peak-card-768-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/06-peak-card-390-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/07-live-preview-check.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/07-pre-peak-1440-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/08-peak-start-1440-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/09-peak-end-1440-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/10-pre-peak-card-1440-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/11-pre-peak-card-1440-dark.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/12-pre-peak-card-390-light.png +0 -0
- package/plugins/dsh-peak-guard/screenshots/qa-report.json +74 -0
- package/plugins/dsh-profile-transfer/screenshots/01-settings-transfer-1440-light.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/02-settings-transfer-preview-1440-light.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/03-settings-transfer-1440-dark.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/04-settings-transfer-390-light.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/05-settings-transfer-768-light.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/06-settings-transfer-390-dark.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/07-settings-transfer-export-result.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/08-settings-transfer-workspaces-1440-light.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/09-settings-transfer-workspaces-1440-dark.png +0 -0
- package/plugins/dsh-profile-transfer/screenshots/10-settings-transfer-workspaces-390-light.png +0 -0
- package/plugins/dsh-session-move/screenshots/01-row-menu-1440-light.png +0 -0
- package/plugins/dsh-session-move/screenshots/02-dialog-1440-light.png +0 -0
- package/plugins/dsh-session-move/screenshots/03-dialog-390-light.png +0 -0
- package/plugins/dsh-session-move/screenshots/04-dialog-1440-dark.png +0 -0
- package/plugins/dsh-session-move/screenshots/05-drag-highlight-1440-light.png +0 -0
- package/plugins/dsh-session-move/screenshots/06-drop-ungrouped-highlight.png +0 -0
- package/plugins/dsh-session-move/screenshots/07-after-drop-ungrouped.png +0 -0
- package/plugins/dsh-session-move/screenshots/08-move-dialog.png +0 -0
- package/plugins/dsh-session-move/screenshots/09-moved-to-second-workspace.png +0 -0
- package/plugins/dsh-session-move/screenshots/qa-report.json +62 -0
- package/plugins/dsh-skill-autopilot/cordis.patch.yml +3 -0
- package/plugins/dsh-skill-autopilot/index.js +444 -0
- package/plugins/dsh-skill-autopilot/package.json +19 -0
- package/plugins/dsh-token-lab/cordis.patch.yml +3 -0
- package/plugins/dsh-token-lab/lib/client.js +504 -0
- package/plugins/dsh-token-lab/lib/index.js +275 -0
- package/plugins/dsh-token-lab/package.json +26 -0
- package/plugins/dsh-token-lab/screenshots/01-token-lab-1440-light.png +0 -0
- package/plugins/dsh-token-lab/screenshots/02-token-lab-1440-dark.png +0 -0
- package/skills/code-review-checklist/SKILL.md +48 -30
- package/skills/content-writing/SKILL.md +64 -327
- package/skills/content-writing/references/process.md +123 -0
- package/skills/content-writing/references/quick-recipes.md +99 -0
- package/skills/content-writing/references/rules.md +85 -0
- package/skills/content-writing/references/sources.md +49 -0
- package/skills/context-economy/SKILL.md +60 -0
- package/skills/context-economy/references/long-session.md +35 -0
- package/skills/context-economy/references/token-math.md +42 -0
- package/skills/context-economy/references/tool-recipes.md +34 -0
- package/skills/database-safety/SKILL.md +40 -24
- package/skills/debugging-playbook/SKILL.md +30 -27
- package/skills/design-critique/SKILL.md +57 -110
- package/skills/design-critique/references/a11y.md +25 -0
- package/skills/design-critique/references/diagnoses.md +33 -0
- package/skills/design-critique/references/quick-tests.md +30 -0
- package/skills/design-critique/references/report-template.md +63 -0
- package/skills/design-critique/references/rubric-fast.md +73 -0
- package/skills/dev-workflow/SKILL.md +41 -34
- package/skills/dev-workflow/references/definition-of-done.md +44 -0
- package/skills/dev-workflow/references/memory-and-boundaries.md +31 -0
- package/skills/dev-workflow/references/stages.md +67 -0
- package/skills/git-and-ci/SKILL.md +46 -26
- package/skills/pg-upgrade-verify/SKILL.md +54 -35
- package/skills/project-deep-dive/SKILL.md +39 -164
- package/skills/project-deep-dive/references/recon-commands.md +12 -0
- package/skills/project-deep-dive/references/section-templates.md +2 -0
- package/skills/project-deep-dive/references/tool-and-process.md +86 -0
- package/skills/project-memory-maintenance/SKILL.md +39 -154
- package/skills/project-memory-maintenance/references/api-and-checklist.md +99 -0
- package/skills/project-memory-maintenance/references/journal-template.md +2 -0
- package/skills/project-memory-maintenance/references/section-rules.md +2 -0
- package/skills/release-and-deploy/SKILL.md +46 -32
- package/skills/requirements-and-planning/SKILL.md +44 -110
- package/skills/requirements-and-planning/references/antipatterns-and-checklist.md +20 -0
- package/skills/requirements-and-planning/references/process-steps.md +52 -0
- package/skills/requirements-and-planning/references/templates-and-estimates.md +29 -0
- package/skills/security-review/SKILL.md +33 -29
- package/skills/seo/SKILL.md +53 -305
- package/skills/seo/references/antipatterns.md +66 -0
- package/skills/seo/references/audit-checklist.md +14 -0
- package/skills/seo/references/content-seo.md +180 -174
- package/skills/seo/references/eeat-medical.md +2 -0
- package/skills/seo/references/measurement.md +28 -1
- package/skills/seo/references/on-page.md +5 -0
- package/skills/seo/references/page-templates.md +56 -0
- package/skills/seo/references/stack-recipes.md +2 -0
- package/skills/seo/references/structured-data.md +2 -0
- package/skills/seo/references/technical-seo.md +2 -0
- package/skills/service-desk-conventions/SKILL.md +40 -28
- package/skills/service-desk-db-safety/SKILL.md +39 -28
- package/skills/service-desk-release/SKILL.md +40 -22
- package/skills/service-desk-testing/SKILL.md +47 -33
- package/skills/service-desk-ui/SKILL.md +43 -24
- package/skills/skills-router/SKILL.md +44 -82
- package/skills/skills-router/references/applying-skills.md +25 -0
- package/skills/skills-router/references/routing-matrix.md +52 -0
- package/skills/testing-strategy/SKILL.md +47 -32
- package/skills/ui-design-system/SKILL.md +43 -38
- package/skills/ui-design-system/references/accessibility-and-responsive.md +50 -0
- package/skills/ui-design-system/references/tokens-and-components.md +67 -0
- package/skills/ui-design-system/references/visual-qa.md +44 -0
- package/skills/web-research/SKILL.md +40 -33
- package/skills/web-research/references/answer-and-citations.md +60 -0
- package/skills/web-research/references/query-recipes.md +44 -0
- package/skills/wow-design/SKILL.md +82 -161
- package/skills/wow-design/references/anti-patterns.md +3 -0
- package/skills/wow-design/references/critique-rubric.md +3 -0
- package/skills/wow-design/references/design-brief-template.md +2 -0
- package/skills/wow-design/references/inspiration.md +3 -0
- package/skills/wow-design/references/presets.md +3 -0
- package/skills/wow-design/references/principles.md +3 -0
- package/skills/wow-design/references/quick-presets.md +50 -0
- package/skills/wow-design/references/report-template.md +21 -0
- package/skills/wow-design/references/stack-recipes.md +3 -0
- package/skills/wow-design/references/visual-qa.md +3 -0
- package/skills/wow-design/references/wow-levers.md +43 -0
- package/tools/skill-cost.mjs +76 -0
|
@@ -1,118 +1,65 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: design-critique
|
|
3
|
-
description: "Дизайн-критик: аудит
|
|
4
|
-
whenToUse: "
|
|
3
|
+
description: "Дизайн-критик: аудит готового UI по 12 критериям, скриншоты, axe, правки «до/после»; вердикт SHIP/NEEDS WORK/REDESIGN."
|
|
4
|
+
whenToUse: "Оценить интерфейс, понять «почему выглядит дёшево», ревью страницы/дашборда/формы, сравнить варианты, поднять UI до WOW."
|
|
5
5
|
user-invocable: true
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# DESIGN-CRITIQUE — дизайн-критик
|
|
9
9
|
|
|
10
|
-
>
|
|
11
|
-
>
|
|
12
|
-
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
| # | Критерий | Вес |
|
|
49
|
-
|---|---|---|
|
|
50
|
-
| 1 | Первое впечатление / концепция | 15% |
|
|
51
|
-
| 2 | Визуальная иерархия и маршрут взгляда | 12% |
|
|
52
|
-
| 3 | Типографика | 12% |
|
|
53
|
-
| 4 | Цвет и контраст | 10% |
|
|
54
|
-
| 5 | Сетка, выравнивание, ритм | 10% |
|
|
55
|
-
| 6 | Воздух и плотность | 8% |
|
|
56
|
-
| 7 | Компоненты и состояния | 8% |
|
|
57
|
-
| 8 | Консистентность | 7% |
|
|
58
|
-
| 9 | Детали и полировка | 6% |
|
|
59
|
-
| 10 | Адаптив и мобильный | 5% |
|
|
60
|
-
| 11 | Доступность | 4% |
|
|
61
|
-
| 12 | Оригинальность vs польза | 3% |
|
|
62
|
-
|
|
63
|
-
Считай средневзвешенное. 5 — уровень Linear/Stripe/Apple, 4 — крепкий профессиональный, 3 — «нормально, но без
|
|
64
|
-
характера», 2 — заметно дёшево, 1 — сломано.
|
|
65
|
-
|
|
66
|
-
### 5. Приоритизируй правки
|
|
67
|
-
- **P0 (блокеры):** нечитаемый контраст, сломанный мобильный, нет иерархии, «AI-slop»-маркеры, нерабочие состояния,
|
|
68
|
-
критичные axe-нарушения. Без них нельзя сдавать.
|
|
69
|
-
- **P1 (важное):** типографика, воздух, ритм, тени/радиусы, неконсистентные отступы, слабый первый экран.
|
|
70
|
-
- **P2 (полировка):** микродетали, motion, selection/scrollbar/focus, редакционные штрихи.
|
|
71
|
-
|
|
72
|
-
Каждый пункт: **что вижу (со скриншотом/координатой) → почему проблема → конкретное исправление (значения в px/rem/токенах) → приоритет.**
|
|
73
|
-
Не пиши «сделать современнее». Пиши «H1 48→72px, tracking −0.02em; убрать 3 карточки с иконками, заменить
|
|
74
|
-
редакционным нумерованным списком; радиус карточек 24→14px; добавить 48px воздуха до секции».
|
|
75
|
-
|
|
76
|
-
### 6. Правки и «после»
|
|
77
|
-
Внеси P0+P1, пересними скриншоты, сравни «до/после», проверь рубрику снова. Если правит другой исполнитель —
|
|
78
|
-
отдай ему список P0/P1 с точными значениями и критериями приёмки.
|
|
79
|
-
|
|
80
|
-
## Частые диагнозы и лекарства
|
|
81
|
-
|
|
82
|
-
| Симптом | Диагноз | Лечение |
|
|
10
|
+
> Строгий, но справедливый арт-директор: видишь то, что не видит автор, и превращаешь «нормально»
|
|
11
|
+
> в «дорого». Формула: что вижу → почему плохо → как исправить (в px/rem/токенах).
|
|
12
|
+
|
|
13
|
+
## 1. Контекст и «до»
|
|
14
|
+
Когда: оценка, второй взгляд перед сдачей, сравнение 2–3 вариантов.
|
|
15
|
+
Аудитория, задача экрана, что важнее (скорость/доверие/конверсия/плотность) — без этого «красиво» нет.
|
|
16
|
+
Собери «до»:
|
|
17
|
+
`node ../wow-design/assets/scripts/capture.mjs <file|url> --name before --out <dir>`
|
|
18
|
+
`node ../wow-design/assets/scripts/audit.mjs <file|url> --out <dir>`
|
|
19
|
+
Нужны 1440 light, 390, dark; смотри PNG через `read_image`.
|
|
20
|
+
|
|
21
|
+
## 2. Быстрые тесты (10 минут)
|
|
22
|
+
5 секунд · squint/blur 8px · grayscale · zoom 200% · 390/768 · Tab/Escape · dark · axe.
|
|
23
|
+
Что ловит и пороги — `references/quick-tests.md`.
|
|
24
|
+
|
|
25
|
+
## 3. Рубрика: 12 критериев, 1–5
|
|
26
|
+
К1 впечатление 15% · К2 иерархия 12% · К3 типографика 12% · К4 цвет/контраст 10% · К5 сетка 10% ·
|
|
27
|
+
К6 воздух 8% · К7 компоненты/состояния 8% · К8 консистентность 7% · К9 детали 6% · К10 адаптив 5% ·
|
|
28
|
+
К11 доступность 4% · К12 оригинальность 3%.
|
|
29
|
+
Балл = Σ(оценка×вес); 5 — Linear/Stripe/Apple, 3 — «нормально», 1 — сломано.
|
|
30
|
+
**Сдача: ≥4.4/5 и все ≥4.** Блокеры вне баллов: axe critical/serious, overflow 390, контраст <4.5,
|
|
31
|
+
сломанные состояния. Дескрипторы — `references/rubric-fast.md`.
|
|
32
|
+
|
|
33
|
+
## 4. Приоритеты и фиксы
|
|
34
|
+
P0: нечитаемый контраст, сломанный мобильный, нет иерархии, AI-slop, нерабочие состояния, axe.
|
|
35
|
+
P1: типографика, воздух, ритм, тени/радиусы, отступы, слабый первый экран.
|
|
36
|
+
P2: микродетали, motion, selection/scrollbar/focus.
|
|
37
|
+
Каждый пункт: что вижу (скрин/координата) → почему → фикс со значениями → приоритет.
|
|
38
|
+
Не «современнее», а «H1 48→72px; радиус 24→14; +48px воздуха». P0+P1 → переснять → «до/после».
|
|
39
|
+
Диагнозы — `references/diagnoses.md`.
|
|
40
|
+
|
|
41
|
+
## 5. Доступность
|
|
42
|
+
Контраст 4.5:1 (крупный/границы 3:1); Tab/focus-visible/Escape/focus trap; alt, `aria-label`, `<label>`;
|
|
43
|
+
не только цветом; reduced-motion; axe 0 critical/serious. Детали — `references/a11y.md`.
|
|
44
|
+
|
|
45
|
+
## 6. Нужно → файл → ≈токенов
|
|
46
|
+
| Нужно | Файл | ≈токенов |
|
|
83
47
|
|---|---|---|
|
|
84
|
-
|
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
89
|
-
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
- [ ]
|
|
96
|
-
- [ ]
|
|
97
|
-
- [ ]
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
## Формат отчёта
|
|
103
|
-
|
|
104
|
-
```
|
|
105
|
-
# Дизайн-ревью: <объект>
|
|
106
|
-
Контекст: <аудитория, задача>
|
|
107
|
-
Вердикт: SHIP / NEEDS WORK / REDESIGN
|
|
108
|
-
Оценка: <средний балл>/5 (ниже 4: <критерии>)
|
|
109
|
-
Первое впечатление (5 сек): <что понятно/непонятно>
|
|
110
|
-
## P0 — блокеры
|
|
111
|
-
1. <что вижу> → <почему> → <фикс> (скрин: path)
|
|
112
|
-
## P1 — важное
|
|
113
|
-
...
|
|
114
|
-
## P2 — полировка
|
|
115
|
-
...
|
|
116
|
-
Что уже хорошо: <3–5 пунктов — обязательно>
|
|
117
|
-
После правок: <новые скриншоты, повторная оценка>
|
|
118
|
-
```
|
|
48
|
+
| Рубрика, дескрипторы, подсчёт | `rubric-fast.md` | 2.2k |
|
|
49
|
+
| Тесты за 10 минут | `quick-tests.md` | 0.9k |
|
|
50
|
+
| Симптом → лечение | `diagnoses.md` | 1k |
|
|
51
|
+
| Доступность | `a11y.md` | 0.7k |
|
|
52
|
+
| Шаблон отчёта | `report-template.md` | 1k |
|
|
53
|
+
| Полная рубрика | `../wow-design/references/critique-rubric.md` | 7.4k |
|
|
54
|
+
|
|
55
|
+
## 7. Гейт
|
|
56
|
+
- [ ] Скриншоты 1440/768/390, light/dark.
|
|
57
|
+
- [ ] Рубрика ≥4.4, все ≥4.
|
|
58
|
+
- [ ] Axe 0 critical/serious.
|
|
59
|
+
- [ ] 390: overflow 0, тапы ≥44.
|
|
60
|
+
- [ ] P0 закрыты; есть «до/после».
|
|
61
|
+
- [ ] «Что уже хорошо» — 3–5 пунктов.
|
|
62
|
+
|
|
63
|
+
## 8. Отчёт
|
|
64
|
+
Вердикт SHIP/NEEDS WORK/REDESIGN · балл и минимум · впечатление за 5 сек · P0/P1/P2 с фиксами ·
|
|
65
|
+
что хорошо · проверено · после правок. Формат — `references/report-template.md`.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Доступность: обязательный чек-лист
|
|
2
|
+
|
|
3
|
+
> Часть навыка design-critique. ≈0.7k токенов. Читать, когда: проверяешь доступность и нужно
|
|
4
|
+
> не забыть ни один пункт; axe critical/serious — блокер сдачи.
|
|
5
|
+
|
|
6
|
+
- [ ] **Контраст:** текст ≥4.5:1; крупный (≥24px или ≥18.66px bold) ≥3:1; иконки и границы
|
|
7
|
+
контролов ≥3:1. `--faint` — только декор.
|
|
8
|
+
- [ ] **Клавиатура:** все интерактивные элементы доступны, `focus-visible` видим, порядок логичен.
|
|
9
|
+
Модалка держит фокус (focus trap), закрывается Escape, после закрытия фокус возвращается.
|
|
10
|
+
- [ ] **Семантика:** landmarks (`header/nav/main/footer`), один `h1`, порядок заголовков без
|
|
11
|
+
пропусков, `lang="ru"`, skip-link; кнопка — `<button>`, ссылка — `<a>`.
|
|
12
|
+
- [ ] **Изображения и иконки:** у изображений alt (декоративное — `alt=""`), у иконок-кнопок
|
|
13
|
+
`aria-label`, декоративные иконки — `aria-hidden="true"`.
|
|
14
|
+
- [ ] **Не только цветом:** статусы дублируются текстом/иконкой; проверить grayscale.
|
|
15
|
+
- [ ] **Формы:** `<label for>` у каждого поля, ошибки программно связаны (`aria-invalid`,
|
|
16
|
+
`aria-describedby`), placeholder не заменяет лейбл, `autocomplete` где уместно.
|
|
17
|
+
- [ ] **Motion:** `prefers-reduced-motion` уважается; контент виден без анимации.
|
|
18
|
+
- [ ] **axe:** 0 critical/serious; critical/serious — блокер, minor — в P1/P2.
|
|
19
|
+
|
|
20
|
+
## Частые провалы
|
|
21
|
+
- `outline:none` без замены — клавиатура «слепая».
|
|
22
|
+
- Серый текст 2.4–4.3:1 на фоне; акцентный мелкий текст <4.5:1.
|
|
23
|
+
- `<div onclick>` вместо кнопки; действия только по hover.
|
|
24
|
+
- Ошибка только цветом/тостом, без текста у поля.
|
|
25
|
+
- Модалка без `role="dialog"`, `aria-modal` и возврата фокуса.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Частые диагнозы и лечение
|
|
2
|
+
|
|
3
|
+
> Часть навыка design-critique. ≈1k токенов. Читать, когда: слышишь «выглядит дёшево/шаблонно/каша»
|
|
4
|
+
> и нужен точный диагноз с конкретными правками.
|
|
5
|
+
|
|
6
|
+
| Симптом | Диагноз | Лечение |
|
|
7
|
+
|---|---|---|
|
|
8
|
+
| «Выглядит как шаблон» | нет характера: дефолтные радиусы/цвета/шрифт | 1 signature-деталь, serif display, свой акцент, асимметрия |
|
|
9
|
+
| «Дёшево» | мало воздуха, всё в рамках, мелкие заголовки | ×1.5–2 к отступам секций, H1 больше на 30–60%, контрастнее иерархия |
|
|
10
|
+
| «Каша» | нет маршрута взгляда, всего поровну | 1 главный акцент на экран, приглушить второстепенное (muted), убрать лишние рамки |
|
|
11
|
+
| «Серо и скучно» | только нейтрали, нет тёплого/акцента | 1 акцент + тёплый полутон (медь/терракота), тонкие линии, зерно 2% |
|
|
12
|
+
| «Пёстро» | много акцентов и цветов | 60-30-10: нейтрали 60%, вторичный 30%, акцент 10% |
|
|
13
|
+
| «Тяжело читать» | длинная строка, мелкий текст, низкий контраст | 60–72ch, 16–18px body, 1.6 line-height, контраст ≥4.5 |
|
|
14
|
+
| «Дёргается» | анимации ради анимаций, разные easing | только hover/reveal, 160–260ms, один easing, reduced-motion |
|
|
15
|
+
| «Неудобно» | нет состояний, мелкие тапы, таблица ломается | states, 44px тапы, `.table-wrap`, явные CTA |
|
|
16
|
+
| «Мобильный ужас» | десктопный layout сжат | мобильная композиция: стек, порядок, скрыть декор, sticky CTA |
|
|
17
|
+
|
|
18
|
+
## Быстрая проверка «AI-slop» за 5 секунд
|
|
19
|
+
1. Фиолетово-синий градиент / цветные блобы? → нет.
|
|
20
|
+
2. Три одинаковые карточки с иконками в первом экране? → нет.
|
|
21
|
+
3. Заголовок 20–24px при body 16px? → нет иерархии.
|
|
22
|
+
4. Серый текст ниже 4.5:1 / подписи `#999`? → нечитаемо.
|
|
23
|
+
5. Отступы 13/17/22px? → несогласованно.
|
|
24
|
+
6. Эмодзи, иконки-ракеты, стекло, радиусы 24px у всего? → шаблон.
|
|
25
|
+
7. Lorem ipsum / «инновационные решения»? → нет контента.
|
|
26
|
+
8. Нет focus-visible / только hover? → недоступно.
|
|
27
|
+
|
|
28
|
+
Хотя бы один пункт «да» — P0-блокер: до рубрики 4.4 не допускается.
|
|
29
|
+
|
|
30
|
+
## Не переусердствуй
|
|
31
|
+
- **Стерильный минимализм** — тоже дёшево: без иерархии и характера белый экран не спасает.
|
|
32
|
+
- **Погоня за «дорого»** — всё serif и бежевое без акцента и цифр = «йога-студия», а не клиника.
|
|
33
|
+
- **Красота в ущерб функции** — контраст, кегль, состояния и доступность не приносятся в жертву.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Быстрые тесты за 10 минут
|
|
2
|
+
|
|
3
|
+
> Часть навыка design-critique. ≈0.9k токенов. Читать, когда: проводишь 10-минутную диагностику
|
|
4
|
+
> перед оценкой по рубрике и нужны пороги.
|
|
5
|
+
|
|
6
|
+
| Тест | Как | Что ловит | Порог |
|
|
7
|
+
|---|---|---|---|
|
|
8
|
+
| **5 секунд** | Открыть, отвернуться, посмотреть | Непонятно, что это и что делать | за 5 сек читаются смысл + главное действие |
|
|
9
|
+
| **Squint** | Прищуриться / blur 8px | Провалы иерархии, «серая каша» | главный акцент виден, блоки различимы |
|
|
10
|
+
| **Grayscale** | DevTools → Rendering → Grayscale / `filter:grayscale(1)` | Всё держится только на цвете | структура и статусы понятны без цвета |
|
|
11
|
+
| **200% zoom** | Ctrl+= до 200% | Мелкий текст, поломки сетки | текст читаем, ничего не обрезано |
|
|
12
|
+
| **390px** | DevTools device mode 390×844 | Overflow, мелкие тапы, обрезка | `scrollWidth ≤ innerWidth`, тапы ≥44px |
|
|
13
|
+
| **768px** | Планшет | Промежуточные поломки сетки | плитки не рвутся, меню работает |
|
|
14
|
+
| **Dark** | Переключить `data-theme=dark` | Инверсия, нечитаемый акцент, белые SVG | контраст AA, слои и тени читаются |
|
|
15
|
+
| **Keyboard** | Tab/Shift+Tab/Escape/Enter | Нет фокуса, ловушки, нерабочие действия | фокус виден везде, Escape закрывает модалку |
|
|
16
|
+
| **axe** | `node ~/.dsh/skills/wow-design/assets/scripts/audit.mjs <file>` | Контраст, alt, aria, landmarks | critical/serious = 0 |
|
|
17
|
+
| **Reduced motion** | DevTools → Emulate prefers-reduced-motion | Контент, скрытый анимацией | контент виден, анимаций нет |
|
|
18
|
+
|
|
19
|
+
## Как смотреть скриншоты
|
|
20
|
+
1. `read_image` каждого PNG — не «по памяти», а реально открыть.
|
|
21
|
+
2. Первый взгляд 5 секунд: что это, для кого, куда нажать; что цепляет первым.
|
|
22
|
+
3. Squint: видна ли иерархия или всё слилось.
|
|
23
|
+
4. Grayscale: остаётся ли структура без цвета.
|
|
24
|
+
5. 390: нет обрезаний, скролла вбок, мелких тапов, «сжатого десктопа».
|
|
25
|
+
6. Dark: фон/поверхности/контраст/акцент — отдельная палитра, не инверсия.
|
|
26
|
+
7. Сравни с референсом из брифа: тот же уровень «дорого»?
|
|
27
|
+
8. Выпиши 5–10 правок с числами, а не «сделать красивее».
|
|
28
|
+
|
|
29
|
+
## Мини-набор, если времени нет
|
|
30
|
+
5 секунд + 390px + контраст/axe + keyboard. Эти четыре теста ловят большинство P0.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Шаблон отчёта дизайн-ревью
|
|
2
|
+
|
|
3
|
+
> Часть навыка design-critique. ≈1k токенов. Читать, когда: оформляешь ревью и нужен формат
|
|
4
|
+
> с оценкой, вердиктом, P0/P1/P2 и «до/после».
|
|
5
|
+
|
|
6
|
+
```markdown
|
|
7
|
+
# Дизайн-ревью: <страница / компонент / продукт>
|
|
8
|
+
**Контекст:** <аудитория; задача экрана; что важнее — доверие / скорость / плотность / конверсия>
|
|
9
|
+
**Материалы:** <пути к скриншотам: 1440 light, 390, dark; ссылка/файл>
|
|
10
|
+
**Вердикт:** SHIP / NEEDS WORK / REDESIGN
|
|
11
|
+
|
|
12
|
+
## Оценка
|
|
13
|
+
| # | Критерий | Вес | Балл | Комментарий (1 строка) |
|
|
14
|
+
|---|---|---|---|---|
|
|
15
|
+
| К1 | Первое впечатление / концепция | 15% | 5 | ... |
|
|
16
|
+
| К2 | Иерархия и маршрут взгляда | 12% | 4 | ... |
|
|
17
|
+
| К3 | Типографика | 12% | 4 | ... |
|
|
18
|
+
| К4 | Цвет и контраст | 10% | 4 | ... |
|
|
19
|
+
| К5 | Сетка, выравнивание, ритм | 10% | 4 | ... |
|
|
20
|
+
| К6 | Воздух и плотность | 8% | 5 | ... |
|
|
21
|
+
| К7 | Компоненты и состояния | 8% | 4 | ... |
|
|
22
|
+
| К8 | Консистентность | 7% | 5 | ... |
|
|
23
|
+
| К9 | Детали и полировка | 6% | 4 | ... |
|
|
24
|
+
| К10 | Адаптив и мобильный | 5% | 4 | ... |
|
|
25
|
+
| К11 | Доступность | 4% | 4 | ... |
|
|
26
|
+
| К12 | Оригинальность vs польза | 3% | 4 | ... |
|
|
27
|
+
**Итог:** X.XX / 5 · минимум по критериям: Y · блокеры: нет/есть
|
|
28
|
+
|
|
29
|
+
## Первое впечатление (5 секунд)
|
|
30
|
+
<Что понятно сразу; что пришлось искать; какое чувство производит экран>
|
|
31
|
+
|
|
32
|
+
## P0 — блокеры (без них не сдаём)
|
|
33
|
+
1. **Что вижу:** <...> (скрин: <путь>)
|
|
34
|
+
**Почему:** <...>
|
|
35
|
+
**Фикс:** <селектор/значение/токен: H1 48→72px, contrast #999→--ink-2>
|
|
36
|
+
2. ...
|
|
37
|
+
|
|
38
|
+
## P1 — важное (до сдачи)
|
|
39
|
+
1. ...
|
|
40
|
+
|
|
41
|
+
## P2 — полировка (после сдачи, если есть время)
|
|
42
|
+
1. ...
|
|
43
|
+
|
|
44
|
+
## Что уже хорошо (обязательно 3–5 пунктов)
|
|
45
|
+
- ...
|
|
46
|
+
|
|
47
|
+
## Проверено
|
|
48
|
+
- [ ] 1440 desktop light · [ ] 390 mobile · [ ] 768 tablet · [ ] dark
|
|
49
|
+
- [ ] 5 сек / squint / grayscale / 200% zoom
|
|
50
|
+
- [ ] keyboard/focus · [ ] axe critical/serious = 0 · [ ] reduced-motion
|
|
51
|
+
- [ ] нет horizontal overflow на 390
|
|
52
|
+
|
|
53
|
+
## После правок
|
|
54
|
+
<новые скриншоты, повторный балл, что исправлено>
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Тон и формат
|
|
58
|
+
- Пиши в терминах экрана, а не кода: «три равных акцента», а не «bad hierarchy».
|
|
59
|
+
- Всегда давай значение: «H1 до 72–88px», «радиус 24→14px», «строка 110→66ch».
|
|
60
|
+
- Не больше 5–7 правок за итерацию.
|
|
61
|
+
- Оценивай результат, а не намерение.
|
|
62
|
+
- «Что уже хорошо» — обязательно 3–5 пунктов, иначе ревью не принимается.
|
|
63
|
+
- Если правит другой исполнитель — отдай P0/P1 с точными значениями и критериями приёмки.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Рубрика-инструмент: 12 критериев, дескрипторы, подсчёт
|
|
2
|
+
|
|
3
|
+
> Часть навыка design-critique. ≈2.2k токенов. Читать, когда: оцениваешь UI по 12 критериям, нужны
|
|
4
|
+
> дескрипторы уровней 5/3/1, формула балла, блокеры и правила критика.
|
|
5
|
+
|
|
6
|
+
## Правила критика
|
|
7
|
+
1. **Контекст раньше красоты:** аудитория, задача экрана, приоритет (доверие/скорость/плотность).
|
|
8
|
+
2. **Каждое замечание — с доказательством:** что вижу (скрин/координата) → почему → фикс в px/rem/токенах.
|
|
9
|
+
3. **Сначала блокеры:** P0 до P1/P2, даже если P2 «обиднее».
|
|
10
|
+
4. **Хвалить обязательно:** 3–5 пунктов, что уже работает.
|
|
11
|
+
5. **5–7 правок за итерацию**, не больше: иначе исполнитель распыляется.
|
|
12
|
+
6. **Оценивай результат, а не намерение.** «Задумано красиво» не считается.
|
|
13
|
+
7. **Сомневаешься 4/3 — ставь 3; 4/5 — ставь 4.** 5 — только уровень Linear/Stripe/Apple.
|
|
14
|
+
8. Каждая итерация заканчивается скриншотом; без «до/после» критика не принимается.
|
|
15
|
+
|
|
16
|
+
Шкала: **5** — уровень Linear/Stripe/Apple; **4** — крепкий профессиональный; **3** — «нормально,
|
|
17
|
+
без характера»; **2** — заметно дёшево; **1** — сломано.
|
|
18
|
+
|
|
19
|
+
## Веса и что проверяет
|
|
20
|
+
| # | Критерий | Вес | Что проверяет |
|
|
21
|
+
|---|---|---|---|
|
|
22
|
+
| К1 | Первое впечатление / концепция | 15% | понятно ли за 5 секунд, есть ли идея и характер |
|
|
23
|
+
| К2 | Иерархия и маршрут взгляда | 12% | одна главная точка, 3 уровня, путь к CTA |
|
|
24
|
+
| К3 | Типографика | 12% | шкала, строка 60–72ch, интерлиньяж, трекинг, кириллица |
|
|
25
|
+
| К4 | Цвет и контраст | 10% | 60-30-10, один акцент, AA, семантика статусов |
|
|
26
|
+
| К5 | Сетка, выравнивание, ритм | 10% | 12 колонок, единые отступы, «ничего не гуляет» |
|
|
27
|
+
| К6 | Воздух и плотность | 8% | дышит ли страница, группировка, нет «каши» |
|
|
28
|
+
| К7 | Компоненты и состояния | 8% | все состояния, формы, таблицы, модалки, empty |
|
|
29
|
+
| К8 | Консистентность | 7% | один язык на экранах и в обеих темах |
|
|
30
|
+
| К9 | Детали и полировка | 6% | оптика, иконки, цифры, фокус, скроллбар |
|
|
31
|
+
| К10 | Адаптив и мобильный | 5% | 390/768/1440, overflow, тач-цели, композиция |
|
|
32
|
+
| К11 | Доступность | 4% | контраст, клавиатура, семантика, alt/aria, motion |
|
|
33
|
+
| К12 | Оригинальность vs польза | 3% | не шаблон, но и не арт ради арта |
|
|
34
|
+
|
|
35
|
+
## Дескрипторы: 5 / 3 / 1 и типичный провал
|
|
36
|
+
| # | 5 | 3 | 1 | Провал |
|
|
37
|
+
|---|---|---|---|---|
|
|
38
|
+
| К1 | смысл и характер сразу, signature-деталь | понятно, но нейтрально/шаблонно, фокус размыт | хаос или пустота, доверия нет | центрированный hero с общими словами и 3 равными CTA |
|
|
39
|
+
| К2 | H1 → lead → CTA, один акцент | много равных элементов, маршрут ищешь | иерархии нет, «серая каша» | два primary-CTA, акцентные заголовки секций |
|
|
40
|
+
| К3 | ясная шкала, 60–72ch, безупречная кириллица | нерегулярная шкала, длинная строка | 5 размеров, 4 жирности, капс в абзацах | один гротеск на всё, одинаковые размеры |
|
|
41
|
+
| К4 | спокойная палитра, акцент ≤10%, AA, ч/б держит структуру | 2–3 акцента, спорный контраст | кислотная палитра, текст нечитаем | `#999` на белом, 4 акцентных цвета |
|
|
42
|
+
| К5 | одна сетка, ровные края, предсказуемый ритм | края гуляют, отступы «на глаз» | всё рассыпано, нет осей | три карточки разной высоты, «плавающие» CTA |
|
|
43
|
+
| К6 | воздух идеален, группы читаются | местами прилипло/пусто | контент свален в кучу | 24px между секциями, 0 внутри карточек |
|
|
44
|
+
| К7 | все состояния, живые формы, empty/loading | базовые есть, focus/disabled спорные | нет подписей, div-кнопки, формы без валидации | красивые кнопки без состояний, empty «Нет данных» |
|
|
45
|
+
| К8 | один визуальный язык, темы без сюрпризов | разные радиусы/тени/иконки от экрана к экрану | три набора кнопок и два шрифта | showcase и dashboard как разные продукты |
|
|
46
|
+
| К9 | уровень Linear/Stripe, ничего не обрезано | недокручено: оптика, отступы, сырые детали | небрежно, сломанные иконки | иконка ниже базовой линии во всех кнопках |
|
|
47
|
+
| К10 | 390 читается, тапы крупные, таблица внутри | сжатый десктоп, мелкий текст, узкие отступы | на 390 неюзабельно | overflow из-за таблицы и 12px текст |
|
|
48
|
+
| К11 | AA, видимый фокус, семантика, reduced-motion | фокус частичный, подписи слабые, axe minor | axe critical, недоступно с клавиатуры | `outline:none` и серый текст 2.4:1 |
|
|
49
|
+
| К12 | запоминается одной деталью, но очевиден | «видел у 20 компаний», детали нет | копия или дизайн мешает пользоваться | необычный hero, скрывающий, чем занимается клиника |
|
|
50
|
+
|
|
51
|
+
## Приоритеты
|
|
52
|
+
- **P0 (блокеры):** нечитаемый контраст, сломанный мобильный, нет иерархии, AI-slop, нерабочие
|
|
53
|
+
состояния, критичные axe-нарушения. Без них нельзя сдавать.
|
|
54
|
+
- **P1 (важное):** типографика, воздух, ритм, тени/радиусы, неконсистентные отступы, слабый первый экран.
|
|
55
|
+
- **P2 (полировка):** микродетали, motion, selection/scrollbar/focus, редакционные штрихи.
|
|
56
|
+
|
|
57
|
+
## Подсчёт и пороги
|
|
58
|
+
```
|
|
59
|
+
Итог = Σ(оценка_i × вес_i), i = 1..12
|
|
60
|
+
Сдача: Итог ≥ 4.40 И min(оценка_i) ≥ 4 И нет P0-блокеров
|
|
61
|
+
```
|
|
62
|
+
Итог округляй до 2 знаков. Пример: 5,4,5,4,4,5,4,5,4,4,4,3 → 4.39, но К12=3 → **не сдано**
|
|
63
|
+
(ни один критерий <4).
|
|
64
|
+
4.44 без блокеров — сдано. 4.6 с axe critical — **не сдано**.
|
|
65
|
+
|
|
66
|
+
**Блокеры вне баллов:** axe critical/serious > 0; горизонтальный overflow на 390; смысловой текст
|
|
67
|
+
ниже 4.5:1; сломанные состояния (кнопка без фокуса, форма без ошибок); битые шрифты/изображения,
|
|
68
|
+
ошибки в консоли на ключевых страницах.
|
|
69
|
+
|
|
70
|
+
## Вердикт
|
|
71
|
+
- **SHIP** — гейт пройден: ≥4.4, все ≥4, блокеров нет.
|
|
72
|
+
- **NEEDS WORK** — есть P0/P1 или балл ниже порога, но основа рабочая.
|
|
73
|
+
- **REDESIGN** — несколько P0 в структуре/иерархии: нужна переработка, а не полировка.
|
|
@@ -1,41 +1,48 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: dev-workflow
|
|
3
|
-
description: "Универсальный процесс
|
|
4
|
-
whenToUse: "
|
|
3
|
+
description: "Универсальный процесс разработки: разведка, план, безопасные правки, проверки, ревью, релиз, память и Definition of Done."
|
|
4
|
+
whenToUse: "В начале любой задачи по коду, данным, конфигам или релизу: какой порядок шагов и какие проверки нельзя забыть."
|
|
5
5
|
user-invocable: true
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# Универсальный процесс разработки
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
10
|
+
> ≈1 450 токенов. Ядро процесса для любого проекта; этапы и расширенный DoD — §2.
|
|
11
|
+
|
|
12
|
+
## 0 Когда применять
|
|
13
|
+
- Любая задача по коду, данным, конфигам, инфраструктуре или релизу — даже «мелкая правка».
|
|
14
|
+
- Сначала триаж навыков (`skills-router`), затем шаги по §1; проектные скиллы уточняют этот.
|
|
15
|
+
- Исследование или текст без правок — профильный скилл и его гейты.
|
|
16
|
+
|
|
17
|
+
## 1 Главное
|
|
18
|
+
|
|
19
|
+
**Шаг 0 — триаж (обязателен).** `skills-router`: тип работы → все применимые скиллы — до разведки и правок.
|
|
20
|
+
|
|
21
|
+
**Этапы — всегда в этом порядке:**
|
|
22
|
+
1. **Разведка:** память проекта, затронутые файлы/маршруты/модели, риски, критерии приёмки.
|
|
23
|
+
2. **План:** шаги и способ проверки; крупная задача — todo и договорённость с командой.
|
|
24
|
+
3. **Бэкап/безопасность:** git или копия файлов, для БД — дамп; заранее решить, как откатывать.
|
|
25
|
+
4. **Реализация:** минимальные локальные правки, чужие зоны не трогать, держать инварианты.
|
|
26
|
+
5. **Проверки:** линтер, статанализ, тесты (unit/feature), E2E/UI и визуальная проверка при задетом интерфейсе.
|
|
27
|
+
6. **Ревью:** `code-review-checklist` — данные, доступ, безопасность, тесты, стиль, дифф.
|
|
28
|
+
7. **Документация/версия:** документация и CHANGELOG, версия — по правилам проекта.
|
|
29
|
+
8. **Релиз:** `release-and-deploy` — артефакт → проверка → выкатка → smoke → откат.
|
|
30
|
+
9. **Память:** итог (что сделано, как проверено, риски) — в память проекта.
|
|
31
|
+
|
|
32
|
+
**Принципы.** Сначала понять — потом менять; одна задача — один связный дифф; чужие зоны не ломать; необратимое (удаление данных, деплой, публикация) — только с явного разрешения; застрял — `debugging-playbook`; ключевые факты — в память, длинные сессии — компактить.
|
|
33
|
+
|
|
34
|
+
## 2 Куда грузить дальше
|
|
35
|
+
| Когда нужно | Файл | ≈токенов |
|
|
36
|
+
|---|---|---|
|
|
37
|
+
| Этапы: входы, артефакты, стоп-условия, ошибки | references/stages.md | ≈2 000 |
|
|
38
|
+
| Полный DoD, гейты по типам работ, шаблон отчёта | references/definition-of-done.md | ≈1 000 |
|
|
39
|
+
| Память, контекст, границы, необратимые действия | references/memory-and-boundaries.md | ≈950 |
|
|
40
|
+
|
|
41
|
+
## 3 Гейт перед сдачей
|
|
42
|
+
- [ ] Скиллы загружены и использованы; гейты перечислены в отчёте.
|
|
43
|
+
- [ ] Критерии приёмки выполнены; проверено вживую, не только тестами.
|
|
44
|
+
- [ ] Тесты: существующие зелёные, новые падают без правки.
|
|
45
|
+
- [ ] Линтер и статанализ без новых ошибок; в диффе нет секретов, отладки и случайных файлов.
|
|
46
|
+
- [ ] UI — скриншоты «до/после», 1440/390, light/dark.
|
|
47
|
+
- [ ] Данные защищены (бэкап, аддитивные миграции), план отката есть.
|
|
48
|
+
- [ ] Документация, версия и память проекта обновлены.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Definition of Done и шаблон отчёта
|
|
2
|
+
|
|
3
|
+
> Часть навыка dev-workflow. ≈1 000 токенов. Читать, когда: закрываешь задачу, готовишь отчёт или принимаешь чужую работу.
|
|
4
|
+
|
|
5
|
+
## 1. Полный чек-лист
|
|
6
|
+
- [ ] Применимые скиллы загружены на старте и реально использованы; гейты перечислены в отчёте.
|
|
7
|
+
- [ ] Критерии приёмки выполнены и проверены вживую.
|
|
8
|
+
- [ ] Тесты: существующие зелёные, новые добавлены и падают без правки.
|
|
9
|
+
- [ ] Линтер и статанализ без новых ошибок.
|
|
10
|
+
- [ ] UI (если задет): скриншоты «до/после», 1440/390, light/dark; axe critical/serious = 0.
|
|
11
|
+
- [ ] Нет секретов, отладочного кода и случайных файлов в диффе.
|
|
12
|
+
- [ ] Данные защищены: бэкап, аддитивные миграции, известный откат.
|
|
13
|
+
- [ ] Документация и CHANGELOG обновлены.
|
|
14
|
+
- [ ] Версия поднята по правилам проекта.
|
|
15
|
+
- [ ] Память проекта обновлена: итог, риски, следующие шаги.
|
|
16
|
+
- [ ] Необратимые и внешние действия согласованы.
|
|
17
|
+
|
|
18
|
+
## 2. Гейты по типу работы
|
|
19
|
+
|
|
20
|
+
| Тип | Обязательные гейты |
|
|
21
|
+
|---|---|
|
|
22
|
+
| Код/бэкенд | тесты, линтер, статанализ, ревью, версия |
|
|
23
|
+
| UI/вёрстка | скриншоты 1440/768/390, обе темы, axe, адаптив |
|
|
24
|
+
| БД/миграции | бэкап до, проверка на копии, откат, инварианты |
|
|
25
|
+
| Релиз/деплой | артефакт, checksums, smoke, план отката |
|
|
26
|
+
| SEO/контент | мета, структура, schema, ссылки, проверка фактов |
|
|
27
|
+
| Плагин/инфраструктура | изоляция, конфиг, совместимость, откат |
|
|
28
|
+
|
|
29
|
+
## 3. Шаблон отчёта
|
|
30
|
+
```
|
|
31
|
+
1. Что сделано — 2–5 пунктов, без пересказа кода.
|
|
32
|
+
2. Как проверено — команды, тесты, скриншоты, ручные сценарии.
|
|
33
|
+
3. Гейты — какие скиллы и проверки пройдены, что не применимо и почему.
|
|
34
|
+
4. Риски и ограничения — честно, включая непроверенное.
|
|
35
|
+
5. Дальше — что осталось и рекомендации.
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## 4. Признаки, что сдавать рано
|
|
39
|
+
- «Работает у меня» без воспроизводимой проверки.
|
|
40
|
+
- Скриншоты только desktop и только светлой темы.
|
|
41
|
+
- Тесты не запускались или упали, а «потом починим».
|
|
42
|
+
- В диффе секреты, дампы, `.env`, случайные файлы.
|
|
43
|
+
- Не описан путь отката для миграции или деплоя.
|
|
44
|
+
- В отчёте нет гейтов — непонятно, что именно проверено.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Память, границы и необратимые действия
|
|
2
|
+
|
|
3
|
+
> Часть навыка dev-workflow. ≈950 токенов. Читать, когда: работаешь в чужом или большом проекте, нужно сохранить контекст или принять рискованное решение.
|
|
4
|
+
|
|
5
|
+
## 1. Память проекта
|
|
6
|
+
- В начале: прочитать досье и журнал проекта; не угадывать архитектуру по именам файлов.
|
|
7
|
+
- В конце: записать итог — что сделано, как проверено, риски, следующий шаг, нужные команды.
|
|
8
|
+
- Писать факты, а не эмоции: решения, ловушки, инварианты, пути к артефактам.
|
|
9
|
+
- Секреты, пароли, токены и персональные данные в память не писать.
|
|
10
|
+
- Не дублировать одно и то же: обновлять существующую секцию, а не плодить копии.
|
|
11
|
+
|
|
12
|
+
## 2. Контекст
|
|
13
|
+
- Длинная сессия → компактить; ключевые факты — в память до сжатия.
|
|
14
|
+
- Читать только нужные фрагменты больших файлов, не грузить всё «на всякий случай».
|
|
15
|
+
- Ссылки на артефакты (скриншоты, отчёты, логи) — вместо их содержимого в чате.
|
|
16
|
+
|
|
17
|
+
## 3. Границы
|
|
18
|
+
- Не менять чужие зоны без причины; если правка неизбежна — сказать об этом в отчёте.
|
|
19
|
+
- Соблюдать соглашения проекта (структура, стиль, команды), даже если «так красивее».
|
|
20
|
+
- Одна задача — один связный дифф; не смешивать рефакторинг и фичу.
|
|
21
|
+
- Проектные скиллы уточняют универсальные; при конфликте — проектный, но не в ущерб безопасности и данным.
|
|
22
|
+
|
|
23
|
+
## 4. Необратимые действия
|
|
24
|
+
- Удаление данных, `migrate:fresh/reset`, `db:wipe`, `TRUNCATE`, деплой, публикация, рассылка — только с явного разрешения.
|
|
25
|
+
- Перед действием: бэкап, проверка окружения (прод или тест), понятный откат.
|
|
26
|
+
- Сомневаешься — остановись и спроси; «потом восстановим» — не план.
|
|
27
|
+
|
|
28
|
+
## 5. Команда
|
|
29
|
+
- Договариваться о границах файлов и модулей до правок.
|
|
30
|
+
- В отчёте — что изменилось и что проверять коллеге.
|
|
31
|
+
- Не менять молча общие конфиги, CI и зависимости.
|