@futdevpro/fsm-dynamo 1.15.2 → 1.15.4

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.
Files changed (89) hide show
  1. package/.cursor/rules/__main.mdc +3 -1
  2. package/.cursor/rules/default-command.mdc +324 -88
  3. package/build/_models/control-models/data-property-params.control-model.js +2 -2
  4. package/build/_models/control-models/data-property-params.control-model.js.map +1 -1
  5. package/build/_modules/ai/_collections/ai-model-ref.util.d.ts +43 -0
  6. package/build/_modules/ai/_collections/ai-model-ref.util.d.ts.map +1 -0
  7. package/build/_modules/ai/_collections/ai-model-ref.util.js +75 -0
  8. package/build/_modules/ai/_collections/ai-model-ref.util.js.map +1 -0
  9. package/build/_modules/ai/_enums/ai-provider.enum.d.ts +2 -1
  10. package/build/_modules/ai/_enums/ai-provider.enum.d.ts.map +1 -1
  11. package/build/_modules/ai/_enums/ai-provider.enum.js +1 -1
  12. package/build/_modules/ai/_enums/ai-provider.enum.js.map +1 -1
  13. package/build/_modules/ai/_models/ai-user-provider-config.control-model.d.ts +22 -0
  14. package/build/_modules/ai/_models/ai-user-provider-config.control-model.d.ts.map +1 -0
  15. package/build/_modules/ai/_models/ai-user-provider-config.control-model.js +29 -0
  16. package/build/_modules/ai/_models/ai-user-provider-config.control-model.js.map +1 -0
  17. package/build/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.d.ts +11 -0
  18. package/build/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.d.ts.map +1 -0
  19. package/build/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.js +20 -0
  20. package/build/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.js.map +1 -0
  21. package/build/_modules/ai/_modules/anthropic/index.d.ts +1 -0
  22. package/build/_modules/ai/_modules/anthropic/index.d.ts.map +1 -1
  23. package/build/_modules/ai/_modules/anthropic/index.js +1 -0
  24. package/build/_modules/ai/_modules/anthropic/index.js.map +1 -1
  25. package/build/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.d.ts +7 -0
  26. package/build/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.d.ts.map +1 -0
  27. package/build/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.js +11 -0
  28. package/build/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.js.map +1 -0
  29. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.d.ts +10 -0
  30. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.d.ts.map +1 -0
  31. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.js +19 -0
  32. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.js.map +1 -0
  33. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.d.ts +12 -0
  34. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.d.ts.map +1 -0
  35. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.js +3 -0
  36. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.js.map +1 -0
  37. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.d.ts +14 -0
  38. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.d.ts.map +1 -0
  39. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.js +22 -0
  40. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.js.map +1 -0
  41. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.d.ts +11 -0
  42. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.d.ts.map +1 -0
  43. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.js +20 -0
  44. package/build/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.js.map +1 -0
  45. package/build/_modules/ai/_modules/fdp-ai/index.d.ts +6 -0
  46. package/build/_modules/ai/_modules/fdp-ai/index.d.ts.map +1 -0
  47. package/build/_modules/ai/_modules/fdp-ai/index.js +11 -0
  48. package/build/_modules/ai/_modules/fdp-ai/index.js.map +1 -0
  49. package/build/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.d.ts +11 -0
  50. package/build/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.d.ts.map +1 -0
  51. package/build/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.js +20 -0
  52. package/build/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.js.map +1 -0
  53. package/build/_modules/ai/_modules/google-ai/index.d.ts +1 -0
  54. package/build/_modules/ai/_modules/google-ai/index.d.ts.map +1 -1
  55. package/build/_modules/ai/_modules/google-ai/index.js +1 -0
  56. package/build/_modules/ai/_modules/google-ai/index.js.map +1 -1
  57. package/build/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.d.ts +12 -0
  58. package/build/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.d.ts.map +1 -0
  59. package/build/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.js +21 -0
  60. package/build/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.js.map +1 -0
  61. package/build/_modules/ai/_modules/open-ai/index.d.ts +1 -0
  62. package/build/_modules/ai/_modules/open-ai/index.d.ts.map +1 -1
  63. package/build/_modules/ai/_modules/open-ai/index.js +1 -0
  64. package/build/_modules/ai/_modules/open-ai/index.js.map +1 -1
  65. package/build/_modules/ai/index.d.ts +2 -0
  66. package/build/_modules/ai/index.d.ts.map +1 -1
  67. package/build/_modules/ai/index.js +3 -0
  68. package/build/_modules/ai/index.js.map +1 -1
  69. package/futdevpro-fsm-dynamo-01.15.4.tgz +0 -0
  70. package/package.json +9 -2
  71. package/src/_models/control-models/data-property-params.control-model.spec.ts +2 -2
  72. package/src/_models/control-models/data-property-params.control-model.ts +2 -2
  73. package/src/_modules/ai/_collections/ai-model-ref.util.ts +88 -0
  74. package/src/_modules/ai/_enums/ai-provider.enum.ts +1 -1
  75. package/src/_modules/ai/_models/ai-user-provider-config.control-model.ts +29 -0
  76. package/src/_modules/ai/_modules/anthropic/_models/aai-user-provider-config.control-model.ts +20 -0
  77. package/src/_modules/ai/_modules/anthropic/index.ts +1 -0
  78. package/src/_modules/ai/_modules/fdp-ai/_enums/fdpai-model.enum.ts +6 -0
  79. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-call-settings.control-model.ts +19 -0
  80. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-client-options.interface.ts +11 -0
  81. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-settings.control-model.ts +24 -0
  82. package/src/_modules/ai/_modules/fdp-ai/_models/fdpai-user-provider-config.control-model.ts +20 -0
  83. package/src/_modules/ai/_modules/fdp-ai/index.ts +8 -0
  84. package/src/_modules/ai/_modules/google-ai/_models/gai-user-provider-config.control-model.ts +20 -0
  85. package/src/_modules/ai/_modules/google-ai/index.ts +1 -0
  86. package/src/_modules/ai/_modules/open-ai/_models/oai-user-provider-config.control-model.ts +21 -0
  87. package/src/_modules/ai/_modules/open-ai/index.ts +1 -0
  88. package/src/_modules/ai/index.ts +4 -0
  89. package/futdevpro-fsm-dynamo-01.15.2.tgz +0 -0
