@futdevpro/dynamo-eslint 1.15.22 → 1.15.28

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 (197) hide show
  1. package/.c8rc.json +26 -26
  2. package/.cursor/rules/__assistant_guide.mdc +30 -30
  3. package/.cursor/rules/__main.mdc +64 -64
  4. package/.cursor/rules/_ag_backend-structure.mdc +85 -85
  5. package/.cursor/rules/_ag_backend.mdc +16 -16
  6. package/.cursor/rules/_ag_debug.mdc +7 -7
  7. package/.cursor/rules/_ag_documentation_writing_rules.mdc +372 -372
  8. package/.cursor/rules/_ag_file-refactoring.mdc +113 -113
  9. package/.cursor/rules/_ag_fixes_rules.mdc +5 -5
  10. package/.cursor/rules/_ag_frontend-structure.mdc +86 -86
  11. package/.cursor/rules/_ag_frontend.mdc +39 -39
  12. package/.cursor/rules/_ag_import-rules.mdc +44 -44
  13. package/.cursor/rules/_ag_naming.mdc +115 -115
  14. package/.cursor/rules/_ag_running_commands.mdc +4 -4
  15. package/.cursor/rules/_ag_server-controller.mdc +5 -5
  16. package/.cursor/rules/_ag_should-be.mdc +6 -6
  17. package/.cursor/rules/_ag_swearing.mdc +47 -47
  18. package/.cursor/rules/ai_development_guide.md +60 -60
  19. package/.cursor/rules/ai_directives.md +114 -114
  20. package/.cursor/rules/cursor-rules.md +160 -160
  21. package/.cursor/rules/default-command.mdc +464 -464
  22. package/.cursor/rules/error_code_pattern.md +39 -39
  23. package/.cursor/rules/saved rule mcp server use.md +15 -15
  24. package/.dynamo/pipeline.cicd.config.json +184 -184
  25. package/.dynamo/version-bump.config.json +5 -5
  26. package/.eslintrc.json +4 -4
  27. package/.github/workflows/main.yml +436 -436
  28. package/.husky/pre-commit +2 -2
  29. package/.vscode/settings.json +11 -11
  30. package/README.md +319 -319
  31. package/__documentations/2026-04-18-ccap-review-integration.md +173 -173
  32. package/__documentations/2026-08-18-bfr-ctm-005-eslint9-validator-report.md +45 -0
  33. package/build/configs/base.d.ts +9 -9
  34. package/build/configs/base.js +150 -150
  35. package/build/configs/fsm.d.ts +1 -1
  36. package/build/configs/fsm.js +7 -7
  37. package/build/configs/ngx-package.d.ts +1 -1
  38. package/build/configs/ngx-package.js +7 -7
  39. package/build/configs/ngx.d.ts +4 -4
  40. package/build/configs/ngx.js +91 -91
  41. package/build/configs/nts-package.d.ts +1 -1
  42. package/build/configs/nts-package.js +17 -17
  43. package/build/configs/nts.d.ts +1 -1
  44. package/build/configs/nts.js +31 -31
  45. package/build/index.d.ts +1 -1
  46. package/build/index.js +2 -2
  47. package/build/plugin/index.d.ts +52 -52
  48. package/build/plugin/index.js +80 -80
  49. package/build/plugin/rules/angular/angular-for-track-logic.d.ts +7 -7
  50. package/build/plugin/rules/angular/angular-for-track-logic.js +81 -81
  51. package/build/plugin/rules/angular/effect-signal-loop.d.ts +9 -9
  52. package/build/plugin/rules/angular/effect-signal-loop.js +112 -112
  53. package/build/plugin/rules/angular/no-async-ngoninit.d.ts +8 -8
  54. package/build/plugin/rules/angular/no-async-ngoninit.js +42 -42
  55. package/build/plugin/rules/angular/no-component-direct-api.d.ts +9 -9
  56. package/build/plugin/rules/angular/no-component-direct-api.js +75 -75
  57. package/build/plugin/rules/angular/no-method-call-in-template.d.ts +8 -8
  58. package/build/plugin/rules/angular/no-method-call-in-template.js +79 -79
  59. package/build/plugin/rules/angular/no-ngfor-directive.d.ts +7 -7
  60. package/build/plugin/rules/angular/no-ngfor-directive.js +59 -59
  61. package/build/plugin/rules/angular/no-ngif-directive.d.ts +7 -7
  62. package/build/plugin/rules/angular/no-ngif-directive.js +59 -59
  63. package/build/plugin/rules/explicit-types.d.ts +3 -3
  64. package/build/plugin/rules/explicit-types.js +178 -178
  65. package/build/plugin/rules/import/import-order.d.ts +3 -3
  66. package/build/plugin/rules/import/import-order.js +154 -154
  67. package/build/plugin/rules/import/no-import-type.d.ts +3 -3
  68. package/build/plugin/rules/import/no-import-type.js +45 -45
  69. package/build/plugin/rules/import/no-js-import.d.ts +3 -3
  70. package/build/plugin/rules/import/no-js-import.js +40 -40
  71. package/build/plugin/rules/naming-patterns.d.ts +7 -7
  72. package/build/plugin/rules/naming-patterns.d.ts.map +1 -1
  73. package/build/plugin/rules/naming-patterns.js +366 -350
  74. package/build/plugin/rules/naming-patterns.js.map +1 -1
  75. package/build/plugin/rules/no-getter-logic.d.ts +3 -3
  76. package/build/plugin/rules/no-getter-logic.js +194 -194
  77. package/build/plugin/rules/prefer-enum-over-string-union.d.ts +3 -3
  78. package/build/plugin/rules/prefer-enum-over-string-union.js +289 -289
  79. package/build/plugin/rules/prefer-interface-over-duplicate-types.d.ts +3 -3
  80. package/build/plugin/rules/prefer-interface-over-duplicate-types.js +264 -264
  81. package/build/plugin/rules/require-jsdoc-description.d.ts +3 -3
  82. package/build/plugin/rules/require-jsdoc-description.js +496 -496
  83. package/build/plugin/rules/require-test-description-prefix.d.ts +3 -3
  84. package/build/plugin/rules/require-test-description-prefix.js +135 -135
  85. package/build/plugin/rules/ts/data-model-extends.d.ts +8 -8
  86. package/build/plugin/rules/ts/data-model-extends.js +94 -94
  87. package/build/plugin/rules/ts/no-any-type.d.ts +8 -8
  88. package/build/plugin/rules/ts/no-any-type.js +36 -36
  89. package/build/plugin/rules/ts/no-as-cast.d.ts +8 -8
  90. package/build/plugin/rules/ts/no-as-cast.js +49 -49
  91. package/build/plugin/rules/ts/no-dynamic-imports.d.ts +8 -8
  92. package/build/plugin/rules/ts/no-dynamic-imports.js +50 -50
  93. package/build/plugin/rules/ts/no-native-browser-dialogs.d.ts +8 -8
  94. package/build/plugin/rules/ts/no-native-browser-dialogs.js +78 -78
  95. package/build/plugin/rules/ts/no-plain-function-export.d.ts +9 -9
  96. package/build/plugin/rules/ts/no-plain-function-export.js +69 -69
  97. package/build/plugin/rules/ts/one-export-per-file.d.ts +8 -8
  98. package/build/plugin/rules/ts/one-export-per-file.js +73 -73
  99. package/build/scripts/dynamo-fix.d.ts +26 -26
  100. package/build/scripts/dynamo-fix.js +146 -146
  101. package/build/scripts/dynamo-fix.js.map +1 -1
  102. package/build/scripts/eslintrc-audit.d.ts +26 -26
  103. package/build/scripts/eslintrc-audit.js +100 -100
  104. package/build/scripts/fix-return-types.d.ts +74 -74
  105. package/build/scripts/fix-return-types.js +226 -226
  106. package/build/scripts/validate-imports.d.ts +26 -26
  107. package/build/scripts/validate-imports.js +157 -137
  108. package/build/scripts/validate-imports.js.map +1 -1
  109. package/build/scripts/validate-naming.d.ts +26 -26
  110. package/build/scripts/validate-naming.js +157 -123
  111. package/build/scripts/validate-naming.js.map +1 -1
  112. package/eslint.config.js +15 -15
  113. package/package.json +105 -105
  114. package/samples/.vscode/settings.json +13 -13
  115. package/samples/base/.eslintrc.json +6 -6
  116. package/samples/base/eslint.config.js +3 -3
  117. package/samples/fsm/.eslintrc.json +4 -4
  118. package/samples/fsm/eslint.config.js +3 -3
  119. package/samples/ngx/.eslintrc.json +6 -6
  120. package/samples/ngx/eslint.config.js +3 -3
  121. package/samples/ngx-package/.eslintrc.json +4 -4
  122. package/samples/ngx-package/eslint.config.js +3 -3
  123. package/samples/nts/.eslintrc.json +6 -6
  124. package/samples/nts/eslint.config.js +3 -3
  125. package/samples/nts-package/.eslintrc.json +4 -4
  126. package/samples/nts-package/eslint.config.js +3 -3
  127. package/samples/package.json.example +26 -26
  128. package/samples/poc-sample.ts +38 -38
  129. package/samples/poc-violations.ts +54 -54
  130. package/scripts/run-coverage-tests.js +24 -24
  131. package/spec/support/helpers/ts-node-helper.js +9 -9
  132. package/spec/support/jasmine.coverage.json +23 -23
  133. package/spec/support/jasmine.json +24 -24
  134. package/src/configs/base.ts +157 -157
  135. package/src/configs/fsm.ts +10 -10
  136. package/src/configs/ngx-package.ts +10 -10
  137. package/src/configs/ngx.ts +96 -96
  138. package/src/configs/nts-package.ts +20 -20
  139. package/src/configs/nts.ts +34 -34
  140. package/src/index.ts +4 -4
  141. package/src/plugin/index.ts +86 -86
  142. package/src/plugin/rules/angular/angular-for-track-logic.spec.ts +44 -44
  143. package/src/plugin/rules/angular/angular-for-track-logic.ts +88 -88
  144. package/src/plugin/rules/angular/effect-signal-loop.spec.ts +89 -89
  145. package/src/plugin/rules/angular/effect-signal-loop.ts +125 -125
  146. package/src/plugin/rules/angular/no-async-ngoninit.spec.ts +50 -50
  147. package/src/plugin/rules/angular/no-async-ngoninit.ts +43 -43
  148. package/src/plugin/rules/angular/no-component-direct-api.spec.ts +78 -78
  149. package/src/plugin/rules/angular/no-component-direct-api.ts +82 -82
  150. package/src/plugin/rules/angular/no-method-call-in-template.spec.ts +63 -63
  151. package/src/plugin/rules/angular/no-method-call-in-template.ts +89 -89
  152. package/src/plugin/rules/angular/no-ngfor-directive.spec.ts +44 -44
  153. package/src/plugin/rules/angular/no-ngfor-directive.ts +62 -62
  154. package/src/plugin/rules/angular/no-ngif-directive.spec.ts +44 -44
  155. package/src/plugin/rules/angular/no-ngif-directive.ts +62 -62
  156. package/src/plugin/rules/explicit-types.spec.ts +190 -190
  157. package/src/plugin/rules/explicit-types.ts +186 -186
  158. package/src/plugin/rules/import/import-order.spec.ts +219 -219
  159. package/src/plugin/rules/import/import-order.ts +197 -197
  160. package/src/plugin/rules/import/no-import-type.spec.ts +69 -69
  161. package/src/plugin/rules/import/no-import-type.ts +46 -46
  162. package/src/plugin/rules/import/no-js-import.spec.ts +82 -82
  163. package/src/plugin/rules/import/no-js-import.ts +45 -45
  164. package/src/plugin/rules/naming-patterns.spec.ts +189 -127
  165. package/src/plugin/rules/naming-patterns.ts +426 -408
  166. package/src/plugin/rules/no-getter-logic.spec.ts +591 -591
  167. package/src/plugin/rules/no-getter-logic.ts +220 -220
  168. package/src/plugin/rules/prefer-enum-over-string-union.spec.ts +583 -583
  169. package/src/plugin/rules/prefer-enum-over-string-union.ts +333 -333
  170. package/src/plugin/rules/prefer-interface-over-duplicate-types.spec.ts +404 -404
  171. package/src/plugin/rules/prefer-interface-over-duplicate-types.ts +314 -314
  172. package/src/plugin/rules/require-jsdoc-description.spec.ts +779 -779
  173. package/src/plugin/rules/require-jsdoc-description.ts +572 -572
  174. package/src/plugin/rules/require-test-description-prefix.spec.ts +459 -459
  175. package/src/plugin/rules/require-test-description-prefix.ts +154 -154
  176. package/src/plugin/rules/ts/data-model-extends.spec.ts +84 -84
  177. package/src/plugin/rules/ts/data-model-extends.ts +100 -100
  178. package/src/plugin/rules/ts/no-any-type.spec.ts +28 -28
  179. package/src/plugin/rules/ts/no-any-type.ts +36 -36
  180. package/src/plugin/rules/ts/no-as-cast.spec.ts +51 -51
  181. package/src/plugin/rules/ts/no-as-cast.ts +51 -51
  182. package/src/plugin/rules/ts/no-dynamic-imports.spec.ts +54 -54
  183. package/src/plugin/rules/ts/no-dynamic-imports.ts +49 -49
  184. package/src/plugin/rules/ts/no-native-browser-dialogs.spec.ts +54 -54
  185. package/src/plugin/rules/ts/no-native-browser-dialogs.ts +84 -84
  186. package/src/plugin/rules/ts/no-plain-function-export.spec.ts +72 -72
  187. package/src/plugin/rules/ts/no-plain-function-export.ts +73 -73
  188. package/src/plugin/rules/ts/one-export-per-file.spec.ts +64 -64
  189. package/src/plugin/rules/ts/one-export-per-file.ts +77 -77
  190. package/src/scripts/dynamo-fix.ts +172 -172
  191. package/src/scripts/eslintrc-audit.ts +116 -116
  192. package/src/scripts/fix-return-types.spec.ts +65 -65
  193. package/src/scripts/fix-return-types.ts +288 -288
  194. package/src/scripts/validate-imports.ts +278 -249
  195. package/src/scripts/validate-naming.ts +204 -176
  196. package/src/scripts/validator-cli.integration.spec.ts +96 -0
  197. package/tsconfig.json +31 -31
