gthinking 1.2.1 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/.eslintrc.js +34 -0
  2. package/ANALYSIS_SUMMARY.md +363 -0
  3. package/README.md +230 -245
  4. package/dist/analysis/analysis-engine.d.ts +63 -0
  5. package/dist/analysis/analysis-engine.d.ts.map +1 -0
  6. package/dist/analysis/analysis-engine.js +322 -0
  7. package/dist/analysis/analysis-engine.js.map +1 -0
  8. package/dist/core/config.d.ts +1419 -0
  9. package/dist/core/config.d.ts.map +1 -0
  10. package/dist/core/config.js +361 -0
  11. package/dist/core/config.js.map +1 -0
  12. package/dist/core/engine.d.ts +176 -0
  13. package/dist/core/engine.d.ts.map +1 -0
  14. package/dist/core/engine.js +604 -0
  15. package/dist/core/engine.js.map +1 -0
  16. package/dist/core/errors.d.ts +153 -0
  17. package/dist/core/errors.d.ts.map +1 -0
  18. package/dist/core/errors.js +287 -0
  19. package/dist/core/errors.js.map +1 -0
  20. package/dist/core/index.d.ts +7 -0
  21. package/dist/core/index.d.ts.map +1 -0
  22. package/dist/{types.js → core/index.js} +8 -4
  23. package/dist/core/index.js.map +1 -0
  24. package/dist/core/pipeline.d.ts +121 -0
  25. package/dist/core/pipeline.d.ts.map +1 -0
  26. package/dist/core/pipeline.js +289 -0
  27. package/dist/core/pipeline.js.map +1 -0
  28. package/dist/core/rate-limiter.d.ts +58 -0
  29. package/dist/core/rate-limiter.d.ts.map +1 -0
  30. package/dist/core/rate-limiter.js +133 -0
  31. package/dist/core/rate-limiter.js.map +1 -0
  32. package/dist/core/session-manager.d.ts +96 -0
  33. package/dist/core/session-manager.d.ts.map +1 -0
  34. package/dist/core/session-manager.js +223 -0
  35. package/dist/core/session-manager.js.map +1 -0
  36. package/dist/creativity/creativity-engine.d.ts +6 -0
  37. package/dist/creativity/creativity-engine.d.ts.map +1 -0
  38. package/dist/creativity/creativity-engine.js +17 -0
  39. package/dist/creativity/creativity-engine.js.map +1 -0
  40. package/dist/index.d.ts +24 -32
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +130 -104
  43. package/dist/index.js.map +1 -1
  44. package/dist/learning/learning-engine.d.ts +6 -0
  45. package/dist/learning/learning-engine.d.ts.map +1 -0
  46. package/dist/learning/learning-engine.js +17 -0
  47. package/dist/learning/learning-engine.js.map +1 -0
  48. package/dist/llm/index.d.ts +10 -0
  49. package/dist/llm/index.d.ts.map +1 -0
  50. package/dist/llm/index.js +26 -0
  51. package/dist/llm/index.js.map +1 -0
  52. package/dist/llm/llm-service.d.ts +109 -0
  53. package/dist/llm/llm-service.d.ts.map +1 -0
  54. package/dist/llm/llm-service.js +224 -0
  55. package/dist/llm/llm-service.js.map +1 -0
  56. package/dist/llm/providers/base.d.ts +85 -0
  57. package/dist/llm/providers/base.d.ts.map +1 -0
  58. package/dist/llm/providers/base.js +57 -0
  59. package/dist/llm/providers/base.js.map +1 -0
  60. package/dist/llm/providers/cli.d.ts +23 -0
  61. package/dist/llm/providers/cli.d.ts.map +1 -0
  62. package/dist/llm/providers/cli.js +158 -0
  63. package/dist/llm/providers/cli.js.map +1 -0
  64. package/dist/llm/providers/gemini.d.ts +30 -0
  65. package/dist/llm/providers/gemini.d.ts.map +1 -0
  66. package/dist/llm/providers/gemini.js +168 -0
  67. package/dist/llm/providers/gemini.js.map +1 -0
  68. package/dist/llm/sanitization.d.ts +50 -0
  69. package/dist/llm/sanitization.d.ts.map +1 -0
  70. package/dist/llm/sanitization.js +149 -0
  71. package/dist/llm/sanitization.js.map +1 -0
  72. package/dist/{server.d.ts.map → mcp/server.d.ts.map} +1 -1
  73. package/dist/mcp/server.js +108 -0
  74. package/dist/mcp/server.js.map +1 -0
  75. package/dist/planning/planning-engine.d.ts +6 -0
  76. package/dist/planning/planning-engine.d.ts.map +1 -0
  77. package/dist/planning/planning-engine.js +17 -0
  78. package/dist/planning/planning-engine.js.map +1 -0
  79. package/dist/reasoning/reasoning-engine.d.ts +6 -0
  80. package/dist/reasoning/reasoning-engine.d.ts.map +1 -0
  81. package/dist/reasoning/reasoning-engine.js +17 -0
  82. package/dist/reasoning/reasoning-engine.js.map +1 -0
  83. package/dist/search/search-engine.d.ts +99 -0
  84. package/dist/search/search-engine.d.ts.map +1 -0
  85. package/dist/search/search-engine.js +271 -0
  86. package/dist/search/search-engine.js.map +1 -0
  87. package/dist/synthesis/synthesis-engine.d.ts +6 -0
  88. package/dist/synthesis/synthesis-engine.d.ts.map +1 -0
  89. package/dist/synthesis/synthesis-engine.js +17 -0
  90. package/dist/synthesis/synthesis-engine.js.map +1 -0
  91. package/dist/types/analysis.d.ts +1534 -49
  92. package/dist/types/analysis.d.ts.map +1 -1
  93. package/dist/types/analysis.js +250 -0
  94. package/dist/types/analysis.js.map +1 -1
  95. package/dist/types/core.d.ts +257 -30
  96. package/dist/types/core.d.ts.map +1 -1
  97. package/dist/types/core.js +148 -18
  98. package/dist/types/core.js.map +1 -1
  99. package/dist/types/creativity.d.ts +2871 -56
  100. package/dist/types/creativity.d.ts.map +1 -1
  101. package/dist/types/creativity.js +195 -0
  102. package/dist/types/creativity.js.map +1 -1
  103. package/dist/types/index.d.ts +6 -2
  104. package/dist/types/index.d.ts.map +1 -1
  105. package/dist/types/index.js +17 -2
  106. package/dist/types/index.js.map +1 -1
  107. package/dist/types/learning.d.ts +851 -61
  108. package/dist/types/learning.d.ts.map +1 -1
  109. package/dist/types/learning.js +155 -0
  110. package/dist/types/learning.js.map +1 -1
  111. package/dist/types/planning.d.ts +2223 -71
  112. package/dist/types/planning.d.ts.map +1 -1
  113. package/dist/types/planning.js +190 -0
  114. package/dist/types/planning.js.map +1 -1
  115. package/dist/types/reasoning.d.ts +2209 -72
  116. package/dist/types/reasoning.d.ts.map +1 -1
  117. package/dist/types/reasoning.js +200 -1
  118. package/dist/types/reasoning.js.map +1 -1
  119. package/dist/types/search.d.ts +981 -53
  120. package/dist/types/search.d.ts.map +1 -1
  121. package/dist/types/search.js +137 -0
  122. package/dist/types/search.js.map +1 -1
  123. package/dist/types/synthesis.d.ts +583 -37
  124. package/dist/types/synthesis.d.ts.map +1 -1
  125. package/dist/types/synthesis.js +138 -0
  126. package/dist/types/synthesis.js.map +1 -1
  127. package/dist/utils/cache.d.ts +144 -0
  128. package/dist/utils/cache.d.ts.map +1 -0
  129. package/dist/utils/cache.js +288 -0
  130. package/dist/utils/cache.js.map +1 -0
  131. package/dist/utils/id-generator.d.ts +89 -0
  132. package/dist/utils/id-generator.d.ts.map +1 -0
  133. package/dist/utils/id-generator.js +132 -0
  134. package/dist/utils/id-generator.js.map +1 -0
  135. package/dist/utils/index.d.ts +11 -0
  136. package/dist/utils/index.d.ts.map +1 -0
  137. package/dist/utils/index.js +33 -0
  138. package/dist/utils/index.js.map +1 -0
  139. package/dist/utils/logger.d.ts +142 -0
  140. package/dist/utils/logger.d.ts.map +1 -0
  141. package/dist/utils/logger.js +248 -0
  142. package/dist/utils/logger.js.map +1 -0
  143. package/dist/utils/metrics.d.ts +149 -0
  144. package/dist/utils/metrics.d.ts.map +1 -0
  145. package/dist/utils/metrics.js +296 -0
  146. package/dist/utils/metrics.js.map +1 -0
  147. package/dist/utils/timer.d.ts +7 -0
  148. package/dist/utils/timer.d.ts.map +1 -0
  149. package/dist/utils/timer.js +17 -0
  150. package/dist/utils/timer.js.map +1 -0
  151. package/dist/utils/validation.d.ts +147 -0
  152. package/dist/utils/validation.d.ts.map +1 -0
  153. package/dist/utils/validation.js +275 -0
  154. package/dist/utils/validation.js.map +1 -0
  155. package/docs/API.md +411 -0
  156. package/docs/ARCHITECTURE.md +271 -0
  157. package/docs/CHANGELOG.md +283 -0
  158. package/jest.config.js +28 -0
  159. package/package.json +43 -30
  160. package/src/analysis/analysis-engine.ts +383 -0
  161. package/src/core/config.ts +406 -0
  162. package/src/core/engine.ts +785 -0
  163. package/src/core/errors.ts +349 -0
  164. package/src/core/index.ts +12 -0
  165. package/src/core/pipeline.ts +424 -0
  166. package/src/core/rate-limiter.ts +155 -0
  167. package/src/core/session-manager.ts +269 -0
  168. package/src/creativity/creativity-engine.ts +14 -0
  169. package/src/index.ts +178 -0
  170. package/src/learning/learning-engine.ts +14 -0
  171. package/src/llm/index.ts +10 -0
  172. package/src/llm/llm-service.ts +285 -0
  173. package/src/llm/providers/base.ts +146 -0
  174. package/src/llm/providers/cli.ts +186 -0
  175. package/src/llm/providers/gemini.ts +201 -0
  176. package/src/llm/sanitization.ts +178 -0
  177. package/src/mcp/server.ts +117 -0
  178. package/src/planning/planning-engine.ts +14 -0
  179. package/src/reasoning/reasoning-engine.ts +14 -0
  180. package/src/search/search-engine.ts +333 -0
  181. package/src/synthesis/synthesis-engine.ts +14 -0
  182. package/src/types/analysis.ts +337 -0
  183. package/src/types/core.ts +342 -0
  184. package/src/types/creativity.ts +268 -0
  185. package/src/types/index.ts +31 -0
  186. package/src/types/learning.ts +215 -0
  187. package/src/types/planning.ts +251 -0
  188. package/src/types/reasoning.ts +288 -0
  189. package/src/types/search.ts +192 -0
  190. package/src/types/synthesis.ts +187 -0
  191. package/src/utils/cache.ts +363 -0
  192. package/src/utils/id-generator.ts +135 -0
  193. package/src/utils/index.ts +22 -0
  194. package/src/utils/logger.ts +290 -0
  195. package/src/utils/metrics.ts +380 -0
  196. package/src/utils/timer.ts +15 -0
  197. package/src/utils/validation.ts +297 -0
  198. package/tests/setup.ts +22 -0
  199. package/tests/unit/cache.test.ts +189 -0
  200. package/tests/unit/engine.test.ts +179 -0
  201. package/tests/unit/validation.test.ts +218 -0
  202. package/tsconfig.json +17 -12
  203. package/GEMINI.md +0 -68
  204. package/analysis.ts +0 -1063
  205. package/creativity.ts +0 -1055
  206. package/dist/analysis.d.ts +0 -54
  207. package/dist/analysis.d.ts.map +0 -1
  208. package/dist/analysis.js +0 -866
  209. package/dist/analysis.js.map +0 -1
  210. package/dist/creativity.d.ts +0 -81
  211. package/dist/creativity.d.ts.map +0 -1
  212. package/dist/creativity.js +0 -828
  213. package/dist/creativity.js.map +0 -1
  214. package/dist/engine.d.ts +0 -90
  215. package/dist/engine.d.ts.map +0 -1
  216. package/dist/engine.js +0 -677
  217. package/dist/engine.js.map +0 -1
  218. package/dist/examples.d.ts +0 -7
  219. package/dist/examples.d.ts.map +0 -1
  220. package/dist/examples.js +0 -506
  221. package/dist/examples.js.map +0 -1
  222. package/dist/learning.d.ts +0 -72
  223. package/dist/learning.d.ts.map +0 -1
  224. package/dist/learning.js +0 -615
  225. package/dist/learning.js.map +0 -1
  226. package/dist/llm-service.d.ts +0 -21
  227. package/dist/llm-service.d.ts.map +0 -1
  228. package/dist/llm-service.js +0 -100
  229. package/dist/llm-service.js.map +0 -1
  230. package/dist/planning.d.ts +0 -58
  231. package/dist/planning.d.ts.map +0 -1
  232. package/dist/planning.js +0 -824
  233. package/dist/planning.js.map +0 -1
  234. package/dist/reasoning.d.ts +0 -73
  235. package/dist/reasoning.d.ts.map +0 -1
  236. package/dist/reasoning.js +0 -845
  237. package/dist/reasoning.js.map +0 -1
  238. package/dist/search-discovery.d.ts +0 -73
  239. package/dist/search-discovery.d.ts.map +0 -1
  240. package/dist/search-discovery.js +0 -548
  241. package/dist/search-discovery.js.map +0 -1
  242. package/dist/server.js +0 -113
  243. package/dist/server.js.map +0 -1
  244. package/dist/types/engine.d.ts +0 -55
  245. package/dist/types/engine.d.ts.map +0 -1
  246. package/dist/types/engine.js +0 -3
  247. package/dist/types/engine.js.map +0 -1
  248. package/dist/types.d.ts +0 -6
  249. package/dist/types.d.ts.map +0 -1
  250. package/dist/types.js.map +0 -1
  251. package/engine.ts +0 -947
  252. package/examples.ts +0 -717
  253. package/index.ts +0 -106
  254. package/learning.ts +0 -779
  255. package/llm-service.ts +0 -120
  256. package/planning.ts +0 -1028
  257. package/reasoning.ts +0 -1079
  258. package/search-discovery.ts +0 -700
  259. package/server.ts +0 -115
  260. package/types/analysis.ts +0 -69
  261. package/types/core.ts +0 -90
  262. package/types/creativity.ts +0 -72
  263. package/types/engine.ts +0 -60
  264. package/types/index.ts +0 -9
  265. package/types/learning.ts +0 -69
  266. package/types/planning.ts +0 -85
  267. package/types/reasoning.ts +0 -92
  268. package/types/search.ts +0 -58
  269. package/types/synthesis.ts +0 -42
  270. package/types.ts +0 -6
  271. /package/dist/{server.d.ts → mcp/server.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-generator.d.ts","sourceRoot":"","sources":["../../src/utils/id-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjF;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAK3D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,MAAM,CAE1E;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,SAAM,GAAG,MAAM,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAG/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;CASb,CAAC;AAEX;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAkC;IAElD;;;;OAIG;IACI,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAOjD;;;OAGG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIzC;;OAEG;IACI,gBAAgB,IAAI,IAAI;IAI/B;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAG1C;AAGD,eAAO,MAAM,WAAW,aAAoB,CAAC"}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ /**
3
+ * ID Generator Utility for gthinking v2.0.0
4
+ * Secure and collision-resistant ID generation
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.idGenerator = exports.IdGenerator = exports.Namespaces = void 0;
8
+ exports.generateUUID = generateUUID;
9
+ exports.generateDeterministicUUID = generateDeterministicUUID;
10
+ exports.generateShortId = generateShortId;
11
+ exports.generateTimestampId = generateTimestampId;
12
+ exports.generateSequentialId = generateSequentialId;
13
+ exports.generateCompoundId = generateCompoundId;
14
+ exports.isValidUUID = isValidUUID;
15
+ const uuid_1 = require("uuid");
16
+ /**
17
+ * Generate a random UUID v4
18
+ * @returns A random UUID string
19
+ */
20
+ function generateUUID() {
21
+ return (0, uuid_1.v4)();
22
+ }
23
+ /**
24
+ * Generate a deterministic UUID v5 based on a namespace and name
25
+ * @param namespace - The namespace UUID
26
+ * @param name - The name to hash
27
+ * @returns A deterministic UUID string
28
+ */
29
+ function generateDeterministicUUID(namespace, name) {
30
+ return (0, uuid_1.v5)(name, namespace);
31
+ }
32
+ /**
33
+ * Generate a short ID (8 characters) for internal use
34
+ * Note: This is not cryptographically secure, use only for non-sensitive IDs
35
+ * @returns A short random string
36
+ */
37
+ function generateShortId() {
38
+ return Math.random().toString(36).substring(2, 10);
39
+ }
40
+ /**
41
+ * Generate a timestamp-based ID with random suffix
42
+ * @param prefix - Optional prefix for the ID
43
+ * @returns A timestamp-based ID string
44
+ */
45
+ function generateTimestampId(prefix) {
46
+ const timestamp = Date.now().toString(36);
47
+ const random = Math.random().toString(36).substring(2, 6);
48
+ const id = `${timestamp}_${random}`;
49
+ return prefix ? `${prefix}_${id}` : id;
50
+ }
51
+ /**
52
+ * Generate a sequential ID with padding
53
+ * @param sequence - The sequence number
54
+ * @param padding - The number of digits to pad to
55
+ * @returns A padded sequential ID string
56
+ */
57
+ function generateSequentialId(sequence, padding = 6) {
58
+ return sequence.toString().padStart(padding, '0');
59
+ }
60
+ /**
61
+ * Generate a compound ID from multiple parts
62
+ * @param parts - The parts to combine
63
+ * @param separator - The separator to use (default: '_')
64
+ * @returns A compound ID string
65
+ */
66
+ function generateCompoundId(parts, separator = '_') {
67
+ return parts.join(separator);
68
+ }
69
+ /**
70
+ * Validate if a string is a valid UUID
71
+ * @param id - The string to validate
72
+ * @returns True if the string is a valid UUID
73
+ */
74
+ function isValidUUID(id) {
75
+ const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
76
+ return uuidRegex.test(id);
77
+ }
78
+ /**
79
+ * Namespace UUIDs for deterministic ID generation
80
+ */
81
+ exports.Namespaces = {
82
+ DNS: '6ba7b810-9dad-11d1-80b4-00c04fd430c8',
83
+ URL: '6ba7b811-9dad-11d1-80b4-00c04fd430c8',
84
+ OID: '6ba7b812-9dad-11d1-80b4-00c04fd430c8',
85
+ X500: '6ba7b814-9dad-11d1-80b4-00c04fd430c8',
86
+ // Custom namespaces for gthinking
87
+ SESSION: 'a7b8c9d0-e1f2-4a3b-8c4d-5e6f7a8b9c0d',
88
+ TASK: 'b8c9d0e1-f2a3-5b4c-9d5e-6f7a8b9c0d1e',
89
+ IDEA: 'c9d0e1f2-a3b4-6c5d-0e6f-7a8b9c0d1e2f',
90
+ };
91
+ /**
92
+ * ID Generator class for managing ID generation with prefixes
93
+ */
94
+ class IdGenerator {
95
+ counters = new Map();
96
+ /**
97
+ * Generate a prefixed ID with an auto-incrementing counter
98
+ * @param prefix - The prefix for the ID
99
+ * @returns A prefixed ID string
100
+ */
101
+ generatePrefixedId(prefix) {
102
+ const current = this.counters.get(prefix) || 0;
103
+ const next = current + 1;
104
+ this.counters.set(prefix, next);
105
+ return `${prefix}_${generateSequentialId(next)}`;
106
+ }
107
+ /**
108
+ * Reset the counter for a specific prefix
109
+ * @param prefix - The prefix to reset
110
+ */
111
+ resetCounter(prefix) {
112
+ this.counters.delete(prefix);
113
+ }
114
+ /**
115
+ * Reset all counters
116
+ */
117
+ resetAllCounters() {
118
+ this.counters.clear();
119
+ }
120
+ /**
121
+ * Get the current counter value for a prefix
122
+ * @param prefix - The prefix to check
123
+ * @returns The current counter value
124
+ */
125
+ getCounter(prefix) {
126
+ return this.counters.get(prefix) || 0;
127
+ }
128
+ }
129
+ exports.IdGenerator = IdGenerator;
130
+ // Export a singleton instance
131
+ exports.idGenerator = new IdGenerator();
132
+ //# sourceMappingURL=id-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-generator.js","sourceRoot":"","sources":["../../src/utils/id-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Utils Index for gthinking v2.0.0
3
+ * Central export point for all utilities
4
+ */
5
+ export * from './id-generator';
6
+ export * from './validation';
7
+ export * from './logger';
8
+ export * from './cache';
9
+ export * from './metrics';
10
+ export * from './timer';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ /**
3
+ * Utils Index for gthinking v2.0.0
4
+ * Central export point for all utilities
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ // ID Generator
22
+ __exportStar(require("./id-generator"), exports);
23
+ // Validation
24
+ __exportStar(require("./validation"), exports);
25
+ // Logger
26
+ __exportStar(require("./logger"), exports);
27
+ // Cache
28
+ __exportStar(require("./cache"), exports);
29
+ // Metrics
30
+ __exportStar(require("./metrics"), exports);
31
+ // Timer
32
+ __exportStar(require("./timer"), exports);
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,eAAe;AACf,iDAA+B;AAE/B,aAAa;AACb,+CAA6B;AAE7B,SAAS;AACT,2CAAyB;AAEzB,QAAQ;AACR,0CAAwB;AAExB,UAAU;AACV,4CAA0B;AAE1B,QAAQ;AACR,0CAAwB"}
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Logger Utility for gthinking v2.0.0
3
+ * Structured logging with Winston
4
+ */
5
+ import winston from 'winston';
6
+ /**
7
+ * Log levels
8
+ */
9
+ export declare const LogLevel: {
10
+ readonly ERROR: "error";
11
+ readonly WARN: "warn";
12
+ readonly INFO: "info";
13
+ readonly DEBUG: "debug";
14
+ };
15
+ export type LogLevelType = typeof LogLevel[keyof typeof LogLevel];
16
+ /**
17
+ * Logger configuration interface
18
+ */
19
+ export interface LoggerConfig {
20
+ level: LogLevelType;
21
+ enableConsole: boolean;
22
+ enableFile: boolean;
23
+ logDir?: string;
24
+ maxFiles?: number;
25
+ maxSize?: string;
26
+ }
27
+ /**
28
+ * Create a Winston logger instance
29
+ * @param config - Logger configuration
30
+ * @returns Winston logger instance
31
+ */
32
+ export declare function createLogger(config?: Partial<LoggerConfig>): winston.Logger;
33
+ /**
34
+ * Set the default logger
35
+ * @param logger - The logger to set as default
36
+ */
37
+ export declare function setDefaultLogger(logger: winston.Logger): void;
38
+ /**
39
+ * Get the default logger
40
+ * @returns The default logger instance
41
+ */
42
+ export declare function getDefaultLogger(): winston.Logger;
43
+ /**
44
+ * Log an error message
45
+ * @param message - The error message
46
+ * @param metadata - Additional metadata
47
+ */
48
+ export declare function error(message: string, metadata?: Record<string, unknown>): void;
49
+ /**
50
+ * Log a warning message
51
+ * @param message - The warning message
52
+ * @param metadata - Additional metadata
53
+ */
54
+ export declare function warn(message: string, metadata?: Record<string, unknown>): void;
55
+ /**
56
+ * Log an info message
57
+ * @param message - The info message
58
+ * @param metadata - Additional metadata
59
+ */
60
+ export declare function info(message: string, metadata?: Record<string, unknown>): void;
61
+ /**
62
+ * Log a debug message
63
+ * @param message - The debug message
64
+ * @param metadata - Additional metadata
65
+ */
66
+ export declare function debug(message: string, metadata?: Record<string, unknown>): void;
67
+ /**
68
+ * Create a child logger with default metadata
69
+ * @param defaultMetadata - Default metadata to include
70
+ * @returns Child logger
71
+ */
72
+ export declare function createChildLogger(defaultMetadata: Record<string, unknown>): winston.Logger;
73
+ /**
74
+ * Logger class for component-specific logging
75
+ */
76
+ export declare class Logger {
77
+ private logger;
78
+ private component;
79
+ constructor(component: string, config?: Partial<LoggerConfig>);
80
+ /**
81
+ * Log an error message
82
+ */
83
+ error(message: string, metadata?: Record<string, unknown>): void;
84
+ /**
85
+ * Log a warning message
86
+ */
87
+ warn(message: string, metadata?: Record<string, unknown>): void;
88
+ /**
89
+ * Log an info message
90
+ */
91
+ info(message: string, metadata?: Record<string, unknown>): void;
92
+ /**
93
+ * Log a debug message
94
+ */
95
+ debug(message: string, metadata?: Record<string, unknown>): void;
96
+ /**
97
+ * Create a child logger
98
+ */
99
+ child(metadata: Record<string, unknown>): winston.Logger;
100
+ }
101
+ /**
102
+ * Performance logger for tracking operation performance
103
+ */
104
+ export declare class PerformanceLogger {
105
+ private logger;
106
+ private timings;
107
+ constructor();
108
+ /**
109
+ * Start timing an operation
110
+ * @param operation - The operation name
111
+ */
112
+ start(operation: string): void;
113
+ /**
114
+ * End timing an operation and log the duration
115
+ * @param operation - The operation name
116
+ * @param metadata - Additional metadata
117
+ */
118
+ end(operation: string, metadata?: Record<string, unknown>): number;
119
+ /**
120
+ * Log a performance metric
121
+ * @param metric - The metric name
122
+ * @param value - The metric value
123
+ * @param metadata - Additional metadata
124
+ */
125
+ logMetric(metric: string, value: number, metadata?: Record<string, unknown>): void;
126
+ /**
127
+ * Clear all timings
128
+ */
129
+ clear(): void;
130
+ }
131
+ export declare const performanceLogger: PerformanceLogger;
132
+ /**
133
+ * Default logger instance
134
+ */
135
+ export declare const logger: winston.Logger;
136
+ /**
137
+ * Create a component logger
138
+ * @param component - Component name
139
+ * @returns Logger instance
140
+ */
141
+ export declare function createComponentLogger(component: string): Logger;
142
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;CAKX,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,QAAQ,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAWD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,GAAE,OAAO,CAAC,YAAY,CAAM,GAAG,OAAO,CAAC,MAAM,CAkD/E;AAKD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAE7D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI,CAEnF;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI,CAElF;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI,CAElF;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI,CAEnF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAE1F;AAED;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;IAK7D;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAI3E;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAI1E;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAI1E;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAI3E;;OAEG;IACI,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM;CAGhE;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAAkC;;IAMjD;;;OAGG;IACI,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;;;OAIG;IACI,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,MAAM;IAmB7E;;;;;OAKG;IACI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAQ7F;;OAEG;IACI,KAAK,IAAI,IAAI;CAGrB;AAGD,eAAO,MAAM,iBAAiB,mBAA0B,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,MAAM,gBAAgB,CAAC;AAEpC;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D"}
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+ /**
3
+ * Logger Utility for gthinking v2.0.0
4
+ * Structured logging with Winston
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.logger = exports.performanceLogger = exports.PerformanceLogger = exports.Logger = exports.LogLevel = void 0;
11
+ exports.createLogger = createLogger;
12
+ exports.setDefaultLogger = setDefaultLogger;
13
+ exports.getDefaultLogger = getDefaultLogger;
14
+ exports.error = error;
15
+ exports.warn = warn;
16
+ exports.info = info;
17
+ exports.debug = debug;
18
+ exports.createChildLogger = createChildLogger;
19
+ exports.createComponentLogger = createComponentLogger;
20
+ const winston_1 = __importDefault(require("winston"));
21
+ /**
22
+ * Log levels
23
+ */
24
+ exports.LogLevel = {
25
+ ERROR: 'error',
26
+ WARN: 'warn',
27
+ INFO: 'info',
28
+ DEBUG: 'debug',
29
+ };
30
+ /**
31
+ * Default logger configuration
32
+ */
33
+ const defaultConfig = {
34
+ level: 'info',
35
+ enableConsole: true,
36
+ enableFile: false,
37
+ };
38
+ /**
39
+ * Create a Winston logger instance
40
+ * @param config - Logger configuration
41
+ * @returns Winston logger instance
42
+ */
43
+ function createLogger(config = {}) {
44
+ const mergedConfig = { ...defaultConfig, ...config };
45
+ const transports = [];
46
+ if (mergedConfig.enableConsole) {
47
+ transports.push(new winston_1.default.transports.Console({
48
+ format: winston_1.default.format.combine(winston_1.default.format.colorize(), winston_1.default.format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss' }), winston_1.default.format.printf(({ level, message, timestamp, ...metadata }) => {
49
+ let msg = `${timestamp} [${level}]: ${message}`;
50
+ if (Object.keys(metadata).length > 0) {
51
+ msg += ` ${JSON.stringify(metadata)}`;
52
+ }
53
+ return msg;
54
+ })),
55
+ }));
56
+ }
57
+ if (mergedConfig.enableFile && mergedConfig.logDir) {
58
+ transports.push(new winston_1.default.transports.File({
59
+ filename: `${mergedConfig.logDir}/error.log`,
60
+ level: 'error',
61
+ maxFiles: mergedConfig.maxFiles || 5,
62
+ maxsize: (mergedConfig.maxSize || '10m'),
63
+ format: winston_1.default.format.combine(winston_1.default.format.timestamp(), winston_1.default.format.json()),
64
+ }));
65
+ transports.push(new winston_1.default.transports.File({
66
+ filename: `${mergedConfig.logDir}/combined.log`,
67
+ maxFiles: mergedConfig.maxFiles || 5,
68
+ maxsize: (mergedConfig.maxSize || '10m'),
69
+ format: winston_1.default.format.combine(winston_1.default.format.timestamp(), winston_1.default.format.json()),
70
+ }));
71
+ }
72
+ return winston_1.default.createLogger({
73
+ level: mergedConfig.level,
74
+ defaultMeta: { service: 'gthinking' },
75
+ transports,
76
+ exitOnError: false,
77
+ });
78
+ }
79
+ // Create default logger instance
80
+ let defaultLogger = createLogger();
81
+ /**
82
+ * Set the default logger
83
+ * @param logger - The logger to set as default
84
+ */
85
+ function setDefaultLogger(logger) {
86
+ defaultLogger = logger;
87
+ }
88
+ /**
89
+ * Get the default logger
90
+ * @returns The default logger instance
91
+ */
92
+ function getDefaultLogger() {
93
+ return defaultLogger;
94
+ }
95
+ /**
96
+ * Log an error message
97
+ * @param message - The error message
98
+ * @param metadata - Additional metadata
99
+ */
100
+ function error(message, metadata = {}) {
101
+ defaultLogger.error(message, metadata);
102
+ }
103
+ /**
104
+ * Log a warning message
105
+ * @param message - The warning message
106
+ * @param metadata - Additional metadata
107
+ */
108
+ function warn(message, metadata = {}) {
109
+ defaultLogger.warn(message, metadata);
110
+ }
111
+ /**
112
+ * Log an info message
113
+ * @param message - The info message
114
+ * @param metadata - Additional metadata
115
+ */
116
+ function info(message, metadata = {}) {
117
+ defaultLogger.info(message, metadata);
118
+ }
119
+ /**
120
+ * Log a debug message
121
+ * @param message - The debug message
122
+ * @param metadata - Additional metadata
123
+ */
124
+ function debug(message, metadata = {}) {
125
+ defaultLogger.debug(message, metadata);
126
+ }
127
+ /**
128
+ * Create a child logger with default metadata
129
+ * @param defaultMetadata - Default metadata to include
130
+ * @returns Child logger
131
+ */
132
+ function createChildLogger(defaultMetadata) {
133
+ return defaultLogger.child(defaultMetadata);
134
+ }
135
+ /**
136
+ * Logger class for component-specific logging
137
+ */
138
+ class Logger {
139
+ logger;
140
+ component;
141
+ constructor(component, config) {
142
+ this.component = component;
143
+ this.logger = createLogger(config);
144
+ }
145
+ /**
146
+ * Log an error message
147
+ */
148
+ error(message, metadata = {}) {
149
+ this.logger.error(message, { component: this.component, ...metadata });
150
+ }
151
+ /**
152
+ * Log a warning message
153
+ */
154
+ warn(message, metadata = {}) {
155
+ this.logger.warn(message, { component: this.component, ...metadata });
156
+ }
157
+ /**
158
+ * Log an info message
159
+ */
160
+ info(message, metadata = {}) {
161
+ this.logger.info(message, { component: this.component, ...metadata });
162
+ }
163
+ /**
164
+ * Log a debug message
165
+ */
166
+ debug(message, metadata = {}) {
167
+ this.logger.debug(message, { component: this.component, ...metadata });
168
+ }
169
+ /**
170
+ * Create a child logger
171
+ */
172
+ child(metadata) {
173
+ return this.logger.child({ component: this.component, ...metadata });
174
+ }
175
+ }
176
+ exports.Logger = Logger;
177
+ /**
178
+ * Performance logger for tracking operation performance
179
+ */
180
+ class PerformanceLogger {
181
+ logger;
182
+ timings = new Map();
183
+ constructor() {
184
+ this.logger = createLogger({ level: 'debug' });
185
+ }
186
+ /**
187
+ * Start timing an operation
188
+ * @param operation - The operation name
189
+ */
190
+ start(operation) {
191
+ this.timings.set(operation, Date.now());
192
+ }
193
+ /**
194
+ * End timing an operation and log the duration
195
+ * @param operation - The operation name
196
+ * @param metadata - Additional metadata
197
+ */
198
+ end(operation, metadata = {}) {
199
+ const startTime = this.timings.get(operation);
200
+ if (!startTime) {
201
+ this.logger.warn(`No start time found for operation: ${operation}`);
202
+ return 0;
203
+ }
204
+ const duration = Date.now() - startTime;
205
+ this.timings.delete(operation);
206
+ this.logger.debug(`Operation ${operation} completed`, {
207
+ operation,
208
+ duration,
209
+ ...metadata,
210
+ });
211
+ return duration;
212
+ }
213
+ /**
214
+ * Log a performance metric
215
+ * @param metric - The metric name
216
+ * @param value - The metric value
217
+ * @param metadata - Additional metadata
218
+ */
219
+ logMetric(metric, value, metadata = {}) {
220
+ this.logger.debug(`Performance metric: ${metric}`, {
221
+ metric,
222
+ value,
223
+ ...metadata,
224
+ });
225
+ }
226
+ /**
227
+ * Clear all timings
228
+ */
229
+ clear() {
230
+ this.timings.clear();
231
+ }
232
+ }
233
+ exports.PerformanceLogger = PerformanceLogger;
234
+ // Export a singleton performance logger
235
+ exports.performanceLogger = new PerformanceLogger();
236
+ /**
237
+ * Default logger instance
238
+ */
239
+ exports.logger = defaultLogger;
240
+ /**
241
+ * Create a component logger
242
+ * @param component - Component name
243
+ * @returns Logger instance
244
+ */
245
+ function createComponentLogger(component) {
246
+ return new Logger(component);
247
+ }
248
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}