code-ai-installer 1.4.0 → 1.5.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/AGENTS.md CHANGED
@@ -49,6 +49,7 @@
49
49
  - $system_design_checklist
50
50
  - $architecture_doc
51
51
  - $architecture_compliance_review
52
+ - $design_patterns_reference
52
53
  - $adr_log
53
54
  - $api_contracts
54
55
  - $data_model
@@ -34,6 +34,59 @@
34
34
 
35
35
  ---
36
36
 
37
+ ## Design Patterns & Principles (must)
38
+ Архитектор обязан учитывать эти паттерны при проектировании и фиксировать выбранные в ADR.
39
+
40
+ > Полные DO/DON'T примеры с псевдокодом → **$design_patterns_reference**
41
+
42
+ ### SOLID
43
+ | Принцип | Суть |
44
+ |---------|------|
45
+ | **S** — Single Responsibility | Класс/модуль — одна причина для изменения |
46
+ | **O** — Open/Closed | Открыт для расширения, закрыт для модификации |
47
+ | **L** — Liskov Substitution | Подтипы подставляются без поломки |
48
+ | **I** — Interface Segregation | Много маленьких интерфейсов > одного толстого |
49
+ | **D** — Dependency Inversion | Зависимость от абстракций, не от конкретики |
50
+
51
+ ### Общие принципы
52
+ - **DRY** — Don't Repeat Yourself (про знание, не про код)
53
+ - **KISS** — Keep It Simple, Stupid
54
+ - **YAGNI** — You Aren't Gonna Need It
55
+ - **Composition over Inheritance** — композиция вместо глубоких иерархий
56
+ - **Fail Fast** — проверяй входы сразу, на границе
57
+ - **Separation of Concerns** — разделение ответственностей по слоям
58
+
59
+ ### GoF Patterns (ключевые)
60
+ | Паттерн | Когда |
61
+ |---------|-------|
62
+ | Strategy | Несколько вариантов алгоритма, выбор в runtime |
63
+ | Observer | Один источник событий, много потребителей |
64
+ | Factory Method | Тип объекта определяется в runtime |
65
+ | Adapter | Интеграция с чужим API/библиотекой |
66
+ | Facade | Простой интерфейс к сложной подсистеме |
67
+ | Decorator | Комбинации поведений без взрыва подклассов |
68
+ | Command | Undo/redo, очереди, отложенное выполнение |
69
+ | State | Множество состояний с разным поведением |
70
+ | Template Method | Одинаковый каркас, разные детали |
71
+
72
+ ### Архитектурные паттерны
73
+ | Паттерн | Когда |
74
+ |---------|-------|
75
+ | Repository | Изоляция доступа к данным от бизнес-логики |
76
+ | Service Layer | Бизнес-логика не в контроллерах |
77
+ | Dependency Injection | Слабая связь, тестируемость |
78
+ | Event-Driven | Реакция на события без жёсткой связи |
79
+ | CQRS | Разные модели чтения и записи |
80
+
81
+ ### Микросервисные паттерны
82
+ | Паттерн | Когда |
83
+ |---------|-------|
84
+ | Saga | Распределённые транзакции через компенсации |
85
+ | Circuit Breaker | Защита от каскадных сбоев внешних сервисов |
86
+ | Mediator | Центральный координатор взаимодействий |
87
+
88
+ ---
89
+
37
90
  ## Architecture Review Process
38
91
  1. **Current State Analysis** (если есть код): patterns, conventions, tech debt, scaling limits
39
92
  2. **Requirements Gathering**: functional + non-functional + integrations + data flows
@@ -223,6 +276,8 @@
223
276
  - $current_state_analysis
224
277
  - $system_design_checklist
225
278
  - $architecture_doc
279
+ - $architecture_compliance_review
280
+ - $design_patterns_reference
226
281
  - $adr_log
227
282
  - $api_contracts
228
283
  - $data_model