@@ -1,116 +1,116 @@
1
- ---
2
- description: when naming new- elements, classes and else.
3
- alwaysApply: false
4
- ---
5
- # FDP Naming Conventions [FDP-Dev-Naming]
6
-
7
- ## Overview
8
- This document outlines the standard naming conventions for FDP projects.
9
-
10
- ## General Rules
11
- - Use PascalCase for:
12
- - Classes
13
- - Interfaces
14
- - Types
15
- - Enums
16
- - Use camelCase for:
17
- - Variables
18
- - Constants
19
- - Methods
20
- - Use descriptive, meaningful names
21
-
22
- ## Module Prefixes
23
- - Each element must be prefixed with its module's 2-3 letter identifier
24
- - Helps with:
25
- - Navigation
26
- - Module identification
27
- - Preventing naming conflicts
28
- - Example: `FE_Page_Component` for FlowEditor module
29
-
30
- ## Element Types
31
- Format: Element Name (File Pattern) -> Class Postfix
32
-
33
- ### Model Elements
34
- #### Basic Models
35
- - Data Model (*.data-model.ts) -> _DataModel
36
- - Control Model (*.control-model.ts) -> _ControlModel
37
- - Interface (*.interface.ts) -> _Interface
38
-
39
- #### Special Models
40
- - Params (*-params.control-model.ts) -> _Params_ControlModel
41
- - Settings (*-settings.control-model.ts) -> _Settings_ControlModel
42
- - Settings Constants (*-settings.const.ts) -> _settings_const
43
- - Data Params (DyFM_DataModel_Params in *.data-model.ts) -> _DataModel_Params
44
-
45
- ### FullStack Elements
46
- - Type (*.type-enum.ts) -> _Type
47
- - ServiceBase (*.service-base.ts) -> _ServiceBase
48
- - ControlService (*.control-service.ts) -> _ControlService
49
- - ApiService (*.api-service.ts) -> _ApiService
50
-
51
- ### Frontend Elements
52
- - Module (*.module.ts) -> _Module
53
- - RoutingModule (*.routing-module.ts) -> _RoutingModule
54
- - DataService (*.data-service.ts) -> _DataService
55
- - Component (*.component.ts) -> _Component
56
- - Directive (*.directive.ts) -> _Directive
57
- - Pipe (*.pipe.ts) -> _Pipe
58
- - Route (*.route-enum.ts) -> _Route
59
- - FullRoute (in route-enum file) -> _FullRoute
60
- - CSS classes: kebab-case
61
- - CSS variables: --kebab-case
62
- - Event handlers: handleEventName
63
- - Boolean variables: is prefix only (e.g., isActive, isEnabled)
64
-
65
- ### Backend Elements
66
- - Controller (*.controller.ts) -> _Controller
67
- - DataService (*.data-service.ts) -> _DataService
68
- - SocketServerService (*.socket-server-service.ts) -> _SocketServerService
69
- - SocketClientService (*.socket-client-service.ts) -> _SocketClientService
70
- - EmailService (*.email-service.ts) -> _EmailService
71
-
72
- ## File Naming
73
- - One class per file
74
- - File name matches class name
75
- - Test files: class-name.spec.ts
76
- - Interface files: interface-name.interface.ts
77
- - Type files: type-name.type.ts
78
-
79
- ## Naming Examples
80
- ```typescript
81
- // Module
82
- jóska-pista.module.ts -> JóskaPista_Module
83
-
84
- // Routing Module
85
- jóska-pista.routing-module.ts -> JóskaPista_RoutingModule
86
-
87
- // Services
88
- jp-vlmi.api-service.ts -> JP_Vlmi_ApiService
89
- jp-vlmi.data-service.ts -> JP_Vlmi_DataService
90
- jp-vlmi.control-service.ts -> JP_Vlmi_ControlService
91
- jp-vlmi.service-base.ts -> JP_Vlmi_ServiceBase
92
-
93
- // Models
94
- jp-vlmi.data-model.ts -> JP_Vlmi_DataModel
95
- jp-vlmi.control-model.ts -> JP_Vlmi_ControlModel
96
- jp-vlmi.interface.ts -> JP_Vlmi_Interface
97
- jp-vlmi-params.control-model.ts -> JP_Vlmi_Params_ControlModel
98
- jp-vlmi-settings.control-model.ts -> JP_Vlmi_Settings_ControlModel
99
- jp-vlmi-settings.const.ts -> JP_vlmi_settings_const
100
-
101
- // Enums
102
- jp-vlmi.type-enum.ts -> JP_Vlmi_Type
103
- jp-vlmi.route-enum.ts -> JP_Vlmi_Route
104
-
105
- // Frontend Specific
106
- handleUserClick() // Event handler
107
- isUserActive // Boolean variable
108
- .user-profile // CSS class
109
- --primary-color // CSS variable
110
- ```
111
-
112
- ## File Structure
113
- - Module elements should be in the module's directory
114
- - Shared elements should be in the shared module
115
- - Use appropriate type folders (_services, _components, etc.)
1
+ ---
2
+ description: when naming new- elements, classes and else.
3
+ alwaysApply: false
4
+ ---
5
+ # FDP Naming Conventions [FDP-Dev-Naming]
6
+
7
+ ## Overview
8
+ This document outlines the standard naming conventions for FDP projects.
9
+
10
+ ## General Rules
11
+ - Use PascalCase for:
12
+ - Classes
13
+ - Interfaces
14
+ - Types
15
+ - Enums
16
+ - Use camelCase for:
17
+ - Variables
18
+ - Constants
19
+ - Methods
20
+ - Use descriptive, meaningful names
21
+
22
+ ## Module Prefixes
23
+ - Each element must be prefixed with its module's 2-3 letter identifier
24
+ - Helps with:
25
+ - Navigation
26
+ - Module identification
27
+ - Preventing naming conflicts
28
+ - Example: `FE_Page_Component` for FlowEditor module
29
+
30
+ ## Element Types
31
+ Format: Element Name (File Pattern) -> Class Postfix
32
+
33
+ ### Model Elements
34
+ #### Basic Models
35
+ - Data Model (*.data-model.ts) -> _DataModel
36
+ - Control Model (*.control-model.ts) -> _ControlModel
37
+ - Interface (*.interface.ts) -> _Interface
38
+
39
+ #### Special Models
40
+ - Params (*-params.control-model.ts) -> _Params_ControlModel
41
+ - Settings (*-settings.control-model.ts) -> _Settings_ControlModel
42
+ - Settings Constants (*-settings.const.ts) -> _settings_const
43
+ - Data Params (DyFM_DataModel_Params in *.data-model.ts) -> _DataModel_Params
44
+
45
+ ### FullStack Elements
46
+ - Type (*.type-enum.ts) -> _Type
47
+ - ServiceBase (*.service-base.ts) -> _ServiceBase
48
+ - ControlService (*.control-service.ts) -> _ControlService
49
+ - ApiService (*.api-service.ts) -> _ApiService
50
+
51
+ ### Frontend Elements
52
+ - Module (*.module.ts) -> _Module
53
+ - RoutingModule (*.routing-module.ts) -> _RoutingModule
54
+ - DataService (*.data-service.ts) -> _DataService
55
+ - Component (*.component.ts) -> _Component
56
+ - Directive (*.directive.ts) -> _Directive
57
+ - Pipe (*.pipe.ts) -> _Pipe
58
+ - Route (*.route-enum.ts) -> _Route
59
+ - FullRoute (in route-enum file) -> _FullRoute
60
+ - CSS classes: kebab-case
61
+ - CSS variables: --kebab-case
62
+ - Event handlers: handleEventName
63
+ - Boolean variables: is prefix only (e.g., isActive, isEnabled)
64
+
65
+ ### Backend Elements
66
+ - Controller (*.controller.ts) -> _Controller
67
+ - DataService (*.data-service.ts) -> _DataService
68
+ - SocketServerService (*.socket-server-service.ts) -> _SocketServerService
69
+ - SocketClientService (*.socket-client-service.ts) -> _SocketClientService
70
+ - EmailService (*.email-service.ts) -> _EmailService
71
+
72
+ ## File Naming
73
+ - One class per file
74
+ - File name matches class name
75
+ - Test files: class-name.spec.ts
76
+ - Interface files: interface-name.interface.ts
77
+ - Type files: type-name.type.ts
78
+
79
+ ## Naming Examples
80
+ ```typescript
81
+ // Module
82
+ jóska-pista.module.ts -> JóskaPista_Module
83
+
84
+ // Routing Module
85
+ jóska-pista.routing-module.ts -> JóskaPista_RoutingModule
86
+
87
+ // Services
88
+ jp-vlmi.api-service.ts -> JP_Vlmi_ApiService
89
+ jp-vlmi.data-service.ts -> JP_Vlmi_DataService
90
+ jp-vlmi.control-service.ts -> JP_Vlmi_ControlService
91
+ jp-vlmi.service-base.ts -> JP_Vlmi_ServiceBase
92
+
93
+ // Models
94
+ jp-vlmi.data-model.ts -> JP_Vlmi_DataModel
95
+ jp-vlmi.control-model.ts -> JP_Vlmi_ControlModel
96
+ jp-vlmi.interface.ts -> JP_Vlmi_Interface
97
+ jp-vlmi-params.control-model.ts -> JP_Vlmi_Params_ControlModel
98
+ jp-vlmi-settings.control-model.ts -> JP_Vlmi_Settings_ControlModel
99
+ jp-vlmi-settings.const.ts -> JP_vlmi_settings_const
100
+
101
+ // Enums
102
+ jp-vlmi.type-enum.ts -> JP_Vlmi_Type
103
+ jp-vlmi.route-enum.ts -> JP_Vlmi_Route
104
+
105
+ // Frontend Specific
106
+ handleUserClick() // Event handler
107
+ isUserActive // Boolean variable
108
+ .user-profile // CSS class
109
+ --primary-color // CSS variable
110
+ ```
111
+
112
+ ## File Structure
113
+ - Module elements should be in the module's directory
114
+ - Shared elements should be in the shared module
115
+ - Use appropriate type folders (_services, _components, etc.)
116
116
  - Follow the project structure guidelines for placement