@@ -15,6 +15,7 @@ Always follow patterns of existing projects! (tech stack, naming, codes, everyth
15
15
  We need no quick fixes only the best solution possible using Dy*
16
16
  Always look around for existing solutions before implementing new one
17
17
  Always look for samples in codebase
18
+ Always maintain a "Single Source of Truth" for data management: each data domain should have ONE dedicated data-service that owns and manages that data. All components, services, and modules must consume data through these centralized data-services instead of duplicating queries, fetches, or data transformations. Never create parallel data access paths — if a data-service already handles a resource, extend it rather than creating a new one.
18
19
  Always implement fixes and features that are highlighted or requested by the user
19
20
  Always use existing scripts and architecture.
20
21
  Never try to modify configs if the user didn't asked specially to do so.
@@ -51,7 +52,8 @@ my common requirements:
51
52
  - use "string[]" instead of "Array<string>"
52
53
  - use shortest, simplest codes eg: "if (inputResponse?.missingInformation?.flag) {" instead of "if (inputResponse && inputResponse.missingInformation && inputResponse.missingInformation.flag === true) {", or "if (!count) {" instead of "if (count === 0) {"
53
54
  - never create new index files for modules
54
- - put main methods in try catch (eg methods that are called from controllers)
55
+ - put main methods in try catch (eg methods that are called from controllers)
56
+ - prefer async and promise-based solutions over Observables and subscribe; use async/await and Promise where it fits, avoid RxJS subscribe when a one-shot async flow is enough.
55
57
  - No backward compatibility. No legacy support. Refactor all affected code. Do not keep migration layers, shims, or transitional code. Breaking changes allowed.
56
58
 
57
59
  - avoid using import() or require() methods, put the imports at the top of the file
@@ -3,100 +3,310 @@ description: When creating plans, reviews, finishing implementations, updating s
3
3
  alwaysApply: false
4
4
  ---
5
5
  ROLE
6
- Te egy senior AI software architect + lead developer vagy, aki Cursor/AI-agent környezetben dolgozik. A célod egy végrehajtható, determinisztikus fejlesztési terv előállítása, amelyet egy AI (Cursor) lépésről lépésre, biztonságosan és hatékonyan végre tud hajtani Vibe Coding módban.
6
+ Te egy senior AI software architect + lead developer vagy, aki Cursor/AI-agent környezetben dolgozik.
7
+ A célod egy végrehajtható, determinisztikus fejlesztési terv előállítása, amelyet egy AI (Cursor)
8
+ lépésről lépésre, biztonságosan és hatékonyan végre tud hajtani Vibe Coding módban.
7
9
 
8
10
  INPUT
9
11
  – Projekt specifikáció (funkcionális + technikai)
10
12
  – Meglévő, már elkészült komponensek / fájlok / modulok (ha vannak)
11
13
 
14
+ ---
15
+
16
+ PROJEKT STRUKTÚRA (KÖTELEZŐ MAPPARENDSZER)
17
+
18
+ Minden projekt a következő struktúrát kell, hogy kövesse:
19
+
20
+ ```
21
+ project-root/
22
+ ├── __documentations/
23
+ │ ├── dev/ # session-önkénti report-ok
24
+ │ │ └── {verzió}-{Pascal_Snake_Case}.doc.md
25
+ │ ├── plans/ # fejlesztési tervek
26
+ │ │ └── {sorszam}-{cel}.plan.md
27
+ │ ├── CHANGELOG.md # completed item-ek archívuma (TODO/BUG → rövidített entry)
28
+ │ ├── BUGS.md # aktív bug tracking (BACKLOG [BUG] promote → ide)
29
+ │ ├── ARCHITECTURE.md # modulok, adatáramlás, felelősségek
30
+ │ ├── DECISIONS.md # döntésnapló: mi, miért, alternatívák
31
+ │ ├── INTEGRITY.md # integritás-ellenőrzési checklist-ek
32
+ │ └── BUSINESS_QUESTIONS.md # DEC kódokhoz kapcsolt üzleti kérdések
33
+
34
+ ├── __specifications/
35
+ │ ├── main.md # fő specifikáció (funkcionális + technikai áttekintés)
36
+ │ ├── technical-specifications.md # technikai részletek, fejlesztési szabályok
37
+ │ ├── TODO.md # aktív, végrehajtandó feladatok (lásd TODO FORMÁTUM)
38
+ │ ├── BACKLOG.md # intake: ötletek, igények, hibák (lásd BACKLOG FORMÁTUM)
39
+ │ └── ... projekt spec fájlok # feature-specifikus specifikációk (pl. agent-system.md)
40
+
41
+ └── ... projekt fájlok
42
+ ```
43
+
44
+ **Szabályok:**
45
+ – `__documentations/` → belső fejlesztési dokumentáció, tervek, session report-ok
46
+ – `__specifications/` → specifikációk, TODO, BACKLOG, feature leírások
47
+ – A `_specifications/` mappát SOHA nem módosítjuk kérdés nélkül (kivéve TODO/BACKLOG státusz update)
48
+ – Ha a mappák nem léteznek, létre kell hozni őket
49
+
50
+ ---
51
+
52
+ TODO.md FORMÁTUM (az `__specifications/TODO.md` fájlban)
53
+
54
+ Aktív, végrehajtandó feladatokat tartalmaz. Script-kompatibilis, parser-ek közvetlenül olvasják.
55
+
56
+ Státusz emoji-k:
57
+ | Emoji | Kulcs | Jelentés |
58
+ |-------|---------------|--------------------------------------------------|
59
+ | ❌ | open | Nem elkezdett feladat |
60
+ | ⏳ | pending | Sorban áll, dependency-re vagy előfeltételre vár |
61
+ | 🔄 | in-progress | Jelenleg folyamatban van |
62
+ | 🔍 | review | Implementálva, review vagy teszt szükséges |
63
+ | ✅ | done | Kész, ellenőrizve, lezárva |
64
+ | ⚠️ | blocked | Blokkolva – hiányzó info, dependency, vagy hiba |
65
+ | ❓ | unknown | Ismeretlen státusz (default) |
66
+
67
+ Entry formátum:
68
+ ```
69
+ - EMOJI (TD-YYYYMMDD-###) Rövid, leíró cím
70
+ priority: <low|medium|high|urgent>
71
+ area: <category/sub-area>
72
+ source: <user|system|assistant|spec-file.md>
73
+ req: REQ-XXX-YYY, REQ-XXX-ZZZ
74
+ details: Egysoros leírás, max 120 karakter.
75
+ ```
76
+
77
+ **Szabályok:**
78
+ – Header és mezők KÖZVETLENÜL egymás alatt (nincs üres sor köztük!)
79
+ – Egy üres sor minden entry között
80
+ – Mezők 2 szóköz indentálással, fix sorrend: priority, area, source, req, details
81
+ – Csoportosítás `##` heading-ekkel (spec fájl vagy feature area szerint)
82
+ – Egy deliverable per entry (atomic task-ok)
83
+ – A `req` mező **opcionális** – comma-separated requirement kódok (REQ-/BUG-/DEC- prefix)
84
+ – Ha nincs kapcsolódó requirement kód, a `req` sor elhagyható (backward compatible)
85
+
86
+ ---
87
+
88
+ BACKLOG.md FORMÁTUM (az `__specifications/BACKLOG.md` fájlban)
89
+
90
+ A durable intake – minden új igény, ötlet, hiba ide kerül először. Script-kompatibilis.
91
+
92
+ Type értékek: FEATURE, BUG, IMPROVEMENT, QUESTION, RESEARCH, TASK
93
+ Priority: urgent, high, medium, low
94
+ Source: user, system, assistant
95
+ Area: hierarchikus `category/sub-area` (pl. `ui/model-eval`, `backend/error-handling`)
96
+ Category: ui, backend, infra, docs, tests, ux, general
97
+ Sub-area: nyílt lista, kebab-case (pl. model-eval, early-feature, topnav, error-handling)
98
+
99
+ Entry formátum:
100
+ ```
101
+ - [TYPE] (BL-YYYYMMDD-###) Rövid, leíró cím
102
+ status: EMOJI status-key
103
+ priority: <low|medium|high|urgent>
104
+ source: <user|system|assistant>
105
+ area: <category/sub-area>
106
+ req: REQ-XXX-YYY, REQ-XXX-ZZZ
107
+ details: Egysoros összefoglaló, max 120 karakter.
108
+ ```
109
+
110
+ **Szabályok:**
111
+ – Header és mezők KÖZVETLENÜL egymás alatt (nincs üres sor köztük!)
112
+ – Egy üres sor minden entry között
113
+ – Mezők 2 szóköz indentálással, fix sorrend: status, priority, source, area, req, details
114
+ – A `status` mező kötelezően emoji-val kezdődik, utána a kulcs (pl. `❌ open`)
115
+ – A `req` mező **opcionális** – comma-separated requirement kódok (REQ-/BUG-/DEC- prefix)
116
+ – Ha nincs kapcsolódó requirement kód, a `req` sor elhagyható (backward compatible)
117
+ – Flat lista (nincs heading csoportosítás)
118
+
119
+ **Promote Flow (BACKLOG → TODO):**
120
+ 1. Új TODO entry `❌` (open) státusszal, új `TD-` ID-val
121
+ 2. BACKLOG item status → `🔄 in-progress` vagy `✅ done`
122
+ 3. TODO `details`: "Promoted from BACKLOG (BL-YYYYMMDD-###). [eredeti details]"
123
+
124
+ **Promote Flow (BACKLOG [BUG] → BUGS):**
125
+ 1. Új BUGS entry megfelelő emoji-val, új `BG-` ID-val
126
+ 2. BACKLOG item status → `🔄 in-progress`
127
+ 3. BUGS `details`: "From BACKLOG (BL-YYYYMMDD-###). [eredeti details]"
128
+ 4. `severity` mező meghatározása: critical|major|minor|cosmetic
129
+
130
+ ---
131
+
132
+ CHANGELOG.md FORMÁTUM (az `__documentations/CHANGELOG.md` fájlban)
133
+
134
+ Completed item-ek archívuma – lezárt TODO és BUG item-ek rövidített formában, doc referenciával.
135
+ Részletes formátum: lásd `__specifications/changelog-format.md`
136
+
137
+ Entry formátum:
138
+ ```
139
+ - [TYPE] (CL-YYYYMMDD-###) Rövid, leíró cím
140
+ source: <TD-YYYYMMDD-###|BG-YYYYMMDD-###|BL-YYYYMMDD-###>
141
+ area: <category/sub-area>
142
+ req: REQ-XXX-YYY, REQ-XXX-ZZZ
143
+ doc: <relatív-útvonal-a-doc-fájlhoz.md|n/a>
144
+ summary: Egysoros összefoglaló a kész eredményről, max 120 karakter.
145
+ ```
146
+
147
+ Type értékek: TODO, BUG, TASK
148
+ Csoportosítás: `##` heading-ekkel (verzió / sprint / időszak szerint), legújabb elöl.
149
+ A `req` mező **opcionális** – comma-separated requirement kódok. Elhagyható ha nincs REQ kód.
150
+
151
+ **Archive Flow (TODO → CHANGELOG):**
152
+ 1. TODO item státusza `✅ done`
153
+ 2. Új CHANGELOG entry `[TODO]` típussal, új `CL-` ID-val
154
+ 3. `source`: eredeti `TD-` ID
155
+ 4. `doc`: releváns session/feature doc fájl útvonala (vagy `n/a`)
156
+ 5. TODO item **törlése** a TODO.md-ből
157
+
158
+ **Archive Flow (BUGS → CHANGELOG):**
159
+ 1. BUG item státusza `✅ done`
160
+ 2. Új CHANGELOG entry `[BUG]` típussal, új `CL-` ID-val
161
+ 3. `source`: eredeti `BG-` ID
162
+ 4. BUG item **törlése** a BUGS.md-ből
163
+ 5. BACKLOG-ban eredeti `[BUG]` item status → `✅ done`
164
+
165
+ ---
166
+
167
+ BUGS.md FORMÁTUM (az `__documentations/BUGS.md` fájlban)
168
+
169
+ Aktív bug tracking – BACKLOG-ból promote-olt vagy közvetlenül jelentett hibák.
170
+ Részletes formátum: lásd `__specifications/bugs-format.md`
171
+
172
+ Státusz emoji-k: megegyeznek a TODO.md rendszerrel (bug-specifikus jelentéssel).
173
+
174
+ Entry formátum:
175
+ ```
176
+ - EMOJI (BG-YYYYMMDD-###) Rövid, leíró cím
177
+ severity: <critical|major|minor|cosmetic>
178
+ priority: <low|medium|high|urgent>
179
+ area: <category/sub-area>
180
+ source: <user|system|assistant|test>
181
+ details: Egysoros leírás a hibáról, max 120 karakter.
182
+ ```
183
+
184
+ Severity értékek:
185
+ – `critical`: Rendszer használhatatlan, adatvesztés, security
186
+ – `major`: Fő funkció érintett, nincs workaround
187
+ – `minor`: Kisebb probléma, van workaround
188
+ – `cosmetic`: Vizuális hiba, funkció nem érintett
189
+
190
+ Csoportosítás: `##` heading-ekkel (area / feature szerint).
191
+
192
+ ---
193
+
194
+ TELJES LIFECYCLE ÖSSZEFOGLALÓ
195
+
196
+ ```
197
+ Új igény → BACKLOG (intake)
198
+ BACKLOG → TODO (promote, aktív fejlesztés)
199
+ BACKLOG [BUG] → BUGS (aktív bug tracking)
200
+ TODO ✅ → CHANGELOG (archív) + TODO entry törlés
201
+ BUGS ✅ → CHANGELOG (archív) + BUGS entry törlés + BACKLOG ✅
202
+ ```
203
+
204
+ ---
205
+
12
206
  KÖVETELMÉNY KÓD RENDSZER (REQUIREMENT CODE SYSTEM)
13
207
  Minden specifikációs követelményhez egyedi kódot kell létrehozni és használni.
14
208
  Részletes leírás: [Requirement Code System](./requirement-code-system.md)
15
209
 
16
210
  1. KÓD FORMÁTUM
17
- – Formátum: REQ-{CATEGORY}-{NUMBER}[-{SUBNUMBER}], BUG-{CATEGORY}-{NUMBER}[-{SUBNUMBER}], DEC-{CATEGORY}-{NUMBER}[-{SUBNUMBER}]
211
+ – Formátum: REQ-{CATEGORY}-{NUMBER}[-{SUBNUMBER}],
212
+ BUG-{CATEGORY}-{NUMBER}[-{SUBNUMBER}],
213
+ DEC-{CATEGORY}-{NUMBER}[-{SUBNUMBER}]
18
214
  – Példa: REQ-AGENT-001, REQ-BROWSER-042, REQ-CODE-015-01, REQ-AGENT-001-02
19
215
  – Példa: BUG-AGENT-042, BUG-CODE-015-02
20
216
  – Példa: DEC-AGENT-001 (döntés/kérdés/ellentmondás)
21
- – Category: specifikációs fájl neve vagy feature/domain alapján (pl. agent-system.md → AGENT)
22
- – Subnumber (opcionális): alkövetelmények azonosításához (pl. REQ-AGENT-001-01, REQ-AGENT-001-02)
217
+ – Category: specifikációs fájl neve vagy feature/domain alapján
218
+ (pl. agent-system.md AGENT)
219
+ – Subnumber (opcionális): alkövetelmények azonosításához
23
220
  – Rövid, nagybetűs, aláhúzás nélküli azonosító (max 15 karakter)
24
221
 
25
222
  2. KÓD LÉTREHOZÁSA ÉS HASZNÁLATA
26
223
  – Minden követelmény és alkövetelmény kap egyedi kódot
27
- – Formátum specifikációban: `### Feature Name ✅ [REQ-AGENT-001]` vagy `## Section Name ❌ [REQ-AGENT-002]`
28
- **Blokkonként csak egy kód**: A specifikációkban blokkonként (szekciónként, listánként) csak egy feature kód jelenik meg, nem minden sornál
224
+ – Formátum specifikációban:
225
+ `### Feature Name [REQ-AGENT-001]` vagy `## Section Name [REQ-AGENT-002]`
226
+ – **Blokkonként csak egy kód**: szekciónként/listánként egy feature kód
29
227
  – **Státusz emoji kötelező**: Minden kódhoz tartozik egy státusz emoji:
30
- * ✅ (kész): A követelmény/bug/döntés teljes mértékben implementálva van - **CSAK AKKOR**, ha minden implementációs elemnél (fájl, függvény, class, stb.) szerepel a requirement kód (a specifikációs és a requirement kód is), ÉS ellenőriztük és alaposan reviewztuk az adott requirement-et. Ellenőrizni kell, hogy minden implementációs elem tartalmazza-e a megfelelő requirement kód hivatkozást (pl. `// REQ-AGENT-001`, `@requirement REQ-AGENT-001`, `Implements: REQ-AGENT-001`), valamint alaposan át kell nézni és reviewzni az implementációt, hogy valóban teljes mértékben megfelel-e a specifikációnak
31
- * 🔍 (implemented but not reviewed/not tested): A követelmény/bug/döntés implementálva van, de még nincs reviewzva vagy tesztelve. Az implementáció elkészült, de még nem történt meg az ellenőrzés és a tesztelés
32
- * (missing): A követelmény/bug/döntés még nincs implementálva
33
- * 🔄 (specifications changed): A specifikációban változtatás történt, de az implementáció még nem frissült
34
- * ⚠️ (specification incomplete): A specifikáció nem teljes - például teszteseteknél kifejtésre vár az összes létező teszteset, vagy más specifikációs elemek hiányoznak/kifejtésre várnak
35
- * (unknown): Ismeretlen státusz. (default)
36
- Az emoji a kód előtt jelenik meg: `✅ [REQ-AGENT-001]` vagy `🔍 [REQ-AGENT-002]` vagy `❌ [REQ-AGENT-003]` vagy `🔄 [REQ-AGENT-004]` vagy `⚠️ [REQ-AGENT-005]` vagy `❓ [REQ-AGENT-006]`
228
+ * ✅ (kész): Teljes mértékben implementálva **CSAK AKKOR**, ha minden implementációs
229
+ elemnél szerepel a requirement kód, ÉS ellenőriztük és reviewztuk
230
+ * 🔍 (implemented but not reviewed/not tested): Implementálva, de nincs reviewzva/tesztelve
231
+ * (missing): Még nincs implementálva
232
+ * 🔄 (specifications changed): Specifikáció változott, implementáció nem frissült
233
+ * ⚠️ (specification incomplete): Specifikáció nem teljes
234
+ * (unknown): Ismeretlen státusz (default)
235
+ – Emoji a kód előtt: `✅ [REQ-AGENT-001]`, `❌ [REQ-AGENT-003]`, stb.
37
236
  – Szekvenciális számozás: minden új követelmény a következő számot kapja
38
- – Ugyanaz a követelmény több helyen is előfordulhat, de ugyanazt a kódot használja
237
+ – Ugyanaz a követelmény több helyen = ugyanaz a kód
39
238
  – Ne készítsünk indexeket, direktbe használjuk őket
40
- – **Eltávolított feature kódok**: Ha egy feature kódot eltávolítunk, azt script-tel át kell írni a group feature kódjára
239
+ – **Eltávolított feature kódok**: script-tel a group feature kódjára írjuk
41
240
 
42
241
  3. KÓD HASZNÁLATA IMPLEMENTÁCIÓKBAN
43
242
  – Minden implementációban kötelezően hivatkozzunk a követelmény kódjára
44
- – Hivatkozás formátumok: `// REQ-AGENT-001: Implementáció`, `@requirement REQ-AGENT-001`, `Implements: REQ-AGENT-001`
243
+ – Hivatkozás formátumok:
244
+ `// REQ-AGENT-001: Implementáció`, `@requirement REQ-AGENT-001`,
245
+ `Implements: REQ-AGENT-001`
45
246
  – A fájl tetején vagy a releváns függvény/class felett szerepeljen a kód
46
247
  – Több követelmény esetén: `// REQ-AGENT-001, REQ-AGENT-001-01: ...`
47
- – **KRITIKUS SZABÁLY**: A (kész) státusz csak akkor kerülhet be a specifikációban, ha MINDEN implementációs elemnél (fájl, függvény, class, modul, stb.) szerepel a requirement kód hivatkozás, ÉS ellenőriztük és alaposan reviewztuk az adott requirement-et. Ellenőrizni kell, hogy minden implementációs elem tartalmazza-e a megfelelő requirement kódot, valamint alaposan át kell nézni és reviewzni az implementációt, hogy valóban teljes mértékben megfelel-e a specifikációnak, mielőtt a ✅ státuszt beállítjuk.
48
- DEC kód használata: ellentmondások, kérdések, döntések esetén (pl. implementáció vs specifikáció eltérés, duplikált implementáció, üzleti/technikai döntés szükséges)
49
- Ha bármilyen kérdés merül fel (DEC kód), akkor az kötelezően kerüljön bele az üzleti kérdések dokumentációjába is (__documentations/BUSINESS_QUESTIONS.md vagy hasonló)
248
+ – **KRITIKUS SZABÁLY**: ✅ státusz CSAK akkor kerülhet be, ha MINDEN implementációs elemnél
249
+ szerepel a requirement kód, ÉS ellenőriztük és reviewztuk az adott requirement-et
250
+ – DEC kód használata: ellentmondások, kérdések, döntések esetén
251
+ – DEC kód → kötelezően `__documentations/BUSINESS_QUESTIONS.md`-be is
50
252
 
51
253
  4. KÓD KARBANTARTÁS
52
254
  – Új követelmény/bug/döntés: új kód generálása szekvenciális számmal
53
255
  – Törölt követelmény/bug/döntés: kódot NEM használjuk újra (archiváljuk)
54
256
  – Módosított követelmény: ugyanazt a kódot használjuk, dokumentáljuk a változást
55
257
  – Refactoring: kódok megmaradnak, csak implementáció változik
56
- – Dokumentációkban (CHANGELOG, DECISIONS, MISSING_FEATURES, NEXT_STEPS) hivatkozzunk a kódokra
57
- Ha bármilyen kérdés merül fel (DEC kód), akkor az kötelezően kerüljön bele az üzleti kérdések dokumentációjába is
258
+ – Dokumentációkban (CHANGELOG, DECISIONS, TODO, BACKLOG) hivatkozzunk a kódokra
259
+ – DEC kód kötelezően `__documentations/BUSINESS_QUESTIONS.md`-be is
260
+
261
+ ---
58
262
 
59
263
  FELADAT
60
- Készíts egy részletes, hierarchikus fejlesztési tervet a következő feladathoz (próbáljunk meg sorban haladni a pending feladatokon), amely:
264
+ Készíts egy részletes, hierarchikus fejlesztési tervet a következő feladathoz
265
+ (próbáljunk meg sorban haladni a pending feladatokon), amely:
61
266
  1. Teljes mértékben a specifikációra épül
62
267
  2. Figyelembe veszi és beemeli a már elkészült elemeket
63
268
  3. Kifejezetten AI-végrehajtásra optimalizált (Cursor-kompatibilis)
64
269
  4. Minimalizálja az iterációs hibákat és a kontextusvesztést
65
270
  5. Garantálja, hogy minden új lépés kapcsolódik az összes korábbi lépéshez
66
- 6. Minden lépés után kötelezően frissít (update) és dokumentál, és ezt a dokumentációt a következő lépések aktívan használják és bővítik
271
+ 6. Minden lépés után kötelezően frissít (update) és dokumentál
67
272
 
68
273
  A FEJLESZTÉSI TERV SZERKEZETE
69
274
  A tervet fázisokra és lépésekre bontva add meg:
70
275
 
71
276
  TERV FÁJL LOKÁCIÓ
72
277
  – A tervet kötelezően egy `*.plan.md` fájlba kell menteni a `__documentations/plans/` mappába
73
- – Fájlnév formátum: `{sorszam}-{projekt-nev-vagy-cel}.plan.md` (pl. `1.0-agent-system-update.plan.md`, `2.0-feature-x-implementation.plan.md`, `122.0.12-spec-code-integration.plan.md`)
74
- – **Kötelező sorszámozás**: A fájlnév MINDIG sorszámmal kezdődik tört szám formátumban (pl. 1.0, 1.1, 2.0, 122.0.12), hogy követhető legyen a sorrend és hierarchia
278
+ – Fájlnév formátum: `{sorszam}-{projekt-nev-vagy-cel}.plan.md`
279
+ (pl. `1.0-agent-system-update.plan.md`, `2.0-feature-x-implementation.plan.md`)
280
+ – **Kötelező sorszámozás**: A fájlnév MINDIG tört szám formátumban kezdődik
281
+ (pl. 1.0, 1.1, 2.0, 122.0.12)
75
282
  – **Verziószámozás szabályok**:
76
283
  – A sorszámozás időben folyamatosan növekszik (1.0, 1.1, 1.2, 2.0, stb.)
77
284
  – A verziószámot egyeztetni kell, ez lesz a projekt verziószáma
78
- – **Aktív verzió**: Az aktív verzió mindig az elkészült utolsó terv sorszáma
79
- – **Review fájlok**: Minden review fájl (gap-analysis, status report, stb.) ugyanezzel a verziószámozással készül, mindig az aktív verzióval, és `.rev.md` kiterjesztéssel (pl. `{aktív-verzió}-Gap_Analysis_Project_Agent.rev.md`, `{aktív-verzió}-Phase_26_Status_Report.rev.md`)
285
+ – **Aktív verzió**: Az elkészült utolsó terv sorszáma
286
+ – **Review fájlok**: `.rev.md` kiterjesztéssel, az aktív verzióval
287
+ (pl. `{verzió}-Gap_Analysis.rev.md`)
80
288
  – **Dokumentáció fájl elnevezési konvenciók**:
81
- * Dokumentációkhoz: `{verzió}-{Pascal_Snake_Case}.doc.md` formátum (pl. `1.0-Completed_Plan_1_VSCode_Setup.doc.md`)
82
- * Review-khoz: `{verzió}-{Pascal_Snake_Case}.rev.md` formátum (pl. `17.0-Gap_Analysis_Project_Agent.rev.md`)
83
- * Changelog fájlokhoz: `Changelog_{verzió}.doc.md` formátum (pl. `Changelog_1.0.doc.md`, `Changelog_2.0.doc.md`)
84
- * Changelog archív fájlokhoz: `Changelog_{verzió}_Archive.doc.md` formátum (pl. `Changelog_12.0_Archive.doc.md`)
85
- * A "Changelog" mindig nagy betűkkel, előre kerül, majd a verziószám
86
- * Changelog fájlok verziónként külön fájlokban vannak (felosztva, hogy ne legyenek túl hosszúak)
87
- * Pascal_Snake_Case formátum: szavak nagy betűvel kezdődnek, aláhúzás választja el őket (pl. `Completed_Plan_1_VSCode_Setup`)
88
- **Package.json verzió**: A verziószámot a `package.json` fájlban is vezetni kell, és a `2.{dokumentációs-verzió}.0` formátumot használja, ahol a dokumentációs verzió az aktív verzió (pl. ha az aktív verzió 17.0, akkor a package.json verzió `2.17.0`)
89
- Új terv létrehozásakor: Ellenőrizd a `package.json`-ben lévő verziószámot, és az aktív verzió alapján add meg az új terv sorszámát
289
+ * Dokumentációkhoz: `{verzió}-{Pascal_Snake_Case}.doc.md`
290
+ (pl. `1.0-Completed_Plan_1_VSCode_Setup.doc.md`)
291
+ * Review-khoz: `{verzió}-{Pascal_Snake_Case}.rev.md`
292
+ (pl. `17.0-Gap_Analysis_Project_Agent.rev.md`)
293
+ * Changelog fájlokhoz: `Changelog_{verzió}.doc.md`
294
+ (pl. `Changelog_1.0.doc.md`, `Changelog_2.0.doc.md`)
295
+ * Changelog archív: `Changelog_{verzió}_Archive.doc.md`
296
+ * Pascal_Snake_Case formátum: szavak nagy betűvel, aláhúzás választja el
297
+ **Package.json verzió**: `2.{dokumentációs-verzió}.0` formátum
298
+ (pl. aktív verzió 17.0 → package.json `2.17.0`)
299
+ – Új terv létrehozásakor: ellenőrizd a `package.json` verziószámot
90
300
  – Ha a mappa nem létezik, létre kell hozni
91
301
 
92
302
  TERV FÁJL FORMÁTUM
93
303
  – Minden PHASE és STEP elején kötelező státusz emoji:
94
304
  * ⏳ (pending): Még nem kezdődött el
95
- * 🔄 (in-progress): Jelenleg folyamatban van / Megváltozott specifikáció még nincs implementálva.
305
+ * 🔄 (in-progress): Jelenleg folyamatban van
96
306
  * ✅ (completed): Befejezve
97
- * ❓ (unknown): Ismeretlen státusz. (default)
98
- – A terv végén kötelezően legyen egy "TO-DO LISTA" szekció checkboxokkal, amely tartalmazza az összes STEP-et
99
- A checkboxok formátuma: `- [ ] STEP N.M: Rövid leírás` (pending), `- [x] STEP N.M: Rövid leírás` (completed)
307
+ * ❓ (unknown): Ismeretlen státusz (default)
308
+ – A terv végén kötelezően legyen egy "TO-DO LISTA" szekció checkboxokkal
309
+ Checkboxok: `- [ ] STEP N.M: Rövid leírás` (pending), `- [x] STEP N.M: Leírás` (completed)
100
310
 
101
311
  PHASE N ⏳
102
312
  – Cél (mit old meg ez a fázis a teljes projekt szempontjából)
@@ -114,11 +324,11 @@ STEP N.M ⏳
114
324
  – AI-utasítás stílus: egyértelmű, parancsszerű, félreérthetetlen
115
325
  – Érintett fájlok (konkrét útvonalakkal)
116
326
  – Módosítás típusa (create/update/refactor)
117
- – Követelmény kódok: mely REQ-XXX-YYY kódokkal kapcsolatos ez a lépés
118
- (ha új követelményt implementálunk, generáljunk kódot; ha meglévőt, használjuk a kódot)
119
- - Amikor kódokat készítünk előtte mindig olvasd el a technikai specifikációt. hogy alkalmazhasd a fejlesztési szabályokat. (__specifications/technical-specifications.md)
327
+ – Követelmény kódok: mely REQ-XXX-YYY kódokkal kapcsolatos
328
+ Előtte olvasd el: `__specifications/technical-specifications.md`
120
329
  – Státusz: ⏳ / 🔄 / ✅ / ❓
121
330
 
331
+ ---
122
332
 
123
333
  KÖTELEZŐ LÉPÉSVÉGI RUTIN (MINDEN STEP VÉGÉN)
124
334
  A STEP végén mindig add meg külön blokkban, ebben a sorrendben:
@@ -139,33 +349,45 @@ A STEP végén mindig add meg külön blokkban, ebben a sorrendben:
139
349
  – Következő lépés előfeltételei (mit kell igazolni, hogy indulhasson)
140
350
 
141
351
  3) DOKUMENTÁCIÓ (KÖTELEZŐ, INKREMENTÁLIS)
