@yrpri/api 9.0.139 → 9.0.140

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 (319) hide show
  1. package/agents/assistants/agentAssistant.js +4 -3
  2. package/agents/assistants/baseAssistant.js +72 -71
  3. package/agents/assistants/baseAssistantWithVoice.js +6 -5
  4. package/agents/assistants/modes/agentDirectConnection.js +8 -7
  5. package/agents/assistants/modes/agentSelectionMode.js +2 -1
  6. package/agents/assistants/modes/baseAssistantMode.js +3 -2
  7. package/agents/assistants/modes/tools/agentTools.js +11 -10
  8. package/agents/assistants/modes/tools/loginTools.js +7 -6
  9. package/agents/assistants/modes/tools/models/agents.js +6 -5
  10. package/agents/assistants/modes/tools/models/subscriptions.js +7 -6
  11. package/agents/assistants/modes/tools/navigationTools.js +7 -6
  12. package/agents/assistants/modes/tools/subscriptionTools.js +12 -11
  13. package/agents/assistants/modes/tools/workflowConverstationTools.js +7 -6
  14. package/agents/assistants/voiceAssistant.js +45 -44
  15. package/agents/controllers/agentProductController.js +8 -7
  16. package/agents/controllers/agentSubscriptionController.js +13 -12
  17. package/agents/controllers/assistantsController.js +45 -44
  18. package/agents/controllers/policySynthAgents.js +33 -32
  19. package/agents/managers/emailInvitesManager.js +4 -3
  20. package/agents/managers/newAiModelSetup.js +45 -44
  21. package/agents/managers/notificationAgentQueueManager.js +55 -54
  22. package/agents/managers/subscriptionManager.js +24 -23
  23. package/agents/models/agentProduct.js +2 -1
  24. package/agents/models/agentProductBoosterPurchase.js +2 -1
  25. package/agents/models/testData/createEvolyAgentProduct.js +7 -6
  26. package/agents/models/testData/old/updateAgentWorkflowConfiguration.js +5 -4
  27. package/agents/models/testData/updateAgentWorkflowConfiguration.js +5 -4
  28. package/agents/tools/setTemplateWorkflowCommunityId.js +6 -5
  29. package/app.d.ts +2 -1
  30. package/app.js +60 -34
  31. package/authorization.cjs +4 -4
  32. package/controllers/allOurIdeas.js +45 -44
  33. package/controllers/groups.cjs +4 -9
  34. package/controllers/images.cjs +8 -8
  35. package/controllers/index.cjs +1 -1
  36. package/controllers/points.cjs +1 -1
  37. package/controllers/posts.cjs +3 -3
  38. package/deleteUnwantedDeclerations.cjs +5 -5
  39. package/models/community.cjs +1 -1
  40. package/models/domain.cjs +7 -7
  41. package/models/image.cjs +2 -2
  42. package/models/index.cjs +8 -4
  43. package/models/post.cjs +10 -10
  44. package/models/user.cjs +1 -1
  45. package/models/video.cjs +4 -4
  46. package/package.json +5 -5
  47. package/scripts/addRatingUsersToGroup.js +1 -1
  48. package/scripts/addUserToOrganization.js +8 -8
  49. package/scripts/agents/changeModelForWorkflowGroupTemplate.js +13 -12
  50. package/scripts/agents/generateAgentWorkflowTemplateFromAgentClass.js +5 -4
  51. package/scripts/analyseRatingsForCommunity.js +2 -2
  52. package/scripts/analyzeAndFixBrokenPointUsers.js +3 -3
  53. package/scripts/analyzeEndorsementsByCountry.js +7 -7
  54. package/scripts/analyzePostsForCommunity.js +1 -1
  55. package/scripts/bulkStatusUpdates/listUpdates.js +2 -2
  56. package/scripts/bulkStatusUpdates/mergeLatestPostsToUpdate.js +5 -5
  57. package/scripts/bulkStatusUpdates/performUpdate.js +9 -9
  58. package/scripts/bulkStatusUpdates/performUpdateForGroup.cjs +11 -11
  59. package/scripts/bulkStatusUpdates/performUpdateForStatus.js +15 -15
  60. package/scripts/change/changeVideoAspectTo.js +3 -3
  61. package/scripts/change/setUseNewVersion.cjs +4 -4
  62. package/scripts/changeCommunityGroupcount.js +3 -3
  63. package/scripts/changeCommunityPostCount.js +3 -3
  64. package/scripts/changeGroupPostCount.js +3 -3
  65. package/scripts/changeLanguage.js +4 -4
  66. package/scripts/changeOfficalStatus.js +3 -3
  67. package/scripts/cleanups/deleteAnonNotifications.cjs +7 -7
  68. package/scripts/cleanups/deleteLinkGroupsWithDeletedCommunities.js +8 -8
  69. package/scripts/cleanups/deleteYearOldNotifications.cjs +5 -5
  70. package/scripts/cleanups/removeAllUsersFromHiddenPublicGroup.js +5 -5
  71. package/scripts/clearAllEndorsementInGroup.js +5 -5
  72. package/scripts/cloning/clearUsersForCommunitiesFromUrl.js +3 -3
  73. package/scripts/cloning/cloneFromUrlScript.js +4 -4
  74. package/scripts/cloning/cloneWBFromUrlScriptAndCreateLinks.js +6 -6
  75. package/scripts/cloning/cloneWBFromUrlScriptNoUsersOrPoints.js +6 -6
  76. package/scripts/cloning/cloneWBSerbianFromUrlScriptAndCreateLinks.js +6 -6
  77. package/scripts/cloning/copyCommunityConfigAndTranslationsFromURL.js +3 -3
  78. package/scripts/cloning/copyCommunityOneGroupToDomainNoUsersNoEndorsements.js +2 -2
  79. package/scripts/cloning/copyCommunityToDomainNoUsersNoEndorsements.js +2 -2
  80. package/scripts/cloning/copyCommunityToDomainWithEverything.js +2 -2
  81. package/scripts/cloning/copyCommunityToDomainWithOnlyGroups.js +3 -3
  82. package/scripts/cloning/copyGroupConfigAndTranslationsFromURL.js +3 -3
  83. package/scripts/cloning/copyPostToGroupOld.js +12 -12
  84. package/scripts/cloning/copyPostVideosFromURL.js +3 -3
  85. package/scripts/cloning/copyPostWithOutAnyVotingOrActivities.js +2 -2
  86. package/scripts/cloning/deepCloneSerbianWBFromUrlScriptAndCreateLinks.js +7 -7
  87. package/scripts/cloning/deepCloneWBFromUrlScriptAndCreateLinks.js +6 -6
  88. package/scripts/cloning/setAdminsFromURL.js +5 -5
  89. package/scripts/cloning/setExternalIdsFromURL.js +3 -3
  90. package/scripts/countCommunity.js +11 -11
  91. package/scripts/countCommunityUsers.js +4 -4
  92. package/scripts/countDelayedNotifications.js +3 -3
  93. package/scripts/countGroup.js +11 -11
  94. package/scripts/countStuff.js +3 -3
  95. package/scripts/countUniqueVotersInAGroup.js +3 -3
  96. package/scripts/createInvitesAndShow.js +2 -2
  97. package/scripts/database/sync_database.js +2 -2
  98. package/scripts/database/sync_dev_database.js +3 -3
  99. package/scripts/debugNotifications.js +5 -5
  100. package/scripts/deleteAllNewsFeeds.js +2 -2
  101. package/scripts/deleteCategory.js +1 -1
  102. package/scripts/deleteOldAppActivities.js +5 -4
  103. package/scripts/deletePostContactDataForCommunity.js +5 -4
  104. package/scripts/destroy/destroy_all_but_one_domain.js +59 -59
  105. package/scripts/displayAuthorForPost.js +1 -1
  106. package/scripts/domains/createDomain.js +5 -4
  107. package/scripts/domains/importDomainsFromXls.js +7 -6
  108. package/scripts/endorsementFraudDetection/analyseEndorsementsForCommunity.js +2 -2
  109. package/scripts/endorsementFraudDetection/bulkDeleteDuplicateEndorsmentsFromUrl.js +9 -9
  110. package/scripts/exportAllStatusChanges.js +5 -5
  111. package/scripts/exportEndorsementsForCommunity.js +5 -5
  112. package/scripts/exportPointQualitiesForCommunity.js +5 -5
  113. package/scripts/exportPostsAndPointsForCommunity.js +9 -9
  114. package/scripts/exportPostsDataSetForDomain.js +12 -12
  115. package/scripts/exportPostsForGroup.js +7 -7
  116. package/scripts/exportRatingsForPost.js +2 -2
  117. package/scripts/exportUserEndorsementsWithUserAnalysis.js +6 -6
  118. package/scripts/exportUsersForCommunity.js +3 -3
  119. package/scripts/exportUsersForDomain.js +3 -3
  120. package/scripts/exportUsersForGroup.js +3 -3
  121. package/scripts/exports/ratingDistribution.js +6 -6
  122. package/scripts/exports/whoEndorsedWhatByCommunity.js +2 -2
  123. package/scripts/findUnusedClientImports.js +2 -2
  124. package/scripts/fixAllPostPointCounts.js +1 -1
  125. package/scripts/fixAnonNotificationsSettings.js +5 -5
  126. package/scripts/fixCountKopavogur.js +1 -1
  127. package/scripts/fixEndorsementsAfterCopyPostToGroup.js +10 -10
  128. package/scripts/fixExternalUserId.js +2 -2
  129. package/scripts/fixGroupAccess.js +3 -3
  130. package/scripts/fixGroupIdeasAndPointsCount.js +2 -2
  131. package/scripts/fixNotificationSettings.js +4 -4
  132. package/scripts/fixSurveyRadioBakedInSubCodes.js +6 -6
  133. package/scripts/fixWrongUserIdForStatusUpdates.js +6 -5
  134. package/scripts/gallery/exportGalleryData.js +2 -2
  135. package/scripts/gallery/importGalleryForCommunity.js +14 -14
  136. package/scripts/gallery/readJsonAndDownloadImagesVersion2.js +6 -6
  137. package/scripts/gallery/refreshAcApiPostIdsForCommunity.js +5 -5
  138. package/scripts/genderAnalysis.js +10 -10
  139. package/scripts/genderAnalysisByStatus.js +4 -4
  140. package/scripts/importAllLocalesFromLocalFolders.js +7 -7
  141. package/scripts/importDomain.js +131 -131
  142. package/scripts/keys/addOidcToDomain.cjs +9 -9
  143. package/scripts/landUseGame/export3Ddata.js +15 -15
  144. package/scripts/listLanguagesForGroup.js +6 -6
  145. package/scripts/loadTestCreateDummyContentForGroup.js +2 -2
  146. package/scripts/makeRecursiveMapData.js +4 -4
  147. package/scripts/mapping/community_map_csv.js +5 -5
  148. package/scripts/moveCommunityToDomain.js +3 -3
  149. package/scripts/moveGroupToCommunity.js +3 -3
  150. package/scripts/movePostToGroup.js +5 -5
  151. package/scripts/movePostsToGroupsRecountGroupFromUrl.js +6 -6
  152. package/scripts/oldMovePostToGroup.js +9 -9
  153. package/scripts/processCsvForPdfUrls.js +2 -2
  154. package/scripts/processCsvForTranslationAndToxicity.js +10 -10
  155. package/scripts/recount/recount_recursive_communities.js +6 -6
  156. package/scripts/recountALLCommunityGroupCounts.js +4 -4
  157. package/scripts/recountAll.js +3 -3
  158. package/scripts/recountCommunitesFromUrl.js +3 -3
  159. package/scripts/recountCommunity.js +2 -2
  160. package/scripts/recountGroup.js +5 -5
  161. package/scripts/recountGroupNoUserChange.js +5 -5
  162. package/scripts/resetAllEndorsementsForGroup.js +3 -3
  163. package/scripts/resetEnTranslationForGroup.js +5 -5
  164. package/scripts/setAdminOnAll.cjs +14 -14
  165. package/scripts/setDomainAdmin.cjs +6 -6
  166. package/scripts/setDomainLocales.js +2 -2
  167. package/scripts/setEarlQuestionIdOnGroup.cjs +4 -4
  168. package/scripts/setLanguageOnGroupCommunitesFromUrl.js +3 -3
  169. package/scripts/setMemberOfAll.js +14 -14
  170. package/scripts/setNewUserForContentOfCommunity.js +9 -9
  171. package/scripts/setOfficialStatusOnAllPostsForCommunity.js +1 -1
  172. package/scripts/setUserOnAll.js +14 -14
  173. package/scripts/showCategoryForGroup.js +1 -1
  174. package/scripts/showOldActivityTypes.js +3 -3
  175. package/scripts/showPostsMissingCategoryForGroup.js +2 -2
  176. package/scripts/showStatuses.js +4 -4
  177. package/scripts/showUniqueVotersInCommunity.js +4 -4
  178. package/scripts/showUserAgentsAndIpsForEmails.js +4 -4
  179. package/scripts/simpleExportForGroupsForCommunity.js +5 -5
  180. package/scripts/simpleExportForPointsForCommunity.js +5 -5
  181. package/scripts/simpleExportForPostsForCommunity.js +5 -5
  182. package/scripts/testForEndorsments.js +4 -4
  183. package/scripts/undeleteGroupAndAllContent.js +8 -8
  184. package/scripts/undeletePost.js +7 -7
  185. package/scripts/unlinkSsn.js +4 -4
  186. package/scripts/updateFromAlthingi.js +8 -8
  187. package/scripts/users/createUserAddDomain.js +6 -5
  188. package/scripts/users/importUsersForDomainsFromXls.js +4 -3
  189. package/scripts/users/listDomainUsersWithSsn.js +6 -5
  190. package/scripts/users/removeUserFromDomain.js +6 -5
  191. package/scripts/users/updatePasswordFromSsn.js +5 -4
  192. package/scripts/users/updateUserSsnFromEmail.js +5 -4
  193. package/services/controllers/activities.cjs +1 -1
  194. package/services/controllers/news_feeds.cjs +1 -1
  195. package/services/controllers/notifications.cjs +1 -1
  196. package/services/controllers/recommendations.cjs +1 -1
  197. package/services/engine/allOurIdeas/aiHelper.js +10 -9
  198. package/services/engine/analytics/export_anon_community_activities.js +3 -3
  199. package/services/engine/analytics/importer.js +10 -10
  200. package/services/engine/analytics/plausible/manager.cjs +4 -4
  201. package/services/engine/analytics/statsCalc.cjs +1 -1
  202. package/services/engine/analytics/utils.cjs +10 -10
  203. package/services/engine/moderation/fraud/CreateFraudAuditReport.cjs +2 -1
  204. package/services/engine/moderation/fraud/FraudBase.cjs +2 -2
  205. package/services/engine/moderation/fraud/FraudDeleteBase.cjs +4 -4
  206. package/services/engine/moderation/fraud/FraudGetBase.cjs +1 -1
  207. package/services/engine/moderation/fraud/FraudGetEndorsements.cjs +1 -1
  208. package/services/engine/moderation/fraud/FraudGetPointQualities.cjs +1 -1
  209. package/services/engine/moderation/fraud/FraudGetPoints.cjs +1 -1
  210. package/services/engine/moderation/fraud/FraudGetPosts.cjs +1 -1
  211. package/services/engine/moderation/fraud/FraudGetRatings.cjs +1 -1
  212. package/services/engine/moderation/fraud/FraudScannerNotifier.cjs +9 -9
  213. package/services/engine/moderation/get_moderation_items.cjs +1 -1
  214. package/services/engine/moderation/image_labeling/ImageLabelingBase.cjs +1 -1
  215. package/services/engine/moderation/process_moderation_items.cjs +1 -1
  216. package/services/engine/moderation/toxicity_analysis.cjs +1 -1
  217. package/services/engine/news_feeds/generate_dynamically.cjs +1 -1
  218. package/services/engine/news_feeds/generate_from_notifications.cjs +1 -1
  219. package/services/engine/notifications/emails_utils.cjs +2 -2
  220. package/services/engine/notifications/generate_point_notifications.cjs +1 -1
  221. package/services/engine/notifications/generate_post_notifications.cjs +1 -1
  222. package/services/engine/notifications/process_delayed_notifications.cjs +38 -38
  223. package/services/engine/old/exporters/categories_dataset.js +11 -11
  224. package/services/engine/old/exporters/sentiment_dataset.js +12 -12
  225. package/services/engine/recommendations/events_importer.cjs +5 -5
  226. package/services/engine/recommendations/events_manager.cjs +1 -1
  227. package/services/engine/reports/add_points_to_sheet.cjs +2 -2
  228. package/services/engine/reports/commonUtils.js +3 -2
  229. package/services/engine/reports/common_utils.cjs +8 -8
  230. package/services/engine/reports/docx_group_report.cjs +1 -1
  231. package/services/engine/reports/xlsAllOurIdeasExport.js +16 -15
  232. package/services/engine/reports/xls_community_users_report.cjs +2 -2
  233. package/services/engine/reports/xls_group_report.cjs +1 -1
  234. package/services/llms/baseChatBot.js +12 -11
  235. package/services/llms/imageGeneration/chatGptImageGenerator.js +3 -2
  236. package/services/llms/imageGeneration/collectionImageGenerator.js +7 -6
  237. package/services/llms/imageGeneration/dalleImageGenerator.js +6 -5
  238. package/services/llms/imageGeneration/fluxImageGenerator.js +5 -4
  239. package/services/llms/imageGeneration/imageProcessorService.js +2 -1
  240. package/services/llms/imageGeneration/imagenImageGenerator.js +8 -7
  241. package/services/llms/imageGeneration/s3Service.js +12 -11
  242. package/services/llms/llmTranslation.js +30 -29
  243. package/services/models/ac_activity.cjs +1 -1
  244. package/services/models/ac_notification.cjs +1 -1
  245. package/services/models/ac_translation_cache.cjs +11 -11
  246. package/services/scripts/analytics/setup_all_plausible_goals.cjs +2 -2
  247. package/services/scripts/fix_old_delayed_notifications.js +3 -3
  248. package/services/scripts/kue_status.js +11 -11
  249. package/services/scripts/kue_watch_stuck_jobs.js +6 -6
  250. package/services/scripts/translation_clear_language.js +21 -21
  251. package/services/scripts/translation_delete.js +4 -4
  252. package/services/scripts/translation_replace_text_from_url.js +4 -4
  253. package/services/scripts/translation_update.js +4 -4
  254. package/services/scripts/translations_list.js +5 -5
  255. package/services/utils/airbrake.cjs +2 -1
  256. package/services/utils/redisConnection.cjs +6 -5
  257. package/services/utils/translation_helpers.cjs +3 -2
  258. package/services/utils/updateAllLocalesFromEn.js +20 -19
  259. package/services/utils/updateLocaleFolders.js +7 -6
  260. package/services/workers/activity.cjs +1 -1
  261. package/services/workers/anonymizations.cjs +1 -1
  262. package/services/workers/bulk_status_update.cjs +2 -2
  263. package/services/workers/delayed_jobs.cjs +1 -1
  264. package/services/workers/deletions.cjs +1 -1
  265. package/services/workers/email.cjs +1 -1
  266. package/services/workers/fraud_management.cjs +3 -3
  267. package/services/workers/generativeAi.js +6 -5
  268. package/services/workers/main.cjs +1 -1
  269. package/services/workers/marketing.cjs +1 -1
  270. package/services/workers/moderation.cjs +1 -1
  271. package/services/workers/notification_delivery.cjs +1 -1
  272. package/services/workers/notification_news_feed.cjs +1 -1
  273. package/services/workers/queue.cjs +2 -2
  274. package/services/workers/recount.cjs +1 -1
  275. package/services/workers/reports.cjs +1 -1
  276. package/services/workers/similarities.cjs +4 -2
  277. package/services/workers/speech_to_text.cjs +1 -1
  278. package/utils/airbrake.cjs +1 -1
  279. package/utils/cjsCodeReview.js +7 -6
  280. package/utils/community_mapping_tools.cjs +2 -2
  281. package/utils/copy_utils.cjs +31 -31
  282. package/utils/export_utils.cjs +7 -7
  283. package/utils/generateDocumentation.js +10 -9
  284. package/utils/logger.cjs +2 -23
  285. package/utils/logger.d.cts +1 -1
  286. package/utils/loggerAirbrakeTransport.cjs +52 -0
  287. package/utils/loggerAirbrakeTransport.d.cts +15 -0
  288. package/utils/loggerAirbrakeTransportTs.d.ts +15 -0
  289. package/utils/loggerAirbrakeTransportTs.js +45 -0
  290. package/utils/loggerCore.cjs +29 -0
  291. package/utils/loggerCore.d.cts +2 -0
  292. package/utils/loggerCoreTs.d.ts +2 -0
  293. package/utils/loggerCoreTs.js +23 -0
  294. package/utils/loggerTs.d.ts +1 -2
  295. package/utils/loggerTs.js +2 -25
  296. package/utils/recount_utils.cjs +5 -5
  297. package/utils/seedModels.js +50 -49
  298. package/utils/sitemap_generator.cjs +4 -4
  299. package/utils/ypLanguages.js +2 -2
  300. package/webSockets.js +8 -7
  301. package/services/utils/logger.cjs +0 -25
  302. package/services/utils/logger.d.cts +0 -2
  303. package/src/agents/assistants/assistant.d.ts +0 -156
  304. package/src/controllers/audios.d.ts +0 -5
  305. package/src/controllers/categories.d.ts +0 -5
  306. package/src/controllers/communities.d.ts +0 -5
  307. package/src/controllers/domains.d.ts +0 -5
  308. package/src/controllers/groups.d.ts +0 -5
  309. package/src/controllers/images.d.ts +0 -5
  310. package/src/controllers/points.d.ts +0 -5
  311. package/src/controllers/posts.d.ts +0 -5
  312. package/src/controllers/ratings.d.ts +0 -5
  313. package/src/controllers/users.d.ts +0 -5
  314. package/src/controllers/videos.d.ts +0 -5
  315. package/src/models/index.d.ts +0 -84
  316. package/src/services/controllers/activities.d.ts +0 -5
  317. package/src/services/controllers/notifications.d.ts +0 -5
  318. package/src/utils/copy_utils.d.ts +0 -4
  319. package/src/utils/manifest_generator.d.ts +0 -18
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -2,7 +2,7 @@
2
2
  // https://gist.github.com/mojodna/1251812
