@oalacea/daemon 0.5.0 → 0.6.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.
Files changed (222) hide show
  1. package/LICENSE +23 -23
  2. package/README.md +147 -141
  3. package/bin/Dockerfile +75 -74
  4. package/dist/cli/cli.d.ts +42 -0
  5. package/dist/cli/cli.d.ts.map +1 -0
  6. package/dist/cli/cli.js +89 -0
  7. package/dist/cli/cli.js.map +1 -0
  8. package/dist/cli/commands/detect.command.d.ts +39 -0
  9. package/dist/cli/commands/detect.command.d.ts.map +1 -0
  10. package/dist/cli/commands/detect.command.js +111 -0
  11. package/dist/cli/commands/detect.command.js.map +1 -0
  12. package/dist/cli/commands/index.d.ts +14 -0
  13. package/dist/cli/commands/index.d.ts.map +1 -0
  14. package/dist/cli/commands/index.js +11 -0
  15. package/dist/cli/commands/index.js.map +1 -0
  16. package/dist/cli/commands/init.command.d.ts +41 -0
  17. package/dist/cli/commands/init.command.d.ts.map +1 -0
  18. package/dist/cli/commands/init.command.js +111 -0
  19. package/dist/cli/commands/init.command.js.map +1 -0
  20. package/dist/cli/commands/test.command.d.ts +58 -0
  21. package/dist/cli/commands/test.command.d.ts.map +1 -0
  22. package/dist/cli/commands/test.command.js +180 -0
  23. package/dist/cli/commands/test.command.js.map +1 -0
  24. package/dist/cli/index.d.ts +8 -0
  25. package/dist/cli/index.d.ts.map +1 -0
  26. package/dist/cli/index.js +10 -0
  27. package/dist/cli/index.js.map +1 -0
  28. package/dist/core/config/daemon.config.d.ts +32 -0
  29. package/dist/core/config/daemon.config.d.ts.map +1 -0
  30. package/dist/core/config/daemon.config.js +83 -0
  31. package/dist/core/config/daemon.config.js.map +1 -0
  32. package/dist/core/config/index.d.ts +5 -0
  33. package/dist/core/config/index.d.ts.map +1 -0
  34. package/dist/core/config/index.js +5 -0
  35. package/dist/core/config/index.js.map +1 -0
  36. package/dist/core/constants.d.ts +36 -0
  37. package/dist/core/constants.d.ts.map +1 -0
  38. package/dist/core/constants.js +56 -0
  39. package/dist/core/constants.js.map +1 -0
  40. package/dist/core/types/common.types.d.ts +250 -0
  41. package/dist/core/types/common.types.d.ts.map +1 -0
  42. package/dist/core/types/common.types.js +7 -0
  43. package/dist/core/types/common.types.js.map +1 -0
  44. package/dist/core/types/detection.types.d.ts +232 -0
  45. package/dist/core/types/detection.types.d.ts.map +1 -0
  46. package/dist/core/types/detection.types.js +22 -0
  47. package/dist/core/types/detection.types.js.map +1 -0
  48. package/dist/core/types/docker.types.d.ts +322 -0
  49. package/dist/core/types/docker.types.d.ts.map +1 -0
  50. package/dist/core/types/docker.types.js +7 -0
  51. package/dist/core/types/docker.types.js.map +1 -0
  52. package/dist/core/types/index.d.ts +11 -0
  53. package/dist/core/types/index.d.ts.map +1 -0
  54. package/dist/core/types/index.js +7 -0
  55. package/dist/core/types/index.js.map +1 -0
  56. package/dist/core/types/project.types.d.ts +74 -0
  57. package/dist/core/types/project.types.d.ts.map +1 -0
  58. package/dist/core/types/project.types.js +7 -0
  59. package/dist/core/types/project.types.js.map +1 -0
  60. package/dist/core/types/shared.types.d.ts +118 -0
  61. package/dist/core/types/shared.types.d.ts.map +1 -0
  62. package/dist/core/types/shared.types.js +7 -0
  63. package/dist/core/types/shared.types.js.map +1 -0
  64. package/dist/core/types/test.types.d.ts +230 -0
  65. package/dist/core/types/test.types.d.ts.map +1 -0
  66. package/dist/core/types/test.types.js +7 -0
  67. package/dist/core/types/test.types.js.map +1 -0
  68. package/dist/services/detection/__tests__/framework-detector.test.d.ts +5 -0
  69. package/dist/services/detection/__tests__/framework-detector.test.d.ts.map +1 -0
  70. package/dist/services/detection/__tests__/framework-detector.test.js +52 -0
  71. package/dist/services/detection/__tests__/framework-detector.test.js.map +1 -0
  72. package/dist/services/detection/framework-detector.d.ts +179 -0
  73. package/dist/services/detection/framework-detector.d.ts.map +1 -0
  74. package/dist/services/detection/framework-detector.js +636 -0
  75. package/dist/services/detection/framework-detector.js.map +1 -0
  76. package/dist/services/detection/index.d.ts +10 -0
  77. package/dist/services/detection/index.d.ts.map +1 -0
  78. package/dist/services/detection/index.js +7 -0
  79. package/dist/services/detection/index.js.map +1 -0
  80. package/dist/services/docker/__tests__/docker-manager.test.d.ts +5 -0
  81. package/dist/services/docker/__tests__/docker-manager.test.d.ts.map +1 -0
  82. package/dist/services/docker/__tests__/docker-manager.test.js +67 -0
  83. package/dist/services/docker/__tests__/docker-manager.test.js.map +1 -0
  84. package/dist/services/docker/docker-manager.d.ts +157 -0
  85. package/dist/services/docker/docker-manager.d.ts.map +1 -0
  86. package/dist/services/docker/docker-manager.js +516 -0
  87. package/dist/services/docker/docker-manager.js.map +1 -0
  88. package/dist/services/docker/index.d.ts +9 -0
  89. package/dist/services/docker/index.d.ts.map +1 -0
  90. package/dist/services/docker/index.js +9 -0
  91. package/dist/services/docker/index.js.map +1 -0
  92. package/dist/services/index.d.ts +10 -0
  93. package/dist/services/index.d.ts.map +1 -0
  94. package/dist/services/index.js +8 -0
  95. package/dist/services/index.js.map +1 -0
  96. package/dist/shared/errors/__tests__/base.error.test.d.ts +5 -0
  97. package/dist/shared/errors/__tests__/base.error.test.d.ts.map +1 -0
  98. package/dist/shared/errors/__tests__/base.error.test.js +61 -0
  99. package/dist/shared/errors/__tests__/base.error.test.js.map +1 -0
  100. package/dist/shared/errors/__tests__/command.error.test.d.ts +5 -0
  101. package/dist/shared/errors/__tests__/command.error.test.d.ts.map +1 -0
  102. package/dist/shared/errors/__tests__/command.error.test.js +62 -0
  103. package/dist/shared/errors/__tests__/command.error.test.js.map +1 -0
  104. package/dist/shared/errors/__tests__/file.error.test.d.ts +5 -0
  105. package/dist/shared/errors/__tests__/file.error.test.d.ts.map +1 -0
  106. package/dist/shared/errors/__tests__/file.error.test.js +75 -0
  107. package/dist/shared/errors/__tests__/file.error.test.js.map +1 -0
  108. package/dist/shared/errors/__tests__/index.test.d.ts +5 -0
  109. package/dist/shared/errors/__tests__/index.test.d.ts.map +1 -0
  110. package/dist/shared/errors/__tests__/index.test.js +62 -0
  111. package/dist/shared/errors/__tests__/index.test.js.map +1 -0
  112. package/dist/shared/errors/__tests__/validation.error.test.d.ts +5 -0
  113. package/dist/shared/errors/__tests__/validation.error.test.d.ts.map +1 -0
  114. package/dist/shared/errors/__tests__/validation.error.test.js +79 -0
  115. package/dist/shared/errors/__tests__/validation.error.test.js.map +1 -0
  116. package/dist/shared/errors/base.error.d.ts +54 -0
  117. package/dist/shared/errors/base.error.d.ts.map +1 -0
  118. package/dist/shared/errors/base.error.js +85 -0
  119. package/dist/shared/errors/base.error.js.map +1 -0
  120. package/dist/shared/errors/command.error.d.ts +58 -0
  121. package/dist/shared/errors/command.error.d.ts.map +1 -0
  122. package/dist/shared/errors/command.error.js +102 -0
  123. package/dist/shared/errors/command.error.js.map +1 -0
  124. package/dist/shared/errors/detection.error.d.ts +42 -0
  125. package/dist/shared/errors/detection.error.d.ts.map +1 -0
  126. package/dist/shared/errors/detection.error.js +82 -0
  127. package/dist/shared/errors/detection.error.js.map +1 -0
  128. package/dist/shared/errors/docker.error.d.ts +142 -0
  129. package/dist/shared/errors/docker.error.d.ts.map +1 -0
  130. package/dist/shared/errors/docker.error.js +172 -0
  131. package/dist/shared/errors/docker.error.js.map +1 -0
  132. package/dist/shared/errors/file.error.d.ts +66 -0
  133. package/dist/shared/errors/file.error.d.ts.map +1 -0
  134. package/dist/shared/errors/file.error.js +93 -0
  135. package/dist/shared/errors/file.error.js.map +1 -0
  136. package/dist/shared/errors/index.d.ts +56 -0
  137. package/dist/shared/errors/index.d.ts.map +1 -0
  138. package/dist/shared/errors/index.js +86 -0
  139. package/dist/shared/errors/index.js.map +1 -0
  140. package/dist/shared/errors/validation.error.d.ts +67 -0
  141. package/dist/shared/errors/validation.error.d.ts.map +1 -0
  142. package/dist/shared/errors/validation.error.js +97 -0
  143. package/dist/shared/errors/validation.error.js.map +1 -0
  144. package/dist/shared/templates/index.d.ts +2 -0
  145. package/dist/shared/templates/index.d.ts.map +1 -0
  146. package/dist/shared/templates/index.js +2 -0
  147. package/dist/shared/templates/index.js.map +1 -0
  148. package/dist/shared/templates/prompt-builder.d.ts +2 -0
  149. package/dist/shared/templates/prompt-builder.d.ts.map +1 -0
  150. package/dist/shared/templates/prompt-builder.js +2 -0
  151. package/dist/shared/templates/prompt-builder.js.map +1 -0
  152. package/dist/shared/templates/template-engine.d.ts +2 -0
  153. package/dist/shared/templates/template-engine.d.ts.map +1 -0
  154. package/dist/shared/templates/template-engine.js +2 -0
  155. package/dist/shared/templates/template-engine.js.map +1 -0
  156. package/dist/shared/utils/__tests__/command-executor.test.d.ts +5 -0
  157. package/dist/shared/utils/__tests__/command-executor.test.d.ts.map +1 -0
  158. package/dist/shared/utils/__tests__/command-executor.test.js +45 -0
  159. package/dist/shared/utils/__tests__/command-executor.test.js.map +1 -0
  160. package/dist/shared/utils/__tests__/file-helper.test.d.ts +5 -0
  161. package/dist/shared/utils/__tests__/file-helper.test.d.ts.map +1 -0
  162. package/dist/shared/utils/__tests__/file-helper.test.js +71 -0
  163. package/dist/shared/utils/__tests__/file-helper.test.js.map +1 -0
  164. package/dist/shared/utils/__tests__/logger.test.d.ts +5 -0
  165. package/dist/shared/utils/__tests__/logger.test.d.ts.map +1 -0
  166. package/dist/shared/utils/__tests__/logger.test.js +83 -0
  167. package/dist/shared/utils/__tests__/logger.test.js.map +1 -0
  168. package/dist/shared/utils/command-executer.d.ts +2 -0
  169. package/dist/shared/utils/command-executer.d.ts.map +1 -0
  170. package/dist/shared/utils/command-executer.js +2 -0
  171. package/dist/shared/utils/command-executer.js.map +1 -0
  172. package/dist/shared/utils/command-executor.d.ts +255 -0
  173. package/dist/shared/utils/command-executor.d.ts.map +1 -0
  174. package/dist/shared/utils/command-executor.js +287 -0
  175. package/dist/shared/utils/command-executor.js.map +1 -0
  176. package/dist/shared/utils/file-helper.d.ts +86 -0
  177. package/dist/shared/utils/file-helper.d.ts.map +1 -0
  178. package/dist/shared/utils/file-helper.js +323 -0
  179. package/dist/shared/utils/file-helper.js.map +1 -0
  180. package/dist/shared/utils/index.d.ts +9 -0
  181. package/dist/shared/utils/index.d.ts.map +1 -0
  182. package/dist/shared/utils/index.js +9 -0
  183. package/dist/shared/utils/index.js.map +1 -0
  184. package/dist/shared/utils/logger.d.ts +163 -0
  185. package/dist/shared/utils/logger.d.ts.map +1 -0
  186. package/dist/shared/utils/logger.js +389 -0
  187. package/dist/shared/utils/logger.js.map +1 -0
  188. package/package.json +53 -34
  189. package/prompts/DEPS_EFFICIENCY.md +558 -558
  190. package/prompts/E2E.md +491 -491
  191. package/prompts/EXECUTE.md +1060 -1060
  192. package/prompts/INTEGRATION_API.md +484 -484
  193. package/prompts/INTEGRATION_DB.md +425 -425
  194. package/prompts/PERF_API.md +433 -433
  195. package/prompts/PERF_DB.md +430 -430
  196. package/prompts/PERF_FRONT.md +357 -357
  197. package/prompts/REMEDIATION.md +482 -482
  198. package/prompts/UNIT.md +260 -260
  199. package/templates/README.md +38 -38
  200. package/templates/k6/load-test.js +54 -54
  201. package/templates/playwright/e2e.spec.ts +61 -61
  202. package/templates/vitest/angular-component.test.ts +38 -38
  203. package/templates/vitest/api.test.ts +51 -51
  204. package/templates/vitest/component.test.ts +27 -27
  205. package/templates/vitest/hook.test.ts +36 -36
  206. package/templates/vitest/solid-component.test.ts +34 -34
  207. package/templates/vitest/svelte-component.test.ts +33 -33
  208. package/templates/vitest/vue-component.test.ts +39 -39
  209. package/CHANGELOG.md +0 -38
  210. package/agents/deps-analyzer.js +0 -366
  211. package/agents/detector.js +0 -570
  212. package/agents/fix-engine.js +0 -305
  213. package/agents/lighthouse-scanner.js +0 -405
  214. package/agents/perf-analyzer.js +0 -294
  215. package/agents/perf-front-analyzer.js +0 -229
  216. package/agents/test-generator.js +0 -387
  217. package/agents/test-runner.js +0 -318
  218. package/bin/cli.js +0 -449
  219. package/lib/config.js +0 -250
  220. package/lib/docker.js +0 -207
  221. package/lib/reporter.js +0 -297
  222. package/scripts/dev.js +0 -106