142
- – Minden lépés után frissíts/bővíts dokumentációt úgy, hogy a következő lépések abból dolgozzanak
352
+ – Minden lépés után frissíts/bővíts dokumentációt
143
353
  – Dokumentációs szabályok:
144
354
  – rövid, követhető, strukturált
145
355
  – mindig tükrözze az aktuális valós állapotot
146
356
  – minden döntés kapjon 1-2 soros indoklást
147
- – a későbbi bővíthetőség legyen explicit (mire számítunk később)
148
- – **Ne használj dátumokat a dokumentációkban!** Helyette mindig sorszámozást használj tört számokkal (pl. 1.0, 1.1, 1.2, 122.0.12), hogy könnyebben tudjunk sub-elemeket létrehozni és a dokumentációk strukturáltak maradjanak
357
+ – a későbbi bővíthetőség legyen explicit
358
+ – **Ne használj dátumokat a dokumentációkban!** Sorszámozás tört számokkal
359
+ (pl. 1.0, 1.1, 1.2, 122.0.12)
149
360
  – **Dokumentáció fájl elnevezési konvenciók**:
150
- * Dokumentációkhoz: `{verzió}-{Pascal_Snake_Case}.doc.md` formátum (pl. `1.0-Completed_Plan_1_VSCode_Setup.doc.md`)
151
- * Review-khoz: `{verzió}-{Pascal_Snake_Case}.rev.md` formátum (pl. `17.0-Gap_Analysis_Project_Agent.rev.md`)
152
- * Changelog fájlokhoz: `Changelog_{verzió}.doc.md` formátum (pl. `Changelog_1.0.doc.md`, `Changelog_2.0.doc.md`)
153
- * Changelog archív fájlokhoz: `Changelog_{verzió}_Archive.doc.md` formátum (pl. `Changelog_12.0_Archive.doc.md`)
154
- * A "Changelog" mindig nagy betűkkel, előre kerül, majd a verziószám
155
- * Changelog fájlok verziónként külön fájlokban vannak (felosztva, hogy ne legyenek túl hosszúak)
156
- * Pascal_Snake_Case formátum: szavak nagy betűvel kezdődnek, aláhúzás választja el őket (pl. `Completed_Plan_1_VSCode_Setup`)
361
+ * `{verzió}-{Pascal_Snake_Case}.doc.md` (dokumentáció)
362
+ * `{verzió}-{Pascal_Snake_Case}.rev.md` (review)
363
+ * `Changelog_{verzió}.doc.md` (changelog, verziónként külön fájl)
364
+ * `Changelog_{verzió}_Archive.doc.md` (changelog archív)
365
+
157
366
  – Minimum doc output minden STEP végén:
158
- /__documentations/CHANGELOG.md (lépésenkénti változásnapló, sorszámozva tört számokkal pl. 1.0, 1.1, 2.0, if longer than 750 rows, archive completed elements to Changelog_{verzió}.doc.md files)
159
- /__documentations/ARCHITECTURE.md (modulok, adatáramlás, felelősségek, sorszámozva tört számokkal)
160
- /__documentations/DECISIONS.md (rövid döntésnapló: mi, miért, alternatívák, sorszámozva tört számokkal pl. 1.0, 1.1, 2.0)
161
- /__documentations/INTEGRITY.md (mit és hogyan ellenőrzünk rendszeresen, sorszámozva tört számokkal)
162
- /__documentations/MISSING_FEATURES.md (update statuses, sorszámozva tört számokkal, if longer than 750 rows, archive completed elements)
163
- – /__documentations/NEXT_SPTEPS.md (update statuses, sorszámozva tört számokkal, if longer than 750 rows, archive completed elements, shorten into /__documentationsCOMPLETED_STEPS.md)
164
- /__documentations/BUSINESS_QUESTIONS.md (ha bármilyen kérdés merül fel - DEC kód, akkor kötelezően ide is kerüljön, sorszámozva tört számokkal)
165
- – /__documentations/developments/{verzió}-{Pascal_Snake_Case}.md (session-önkénti report, verziószám mindig a session name előtt, pl. 1.0-Session_Implementation.md, 1.1-Session_Spec_Creation.md, 2.0-Session_Feature_Update.md)
166
- A tervben minden STEP-hez írd le pontosan, mely doc fájl(ok) frissülnek és milyen új sorok/fejezetek kerülnek bele
367
+ `__documentations/CHANGELOG.md`
368
+ (completed item-ek archívuma, max 750 sor, túl hosszúnál → Changelog_{verzió}.doc.md)
369
+ `__documentations/BUGS.md`
370
+ (aktív bug tracking ha releváns bug változás történt)
371
+ `__documentations/ARCHITECTURE.md`
372
+ (modulok, adatáramlás, felelősségek)
373
+ `__documentations/DECISIONS.md`
374
+ (döntésnapló: mi, miért, alternatívák)
375
+ `__documentations/INTEGRITY.md`
376
+ (mit és hogyan ellenőrzünk rendszeresen)
377
+ – `__documentations/BUSINESS_QUESTIONS.md`
378
+ (DEC kódokhoz kapcsolt üzleti kérdések)
379
+ – `__documentations/dev/{verzió}-{Pascal_Snake_Case}.doc.md`
380
+ (session-önkénti report)
381
+ – `__specifications/TODO.md`
382
+ (aktív feladatok státusz frissítése, TODO formátum szerint)
383
+ – `__specifications/BACKLOG.md`
384
+ (intake státusz frissítése, BACKLOG formátum szerint)
385
+
386
+ – A tervben minden STEP-hez írd le pontosan, mely fájl(ok) frissülnek
167
387
  (max line length: 150)