3
3
  var async = require("async");
4
4
  var models = require("../../models/index.cjs");
5
- var log = require('../utils/logger.cjs');
5
+ var log = require('../../utils/logger.cjs');
6
6
  var queue = require('./queue.cjs');
7
7
  var i18n = require('../utils/i18n.cjs');
8
8
  var toJson = require('../utils/to_json.cjs');
@@ -202,7 +202,7 @@ var createStatusUpdateForPostId = function (postId, official_status, content, us
202
202
  });
203
203
  }
204
204
  else {
205
- console.log("Not changing status, only verifying");
205
+ log.info("Not changing status, only verifying");
206
206
  verifiedStatusChangedPostsCount += 1;
207
207
  }
208
208
  }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require("../utils/logger.cjs");
4
+ const log = require("../../utils/logger.cjs");
5
5
  const queue = require("./queue.cjs");
6
6
  const i18n = require("../utils/i18n.cjs");
7
7
  const toJson = require("../utils/to_json.cjs");
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // https://gist.github.com/mojodna/1251812
3
- var log = require('../utils/logger.cjs');
3
+ var log = require('../../utils/logger.cjs');
4
4
  /**
5
5
  * @class EmailWorker
6
6
  * @constructor
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -54,7 +54,7 @@ const ProcessFraudGet = async (workPackage, done) => {
54
54
  }
55
55
  }
56
56
  catch (error) {
57
- console.error(error);
57
+ log.error(error);
58
58
  await models.AcBackgroundJob.updateErrorAsync(workPackage.jobId, error);
59
59
  done(error);
60
60
  }
@@ -88,7 +88,7 @@ const ProcessFraudDelete = async (workPackage, done) => {
88
88
  }
89
89
  }
90
90
  catch (error) {
91
- console.error(error);
91
+ log.error(error);
92
92
  await models.AcBackgroundJob.updateErrorAsync(workPackage.jobId, error.toString());
93
93
  done(error);
94
94
  }
@@ -1,12 +1,13 @@
1
1
  import { AoiIconGenerator } from "../engine/allOurIdeas/iconGenerator.js";
2
2
  import models from "../../models/index.cjs";
3
3
  import { CollectionImageGenerator } from "../llms/imageGeneration/collectionImageGenerator.js";
4
+ import log from "../../utils/loggerTs.js";
4
5
  const dbModels = models;
5
6
  const Image = dbModels.Image;
6
7
  const AcBackgroundJob = dbModels.AcBackgroundJob;
7
8
  export class GenerativeAiWorker {
8
9
  async process(workPackage, callback) {
9
- console.info(`Processing workPackage: ${JSON.stringify(workPackage)}`);
10
+ log.info(`Processing workPackage: ${JSON.stringify(workPackage)}`);
10
11
  switch (workPackage.type) {
11
12
  case "collection-image":
12
13
  try {
@@ -18,13 +19,13 @@ export class GenerativeAiWorker {
18
19
  generator = new CollectionImageGenerator();
19
20
  }
20
21
  const { imageId, imageUrl } = await generator.createCollectionImage(workPackage);
21
- console.info(`Created imageId: ${imageId} imageUrl: ${imageUrl}`);
22
+ log.info(`Created imageId: ${imageId} imageUrl: ${imageUrl}`);
22
23
  if (imageId) {
23
24
  await AcBackgroundJob.updateDataAsync(workPackage.jobId, {
24
25
  imageId,
25
26
  imageUrl,
26
27
  });
27
- console.debug(`Updated job ${workPackage.jobId} with imageId: ${imageId} imageUrl: ${imageUrl}`);
28
+ log.debug(`Updated job ${workPackage.jobId} with imageId: ${imageId} imageUrl: ${imageUrl}`);
28
29
  }
29
30
  else {
30
31
  await AcBackgroundJob.update({
@@ -36,7 +37,7 @@ export class GenerativeAiWorker {
36
37
  callback();
37
38
  }
38
39
  catch (error) {
39
- console.error(error);
40
+ log.error(error);
40
41
  if (typeof error !== "string") {
41
42
  error = JSON.stringify(error);
42
43
  }
@@ -44,7 +45,7 @@ export class GenerativeAiWorker {
44
45
  await AcBackgroundJob.updateErrorAsync(workPackage.jobId, error);
45
46
  }
46
47
  catch (error) {
47
- console.error(error);
48
+ log.error(error);
48
49
  }
49
50
  callback(error);
50
51
  }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var i18n = require('../utils/i18n.cjs');
3
3
  var Backend = require('i18next-fs-backend');
4
- var log = require('../utils/logger.cjs');
4
+ var log = require('../../utils/logger.cjs');
5
5
  var path = require('path');
6
6
  var activity = require('./activity.cjs');
7
7
  var notification_delivery = require('./notification_delivery.cjs');
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -2,7 +2,7 @@
2
2
  // https://gist.github.com/mojodna/1251812
3
3
  var async = require("async");
4
4
  var models = require("../../models/index.cjs");
5
- var log = require('../utils/logger.cjs');
5
+ var log = require('../../utils/logger.cjs');
6
6
  var queue = require('./queue.cjs');
7
7
  var i18n = require('../utils/i18n.cjs');
8
8
  var toJson = require('../utils/to_json.cjs');
@@ -2,7 +2,7 @@
2
2
  // https://gist.github.com/mojodna/1251812
3
3
  var async = require("async");
4
4
  var models = require("../../models/index.cjs");
5
- var log = require('../utils/logger.cjs');
5
+ var log = require('../../utils/logger.cjs');
6
6
  var queue = require('./queue.cjs');
7
7
  var i18n = require('../utils/i18n.cjs');
8
8
  var toJson = require('../utils/to_json.cjs');
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const log = require('../utils/logger.cjs');
2
+ const log = require('../../utils/logger.cjs');
3
3
  const url = require('url');
4
4
  var airbrake = null;
5
5
  if (process.env.AIRBRAKE_PROJECT_ID) {
@@ -20,7 +20,7 @@ const redissOptions = {
20
20
  log.info("Starting app access to Bull Queue", { redis_url: redisUrl });
21
21
  class YpQueue {
22
22
  constructor() {
23
- console.log("Create YpQueue");
23
+ log.info("Create YpQueue");
24
24
  this.createQueues();
25
25
  }
26
26
  get defaultQueueOptions() {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  const models = require("../../models/index.cjs");
3
- const log = require('../utils/logger.cjs');
3
+ const log = require('../../utils/logger.cjs');
4
4
  const _ = require("lodash");
5
5
  const recountGroupFolder = async (workPackage, callback) => {
6
6
  try {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -21,8 +21,10 @@ function SimilaritiesWorker() { }
21
21
  */
