@loxia-labs/loxia-autopilot-one 1.0.7 → 1.0.9

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 (119) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/aiService.js +1 -1
  76. package/src/services/apiKeyManager.js +1 -1
  77. package/src/services/benchmarkService.js +1 -1
  78. package/src/services/budgetService.js +1 -1
  79. package/src/services/contextInjectionService.js +1 -1
  80. package/src/services/conversationCompactionService.js +1 -1
  81. package/src/services/errorHandler.js +1 -1
  82. package/src/services/fileAttachmentService.js +1 -1
  83. package/src/services/modelRouterService.js +1 -1
  84. package/src/services/modelsService.js +1 -1
  85. package/src/services/qualityInspector.js +1 -1
  86. package/src/services/tokenCountingService.js +1 -1
  87. package/src/tools/agentCommunicationTool.js +1 -1
  88. package/src/tools/agentDelayTool.js +1 -1
  89. package/src/tools/asyncToolManager.js +1 -1
  90. package/src/tools/baseTool.js +1 -1
  91. package/src/tools/browserTool.js +1 -1
  92. package/src/tools/cloneDetectionTool.js +1 -1
  93. package/src/tools/dependencyResolverTool.js +1 -1
  94. package/src/tools/fileContentReplaceTool.js +1 -1
  95. package/src/tools/fileSystemTool.js +1 -1
  96. package/src/tools/fileTreeTool.js +1 -1
  97. package/src/tools/imageTool.js +1 -1
  98. package/src/tools/importAnalyzerTool.js +1 -1
  99. package/src/tools/jobDoneTool.js +1 -1
  100. package/src/tools/seekTool.js +1 -1
  101. package/src/tools/staticAnalysisTool.js +1 -1
  102. package/src/tools/taskManagerTool.js +1 -1
  103. package/src/tools/terminalTool.js +1 -1
  104. package/src/tools/webTool.js +1 -1
  105. package/src/types/agent.js +1 -1
  106. package/src/types/contextReference.js +1 -1
  107. package/src/types/conversation.js +1 -1
  108. package/src/types/toolCommand.js +1 -1
  109. package/src/utilities/attachmentValidator.js +1 -1
  110. package/src/utilities/configManager.js +1 -1
  111. package/src/utilities/constants.js +1 -1
  112. package/src/utilities/directoryAccessManager.js +1 -1
  113. package/src/utilities/fileProcessor.js +1 -1
  114. package/src/utilities/logger.js +1 -1
  115. package/src/utilities/tagParser.js +1 -1
  116. package/src/utilities/toolConstants.js +1 -1
  117. package/web-ui/build/index.html +2 -2
  118. package/web-ui/build/static/{index-BVF_10a5.css → index-BmKxmRe3.css} +1 -1
  119. package/web-ui/build/static/{index-DE5VFS1q.js → index-BzXbDs8z.js} +63 -63