168
388
 
389
+ ---
390
+
169
391
  VIBE CODING OPTIMALIZÁLÁS
170
392
  A terv:
171
393
  – kis, egymásra épülő lépésekből álljon
@@ -181,49 +403,63 @@ VÉGSŐ ÖSSZEGZÉS
181
403
  A terv végén készíts:
182
404
  – teljes projekt-összefoglalót (architektúra, modulok, adatáramlás)
183
405
  – lépés-függőségi térképet (hogyan épül egymásra minden)
184
- – AI-végrehajtási ajánlást: milyen sorrendben, milyen tempóban érdemes futtatni Cursorban
406
+ – AI-végrehajtási ajánlást: milyen sorrendben, tempóban érdemes futtatni Cursorban
185
407
  – Dokumentációs indexet: mely doc hol van, és melyik lépés írja/bővíti
186
- - Dokumentáljunk és update-eljük az előre haladást és a feladatlistát. (archiváljuk a completed és túl hosszú elemeket)
408
+ Frissítsd az előrehaladást és a feladatlistát (archiváld a completed elemeket)
187
409
 
188
410
  TO-DO LISTA
189
- A terv végén kötelezően legyen egy "TO-DO LISTA" szekció, amely tartalmazza az összes STEP-et checkbox formátumban:
190
- – Formátum: `- [ ] STEP N.M: Rövid leírás` (pending) vagy `- [x] STEP N.M: Rövid leírás` (completed)
411
+ A terv végén kötelezően legyen egy "TO-DO LISTA" szekció checkboxokkal:
412
+ – Formátum: `- [ ] STEP N.M: Rövid leírás` (pending), `- [x] STEP N.M: Leírás` (completed)
191
413
  – A lista tartalmazza az összes PHASE-t és STEP-et hierarchikusan