22
22
  SimilaritiesWorker.prototype.process = function (workPackage, callback) {
23
23
  switch (workPackage.type) {
24
+ //TODO: This is disabled until our new similarities backend is ready
24
25
  case 'update-collection':
25
- updateSimilaritiesCollection(workPackage, callback);
26
+ // updateSimilaritiesCollection(workPackage, callback);
27
+ callback();
26
28
  break;
27
29
  default:
28
30
  callback("Unknown type for workPackage: " + workPackage.type);
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const async = require("async");
3
3
  const models = require("../../models/index.cjs");
4
- const log = require('../utils/logger.cjs');
4
+ const log = require('../../utils/logger.cjs');
5
5
  const queue = require('./queue.cjs');
6
6
  const i18n = require('../utils/i18n.cjs');
7
7
  const toJson = require('../utils/to_json.cjs');
@@ -11,7 +11,7 @@ if (process.env.AIRBRAKE_PROJECT_ID) {
11
11
  }
12
12
  catch (error) {
13
13
  airBrake = null;
14
- console.error(error);
14
+ log.error(error);
15
15
  }
16
16
  module.exports = airBrake;
17
17
  }
@@ -2,6 +2,7 @@ import { OpenAI } from "openai";
2
2
  import * as fs from "fs";
3
3
  import * as path from "path";
4
4
  import { promisify } from "util";
5
+ import log from "./loggerTs.js";
5
6
  const readFilePromise = promisify(fs.readFile);
6
7
  export class YpCjsCodeReview {
7
8
  constructor() {
@@ -36,10 +37,10 @@ export class YpCjsCodeReview {
36
37
  async reviewCjsFiles() {
37
38
  const files = await this.readFilesRecursively("./");
38
39
  for (const file of files) {
39
- console.log(`Reviewing file: ${file}`);
40
+ log.info(`Reviewing file: ${file}`);
40
41
  const content = await readFilePromise(file, "utf8");
41
42
  const review = await this.callLlm(content);
42
- console.log(`\n-----------------\nReview for file ${file}:\n${review}\n-----------------\n\n`);
43
+ log.info(`\n-----------------\nReview for file ${file}:\n${review}\n-----------------\n\n`);
43
44
  }
44
45
  }
45
46
  renderSystemPrompt() {
@@ -69,22 +70,22 @@ Your review results:`;
69
70
  let running = true;
70
71
  while (running) {
71
72
  try {
72
- //console.log(`Messages ${retries}:`, messages);
73
+ //log.info(`Messages ${retries}:`, messages);
73
74
  const results = await this.openaiClient.chat.completions.create({
74
75
  model: this.modelName,
75
76
  messages,
76
77
  max_tokens: this.maxTokens,
77
78
  temperature: this.temperature,
78
79
  });
79
- //console.log("Results:", results);
80
+ //log.info("Results:", results);
80
81
  const textReview = results.choices[0].message.content;
81
82
  return textReview;
82
83
  }
83
84
  catch (error) {
84
- console.error("Error:", error);
85
+ log.error("Error:", error);
85
86
  retries++;
86
87
  if (retries > maxRetries) {
87
- console.error("Max retries reached");
88
+ log.error("Max retries reached");
88
89
  running = false;
89
90
  return undefined;
90
91
  }
@@ -8,7 +8,7 @@ async function getTranslationForMap(textType, model, targetLanguage) {
8
8
  }
9
9
  else {
10
10
  resolve();
11
- console.log("No translation");
11
+ log.info("No translation");
12
12
  }
13
13
  });
14
14
  });
@@ -89,7 +89,7 @@ const getCommunityMap = async (communityId, map, options) => {
89
89
  resolve();
90
90
  }
91
91
  else {
92
- console.error("Cant find community " + communityId);
92
+ log.error("Cant find community " + communityId);
93
93
  map.children.push({ name: "Not found community id " + communityId, children: [] });
94
94
  resolve();
95
95
  }
@@ -132,7 +132,7 @@ const copyPost = (fromPostId, toGroupId, options, done) => {
132
132
  }).then(function (postIn) {
133
133
  oldPost = postIn;
134
134
  if (!postIn) {
135
- console.error("No post in");
135
+ log.error("No post in");
136
136
  callback("no post");
137
137
  }
138
138
  else {
@@ -371,7 +371,7 @@ const copyPost = (fromPostId, toGroupId, options, done) => {
371
371
  }
372
372
  },
373
373
  ], function (error) {
374
- console.log("Have copied post to group id");
374
+ log.info("Have copied post to group id");
375
375
  callback(error);
376
376
  });
377
377
  })
@@ -527,7 +527,7 @@ const copyPost = (fromPostId, toGroupId, options, done) => {
527
527
  newActivity
528
528
  .save()
529
529
  .then(function (results) {
530
- console.log("Have changed group and all activity: " +
530
+ log.info("Have changed group and all activity: " +
531
531
  newActivity.id);
532
532
  activitesSeriesCallback();
533
533
  })
@@ -548,7 +548,7 @@ const copyPost = (fromPostId, toGroupId, options, done) => {
548
548
  });
549
549
  });
550
550
  }, function (error) {
551
- console.log("Have changed group and all for point");
551
+ log.info("Have changed group and all for point");
552
552
  callback();
553
553
  });
554
554
  });
@@ -578,7 +578,7 @@ const copyPost = (fromPostId, toGroupId, options, done) => {
578
578
  newActivity
579
579
  .save()
580
580
  .then(function (results) {
581
- console.log("Have changed group and all activity: " + newActivity.id);
581
+ log.info("Have changed group and all activity: " + newActivity.id);
582
582
  innerSeriesCallback();
583
583
  })
584
584
  .catch((error) => {
@@ -597,9 +597,9 @@ const copyPost = (fromPostId, toGroupId, options, done) => {
597
597
  }
598
598
  },
599
599
  ], function (error) {
600
- console.log("Done copying post id " + fromPostId);
600
+ log.info("Done copying post id " + fromPostId);
601
601
  if (error)
602
- console.error(error);
602
+ log.error(error);
603
603
  done(error, newPost);
604
604
  });
605
605
  };
@@ -959,7 +959,7 @@ const copyGroup = (fromGroupId, toCommunityIn, toDomainId, options, done) => {
959
959
  }
960
960
  },
961
961
  ], function (error) {
962
- console.log("Have copied post to group id");
962
+ log.info("Have copied post to group id");
963
963
  callback(error);
964
964
  });
965
965
  });
@@ -969,9 +969,9 @@ const copyGroup = (fromGroupId, toCommunityIn, toDomainId, options, done) => {
969
969
  });
970
970
  },
971
971
  ], function (error) {
972
- console.log("Done copying group");
972
+ log.info("Done copying group");
973
973
  if (error)
974
- console.error(error);
974
+ log.error(error);
975
975
  done(error, newGroup);
976
976
  });
977
977
  };
@@ -1206,7 +1206,7 @@ const copyCommunity = (fromCommunityId, toDomainId, options, linkFromOptions, do
1206
1206
  }
1207
1207
  },
1208
1208
  ], function (error) {
1209
- console.log("Have copied community");
1209
+ log.info("Have copied community");
1210
1210
  callback(error);
1211
1211
  });
1212
1212
  });
@@ -1216,9 +1216,9 @@ const copyCommunity = (fromCommunityId, toDomainId, options, linkFromOptions, do
1216
1216
  });
1217
1217
  },
1218
1218
  ], function (error) {
1219
- console.log("Done copying community", newCommunity);
1219
+ log.info("Done copying community", newCommunity);
1220
1220
  if (error) {
1221
- console.error(error);
1221
+ log.error(error);
1222
1222
  done(error);
1223
1223
  }
1224
1224
  else {
@@ -1253,13 +1253,13 @@ const copyCommunityWithEverything = (communityId, toDomainId, options, done) =>
1253
1253
  copyPoints: true,
1254
1254
  }, null, (error, newCommunity) => {
1255
1255
  if (newCommunity)
1256
- console.log(newCommunity.id);
1256
+ log.info(newCommunity.id);
1257
1257
  if (error) {
1258
- console.error(error);
1258
+ log.error(error);
1259
1259
  done(error, newCommunity);
1260
1260
  }
1261
1261
  else {
1262
- //console.log("Done for new community "+ńewCommunity.id);
1262
+ //log.info("Done for new community "+ńewCommunity.id);
1263
1263
  done(null, newCommunity);
1264
1264
  }
1265
1265
  });
@@ -1277,13 +1277,13 @@ const deepCopyCommunityOnlyStructureWithAdminsAndPosts = (communityId, toDomainI
1277
1277
  skipActivities: true,
1278
1278
  }, null, (error, newCommunity) => {
1279
1279
  if (newCommunity)
1280
- console.log(newCommunity.id);
1280
+ log.info(newCommunity.id);
1281
1281
  if (error) {
1282
- console.error(error);
1282
+ log.error(error);
1283
1283
  done(error, newCommunity);
1284
1284
  }
1285
1285
  else {
1286
- //console.log("Done for new community "+ńewCommunity.id);
1286
+ //log.info("Done for new community "+ńewCommunity.id);
1287
1287
  done(null, newCommunity);
1288
1288
  }
1289
1289
  });
@@ -1299,15 +1299,15 @@ const copyCommunityNoUsersNoEndorsementsNoPoints = (communityId, toDomainId, don
1299
1299
  skipActivities: true,
1300
1300
  }, null, (error, newCommunity) => {
1301
1301
  if (newCommunity)
1302
- console.log(newCommunity.id);
1302
+ log.info(newCommunity.id);
1303
1303
  if (error) {
1304
- console.error(error);
1304
+ log.error(error);
1305
1305
  done(error, newCommunity);
1306
1306
  }
1307
1307
  else {
1308
1308
  recountCommunity(newCommunity.id, (recountError) => {
1309
1309
  if (recountError) {
1310
- console.error(error);
1310
+ log.error(error);
1311
1311
  done(recountError, newCommunity);
1312
1312
  }
1313
1313
  else {
@@ -1328,13 +1328,13 @@ const copyCommunityNoUsersNoEndorsements = (communityId, toDomainId, done) => {
1328
1328
  skipActivities: true,
1329
1329
  }, null, (error, newCommunity) => {
1330
1330
  if (newCommunity)
1331
- console.log(newCommunity.id);
1331
+ log.info(newCommunity.id);
1332
1332
  if (error) {
1333
- console.error(error);
1333
+ log.error(error);
1334
1334
  done(error, newCommunity);
1335
1335
  }
1336
1336
  else {
1337
- //console.log("Done for new community "+ńewCommunity.id);
1337
+ //log.info("Done for new community "+ńewCommunity.id);
1338
1338
  done(null, newCommunity);
1339
1339
  }
1340
1340
  });
@@ -1350,13 +1350,13 @@ const copyCommunityNoUsersNoEndorsementsOneGroup = (communityId, groupId, toDoma
1350
1350
  skipActivities: true,
1351
1351
  }, null, (error, newCommunity) => {
1352
1352
  if (newCommunity)
1353
- console.log(newCommunity.id);
1353
+ log.info(newCommunity.id);
1354
1354
  if (error) {
1355
- console.error(error);
1355
+ log.error(error);
1356
1356
  done(error, newCommunity);
1357
1357
  }
1358
1358
  else {
1359
- //console.log("Done for new community "+ńewCommunity.id);
1359
+ //log.info("Done for new community "+ńewCommunity.id);
1360
1360
  done(null, newCommunity);
1361
1361
  }
1362
1362
  });
@@ -1373,13 +1373,13 @@ const copyCommunityOnlyGroups = (communityId, toDomainId, done) => {
1373
1373
  skipActivities: true,
1374
1374
  }, null, (error, newCommunity) => {
1375
1375
  if (newCommunity)
1376
- console.log(newCommunity.id);
1376
+ log.info(newCommunity.id);
1377
1377
  if (error) {
1378
- console.error(error);
1378
+ log.error(error);
1379
1379
  done(error, newCommunity);
1380
1380
  }
1381
1381
  else {
1382
- //console.log("Done for new community "+ńewCommunity.id);
1382
+ //log.info("Done for new community "+ńewCommunity.id);
1383
1383
  done(null, newCommunity);
1384
1384
  }
1385
1385
  });
@@ -22,15 +22,15 @@ const getUserEmail = function (post) {
22
22
  }
23
23
  };
24
24
  const clean = function (text) {
25
- //console.log("Before: "+ text);
25
+ //log.info("Before: "+ text);
26
26
  var newText = text.replace('"', "'").replace('\n', '').replace('\r', '').replace(/(\r\n|\n|\r)/gm, "").replace(/"/gm, "'").replace(/,/, ';').trim();
27
- //console.log("After:" + newText);
27
+ //log.info("After:" + newText);
28
28
  return newText.replace(/´/g, '');
29
29
  };
30
30
  const cleanDescription = function (text) {
31
- //console.log("Before: "+ text);
31
+ //log.info("Before: "+ text);
32
32
  var newText = text.replace('"', "'").replace(/"/gm, "'").replace(/,/, ';').trim();
33
- //console.log("After:" + newText);
33
+ //log.info("After:" + newText);
34
34
  return newText.replace(/´/g, '');
35
35
  };
36
36
  const getLocation = function (post) {
@@ -49,7 +49,7 @@ const getPoints = function (points) {
49
49
  if (content.startsWith(",")) {
50
50
  content = content.substr(1);
51
51
  }
52
- //console.log("content: "+content);
52
+ //log.info("content: "+content);
53
53
  totalContent += content;
54
54
  });
55
55
  return totalContent;
@@ -84,7 +84,7 @@ const getPointsUpOrDown = function (post, value) {
84
84
  if (pointsText.startsWith(",")) {
85
85
  pointsText = pointsText.substr(1);
86
86
  }
87
- //console.log("PointText: "+pointsText);
87
+ //log.info("PointText: "+pointsText);
88
88
  return pointsText;
89
89
  };
90
90
  var getPointsUp = function (post) {
@@ -349,7 +349,7 @@ var getExportFileDataForGroup = function (group, hostName, callback) {
349
349
  if (group.configuration && group.configuration.customRatings) {
350
350
  customRatings = group.configuration.customRatings;
351
351
  }
352
- //console.log(posts.length);
352
+ //log.info(posts.length);
353
353
  outFileContent += "Nr, Post id,email,User Name,Post Name," + getDescriptionHeaders(group) + ",Url,Category,Latitude,Longitude,Up Votes,Down Votes,Points Count,Points For,Points Against,Images,Contact Name,Contact Email,Contact telephone,Attachment URL,Attachment filename,Media URLs,Post transcript" + getRatingHeaders(customRatings) + "\n";
354
354
  let postCounter = 0;
355
355
  async.eachSeries(posts, function (post, seriesCallback) {
@@ -1,3 +1,4 @@
1
+ import log from "./loggerTs.js";
1
2
  const systemPromptServerApi = `
2
3
  You are a meticulous API documentation generator. Your output should be in standard Markdown API documentation format. Focus on documenting key components of an Express.js application, including routes, middleware, controllers, services, models, and important utility functions/modules.
3
4
 
@@ -138,7 +139,7 @@ function buildDirectoryTree(dir, basePath = '', isSrc = false) {
138
139
  const entries = fs.readdirSync(dir, { withFileTypes: true });
139
140
  entries.forEach((entry) => {
140
141
  if (IGNORED_PATTERNS.some(pattern => entry.name.includes(pattern) || entry.name.startsWith('.'))) {
141
- console.log(`Skipping ${entry.name} in buildDirectoryTree`);
142
+ log.info(`Skipping ${entry.name} in buildDirectoryTree`);
142
143
  return;
143
144
  }
144
145
  const relativePath = isSrc ? entry.name : path.join(basePath, entry.name);
@@ -183,7 +184,7 @@ function generateMarkdownFromTree(tree, depth = 0) {
183
184
  }
184
185
  function generateDocsReadme() {
185
186
  const tree = buildDirectoryTree(docsDir);
186
- console.log(JSON.stringify(tree, null, 2));
187
+ log.info(JSON.stringify(tree, null, 2));
187
188
  const markdown = generateMarkdownFromTree(tree);
188
189
  const readmePath = path.join(docsDir, 'README.md');
189
190
  const apiHeader = '## API Documentation';
@@ -212,7 +213,7 @@ function findSourceFiles(dir, fileList = []) {
212
213
  for (const entry of entries) {
213
214
  if (IGNORED_PATTERNS.some(pattern => entry.name.includes(pattern) || entry.name.startsWith('.'))) {
214
215
  if (entry.name !== ".env") { // Explicitly allow .env if it's not otherwise ignored by a broader pattern
215
- console.log(`Skipping ${path.join(dir, entry.name)} due to ignore patterns.`);
216
+ log.info(`Skipping ${path.join(dir, entry.name)} due to ignore patterns.`);
216
217
  continue;
217
218
  }
218
219
  }
@@ -244,7 +245,7 @@ async function generateDocumentation(fileList, systemPrompt) {
244
245
  }
245
246
  if (checksum !== existingChecksum) {
246
247
  try {
247
- console.log(`${file}:`);
248
+ log.info(`${file}:`);
248
249
  const completion = await openaiClient.chat.completions.create({
249
250
  model: 'gpt-4.1',
250
251
  temperature: 0.0,
@@ -255,7 +256,7 @@ async function generateDocumentation(fileList, systemPrompt) {
255
256
  ],
256
257
  });
257
258
  let docContent = completion.choices[0].message.content;
258
- console.log(docContent);
259
+ log.info(docContent);
259
260
  docContent = docContent.replace(/```markdown\s+/g, '');
260
261
  const sourceDir = path.join(rootDir, 'src');
261
262
  const relativePathInSrc = path.relative(sourceDir, file);
@@ -266,15 +267,15 @@ async function generateDocumentation(fileList, systemPrompt) {
266
267
  }
267
268
  fs.writeFileSync(docFilePath, docContent);
268
269
  fs.writeFileSync(checksumFile, checksum); // Save the new checksum
269
- console.log(`Documentation generated for ${file}`);
270
+ log.info(`Documentation generated for ${file}`);
270
271
  }
271
272
  catch (error) {
272
- console.error(`Error generating documentation for ${file}:`, error);
273
+ log.error(`Error generating documentation for ${file}:`, error);
273
274
  process.exit(1);
274
275
  }
275
276
  }
276
277
  else {
277
- console.log(`Skipping documentation generation for ${file}, no changes detected.`);
278
+ log.info(`Skipping documentation generation for ${file}, no changes detected.`);
278
279
  }
279
280
  }
280
281
  }
@@ -284,4 +285,4 @@ async function main() {
284
285
  await generateDocumentation(sourceFiles, systemPromptServerApi);
285
286
  generateDocsReadme();
286
287
  }
287
- main().then(() => console.log('Documentation generation complete.'));
288
+ main().then(() => log.info('Documentation generation complete.'));