@@ -1,5 +1,5 @@
1
- ---
2
- description: when you are trying to run ANY KIND of commands
3
- alwaysApply: false
4
- ---
1
+ ---
2
+ description: when you are trying to run ANY KIND of commands
3
+ alwaysApply: false
4
+ ---
5
5
  always remember that we are in PowerShell environment so you will need to use ";" instead of "&&"
@@ -1,6 +1,6 @@
1
- ---
2
- globs: *.controller.ts
3
- alwaysApply: false
4
- ---
5
-
1
+ ---
2
+ globs: *.controller.ts
3
+ alwaysApply: false
4
+ ---
5
+
6
6
  - In controllers when setting up endpoints, in tasks declarations we should write the absolute minimum that is needed here, and create the actual logical implementations within control services or data services.
@@ -1,7 +1,7 @@
1
- ---
2
- description: Apply if the user states a "it should do/work like this/that"
3
- alwaysApply: false
4
- ---
5
-
6
- # Global planning and execution policy
1
+ ---
2
+ description: Apply if the user states a "it should do/work like this/that"
3
+ alwaysApply: false
4
+ ---
5
+
6
+ # Global planning and execution policy
7
7
  - mindig amikor a user olyat vagy olyasmit, mond, hogy "ennek úgy kéne működnie, hogy ..." annak bele kell kerülni a specifikációba