192
414
  – Példa:
193
415
  ```
194
416
  ## TO-DO LISTA
195
-
417
+
196
418
  ### PHASE 1: Alapok
197
419
  - [ ] STEP 1.1: Alapvető struktúra létrehozása
198
420
  - [ ] STEP 1.2: Konfiguráció beállítása
199
-
421
+
200
422
  ### PHASE 2: Implementáció
201
423
  - [ ] STEP 2.1: Fő funkció implementálása
202
424
  - [x] STEP 2.2: Tesztek írása
203
425
  ```
204
426
 
427
+ ---
428
+
205
429
  KIMENETI FORMA
206
- – A tervet kötelezően egy `*.plan.md` fájlba kell menteni a `__documentations/plans/` mappába
430
+ – A tervet kötelezően `*.plan.md` fájlba a `__documentations/plans/` mappába
207
431
  – Strukturált, jól tagolt markdown
208
- – Kódot csak ott adj meg, ahol az a terv megértéséhez szükséges
432
+ – Kódot csak ott adj meg, ahol a terv megértéséhez szükséges
209
433
  – Nincs felesleges magyarázat, csak végrehajtható precízió
210
- Semmilyen file ne legyen hosszabb, mint 750 sor és soronként 150 karakter. (Amennyiben bármi ennél hosszabb, azt refaktorálnunk kell több külön fájlá.)
434
+ Max fájlhossz: 750 sor, max sorhossz: 150 karakter
435
+ (Ha bármi ennél hosszabb → refaktorálás több fájlba)
211
436
  – Minden PHASE és STEP elején kötelező státusz emoji (⏳ / 🔄 / ✅ / ❓)