@@ -0,0 +1,389 @@
1
+ /**
2
+ * Logger structuré avec support ANSI et contextes
3
+ *
4
+ * @module shared/utils/logger
5
+ */
6
+ /**
7
+ * Niveaux de log supportés
8
+ */
9
+ export var LogLevel;
10
+ (function (LogLevel) {
11
+ LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG";
12
+ LogLevel[LogLevel["INFO"] = 1] = "INFO";
13
+ LogLevel[LogLevel["WARN"] = 2] = "WARN";
14
+ LogLevel[LogLevel["ERROR"] = 3] = "ERROR";
15
+ LogLevel[LogLevel["SILENT"] = 4] = "SILENT";
16
+ })(LogLevel || (LogLevel = {}));
17
+ /**
18
+ * Codes de couleurs ANSI pour la console
19
+ */
20
+ const ANSI_COLORS = {
21
+ reset: '\x1b[0m',
22
+ bright: '\x1b[1m',
23
+ dim: '\x1b[2m',
24
+ // Couleurs
25
+ black: '\x1b[30m',
26
+ red: '\x1b[31m',
27
+ green: '\x1b[32m',
28
+ yellow: '\x1b[33m',
29
+ blue: '\x1b[34m',
30
+ magenta: '\x1b[35m',
31
+ cyan: '\x1b[36m',
32
+ white: '\x1b[37m',
33
+ // Fond
34
+ bgRed: '\x1b[41m',
35
+ bgGreen: '\x1b[42m',
36
+ bgYellow: '\x1b[43m',
37
+ };
38
+ /**
39
+ * Configuration des niveaux avec leurs styles visuels
40
+ */
41
+ const LEVEL_CONFIGS = {
42
+ [LogLevel.DEBUG]: {
43
+ name: 'DEBUG',
44
+ color: ANSI_COLORS.dim,
45
+ prefix: '⚙',
46
+ },
47
+ [LogLevel.INFO]: {
48
+ name: 'INFO',
49
+ color: ANSI_COLORS.blue,
50
+ prefix: 'ℹ',
51
+ },
52
+ [LogLevel.WARN]: {
53
+ name: 'WARN',
54
+ color: ANSI_COLORS.yellow,
55
+ prefix: '⚠',
56
+ },
57
+ [LogLevel.ERROR]: {
58
+ name: 'ERROR',
59
+ color: ANSI_COLORS.red,
60
+ prefix: '✖',
61
+ },
62
+ [LogLevel.SILENT]: {
63
+ name: 'SILENT',
64
+ color: ANSI_COLORS.reset,
65
+ prefix: '',
66
+ },
67
+ };
68
+ /**
69
+ * Logger structuré avec support ANSI et contextes
70
+ *
71
+ * @example
72
+ * ```ts
73
+ * const logger = new Logger({ context: 'MyModule' });
74
+ * logger.info('Démarrage du module');
75
+ * logger.warn('Attention', { detail: 'valeur manquante' });
76
+ *
77
+ * // Contexte imbriqué
78
+ * const dbLogger = logger.createContext('Database');
79
+ * dbLogger.error('Erreur de connexion', new Error('ECONNREFUSED'));
80
+ * ```
81
+ */
82
+ export class Logger {
83
+ context;
84
+ level;
85
+ format;
86
+ noColor;
87
+ timestampFn;
88
+ // État global partagé
89
+ static globalLevel = null;
90
+ static globalNoColor = null;
91
+ /**
92
+ * Crée une nouvelle instance de Logger
93
+ */
94
+ constructor(options = {}) {
95
+ this.context = options.context;
96
+ this.level = options.level ?? Logger.globalLevel ?? LogLevel.INFO;
97
+ this.format = options.format ?? 'pretty';
98
+ this.noColor = options.noColor ?? Logger.globalNoColor ?? false;
99
+ this.timestampFn =
100
+ typeof options.timestamp === 'function'
101
+ ? options.timestamp
102
+ : options.timestamp === false
103
+ ? () => ''
104
+ : () => new Date().toISOString();
105
+ }
106
+ /**
107
+ * Définit le niveau de log global
108
+ */
109
+ static setGlobalLevel(level) {
110
+ Logger.globalLevel = level;
111
+ }
112
+ /**
113
+ * Définit l'option de couleur globale
114
+ */
115
+ static setGlobalNoColor(noColor) {
116
+ Logger.globalNoColor = noColor;
117
+ }
118
+ /**
119
+ * Définit le niveau de log pour cette instance
120
+ */
121
+ setLevel(level) {
122
+ this.level = level;
123
+ }
124
+ /**
125
+ * Retourne le niveau de log actuel
126
+ */
127
+ getLevel() {
128
+ return this.level;
129
+ }
130
+ /**
131
+ * Log un message de niveau DEBUG
132
+ */
133
+ debug(message, meta) {
134
+ this.log(LogLevel.DEBUG, message, meta);
135
+ }
136
+ /**
137
+ * Log un message de niveau INFO
138
+ */
139
+ info(message, meta) {
140
+ this.log(LogLevel.INFO, message, meta);
141
+ }
142
+ /**
143
+ * Log un message de niveau WARN
144
+ */
145
+ warn(message, meta) {
146
+ this.log(LogLevel.WARN, message, meta);
147
+ }
148
+ /**
149
+ * Log un message de niveau ERROR
150
+ */
151
+ error(message, error) {
152
+ let meta;
153
+ if (error instanceof Error) {
154
+ meta = {
155
+ error: {
156
+ name: error.name,
157
+ message: error.message,
158
+ stack: error.stack,
159
+ },
160
+ };
161
+ }
162
+ else if (error !== undefined) {
163
+ meta = { error };
164
+ }
165
+ this.log(LogLevel.ERROR, message, meta);
166
+ }
167
+ /**
168
+ * Log un message de succès (vert)
169
+ */
170
+ success(message, meta) {
171
+ const level = LogLevel.INFO;
172
+ if (level < this.level) {
173
+ return;
174
+ }
175
+ const timestamp = this.timestampFn();
176
+ const config = LEVEL_CONFIGS[level];
177
+ if (this.format === 'json') {
178
+ this.logJson(level, message, meta, timestamp);
179
+ }
180
+ else {
181
+ this.logSuccess(message, meta, timestamp);
182
+ }
183
+ }
184
+ /**
185
+ * Log au format succès avec couleur verte
186
+ */
187
+ logSuccess(message, meta, timestamp) {
188
+ const parts = [];
189
+ // Timestamp
190
+ if (timestamp) {
191
+ const tsColor = this.noColor ? '' : ANSI_COLORS.dim;
192
+ const tsReset = this.noColor ? '' : ANSI_COLORS.reset;
193
+ parts.push(`${tsColor}${timestamp}${tsReset}`);
194
+ }
195
+ // Contexte
196
+ if (this.context) {
197
+ const ctxColor = this.noColor ? '' : ANSI_COLORS.cyan;
198
+ const ctxReset = this.noColor ? '' : ANSI_COLORS.reset;
199
+ parts.push(`${ctxColor}[${this.context}]${ctxReset}`);
200
+ }
201
+ // Succès avec coche verte
202
+ const successColor = this.noColor ? '' : ANSI_COLORS.green;
203
+ const successReset = this.noColor ? '' : ANSI_COLORS.reset;
204
+ parts.push(`${successColor}✓ SUCCESS${successReset}`);
205
+ // Message
206
+ parts.push(message);
207
+ const prefix = parts.join(' ');
208
+ // Affichage
209
+ if (meta !== undefined) {
210
+ const normalized = this.normalizeMetadata(meta);
211
+ const metaStr = this.noColor
212
+ ? JSON.stringify(normalized, null, 2)
213
+ : this.colorizeJson(normalized);
214
+ console.log(`${prefix} ${metaStr}`);
215
+ }
216
+ else {
217
+ console.log(prefix);
218
+ }
219
+ }
220
+ /**
221
+ * Crée un nouveau logger avec un contexte imbriqué
222
+ */
223
+ createContext(context) {
224
+ const fullContext = this.context ? `${this.context}:${context}` : context;
225
+ return new Logger({
226
+ context: fullContext,
227
+ level: this.level,
228
+ format: this.format,
229
+ noColor: this.noColor,
230
+ timestamp: this.timestampFn !== (() => ''),
231
+ });
232
+ }
233
+ /**
234
+ * Log interne avec gestion du niveau et du format
235
+ */
236
+ log(level, message, meta) {
237
+ if (level < this.level) {
238
+ return;
239
+ }
240
+ const timestamp = this.timestampFn();
241
+ const config = LEVEL_CONFIGS[level];
242
+ if (this.format === 'json') {
243
+ this.logJson(level, message, meta, timestamp);
244
+ }
245
+ else {
246
+ this.logPretty(level, message, meta, timestamp, config);
247
+ }
248
+ }
249
+ /**
250
+ * Log au format JSON structuré
251
+ */
252
+ logJson(level, message, meta, timestamp) {
253
+ const entry = {
254
+ level: LEVEL_CONFIGS[level].name,
255
+ message,
256
+ timestamp,
257
+ };
258
+ if (this.context) {
259
+ entry.context = this.context;
260
+ }
261
+ if (meta !== undefined) {
262
+ entry.metadata = this.normalizeMetadata(meta);
263
+ }
264
+ console.log(JSON.stringify(entry));
265
+ }
266
+ /**
267
+ * Log au format pretty avec couleurs ANSI
268
+ */
269
+ logPretty(level, message, meta, timestamp, config) {
270
+ const parts = [];
271
+ // Timestamp
272
+ if (timestamp) {
273
+ const tsColor = this.noColor ? '' : ANSI_COLORS.dim;
274
+ const tsReset = this.noColor ? '' : ANSI_COLORS.reset;
275
+ parts.push(`${tsColor}${timestamp}${tsReset}`);
276
+ }
277
+ // Contexte
278
+ if (this.context) {
279
+ const ctxColor = this.noColor ? '' : ANSI_COLORS.cyan;
280
+ const ctxReset = this.noColor ? '' : ANSI_COLORS.reset;
281
+ parts.push(`${ctxColor}[${this.context}]${ctxReset}`);
282
+ }
283
+ // Niveau
284
+ const levelColor = this.noColor ? '' : config.color;
285
+ const levelReset = this.noColor ? '' : ANSI_COLORS.reset;
286
+ parts.push(`${levelColor}${config.prefix} ${config.name}${levelReset}`);
287
+ // Message
288
+ parts.push(message);
289
+ const prefix = parts.length > 0 ? `${parts.join(' ')} ` : '';
290
+ // Affichage
291
+ if (meta !== undefined) {
292
+ const normalized = this.normalizeMetadata(meta);
293
+ const metaStr = this.noColor
294
+ ? JSON.stringify(normalized, null, 2)
295
+ : this.colorizeJson(normalized);
296
+ console.log(`${prefix}${metaStr}`);
297
+ }
298
+ else {
299
+ console.log(prefix);
300
+ }
301
+ }
302
+ /**
303
+ * Normalise les métadonnées en objet plat
304
+ */
305
+ normalizeMetadata(meta) {
306
+ if (meta === null) {
307
+ return {};
308
+ }
309
+ if (typeof meta === 'string') {
310
+ return { message: meta };
311
+ }
312
+ if (typeof meta === 'object') {
313
+ return meta;
314
+ }
315
+ return { value: meta };
316
+ }
317
+ /**
318
+ * Colore une sortie JSON pour la console
319
+ */
320
+ colorizeJson(obj, indent = 0) {
321
+ const indentStr = ' '.repeat(indent);
322
+ const nextIndentStr = ' '.repeat(indent + 1);
323
+ if (obj === null) {
324
+ return this.noColor ? 'null' : `${ANSI_COLORS.dim}null${ANSI_COLORS.reset}`;
325
+ }
326
+ if (typeof obj === 'string') {
327
+ const value = JSON.stringify(obj);
328
+ return this.noColor
329
+ ? value
330
+ : `${ANSI_COLORS.green}${value}${ANSI_COLORS.reset}`;
331
+ }
332
+ if (typeof obj === 'number') {
333
+ const value = String(obj);
334
+ return this.noColor
335
+ ? value
336
+ : `${ANSI_COLORS.magenta}${value}${ANSI_COLORS.reset}`;
337
+ }
338
+ if (typeof obj === 'boolean') {
339
+ const value = String(obj);
340
+ return this.noColor
341
+ ? value
342
+ : `${ANSI_COLORS.yellow}${value}${ANSI_COLORS.reset}`;
343
+ }
344
+ if (Array.isArray(obj)) {
345
+ if (obj.length === 0) {
346
+ return '[]';
347
+ }
348
+ const items = obj.map((item) => this.colorizeJson(item, indent + 1));
349
+ return `[\n${items.map((i) => `${nextIndentStr}${i}`).join(',\n')}\n${indentStr}]`;
350
+ }
351
+ if (typeof obj === 'object') {
352
+ const entries = Object.entries(obj);
353
+ if (entries.length === 0) {
354
+ return '{}';
355
+ }
356
+ const pairs = entries.map(([key, value]) => {
357
+ const coloredKey = this.noColor
358
+ ? JSON.stringify(key)
359
+ : `${ANSI_COLORS.blue}${JSON.stringify(key)}${ANSI_COLORS.reset}`;
360
+ return `${coloredKey}: ${this.colorizeJson(value, indent + 1)}`;
361
+ });
362
+ return `{\n${pairs.map((p) => `${nextIndentStr}${p}`).join(',\n')}\n${indentStr}}`;
363
+ }
364
+ return String(obj);
365
+ }
366
+ }
367
+ /**
368
+ * Logger racine sans contexte
369
+ */
370
+ export const rootLogger = new Logger();
371
+ /**
372
+ * Crée un nouveau logger avec un contexte
373
+ *
374
+ * @example
375
+ * ```ts
376
+ * import { createLogger } from './logger';
377
+ *
378
+ * const logger = createLogger('MyModule');
379
+ * logger.info('Hello world');
380
+ * ```
381
+ */
382
+ export function createLogger(context, options) {
383
+ return new Logger({ ...options, context });
384
+ }
385
+ /**
386
+ * Logger global pour les usages simples
387
+ */
388
+ export const logger = rootLogger;
389
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/shared/utils/logger.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,34 +1,53 @@
1
- {
2
- "name": "@oalacea/daemon",
3
- "version": "0.5.0",
4
- "description": "AI-powered automated test generation and remediation for web applications",
5
- "author": "Yanis",
6
- "license": "MIT",
7
- "repository": {
8
- "type": "git",
9
- "url": "https://github.com/Pamacea/daemon"
10
- },
11
- "bin": {
12
- "daemon": "./bin/cli.js"
13
- },
14
- "scripts": {
15
- "test": "echo \"Run: npx --yes @oalacea/daemon@latest\" && exit 0"
16
- },
17
- "keywords": [
18
- "testing",
19
- "automation",
20
- "ai",
21
- "e2e",
22
- "unit-tests",
23
- "integration-tests",
24
- "performance",
25
- "vitest",
26
- "playwright",
27
- "k6"
28
- ],
29
- "dependencies": {},
30
- "devDependencies": {},
31
- "engines": {
32
- "node": ">=18.0.0"
33
- }
34
- }
1
+ {
2
+ "name": "@oalacea/daemon",
3
+ "version": "0.6.0",
4
+ "description": "AI-powered automated test generation and remediation for web applications",
5
+ "author": "Yanis",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/Pamacea/daemon"
10
+ },
11
+ "type": "module",
12
+ "bin": {
13
+ "daemon": "./dist/cli/cli.js"
14
+ },
15
+ "scripts": {
16
+ "build": "tsc",
17
+ "dev": "tsx src/cli/index.ts",
18
+ "test": "vitest",
19
+ "test:run": "node --experimental-strip-types dist/cli/index.js",
20
+ "lint": "eslint src",
21
+ "typecheck": "tsc --noEmit",
22
+ "clean": "node -e \"require('fs').rmSync('dist', { recursive: true, force: true })\"",
23
+ "prepublishOnly": "npm run clean && npm run build"
24
+ },
25
+ "keywords": [
26
+ "testing",
27
+ "automation",
28
+ "ai",
29
+ "e2e",
30
+ "unit-tests",
31
+ "integration-tests",
32
+ "performance",
33
+ "vitest",
34
+ "playwright",
35
+ "k6"
36
+ ],
37
+ "devDependencies": {
38
+ "@types/node": "^20.19.33",
39
+ "eslint": "^8.56.0",
40
+ "tsx": "^4.7.0",
41
+ "typescript": "^5.9.3",
42
+ "vitest": "^1.2.0"
43
+ },
44
+ "engines": {
45
+ "node": ">=18.0.0"
46
+ },
47
+ "files": [
48
+ "dist",
49
+ "prompts",
50
+ "templates",
51
+ "bin/Dockerfile"
52
+ ]
53
+ }