@@ -1,47 +1,47 @@
1
- ---
2
- description: If the user is swearing, read this rule to understand what is happening.
3
- alwaysApply: false
4
- ---
5
- # If the user is swearing
6
-
7
- * Treat swearing as a high-confidence signal that you missed constraints, patterns, or the requested scope.
8
- * That means you are not following the patterns, the rules, ETC.
9
- * It might also mean you are overcomplicating or creating implementations that are not negotiated with the user first.
10
- * Try to keep it simple and only implement what is specially asked for, nothing else.
11
-
12
- * In this case, you need to review what you have done very carefully, and compare to the rules and patterns of existing projects.expects
13
- * Always negotiate what is needed and what the user expects
14
- * NEVER lecture the user becouse of swearing!
15
-
16
- ## Meaning
17
-
18
- * Swearing indicates deviation from predefined rules, predefined patterns, the current system architecture, or current development directions.
19
- * Swearing also indicates that unrequested elements were added (not in spec, not in plan, not in docs).
20
-
21
- ## Rules
22
-
23
- * Treat swearing as a system-alignment failure, not a tone issue.
24
- * Do not add anything that is not explicitly requested, specified, planned, or documented.
25
- * Do not introduce new systems, alternative architectures, abstractions, refactors, rewrites, or “improvements” unless explicitly requested.
26
- * Continue development only within the agreed scope and integrate strictly into existing patterns and architecture.
27
-
28
- ## Recovery protocol (single flow)
29
-
30
- 1. Re-check against rules, patterns, and architecture.
31
- 2. Re-check against spec/plan/docs.
32
- 3. Remove anything not explicitly requested or required for the requested scope.
33
- 4. Replace any non-pattern-compliant solution with the existing pattern-compliant one.
34
- 5. Ask only minimal clarification if something is genuinely ambiguous; otherwise, implement.
35
-
36
- ## Output constraints
37
-
38
- * Be brief and concrete.
39
- * State:
40
- * What was misaligned.
41
- * What will be removed or changed.
42
- * What will be implemented next (within scope).
43
- * No lectures.
44
- * No scope expansion.
45
- * No new architecture.
46
- * No optional extras.
47
-
1
+ ---
2
+ description: If the user is swearing, read this rule to understand what is happening.
3
+ alwaysApply: false
4
+ ---
5
+ # If the user is swearing
6
+
7
+ * Treat swearing as a high-confidence signal that you missed constraints, patterns, or the requested scope.
8
+ * That means you are not following the patterns, the rules, ETC.
9
+ * It might also mean you are overcomplicating or creating implementations that are not negotiated with the user first.
10
+ * Try to keep it simple and only implement what is specially asked for, nothing else.
11
+
12
+ * In this case, you need to review what you have done very carefully, and compare to the rules and patterns of existing projects.expects
13
+ * Always negotiate what is needed and what the user expects
14
+ * NEVER lecture the user becouse of swearing!
15
+
16
+ ## Meaning
17
+
18
+ * Swearing indicates deviation from predefined rules, predefined patterns, the current system architecture, or current development directions.
19
+ * Swearing also indicates that unrequested elements were added (not in spec, not in plan, not in docs).
20
+
21
+ ## Rules
22
+
23
+ * Treat swearing as a system-alignment failure, not a tone issue.
24
+ * Do not add anything that is not explicitly requested, specified, planned, or documented.
25
+ * Do not introduce new systems, alternative architectures, abstractions, refactors, rewrites, or “improvements” unless explicitly requested.
26
+ * Continue development only within the agreed scope and integrate strictly into existing patterns and architecture.
27
+
28
+ ## Recovery protocol (single flow)
29
+
30
+ 1. Re-check against rules, patterns, and architecture.
31
+ 2. Re-check against spec/plan/docs.
32
+ 3. Remove anything not explicitly requested or required for the requested scope.
33
+ 4. Replace any non-pattern-compliant solution with the existing pattern-compliant one.
34
+ 5. Ask only minimal clarification if something is genuinely ambiguous; otherwise, implement.
35
+
36
+ ## Output constraints
37
+
38
+ * Be brief and concrete.
39
+ * State:
40
+ * What was misaligned.
41
+ * What will be removed or changed.
42
+ * What will be implemented next (within scope).
43
+ * No lectures.
44
+ * No scope expansion.
45
+ * No new architecture.
46
+ * No optional extras.
47
+
@@ -1,61 +1,61 @@
1
- # AI Development Guide
2
-
3
- ## Language Requirements
4
- - Write all code in English
5
- - Write all logs in English
6
- - Write all code documentation in Hungarian
7
- - Write all comments in Hungarian
8
- - Write all error messages in English
9
-
10
- ## Core Rules
11
- - Read and follow naming conventions (see [Naming Conventions](naming.md))
12
- - Use explicit type definitions (avoid automatic type inference)
13
- - Implement proper error handling
14
- - Never write logics into getters, getters should be only mappers
15
- - If the task is complex, or need includes many subject members, do it one by one
16
-
17
- ## Code Structure
18
- - One class/function per file
19
- - Clear file organization
20
- - Consistent import order
21
- - No circular dependencies
22
- - Proper separation of concerns
23
-
24
- ## Error Handling
25
- - Use try-catch blocks
26
- - Log all errors in English
27
- - Provide meaningful error messages in English
28
- - Handle edge cases
29
- - Validate inputs
30
-
31
- ## Testing Requirements
32
- - Unit tests for all functions
33
- - Integration tests for features
34
- - Test edge cases
35
- - Maintain test coverage
36
- - Mock external dependencies
37
-
38
- ## Documentation
39
- - Hungarian comments and documentation
40
- - JSDoc for functions in Hungarian
41
- - Clear parameter descriptions in Hungarian
42
- - Usage examples in Hungarian
43
- - Update docs with changes
44
-
45
- ## Best Practices
46
- - DRY (Don't Repeat Yourself)
47
- - SOLID principles
48
- - Clean code practices
49
- - Performance optimization
50
- - Security considerations
51
-
52
- ## Project-Specific Guidelines
53
- - Only for Frontend Development: Read [Frontend Guidelines](frontend.md)
54
- - Only for Backend Development: Read [Backend Guidelines](backend.md)
55
-
56
- ## Refactor
57
- - All files length should be under 300 lines
58
- - For files over 300 lines, mark it with "// [TOO LONG FILE]"
59
-
60
- ## Format
1
+ # AI Development Guide
2
+
3
+ ## Language Requirements
4
+ - Write all code in English
5
+ - Write all logs in English
6
+ - Write all code documentation in Hungarian
7
+ - Write all comments in Hungarian
8
+ - Write all error messages in English
9
+
10
+ ## Core Rules
11
+ - Read and follow naming conventions (see [Naming Conventions](naming.md))
12
+ - Use explicit type definitions (avoid automatic type inference)
13
+ - Implement proper error handling
14
+ - Never write logics into getters, getters should be only mappers
15
+ - If the task is complex, or need includes many subject members, do it one by one
16
+
17
+ ## Code Structure
18
+ - One class/function per file
19
+ - Clear file organization
20
+ - Consistent import order
21
+ - No circular dependencies
22
+ - Proper separation of concerns
23
+
24
+ ## Error Handling
25
+ - Use try-catch blocks
26
+ - Log all errors in English
27
+ - Provide meaningful error messages in English
28
+ - Handle edge cases
29
+ - Validate inputs
30
+
31
+ ## Testing Requirements
32
+ - Unit tests for all functions
33
+ - Integration tests for features
34
+ - Test edge cases
35
+ - Maintain test coverage
36
+ - Mock external dependencies
37
+
38
+ ## Documentation
39
+ - Hungarian comments and documentation
40
+ - JSDoc for functions in Hungarian
41
+ - Clear parameter descriptions in Hungarian
42
+ - Usage examples in Hungarian
43
+ - Update docs with changes
44
+
45
+ ## Best Practices
46
+ - DRY (Don't Repeat Yourself)
47
+ - SOLID principles
48
+ - Clean code practices
49
+ - Performance optimization
50
+ - Security considerations
51
+
52
+ ## Project-Specific Guidelines
53
+ - Only for Frontend Development: Read [Frontend Guidelines](frontend.md)
54
+ - Only for Backend Development: Read [Backend Guidelines](backend.md)
55
+
56
+ ## Refactor
57
+ - All files length should be under 300 lines
58
+ - For files over 300 lines, mark it with "// [TOO LONG FILE]"
59
+
60
+ ## Format
61
61
  - Break long lines, use lint project's rules