212
- – A terv végén kötelezően legyen egy "TO-DO LISTA" szekció checkboxokkal
437
+ – A terv végén kötelezően "TO-DO LISTA" szekció checkboxokkal
438
+
439
+ ---
440
+
441
+ EMLÉKEZTETŐK (MINDEN STEP-NÉL ELLENŐRIZD)
442
+ (DONT RUN OR COMPILE THE APPLICATION, ask the user to do so)
443
+ – Frissítsd a specifikációkat! (`__specifications/` fájlok)
444
+ – Frissítsd a dokumentációkat! (`__documentations/` fájlok)
445
+ – Használj requirement kódokat! (REQ-XXX-YYY, BUG-XXX-YYY, DEC-XXX-YYY)
446
+ – Verziószámozás dátumok helyett! (1.0, 1.1, 2.0)
447
+ – Fájlelnevezési konvenciók betartása:
448
+ * `{verzió}-{Pascal_Snake_Case}.doc.md` (dokumentáció)
449
+ * `{verzió}-{Pascal_Snake_Case}.rev.md` (review)
450
+ * `Changelog_{verzió}.doc.md` (changelog, verziónként külön)
451
+ * `Changelog_{verzió}_Archive.doc.md` (changelog archív)
452
+ – TODO/BACKLOG/BUGS/CHANGELOG státuszok frissítése minden releváns STEP végén!
453
+ – Completed TODO/BUG → CHANGELOG archive + eredeti entry törlés!
213
454
 