@@ -1 +1 @@
1
- const a0_0x499fab=a0_0x2427;(function(_0xe562b5,_0x25a36f){const _0x1e314e=a0_0x2427,_0x45958f=_0xe562b5();while(!![]){try{const _0x10fd58=-parseInt(_0x1e314e(0x27d))/0x1*(parseInt(_0x1e314e(0x22e))/0x2)+parseInt(_0x1e314e(0x20f))/0x3*(parseInt(_0x1e314e(0x275))/0x4)+parseInt(_0x1e314e(0x259))/0x5+-parseInt(_0x1e314e(0x1c9))/0x6*(parseInt(_0x1e314e(0x1d7))/0x7)+parseInt(_0x1e314e(0x279))/0x8+-parseInt(_0x1e314e(0x280))/0x9*(parseInt(_0x1e314e(0x27e))/0xa)+-parseInt(_0x1e314e(0x1ed))/0xb*(-parseInt(_0x1e314e(0x246))/0xc);if(_0x10fd58===_0x25a36f)break;else _0x45958f['push'](_0x45958f['shift']());}catch(_0xc8f477){_0x45958f['push'](_0x45958f['shift']());}}}(a0_0x114c,0x858a8));function a0_0x114c(){const _0x4cf81f=['C3rHCNrZv2L0Aa','zxH0BMfTzq','C2v2zxjPDhK','x19WEwnHy2HLx18','CMvTywLUAw5NrxjYB3jZ','y2HHBMDLCW','zML4zwq','zML4','DMfSAwrHDgvxCML0zufJy2vZCW','vw5RBM93BIbHy3rPB24GDhLWztOG','rMfPBgvKihrVihbHCNnLihn0yxrPyYbHBMfSExnPCYbWyxjHBwv0zxjZoIa','Cgf0DgvYBG','zgv0zwn0tgfUz3vHz2u','AMf2yxnJCMLWDa','q1jjveLdquW','DgLTzw91Da','y2XLyxjdywnOzq','rMLSzsb0B28GBgfYz2u6ia','AxnbC3LUyW','BMfTzq','DMfSAwrHDgvdB25MAwDgAwXL','AxneAxjLy3rVCNK','C2vJDxjPDhKTC2nHBG','D3jPDguTzMLSzq','ChvZAa','DMfSAwrHDguTy29UzMLN','AxnbyNnVBhv0zq','zgvWzw5Kzw5JAwvZ','igj5DgvZicHTyxGG','ywn0Aw9UCW','y3DK','z2v0vgLTzq','Dg9mB3DLCKnHC2u','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYa','su5gtW','zg9JA2vYlwnVBxbVC2uUEwfTBa','C2TPCfrLC3rgAwXLCW','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','C2vJDxjPDhLty2fUrMLSzq','Bwv0CMLJCW','nNLzq0zfBq','Dg90ywXbBMfSExnPC1rPBwu','DxbKyxrLu3vTBwfYEq','Dg9ju09tDhjPBMC','zMLSzs1WyxrO','zgLNzxn0','ywXSB3DLza','oIb0ExbLigLZihjLCxvPCMvK','C2L6zq','C3rYAw5N','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihnLy3vYAxr5lxnJyw4TChjVAMvJDa','A3vIzxjUzxrLCW','BgfUz3vHz2u','lMDPDa','mJG5nJyYmwzfC1nywq','Dg90ywW','rLjbtuvxt1jlx01btKLgrvnuuW','lI4Vyw5HBhL6zxjZl1bYzxr0AwvYrM9YBwf0DgvYlMPZ','lNbYzxr0AwvYCMmUANnVBG','lNrMDMfYCW','BM9YBwfSAxPL','zMLSDgvY','rMfPBgvKihrVigzPEca','C3vTBwfYEq','zMLSzvbHDgG','vxnPBMCGy2fJAgvKigfUywX5C2LZihjLC3vSDa','q0fdsevFrfvsqvrjt04','zMLSzxncEuXHBMD1ywDL','DxbKyxrL','igzPBgvZihbLCIbVCgvYyxrPB24klsbbBMfSExnPCYb0Aw1LB3v0oIa','zxjYB3i','yw5HBhLZAxndywnOzq','ufLuse9ox0zsqu1fv09ss1m','zM9YrwfJAa','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','Aw5JBhvKzxm','mZnxyK1HthC','vg9Vig1HBNKGzMLSzxm6ia','zgv0zwn0rNjHBwv3B3jR','zMLSzxnbBMfSExPLza','CMvZzxrqzxjMB3jTyw5Jzu1LDhjPy3m','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','Aw5JBhvKzs13yxjUAw5NCW','ChjLDhrPzxi','AxngAwXL','z2v0uhjLDhrPzxjgB3jTyxr0zxi','DhjPBq','Dhj1BMnHDgvK','BgLUzxndAgfUz2vK','Aw5JBhvKzvDHCM5PBMDZ','C3bSAxq','yw5HBhL6zvbYB2PLy3q','DhLWzxnJCMLWDa','z2v0u2vJDxjPDhLbBMfSExPLCG','qw5HBhL6Aw5NigjHDgnO','lI4Vyw5HBhL6zxjZl0ntu0fUywX5EMvYlMPZ','Dw5RBM93BG','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','ihnLy29UzhmklsbpBMX5ihn1ChbVCNrZigXHBMD1ywDLCYb3AxrOigj1AwX0lwLUigfUywX5EMvYCWOGicaG','C3vIC3rYAw5N','zMLSzxnxAxrOrxjYB3jZ','DxnLq29UDgvUDeHHC2G','DMfSAwrHDgvszwfKqwnJzxnZ','CgfYC2vbDhrYAwj1DgvZ','lI4Vyw5HBhL6zxjZl1nLy3vYAxr5qw5HBhL6zxiUANm','Dhj1zq','BgvUz3rO','icHTyxGG','yw5HBhL6zxjZ','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','mtq0mte0qK5xwxbQ','CM91BMq','Bg9Nz2vY','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','zMLSzxm','z2v0rgvZy3jPChrPB24','DMfSAwrHDg9Y','CgfYywXSzwXbBMfSExnPCW','zgv2rgvWzw5Kzw5JAwvZ','B25qCM9NCMvZCW','y3nZ','rNjHBwv3B3jRigrLDgvJDgLVBIbMywLSzwq','C3rHDa','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zgv0zwn0uhL0Ag9UrNjHBwv3B3jR','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYbMAwXL','CMf3q29UDgvUDa','zgvIDwC','CMvZB2X2zq','C2XPy2u','uMvHzcbHy2nLC3mGzgvUAwvKoIa','y29TCgXLDgvK','BM9Kzv9TB2r1BgvZ','CMvHC29U','BNbTlwf1zgL0','BxrPBwu','yw5HBhL6zs1WCM9Qzwn0','rMfPBgvKihrVigXVywqGyw5HBhL6zxi','yNvPBgq','zw5HyMXLq2fJAgu','u0ntuW','nJzOvvHIuvG','vfLqrvnduKLqva','C2vJDxjPDhK','zxjYB3jZ','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','tefor1vbr0u','Dg90ywXdCML0AwnHBa','Bwf4rxjYB3jZ','lMvZBgLUDhjJlMPZB24','zgLYzwn0B3j5','zML4zwrdB3vUDa','CMvHzezPBgu','zgv0zwn0sLngCMfTzxDVCMS','zM9YBwf0DgvYCW','yMfZzw5HBwu','CMvTywLUAw5Nv2fYBMLUz3m','rvHuru5tsu9ox1rpx0XbtKDvquDf','AxntDxbWB3j0zwq','Aw5MBW','AM9PBG','ru5bqKXfx0nbq0Hf','Aw5KzxHpzG','y29UzMLN','u2vJDxjPDhKGC2nHBM5PBMCGB25SEsbZDxbWB3j0CYbkyxzHu2nYAxb0lcbuExbLu2nYAxb0lcbHBMqGuhL0Ag9UigzPBgvZ','mJaZodq0mhvXuhnbza','CgfYywXSzwXcyxrJAgvZ','BM93','lI4Vyw5HBhL6zxjZl1r5Cgvty3jPChrbBMfSExPLCI5QCW','C2HHmJu2','sKfwqvnduKLqva','ChL0Ag9U','CgfYC2u','y29UDgvUDa','Bwf4rMLSzvnPEMu','D2fYBG','y2fJAgvfEhbPCNK','y3jLyxrLsgfZAa','v0fstKLorW','DgLTzxn0yw1W','v3jPDguGywnJzxnZigrLBMLLzdOG','DhLWzq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzVCM1HDa','tM8Gyw5HBhL6zxiGyxzHAwXHyMXLigzVCIa','ndu3mta1mezty25duG','y3jPDgLJywW','CMvHzgrPCG','lI4Vyw5HBhL6zxjZl0vttgLUDefUywX5EMvYlMPZ','C2vJDxjPDhLty2fUuhjVAMvJDa','vg9Vig1HBNKGy29UzMLNigzPBgvZoIa','D3jPDgvgAwXL','qwn0Aw9Uia','Bwf4rMLSzxnqzxjcyxrJAa','u0vwrvjjvfK','ufLuse9o','zxHLyW','BwfW','yxjYyxK','zMLUzezPBgvZ','rvjst1i','lMvZBgLUDhjJlMPZ','DxrMltG','BwvZC2fNzq','zM9YBwf0rMLSzq','z2v0','zxnSAw50','Bwf0y2G','Bwf4ugfYywXSzwXgAwXLCW','yw5HBhL6zuzPBgu','y2fJAgvnAxnZzxm','y2f0zwDVCNK','lNLTBa','ognbu29ita','zM9YBwf0','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','y3jLyxrLuMvSyxrPDMvqyxrO','mJKZmZi1nM5mrwzMvq','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5lgnZCYXZy3nZlhnHC3mSBgvZC30','zML4rMLSzq','zMLUzenVBMzPz0zPBgvZ','mZq0owjIBe9ArW','mtbmD0Tgzg4','AxnbCNjHEq','nZmWnZu0mxrIyuTxrW','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','vg9Vig1HBNKGywn0Aw9UCZOG','Bwf4lwvYCM9YCW','yw5HBhL6zq','zw50CMLLCW'];a0_0x114c=function(){return _0x4cf81f;};return a0_0x114c();}import{BaseTool}from'./baseTool.js';function a0_0x2427(_0x411682,_0x51d12c){_0x411682=_0x411682-0x1b3;const _0x114cbc=a0_0x114c();let _0x24274c=_0x114cbc[_0x411682];if(a0_0x2427['fcmNFS']===undefined){var _0x308b9d=function(_0x5f53f1){const _0x191af3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17136b='',_0x1c7cbf='';for(let _0x16b9f4=0x0,_0x3d71ac,_0x45b761,_0x16b910=0x0;_0x45b761=_0x5f53f1['charAt'](_0x16b910++);~_0x45b761&&(_0x3d71ac=_0x16b9f4%0x4?_0x3d71ac*0x40+_0x45b761:_0x45b761,_0x16b9f4++%0x4)?_0x17136b+=String['fromCharCode'](0xff&_0x3d71ac>>(-0x2*_0x16b9f4&0x6)):0x0){_0x45b761=_0x191af3['indexOf'](_0x45b761);}for(let _0x499925=0x0,_0xd99e3d=_0x17136b['length'];_0x499925<_0xd99e3d;_0x499925++){_0x1c7cbf+='%'+('00'+_0x17136b['charCodeAt'](_0x499925)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c7cbf);};a0_0x2427['sdoFVY']=_0x308b9d,a0_0x2427['yCaMIB']={},a0_0x2427['fcmNFS']=!![];}const _0x458560=_0x114cbc[0x0],_0x5263ac=_0x411682+_0x458560,_0x3552ef=a0_0x2427['yCaMIB'][_0x5263ac];return!_0x3552ef?(_0x24274c=a0_0x2427['sdoFVY'](_0x24274c),a0_0x2427['yCaMIB'][_0x5263ac]=_0x24274c):_0x24274c=_0x3552ef,_0x24274c;}import a0_0x17136b from'../utilities/tagParser.js';import a0_0x1c7cbf from'../utilities/directoryAccessManager.js';import a0_0x16b9f4 from'fs/promises';import a0_0x3d71ac from'path';import a0_0x45b761 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x16b910={},_0x499925=null){const _0x4ee482=a0_0x2427;super(_0x16b910,_0x499925),this['requiresProject']=!![],this[_0x4ee482(0x298)]=![],this[_0x4ee482(0x295)]=_0x16b910['timeout']||STATIC_ANALYSIS['ANALYSIS_TIMEOUT'],this[_0x4ee482(0x212)]=_0x16b910[_0x4ee482(0x212)]||0x1,this['maxFileSize']=_0x16b910['maxFileSize']||STATIC_ANALYSIS['MAX_FILE_SIZE_FOR_ANALYSIS'],this['maxFilesPerBatch']=_0x16b910[_0x4ee482(0x261)]||STATIC_ANALYSIS['MAX_FILES_PER_BATCH'],this[_0x4ee482(0x22c)]=_0x16b910['enableCache']!==![]&&STATIC_ANALYSIS[_0x4ee482(0x242)],this[_0x4ee482(0x1e8)]=new Map(),this[_0x4ee482(0x251)]=STATIC_ANALYSIS[_0x4ee482(0x1e3)],this['parallelAnalysis']=_0x16b910['parallelAnalysis']!==![],this['maxParallelFiles']=_0x16b910['maxParallelFiles']||0xa,this[_0x4ee482(0x206)]=_0x16b910['useContentHash']!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this['directoryAccessManager']=new a0_0x1c7cbf(_0x16b910,_0x499925),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this['formatters']={'prettier':null};}[a0_0x499fab(0x214)](){const _0x4d0e55=a0_0x499fab;return _0x4d0e55(0x277)+Math['round'](this['maxFileSize']/0x400/0x400)+'MB\x20per\x20file\x0a-\x20Batch\x20limit:\x20'+this['maxFilesPerBatch']+_0x4d0e55(0x1e6)+this['timeout']/0x3e8+_0x4d0e55(0x203);}['parseParameters'](_0xd99e3d){const _0x3a7a70=a0_0x499fab;try{const _0x9f00f3={},_0x25bf61=[];this[_0x3a7a70(0x211)]?.[_0x3a7a70(0x220)]('StaticAnalysis\x20tool\x20parsing\x20parameters',{'contentLength':_0xd99e3d[_0x3a7a70(0x20b)],'contentPreview':_0xd99e3d[_0x3a7a70(0x204)](0x0,0xc8)});const _0x1fd507=/<analyze\s+(.+?)\/>/g;let _0x297cda;while((_0x297cda=_0x1fd507['exec'](_0xd99e3d))!==null){const _0x2c8d7b=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x3ac7f3=new a0_0x17136b(),_0x211ff2=_0x3ac7f3['parseAttributes'](_0x2c8d7b),_0x272a9e={'type':_0x3a7a70(0x284),..._0x211ff2};_0x272a9e[_0x3a7a70(0x1cd)]&&(_0x272a9e[_0x3a7a70(0x1e1)]=_0x272a9e['file-path'],delete _0x272a9e[_0x3a7a70(0x1cd)]),_0x272a9e[_0x3a7a70(0x1f3)]&&(_0x272a9e[_0x3a7a70(0x1fa)]=_0x272a9e['include-warnings']==='true',delete _0x272a9e['include-warnings']),_0x272a9e['max-errors']&&(_0x272a9e['maxErrors']=parseInt(_0x272a9e['max-errors'],0xa),delete _0x272a9e['max-errors']),_0x25bf61['push'](_0x272a9e);}const _0x474a04=/<analyze-project\s+(.+?)\/>/g;while((_0x297cda=_0x474a04['exec'](_0xd99e3d))!==null){const _0x2cecfa=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x2b6901=new a0_0x17136b(),_0x1ff685=_0x2b6901[_0x3a7a70(0x208)](_0x2cecfa),_0x111aba={'type':_0x3a7a70(0x229),..._0x1ff685};_0x111aba[_0x3a7a70(0x1f3)]&&(_0x111aba[_0x3a7a70(0x1fa)]=_0x111aba['include-warnings']===_0x3a7a70(0x20a),delete _0x111aba['include-warnings']),_0x111aba[_0x3a7a70(0x283)]&&(_0x111aba['maxErrors']=parseInt(_0x111aba['max-errors'],0xa),delete _0x111aba[_0x3a7a70(0x283)]),_0x25bf61['push'](_0x111aba);}const _0xadf938=/<fix\s+(.+?)\/>/g;while((_0x297cda=_0xadf938['exec'](_0xd99e3d))!==null){const _0xc06d0c=_0x297cda[0x1]['trim'](),_0x511435=new a0_0x17136b(),_0x1f3f93=_0x511435[_0x3a7a70(0x208)](_0xc06d0c),_0x3db1db={'type':_0x3a7a70(0x28d),..._0x1f3f93};_0x3db1db['file-path']&&(_0x3db1db[_0x3a7a70(0x1e1)]=_0x3db1db['file-path'],delete _0x3db1db[_0x3a7a70(0x1cd)]),_0x3db1db['write-file']&&(_0x3db1db[_0x3a7a70(0x25f)]=_0x3db1db['write-file']==='true',delete _0x3db1db[_0x3a7a70(0x1b7)]),_0x25bf61['push'](_0x3db1db);}const _0x47ff8f=/<format\s+(.+?)\/>/g;while((_0x297cda=_0x47ff8f[_0x3a7a70(0x264)](_0xd99e3d))!==null){const _0x434cce=_0x297cda[0x1]['trim'](),_0x2debf0=new a0_0x17136b(),_0x3f5445=_0x2debf0['parseAttributes'](_0x434cce),_0x3d7596={'type':_0x3a7a70(0x276),..._0x3f5445};_0x3d7596['file-path']&&(_0x3d7596['filePath']=_0x3d7596['file-path'],delete _0x3d7596[_0x3a7a70(0x1cd)]),_0x3d7596['write-file']&&(_0x3d7596['writeFile']=_0x3d7596['write-file']===_0x3a7a70(0x20a),delete _0x3d7596[_0x3a7a70(0x1b7)]),_0x25bf61[_0x3a7a70(0x1b8)](_0x3d7596);}const _0x5edbc3=/<security-scan\s+(.+?)\/>/g;while((_0x297cda=_0x5edbc3['exec'](_0xd99e3d))!==null){const _0x2046cb=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x4bfeff=new a0_0x17136b(),_0x3ffc15=_0x4bfeff[_0x3a7a70(0x208)](_0x2046cb),_0x13dec8={'type':'security-scan',..._0x3ffc15};_0x13dec8[_0x3a7a70(0x1cd)]&&(_0x13dec8[_0x3a7a70(0x1e1)]=_0x13dec8[_0x3a7a70(0x1cd)],delete _0x13dec8['file-path']),_0x13dec8['skip-test-files']&&(_0x13dec8[_0x3a7a70(0x1c5)]=_0x13dec8['skip-test-files']==='true',delete _0x13dec8['skip-test-files']),_0x25bf61[_0x3a7a70(0x1b8)](_0x13dec8);}const _0x2a989d=/<security-scan-project\s+(.+?)\/>/g;while((_0x297cda=_0x2a989d[_0x3a7a70(0x264)](_0xd99e3d))!==null){const _0x5c8db4=_0x297cda[0x1][_0x3a7a70(0x1f7)](),_0x408f01=new a0_0x17136b(),_0x2bc945=_0x408f01['parseAttributes'](_0x5c8db4),_0x47c667={'type':'security-scan-project',..._0x2bc945};_0x47c667['skip-test-files']&&(_0x47c667['skipTestFiles']=_0x47c667['skip-test-files']===_0x3a7a70(0x20a),delete _0x47c667['skip-test-files']),_0x25bf61['push'](_0x47c667);}const _0xad7e6c=/<validate-config\s+(.+?)\/>/g;while((_0x297cda=_0xad7e6c['exec'](_0xd99e3d))!==null){const _0x5ee640=_0x297cda[0x1]['trim'](),_0x5704d6=new a0_0x17136b(),_0x246c0f=_0x5704d6[_0x3a7a70(0x208)](_0x5ee640),_0xd8d5cf={'type':_0x3a7a70(0x1b9),..._0x246c0f};_0xd8d5cf['file-path']&&(_0xd8d5cf[_0x3a7a70(0x1e1)]=_0xd8d5cf['file-path'],delete _0xd8d5cf[_0x3a7a70(0x1cd)]),_0x25bf61[_0x3a7a70(0x1b8)](_0xd8d5cf);}const _0x56cb7c=/<validate-config-directory\s+(.+?)\/>/g;while((_0x297cda=_0x56cb7c[_0x3a7a70(0x264)](_0xd99e3d))!==null){const _0x560f39=_0x297cda[0x1]['trim'](),_0x38413f=new a0_0x17136b(),_0x5c10e2=_0x38413f[_0x3a7a70(0x208)](_0x560f39),_0x188d6e={'type':_0x3a7a70(0x1f2),..._0x5c10e2};_0x25bf61['push'](_0x188d6e);}return _0x9f00f3['actions']=_0x25bf61,_0x9f00f3[_0x3a7a70(0x21f)]=_0xd99e3d[_0x3a7a70(0x1f7)](),this['logger']?.['debug']('Parsed\x20StaticAnalysis\x20tool\x20parameters',{'totalActions':_0x25bf61[_0x3a7a70(0x20b)],'actionTypes':_0x25bf61[_0x3a7a70(0x265)](_0xb8bd6a=>_0xb8bd6a['type'])}),_0x9f00f3;}catch(_0x56be49){throw new Error(_0x3a7a70(0x290)+_0x56be49[_0x3a7a70(0x26b)]);}}[a0_0x499fab(0x202)](){const _0x5ab653=a0_0x499fab;return[_0x5ab653(0x1bd)];}[a0_0x499fab(0x20e)](_0x2a4536){const _0x39306d=a0_0x499fab,_0x53f060=[];if(!_0x2a4536[_0x39306d(0x1bd)]||!Array[_0x39306d(0x27f)](_0x2a4536[_0x39306d(0x1bd)])||_0x2a4536[_0x39306d(0x1bd)][_0x39306d(0x20b)]===0x0)_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x1eb));else{for(const [_0x2e6409,_0x5597e6]of _0x2a4536[_0x39306d(0x1bd)]['entries']()){if(!_0x5597e6['type']){_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+_0x39306d(0x1d0));continue;}switch(_0x5597e6[_0x39306d(0x256)]){case'analyze':!_0x5597e6[_0x39306d(0x1e1)]&&_0x53f060['push']('Action\x20'+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20analyze');break;case _0x39306d(0x229):!_0x5597e6['directory']&&_0x53f060['push']('Action\x20'+(_0x2e6409+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case _0x39306d(0x28d):!_0x5597e6['filePath']&&_0x53f060[_0x39306d(0x1b8)]('Action\x20'+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20fix');break;case _0x39306d(0x276):!_0x5597e6['filePath']&&_0x53f060['push']('Action\x20'+(_0x2e6409+0x1)+_0x39306d(0x257));break;case _0x39306d(0x1b6):!_0x5597e6['filePath']&&_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case _0x39306d(0x1c6):!_0x5597e6[_0x39306d(0x237)]&&_0x53f060[_0x39306d(0x1b8)]('Action\x20'+(_0x2e6409+0x1)+_0x39306d(0x1d3));break;case'validate-config':!_0x5597e6[_0x39306d(0x1e1)]&&_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case _0x39306d(0x1f2):!_0x5597e6[_0x39306d(0x237)]&&_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20directory\x20is\x20required\x20for\x20validate-config-directory');break;default:_0x53f060[_0x39306d(0x1b8)](_0x39306d(0x260)+(_0x2e6409+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x5597e6['type']);}}_0x2a4536[_0x39306d(0x1bd)]['length']>this[_0x39306d(0x261)]&&_0x53f060['push'](_0x39306d(0x282)+_0x2a4536[_0x39306d(0x1bd)]['length']+'\x20(max\x20'+this[_0x39306d(0x261)]+')');}return{'valid':_0x53f060[_0x39306d(0x20b)]===0x0,'errors':_0x53f060};}async['execute'](_0x3d5e8f,_0x49e25a){const _0x427dfe=a0_0x499fab,{actions:_0x3369b8}=_0x3d5e8f,{projectDir:_0x124036,agentId:_0x2911ee,directoryAccess:_0xdce5b0}=_0x49e25a,_0x4d64a5=_0xdce5b0||this['directoryAccessManager'][_0x427dfe(0x281)]({'workingDirectory':_0x124036||process['cwd'](),'writeEnabledDirectories':[_0x124036||process[_0x427dfe(0x1be)]()],'restrictToProject':!![]}),_0x3997e7=this['directoryAccessManager']['getWorkingDirectory'](_0x4d64a5),_0x550c81={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x43ddb8 of _0x3369b8){try{let _0x28fd07;switch(_0x43ddb8['type']){case _0x427dfe(0x284):_0x28fd07=await this[_0x427dfe(0x271)](_0x43ddb8[_0x427dfe(0x1e1)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&(_0x550c81['files']['push'](_0x28fd07),this['updateSummary'](_0x550c81[_0x427dfe(0x1e0)],_0x28fd07));break;case _0x427dfe(0x229):const _0x4d6a03=await this[_0x427dfe(0x1fc)](_0x43ddb8['directory'],_0x43ddb8[_0x427dfe(0x291)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x550c81['files']['push'](..._0x4d6a03);for(const _0x18305b of _0x4d6a03){this['updateSummary'](_0x550c81['summary'],_0x18305b);}break;case _0x427dfe(0x28d):_0x28fd07=await this[_0x427dfe(0x27b)](_0x43ddb8[_0x427dfe(0x1e1)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&_0x550c81['files'][_0x427dfe(0x1b8)](_0x28fd07);break;case _0x427dfe(0x276):_0x28fd07=await this['formatFile'](_0x43ddb8['filePath'],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&_0x550c81['files']['push'](_0x28fd07);break;case _0x427dfe(0x1b6):_0x28fd07=await this['securityScanFile'](_0x43ddb8['filePath'],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&(_0x550c81[_0x427dfe(0x213)][_0x427dfe(0x1b8)](_0x28fd07),this[_0x427dfe(0x1cb)](_0x550c81[_0x427dfe(0x1e0)],_0x28fd07));break;case'security-scan-project':const _0x246cae=await this[_0x427dfe(0x25d)](_0x43ddb8['directory'],_0x43ddb8['pattern'],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x550c81['files'][_0x427dfe(0x1b8)](..._0x246cae);for(const _0x7d2579 of _0x246cae){this['updateSummary'](_0x550c81['summary'],_0x7d2579);}break;case _0x427dfe(0x1b9):_0x28fd07=await this[_0x427dfe(0x1b4)](_0x43ddb8[_0x427dfe(0x1e1)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x28fd07&&(_0x550c81['files'][_0x427dfe(0x1b8)](_0x28fd07),this[_0x427dfe(0x1cb)](_0x550c81[_0x427dfe(0x1e0)],_0x28fd07));break;case _0x427dfe(0x1f2):const _0x4d7126=await this['validateConfigDirectory'](_0x43ddb8[_0x427dfe(0x237)],_0x3997e7,_0x4d64a5,_0x43ddb8);_0x550c81['files']['push'](..._0x4d7126);for(const _0x5594fa of _0x4d7126){this['updateSummary'](_0x550c81['summary'],_0x5594fa);}break;default:throw new Error(_0x427dfe(0x28f)+_0x43ddb8[_0x427dfe(0x256)]);}}catch(_0x37b14b){this[_0x427dfe(0x211)]?.[_0x427dfe(0x1e7)]('Static\x20analysis\x20action\x20failed',{'action':_0x43ddb8[_0x427dfe(0x256)],'error':_0x37b14b['message']}),_0x550c81['files'][_0x427dfe(0x1b8)]({'file':_0x43ddb8[_0x427dfe(0x1e1)]||_0x43ddb8['directory'],'error':_0x37b14b['message'],'success':![]});}}return{'success':!![],'results':_0x550c81,'toolUsed':'staticanalysis','performance':this[_0x427dfe(0x232)]()};}async[a0_0x499fab(0x271)](_0x20fa7d,_0x4ddd7a,_0x49f3b9,_0x548435={}){const _0x51ed0b=a0_0x499fab,_0x3415c7=a0_0x3d71ac[_0x51ed0b(0x1ba)](_0x20fa7d)?a0_0x3d71ac[_0x51ed0b(0x1dd)](_0x20fa7d):a0_0x3d71ac['resolve'](_0x4ddd7a,_0x20fa7d),_0x20ab9b=this['directoryAccessManager'][_0x51ed0b(0x207)](_0x3415c7,_0x49f3b9);if(!_0x20ab9b['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x20ab9b['reason']);try{const _0x187a09=await a0_0x16b9f4['stat'](_0x3415c7);if(_0x187a09[_0x51ed0b(0x1d1)]>this['maxFileSize'])throw new Error('File\x20too\x20large:\x20'+_0x187a09[_0x51ed0b(0x1d1)]+_0x51ed0b(0x1bc)+this['maxFileSize']+')');const _0x8199c7=this[_0x51ed0b(0x292)](_0x3415c7);if(!_0x8199c7)return{'file':this['directoryAccessManager']['createRelativePath'](_0x3415c7,_0x49f3b9),'fullPath':_0x3415c7,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0x5c107d=await a0_0x16b9f4[_0x51ed0b(0x239)](_0x3415c7,_0x51ed0b(0x26a)),_0x44686f=this['useContentHash']?this['computeContentHash'](_0x5c107d):null,_0x1f174a=this['useContentHash']?_0x3415c7+':'+_0x44686f:_0x3415c7+':'+_0x187a09[_0x51ed0b(0x228)][_0x51ed0b(0x1bf)]();if(this['enableCache']&&this['analysisCache']['has'](_0x1f174a)){const _0x5697c4=this[_0x51ed0b(0x1e8)][_0x51ed0b(0x26d)](_0x1f174a);if(Date[_0x51ed0b(0x248)]()-_0x5697c4[_0x51ed0b(0x254)]<this[_0x51ed0b(0x251)])return this['logger']?.[_0x51ed0b(0x220)](_0x51ed0b(0x1e2),{'file':_0x3415c7}),this['metrics']['cacheHits']++,this[_0x51ed0b(0x1c8)]['totalAnalyses']++,_0x5697c4['result'];}this['metrics'][_0x51ed0b(0x272)]++,this['metrics']['totalAnalyses']++;const _0x4d291b=await this['getAnalyzer'](_0x8199c7);if(!_0x4d291b)return{'file':this[_0x51ed0b(0x21c)][_0x51ed0b(0x278)](_0x3415c7,_0x49f3b9),'fullPath':_0x3415c7,'language':_0x8199c7,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':_0x51ed0b(0x258)+_0x8199c7};const _0x30083d=Date[_0x51ed0b(0x248)](),_0x13d4a8=await _0x4d291b['analyze'](_0x3415c7,_0x5c107d,{'workingDir':_0x4ddd7a,'accessConfig':_0x49f3b9,'framework':await this['detectFramework'](_0x4ddd7a,_0x8199c7)}),_0x44c22f=Date['now']()-_0x30083d;this['metrics'][_0x51ed0b(0x1ca)]+=_0x44c22f,this['metrics'][_0x51ed0b(0x1f0)]++;const _0x53d5e4={'file':this[_0x51ed0b(0x21c)][_0x51ed0b(0x278)](_0x3415c7,_0x49f3b9),'fullPath':_0x3415c7,'language':_0x8199c7,'framework':await this['detectFramework'](_0x4ddd7a,_0x8199c7),'errors':_0x13d4a8[_0x51ed0b(0x1de)](_0x537f8c=>_0x537f8c['severity']===STATIC_ANALYSIS[_0x51ed0b(0x262)][_0x51ed0b(0x268)]),'warnings':_0x548435[_0x51ed0b(0x1fa)]!==![]?_0x13d4a8['filter'](_0x1a3854=>_0x1a3854['severity']===STATIC_ANALYSIS[_0x51ed0b(0x262)]['WARNING']):[],'info':_0x13d4a8['filter'](_0x3f102d=>_0x3f102d[_0x51ed0b(0x288)]===STATIC_ANALYSIS[_0x51ed0b(0x262)][_0x51ed0b(0x1c3)]),'totalIssues':_0x13d4a8[_0x51ed0b(0x20b)],'analyzed':!![],'timestamp':new Date()[_0x51ed0b(0x1cc)]()};return _0x548435['maxErrors']&&_0x53d5e4[_0x51ed0b(0x231)][_0x51ed0b(0x20b)]>_0x548435[_0x51ed0b(0x235)]&&(_0x53d5e4['errors']=_0x53d5e4['errors'][_0x51ed0b(0x222)](0x0,_0x548435['maxErrors']),_0x53d5e4[_0x51ed0b(0x1f8)]=!![]),this[_0x51ed0b(0x22c)]&&this[_0x51ed0b(0x1e8)]['set'](_0x1f174a,{'result':_0x53d5e4,'timestamp':Date[_0x51ed0b(0x248)]()}),_0x53d5e4;}catch(_0x1a9aee){throw new Error('Failed\x20to\x20analyze\x20'+_0x20fa7d+':\x20'+_0x1a9aee['message']);}}async['analyzeProject'](_0x38938f,_0xf1357,_0x1df8b2,_0x2482d8,_0xc3cc2c={}){const _0x4be301=a0_0x499fab,_0x1d94e0=a0_0x3d71ac['isAbsolute'](_0x38938f)?a0_0x3d71ac['normalize'](_0x38938f):a0_0x3d71ac['resolve'](_0x1df8b2,_0x38938f),_0x40ee87=this[_0x4be301(0x21c)][_0x4be301(0x207)](_0x1d94e0,_0x2482d8);if(!_0x40ee87[_0x4be301(0x1cf)])throw new Error('Read\x20access\x20denied:\x20'+_0x40ee87[_0x4be301(0x226)]);const _0x12e64c=await this[_0x4be301(0x267)](_0x1d94e0,_0xf1357);if(_0x12e64c[_0x4be301(0x20b)]>this['maxFilesPerBatch'])throw new Error(_0x4be301(0x1ee)+_0x12e64c['length']+'\x20(max\x20'+this['maxFilesPerBatch']+')');const _0x43d6de=[];if(this[_0x4be301(0x216)]&&_0x12e64c[_0x4be301(0x20b)]>0x1){this['logger']?.[_0x4be301(0x220)]('Using\x20parallel\x20analysis',{'totalFiles':_0x12e64c['length'],'batchSize':this['maxParallelFiles']});for(let _0x3c9c97=0x0;_0x3c9c97<_0x12e64c[_0x4be301(0x20b)];_0x3c9c97+=this['maxParallelFiles']){const _0x422d81=_0x12e64c['slice'](_0x3c9c97,_0x3c9c97+this['maxParallelFiles']);this['metrics'][_0x4be301(0x247)]++;const _0x2f002a={'completed':_0x3c9c97,'total':_0x12e64c[_0x4be301(0x20b)],'percentage':Math['round'](_0x3c9c97/_0x12e64c[_0x4be301(0x20b)]*0x64)};_0xc3cc2c[_0x4be301(0x218)]&&_0xc3cc2c['onProgress'](_0x2f002a);this['logger']?.[_0x4be301(0x220)](_0x4be301(0x1ff),{'batch':Math['floor'](_0x3c9c97/this[_0x4be301(0x270)])+0x1,'filesInBatch':_0x422d81[_0x4be301(0x20b)],'progress':_0x2f002a[_0x4be301(0x224)]+'/'+_0x2f002a[_0x4be301(0x1d8)]});const _0x2d2a6a=_0x422d81['map'](async _0x588c06=>{const _0xb8ec7=_0x4be301;try{const _0x36b1b1=await this['analyzeFile'](_0x588c06,_0x1df8b2,_0x2482d8,_0xc3cc2c);return _0x36b1b1;}catch(_0x3ba636){return this[_0xb8ec7(0x211)]?.[_0xb8ec7(0x250)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x588c06,'error':_0x3ba636[_0xb8ec7(0x26b)]}),{'file':this['directoryAccessManager']['createRelativePath'](_0x588c06,_0x2482d8),'fullPath':_0x588c06,'error':_0x3ba636['message'],'success':![]};}}),_0x282534=await Promise['all'](_0x2d2a6a);_0x43d6de[_0x4be301(0x1b8)](..._0x282534['filter'](_0x7f871b=>_0x7f871b!==null));}_0xc3cc2c[_0x4be301(0x218)]&&_0xc3cc2c[_0x4be301(0x218)]({'completed':_0x12e64c['length'],'total':_0x12e64c['length'],'percentage':0x64});}else for(const _0x437bab of _0x12e64c){try{const _0x411e04=await this['analyzeFile'](_0x437bab,_0x1df8b2,_0x2482d8,_0xc3cc2c);_0x411e04&&_0x43d6de[_0x4be301(0x1b8)](_0x411e04);}catch(_0x3db9b2){this[_0x4be301(0x211)]?.[_0x4be301(0x250)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x437bab,'error':_0x3db9b2[_0x4be301(0x26b)]}),_0x43d6de['push']({'file':this['directoryAccessManager']['createRelativePath'](_0x437bab,_0x2482d8),'fullPath':_0x437bab,'error':_0x3db9b2['message'],'success':![]});}}return _0x43d6de;}async[a0_0x499fab(0x27b)](_0x456436,_0x12815a,_0x479497,_0x6f023e={}){const _0x12ef22=a0_0x499fab,_0x2ce2f1=a0_0x3d71ac[_0x12ef22(0x1ba)](_0x456436)?a0_0x3d71ac['normalize'](_0x456436):a0_0x3d71ac[_0x12ef22(0x221)](_0x12815a,_0x456436),_0x5556da=this[_0x12ef22(0x21c)][_0x12ef22(0x207)](_0x2ce2f1,_0x479497);if(!_0x5556da['allowed'])throw new Error(_0x12ef22(0x223)+_0x5556da['reason']);if(_0x6f023e['writeFile']){const _0x438aca=this['directoryAccessManager'][_0x12ef22(0x28e)](_0x2ce2f1,_0x479497);if(!_0x438aca['allowed'])throw new Error(_0x12ef22(0x255)+_0x438aca['reason']);}try{const _0x2c9260=await a0_0x16b9f4[_0x12ef22(0x239)](_0x2ce2f1,'utf-8'),_0x487adc=await this['getESLintAnalyzer'](),_0x1ea2c5=await _0x487adc[_0x12ef22(0x28d)](_0x2ce2f1,_0x2c9260,{'workingDir':_0x12815a,'accessConfig':_0x479497,'framework':await this['detectFramework'](_0x12815a,this['detectLanguage'](_0x2ce2f1))});return _0x6f023e['writeFile']&&_0x1ea2c5['fixed']&&(await a0_0x16b9f4[_0x12ef22(0x25f)](_0x2ce2f1,_0x1ea2c5[_0x12ef22(0x24e)],'utf-8'),this[_0x12ef22(0x211)]?.[_0x12ef22(0x240)]('File\x20fixed\x20and\x20written',{'file':_0x2ce2f1})),{'file':this['directoryAccessManager'][_0x12ef22(0x278)](_0x2ce2f1,_0x479497),'fullPath':_0x2ce2f1,'action':_0x12ef22(0x28d),'fixed':_0x1ea2c5[_0x12ef22(0x28c)],'fixedCount':_0x1ea2c5[_0x12ef22(0x238)],'remainingErrors':_0x1ea2c5[_0x12ef22(0x28a)],'remainingWarnings':_0x1ea2c5[_0x12ef22(0x23d)],'changes':_0x1ea2c5[_0x12ef22(0x28b)],'written':!!(_0x6f023e['writeFile']&&_0x1ea2c5['fixed']),'preview':!_0x6f023e[_0x12ef22(0x25f)]&&_0x1ea2c5[_0x12ef22(0x28c)]?_0x1ea2c5['content']:undefined};}catch(_0x2ad397){throw new Error(_0x12ef22(0x1df)+_0x456436+':\x20'+_0x2ad397[_0x12ef22(0x26b)]);}}async[a0_0x499fab(0x26c)](_0x554f65,_0x521632,_0x44b21b,_0x16ad9e={}){const _0x588215=a0_0x499fab,_0x2e9939=a0_0x3d71ac[_0x588215(0x1ba)](_0x554f65)?a0_0x3d71ac['normalize'](_0x554f65):a0_0x3d71ac['resolve'](_0x521632,_0x554f65),_0x1dcaac=this['directoryAccessManager']['validateReadAccess'](_0x2e9939,_0x44b21b);if(!_0x1dcaac['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x1dcaac[_0x588215(0x226)]);if(_0x16ad9e[_0x588215(0x25f)]){const _0x288f3b=this[_0x588215(0x21c)]['validateWriteAccess'](_0x2e9939,_0x44b21b);if(!_0x288f3b['allowed'])throw new Error('Write\x20access\x20denied:\x20'+_0x288f3b['reason']);}try{const _0x1c4f20=await a0_0x16b9f4['readFile'](_0x2e9939,'utf-8'),_0xe75ba0=await this['getPrettierFormatter']();if(!_0xe75ba0[_0x588215(0x23f)](_0x2e9939))return{'file':this[_0x588215(0x21c)]['createRelativePath'](_0x2e9939,_0x44b21b),'fullPath':_0x2e9939,'action':'format','formatted':![],'skipped':!![],'skipReason':'File\x20type\x20not\x20supported\x20by\x20Prettier'};const _0x299510=await _0xe75ba0['format'](_0x2e9939,_0x1c4f20,{'workingDir':_0x521632,'accessConfig':_0x44b21b});return _0x16ad9e[_0x588215(0x25f)]&&_0x299510['formatted']&&(await a0_0x16b9f4[_0x588215(0x25f)](_0x2e9939,_0x299510[_0x588215(0x24e)],'utf-8'),this[_0x588215(0x211)]?.['info']('File\x20formatted\x20and\x20written',{'file':_0x2e9939})),{'file':this['directoryAccessManager'][_0x588215(0x278)](_0x2e9939,_0x44b21b),'fullPath':_0x2e9939,'action':_0x588215(0x276),'formatted':_0x299510['formatted'],'linesChanged':_0x299510[_0x588215(0x1f9)],'changes':_0x299510[_0x588215(0x28b)],'written':!!(_0x16ad9e['writeFile']&&_0x299510['formatted']),'preview':!_0x16ad9e[_0x588215(0x25f)]&&_0x299510['formatted']?_0x299510['content']:undefined};}catch(_0x41e631){throw new Error('Failed\x20to\x20format\x20'+_0x554f65+':\x20'+_0x41e631[_0x588215(0x26b)]);}}async[a0_0x499fab(0x1c7)](_0x16e2c9,_0x19bd2f,_0x155850,_0x20f6cf={}){const _0x3efca9=a0_0x499fab,_0x2a1f02=a0_0x3d71ac[_0x3efca9(0x1ba)](_0x16e2c9)?a0_0x3d71ac['normalize'](_0x16e2c9):a0_0x3d71ac['resolve'](_0x19bd2f,_0x16e2c9),_0x295b7e=this['directoryAccessManager']['validateReadAccess'](_0x2a1f02,_0x155850);if(!_0x295b7e['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x295b7e['reason']);try{const _0x2081fc=await a0_0x16b9f4[_0x3efca9(0x21b)](_0x2a1f02);if(_0x2081fc['size']>this['maxFileSize'])throw new Error(_0x3efca9(0x297)+_0x2081fc[_0x3efca9(0x1d1)]+'\x20bytes\x20(max\x20'+this[_0x3efca9(0x24f)]+')');const _0x140409=this[_0x3efca9(0x292)](_0x2a1f02);if(!_0x140409||![_0x3efca9(0x293),_0x3efca9(0x1fd),'python']['includes'](_0x140409))return{'file':this['directoryAccessManager'][_0x3efca9(0x278)](_0x2a1f02,_0x155850),'fullPath':_0x2a1f02,'language':_0x140409||_0x3efca9(0x201),'issues':[],'skipped':!![],'skipReason':_0x3efca9(0x245)};const _0x211341=await a0_0x16b9f4[_0x3efca9(0x239)](_0x2a1f02,'utf-8'),_0x763fcf=await this[_0x3efca9(0x1fe)](),_0x1d1fb2=await _0x763fcf[_0x3efca9(0x284)](_0x2a1f02,_0x211341,{'skipTestFiles':_0x20f6cf['skipTestFiles']!==![]}),_0x193391={'file':this[_0x3efca9(0x21c)]['createRelativePath'](_0x2a1f02,_0x155850),'fullPath':_0x2a1f02,'language':_0x140409,'action':_0x3efca9(0x1b6),'critical':_0x1d1fb2['filter'](_0x22ee1f=>_0x22ee1f[_0x3efca9(0x288)]===STATIC_ANALYSIS['SEVERITY'][_0x3efca9(0x294)]),'errors':_0x1d1fb2['filter'](_0x360b64=>_0x360b64['severity']===STATIC_ANALYSIS[_0x3efca9(0x262)][_0x3efca9(0x268)]),'warnings':_0x1d1fb2[_0x3efca9(0x1de)](_0x5a587c=>_0x5a587c[_0x3efca9(0x288)]===STATIC_ANALYSIS['SEVERITY'][_0x3efca9(0x253)]),'info':_0x1d1fb2['filter'](_0x1e6a38=>_0x1e6a38[_0x3efca9(0x288)]===STATIC_ANALYSIS[_0x3efca9(0x262)][_0x3efca9(0x1c3)]),'totalIssues':_0x1d1fb2[_0x3efca9(0x20b)],'analyzed':!![],'scannersUsed':_0x1d1fb2['map'](_0x1f4d25=>_0x1f4d25['scanner'])[_0x3efca9(0x1de)]((_0x43650d,_0x55c43d,_0x4ac90d)=>_0x4ac90d[_0x3efca9(0x243)](_0x43650d)===_0x55c43d),'timestamp':new Date()[_0x3efca9(0x1cc)]()};return _0x193391;}catch(_0x7e2161){throw new Error('Failed\x20to\x20security\x20scan\x20'+_0x16e2c9+':\x20'+_0x7e2161[_0x3efca9(0x26b)]);}}async['securityScanProject'](_0x3c459e,_0x2b111c,_0x4011ca,_0x125003,_0x56707a={}){const _0x54a747=a0_0x499fab,_0x22e8e5=a0_0x3d71ac['isAbsolute'](_0x3c459e)?a0_0x3d71ac[_0x54a747(0x1dd)](_0x3c459e):a0_0x3d71ac['resolve'](_0x4011ca,_0x3c459e),_0x118b14=this[_0x54a747(0x21c)][_0x54a747(0x207)](_0x22e8e5,_0x125003);if(!_0x118b14[_0x54a747(0x1cf)])throw new Error(_0x54a747(0x223)+_0x118b14[_0x54a747(0x226)]);const _0x5511f4=await this[_0x54a747(0x1fe)](),_0x151592=await _0x5511f4['analyzeProject'](_0x22e8e5,_0x54a747(0x293),_0x56707a),_0x2f1e8b=_0x2b111c||'**/*.{js,jsx,mjs,cjs,ts,tsx,py}',_0x13eb90=await this['findFiles'](_0x22e8e5,_0x2f1e8b);if(_0x13eb90[_0x54a747(0x20b)]>this[_0x54a747(0x261)])throw new Error(_0x54a747(0x1ee)+_0x13eb90['length']+_0x54a747(0x20c)+this['maxFilesPerBatch']+')');const _0x13c7f7=[];if(this[_0x54a747(0x216)]&&_0x13eb90[_0x54a747(0x20b)]>0x1){this[_0x54a747(0x211)]?.[_0x54a747(0x220)]('Using\x20parallel\x20security\x20scanning',{'totalFiles':_0x13eb90[_0x54a747(0x20b)],'batchSize':this['maxParallelFiles']});for(let _0xd532c=0x0;_0xd532c<_0x13eb90['length'];_0xd532c+=this[_0x54a747(0x270)]){const _0x40ae20=_0x13eb90['slice'](_0xd532c,_0xd532c+this[_0x54a747(0x270)]);_0x56707a[_0x54a747(0x218)]&&_0x56707a[_0x54a747(0x218)]({'completed':_0xd532c,'total':_0x13eb90['length'],'percentage':Math[_0x54a747(0x210)](_0xd532c/_0x13eb90[_0x54a747(0x20b)]*0x64)});const _0x24164e=_0x40ae20['map'](async _0x1887ed=>{const _0x23d822=_0x54a747;try{return await this['securityScanFile'](_0x1887ed,_0x4011ca,_0x125003,_0x56707a);}catch(_0x2c2a29){return this[_0x23d822(0x211)]?.['warn'](_0x23d822(0x1c1),{'file':_0x1887ed,'error':_0x2c2a29[_0x23d822(0x26b)]}),{'file':this['directoryAccessManager'][_0x23d822(0x278)](_0x1887ed,_0x125003),'fullPath':_0x1887ed,'error':_0x2c2a29['message'],'success':![]};}}),_0x3e3880=await Promise['all'](_0x24164e);_0x13c7f7[_0x54a747(0x1b8)](..._0x3e3880['filter'](_0x4ed29a=>_0x4ed29a!==null));}_0x56707a['onProgress']&&_0x56707a['onProgress']({'completed':_0x13eb90[_0x54a747(0x20b)],'total':_0x13eb90[_0x54a747(0x20b)],'percentage':0x64});}else for(const _0x2b7956 of _0x13eb90){try{const _0x7f4526=await this[_0x54a747(0x1c7)](_0x2b7956,_0x4011ca,_0x125003,_0x56707a);_0x7f4526&&_0x13c7f7[_0x54a747(0x1b8)](_0x7f4526);}catch(_0x456e7){this[_0x54a747(0x211)]?.['warn']('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x2b7956,'error':_0x456e7[_0x54a747(0x26b)]}),_0x13c7f7[_0x54a747(0x1b8)]({'file':this[_0x54a747(0x21c)]['createRelativePath'](_0x2b7956,_0x125003),'fullPath':_0x2b7956,'error':_0x456e7[_0x54a747(0x26b)],'success':![]});}}return _0x151592['length']>0x0&&_0x13c7f7[_0x54a747(0x1b8)]({'file':a0_0x3d71ac['join'](_0x22e8e5,'package.json'),'fullPath':a0_0x3d71ac[_0x54a747(0x241)](_0x22e8e5,'package.json'),'action':'dependency-scan','critical':_0x151592['filter'](_0x213bd3=>_0x213bd3['severity']===STATIC_ANALYSIS[_0x54a747(0x262)][_0x54a747(0x294)]),'errors':_0x151592[_0x54a747(0x1de)](_0x1c9117=>_0x1c9117['severity']===STATIC_ANALYSIS[_0x54a747(0x262)]['ERROR']),'warnings':_0x151592[_0x54a747(0x1de)](_0x123af3=>_0x123af3[_0x54a747(0x288)]===STATIC_ANALYSIS[_0x54a747(0x262)]['WARNING']),'info':_0x151592[_0x54a747(0x1de)](_0x2e2eec=>_0x2e2eec[_0x54a747(0x288)]===STATIC_ANALYSIS[_0x54a747(0x262)]['INFO']),'totalIssues':_0x151592['length'],'analyzed':!![],'scannersUsed':[_0x54a747(0x227)],'timestamp':new Date()['toISOString']()}),_0x13c7f7;}async[a0_0x499fab(0x1b4)](_0x5bf2ab,_0xb46573,_0x597ee1,_0x147716={}){const _0x2cd8cd=a0_0x499fab,_0x8abee8=a0_0x3d71ac[_0x2cd8cd(0x1ba)](_0x5bf2ab)?a0_0x3d71ac[_0x2cd8cd(0x1dd)](_0x5bf2ab):a0_0x3d71ac['resolve'](_0xb46573,_0x5bf2ab),_0x170cbf=this[_0x2cd8cd(0x21c)][_0x2cd8cd(0x207)](_0x8abee8,_0x597ee1);if(!_0x170cbf[_0x2cd8cd(0x1cf)])throw new Error(_0x2cd8cd(0x223)+_0x170cbf['reason']);try{const _0x116833=await a0_0x16b9f4[_0x2cd8cd(0x21b)](_0x8abee8);if(_0x116833[_0x2cd8cd(0x1d1)]>this['maxFileSize'])throw new Error(_0x2cd8cd(0x297)+_0x116833[_0x2cd8cd(0x1d1)]+_0x2cd8cd(0x1bc)+this['maxFileSize']+')');const _0x2f1db3=await this['getConfigValidator'](),_0x16dfc4=await _0x2f1db3['validate'](_0x8abee8,_0x147716),_0x5dec5d={'file':this[_0x2cd8cd(0x21c)]['createRelativePath'](_0x8abee8,_0x597ee1),'fullPath':_0x8abee8,'action':'validate-config','critical':_0x16dfc4['filter'](_0xee5d8c=>_0xee5d8c[_0x2cd8cd(0x288)]===STATIC_ANALYSIS[_0x2cd8cd(0x262)][_0x2cd8cd(0x294)]),'errors':_0x16dfc4['filter'](_0x170816=>_0x170816['severity']===STATIC_ANALYSIS['SEVERITY'][_0x2cd8cd(0x268)]),'warnings':_0x16dfc4[_0x2cd8cd(0x1de)](_0x3e82df=>_0x3e82df[_0x2cd8cd(0x288)]===STATIC_ANALYSIS['SEVERITY'][_0x2cd8cd(0x253)]),'info':_0x16dfc4[_0x2cd8cd(0x1de)](_0x150a50=>_0x150a50['severity']===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x16dfc4[_0x2cd8cd(0x20b)],'analyzed':!![],'validatorsUsed':_0x16dfc4[_0x2cd8cd(0x265)](_0x47181e=>_0x47181e[_0x2cd8cd(0x215)])['filter']((_0x573bb7,_0x29b463,_0x218ffd)=>_0x218ffd[_0x2cd8cd(0x243)](_0x573bb7)===_0x29b463),'timestamp':new Date()[_0x2cd8cd(0x1cc)]()};return _0x5dec5d;}catch(_0x5a1836){throw new Error(_0x2cd8cd(0x1c2)+_0x5bf2ab+':\x20'+_0x5a1836['message']);}}async['validateConfigDirectory'](_0x488238,_0x34c65c,_0x39d2d3,_0x59fefa={}){const _0x1d6299=a0_0x499fab,_0x207a11=a0_0x3d71ac[_0x1d6299(0x1ba)](_0x488238)?a0_0x3d71ac[_0x1d6299(0x1dd)](_0x488238):a0_0x3d71ac['resolve'](_0x34c65c,_0x488238),_0x1b4317=this[_0x1d6299(0x21c)]['validateReadAccess'](_0x207a11,_0x39d2d3);if(!_0x1b4317['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x1b4317[_0x1d6299(0x226)]);const _0x494bca=await this[_0x1d6299(0x27c)](_0x207a11);if(_0x494bca['length']>this['maxFilesPerBatch'])throw new Error(_0x1d6299(0x25e)+_0x494bca['length']+_0x1d6299(0x20c)+this['maxFilesPerBatch']+')');const _0x259bcc=[];for(const _0x5ee7a7 of _0x494bca){try{const _0x144d6d=await this['validateConfigFile'](_0x5ee7a7,_0x34c65c,_0x39d2d3,_0x59fefa);_0x144d6d&&_0x259bcc[_0x1d6299(0x1b8)](_0x144d6d);}catch(_0x589354){this[_0x1d6299(0x211)]?.[_0x1d6299(0x250)](_0x1d6299(0x21e),{'file':_0x5ee7a7,'error':_0x589354[_0x1d6299(0x26b)]}),_0x259bcc['push']({'file':this['directoryAccessManager']['createRelativePath'](_0x5ee7a7,_0x39d2d3),'fullPath':_0x5ee7a7,'error':_0x589354[_0x1d6299(0x26b)],'success':![]});}}return _0x259bcc;}async[a0_0x499fab(0x27c)](_0xdb8e30){const _0x51e3a1=a0_0x499fab,_0x52e11c=[],_0xa4cadd=['package.json','tsconfig.json','Dockerfile','docker-compose.yml',_0x51e3a1(0x1c4),'.env','.env.example',_0x51e3a1(0x269),_0x51e3a1(0x236),'.prettierrc',_0x51e3a1(0x1db)],_0x57d625=[_0x51e3a1(0x274),'.yaml','.json','.tf',_0x51e3a1(0x1dc)],_0x5c838d=async _0x20e73b=>{const _0x4fc02d=_0x51e3a1,_0x320507=await a0_0x16b9f4['readdir'](_0x20e73b,{'withFileTypes':!![]});for(const _0xb64232 of _0x320507){const _0x57c0c7=a0_0x3d71ac['join'](_0x20e73b,_0xb64232['name']);if(_0xb64232['isDirectory']()){if(_0xb64232[_0x4fc02d(0x1b3)]==='.github'||_0xb64232[_0x4fc02d(0x1b3)]==='kubernetes'||_0xb64232['name']==='k8s'||_0xb64232[_0x4fc02d(0x1b3)]==='terraform')await _0x5c838d(_0x57c0c7);else{if(!['node_modules','.git','dist','build']['includes'](_0xb64232['name']))continue;}}else{if(_0xb64232[_0x4fc02d(0x1f5)]()){if(_0xa4cadd['includes'](_0xb64232['name']))_0x52e11c[_0x4fc02d(0x1b8)](_0x57c0c7);else{const _0x5482c2=a0_0x3d71ac[_0x4fc02d(0x287)](_0xb64232[_0x4fc02d(0x1b3)])[_0x4fc02d(0x1c0)]();if(_0x57d625[_0x4fc02d(0x1ec)](_0x5482c2)){const _0x293250=a0_0x3d71ac[_0x4fc02d(0x23c)](a0_0x3d71ac['dirname'](_0x57c0c7));(_0x293250===_0x4fc02d(0x1d4)||_0x293250==='k8s'||_0x293250==='terraform'||_0x293250==='workflows')&&_0x52e11c[_0x4fc02d(0x1b8)](_0x57c0c7);}}}}}};return await _0x5c838d(_0xdb8e30),_0x52e11c;}[a0_0x499fab(0x292)](_0x143d56){const _0xa31d8c=a0_0x499fab,_0x1d70c1=a0_0x3d71ac['extname'](_0x143d56)[_0xa31d8c(0x1c0)]();return STATIC_ANALYSIS[_0xa31d8c(0x23e)][_0x1d70c1]||null;}async[a0_0x499fab(0x1ef)](_0x594615,_0x2c3fc8){const _0x2a2129=a0_0x499fab;try{if(_0x2c3fc8===STATIC_ANALYSIS['LANGUAGE']['JAVASCRIPT']||_0x2c3fc8===STATIC_ANALYSIS['LANGUAGE'][_0x2a2129(0x22f)])return await this['detectJSFramework'](_0x594615);if(_0x2c3fc8===STATIC_ANALYSIS[_0x2a2129(0x233)][_0x2a2129(0x263)])return await this['detectPythonFramework'](_0x594615);return null;}catch(_0x4e2fb2){return this[_0x2a2129(0x211)]?.[_0x2a2129(0x220)](_0x2a2129(0x21a),{'error':_0x4e2fb2[_0x2a2129(0x26b)]}),null;}}async[a0_0x499fab(0x23a)](_0x4fdc50){const _0x51c149=a0_0x499fab;try{const _0x1da281=a0_0x3d71ac['join'](_0x4fdc50,STATIC_ANALYSIS[_0x51c149(0x1d9)][_0x51c149(0x24b)]),_0x2ffcbd=await a0_0x16b9f4['readFile'](_0x1da281,'utf-8'),_0x120649=JSON[_0x51c149(0x24d)](_0x2ffcbd),_0x498beb={..._0x120649[_0x51c149(0x1bb)],..._0x120649[_0x51c149(0x217)]};for(const [_0xae8228,_0x463ab3]of Object[_0x51c149(0x285)](STATIC_ANALYSIS['JS_FRAMEWORKS'])){if(_0x498beb[_0x463ab3])return _0xae8228[_0x51c149(0x1c0)]();}return null;}catch(_0x4a3b63){return null;}}async[a0_0x499fab(0x21d)](_0x50203a){const _0x514178=a0_0x499fab;try{const _0x740ae6=a0_0x3d71ac['join'](_0x50203a,STATIC_ANALYSIS[_0x514178(0x1d9)][_0x514178(0x263)]),_0x458a02=await a0_0x16b9f4['readFile'](_0x740ae6,_0x514178(0x26a));for(const [_0x3829b4,_0x19368e]of Object[_0x514178(0x285)](STATIC_ANALYSIS[_0x514178(0x1e9)])){if(_0x458a02[_0x514178(0x1c0)]()[_0x514178(0x1ec)](_0x19368e))return _0x3829b4['toLowerCase']();}return null;}catch(_0x5bfa0a){try{const _0x238a2f=a0_0x3d71ac['join'](_0x50203a,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS']['PYTHON_POETRY']),_0x296ca3=await a0_0x16b9f4[_0x514178(0x239)](_0x238a2f,'utf-8');for(const [_0xce292b,_0x459f59]of Object['entries'](STATIC_ANALYSIS[_0x514178(0x1e9)])){if(_0x296ca3[_0x514178(0x1c0)]()['includes'](_0x459f59))return _0xce292b['toLowerCase']();}}catch{}return null;}}async['findFiles'](_0x1cc5da,_0x551885){const _0x264fb4=a0_0x499fab,_0x2f9334=[],_0x46720a=_0x551885||_0x264fb4(0x27a),_0x33433e=_0x3b763a=>{const _0x53ad8a=_0x264fb4,_0x211cff=[],_0x4b136a=_0x3b763a['match'](/\*\.\{([^}]+)\}/);if(_0x4b136a){const _0x8e9f0e=_0x4b136a[0x1][_0x53ad8a(0x1fb)](',')[_0x53ad8a(0x265)](_0x5cdee2=>_0x5cdee2[_0x53ad8a(0x1f7)]());_0x8e9f0e[_0x53ad8a(0x1ea)](_0x500256=>_0x211cff[_0x53ad8a(0x1b8)](_0x500256[_0x53ad8a(0x286)]('.')?_0x500256:'.'+_0x500256));}else{const _0x440820=_0x3b763a[_0x53ad8a(0x26f)](/\*\.([a-z]+)$/i);if(_0x440820){const _0x2d74de=_0x440820[0x1];_0x211cff['push'](_0x2d74de[_0x53ad8a(0x286)]('.')?_0x2d74de:'.'+_0x2d74de);}}if(_0x211cff[_0x53ad8a(0x20b)]===0x0)return null;return _0x211cff;},_0x289158=_0x33433e(_0x46720a),_0x184fb4=async _0x378587=>{const _0x69769f=_0x264fb4,_0x3e977a=await a0_0x16b9f4[_0x69769f(0x25b)](_0x378587,{'withFileTypes':!![]});for(const _0x2c816c of _0x3e977a){const _0x5bcb1b=a0_0x3d71ac[_0x69769f(0x241)](_0x378587,_0x2c816c['name']);if(_0x2c816c[_0x69769f(0x1b5)]())![_0x69769f(0x225),_0x69769f(0x1d6),'dist',_0x69769f(0x22b),_0x69769f(0x289),'.venv','venv'][_0x69769f(0x1ec)](_0x2c816c[_0x69769f(0x1b3)])&&await _0x184fb4(_0x5bcb1b);else{if(_0x2c816c[_0x69769f(0x1f5)]()){const _0x1bcdd7=a0_0x3d71ac[_0x69769f(0x287)](_0x2c816c[_0x69769f(0x1b3)])[_0x69769f(0x1c0)]();STATIC_ANALYSIS[_0x69769f(0x23e)][_0x1bcdd7]&&((_0x289158===null||_0x289158['includes'](_0x1bcdd7))&&_0x2f9334[_0x69769f(0x1b8)](_0x5bcb1b));}}}};return await _0x184fb4(_0x1cc5da),_0x2f9334;}async['getAnalyzer'](_0x118484){const _0x1f184f=a0_0x499fab;try{if(_0x118484===STATIC_ANALYSIS[_0x1f184f(0x233)][_0x1f184f(0x24b)]){if(!this[_0x1f184f(0x20d)]['javascript']){const {default:_0x4640dc}=await import('../analyzers/JavaScriptAnalyzer.js');this['analyzers'][_0x1f184f(0x293)]=new _0x4640dc(this['logger']);}return this[_0x1f184f(0x20d)]['javascript'];}if(_0x118484===STATIC_ANALYSIS['LANGUAGE']['TYPESCRIPT']){if(!this[_0x1f184f(0x20d)][_0x1f184f(0x1fd)]){const {default:_0x1f25df}=await import(_0x1f184f(0x249));this['analyzers'][_0x1f184f(0x1fd)]=new _0x1f25df(this['logger']);}return this['analyzers']['typescript'];}if(_0x118484===STATIC_ANALYSIS['LANGUAGE'][_0x1f184f(0x263)]){if(!this['analyzers']['python']){const {default:_0x36a4d1}=await import('../analyzers/PythonAnalyzer.js');this['analyzers'][_0x1f184f(0x24c)]=new _0x36a4d1(this['logger']);}return this[_0x1f184f(0x20d)][_0x1f184f(0x24c)];}if(_0x118484===STATIC_ANALYSIS['LANGUAGE']['CSS']||_0x118484===STATIC_ANALYSIS['LANGUAGE'][_0x1f184f(0x22d)]||_0x118484===STATIC_ANALYSIS['LANGUAGE']['LESS']){if(!this['analyzers']['css']){const {default:_0x3b47ff}=await import(_0x1f184f(0x200));this[_0x1f184f(0x20d)][_0x1f184f(0x219)]=new _0x3b47ff(this['logger']);}return this['analyzers'][_0x1f184f(0x219)];}return null;}catch(_0x5e5a5d){return this['logger']?.[_0x1f184f(0x1e7)](_0x1f184f(0x22a),{'language':_0x118484,'error':_0x5e5a5d[_0x1f184f(0x26b)]}),null;}}async['getESLintAnalyzer'](){const _0x1205cc=a0_0x499fab;if(!this['analyzers']['eslint']){const {default:_0xea7973}=await import(_0x1205cc(0x25c));this['analyzers']['eslint']=new _0xea7973(this['logger']);}return this['analyzers'][_0x1205cc(0x26e)];}async[a0_0x499fab(0x1f6)](){const _0x4e5a19=a0_0x499fab;if(!this['formatters'][_0x4e5a19(0x1f4)]){const {default:_0x9028a3}=await import(_0x4e5a19(0x1da));this[_0x4e5a19(0x23b)]['prettier']=new _0x9028a3(this['logger']);}return this['formatters']['prettier'];}async[a0_0x499fab(0x1fe)](){const _0x3cbc48=a0_0x499fab;if(!this[_0x3cbc48(0x20d)]['security']){const {default:_0x400e5a}=await import(_0x3cbc48(0x209));this[_0x3cbc48(0x20d)][_0x3cbc48(0x230)]=new _0x400e5a(this[_0x3cbc48(0x211)]);}return this[_0x3cbc48(0x20d)][_0x3cbc48(0x230)];}async['getConfigValidator'](){const _0x393d5d=a0_0x499fab;if(!this['analyzers']['config']){const {default:_0x587b1c}=await import('../analyzers/ConfigValidator.js');this['analyzers']['config']=new _0x587b1c(this['logger']);}return this[_0x393d5d(0x20d)][_0x393d5d(0x244)];}['updateSummary'](_0x3ebfa8,_0xb21778){const _0x1aca4f=a0_0x499fab;if(_0xb21778['analyzed']){_0x3ebfa8['totalFiles']++;const _0x39477c=_0xb21778['critical']?.['length']||0x0,_0x8b4656=_0xb21778['errors']?.[_0x1aca4f(0x20b)]||0x0,_0x67139d=_0xb21778['warnings']?.[_0x1aca4f(0x20b)]||0x0,_0x2880fc=_0xb21778['info']?.['length']||0x0;_0x3ebfa8['totalCritical']===undefined&&(_0x3ebfa8[_0x1aca4f(0x234)]=0x0);_0x3ebfa8['totalCritical']+=_0x39477c,_0x3ebfa8['totalErrors']+=_0x8b4656,_0x3ebfa8['totalWarnings']+=_0x67139d,_0x3ebfa8['totalInfo']+=_0x2880fc;(_0x39477c>0x0||_0x8b4656>0x0)&&_0x3ebfa8[_0x1aca4f(0x205)]++;_0xb21778[_0x1aca4f(0x1d5)]&&(_0x3ebfa8[_0x1aca4f(0x1e4)][_0xb21778[_0x1aca4f(0x1d5)]]=(_0x3ebfa8['filesByLanguage'][_0xb21778['language']]||0x0)+0x1);const _0xe8245d=[..._0xb21778[_0x1aca4f(0x25a)]||[],..._0xb21778['errors']||[],..._0xb21778['warnings']||[]];for(const _0x1c6337 of _0xe8245d){_0x1c6337[_0x1aca4f(0x273)]&&(_0x3ebfa8['errorsByCategory'][_0x1c6337[_0x1aca4f(0x273)]]=(_0x3ebfa8['errorsByCategory'][_0x1c6337[_0x1aca4f(0x273)]]||0x0)+0x1);}}}['computeContentHash'](_0x3b523b){const _0x599703=a0_0x499fab;return a0_0x45b761[_0x599703(0x252)](_0x599703(0x24a))[_0x599703(0x1e5)](_0x3b523b)[_0x599703(0x1ce)]('hex')['substring'](0x0,0x10);}[a0_0x499fab(0x232)](){const _0x3c85f4=a0_0x499fab,_0x4572cd=this['metrics']['totalAnalyses']>0x0?this['metrics']['cacheHits']/this['metrics']['totalAnalyses']*0x64:0x0,_0x243a0c=this[_0x3c85f4(0x1c8)]['filesAnalyzed']>0x0?this['metrics']['totalAnalysisTime']/this[_0x3c85f4(0x1c8)][_0x3c85f4(0x1f0)]:0x0;return{...this['metrics'],'cacheHitRate':Math['round'](_0x4572cd*0xa)/0xa,'averageAnalysisTime':Math['round'](_0x243a0c),'cacheSize':this[_0x3c85f4(0x1e8)][_0x3c85f4(0x1d1)]};}[a0_0x499fab(0x1f1)](){const _0x109d00=a0_0x499fab;this[_0x109d00(0x1c8)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}[a0_0x499fab(0x296)](){const _0x12e66a=a0_0x499fab;this[_0x12e66a(0x1e8)]['clear'](),this[_0x12e66a(0x211)]?.[_0x12e66a(0x220)]('Analysis\x20cache\x20cleared');}['getSupportedActions'](){const _0x2306cb=a0_0x499fab;return['analyze',_0x2306cb(0x229),'fix','format',_0x2306cb(0x1b6),_0x2306cb(0x1c6),_0x2306cb(0x1b9),_0x2306cb(0x1f2)];}['getParameterSchema'](){const _0x39b7bd=a0_0x499fab;return{'type':'object','properties':{'actions':{'type':_0x39b7bd(0x266),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'filePath':{'type':_0x39b7bd(0x1d2)},'directory':{'type':'string'},'pattern':{'type':'string'},'includeWarnings':{'type':'boolean'},'maxErrors':{'type':'number'}},'required':['type']}}},'required':[_0x39b7bd(0x1bd)]};}}export default StaticAnalysisTool;
1
+ const a0_0x24ff7f=a0_0x1be1;(function(_0x4e1a53,_0x286262){const _0x59a286=a0_0x1be1,_0x5935ae=_0x4e1a53();while(!![]){try{const _0x55eab9=-parseInt(_0x59a286(0x245))/0x1*(parseInt(_0x59a286(0x24e))/0x2)+parseInt(_0x59a286(0x199))/0x3+parseInt(_0x59a286(0x1d0))/0x4*(parseInt(_0x59a286(0x193))/0x5)+parseInt(_0x59a286(0x1a1))/0x6+-parseInt(_0x59a286(0x1a4))/0x7+parseInt(_0x59a286(0x1e2))/0x8+-parseInt(_0x59a286(0x23e))/0x9*(parseInt(_0x59a286(0x1b3))/0xa);if(_0x55eab9===_0x286262)break;else _0x5935ae['push'](_0x5935ae['shift']());}catch(_0x384046){_0x5935ae['push'](_0x5935ae['shift']());}}}(a0_0x3ef6,0x4a57b));import{BaseTool}from'./baseTool.js';import a0_0x38bb13 from'../utilities/tagParser.js';function a0_0x3ef6(){const _0xf1b3db=['lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','DgLTzw91Da','ugfYC2vKifn0yxrPy0fUywX5C2LZihrVB2WGCgfYyw1LDgvYCW','zgv0zwn0tgfUz3vHz2u','mtm3nZjMDeHOrMS','C3bSAxq','AMf2yxnJCMLWDa','Bwf4rMLSzxnqzxjcyxrJAa','z2v0rvnmAw50qw5HBhL6zxi','zgv0zwn0sLngCMfTzxDVCMS','Bg9Nz2vY','v3jPDguGywnJzxnZigrLBMLLzdOG','rvHuru5tsu9ox1rpx0XbtKDvquDf','DxrMltG','CM91BMq','y2f0zwDVCNK','zgv0zwn0rNjHBwv3B3jR','C3vIC3rYAw5N','ufLuse9ox1bprvrswq','zML4rMLSzq','y2fJAgviAxrZ','Aw5JBhvKzvDHCM5PBMDZ','yw5HBhL6zs1WCM9Qzwn0','vg9Vig1HBNKGzMLSzxm6ia','z2v0v29YA2LUz0rPCMvJDg9YEq','u0ntuW','CgfYC2vbDhrYAwj1DgvZ','u0vwrvjjvfK','D3jPDguTzMLSzq','zgLYzwn0B3j5','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','vw5RBM93BIbHy3rPB24GDhLWztOG','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','BwvZC2fNzq','ChvZAa','BM93','y3jLyxrLuMvSyxrPDMvqyxrO','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','rNjHBwv3B3jRigrLDgvJDgLVBIbMywLSzwq','zxjYB3jZqNLdyxrLz29YEq','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfUywX5EMu','zgLZDa','zM9YBwf0','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','zMLSDgvY','CgfYywXSzwXbBMfSExnPCW','tuiGCgvYigzPBguklsbcyxrJAcbSAw1PDdOG','vfLqrvnduKLqva','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','lI4Vyw5HBhL6zxjZl1nLy3vYAxr5qw5HBhL6zxiUANm','C2nHBM5LCG','DhLWzq','CgfJA2fNzs5QC29U','nJC1otmWuM9hugT3','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','AZHZ','Dg90ywXfCNjVCNm','rLjbtuvxt1jlx01btKLgrvnuuW','yxjYyxK','ntKWntC0ufnQEM1b','icHTyxGG','qwn0Aw9Uia','C2v0','igj5DgvZicHTyxGG','rMLSzsb0B28GBgfYz2u6ia','z2v0rgvZy3jPChrPB24','CMvHC29U','mZu4odCWmNvOzuj0sG','Aw5JBhvKzxm','rMLSzsb0ExbLig5VDcbZDxbWB3j0zwqGyNKGuhjLDhrPzxi','mJKWmZeXwgv0AhLz','B25qCM9NCMvZCW','Dg90ywXdCML0AwnHBa','Aw5MBW','Bwf4rMLSzvnPEMu','zxnSAw50','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YihnLy3vYAxr5lxnJyw4','C3rHDgLJyw5HBhLZAxm','uMvHzcbHy2nLC3mGzgvUAwvKoIa','DhLWzxnJCMLWDa','Dhj1BMnHDgvK','y29UzMLN','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','Dg90ywXbBMfSExnPC1rPBwu','DhjPBq','mtq3otu1mfHpqvzJAG','zgv2rgvWzw5Kzw5JAwvZ','zxHLy3v0zq','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','rMfPBgvKihrVigfUywX5EMuGzMLSzsbPBIbWCM9Qzwn0','zMLUzenVBMzPz0zPBgvZ','sKfwqvnduKLqva','yw5HBhL6zq','z2v0uhjLDhrPzxjgB3jTyxr0zxi','z2v0vgLTzq','yw5HBhL6zxjZ','C2vJDxjPDhLty2fUuhjVAMvJDa','C2vJDxjPDhK','zxjYB3jZ','AxneAxjLy3rVCNK','ywXSB3DLza','z2v0qw5HBhL6zxi','DMfSAwrHDgvdB25MAwDeAxjLy3rVCNK','v0fstKLorW','q1jjveLdquW','tefor1vbr0u','ChL0Ag9U','Dg90ywXbBMfSExnLCW','x19WEwnHy2HLx18','zMXVB3i','C2XPy2u','q1nt','yw5HBhLZAxndywnOzq','D2fYBG','nePut1r3wq','lMvUDI5LEgfTCgXL','zMLUzezPBgvZ','y3jPDgLJywW','yw5HBhL6zwq','DgLTzxn0yw1W','CMf3q29UDgvUDa','CMvTywLUAw5Nv2fYBMLUz3m','D2fYBMLUz3m','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','zgLNzxn0','zM9YBwf0DgvYCW','AM9PBG','Dg9ju09tDhjPBMC','lNLHBwW','lNrM','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','Aw5JBhvKzs13yxjUAw5NCW','mJq1ode5mMvzA3HLwq','ufLuse9ox0zsqu1fv09ss1m','DMfSAwrHDguTy29UzMLN','AgfZ','vxnPBMCGCgfYywXSzwWGC2vJDxjPDhKGC2nHBM5PBMC','Dg9mB3DLCKnHC2u','u2vJDxjPDhKGC2nHBM5PBMCGB25SEsbZDxbWB3j0CYbkyxzHu2nYAxb0lcbuExbLu2nYAxb0lcbHBMqGuhL0Ag9UigzPBgvZ','Bwf4ugfYywXSzwXgAwXLCW','y3nZ','tM8Gyw5HBhL6zxiGyxzHAwXHyMXLigzVCIa','BM9Kzv9TB2r1BgvZ','C3rHDa','C2vJDxjPDhKTC2nHBG','q0fdsevFrfvsqvrjt04','C2TPCc10zxn0lwzPBgvZ','lI4Vyw5HBhL6zxjZl1b5DgHVBKfUywX5EMvYlMPZ','BwfW','C3vTBwfYEq','yw5HBhL6zuzPBgu','BMfTzq','AxngAwXL','z2v0ugfYyw1LDgvYu2nOzw1H','Bwf4rxjYB3jZ','zxjYB3i','zMLSzxnbBMfSExPLza','zw50CMLLCW','u3rHDgLJigfUywX5C2LZigfJDgLVBIbMywLSzwq','CMvHzezPBgu','DxbKyxrLu3vTBwfYEq','DMfSAwrHDgu','C2L6zq','zg9JA2vYlwnVBxbVC2uUEwfTBa','DMfSAwrHDgvszwfKqwnJzxnZ','zM9YrwfJAa','BNvTyMvY','BM9YBwfSAxPL','A3vIzxjUzxrLCW','CMvZB2X2zq','D3jPDgvgAwXL','ChjLDhrPzxi','y29UDgvUDa','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','BxrPBwu','DgvYCMfMB3jT','zxHLyW','BNbTlwf1zgL0','C2v2zxjPDhK','y29TChv0zunVBNrLBNriyxnO','CMvXDwLYzxnqCM9Qzwn0','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zMLSzvbHDgG','AxnbCNjHEq','ywn0Aw9UCW','y3jLyxrLsgfZAa','lNbYzxr0AwvYCMmUANnVBG','su5gtW','zML4','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4G','zgvWzw5Kzw5JAwvZ','AxnbyNnVBhv0zq','AxnbC3LUyW','zxH0BMfTzq','Bwv0CMLJCW','z2v0','DxnLq29UDgvUDeHHC2G','y2HHBMDLCW','Cgf0DgvYBG','lMvZBgLUDhjJlMPZB24','Dg90ywW','zMLSzs1WyxrO','CMvZDwX0','Dhj1zq','C2TPCfrLC3rgAwXLCW','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzPEa','DMvUDG','zgvIDwC','zg9JA2vYlwnVBxbVC2uUEw1S','y2fJAgvfEhbPCNK','zMLSzxnxAxrOrxjYB3jZ','Dg90ywXgAwXLCW','CMvHzgrPCG','BgvUz3rO','C3rHCNrZv2L0Aa','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5Fq','zMLSzxm','zM9YBwf0DgvK','y2XLyxi','oIb0ExbLigLZihjLCxvPCMvK','lI4Vyw5HBhL6zxjZl0PHDMfty3jPChrbBMfSExPLCI5QCW','rMfPBgvKihrVigzVCM1HDca','tevtuW','C3rYAw5N','mJDpuhLMEve','zgv0zwn0uhL0Ag9UrNjHBwv3B3jR','DMfSAwrHDgvdB25MAwDgAwXL','yNvPBgq','ufLuse9o','tufyx0zjtevFu0LArv9gt1jFqu5btfLtsvm','y3DK','nJvSyMvYuKq','yw5HBhL6zvbYB2PLy3q','sLnFrLjbtuvxt1jluW','CgfYC2vqyxjHBwv0zxjZ','yM9VBgvHBG'];a0_0x3ef6=function(){return _0xf1b3db;};return a0_0x3ef6();}import a0_0x58e625 from'../utilities/directoryAccessManager.js';import a0_0x3fbac7 from'fs/promises';function a0_0x1be1(_0x34f63,_0x13a4af){_0x34f63=_0x34f63-0x181;const _0x3ef602=a0_0x3ef6();let _0x1be184=_0x3ef602[_0x34f63];if(a0_0x1be1['qJJyUs']===undefined){var _0x4cbb77=function(_0x44248e){const _0x15aed3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x38bb13='',_0x58e625='';for(let _0x3fbac7=0x0,_0x3da306,_0x3c3cf7,_0x5394c4=0x0;_0x3c3cf7=_0x44248e['charAt'](_0x5394c4++);~_0x3c3cf7&&(_0x3da306=_0x3fbac7%0x4?_0x3da306*0x40+_0x3c3cf7:_0x3c3cf7,_0x3fbac7++%0x4)?_0x38bb13+=String['fromCharCode'](0xff&_0x3da306>>(-0x2*_0x3fbac7&0x6)):0x0){_0x3c3cf7=_0x15aed3['indexOf'](_0x3c3cf7);}for(let _0x3f0184=0x0,_0x3fe4a6=_0x38bb13['length'];_0x3f0184<_0x3fe4a6;_0x3f0184++){_0x58e625+='%'+('00'+_0x38bb13['charCodeAt'](_0x3f0184)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58e625);};a0_0x1be1['xMmexw']=_0x4cbb77,a0_0x1be1['BLKush']={},a0_0x1be1['qJJyUs']=!![];}const _0x4d1511=_0x3ef602[0x0],_0x55c032=_0x34f63+_0x4d1511,_0xacef2f=a0_0x1be1['BLKush'][_0x55c032];return!_0xacef2f?(_0x1be184=a0_0x1be1['xMmexw'](_0x1be184),a0_0x1be1['BLKush'][_0x55c032]=_0x1be184):_0x1be184=_0xacef2f,_0x1be184;}import a0_0x3da306 from'path';import a0_0x3c3cf7 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x5394c4={},_0x3f0184=null){const _0x46cc27=a0_0x1be1;super(_0x5394c4,_0x3f0184),this[_0x46cc27(0x212)]=!![],this[_0x46cc27(0x21e)]=![],this[_0x46cc27(0x24b)]=_0x5394c4['timeout']||STATIC_ANALYSIS['ANALYSIS_TIMEOUT'],this[_0x46cc27(0x1b0)]=_0x5394c4['maxConcurrentOperations']||0x1,this['maxFileSize']=_0x5394c4['maxFileSize']||STATIC_ANALYSIS[_0x46cc27(0x243)],this[_0x46cc27(0x251)]=_0x5394c4['maxFilesPerBatch']||STATIC_ANALYSIS['MAX_FILES_PER_BATCH'],this['enableCache']=_0x5394c4['enableCache']!==![]&&STATIC_ANALYSIS['ENABLE_CACHE'],this[_0x46cc27(0x1ce)]=new Map(),this[_0x46cc27(0x22f)]=STATIC_ANALYSIS[_0x46cc27(0x1ef)],this[_0x46cc27(0x18b)]=_0x5394c4[_0x46cc27(0x18b)]!==![],this['maxParallelFiles']=_0x5394c4['maxParallelFiles']||0xa,this['useContentHash']=_0x5394c4['useContentHash']!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this[_0x46cc27(0x18e)]=new a0_0x58e625(_0x5394c4,_0x3f0184),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this['formatters']={'prettier':null};}[a0_0x24ff7f(0x19f)](){const _0x2267aa=a0_0x24ff7f;return _0x2267aa(0x268)+Math[_0x2267aa(0x258)](this[_0x2267aa(0x1a8)]/0x400/0x400)+_0x2267aa(0x18c)+this['maxFilesPerBatch']+'\x20files\x20per\x20operation\x0a-\x20Analysis\x20timeout:\x20'+this['timeout']/0x3e8+'\x20seconds\x0a-\x20Only\x20supports\x20languages\x20with\x20built-in\x20analyzers\x0a\x20\x20\x20\x20';}[a0_0x24ff7f(0x248)](_0x3fe4a6){const _0x4b0044=a0_0x24ff7f;try{const _0x42ae44={},_0x5db09f=[];this[_0x4b0044(0x254)]?.['debug']('StaticAnalysis\x20tool\x20parsing\x20parameters',{'contentLength':_0x3fe4a6['length'],'contentPreview':_0x3fe4a6['substring'](0x0,0xc8)});const _0x527e3c=/<analyze\s+(.+?)\/>/g;let _0x290120;while((_0x290120=_0x527e3c['exec'](_0x3fe4a6))!==null){const _0x2670d0=_0x290120[0x1]['trim'](),_0x3e0736=new a0_0x38bb13(),_0x7bd67b=_0x3e0736['parseAttributes'](_0x2670d0),_0x294029={'type':_0x4b0044(0x1ba),..._0x7bd67b};_0x294029['file-path']&&(_0x294029[_0x4b0044(0x214)]=_0x294029[_0x4b0044(0x227)],delete _0x294029[_0x4b0044(0x227)]),_0x294029['include-warnings']&&(_0x294029['includeWarnings']=_0x294029[_0x4b0044(0x1e1)]===_0x4b0044(0x229),delete _0x294029['include-warnings']),_0x294029['max-errors']&&(_0x294029['maxErrors']=parseInt(_0x294029['max-errors'],0xa),delete _0x294029['max-errors']),_0x5db09f['push'](_0x294029);}const _0x28c9aa=/<analyze-project\s+(.+?)\/>/g;while((_0x290120=_0x28c9aa['exec'](_0x3fe4a6))!==null){const _0x1b7324=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x522d21=new a0_0x38bb13(),_0x559d65=_0x522d21[_0x4b0044(0x264)](_0x1b7324),_0x497cf0={'type':_0x4b0044(0x260),..._0x559d65};_0x497cf0[_0x4b0044(0x1e1)]&&(_0x497cf0[_0x4b0044(0x25f)]=_0x497cf0[_0x4b0044(0x1e1)]==='true',delete _0x497cf0[_0x4b0044(0x1e1)]),_0x497cf0['max-errors']&&(_0x497cf0[_0x4b0044(0x1f8)]=parseInt(_0x497cf0['max-errors'],0xa),delete _0x497cf0['max-errors']),_0x5db09f[_0x4b0044(0x26d)](_0x497cf0);}const _0x48f96c=/<fix\s+(.+?)\/>/g;while((_0x290120=_0x48f96c[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0x280243=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x54370a=new a0_0x38bb13(),_0x2d5234=_0x54370a['parseAttributes'](_0x280243),_0x5386b5={'type':'fix',..._0x2d5234};_0x5386b5[_0x4b0044(0x227)]&&(_0x5386b5[_0x4b0044(0x214)]=_0x5386b5[_0x4b0044(0x227)],delete _0x5386b5[_0x4b0044(0x227)]),_0x5386b5[_0x4b0044(0x266)]&&(_0x5386b5['writeFile']=_0x5386b5[_0x4b0044(0x266)]===_0x4b0044(0x229),delete _0x5386b5['write-file']),_0x5db09f['push'](_0x5386b5);}const _0x47fc45=/<format\s+(.+?)\/>/g;while((_0x290120=_0x47fc45['exec'](_0x3fe4a6))!==null){const _0x555ec6=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x83fadc=new a0_0x38bb13(),_0x184d79=_0x83fadc[_0x4b0044(0x264)](_0x555ec6),_0x164b8f={'type':'format',..._0x184d79};_0x164b8f['file-path']&&(_0x164b8f['filePath']=_0x164b8f['file-path'],delete _0x164b8f['file-path']),_0x164b8f['write-file']&&(_0x164b8f[_0x4b0044(0x208)]=_0x164b8f['write-file']==='true',delete _0x164b8f['write-file']),_0x5db09f[_0x4b0044(0x26d)](_0x164b8f);}const _0x4919ce=/<security-scan\s+(.+?)\/>/g;while((_0x290120=_0x4919ce[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0x7a22d3=_0x290120[0x1]['trim'](),_0x1dded1=new a0_0x38bb13(),_0xba85a7=_0x1dded1[_0x4b0044(0x264)](_0x7a22d3),_0x298ac2={'type':'security-scan',..._0xba85a7};_0x298ac2['file-path']&&(_0x298ac2[_0x4b0044(0x214)]=_0x298ac2['file-path'],delete _0x298ac2[_0x4b0044(0x227)]),_0x298ac2[_0x4b0044(0x1f0)]&&(_0x298ac2[_0x4b0044(0x22a)]=_0x298ac2[_0x4b0044(0x1f0)]==='true',delete _0x298ac2['skip-test-files']),_0x5db09f[_0x4b0044(0x26d)](_0x298ac2);}const _0x2a71aa=/<security-scan-project\s+(.+?)\/>/g;while((_0x290120=_0x2a71aa[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0x28fbd6=_0x290120[0x1]['trim'](),_0xaa8e1=new a0_0x38bb13(),_0x2f4d64=_0xaa8e1[_0x4b0044(0x264)](_0x28fbd6),_0x5af315={'type':_0x4b0044(0x194),..._0x2f4d64};_0x5af315[_0x4b0044(0x1f0)]&&(_0x5af315[_0x4b0044(0x22a)]=_0x5af315[_0x4b0044(0x1f0)]==='true',delete _0x5af315['skip-test-files']),_0x5db09f[_0x4b0044(0x26d)](_0x5af315);}const _0x139ee7=/<validate-config\s+(.+?)\/>/g;while((_0x290120=_0x139ee7['exec'](_0x3fe4a6))!==null){const _0x4b373e=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x3f15d0=new a0_0x38bb13(),_0x36321e=_0x3f15d0[_0x4b0044(0x264)](_0x4b373e),_0x4b384c={'type':_0x4b0044(0x1e4),..._0x36321e};_0x4b384c['file-path']&&(_0x4b384c['filePath']=_0x4b384c[_0x4b0044(0x227)],delete _0x4b384c[_0x4b0044(0x227)]),_0x5db09f[_0x4b0044(0x26d)](_0x4b384c);}const _0x25f06f=/<validate-config-directory\s+(.+?)\/>/g;while((_0x290120=_0x25f06f[_0x4b0044(0x20e)](_0x3fe4a6))!==null){const _0xa46217=_0x290120[0x1][_0x4b0044(0x1b2)](),_0x1fbb3a=new a0_0x38bb13(),_0x48c631=_0x1fbb3a[_0x4b0044(0x264)](_0xa46217),_0x1337f0={'type':_0x4b0044(0x1b6),..._0x48c631};_0x5db09f['push'](_0x1337f0);}return _0x42ae44['actions']=_0x5db09f,_0x42ae44[_0x4b0044(0x1d6)]=_0x3fe4a6['trim'](),this[_0x4b0044(0x254)]?.['debug'](_0x4b0044(0x24c),{'totalActions':_0x5db09f['length'],'actionTypes':_0x5db09f['map'](_0xf1edd=>_0xf1edd['type'])}),_0x42ae44;}catch(_0x4465c4){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x4465c4[_0x4b0044(0x26c)]);}}[a0_0x24ff7f(0x1d9)](){return['actions'];}[a0_0x24ff7f(0x26b)](_0x515b9f){const _0x35848b=a0_0x24ff7f,_0x1fd82e=[];if(!_0x515b9f[_0x35848b(0x216)]||!Array[_0x35848b(0x215)](_0x515b9f[_0x35848b(0x216)])||_0x515b9f[_0x35848b(0x216)]['length']===0x0)_0x1fd82e['push'](_0x35848b(0x26a));else{for(const [_0x22437b,_0x3d3b88]of _0x515b9f[_0x35848b(0x216)]['entries']()){if(!_0x3d3b88[_0x35848b(0x191)]){_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x239));continue;}switch(_0x3d3b88['type']){case'analyze':!_0x3d3b88['filePath']&&_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x186));break;case'analyze-project':!_0x3d3b88[_0x35848b(0x267)]&&_0x1fd82e['push']('Action\x20'+(_0x22437b+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case'fix':!_0x3d3b88['filePath']&&_0x1fd82e['push']('Action\x20'+(_0x22437b+0x1)+_0x35848b(0x22b));break;case'format':!_0x3d3b88[_0x35848b(0x214)]&&_0x1fd82e[_0x35848b(0x26d)]('Action\x20'+(_0x22437b+0x1)+':\x20file-path\x20is\x20required\x20for\x20format');break;case _0x35848b(0x1ee):!_0x3d3b88[_0x35848b(0x214)]&&_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x1aa));break;case'security-scan-project':!_0x3d3b88[_0x35848b(0x267)]&&_0x1fd82e['push'](_0x35848b(0x19b)+(_0x22437b+0x1)+':\x20directory\x20is\x20required\x20for\x20security-scan-project');break;case _0x35848b(0x1e4):!_0x3d3b88['filePath']&&_0x1fd82e['push'](_0x35848b(0x19b)+(_0x22437b+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case'validate-config-directory':!_0x3d3b88['directory']&&_0x1fd82e[_0x35848b(0x26d)](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x20b));break;default:_0x1fd82e['push'](_0x35848b(0x19b)+(_0x22437b+0x1)+_0x35848b(0x189)+_0x3d3b88['type']);}}_0x515b9f['actions']['length']>this['maxFilesPerBatch']&&_0x1fd82e[_0x35848b(0x26d)]('Too\x20many\x20actions:\x20'+_0x515b9f['actions'][_0x35848b(0x233)]+_0x35848b(0x19a)+this[_0x35848b(0x251)]+')');}return{'valid':_0x1fd82e[_0x35848b(0x233)]===0x0,'errors':_0x1fd82e};}async[a0_0x24ff7f(0x1b5)](_0x27afed,_0x2b1cbd){const _0x258117=a0_0x24ff7f,{actions:_0x4436b6}=_0x27afed,{projectDir:_0x1246d6,agentId:_0x437c06,directoryAccess:_0x43ad53}=_0x2b1cbd,_0x58e704=_0x43ad53||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x1246d6||process[_0x258117(0x244)](),'writeEnabledDirectories':[_0x1246d6||process['cwd']()],'restrictToProject':!![]}),_0x4e7d5a=this['directoryAccessManager'][_0x258117(0x262)](_0x58e704),_0x5e0d84={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x1a03bf of _0x4436b6){try{let _0x132fea;switch(_0x1a03bf[_0x258117(0x191)]){case'analyze':_0x132fea=await this[_0x258117(0x1f4)](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&(_0x5e0d84[_0x258117(0x236)][_0x258117(0x26d)](_0x132fea),this[_0x258117(0x1fe)](_0x5e0d84[_0x258117(0x1f3)],_0x132fea));break;case'analyze-project':const _0x2cad1d=await this['analyzeProject'](_0x1a03bf[_0x258117(0x267)],_0x1a03bf['pattern'],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x5e0d84[_0x258117(0x236)]['push'](..._0x2cad1d);for(const _0x76902c of _0x2cad1d){this[_0x258117(0x1fe)](_0x5e0d84[_0x258117(0x1f3)],_0x76902c);}break;case _0x258117(0x21a):_0x132fea=await this['fixFile'](_0x1a03bf['filePath'],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&_0x5e0d84[_0x258117(0x236)][_0x258117(0x26d)](_0x132fea);break;case'format':_0x132fea=await this['formatFile'](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&_0x5e0d84[_0x258117(0x236)]['push'](_0x132fea);break;case'security-scan':_0x132fea=await this['securityScanFile'](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&(_0x5e0d84['files'][_0x258117(0x26d)](_0x132fea),this[_0x258117(0x1fe)](_0x5e0d84['summary'],_0x132fea));break;case'security-scan-project':const _0x216efc=await this[_0x258117(0x1be)](_0x1a03bf[_0x258117(0x267)],_0x1a03bf[_0x258117(0x224)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x5e0d84['files'][_0x258117(0x26d)](..._0x216efc);for(const _0x437347 of _0x216efc){this['updateSummary'](_0x5e0d84[_0x258117(0x1f3)],_0x437347);}break;case'validate-config':_0x132fea=await this['validateConfigFile'](_0x1a03bf[_0x258117(0x214)],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x132fea&&(_0x5e0d84['files']['push'](_0x132fea),this['updateSummary'](_0x5e0d84['summary'],_0x132fea));break;case _0x258117(0x1b6):const _0x4266b7=await this['validateConfigDirectory'](_0x1a03bf['directory'],_0x4e7d5a,_0x58e704,_0x1a03bf);_0x5e0d84[_0x258117(0x236)][_0x258117(0x26d)](..._0x4266b7);for(const _0x4855c4 of _0x4266b7){this['updateSummary'](_0x5e0d84[_0x258117(0x1f3)],_0x4855c4);}break;default:throw new Error(_0x258117(0x269)+_0x1a03bf['type']);}}catch(_0x55149b){this['logger']?.[_0x258117(0x1f9)](_0x258117(0x1fc),{'action':_0x1a03bf[_0x258117(0x191)],'error':_0x55149b['message']}),_0x5e0d84[_0x258117(0x236)]['push']({'file':_0x1a03bf['filePath']||_0x1a03bf['directory'],'error':_0x55149b[_0x258117(0x26c)],'success':![]});}}return{'success':!![],'results':_0x5e0d84,'toolUsed':_0x258117(0x1ab),'performance':this['getPerformanceMetrics']()};}async['analyzeFile'](_0x7bdc94,_0x582c14,_0x2fa923,_0x1ae4be={}){const _0x4c6e30=a0_0x24ff7f,_0x4dd928=a0_0x3da306['isAbsolute'](_0x7bdc94)?a0_0x3da306[_0x4c6e30(0x205)](_0x7bdc94):a0_0x3da306['resolve'](_0x582c14,_0x7bdc94),_0x5803d5=this[_0x4c6e30(0x18e)]['validateReadAccess'](_0x4dd928,_0x2fa923);if(!_0x5803d5['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x5803d5['reason']);try{const _0x475d65=await a0_0x3fbac7[_0x4c6e30(0x1ed)](_0x4dd928);if(_0x475d65[_0x4c6e30(0x200)]>this[_0x4c6e30(0x1a8)])throw new Error(_0x4c6e30(0x19e)+_0x475d65[_0x4c6e30(0x200)]+_0x4c6e30(0x19d)+this[_0x4c6e30(0x1a8)]+')');const _0x580451=this['detectLanguage'](_0x4dd928);if(!_0x580451)return{'file':this['directoryAccessManager']['createRelativePath'](_0x4dd928,_0x2fa923),'fullPath':_0x4dd928,'language':'unknown','errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0xaf91c9=await a0_0x3fbac7['readFile'](_0x4dd928,'utf-8'),_0x3ce206=this[_0x4c6e30(0x222)]?this['computeContentHash'](_0xaf91c9):null,_0x13f8c6=this['useContentHash']?_0x4dd928+':'+_0x3ce206:_0x4dd928+':'+_0x475d65[_0x4c6e30(0x20c)][_0x4c6e30(0x1bc)]();if(this['enableCache']&&this['analysisCache'][_0x4c6e30(0x1e5)](_0x13f8c6)){const _0x203e0e=this[_0x4c6e30(0x1ce)][_0x4c6e30(0x221)](_0x13f8c6);if(Date['now']()-_0x203e0e[_0x4c6e30(0x1d5)]<this['cacheExpiry'])return this[_0x4c6e30(0x254)]?.[_0x4c6e30(0x22d)]('Using\x20cached\x20analysis\x20result',{'file':_0x4dd928}),this['metrics']['cacheHits']++,this['metrics'][_0x4c6e30(0x1c9)]++,_0x203e0e[_0x4c6e30(0x228)];}this[_0x4c6e30(0x220)]['cacheMisses']++,this['metrics'][_0x4c6e30(0x1c9)]++;const _0x56f064=await this['getAnalyzer'](_0x580451);if(!_0x56f064)return{'file':this[_0x4c6e30(0x18e)]['createRelativePath'](_0x4dd928,_0x2fa923),'fullPath':_0x4dd928,'language':_0x580451,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':_0x4c6e30(0x1eb)+_0x580451};const _0xc3d05c=Date['now'](),_0x21db17=await _0x56f064[_0x4c6e30(0x1ba)](_0x4dd928,_0xaf91c9,{'workingDir':_0x582c14,'accessConfig':_0x2fa923,'framework':await this['detectFramework'](_0x582c14,_0x580451)}),_0x59d714=Date[_0x4c6e30(0x181)]()-_0xc3d05c;this['metrics'][_0x4c6e30(0x1b1)]+=_0x59d714,this[_0x4c6e30(0x220)]['filesAnalyzed']++;const _0x5a58ff={'file':this[_0x4c6e30(0x18e)]['createRelativePath'](_0x4dd928,_0x2fa923),'fullPath':_0x4dd928,'language':_0x580451,'framework':await this['detectFramework'](_0x582c14,_0x580451),'errors':_0x21db17[_0x4c6e30(0x18a)](_0x588900=>_0x588900[_0x4c6e30(0x210)]===STATIC_ANALYSIS[_0x4c6e30(0x265)]['ERROR']),'warnings':_0x1ae4be['includeWarnings']!==![]?_0x21db17['filter'](_0x9b7635=>_0x9b7635['severity']===STATIC_ANALYSIS[_0x4c6e30(0x265)]['WARNING']):[],'info':_0x21db17['filter'](_0x3375c0=>_0x3375c0[_0x4c6e30(0x210)]===STATIC_ANALYSIS[_0x4c6e30(0x265)]['INFO']),'totalIssues':_0x21db17[_0x4c6e30(0x233)],'analyzed':!![],'timestamp':new Date()[_0x4c6e30(0x1dd)]()};return _0x1ae4be[_0x4c6e30(0x1f8)]&&_0x5a58ff[_0x4c6e30(0x1c0)]['length']>_0x1ae4be[_0x4c6e30(0x1f8)]&&(_0x5a58ff[_0x4c6e30(0x1c0)]=_0x5a58ff['errors']['slice'](0x0,_0x1ae4be[_0x4c6e30(0x1f8)]),_0x5a58ff[_0x4c6e30(0x1ae)]=!![]),this['enableCache']&&this['analysisCache'][_0x4c6e30(0x19c)](_0x13f8c6,{'result':_0x5a58ff,'timestamp':Date[_0x4c6e30(0x181)]()}),_0x5a58ff;}catch(_0x338ddb){throw new Error('Failed\x20to\x20analyze\x20'+_0x7bdc94+':\x20'+_0x338ddb[_0x4c6e30(0x26c)]);}}async[a0_0x24ff7f(0x246)](_0x4694ac,_0x51a077,_0x5cc35b,_0x43de00,_0x2652cd={}){const _0x2ad2ba=a0_0x24ff7f,_0x17ab2d=a0_0x3da306['isAbsolute'](_0x4694ac)?a0_0x3da306[_0x2ad2ba(0x205)](_0x4694ac):a0_0x3da306[_0x2ad2ba(0x207)](_0x5cc35b,_0x4694ac),_0x1e8335=this['directoryAccessManager'][_0x2ad2ba(0x202)](_0x17ab2d,_0x43de00);if(!_0x1e8335['allowed'])throw new Error(_0x2ad2ba(0x1ac)+_0x1e8335['reason']);const _0xbf88ff=await this['findFiles'](_0x17ab2d,_0x51a077);if(_0xbf88ff['length']>this[_0x2ad2ba(0x251)])throw new Error('Too\x20many\x20files:\x20'+_0xbf88ff['length']+_0x2ad2ba(0x19a)+this['maxFilesPerBatch']+')');const _0x22d953=[];if(this[_0x2ad2ba(0x18b)]&&_0xbf88ff['length']>0x1){this[_0x2ad2ba(0x254)]?.['debug']('Using\x20parallel\x20analysis',{'totalFiles':_0xbf88ff['length'],'batchSize':this[_0x2ad2ba(0x1e9)]});for(let _0x47ffae=0x0;_0x47ffae<_0xbf88ff[_0x2ad2ba(0x233)];_0x47ffae+=this[_0x2ad2ba(0x1e9)]){const _0x12394b=_0xbf88ff[_0x2ad2ba(0x1cc)](_0x47ffae,_0x47ffae+this['maxParallelFiles']);this['metrics']['parallelBatches']++;const _0x150789={'completed':_0x47ffae,'total':_0xbf88ff['length'],'percentage':Math['round'](_0x47ffae/_0xbf88ff['length']*0x64)};_0x2652cd[_0x2ad2ba(0x1a5)]&&_0x2652cd['onProgress'](_0x150789);this['logger']?.[_0x2ad2ba(0x22d)]('Analyzing\x20batch',{'batch':Math[_0x2ad2ba(0x1cb)](_0x47ffae/this['maxParallelFiles'])+0x1,'filesInBatch':_0x12394b['length'],'progress':_0x150789['completed']+'/'+_0x150789[_0x2ad2ba(0x226)]});const _0x5d3a64=_0x12394b['map'](async _0x8afb99=>{const _0x4bf610=_0x2ad2ba;try{const _0x338f2c=await this['analyzeFile'](_0x8afb99,_0x5cc35b,_0x43de00,_0x2652cd);return _0x338f2c;}catch(_0x51b014){return this['logger']?.['warn'](_0x4bf610(0x1b7),{'file':_0x8afb99,'error':_0x51b014[_0x4bf610(0x26c)]}),{'file':this[_0x4bf610(0x18e)]['createRelativePath'](_0x8afb99,_0x43de00),'fullPath':_0x8afb99,'error':_0x51b014['message'],'success':![]};}}),_0x1d03ca=await Promise['all'](_0x5d3a64);_0x22d953['push'](..._0x1d03ca[_0x2ad2ba(0x18a)](_0x59a08d=>_0x59a08d!==null));}_0x2652cd[_0x2ad2ba(0x1a5)]&&_0x2652cd[_0x2ad2ba(0x1a5)]({'completed':_0xbf88ff['length'],'total':_0xbf88ff[_0x2ad2ba(0x233)],'percentage':0x64});}else for(const _0x53b71a of _0xbf88ff){try{const _0x50895c=await this['analyzeFile'](_0x53b71a,_0x5cc35b,_0x43de00,_0x2652cd);_0x50895c&&_0x22d953['push'](_0x50895c);}catch(_0x3f64ac){this[_0x2ad2ba(0x254)]?.[_0x2ad2ba(0x1cf)](_0x2ad2ba(0x1b7),{'file':_0x53b71a,'error':_0x3f64ac['message']}),_0x22d953[_0x2ad2ba(0x26d)]({'file':this[_0x2ad2ba(0x18e)]['createRelativePath'](_0x53b71a,_0x43de00),'fullPath':_0x53b71a,'error':_0x3f64ac[_0x2ad2ba(0x26c)],'success':![]});}}return _0x22d953;}async[a0_0x24ff7f(0x25d)](_0x4e50c6,_0x559c5b,_0x55093c,_0x1c397d={}){const _0x21761c=a0_0x24ff7f,_0x4dcb32=a0_0x3da306['isAbsolute'](_0x4e50c6)?a0_0x3da306['normalize'](_0x4e50c6):a0_0x3da306[_0x21761c(0x207)](_0x559c5b,_0x4e50c6),_0x542176=this['directoryAccessManager']['validateReadAccess'](_0x4dcb32,_0x55093c);if(!_0x542176[_0x21761c(0x1c2)])throw new Error(_0x21761c(0x1ac)+_0x542176[_0x21761c(0x1a0)]);if(_0x1c397d['writeFile']){const _0x19f808=this[_0x21761c(0x18e)]['validateWriteAccess'](_0x4dcb32,_0x55093c);if(!_0x19f808[_0x21761c(0x1c2)])throw new Error(_0x21761c(0x255)+_0x19f808['reason']);}try{const _0x3f02c0=await a0_0x3fbac7[_0x21761c(0x1fd)](_0x4dcb32,'utf-8'),_0x405d72=await this[_0x21761c(0x252)](),_0x3ac941=await _0x405d72[_0x21761c(0x21a)](_0x4dcb32,_0x3f02c0,{'workingDir':_0x559c5b,'accessConfig':_0x55093c,'framework':await this[_0x21761c(0x25a)](_0x559c5b,this[_0x21761c(0x24d)](_0x4dcb32))});return _0x1c397d[_0x21761c(0x208)]&&_0x3ac941['fixed']&&(await a0_0x3fbac7[_0x21761c(0x208)](_0x4dcb32,_0x3ac941[_0x21761c(0x20a)],'utf-8'),this[_0x21761c(0x254)]?.['info']('File\x20fixed\x20and\x20written',{'file':_0x4dcb32})),{'file':this['directoryAccessManager'][_0x21761c(0x182)](_0x4dcb32,_0x55093c),'fullPath':_0x4dcb32,'action':'fix','fixed':_0x3ac941['fixed'],'fixedCount':_0x3ac941['fixedCount'],'remainingErrors':_0x3ac941['remainingErrors'],'remainingWarnings':_0x3ac941[_0x21761c(0x1d7)],'changes':_0x3ac941[_0x21761c(0x223)],'written':!!(_0x1c397d[_0x21761c(0x208)]&&_0x3ac941['fixed']),'preview':!_0x1c397d[_0x21761c(0x208)]&&_0x3ac941['fixed']?_0x3ac941[_0x21761c(0x20a)]:undefined};}catch(_0x2ca272){throw new Error('Failed\x20to\x20fix\x20'+_0x4e50c6+':\x20'+_0x2ca272['message']);}}async['formatFile'](_0x2aedbe,_0x3b8ab5,_0x28aa4a,_0xdf8092={}){const _0x23b655=a0_0x24ff7f,_0x4fae05=a0_0x3da306[_0x23b655(0x21d)](_0x2aedbe)?a0_0x3da306['normalize'](_0x2aedbe):a0_0x3da306[_0x23b655(0x207)](_0x3b8ab5,_0x2aedbe),_0x140e9e=this[_0x23b655(0x18e)][_0x23b655(0x202)](_0x4fae05,_0x28aa4a);if(!_0x140e9e[_0x23b655(0x1c2)])throw new Error('Read\x20access\x20denied:\x20'+_0x140e9e['reason']);if(_0xdf8092[_0x23b655(0x208)]){const _0x150469=this[_0x23b655(0x18e)]['validateWriteAccess'](_0x4fae05,_0x28aa4a);if(!_0x150469[_0x23b655(0x1c2)])throw new Error(_0x23b655(0x255)+_0x150469[_0x23b655(0x1a0)]);}try{const _0x4f4d94=await a0_0x3fbac7[_0x23b655(0x1fd)](_0x4fae05,_0x23b655(0x257)),_0x232fe7=await this['getPrettierFormatter']();if(!_0x232fe7['isSupported'](_0x4fae05))return{'file':this['directoryAccessManager']['createRelativePath'](_0x4fae05,_0x28aa4a),'fullPath':_0x4fae05,'action':_0x23b655(0x188),'formatted':![],'skipped':!![],'skipReason':_0x23b655(0x1a3)};const _0x39bf14=await _0x232fe7['format'](_0x4fae05,_0x4f4d94,{'workingDir':_0x3b8ab5,'accessConfig':_0x28aa4a});return _0xdf8092[_0x23b655(0x208)]&&_0x39bf14['formatted']&&(await a0_0x3fbac7['writeFile'](_0x4fae05,_0x39bf14['content'],'utf-8'),this[_0x23b655(0x254)]?.['info']('File\x20formatted\x20and\x20written',{'file':_0x4fae05})),{'file':this[_0x23b655(0x18e)][_0x23b655(0x182)](_0x4fae05,_0x28aa4a),'fullPath':_0x4fae05,'action':_0x23b655(0x188),'formatted':_0x39bf14[_0x23b655(0x237)],'linesChanged':_0x39bf14['linesChanged'],'changes':_0x39bf14['changes'],'written':!!(_0xdf8092['writeFile']&&_0x39bf14[_0x23b655(0x237)]),'preview':!_0xdf8092['writeFile']&&_0x39bf14['formatted']?_0x39bf14['content']:undefined};}catch(_0x1a68cf){throw new Error(_0x23b655(0x23b)+_0x2aedbe+':\x20'+_0x1a68cf['message']);}}async['securityScanFile'](_0x35729f,_0x1dc4b6,_0x191d5a,_0x5a7fb0={}){const _0x36a456=a0_0x24ff7f,_0x48d0e5=a0_0x3da306['isAbsolute'](_0x35729f)?a0_0x3da306['normalize'](_0x35729f):a0_0x3da306[_0x36a456(0x207)](_0x1dc4b6,_0x35729f),_0x43316e=this[_0x36a456(0x18e)]['validateReadAccess'](_0x48d0e5,_0x191d5a);if(!_0x43316e[_0x36a456(0x1c2)])throw new Error(_0x36a456(0x1ac)+_0x43316e[_0x36a456(0x1a0)]);try{const _0x756f2=await a0_0x3fbac7['stat'](_0x48d0e5);if(_0x756f2['size']>this['maxFileSize'])throw new Error(_0x36a456(0x19e)+_0x756f2[_0x36a456(0x200)]+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x5dd7d6=this[_0x36a456(0x24d)](_0x48d0e5);if(!_0x5dd7d6||![_0x36a456(0x250),_0x36a456(0x1ad),'python']['includes'](_0x5dd7d6))return{'file':this[_0x36a456(0x18e)][_0x36a456(0x182)](_0x48d0e5,_0x191d5a),'fullPath':_0x48d0e5,'language':_0x5dd7d6||'unknown','issues':[],'skipped':!![],'skipReason':_0x36a456(0x1e8)};const _0xdb4000=await a0_0x3fbac7[_0x36a456(0x1fd)](_0x48d0e5,'utf-8'),_0x45d701=await this['getSecurityAnalyzer'](),_0x5ee92b=await _0x45d701['analyze'](_0x48d0e5,_0xdb4000,{'skipTestFiles':_0x5a7fb0[_0x36a456(0x22a)]!==![]}),_0x57e790={'file':this[_0x36a456(0x18e)][_0x36a456(0x182)](_0x48d0e5,_0x191d5a),'fullPath':_0x48d0e5,'language':_0x5dd7d6,'action':_0x36a456(0x1ee),'critical':_0x5ee92b['filter'](_0x4e08e8=>_0x4e08e8[_0x36a456(0x210)]===STATIC_ANALYSIS[_0x36a456(0x265)][_0x36a456(0x1c6)]),'errors':_0x5ee92b[_0x36a456(0x18a)](_0xbc0e95=>_0xbc0e95['severity']===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x5ee92b[_0x36a456(0x18a)](_0x2fe032=>_0x2fe032[_0x36a456(0x210)]===STATIC_ANALYSIS[_0x36a456(0x265)][_0x36a456(0x1c5)]),'info':_0x5ee92b[_0x36a456(0x18a)](_0x34f98a=>_0x34f98a[_0x36a456(0x210)]===STATIC_ANALYSIS['SEVERITY'][_0x36a456(0x219)]),'totalIssues':_0x5ee92b[_0x36a456(0x233)],'analyzed':!![],'scannersUsed':_0x5ee92b[_0x36a456(0x1f2)](_0x1ad098=>_0x1ad098[_0x36a456(0x190)])['filter']((_0x47bd6d,_0x3d557c,_0x5be658)=>_0x5be658['indexOf'](_0x47bd6d)===_0x3d557c),'timestamp':new Date()[_0x36a456(0x1dd)]()};return _0x57e790;}catch(_0x5dd140){throw new Error(_0x36a456(0x21b)+_0x35729f+':\x20'+_0x5dd140[_0x36a456(0x26c)]);}}async['securityScanProject'](_0x58b3b2,_0x14e0bf,_0x25b094,_0xeca78b,_0x34dfa2={}){const _0x5dd690=a0_0x24ff7f,_0x34e672=a0_0x3da306['isAbsolute'](_0x58b3b2)?a0_0x3da306[_0x5dd690(0x205)](_0x58b3b2):a0_0x3da306['resolve'](_0x25b094,_0x58b3b2),_0x31ff9c=this[_0x5dd690(0x18e)]['validateReadAccess'](_0x34e672,_0xeca78b);if(!_0x31ff9c['allowed'])throw new Error('Read\x20access\x20denied:\x20'+_0x31ff9c[_0x5dd690(0x1a0)]);const _0x7c7e=await this['getSecurityAnalyzer'](),_0x36d26f=await _0x7c7e['analyzeProject'](_0x34e672,'javascript',_0x34dfa2),_0xced09c=_0x14e0bf||_0x5dd690(0x235),_0x2b5e5a=await this['findFiles'](_0x34e672,_0xced09c);if(_0x2b5e5a['length']>this[_0x5dd690(0x251)])throw new Error(_0x5dd690(0x261)+_0x2b5e5a['length']+'\x20(max\x20'+this[_0x5dd690(0x251)]+')');const _0x38e482=[];if(this[_0x5dd690(0x18b)]&&_0x2b5e5a['length']>0x1){this[_0x5dd690(0x254)]?.['debug'](_0x5dd690(0x1e6),{'totalFiles':_0x2b5e5a[_0x5dd690(0x233)],'batchSize':this[_0x5dd690(0x1e9)]});for(let _0x182a8d=0x0;_0x182a8d<_0x2b5e5a['length'];_0x182a8d+=this[_0x5dd690(0x1e9)]){const _0x4474cf=_0x2b5e5a[_0x5dd690(0x1cc)](_0x182a8d,_0x182a8d+this['maxParallelFiles']);_0x34dfa2['onProgress']&&_0x34dfa2['onProgress']({'completed':_0x182a8d,'total':_0x2b5e5a[_0x5dd690(0x233)],'percentage':Math[_0x5dd690(0x258)](_0x182a8d/_0x2b5e5a[_0x5dd690(0x233)]*0x64)});const _0x3e4417=_0x4474cf[_0x5dd690(0x1f2)](async _0x227b27=>{const _0x4feacc=_0x5dd690;try{return await this['securityScanFile'](_0x227b27,_0x25b094,_0xeca78b,_0x34dfa2);}catch(_0x421c4b){return this['logger']?.[_0x4feacc(0x1cf)]('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x227b27,'error':_0x421c4b[_0x4feacc(0x26c)]}),{'file':this['directoryAccessManager'][_0x4feacc(0x182)](_0x227b27,_0xeca78b),'fullPath':_0x227b27,'error':_0x421c4b['message'],'success':![]};}}),_0x5c89bb=await Promise['all'](_0x3e4417);_0x38e482['push'](..._0x5c89bb[_0x5dd690(0x18a)](_0x50ac00=>_0x50ac00!==null));}_0x34dfa2['onProgress']&&_0x34dfa2['onProgress']({'completed':_0x2b5e5a[_0x5dd690(0x233)],'total':_0x2b5e5a['length'],'percentage':0x64});}else for(const _0x4f4a84 of _0x2b5e5a){try{const _0x2d441b=await this['securityScanFile'](_0x4f4a84,_0x25b094,_0xeca78b,_0x34dfa2);_0x2d441b&&_0x38e482[_0x5dd690(0x26d)](_0x2d441b);}catch(_0xdb800f){this['logger']?.[_0x5dd690(0x1cf)](_0x5dd690(0x183),{'file':_0x4f4a84,'error':_0xdb800f[_0x5dd690(0x26c)]}),_0x38e482[_0x5dd690(0x26d)]({'file':this[_0x5dd690(0x18e)]['createRelativePath'](_0x4f4a84,_0xeca78b),'fullPath':_0x4f4a84,'error':_0xdb800f['message'],'success':![]});}}return _0x36d26f[_0x5dd690(0x233)]>0x0&&_0x38e482[_0x5dd690(0x26d)]({'file':a0_0x3da306[_0x5dd690(0x1dc)](_0x34e672,'package.json'),'fullPath':a0_0x3da306['join'](_0x34e672,_0x5dd690(0x192)),'action':'dependency-scan','critical':_0x36d26f[_0x5dd690(0x18a)](_0x4f789e=>_0x4f789e['severity']===STATIC_ANALYSIS[_0x5dd690(0x265)][_0x5dd690(0x1c6)]),'errors':_0x36d26f['filter'](_0x14f132=>_0x14f132[_0x5dd690(0x210)]===STATIC_ANALYSIS[_0x5dd690(0x265)]['ERROR']),'warnings':_0x36d26f[_0x5dd690(0x18a)](_0x52a868=>_0x52a868[_0x5dd690(0x210)]===STATIC_ANALYSIS['SEVERITY']['WARNING']),'info':_0x36d26f['filter'](_0x1ed0c5=>_0x1ed0c5[_0x5dd690(0x210)]===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x36d26f['length'],'analyzed':!![],'scannersUsed':[_0x5dd690(0x20f)],'timestamp':new Date()['toISOString']()}),_0x38e482;}async[a0_0x24ff7f(0x240)](_0x1f3b5f,_0x3a9790,_0x213c86,_0x1d2845={}){const _0x4e15fb=a0_0x24ff7f,_0x473093=a0_0x3da306['isAbsolute'](_0x1f3b5f)?a0_0x3da306['normalize'](_0x1f3b5f):a0_0x3da306[_0x4e15fb(0x207)](_0x3a9790,_0x1f3b5f),_0x2cce43=this['directoryAccessManager'][_0x4e15fb(0x202)](_0x473093,_0x213c86);if(!_0x2cce43[_0x4e15fb(0x1c2)])throw new Error(_0x4e15fb(0x1ac)+_0x2cce43[_0x4e15fb(0x1a0)]);try{const _0x1f5506=await a0_0x3fbac7['stat'](_0x473093);if(_0x1f5506['size']>this[_0x4e15fb(0x1a8)])throw new Error(_0x4e15fb(0x19e)+_0x1f5506['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x59249f=await this['getConfigValidator'](),_0xdc496e=await _0x59249f[_0x4e15fb(0x1ff)](_0x473093,_0x1d2845),_0xfcc3ab={'file':this[_0x4e15fb(0x18e)][_0x4e15fb(0x182)](_0x473093,_0x213c86),'fullPath':_0x473093,'action':'validate-config','critical':_0xdc496e['filter'](_0x8e974f=>_0x8e974f[_0x4e15fb(0x210)]===STATIC_ANALYSIS[_0x4e15fb(0x265)]['CRITICAL']),'errors':_0xdc496e['filter'](_0x2dfa76=>_0x2dfa76['severity']===STATIC_ANALYSIS[_0x4e15fb(0x265)]['ERROR']),'warnings':_0xdc496e['filter'](_0x354320=>_0x354320[_0x4e15fb(0x210)]===STATIC_ANALYSIS[_0x4e15fb(0x265)]['WARNING']),'info':_0xdc496e[_0x4e15fb(0x18a)](_0x4f1cb9=>_0x4f1cb9['severity']===STATIC_ANALYSIS[_0x4e15fb(0x265)]['INFO']),'totalIssues':_0xdc496e['length'],'analyzed':!![],'validatorsUsed':_0xdc496e[_0x4e15fb(0x1f2)](_0x2d27ff=>_0x2d27ff['validator'])[_0x4e15fb(0x18a)]((_0x2c1c20,_0x27c8b0,_0x48ada9)=>_0x48ada9['indexOf'](_0x2c1c20)===_0x27c8b0),'timestamp':new Date()[_0x4e15fb(0x1dd)]()};return _0xfcc3ab;}catch(_0x44c9e4){throw new Error('Failed\x20to\x20validate\x20config\x20'+_0x1f3b5f+':\x20'+_0x44c9e4[_0x4e15fb(0x26c)]);}}async[a0_0x24ff7f(0x1c4)](_0xa62939,_0x257030,_0x1d3127,_0x368df1={}){const _0x367ebd=a0_0x24ff7f,_0x2fbc8b=a0_0x3da306[_0x367ebd(0x21d)](_0xa62939)?a0_0x3da306['normalize'](_0xa62939):a0_0x3da306['resolve'](_0x257030,_0xa62939),_0x1ff40e=this[_0x367ebd(0x18e)][_0x367ebd(0x202)](_0x2fbc8b,_0x1d3127);if(!_0x1ff40e['allowed'])throw new Error(_0x367ebd(0x1ac)+_0x1ff40e['reason']);const _0x53e214=await this[_0x367ebd(0x1b8)](_0x2fbc8b);if(_0x53e214[_0x367ebd(0x233)]>this[_0x367ebd(0x251)])throw new Error('Too\x20many\x20config\x20files:\x20'+_0x53e214[_0x367ebd(0x233)]+'\x20(max\x20'+this['maxFilesPerBatch']+')');const _0x4ca888=[];for(const _0x1fa0c2 of _0x53e214){try{const _0x12ddbf=await this[_0x367ebd(0x240)](_0x1fa0c2,_0x257030,_0x1d3127,_0x368df1);_0x12ddbf&&_0x4ca888[_0x367ebd(0x26d)](_0x12ddbf);}catch(_0x5debb3){this['logger']?.[_0x367ebd(0x1cf)]('Failed\x20to\x20validate\x20config\x20file',{'file':_0x1fa0c2,'error':_0x5debb3[_0x367ebd(0x26c)]}),_0x4ca888['push']({'file':this['directoryAccessManager'][_0x367ebd(0x182)](_0x1fa0c2,_0x1d3127),'fullPath':_0x1fa0c2,'error':_0x5debb3['message'],'success':![]});}}return _0x4ca888;}async[a0_0x24ff7f(0x1b8)](_0x4cc998){const _0x49f080=a0_0x24ff7f,_0xe89caf=[],_0x4de698=['package.json','tsconfig.json','Dockerfile',_0x49f080(0x22e),_0x49f080(0x201),'.env',_0x49f080(0x1d1),'.eslintrc.js',_0x49f080(0x225),'.prettierrc',_0x49f080(0x218)],_0x8d5da6=['.yml',_0x49f080(0x1de),'.json',_0x49f080(0x1df),'.tfvars'],_0x51dea6=async _0x428f83=>{const _0x79eff3=_0x49f080,_0x3a3e6c=await a0_0x3fbac7[_0x79eff3(0x232)](_0x428f83,{'withFileTypes':!![]});for(const _0x438295 of _0x3a3e6c){const _0x101d85=a0_0x3da306['join'](_0x428f83,_0x438295[_0x79eff3(0x1f5)]);if(_0x438295[_0x79eff3(0x1c1)]()){if(_0x438295['name']==='.github'||_0x438295[_0x79eff3(0x1f5)]===_0x79eff3(0x206)||_0x438295['name']===_0x79eff3(0x195)||_0x438295['name']==='terraform')await _0x51dea6(_0x101d85);else{if(![_0x79eff3(0x1ec),'.git',_0x79eff3(0x187),_0x79eff3(0x241)][_0x79eff3(0x1a2)](_0x438295[_0x79eff3(0x1f5)]))continue;}}else{if(_0x438295['isFile']()){if(_0x4de698['includes'](_0x438295[_0x79eff3(0x1f5)]))_0xe89caf['push'](_0x101d85);else{const _0x386140=a0_0x3da306['extname'](_0x438295[_0x79eff3(0x1f5)])[_0x79eff3(0x1e7)]();if(_0x8d5da6['includes'](_0x386140)){const _0x403956=a0_0x3da306['basename'](a0_0x3da306['dirname'](_0x101d85));(_0x403956===_0x79eff3(0x206)||_0x403956==='k8s'||_0x403956===_0x79eff3(0x20d)||_0x403956==='workflows')&&_0xe89caf[_0x79eff3(0x26d)](_0x101d85);}}}}}};return await _0x51dea6(_0x4cc998),_0xe89caf;}[a0_0x24ff7f(0x24d)](_0x52e899){const _0x5b1d4b=a0_0x24ff7f,_0x28b976=a0_0x3da306[_0x5b1d4b(0x21f)](_0x52e899)[_0x5b1d4b(0x1e7)]();return STATIC_ANALYSIS[_0x5b1d4b(0x256)][_0x28b976]||null;}async[a0_0x24ff7f(0x25a)](_0x299b8c,_0x4b37b2){const _0x356a24=a0_0x24ff7f;try{if(_0x4b37b2===STATIC_ANALYSIS['LANGUAGE'][_0x356a24(0x1b9)]||_0x4b37b2===STATIC_ANALYSIS['LANGUAGE']['TYPESCRIPT'])return await this['detectJSFramework'](_0x299b8c);if(_0x4b37b2===STATIC_ANALYSIS['LANGUAGE'][_0x356a24(0x242)])return await this['detectPythonFramework'](_0x299b8c);return null;}catch(_0x4ab653){return this['logger']?.['debug'](_0x356a24(0x184),{'error':_0x4ab653['message']}),null;}}async[a0_0x24ff7f(0x253)](_0x4e374e){const _0x492f90=a0_0x24ff7f;try{const _0x2a7db6=a0_0x3da306['join'](_0x4e374e,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x492f90(0x1b9)]),_0x1796ab=await a0_0x3fbac7['readFile'](_0x2a7db6,_0x492f90(0x257)),_0x30ad96=JSON['parse'](_0x1796ab),_0x30df68={..._0x30ad96[_0x492f90(0x21c)],..._0x30ad96[_0x492f90(0x1b4)]};for(const [_0x300b9d,_0x293432]of Object[_0x492f90(0x1fb)](STATIC_ANALYSIS[_0x492f90(0x247)])){if(_0x30df68[_0x293432])return _0x300b9d[_0x492f90(0x1e7)]();}return null;}catch(_0x59f260){return null;}}async[a0_0x24ff7f(0x23f)](_0x4d41d8){const _0x53bd6e=a0_0x24ff7f;try{const _0xfc4b3=a0_0x3da306['join'](_0x4d41d8,STATIC_ANALYSIS[_0x53bd6e(0x197)][_0x53bd6e(0x242)]),_0x1db1ee=await a0_0x3fbac7[_0x53bd6e(0x1fd)](_0xfc4b3,_0x53bd6e(0x257));for(const [_0x4ca100,_0x1f35b8]of Object['entries'](STATIC_ANALYSIS[_0x53bd6e(0x1e3)])){if(_0x1db1ee[_0x53bd6e(0x1e7)]()[_0x53bd6e(0x1a2)](_0x1f35b8))return _0x4ca100[_0x53bd6e(0x1e7)]();}return null;}catch(_0x7ceb20){try{const _0x33658b=a0_0x3da306[_0x53bd6e(0x1dc)](_0x4d41d8,STATIC_ANALYSIS[_0x53bd6e(0x197)][_0x53bd6e(0x25c)]),_0x15a4dd=await a0_0x3fbac7['readFile'](_0x33658b,_0x53bd6e(0x257));for(const [_0x59d556,_0x301b53]of Object[_0x53bd6e(0x1fb)](STATIC_ANALYSIS['PYTHON_FRAMEWORKS'])){if(_0x15a4dd['toLowerCase']()['includes'](_0x301b53))return _0x59d556[_0x53bd6e(0x1e7)]();}}catch{}return null;}}async[a0_0x24ff7f(0x1d2)](_0x4bad0e,_0x4f53d0){const _0x17294d=[],_0x4685b3=_0x4f53d0||'**/*.{js,jsx,mjs,cjs,ts,tsx,py,css,scss,sass,less}',_0xb13aa8=_0x499204=>{const _0x1cb410=a0_0x1be1,_0x4c6836=[],_0x1f7733=_0x499204['match'](/\*\.\{([^}]+)\}/);if(_0x1f7733){const _0x23710d=_0x1f7733[0x1][_0x1cb410(0x24f)](',')[_0x1cb410(0x1f2)](_0x58bf85=>_0x58bf85[_0x1cb410(0x1b2)]());_0x23710d[_0x1cb410(0x203)](_0x17b1d3=>_0x4c6836[_0x1cb410(0x26d)](_0x17b1d3[_0x1cb410(0x234)]('.')?_0x17b1d3:'.'+_0x17b1d3));}else{const _0x1ebe2f=_0x499204['match'](/\*\.([a-z]+)$/i);if(_0x1ebe2f){const _0x4aee44=_0x1ebe2f[0x1];_0x4c6836[_0x1cb410(0x26d)](_0x4aee44['startsWith']('.')?_0x4aee44:'.'+_0x4aee44);}}if(_0x4c6836['length']===0x0)return null;return _0x4c6836;},_0x575c57=_0xb13aa8(_0x4685b3),_0xef5b02=async _0x3f4920=>{const _0x5cb6ec=a0_0x1be1,_0x420b98=await a0_0x3fbac7[_0x5cb6ec(0x232)](_0x3f4920,{'withFileTypes':!![]});for(const _0x1e8780 of _0x420b98){const _0x4fb7c5=a0_0x3da306[_0x5cb6ec(0x1dc)](_0x3f4920,_0x1e8780['name']);if(_0x1e8780[_0x5cb6ec(0x1c1)]())!['node_modules','.git',_0x5cb6ec(0x187),'build',_0x5cb6ec(0x1ca),'.venv',_0x5cb6ec(0x22c)]['includes'](_0x1e8780[_0x5cb6ec(0x1f5)])&&await _0xef5b02(_0x4fb7c5);else{if(_0x1e8780[_0x5cb6ec(0x1f6)]()){const _0x4a895a=a0_0x3da306['extname'](_0x1e8780['name'])[_0x5cb6ec(0x1e7)]();STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x4a895a]&&((_0x575c57===null||_0x575c57['includes'](_0x4a895a))&&_0x17294d['push'](_0x4fb7c5));}}}};return await _0xef5b02(_0x4bad0e),_0x17294d;}async[a0_0x24ff7f(0x1c3)](_0x53084d){const _0x1d63b7=a0_0x24ff7f;try{if(_0x53084d===STATIC_ANALYSIS['LANGUAGE'][_0x1d63b7(0x1b9)]){if(!this['analyzers'][_0x1d63b7(0x250)]){const {default:_0x2c186e}=await import(_0x1d63b7(0x23a));this[_0x1d63b7(0x1bd)]['javascript']=new _0x2c186e(this['logger']);}return this[_0x1d63b7(0x1bd)][_0x1d63b7(0x250)];}if(_0x53084d===STATIC_ANALYSIS['LANGUAGE'][_0x1d63b7(0x18d)]){if(!this[_0x1d63b7(0x1bd)]['typescript']){const {default:_0x4c4c74}=await import('../analyzers/TypeScriptAnalyzer.js');this['analyzers']['typescript']=new _0x4c4c74(this[_0x1d63b7(0x254)]);}return this[_0x1d63b7(0x1bd)]['typescript'];}if(_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x242)]){if(!this[_0x1d63b7(0x1bd)][_0x1d63b7(0x1c8)]){const {default:_0x20a816}=await import(_0x1d63b7(0x1f1));this[_0x1d63b7(0x1bd)][_0x1d63b7(0x1c8)]=new _0x20a816(this[_0x1d63b7(0x254)]);}return this[_0x1d63b7(0x1bd)]['python'];}if(_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x1cd)]||_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x263)]||_0x53084d===STATIC_ANALYSIS[_0x1d63b7(0x1c7)][_0x1d63b7(0x23c)]){if(!this['analyzers'][_0x1d63b7(0x1ea)]){const {default:_0x5b1ccc}=await import('../analyzers/CSSAnalyzer.js');this[_0x1d63b7(0x1bd)]['css']=new _0x5b1ccc(this['logger']);}return this[_0x1d63b7(0x1bd)]['css'];}return null;}catch(_0x3a23dd){return this['logger']?.[_0x1d63b7(0x1f9)]('Failed\x20to\x20load\x20analyzer',{'language':_0x53084d,'error':_0x3a23dd['message']}),null;}}async[a0_0x24ff7f(0x252)](){const _0x27303c=a0_0x24ff7f;if(!this['analyzers']['eslint']){const {default:_0x43d831}=await import('../analyzers/ESLintAnalyzer.js');this[_0x27303c(0x1bd)]['eslint']=new _0x43d831(this['logger']);}return this['analyzers'][_0x27303c(0x1a9)];}async[a0_0x24ff7f(0x1bb)](){const _0xad4b88=a0_0x24ff7f;if(!this['formatters']['prettier']){const {default:_0x30ffa1}=await import('../analyzers/PrettierFormatter.js');this['formatters']['prettier']=new _0x30ffa1(this[_0xad4b88(0x254)]);}return this[_0xad4b88(0x1db)][_0xad4b88(0x209)];}async['getSecurityAnalyzer'](){const _0x84a25f=a0_0x24ff7f;if(!this['analyzers']['security']){const {default:_0x38f177}=await import(_0x84a25f(0x18f));this[_0x84a25f(0x1bd)]['security']=new _0x38f177(this[_0x84a25f(0x254)]);}return this['analyzers'][_0x84a25f(0x1bf)];}async['getConfigValidator'](){const _0x33b1e0=a0_0x24ff7f;if(!this['analyzers'][_0x33b1e0(0x1af)]){const {default:_0x13fa33}=await import(_0x33b1e0(0x24a));this['analyzers'][_0x33b1e0(0x1af)]=new _0x13fa33(this['logger']);}return this['analyzers'][_0x33b1e0(0x1af)];}['updateSummary'](_0x32a9e9,_0x2fcaaa){const _0x2c1f90=a0_0x24ff7f;if(_0x2fcaaa[_0x2c1f90(0x1d4)]){_0x32a9e9[_0x2c1f90(0x231)]++;const _0x5a57ac=_0x2fcaaa[_0x2c1f90(0x1d3)]?.[_0x2c1f90(0x233)]||0x0,_0x432cce=_0x2fcaaa[_0x2c1f90(0x1c0)]?.[_0x2c1f90(0x233)]||0x0,_0x5070c5=_0x2fcaaa[_0x2c1f90(0x1d8)]?.[_0x2c1f90(0x233)]||0x0,_0x5c3fef=_0x2fcaaa[_0x2c1f90(0x1a7)]?.['length']||0x0;_0x32a9e9['totalCritical']===undefined&&(_0x32a9e9[_0x2c1f90(0x1a6)]=0x0);_0x32a9e9['totalCritical']+=_0x5a57ac,_0x32a9e9[_0x2c1f90(0x196)]+=_0x432cce,_0x32a9e9['totalWarnings']+=_0x5070c5,_0x32a9e9['totalInfo']+=_0x5c3fef;(_0x5a57ac>0x0||_0x432cce>0x0)&&_0x32a9e9[_0x2c1f90(0x230)]++;_0x2fcaaa['language']&&(_0x32a9e9['filesByLanguage'][_0x2fcaaa['language']]=(_0x32a9e9['filesByLanguage'][_0x2fcaaa['language']]||0x0)+0x1);const _0x11978e=[..._0x2fcaaa[_0x2c1f90(0x1d3)]||[],..._0x2fcaaa[_0x2c1f90(0x1c0)]||[],..._0x2fcaaa[_0x2c1f90(0x1d8)]||[]];for(const _0xf1e231 of _0x11978e){_0xf1e231[_0x2c1f90(0x259)]&&(_0x32a9e9[_0x2c1f90(0x185)][_0xf1e231[_0x2c1f90(0x259)]]=(_0x32a9e9['errorsByCategory'][_0xf1e231['category']]||0x0)+0x1);}}}[a0_0x24ff7f(0x211)](_0x13c7ca){const _0x479fb8=a0_0x24ff7f;return a0_0x3c3cf7[_0x479fb8(0x217)]('sha256')['update'](_0x13c7ca)[_0x479fb8(0x1da)]('hex')[_0x479fb8(0x25b)](0x0,0x10);}[a0_0x24ff7f(0x1e0)](){const _0x1a2b40=a0_0x24ff7f,_0xb00e52=this['metrics']['totalAnalyses']>0x0?this['metrics'][_0x1a2b40(0x25e)]/this['metrics'][_0x1a2b40(0x1c9)]*0x64:0x0,_0x309924=this['metrics'][_0x1a2b40(0x1fa)]>0x0?this['metrics'][_0x1a2b40(0x1b1)]/this['metrics'][_0x1a2b40(0x1fa)]:0x0;return{...this['metrics'],'cacheHitRate':Math['round'](_0xb00e52*0xa)/0xa,'averageAnalysisTime':Math['round'](_0x309924),'cacheSize':this['analysisCache']['size']};}['resetPerformanceMetrics'](){const _0x584865=a0_0x24ff7f;this[_0x584865(0x220)]={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}['clearCache'](){const _0x1d0f14=a0_0x24ff7f;this[_0x1d0f14(0x1ce)][_0x1d0f14(0x238)](),this['logger']?.['debug']('Analysis\x20cache\x20cleared');}[a0_0x24ff7f(0x213)](){const _0x400bcc=a0_0x24ff7f;return[_0x400bcc(0x1ba),'analyze-project','fix','format','security-scan',_0x400bcc(0x194),'validate-config','validate-config-directory'];}[a0_0x24ff7f(0x1f7)](){const _0x2891d7=a0_0x24ff7f;return{'type':'object','properties':{'actions':{'type':_0x2891d7(0x198),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x2891d7(0x23d),'enum':this[_0x2891d7(0x213)]()},'filePath':{'type':_0x2891d7(0x23d)},'directory':{'type':_0x2891d7(0x23d)},'pattern':{'type':'string'},'includeWarnings':{'type':_0x2891d7(0x249)},'maxErrors':{'type':_0x2891d7(0x204)}},'required':['type']}}},'required':[_0x2891d7(0x216)]};}}export default StaticAnalysisTool;