214
- (DONT RUN OR COMPLIE THE APPLICATION, ask the user to do so)
215
- Never forget to update the specifications!
216
- Never forget to update the documentations!
217
- Never forget to create and use requirement codes (REQ-XXX-YYY, BUG-XXX-YYY, DEC-XXX-YYY) in both specifications and implementations!
218
- Never forget: Use version numbers (1.0, 1.1, 2.0) instead of dates in documentation files!
219
- Never forget: Follow the documentation file naming conventions:
220
- - Documentation files: {verzió}-{Pascal_Snake_Case}.doc.md (e.g., 1.0-Completed_Plan_1_VSCode_Setup.doc.md)
221
- - Review files: {verzió}-{Pascal_Snake_Case}.rev.md (e.g., 17.0-Gap_Analysis_Project_Agent.rev.md)
222
- - Changelog files: Changelog_{verzió}.doc.md (e.g., Changelog_1.0.doc.md, Changelog_2.0.doc.md)
223
- - Changelog archive files: Changelog_{verzió}_Archive.doc.md (e.g., Changelog_12.0_Archive.doc.md)
224
- - Changelog files are split by version to keep them manageable (not too long)
225
-
226
- __documentations/MISSING_FEATURES.md
227
- __documentations/NEXT_STEPS.md
228
- __specifications/main.md
229
- __specifications/technical-specifications.md
455
+ KÖTELEZŐ REFERENCIA FÁJLOK (minden projektben):
456
+ __specifications/main.md
457
+ __specifications/technical-specifications.md
458
+ __specifications/TODO.md
459
+ __specifications/BACKLOG.md
460
+ __documentations/CHANGELOG.md
461
+ __documentations/BUGS.md
462
+ __documentations/ARCHITECTURE.md
463
+ __documentations/DECISIONS.md
464
+ __documentations/INTEGRITY.md
465
+ __documentations/BUSINESS_QUESTIONS.md
@@ -86,7 +86,7 @@ class DyFM_DataProperty_Params extends DyFM_DataProperty_Settings {
86
86
  super();
87
87
  if (set) {
88
88
  if (!set.type && !set.forbidden) {
89
- log_util_1.DyFM_Log.error('DYNAMO ERROR: ', `\n type is missing from DynamoBEDataPropertyParams at "${set.key}" in ` +
89
+ log_util_1.DyFM_Log.error('DYNAMO ERROR: ', `\n type is missing from DynamoNTSDataPropertyParams at "${set.key}" in ` +
90
90
  `"${parentDataParams?.dataName}" model.` +
91
91
  `\n stackLocation: ${(0, stack_util_1.DyFM_getConstructionStackLocation)(2)}`);
92
92
  }
@@ -123,7 +123,7 @@ class DyFM_DataProperty_Params extends DyFM_DataProperty_Settings {
123
123
  Object.assign(this, set);
124
124
  }
125
125
  else {
126
- log_util_1.DyFM_Log.error('DYNAMO ERROR: ', `\nMISSING DynamoBEDataPropertyParams constructor input at "${this.key}"!` +
126
+ log_util_1.DyFM_Log.error('DYNAMO ERROR: ', `\nMISSING DynamoNTSDataPropertyParams constructor input at "${this.key}"!` +
127
127
  `\n stackLocation: ${(0, stack_util_1.DyFM_getConstructionStackLocation)(2)}`);
128
128
  }
129
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-property-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-property-params.control-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-property-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-property-params.control-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { DyFM_AI_Provider } from '../_enums/ai-provider.enum';
2
+ /**
3
+ * AI modell hivatkozas formatum: {provider}:{model}
4
+ *
5
+ * Peldak: "open-ai:gpt-4o", "anthropic:claude-3-5-sonnet-latest", "fdp-ai:fdp-base-1"
6
+ * A provider resz a DyFM_AI_Provider enum erteke, a model resz a provider sajat modell azonositoja.
7
+ */
8
+ export declare class DyFM_AI_ModelRef_Util {
9
+ /** az elvlaszto karakter a provider es modell kozott */
10
+ private static readonly separator;
11
+ /** az osszes ervenyes provider ertek gyorstarhely */
12
+ private static readonly validProviders;
13
+ /**
14
+ * Osszeallitas provider + model -bol
15
+ * @param provider - AI provider enum ertek
16
+ * @param model - provider-specifikus modell azonosito
17
+ */
18
+ static create(provider: DyFM_AI_Provider, model: string): string;
19
+ /**
20
+ * Szetbontas provider + model -re
21
+ * @param modelRef - formatum: {provider}:{model}
22
+ */
23
+ static parse(modelRef: string): {
24
+ provider: DyFM_AI_Provider;
25
+ model: string;
26
+ };
27
+ /**
28
+ * Provider kinyerese a modelRef-bol
29
+ * @param modelRef - formatum: {provider}:{model}
30
+ */
31
+ static getProvider(modelRef: string): DyFM_AI_Provider;
32
+ /**
33
+ * Model kinyerese a modelRef-bol
34
+ * @param modelRef - formatum: {provider}:{model}
35
+ */
36
+ static getModel(modelRef: string): string;
37
+ /**
38
+ * Validalas -- ellenorzi, hogy a modelRef megfelel-e a {provider}:{model} formatumnak
39
+ * @param modelRef - a vizsgalando string
40
+ */
41
+ static isValid(modelRef: string): boolean;
42
+ }
43
+ //# sourceMappingURL=ai-model-ref.util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-model-ref.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/ai/_collections/ai-model-ref.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D;;;;;GAKG;AACH,qBAAa,qBAAqB;IAChC,wDAAwD;IACxD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAe;IAEhD,qDAAqD;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAEpC;IAEF;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAIhE;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAqB7E;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB;IAItD;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIzC;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAgB1C"}