@loxia-labs/loxia-autopilot-one 1.0.8 → 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 (116) 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
@@ -1 +1 @@
1
- const a0_0xa558fa=a0_0x40de;function a0_0x56fb(){const _0x1ed893=['tufyx0zjtevFu0LArq','zMLUzezPBgvZuMvJDxjZAxzLBhK','lNnV','DMvUzg9Y','C3bSAxq','lNPPCa','tufyx0zjtevFuefusfm','tufyx0zjtevtx1bfuL9trufsq0G','D29YA2LUz0rPCMvJDg9YEq','ks4Gtwf4Aw11BsbPCYa','Bwf0y2HLCW','BMfTzq','C2vLAW','C3rHDa','lMPZEa','tufyx1rpvefmx01bvenirvm','lM1Wna','C2L6zq','CMvHze9UBhLeAxjLy3rVCMLLCW','CgfYC2u','lNLHBwW','mta0mZiYnw1jD3PAtW','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','igzPBguOCYKUcG','rgLYzwn0B3j5ig5VDcbMB3vUzcbMB3iGz2XVyIbWyxr0zxjU','zxjYB3i','ywrK','lMPZB24','rxjYB3iGCMvHzgLUzYbKAxjLy3rVCNK','tuiSig1HEca','lM1WmW','BM90rM91BMq','mJm5oteYmdfWExHlCu8','yMfZzw5HBwu','zgLZDa','CMvXDwLYzxnqCM9Qzwn0','z2v0rgvZy3jPChrPB24','lNnO','DhjPBq','yNvPBgq','nJCXnta0ENHvDg5l','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','BwvZC2fNzq','AxneAxjLy3rVCNK','AxnqyxrOqwnJzxnZAwjSzq','zM9YBwf0uMvZDwX0CW','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','zxHLyW','lMPWzwC','y29Kzq','Aw5MBW','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG','mMHpB3zxza','kIOV','tufyx0rjuKvdve9swv9ervbusa','tuiP','vg9Vig1HBNKGzMLSzsbWyxrOCYaOBwf4ia','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','ndbzugLiCha','D2fYBG','mtvxv21rDve','mti0otKWmKnhrg54Da','AgfZ','CMvSyxrPDMu','qxqGBgvHC3qGB25LihnLyxjJAcb0zxjTigLZihjLCxvPCMvK','DgLTzw91Da','Bg9Nz2vY','lMPZ','lMXVzW','lMD6','AxnbCNjHEq','zMLSzvbHDgHZ','qxqGBgvHC3qGB25LigzPBguGCgf0AcbPCYbYzxf1AxjLza','C2vHCMnOvgvYBxm','mtuWqwvKtevt','zMLSzvbHDgG','lMH0BwW','lMHWCa','C2vHCMnOrMLSzxm','lNn2zW','tufyx1nfqvjdsf9urvjnuW','B3v0','icaTia','AxngAwXL','lNr4Da','lMjTCa','lMv4zq','DgvYBq','zxH0BMfTzq','ig1HDgnOzxmGDg90ywWkcLjfu1vmvcbgt1jnqvq6cLrOzsb0B29SihjLDhvYBNm6cI0GtgLZDcbVzIbMAwXLCYb0Agf0ihDLCMuGBM90igzVDw5KcI0GtgLZDcbVzIbMAwXLCYb0Agf0igHHzcbLCNjVCNmGzhvYAw5NihnLyxjJAaOTiezVCIbLywnOihnLyxjJAcb0zxjToGOGic0GrMLSzsbWyxrOihDOzxjLigzVDw5KcIaGlsbmAw5Lig51BwjLCGOGic0GtgLUzsbJB250zw50icH0CMLTBwvKkqOktvvmveKTreLsrunut1jzifnvufbpuLq6cLDOzw4Gyw4GywDLBNqGAgfZig11BhrPCgXLigrPCMvJDg9YAwvZignVBMzPz3vYzwqSihrOzsbtzwvRvg9VBcbJyw4GC2vHCMnOigfJCM9ZCYbHBgWGB2yGDgHLBtOklsbszwXHDgL2zsbWyxrOCYbHCMuGCMvZB2X2zwqGzNjVBsb0AguGD29YA2LUzYbKAxjLy3rVCNKklsbbyNnVBhv0zsbWyxrOCYbJyw4GCMvMzxjLBMnLigfUEsbHy2nLC3nPyMXLigrPCMvJDg9YEqOTief1Dg9TyxrPyYb2ywXPzgf0Aw9UigvUC3vYzxmGCgf0AhmGyxjLihDPDgHPBIbHBgXVD2vKigrPCMvJDg9YAwvZcGPfEgfTCgXLihDPDgGGBxvSDgLWBguGzgLYzwn0B3jPzxm6cKLMigfNzw50igHHCYbHy2nLC3mGDg86cIaGlsaVAg9Tzs91C2vYl3bYB2PLy3qXicH3B3jRAw5NigrPCMvJDg9YEsKkicaTic9OB21Ll3vZzxiVChjVAMvJDdiGkhjLywqTB25SEsKkicaTic9OB21Ll3vZzxiVC2HHCMvKicHYzwfKlw9UBhKPcGPzB3uGy2fUihnLyxjJAdOkicbZCMmVkIOVkI5QCYaGicaGicaGicaGicaGicaGicaGicaGicaGiokgKIbtzwfYy2HLCYbPBIaVAg9Tzs91C2vYl3bYB2PLy3qXl3nYyY8QkI8QlMPZcIaGl2HVBwuVDxnLCI9WCM9Qzwn0mI9JB25MAwCUANnVBIaGicaGicdIHPiGu2vHCMnOzxmGAw4GChjVAMvJDdiGkgfIC29SDxrLihbHDgGPcIaGl2HVBwuVDxnLCI9ZAgfYzwqVzg9JCY8QlM1KicaGicaGicaGicdIHPiGu2vHCMnOzxmGAw4GC2HHCMvKigrPCMvJDg9YEqOkteLnsvrbveLptLm6cI0Gtwf4Aw11Bsa','lJD6','BwfW','ndbsthvYtgC','C2vLA0nVBMzPzW','qMfZzsbKAxjLy3rVCNKGBM90igzVDw5KigzVCIbNBg9IihbHDhrLCM4','twf4Aw11Bsb0B3rHBcbTyxrJAgvZihjLywnOzwq','C2HVDwXKu2TPCezPBgu','lM1VDG','Bwf0y2HLC1bHDhrLCM4','zMLSDgvY','rMLSzsb0B28GBgfYz2uGka','rKLmrvmGtK9uiezpvu5eoGO','lMnHy2HL','zM91BMq','AM9PBG','lMnWCa','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','lNnXBgL0zq','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','lNDTDG','ihrVDgfSig1HDgnOzxmGAw4G','mJuZmZq2mefztxDVsG','ChvZAa','lMPHDMe','rxHLy3v0Aw5NihnLzwSGDg9VBa','zxjYB3jgAwXLCW','twf4Aw11BsbKAxjLy3rVCNKGzgvWDgGGCMvHy2HLza','lMXLC3m','lI4U','lM51Ehq','CMvZB2X2zuzPBgvqyxrOCW','icHPCYbHigrPCMvJDg9YEsWGBM90igeGzMLSzsK','DgvZDa','lNjI','lMDPDa','oIbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','y3DK','4PQG77IpicbnyxHPBxvTig1HDgnOzxmGBgLTAxqGCMvHy2HLzcaO','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','C3rYAw5N','C3rHCNrZv2L0Aa','oty1mJn1y0zTAfO','tuiGCgvYigzPBguklsbszxr1CM5ZihvWihrVia','Dg9mB3DLCKnHC2u','BgvUz3rO','twf4Aw11BsbTyxrJAgvZihbLCIbMAwXLihjLywnOzwq','mJC5ota2mfPAr1b0Da','CMvZB2X2zq','mtjjA1v5sLa','zxHLy3v0zq'];a0_0x56fb=function(){return _0x1ed893;};return a0_0x56fb();}(function(_0x2f10d7,_0x37f601){const _0x378984=a0_0x40de,_0x5ee7d0=_0x2f10d7();while(!![]){try{const _0x3b8240=parseInt(_0x378984(0x213))/0x1*(parseInt(_0x378984(0x1a6))/0x2)+-parseInt(_0x378984(0x1ae))/0x3*(-parseInt(_0x378984(0x19a))/0x4)+parseInt(_0x378984(0x1e1))/0x5+parseInt(_0x378984(0x1bc))/0x6*(-parseInt(_0x378984(0x1f5))/0x7)+parseInt(_0x378984(0x1ce))/0x8*(-parseInt(_0x378984(0x1af))/0x9)+parseInt(_0x378984(0x1ac))/0xa*(parseInt(_0x378984(0x1fa))/0xb)+-parseInt(_0x378984(0x1fc))/0xc*(parseInt(_0x378984(0x21e))/0xd);if(_0x3b8240===_0x37f601)break;else _0x5ee7d0['push'](_0x5ee7d0['shift']());}catch(_0x405a0a){_0x5ee7d0['push'](_0x5ee7d0['shift']());}}}(a0_0x56fb,0x7f931));import{BaseTool}from'./baseTool.js';import a0_0x587967 from'../utilities/tagParser.js';import{promises as a0_0x4d48bd}from'fs';import a0_0x2dc534 from'path';function a0_0x40de(_0x436335,_0x355a69){_0x436335=_0x436335-0x194;const _0x56fba2=a0_0x56fb();let _0x40dec0=_0x56fba2[_0x436335];if(a0_0x40de['vgVhMd']===undefined){var _0xb0bbb6=function(_0x35eae5){const _0x13378c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x587967='',_0x4d48bd='';for(let _0x2dc534=0x0,_0x39dabc,_0xa485ff,_0x31f9c3=0x0;_0xa485ff=_0x35eae5['charAt'](_0x31f9c3++);~_0xa485ff&&(_0x39dabc=_0x2dc534%0x4?_0x39dabc*0x40+_0xa485ff:_0xa485ff,_0x2dc534++%0x4)?_0x587967+=String['fromCharCode'](0xff&_0x39dabc>>(-0x2*_0x2dc534&0x6)):0x0){_0xa485ff=_0x13378c['indexOf'](_0xa485ff);}for(let _0x2952b8=0x0,_0x29f240=_0x587967['length'];_0x2952b8<_0x29f240;_0x2952b8++){_0x4d48bd+='%'+('00'+_0x587967['charCodeAt'](_0x2952b8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4d48bd);};a0_0x40de['GjZpJM']=_0xb0bbb6,a0_0x40de['mRAtJy']={},a0_0x40de['vgVhMd']=!![];}const _0x271b89=_0x56fba2[0x0],_0x1e53c5=_0x436335+_0x271b89,_0x55c1a5=a0_0x40de['mRAtJy'][_0x1e53c5];return!_0x55c1a5?(_0x40dec0=a0_0x40de['GjZpJM'](_0x40dec0),a0_0x40de['mRAtJy'][_0x1e53c5]=_0x40dec0):_0x40dec0=_0x55c1a5,_0x40dec0;}const SEEK_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_FILES_PER_SEARCH':0x3e8,'MAX_MATCHES_PER_FILE':0x64,'MAX_TOTAL_MATCHES':0x1f4,'MAX_SEARCH_TERMS':0x32,'MAX_FILE_PATHS':0x64,'MAX_DIRECTORY_DEPTH':0x14,'MAX_LINE_CONTENT_LENGTH':0xc8,'CONTEXT_LINES_BEFORE':0x0,'CONTEXT_LINES_AFTER':0x0},FILE_ENCODING='utf-8',BINARY_EXTENSIONS=new Set(['.png','.jpg',a0_0xa558fa(0x1a2),'.gif',a0_0xa558fa(0x1c7),'.ico',a0_0xa558fa(0x1c1),'.pdf',a0_0xa558fa(0x203),'.tar',a0_0xa558fa(0x1b7),'.rar',a0_0xa558fa(0x1cc),a0_0xa558fa(0x1c8),'.dll',a0_0xa558fa(0x200),'.dylib',a0_0xa558fa(0x21c),a0_0xa558fa(0x20e),'.avi',a0_0xa558fa(0x1d3),a0_0xa558fa(0x1df),'.woff','.woff2','.ttf','.eot','.bin','.dat','.db',a0_0xa558fa(0x1dd)]);class SeekTool extends BaseTool{constructor(_0x39dabc={},_0xa485ff=null){const _0x498869=a0_0xa558fa;super(_0x39dabc,_0xa485ff),this[_0x498869(0x195)]=!![],this['isAsync']=!![],this[_0x498869(0x1b3)]=_0x39dabc[_0x498869(0x1b3)]||0x1d4c0,this[_0x498869(0x1cf)]={...SEEK_CONFIG,..._0x39dabc[_0x498869(0x1cf)]};}[a0_0xa558fa(0x196)](){const _0x21111c=a0_0xa558fa;return _0x21111c(0x1dc)+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+_0x21111c(0x1f6)+SEEK_CONFIG['MAX_TOTAL_MATCHES']+_0x21111c(0x1cb)+SEEK_CONFIG[_0x21111c(0x205)]+'\x20files\x20per\x20search\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0x21111c(0x1c2)]+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Case-sensitive\x20search\x20only\x0a-\x20Exact\x20string\x20matching\x20(not\x20regex)\x0a-\x20Paths\x20outside\x20accessible\x20directories\x20will\x20be\x20reported\x20as\x20\x22not\x20found\x22\x0a\x20\x20\x20\x20';}['parseParameters'](_0x31f9c3){const _0x1b948d=a0_0xa558fa;try{if(_0x31f9c3['trim']()[_0x1b948d(0x1f4)]('{')){const _0x1214ad=JSON[_0x1b948d(0x211)](_0x31f9c3);return{'filePaths':_0x1214ad['filePaths']||[],'searchTerms':_0x1214ad[_0x1b948d(0x1bb)]||[]};}const _0x2952b8={'filePaths':[],'searchTerms':[]},_0x29f240=/<in-files>([\s\S]*?)<\/in-files>/i,_0x4c627a=_0x29f240[_0x1b948d(0x1a1)](_0x31f9c3);if(_0x4c627a){const _0x27619d=_0x4c627a[0x1];_0x2952b8['filePaths']=_0x27619d['split']('\x0a')[_0x1b948d(0x1cd)](_0x15951b=>_0x15951b[_0x1b948d(0x198)]())[_0x1b948d(0x1d5)](_0x4947ce=>_0x4947ce[_0x1b948d(0x1f8)]>0x0);}const _0x66bbe9=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x4ef9d8=_0x66bbe9['exec'](_0x31f9c3);if(_0x4ef9d8){const _0x1ce969=_0x4ef9d8[0x1],_0x4b89f9=/<term>(.*?)<\/term>/gi;let _0x40eb52;while((_0x40eb52=_0x4b89f9['exec'](_0x1ce969))!==null){const _0x585486=_0x40eb52[0x1]['trim']();_0x585486['length']>0x0&&_0x2952b8['searchTerms'][_0x1b948d(0x1e2)](_0x585486);}}return _0x2952b8;}catch(_0x20fc23){return this[_0x1b948d(0x1b4)]?.[_0x1b948d(0x217)]('Failed\x20to\x20parse\x20seek\x20parameters',{'error':_0x20fc23[_0x1b948d(0x19c)]}),{'filePaths':[],'searchTerms':[],'parseError':_0x20fc23[_0x1b948d(0x19c)]};}}[a0_0xa558fa(0x1f2)](){const _0x3c1992=a0_0xa558fa;return[_0x3c1992(0x1b9),'searchTerms'];}[a0_0xa558fa(0x1a0)](_0x2b922f){const _0x216faf=a0_0xa558fa,_0x5e01fa=[];if(!_0x2b922f['filePaths']||!Array['isArray'](_0x2b922f[_0x216faf(0x1b9)])||_0x2b922f[_0x216faf(0x1b9)]['length']===0x0)_0x5e01fa[_0x216faf(0x1e2)](_0x216faf(0x1ba));else _0x2b922f['filePaths']['length']>this['seekConfig'][_0x216faf(0x204)]&&_0x5e01fa[_0x216faf(0x1e2)](_0x216faf(0x1aa)+this['seekConfig'][_0x216faf(0x204)]+')');if(!_0x2b922f[_0x216faf(0x1bb)]||!Array['isArray'](_0x2b922f[_0x216faf(0x1bb)])||_0x2b922f['searchTerms'][_0x216faf(0x1f8)]===0x0)_0x5e01fa['push'](_0x216faf(0x1b2));else _0x2b922f['searchTerms']['length']>this['seekConfig'][_0x216faf(0x1c2)]&&_0x5e01fa['push']('Too\x20many\x20search\x20terms\x20(max\x20'+this['seekConfig']['MAX_SEARCH_TERMS']+')');if(_0x2b922f[_0x216faf(0x1bb)]&&Array[_0x216faf(0x1b8)](_0x2b922f[_0x216faf(0x1bb)]))for(const [_0x41eace,_0x201299]of _0x2b922f['searchTerms']['entries']()){(typeof _0x201299!=='string'||_0x201299[_0x216faf(0x198)]()['length']===0x0)&&_0x5e01fa[_0x216faf(0x1e2)]('Search\x20term\x20'+(_0x41eace+0x1)+_0x216faf(0x1ef));}if(_0x2b922f['filePaths']&&Array['isArray'](_0x2b922f['filePaths']))for(const [_0x965801,_0x464fb0]of _0x2b922f[_0x216faf(0x1b9)]['entries']()){(typeof _0x464fb0!==_0x216faf(0x1f3)||_0x464fb0[_0x216faf(0x198)]()[_0x216faf(0x1f8)]===0x0)&&_0x5e01fa['push']('File\x20path\x20'+(_0x965801+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string'),_0x464fb0['includes']('..')&&_0x5e01fa['push']('File\x20path\x20'+(_0x965801+0x1)+':\x20path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');}return{'valid':_0x5e01fa[_0x216faf(0x1f8)]===0x0,'errors':_0x5e01fa};}async[a0_0xa558fa(0x1fd)](_0x4d42c2,_0x472198){const _0x53337c=a0_0xa558fa,{filePaths:_0x1ad415,searchTerms:_0x5a8719}=_0x4d42c2,{projectDir:_0x39b07f,agentId:_0x48052b,directoryAccess:_0x4947b6}=_0x472198;let _0xaf8b4d=_0x39b07f||process[_0x53337c(0x1f0)](),_0x4adccc=[_0xaf8b4d];_0x4947b6&&_0x4947b6[_0x53337c(0x206)]&&(_0xaf8b4d=_0x4947b6[_0x53337c(0x206)],_0x4adccc=this[_0x53337c(0x19b)](_0x4947b6),this[_0x53337c(0x1b4)]?.['info']('Using\x20agent\x20configured\x20directory\x20access',{'workingDirectory':_0x4947b6[_0x53337c(0x206)],'totalAccessibleDirs':_0x4adccc['length'],'readOnlyDirs':_0x4947b6[_0x53337c(0x210)]?.[_0x53337c(0x1f8)]||0x0,'writeEnabledDirs':_0x4947b6[_0x53337c(0x1ab)]?.[_0x53337c(0x1f8)]||0x0,'agentId':_0x48052b}));if(!_0xaf8b4d)throw new Error('Project\x20directory\x20is\x20required\x20for\x20seek\x20tool');this['logger']?.['info'](_0x53337c(0x1e4),{'filePathCount':_0x1ad415['length'],'searchTermCount':_0x5a8719['length'],'workingDirectory':_0xaf8b4d,'accessibleDirectories':_0x4adccc['length'],'agentId':_0x48052b});try{const _0x5cc60a=await this[_0x53337c(0x1ea)](_0x1ad415,_0xaf8b4d,_0x4947b6?_0x4adccc:null),_0x5afb62=_0x5cc60a['found'],_0x310755=_0x5cc60a[_0x53337c(0x21d)];if(_0x5afb62['length']>this[_0x53337c(0x1cf)][_0x53337c(0x205)])return{'success':![],'error':'Too\x20many\x20files\x20to\x20search\x20('+_0x5afb62[_0x53337c(0x1f8)]+_0x53337c(0x207)+this['seekConfig']['MAX_FILES_PER_SEARCH']+'.\x20Use\x20more\x20specific\x20file\x20patterns.','filesResolved':_0x5afb62[_0x53337c(0x1f8)],'filesNotFound':_0x310755[_0x53337c(0x1f8)]};const _0x225d08=await this['searchFiles'](_0x5afb62,_0x5a8719,_0xaf8b4d),_0x540dd7=this[_0x53337c(0x19f)](_0x225d08[_0x53337c(0x208)],_0x225d08['errorFiles'],_0x310755,_0x5afb62[_0x53337c(0x1f8)]);return{'success':!![],'filesSearched':_0x5afb62['length'],'filesNotFound':_0x310755['length'],'filesWithErrors':_0x225d08[_0x53337c(0x1e5)][_0x53337c(0x1f8)],'totalMatches':_0x225d08[_0x53337c(0x208)]['length'],'matchesByTerm':_0x225d08['matchesByTerm'],'formattedResults':_0x540dd7,'toolUsed':_0x53337c(0x20a)};}catch(_0xadb431){this['logger']?.['error']('Seek\x20tool\x20execution\x20failed',{'error':_0xadb431[_0x53337c(0x19c)]});throw _0xadb431;}}['getAllAccessibleDirectories'](_0x3ceb0f){const _0x16537b=a0_0xa558fa,_0x5ac8c3=new Set();_0x3ceb0f[_0x16537b(0x206)]&&_0x5ac8c3[_0x16537b(0x218)](_0x3ceb0f['workingDirectory']);if(_0x3ceb0f[_0x16537b(0x210)]&&Array['isArray'](_0x3ceb0f[_0x16537b(0x210)]))for(const _0x1cb90e of _0x3ceb0f[_0x16537b(0x210)]){_0x5ac8c3[_0x16537b(0x218)](_0x1cb90e);}if(_0x3ceb0f[_0x16537b(0x1ab)]&&Array['isArray'](_0x3ceb0f['writeEnabledDirectories']))for(const _0x26580d of _0x3ceb0f[_0x16537b(0x1ab)]){_0x5ac8c3['add'](_0x26580d);}return Array['from'](_0x5ac8c3);}[a0_0xa558fa(0x19e)](_0x151ea2,_0x254efd){const _0x4d2c44=a0_0xa558fa;for(const _0x45ff76 of _0x254efd){const _0x358860=a0_0x2dc534[_0x4d2c44(0x1b1)](_0x45ff76,_0x151ea2),_0x63fb58=!_0x358860[_0x4d2c44(0x1f4)]('..')&&!a0_0x2dc534['isAbsolute'](_0x358860);if(_0x63fb58)return!![];}return![];}async[a0_0xa558fa(0x1ea)](_0x3e68a7,_0x27d90c,_0x19d476=null){const _0x11f034=a0_0xa558fa,_0x4f1bfa={'found':[],'notFound':[]};for(const _0x3f7ab7 of _0x3e68a7){const _0x1ecb88=_0x3f7ab7[_0x11f034(0x198)]();if(_0x1ecb88['includes']('*')){const _0x28d56b=await this['expandGlobPattern'](_0x1ecb88,_0x27d90c);_0x28d56b[_0x11f034(0x1d9)]['length']>0x0?_0x4f1bfa['found']['push'](..._0x28d56b[_0x11f034(0x1d9)]):_0x4f1bfa[_0x11f034(0x21d)]['push'](_0x1ecb88+'\x20(no\x20matching\x20files)');}else{const _0x5ddb47=a0_0x2dc534['isAbsolute'](_0x1ecb88)?_0x1ecb88:a0_0x2dc534[_0x11f034(0x1fb)](_0x27d90c,_0x1ecb88);if(_0x19d476&&_0x19d476['length']>0x0){if(!this['isPathAccessible'](_0x5ddb47,_0x19d476)){_0x4f1bfa['notFound'][_0x11f034(0x1e2)](_0x1ecb88+'\x20(not\x20in\x20accessible\x20directories)');continue;}}try{const _0x4b7980=await a0_0x4d48bd[_0x11f034(0x20b)](_0x5ddb47);if(_0x4b7980[_0x11f034(0x1c5)]())_0x4f1bfa[_0x11f034(0x1d9)]['push'](_0x5ddb47);else _0x4b7980['isDirectory']()?_0x4f1bfa['notFound'][_0x11f034(0x1e2)](_0x1ecb88+_0x11f034(0x1eb)):_0x4f1bfa['notFound'][_0x11f034(0x1e2)](_0x1ecb88+'\x20(not\x20a\x20regular\x20file)');}catch(_0x289602){_0x4f1bfa['notFound']['push'](_0x1ecb88+'\x20('+(_0x289602[_0x11f034(0x1a3)]||_0x289602['message'])+')');}}}return _0x4f1bfa;}async['expandGlobPattern'](_0x16eacd,_0x4ff193){const _0xb7f53c=a0_0xa558fa,_0x3e65ef={'found':[]};if(_0x16eacd['includes'](_0xb7f53c(0x1a7))){const [_0x22896b,_0xef53d9]=_0x16eacd['split']('**/'),_0x592af3=a0_0x2dc534['resolve'](_0x4ff193,_0x22896b);try{const _0x2ffa55=await a0_0x4d48bd[_0xb7f53c(0x20b)](_0x592af3);_0x2ffa55['isDirectory']()&&await this[_0xb7f53c(0x1ff)](_0x592af3,_0xef53d9,_0x3e65ef[_0xb7f53c(0x1d9)],0x0,this[_0xb7f53c(0x1cf)][_0xb7f53c(0x1a8)]);}catch(_0x22ba46){this['logger']?.[_0xb7f53c(0x1ad)](_0xb7f53c(0x1d0),{'basePath':_0x592af3,'error':_0x22ba46[_0xb7f53c(0x19c)]});}}else{if(_0x16eacd['includes']('*')){const _0x5758aa=a0_0x2dc534['dirname'](a0_0x2dc534['resolve'](_0x4ff193,_0x16eacd)),_0x392522=a0_0x2dc534[_0xb7f53c(0x21f)](_0x16eacd);try{const _0x3ab446=await a0_0x4d48bd['stat'](_0x5758aa);if(_0x3ab446['isDirectory']()){const _0x115139=await a0_0x4d48bd['readdir'](_0x5758aa);for(const _0x2a4ef2 of _0x115139){const _0x5b3c63=a0_0x2dc534[_0xb7f53c(0x1da)](_0x5758aa,_0x2a4ef2);try{const _0x42eb3e=await a0_0x4d48bd['stat'](_0x5b3c63);_0x42eb3e[_0xb7f53c(0x1c5)]()&&this['matchesPattern'](_0x2a4ef2,_0x392522)&&_0x3e65ef[_0xb7f53c(0x1d9)][_0xb7f53c(0x1e2)](_0x5b3c63);}catch(_0x274b7c){continue;}}}}catch(_0x479bc7){this[_0xb7f53c(0x1b4)]?.[_0xb7f53c(0x1ad)](_0xb7f53c(0x216),{'dirPath':_0x5758aa,'error':_0x479bc7[_0xb7f53c(0x19c)]});}}}return _0x3e65ef;}async[a0_0xa558fa(0x1ff)](_0x2f858c,_0x4acdb8,_0x2d264b,_0x32d6b4,_0x1e3c99){const _0x28b504=a0_0xa558fa;if(_0x32d6b4>=_0x1e3c99){this['logger']?.[_0x28b504(0x1ad)](_0x28b504(0x1e6),{'dir':_0x2f858c,'currentDepth':_0x32d6b4});return;}try{const _0x4724fa=await a0_0x4d48bd['readdir'](_0x2f858c,{'withFileTypes':!![]});for(const _0x3ae0b1 of _0x4724fa){if(_0x3ae0b1[_0x28b504(0x209)][_0x28b504(0x1f4)]('.'))continue;const _0x3f7c27=a0_0x2dc534['join'](_0x2f858c,_0x3ae0b1[_0x28b504(0x209)]);try{if(_0x3ae0b1[_0x28b504(0x19d)]()){if(this['shouldSkipDirectory'](_0x3ae0b1['name']))continue;await this['findFilesRecursively'](_0x3f7c27,_0x4acdb8,_0x2d264b,_0x32d6b4+0x1,_0x1e3c99);}else{if(_0x3ae0b1[_0x28b504(0x1c5)]()){if(this[_0x28b504(0x1d4)](_0x3ae0b1['name'],_0x4acdb8)){_0x2d264b['push'](_0x3f7c27);if(_0x2d264b[_0x28b504(0x1f8)]>=this[_0x28b504(0x1cf)]['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x565c41){continue;}}}catch(_0x2a0e0a){this['logger']?.['warn'](_0x28b504(0x21a),{'dir':_0x2f858c,'error':_0x2a0e0a['message']});}}[a0_0xa558fa(0x1d4)](_0x2f8484,_0x144812){const _0x576cee=a0_0xa558fa,_0x2a1fb8=_0x144812[_0x576cee(0x202)]('*')['map'](_0x32fc78=>this['escapeRegExp'](_0x32fc78))[_0x576cee(0x1da)]('.*'),_0x497335=new RegExp('^'+_0x2a1fb8+'$','i');return _0x497335[_0x576cee(0x1ec)](_0x2f8484);}['escapeRegExp'](_0x3bb487){return _0x3bb487['replace'](/[.*+?^${}()|[\]\\]/g,'\x5c$&');}['shouldSkipDirectory'](_0x32ba35){const _0x57f73f=a0_0xa558fa,_0xcf8e33=new Set(['node_modules',_0x57f73f(0x1ee),_0x57f73f(0x194),_0x57f73f(0x199),'coverage','.next',_0x57f73f(0x1e9),_0x57f73f(0x1c3),'target',_0x57f73f(0x201),'__pycache__',_0x57f73f(0x1d8),'tmp','temp']);return _0xcf8e33[_0x57f73f(0x1b0)](_0x32ba35[_0x57f73f(0x1f7)]());}[a0_0xa558fa(0x1d2)](_0x42d2e6){const _0x5b1b14=a0_0xa558fa,_0x522457=a0_0x2dc534[_0x5b1b14(0x1ca)](_0x42d2e6)[_0x5b1b14(0x1f7)]();return BINARY_EXTENSIONS[_0x5b1b14(0x1b0)](_0x522457);}async[a0_0xa558fa(0x1c0)](_0x3d34cc,_0x4951ce,_0xc42fc0){const _0x3b18cf=a0_0xa558fa,_0x673904=[],_0x342b49=[];let _0x533ad5=0x0;for(const _0x2b2637 of _0x3d34cc){if(this[_0x3b18cf(0x1d2)](_0x2b2637))continue;try{const _0x106eab=await a0_0x4d48bd['stat'](_0x2b2637);if(_0x106eab[_0x3b18cf(0x20f)]>this['seekConfig'][_0x3b18cf(0x1fe)]){_0x342b49[_0x3b18cf(0x1e2)]({'filePath':a0_0x2dc534[_0x3b18cf(0x1b1)](_0xc42fc0,_0x2b2637),'error':_0x3b18cf(0x1d6)+Math['round'](_0x106eab['size']/(0x400*0x400))+_0x3b18cf(0x21b)+Math['round'](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+_0x3b18cf(0x1a9)});continue;}const _0x399f5f=await this['searchInFile'](_0x2b2637,_0x4951ce,_0xc42fc0);_0x673904['push'](..._0x399f5f),_0x533ad5+=_0x399f5f[_0x3b18cf(0x1f8)];if(_0x533ad5>=this[_0x3b18cf(0x1cf)]['MAX_TOTAL_MATCHES']){this['logger']?.[_0x3b18cf(0x1ad)](_0x3b18cf(0x1d1),{'totalMatches':_0x533ad5});break;}}catch(_0x6ccb16){_0x342b49[_0x3b18cf(0x1e2)]({'filePath':a0_0x2dc534[_0x3b18cf(0x1b1)](_0xc42fc0,_0x2b2637),'error':_0x6ccb16[_0x3b18cf(0x19c)]});}}const _0x580b91={};for(const _0x2c89c9 of _0x673904){!_0x580b91[_0x2c89c9['term']]&&(_0x580b91[_0x2c89c9[_0x3b18cf(0x1c9)]]=[]),_0x580b91[_0x2c89c9['term']]['push']({'filePath':_0x2c89c9[_0x3b18cf(0x1bd)],'lineNumber':_0x2c89c9['lineNumber'],'lineContent':_0x2c89c9['lineContent']});}return{'matches':_0x673904,'matchesByTerm':_0x580b91,'errorFiles':_0x342b49};}async['searchInFile'](_0x39634d,_0x4812bf,_0x5d4b89){const _0x189e41=a0_0xa558fa,_0xaa4b56=[];let _0x54d350=0x0;try{const _0x5c012d=await a0_0x4d48bd['readFile'](_0x39634d,FILE_ENCODING),_0x40c740=_0x5c012d[_0x189e41(0x202)]('\x0a'),_0x5a582b=a0_0x2dc534[_0x189e41(0x1b1)](_0x5d4b89,_0x39634d);for(let _0x2f06f5=0x0;_0x2f06f5<_0x40c740['length'];_0x2f06f5++){const _0x386f66=_0x40c740[_0x2f06f5],_0x3819a9=_0x2f06f5+0x1;for(const _0x2c2162 of _0x4812bf){if(_0x386f66['includes'](_0x2c2162)){let _0x3c6929=_0x386f66;if(_0x3c6929['length']>this[_0x189e41(0x1cf)]['MAX_LINE_CONTENT_LENGTH']){const _0x4865bd=_0x3c6929['indexOf'](_0x2c2162),_0x514352=Math['max'](0x0,_0x4865bd-0x32),_0x24062b=Math['min'](_0x3c6929[_0x189e41(0x1f8)],_0x4865bd+_0x2c2162[_0x189e41(0x1f8)]+0x32);_0x3c6929=(_0x514352>0x0?_0x189e41(0x1e8):'')+_0x3c6929['substring'](_0x514352,_0x24062b)+(_0x24062b<_0x3c6929[_0x189e41(0x1f8)]?_0x189e41(0x1e8):'');}_0xaa4b56[_0x189e41(0x1e2)]({'term':_0x2c2162,'filePath':_0x5a582b,'lineNumber':_0x3819a9,'lineContent':_0x3c6929['trim']()}),_0x54d350++;if(_0x54d350>=this['seekConfig']['MAX_MATCHES_PER_FILE'])return this['logger']?.[_0x189e41(0x1ad)](_0x189e41(0x1f9),{'filePath':_0x5a582b}),_0xaa4b56;}}}}catch(_0x5e85c4){throw new Error('Failed\x20to\x20read\x20file:\x20'+_0x5e85c4['message']);}return _0xaa4b56;}[a0_0xa558fa(0x19f)](_0x42e38c,_0x250233,_0x37063a,_0x979019){const _0x5b1089=a0_0xa558fa;let _0x329237='';if(_0x37063a['length']>0x0){_0x329237+=_0x5b1089(0x1d7);for(const _0x1f580f of _0x37063a){_0x329237+='\x20\x20-\x20'+_0x1f580f+'\x0a';}_0x329237+='\x0a';}if(_0x250233['length']>0x0){_0x329237+='FILES\x20WITH\x20ERRORS:\x0a';for(const _0xf84c31 of _0x250233){_0x329237+=_0x5b1089(0x1c4)+_0xf84c31['filePath']+':\x20'+_0xf84c31[_0x5b1089(0x217)]+'\x0a';}_0x329237+='\x0a';}if(_0x42e38c[_0x5b1089(0x1f8)]===0x0)_0x329237+='No\x20matches\x20found\x20for\x20the\x20specified\x20search\x20terms\x20in\x20'+_0x979019+_0x5b1089(0x215);else{const _0xe8aead={};for(const _0x1f5b4d of _0x42e38c){!_0xe8aead[_0x1f5b4d[_0x5b1089(0x1c9)]]&&(_0xe8aead[_0x1f5b4d['term']]=[]),_0xe8aead[_0x1f5b4d['term']]['push'](_0x1f5b4d);}_0x329237+='SEARCH\x20RESULTS\x20('+_0x42e38c[_0x5b1089(0x1f8)]+_0x5b1089(0x1e0)+_0x979019+'\x20file(s)):\x0a\x0a';for(const [_0x195f58,_0x178bc0]of Object['entries'](_0xe8aead)){_0x329237+='Search\x20term:\x20\x22'+_0x195f58+'\x22\x20('+_0x178bc0[_0x5b1089(0x1f8)]+'\x20matches)\x0a';for(const _0x57362a of _0x178bc0){_0x329237+='\x20\x20'+_0x57362a[_0x5b1089(0x1bd)]+':'+_0x57362a['lineNumber']+'\x20-\x20'+_0x57362a['lineContent']+'\x0a';}_0x329237+='\x0a';}_0x42e38c['length']>=this[_0x5b1089(0x1cf)][_0x5b1089(0x20d)]&&(_0x329237+=_0x5b1089(0x1f1)+this['seekConfig']['MAX_TOTAL_MATCHES']+_0x5b1089(0x1a5));}return _0x329237[_0x5b1089(0x198)]();}[a0_0xa558fa(0x214)](){const _0xdce6cb=a0_0xa558fa;return[_0xdce6cb(0x1b5),_0xdce6cb(0x20c),'.ts','.tsx',_0xdce6cb(0x219),'.xml',_0xdce6cb(0x1be),'.css','.scss','.sass',_0xdce6cb(0x1e7),'.md',_0xdce6cb(0x1c6),_0xdce6cb(0x1b6),'.py',_0xdce6cb(0x1ed),_0xdce6cb(0x1e3),'.go','.rs','.c',_0xdce6cb(0x1db),'.h',_0xdce6cb(0x1bf),_0xdce6cb(0x197),'.bash','.zsh','.yml',_0xdce6cb(0x212),'.toml','.ini','.conf'];}async['cleanup'](_0x25c474){const _0x5610ea=a0_0xa558fa;this['logger']?.[_0x5610ea(0x1a4)](_0x5610ea(0x1de),{'operationId':_0x25c474});}}export default SeekTool;
1
+ const a0_0x230c82=a0_0x566d;function a0_0x566d(_0xef6fde,_0x34e2f9){_0xef6fde=_0xef6fde-0xa1;const _0x4c142f=a0_0x4c14();let _0x566db3=_0x4c142f[_0xef6fde];if(a0_0x566d['NbcSUb']===undefined){var _0x47cc09=function(_0x5002a1){const _0x664c2c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x22bc90='',_0x4ac40b='';for(let _0x3cd011=0x0,_0x5f38ea,_0x16e413,_0x11c652=0x0;_0x16e413=_0x5002a1['charAt'](_0x11c652++);~_0x16e413&&(_0x5f38ea=_0x3cd011%0x4?_0x5f38ea*0x40+_0x16e413:_0x16e413,_0x3cd011++%0x4)?_0x22bc90+=String['fromCharCode'](0xff&_0x5f38ea>>(-0x2*_0x3cd011&0x6)):0x0){_0x16e413=_0x664c2c['indexOf'](_0x16e413);}for(let _0x4b2cf8=0x0,_0xae65b7=_0x22bc90['length'];_0x4b2cf8<_0xae65b7;_0x4b2cf8++){_0x4ac40b+='%'+('00'+_0x22bc90['charCodeAt'](_0x4b2cf8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ac40b);};a0_0x566d['lsrDKF']=_0x47cc09,a0_0x566d['BvdDan']={},a0_0x566d['NbcSUb']=!![];}const _0x4e1fa9=_0x4c142f[0x0],_0x3a965d=_0xef6fde+_0x4e1fa9,_0x118ed0=a0_0x566d['BvdDan'][_0x3a965d];return!_0x118ed0?(_0x566db3=a0_0x566d['lsrDKF'](_0x566db3),a0_0x566d['BvdDan'][_0x3a965d]=_0x566db3):_0x566db3=_0x118ed0,_0x566db3;}(function(_0x78ffe4,_0x1f39ba){const _0x4202cb=a0_0x566d,_0x298e50=_0x78ffe4();while(!![]){try{const _0x3a2fda=-parseInt(_0x4202cb(0x11c))/0x1*(-parseInt(_0x4202cb(0xa5))/0x2)+-parseInt(_0x4202cb(0xde))/0x3+-parseInt(_0x4202cb(0x107))/0x4+-parseInt(_0x4202cb(0x121))/0x5*(-parseInt(_0x4202cb(0xf9))/0x6)+-parseInt(_0x4202cb(0xfb))/0x7*(parseInt(_0x4202cb(0xcf))/0x8)+parseInt(_0x4202cb(0xb2))/0x9+-parseInt(_0x4202cb(0x106))/0xa*(-parseInt(_0x4202cb(0xbe))/0xb);if(_0x3a2fda===_0x1f39ba)break;else _0x298e50['push'](_0x298e50['shift']());}catch(_0x2cb243){_0x298e50['push'](_0x298e50['shift']());}}}(a0_0x4c14,0xba601));function a0_0x4c14(){const _0x17c77a=['lNbKzG','mJe1v29cD3nR','zM9YBwf0uMvZDwX0CW','zxnJyxbLuMvNrxHW','C2vHCMnOrMLSzxm','y29Kzq','z2v0qwXSqwnJzxnZAwjSzurPCMvJDg9YAwvZ','lJD6','lMPHDMe','zw50CMLLCW','zxHWyw5Kr2XVyLbHDhrLCM4','ks4Gtwf4Aw11BsbPCYa','lIbvC2uGBw9YzsbZCgvJAwzPyYbMAwXLihbHDhrLCM5ZlG','BgvUz3rO','lMrI','lMH0BwW','ChvZAa','mJyWodzyuevvr3a','zxjYB3jgAwXLCW','vg9Vig1HBNKGzMLSzxmGDg8GC2vHCMnOicG','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','lNnV','lMrSBa','lNjI','icHUBYbTyxrJAgLUzYbMAwXLCYK','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','CMvZB2X2zq','lNnHC3m','tufyx0rjuKvdve9swv9ervbusa','lMnVBMy','mJmXode4nevet1vMvW','lMjHC2G','Bwf0y2HLC0j5vgvYBq','igzPBguOCYKUcG','lMPZ','lMvVDa','lMXLC3m','BwfW','lNr0zG','oIbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','CMvHzgrPCG','tufyx0zjtevFu0LArq','nJm2ndzHs2HzDei','C2vHCMnOsw5gAwXL','zxHLyW','lMrHDa','lMDV','Bg9Nz2vY','CMvHze9UBhLeAxjLy3rVCMLLCW','lMnZCW','C2L6zq','tuiSig1HEca','lNLHBwW','AM9PBG','iIaO','ihrVDgfSig1HDgnOzxmGAw4G','D29YA2LUz0rPCMvJDg9YEq','AxnbCNjHEq','zxH0BMfTzq','ohHks05bCW','rMLSzsbWyxrOia','C3bSAxq','zgLYBMfTzq','u2vLAYb0B29SignSzwfUDxaGy29TCgXLDgvK','zMLSzvbHDgHZ','lNn2zW','zM91BMq','lMPZEa','BwLU','lMjTCa','lNjHCG','tufyx1rpvefmx01bvenirvm','rKLmrvmGv0LuscbfuLjpuLm6cG','D2fYBG','mZK5mdC2ognuDurhva','yNvPBgq','zMLSDgvY','DgvYBq','AxneAxjLy3rVCNK','lMDPDa','lNPZAa','CMvXDwLYzxnqCM9Qzwn0','AgfZ','tufyx0zjtevFuefusfm','lNnO','ic0G','Aw5MBW','Dg9mB3DLCKnHC2u','BgLUzunVBNrLBNq','C2HVDwXKu2TPCezPBgu','rMfPBgvKihrVihjLywqGzMLSztOG','ywrK','C2vLA0nVBMzPzW','lMPWzwC','lM1VDG','BwvZC2fNzq','rMfPBgvKihrVihbHCNnLihnLzwSGCgfYyw1LDgvYCW','icaTia','rKLmrvmGtK9uiezpvu5eoGO','oIbWyxrOihrYyxzLCNnHBcaOlI4Pig5VDcbHBgXVD2vKigzVCIbZzwn1CML0Eq','C2HVDwXKu2TPCerPCMvJDg9YEq','mtu3mdyYqvjIs01H','twf4Aw11BsbTyxrJAgvZihbLCIbMAwXLihjLywnOzwq','mJa2oda3m0LMAhDQqq','AxnbyNnVBhv0zq','lM1Wna','rxjYB3iGCMvHzgLUzYbKAxjLy3rVCNK','CMvHzezPBgu','C2vHCMnOvgvYBxm','D3jPDgvfBMfIBgvKrgLYzwn0B3jPzxm','lMXVzW','BM90rM91BMq','C3rHCNrZv2L0Aa','tufyx01bvenirvnFuevsx0zjteu','mZuWyMfNyxLS','mJa1ntGWohzxCKPrrq','lNb5','lMPZB24','C3rYAw5N','AxngAwXL','tufyx0zjtevtx1bfuL9trufsq0G','u2vLAYb0B29Sigv4zwn1DgLVBIbMywLSzwq','Aw5JBhvKzxm','DgvZDa','zxjYB3i','C3rHDa','tufyx0XjtKvFq09ovevovf9mru5hveG','CMvSyxrPDMu','CMvWBgfJzq','u2vHCMnOihrLCM0G','DgLTzw91Da','Bwf0y2HLC1bHDhrLCM4','tM8GBwf0y2HLCYbMB3vUzcbMB3iGDgHLihnWzwnPzMLLzcbZzwfYy2GGDgvYBxmGAw4G','DhjPBq','zMLUzezPBgvZuMvJDxjZAxzLBhK','ks4Gu29TzsbTyxrJAgvZig1HEsbUB3qGyMuGC2HVD24UcG','mtaXB3HKr1HK','yMfZzw5HBwu','vxnPBMCGywDLBNqGy29UzMLNDxjLzcbKAxjLy3rVCNKGywnJzxnZ','BMfTzq'];a0_0x4c14=function(){return _0x17c77a;};return a0_0x4c14();}import{BaseTool}from'./baseTool.js';import a0_0x22bc90 from'../utilities/tagParser.js';import{promises as a0_0x4ac40b}from'fs';import a0_0x3cd011 from'path';const SEEK_CONFIG={'MAX_FILE_SIZE':0xa*0x400*0x400,'MAX_FILES_PER_SEARCH':0x3e8,'MAX_MATCHES_PER_FILE':0x64,'MAX_TOTAL_MATCHES':0x1f4,'MAX_SEARCH_TERMS':0x32,'MAX_FILE_PATHS':0x64,'MAX_DIRECTORY_DEPTH':0x14,'MAX_LINE_CONTENT_LENGTH':0xc8,'CONTEXT_LINES_BEFORE':0x0,'CONTEXT_LINES_AFTER':0x0},FILE_ENCODING='utf-8',BINARY_EXTENSIONS=new Set(['.png','.jpg',a0_0x230c82(0xf1),'.gif',a0_0x230c82(0xd9),'.ico',a0_0x230c82(0xd5),a0_0x230c82(0x120),'.zip','.tar','.gz',a0_0x230c82(0xda),a0_0x230c82(0x127),'.exe',a0_0x230c82(0xaa),a0_0x230c82(0xa9),'.dylib','.mp3',a0_0x230c82(0xfd),'.avi',a0_0x230c82(0xf2),'.wmv','.woff','.woff2',a0_0x230c82(0xba),a0_0x230c82(0xb7),'.bin',a0_0x230c82(0xc1),a0_0x230c82(0xa2),'.sqlite']);class SeekTool extends BaseTool{constructor(_0x5f38ea={},_0x16e413=null){const _0x1200b7=a0_0x230c82;super(_0x5f38ea,_0x16e413),this[_0x1200b7(0xe5)]=!![],this['isAsync']=!![],this[_0x1200b7(0x116)]=_0x5f38ea['timeout']||0x1d4c0,this[_0x1200b7(0xf0)]={...SEEK_CONFIG,..._0x5f38ea['seekConfig']};}['getDescription'](){const _0xc9d373=a0_0x230c82;return _0xc9d373(0xa8)+SEEK_CONFIG['MAX_FILE_SIZE']/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Returns\x20up\x20to\x20'+SEEK_CONFIG[_0xc9d373(0xdb)]+'\x20matches\x20total\x0a\x0aRESULT\x20FORMAT:\x0aThe\x20tool\x20returns:\x0a-\x20List\x20of\x20files\x20that\x20were\x20not\x20found\x0a-\x20List\x20of\x20files\x20that\x20had\x20errors\x20during\x20search\x0a-\x20For\x20each\x20search\x20term:\x0a\x20\x20-\x20File\x20path\x20where\x20found\x0a\x20\x20-\x20Line\x20number\x0a\x20\x20-\x20Line\x20content\x20(trimmed)\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0aWhen\x20an\x20agent\x20has\x20multiple\x20directories\x20configured,\x20the\x20SeekTool\x20can\x20search\x20across\x20all\x20of\x20them:\x0a-\x20Relative\x20paths\x20are\x20resolved\x20from\x20the\x20working\x20directory\x0a-\x20Absolute\x20paths\x20can\x20reference\x20any\x20accessible\x20directory\x0a-\x20Automatic\x20validation\x20ensures\x20paths\x20are\x20within\x20allowed\x20directories\x0a\x0aExample\x20with\x20multiple\x20directories:\x0aIf\x20agent\x20has\x20access\x20to:\x0a\x20\x20-\x20/home/user/project1\x20(working\x20directory)\x0a\x20\x20-\x20/home/user/project2\x20(read-only)\x0a\x20\x20-\x20/home/user/shared\x20(read-only)\x0a\x0aYou\x20can\x20search:\x0a\x20\x20src/**/*.js\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20→\x20Searches\x20in\x20/home/user/project1/src/**/*.js\x0a\x20\x20/home/user/project2/config.json\x20\x20\x20\x20\x20\x20\x20→\x20Searches\x20in\x20project2\x20(absolute\x20path)\x0a\x20\x20/home/user/shared/docs/*.md\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20→\x20Searches\x20in\x20shared\x20directory\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_FILES_PER_SEARCH']+'\x20files\x20per\x20search\x0a-\x20Maximum\x20'+SEEK_CONFIG['MAX_SEARCH_TERMS']+'\x20search\x20terms\x0a-\x20Maximum\x20'+SEEK_CONFIG[_0xc9d373(0xbd)]/(0x400*0x400)+'MB\x20per\x20file\x0a-\x20Case-sensitive\x20search\x20only\x0a-\x20Exact\x20string\x20matching\x20(not\x20regex)\x0a-\x20Paths\x20outside\x20accessible\x20directories\x20will\x20be\x20reported\x20as\x20\x22not\x20found\x22\x0a\x20\x20\x20\x20';}['parseParameters'](_0x11c652){const _0x27ca6a=a0_0x230c82;try{if(_0x11c652['trim']()['startsWith']('{')){const _0x248ff5=JSON['parse'](_0x11c652);return{'filePaths':_0x248ff5['filePaths']||[],'searchTerms':_0x248ff5[_0x27ca6a(0x100)]||[]};}const _0x4b2cf8={'filePaths':[],'searchTerms':[]},_0xae65b7=/<in-files>([\s\S]*?)<\/in-files>/i,_0x34dfb0=_0xae65b7[_0x27ca6a(0xc0)](_0x11c652);if(_0x34dfb0){const _0xea93b2=_0x34dfb0[0x1];_0x4b2cf8[_0x27ca6a(0xd4)]=_0xea93b2['split']('\x0a')['map'](_0x519819=>_0x519819[_0x27ca6a(0x119)]())[_0x27ca6a(0xe0)](_0x2ee6de=>_0x2ee6de[_0x27ca6a(0xa1)]>0x0);}const _0x1d865a=/<search-terms>([\s\S]*?)<\/search-terms>/i,_0x26c2c2=_0x1d865a['exec'](_0x11c652);if(_0x26c2c2){const _0x41d3a6=_0x26c2c2[0x1],_0x261ba0=/<term>(.*?)<\/term>/gi;let _0x35b630;while((_0x35b630=_0x261ba0['exec'](_0x41d3a6))!==null){const _0x4ac096=_0x35b630[0x1]['trim']();_0x4ac096['length']>0x0&&_0x4b2cf8['searchTerms'][_0x27ca6a(0xa4)](_0x4ac096);}}return _0x4b2cf8;}catch(_0x49cfef){return this[_0x27ca6a(0xc3)]?.[_0x27ca6a(0x110)](_0x27ca6a(0xf4),{'error':_0x49cfef[_0x27ca6a(0xf3)]}),{'filePaths':[],'searchTerms':[],'parseError':_0x49cfef['message']};}}['getRequiredParameters'](){const _0x45ba6e=a0_0x230c82;return[_0x45ba6e(0xd4),'searchTerms'];}['customValidateParameters'](_0x581b30){const _0x15bd93=a0_0x230c82,_0x4c761b=[];if(!_0x581b30['filePaths']||!Array['isArray'](_0x581b30[_0x15bd93(0xd4)])||_0x581b30['filePaths']['length']===0x0)_0x4c761b['push']('At\x20least\x20one\x20file\x20path\x20is\x20required');else _0x581b30[_0x15bd93(0xd4)][_0x15bd93(0xa1)]>this[_0x15bd93(0xf0)][_0x15bd93(0xe7)]&&_0x4c761b['push']('Too\x20many\x20file\x20paths\x20(max\x20'+this['seekConfig']['MAX_FILE_PATHS']+')');if(!_0x581b30[_0x15bd93(0x100)]||!Array[_0x15bd93(0xcd)](_0x581b30[_0x15bd93(0x100)])||_0x581b30[_0x15bd93(0x100)]['length']===0x0)_0x4c761b['push']('At\x20least\x20one\x20search\x20term\x20is\x20required');else _0x581b30['searchTerms']['length']>this['seekConfig']['MAX_SEARCH_TERMS']&&_0x4c761b[_0x15bd93(0xa4)]('Too\x20many\x20search\x20terms\x20(max\x20'+this['seekConfig']['MAX_SEARCH_TERMS']+')');if(_0x581b30['searchTerms']&&Array[_0x15bd93(0xcd)](_0x581b30[_0x15bd93(0x100)]))for(const [_0x520057,_0xb8d443]of _0x581b30[_0x15bd93(0x100)][_0x15bd93(0x129)]()){(typeof _0xb8d443!==_0x15bd93(0x10a)||_0xb8d443['trim']()['length']===0x0)&&_0x4c761b['push'](_0x15bd93(0x115)+(_0x520057+0x1)+':\x20must\x20be\x20a\x20non-empty\x20string');}if(_0x581b30[_0x15bd93(0xd4)]&&Array[_0x15bd93(0xcd)](_0x581b30['filePaths']))for(const [_0x578e7f,_0x8c0299]of _0x581b30[_0x15bd93(0xd4)]['entries']()){(typeof _0x8c0299!=='string'||_0x8c0299[_0x15bd93(0x119)]()['length']===0x0)&&_0x4c761b['push'](_0x15bd93(0xd0)+(_0x578e7f+0x1)+_0x15bd93(0xbb)),_0x8c0299['includes']('..')&&_0x4c761b[_0x15bd93(0xa4)](_0x15bd93(0xd0)+(_0x578e7f+0x1)+_0x15bd93(0xf7));}return{'valid':_0x4c761b[_0x15bd93(0xa1)]===0x0,'errors':_0x4c761b};}async['execute'](_0x37bcfc,_0x5b8a46){const _0x3029a1=a0_0x230c82,{filePaths:_0x4403b0,searchTerms:_0x4caadd}=_0x37bcfc,{projectDir:_0x37dbae,agentId:_0x10fb2a,directoryAccess:_0x344e3b}=_0x5b8a46;let _0x552c32=_0x37dbae||process['cwd'](),_0x22c2b8=[_0x552c32];_0x344e3b&&_0x344e3b[_0x3029a1(0xcc)]&&(_0x552c32=_0x344e3b[_0x3029a1(0xcc)],_0x22c2b8=this[_0x3029a1(0x126)](_0x344e3b),this['logger']?.[_0x3029a1(0xea)](_0x3029a1(0x11e),{'workingDirectory':_0x344e3b[_0x3029a1(0xcc)],'totalAccessibleDirs':_0x22c2b8[_0x3029a1(0xa1)],'readOnlyDirs':_0x344e3b[_0x3029a1(0xc4)]?.['length']||0x0,'writeEnabledDirs':_0x344e3b[_0x3029a1(0x101)]?.[_0x3029a1(0xa1)]||0x0,'agentId':_0x10fb2a}));if(!_0x552c32)throw new Error('Project\x20directory\x20is\x20required\x20for\x20seek\x20tool');this[_0x3029a1(0xc3)]?.['info']('Executing\x20seek\x20tool',{'filePathCount':_0x4403b0['length'],'searchTermCount':_0x4caadd['length'],'workingDirectory':_0x552c32,'accessibleDirectories':_0x22c2b8[_0x3029a1(0xa1)],'agentId':_0x10fb2a});try{const _0x546788=await this['resolveFilePaths'](_0x4403b0,_0x552c32,_0x344e3b?_0x22c2b8:null),_0x10f932=_0x546788['found'],_0x58bf6e=_0x546788[_0x3029a1(0x103)];if(_0x10f932['length']>this['seekConfig']['MAX_FILES_PER_SEARCH'])return{'success':![],'error':_0x3029a1(0xa7)+_0x10f932['length']+_0x3029a1(0x12b)+this['seekConfig'][_0x3029a1(0x10c)]+_0x3029a1(0x12c),'filesResolved':_0x10f932['length'],'filesNotFound':_0x58bf6e[_0x3029a1(0xa1)]};const _0x1adb77=await this['searchFiles'](_0x10f932,_0x4caadd,_0x552c32),_0x298970=this[_0x3029a1(0x122)](_0x1adb77['matches'],_0x1adb77[_0x3029a1(0xa6)],_0x58bf6e,_0x10f932[_0x3029a1(0xa1)]);return{'success':!![],'filesSearched':_0x10f932['length'],'filesNotFound':_0x58bf6e['length'],'filesWithErrors':_0x1adb77['errorFiles']['length'],'totalMatches':_0x1adb77['matches']['length'],'matchesByTerm':_0x1adb77[_0x3029a1(0xb4)],'formattedResults':_0x298970,'toolUsed':'seek'};}catch(_0x158b08){this['logger']?.[_0x3029a1(0x110)](_0x3029a1(0x10d),{'error':_0x158b08['message']});throw _0x158b08;}}[a0_0x230c82(0x126)](_0x1d4f09){const _0x51e1da=a0_0x230c82,_0x17e90c=new Set();_0x1d4f09['workingDirectory']&&_0x17e90c[_0x51e1da(0xef)](_0x1d4f09[_0x51e1da(0xcc)]);if(_0x1d4f09[_0x51e1da(0xc4)]&&Array[_0x51e1da(0xcd)](_0x1d4f09[_0x51e1da(0xc4)]))for(const _0x3af9d5 of _0x1d4f09[_0x51e1da(0xc4)]){_0x17e90c[_0x51e1da(0xef)](_0x3af9d5);}if(_0x1d4f09['writeEnabledDirectories']&&Array['isArray'](_0x1d4f09[_0x51e1da(0x101)]))for(const _0x16cade of _0x1d4f09['writeEnabledDirectories']){_0x17e90c['add'](_0x16cade);}return Array['from'](_0x17e90c);}['isPathAccessible'](_0xede62a,_0x26690e){const _0x4c1c9e=a0_0x230c82;for(const _0x4481f9 of _0x26690e){const _0x2a3102=a0_0x3cd011[_0x4c1c9e(0x113)](_0x4481f9,_0xede62a),_0x1a6c38=!_0x2a3102[_0x4c1c9e(0x104)]('..')&&!a0_0x3cd011[_0x4c1c9e(0xfc)](_0x2a3102);if(_0x1a6c38)return!![];}return![];}async['resolveFilePaths'](_0x372dda,_0x199f1b,_0x6a89e0=null){const _0x2a3e4a=a0_0x230c82,_0x2202f2={'found':[],'notFound':[]};for(const _0x30b2a2 of _0x372dda){const _0x1be3f6=_0x30b2a2['trim']();if(_0x1be3f6['includes']('*')){const _0x27bf0c=await this[_0x2a3e4a(0x12a)](_0x1be3f6,_0x199f1b);_0x27bf0c[_0x2a3e4a(0xd6)]['length']>0x0?_0x2202f2[_0x2a3e4a(0xd6)]['push'](..._0x27bf0c['found']):_0x2202f2['notFound'][_0x2a3e4a(0xa4)](_0x1be3f6+_0x2a3e4a(0xac));}else{const _0x1c1199=a0_0x3cd011['isAbsolute'](_0x1be3f6)?_0x1be3f6:a0_0x3cd011[_0x2a3e4a(0xae)](_0x199f1b,_0x1be3f6);if(_0x6a89e0&&_0x6a89e0['length']>0x0){if(!this['isPathAccessible'](_0x1c1199,_0x6a89e0)){_0x2202f2['notFound'][_0x2a3e4a(0xa4)](_0x1be3f6+'\x20(not\x20in\x20accessible\x20directories)');continue;}}try{const _0x511a56=await a0_0x4ac40b['stat'](_0x1c1199);if(_0x511a56[_0x2a3e4a(0x10b)]())_0x2202f2['found']['push'](_0x1c1199);else _0x511a56['isDirectory']()?_0x2202f2[_0x2a3e4a(0x103)][_0x2a3e4a(0xa4)](_0x1be3f6+'\x20(is\x20a\x20directory,\x20not\x20a\x20file)'):_0x2202f2[_0x2a3e4a(0x103)]['push'](_0x1be3f6+'\x20(not\x20a\x20regular\x20file)');}catch(_0x319ab2){_0x2202f2[_0x2a3e4a(0x103)]['push'](_0x1be3f6+'\x20('+(_0x319ab2[_0x2a3e4a(0x125)]||_0x319ab2[_0x2a3e4a(0xf3)])+')');}}}return _0x2202f2;}async['expandGlobPattern'](_0x276239,_0x775142){const _0xd7bc8e=a0_0x230c82,_0x4da734={'found':[]};if(_0x276239[_0xd7bc8e(0x10e)]('**/')){const [_0x240884,_0x28c8aa]=_0x276239['split']('**/'),_0x16079c=a0_0x3cd011['resolve'](_0x775142,_0x240884);try{const _0x3da5be=await a0_0x4ac40b[_0xd7bc8e(0x111)](_0x16079c);_0x3da5be[_0xd7bc8e(0xe2)]()&&await this[_0xd7bc8e(0x11a)](_0x16079c,_0x28c8aa,_0x4da734['found'],0x0,this[_0xd7bc8e(0xf0)][_0xd7bc8e(0xb0)]);}catch(_0x40de8a){this[_0xd7bc8e(0xc3)]?.[_0xd7bc8e(0xdd)]('Base\x20directory\x20not\x20found\x20for\x20glob\x20pattern',{'basePath':_0x16079c,'error':_0x40de8a['message']});}}else{if(_0x276239[_0xd7bc8e(0x10e)]('*')){const _0x2f73f0=a0_0x3cd011[_0xd7bc8e(0xd2)](a0_0x3cd011['resolve'](_0x775142,_0x276239)),_0xb38eea=a0_0x3cd011[_0xd7bc8e(0x11d)](_0x276239);try{const _0x45d0aa=await a0_0x4ac40b['stat'](_0x2f73f0);if(_0x45d0aa[_0xd7bc8e(0xe2)]()){const _0x598ffb=await a0_0x4ac40b[_0xd7bc8e(0xbc)](_0x2f73f0);for(const _0x157d31 of _0x598ffb){const _0x385b79=a0_0x3cd011[_0xd7bc8e(0xc9)](_0x2f73f0,_0x157d31);try{const _0x2f4283=await a0_0x4ac40b[_0xd7bc8e(0x111)](_0x385b79);_0x2f4283['isFile']()&&this['matchesPattern'](_0x157d31,_0xb38eea)&&_0x4da734['found']['push'](_0x385b79);}catch(_0x1340a0){continue;}}}}catch(_0x38b12b){this['logger']?.[_0xd7bc8e(0xdd)]('Directory\x20not\x20found\x20for\x20glob\x20pattern',{'dirPath':_0x2f73f0,'error':_0x38b12b[_0xd7bc8e(0xf3)]});}}}return _0x4da734;}async[a0_0x230c82(0x11a)](_0xa986c3,_0x30a9d0,_0xa329e2,_0x45d668,_0x87a9b3){const _0x1f7983=a0_0x230c82;if(_0x45d668>=_0x87a9b3){this[_0x1f7983(0xc3)]?.['warn']('Maximum\x20directory\x20depth\x20reached',{'dir':_0xa986c3,'currentDepth':_0x45d668});return;}try{const _0x4edc08=await a0_0x4ac40b[_0x1f7983(0xbc)](_0xa986c3,{'withFileTypes':!![]});for(const _0x11234c of _0x4edc08){if(_0x11234c[_0x1f7983(0x11f)]['startsWith']('.'))continue;const _0x288406=a0_0x3cd011[_0x1f7983(0xc9)](_0xa986c3,_0x11234c[_0x1f7983(0x11f)]);try{if(_0x11234c[_0x1f7983(0xe2)]()){if(this[_0x1f7983(0xf8)](_0x11234c[_0x1f7983(0x11f)]))continue;await this[_0x1f7983(0x11a)](_0x288406,_0x30a9d0,_0xa329e2,_0x45d668+0x1,_0x87a9b3);}else{if(_0x11234c[_0x1f7983(0x10b)]()){if(this['matchesPattern'](_0x11234c['name'],_0x30a9d0)){_0xa329e2[_0x1f7983(0xa4)](_0x288406);if(_0xa329e2[_0x1f7983(0xa1)]>=this[_0x1f7983(0xf0)]['MAX_FILES_PER_SEARCH'])return;}}}}catch(_0x152b38){continue;}}}catch(_0x8cb4ca){this[_0x1f7983(0xc3)]?.[_0x1f7983(0xdd)](_0x1f7983(0xfe),{'dir':_0xa986c3,'error':_0x8cb4ca['message']});}}[a0_0x230c82(0x117)](_0x8b00a6,_0x43c5f8){const _0x34af9b=a0_0x230c82,_0x2963d2=_0x43c5f8[_0x34af9b(0xd1)]('*')[_0x34af9b(0xb9)](_0x4ac0ba=>this[_0x34af9b(0x123)](_0x4ac0ba))['join']('.*'),_0x93011f=new RegExp('^'+_0x2963d2+'$','i');return _0x93011f[_0x34af9b(0x10f)](_0x8b00a6);}[a0_0x230c82(0x123)](_0x2d4b99){const _0x10a681=a0_0x230c82;return _0x2d4b99[_0x10a681(0x114)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');}[a0_0x230c82(0xf8)](_0x24bd5c){const _0x13ef22=a0_0x230c82,_0x2bdee7=new Set(['node_modules',_0x13ef22(0xe3),'dist',_0x13ef22(0xdf),'coverage','.next','.nuxt','out','target','vendor','__pycache__','.cache','tmp','temp']);return _0x2bdee7[_0x13ef22(0xe6)](_0x24bd5c['toLowerCase']());}[a0_0x230c82(0xed)](_0x333f2e){const _0x289b8d=a0_0x230c82,_0x4430be=a0_0x3cd011[_0x289b8d(0xce)](_0x333f2e)[_0x289b8d(0xeb)]();return BINARY_EXTENSIONS[_0x289b8d(0xe6)](_0x4430be);}async[a0_0x230c82(0x124)](_0x760c96,_0x5d0aac,_0x4f1dab){const _0x8814=a0_0x230c82,_0x550e15=[],_0x4d0298=[];let _0x596e7b=0x0;for(const _0x22eeef of _0x760c96){if(this[_0x8814(0xed)](_0x22eeef))continue;try{const _0x125ed9=await a0_0x4ac40b['stat'](_0x22eeef);if(_0x125ed9[_0x8814(0xc6)]>this[_0x8814(0xf0)][_0x8814(0xbd)]){_0x4d0298['push']({'filePath':a0_0x3cd011[_0x8814(0x113)](_0x4f1dab,_0x22eeef),'error':'File\x20too\x20large\x20('+Math['round'](_0x125ed9['size']/(0x400*0x400))+_0x8814(0xc7)+Math['round'](this['seekConfig']['MAX_FILE_SIZE']/(0x400*0x400))+'MB)'});continue;}const _0x2a9b8d=await this[_0x8814(0xbf)](_0x22eeef,_0x5d0aac,_0x4f1dab);_0x550e15[_0x8814(0xa4)](..._0x2a9b8d),_0x596e7b+=_0x2a9b8d['length'];if(_0x596e7b>=this[_0x8814(0xf0)][_0x8814(0xdb)]){this[_0x8814(0xc3)]?.['warn']('Maximum\x20total\x20matches\x20reached',{'totalMatches':_0x596e7b});break;}}catch(_0x1f75d7){_0x4d0298[_0x8814(0xa4)]({'filePath':a0_0x3cd011['relative'](_0x4f1dab,_0x22eeef),'error':_0x1f75d7['message']});}}const _0x390dac={};for(const _0x581242 of _0x550e15){!_0x390dac[_0x581242['term']]&&(_0x390dac[_0x581242['term']]=[]),_0x390dac[_0x581242['term']][_0x8814(0xa4)]({'filePath':_0x581242['filePath'],'lineNumber':_0x581242['lineNumber'],'lineContent':_0x581242[_0x8814(0xec)]});}return{'matches':_0x550e15,'matchesByTerm':_0x390dac,'errorFiles':_0x4d0298};}async[a0_0x230c82(0xbf)](_0x33e3a5,_0x3d9de0,_0x8675d1){const _0x3545b9=a0_0x230c82,_0x2d3bed=[];let _0x3864a4=0x0;try{const _0x208687=await a0_0x4ac40b[_0x3545b9(0xff)](_0x33e3a5,FILE_ENCODING),_0x1bc623=_0x208687[_0x3545b9(0xd1)]('\x0a'),_0x2aff09=a0_0x3cd011['relative'](_0x8675d1,_0x33e3a5);for(let _0x4d54f8=0x0;_0x4d54f8<_0x1bc623['length'];_0x4d54f8++){const _0x59f6d7=_0x1bc623[_0x4d54f8],_0x12518a=_0x4d54f8+0x1;for(const _0x2def2e of _0x3d9de0){if(_0x59f6d7['includes'](_0x2def2e)){let _0xc5c97e=_0x59f6d7;if(_0xc5c97e['length']>this['seekConfig'][_0x3545b9(0x112)]){const _0x59e97d=_0xc5c97e['indexOf'](_0x2def2e),_0x5b396b=Math['max'](0x0,_0x59e97d-0x32),_0x175575=Math[_0x3545b9(0xd8)](_0xc5c97e[_0x3545b9(0xa1)],_0x59e97d+_0x2def2e['length']+0x32);_0xc5c97e=(_0x5b396b>0x0?'...':'')+_0xc5c97e['substring'](_0x5b396b,_0x175575)+(_0x175575<_0xc5c97e['length']?'...':'');}_0x2d3bed[_0x3545b9(0xa4)]({'term':_0x2def2e,'filePath':_0x2aff09,'lineNumber':_0x12518a,'lineContent':_0xc5c97e[_0x3545b9(0x119)]()}),_0x3864a4++;if(_0x3864a4>=this['seekConfig'][_0x3545b9(0x105)])return this['logger']?.[_0x3545b9(0xdd)](_0x3545b9(0xfa),{'filePath':_0x2aff09}),_0x2d3bed;}}}}catch(_0x2bd136){throw new Error(_0x3545b9(0xee)+_0x2bd136[_0x3545b9(0xf3)]);}return _0x2d3bed;}['formatResults'](_0x342a68,_0x5dc0c7,_0x507647,_0x596b85){const _0x1766b4=a0_0x230c82;let _0x35e46c='';if(_0x507647[_0x1766b4(0xa1)]>0x0){_0x35e46c+=_0x1766b4(0xf6);for(const _0x2bd7bb of _0x507647){_0x35e46c+=_0x1766b4(0xf5)+_0x2bd7bb+'\x0a';}_0x35e46c+='\x0a';}if(_0x5dc0c7[_0x1766b4(0xa1)]>0x0){_0x35e46c+=_0x1766b4(0xdc);for(const _0x1a1be9 of _0x5dc0c7){_0x35e46c+='\x20\x20-\x20'+_0x1a1be9['filePath']+':\x20'+_0x1a1be9[_0x1766b4(0x110)]+'\x0a';}_0x35e46c+='\x0a';}if(_0x342a68[_0x1766b4(0xa1)]===0x0)_0x35e46c+=_0x1766b4(0x118)+_0x596b85+_0x1766b4(0xb5);else{const _0x4033f1={};for(const _0x5010e3 of _0x342a68){!_0x4033f1[_0x5010e3[_0x1766b4(0xe1)]]&&(_0x4033f1[_0x5010e3[_0x1766b4(0xe1)]]=[]),_0x4033f1[_0x5010e3['term']][_0x1766b4(0xa4)](_0x5010e3);}_0x35e46c+='SEARCH\x20RESULTS\x20('+_0x342a68[_0x1766b4(0xa1)]+_0x1766b4(0xcb)+_0x596b85+'\x20file(s)):\x0a\x0a';for(const [_0x11cc57,_0xb11bc]of Object['entries'](_0x4033f1)){_0x35e46c+='Search\x20term:\x20\x22'+_0x11cc57+_0x1766b4(0xca)+_0xb11bc[_0x1766b4(0xa1)]+'\x20matches)\x0a';for(const _0x3176b5 of _0xb11bc){_0x35e46c+='\x20\x20'+_0x3176b5['filePath']+':'+_0x3176b5['lineNumber']+_0x1766b4(0xe9)+_0x3176b5[_0x1766b4(0xec)]+'\x0a';}_0x35e46c+='\x0a';}_0x342a68['length']>=this[_0x1766b4(0xf0)][_0x1766b4(0xdb)]&&(_0x35e46c+='⚠️\x20\x20Maximum\x20matches\x20limit\x20reached\x20('+this[_0x1766b4(0xf0)][_0x1766b4(0xdb)]+_0x1766b4(0x11b));}return _0x35e46c['trim']();}[a0_0x230c82(0xad)](){const _0x35ec33=a0_0x230c82;return[_0x35ec33(0xb6),_0x35ec33(0xd7),'.ts','.tsx',_0x35ec33(0x109),'.xml',_0x35ec33(0xa3),_0x35ec33(0xc5),'.scss',_0x35ec33(0xaf),_0x35ec33(0xb8),'.md','.txt',_0x35ec33(0x102),_0x35ec33(0x108),_0x35ec33(0xab),_0x35ec33(0x128),_0x35ec33(0xc2),'.rs','.c','.cpp','.h','.hpp',_0x35ec33(0xe8),_0x35ec33(0xb3),_0x35ec33(0xe4),'.yml',_0x35ec33(0xc8),'.toml','.ini',_0x35ec33(0xb1)];}async['cleanup'](_0x50db81){const _0x12aae7=a0_0x230c82;this['logger']?.['info'](_0x12aae7(0xd3),{'operationId':_0x50db81});}}export default SeekTool;
@@ -1 +1 @@
1
- const a0_0x1af86f=a0_0x224a;function a0_0x224a(_0x103b1b,_0x4b5880){_0x103b1b=_0x103b1b-0x10e;const _0x2d8d93=a0_0x2d8d();let _0x224a26=_0x2d8d93[_0x103b1b];if(a0_0x224a['cciCTK']===undefined){var _0x2125eb=function(_0x312d96){const _0x599d69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a9d9a='',_0x417253='';for(let _0x19f56d=0x0,_0x346124,_0xfb82e9,_0x4ad9e9=0x0;_0xfb82e9=_0x312d96['charAt'](_0x4ad9e9++);~_0xfb82e9&&(_0x346124=_0x19f56d%0x4?_0x346124*0x40+_0xfb82e9:_0xfb82e9,_0x19f56d++%0x4)?_0x3a9d9a+=String['fromCharCode'](0xff&_0x346124>>(-0x2*_0x19f56d&0x6)):0x0){_0xfb82e9=_0x599d69['indexOf'](_0xfb82e9);}for(let _0x256564=0x0,_0x1265b8=_0x3a9d9a['length'];_0x256564<_0x1265b8;_0x256564++){_0x417253+='%'+('00'+_0x3a9d9a['charCodeAt'](_0x256564)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x417253);};a0_0x224a['mjrZDI']=_0x2125eb,a0_0x224a['aRMJEL']={},a0_0x224a['cciCTK']=!![];}const _0x52935d=_0x2d8d93[0x0],_0x435324=_0x103b1b+_0x52935d,_0x55ba1a=a0_0x224a['aRMJEL'][_0x435324];return!_0x55ba1a?(_0x224a26=a0_0x224a['mjrZDI'](_0x224a26),a0_0x224a['aRMJEL'][_0x435324]=_0x224a26):_0x224a26=_0x55ba1a,_0x224a26;}(function(_0x15e36e,_0x35d78f){const _0x22609d=a0_0x224a,_0x501983=_0x15e36e();while(!![]){try{const _0x20fc31=-parseInt(_0x22609d(0x1c4))/0x1+-parseInt(_0x22609d(0x1d5))/0x2*(-parseInt(_0x22609d(0x1b5))/0x3)+parseInt(_0x22609d(0x14f))/0x4+-parseInt(_0x22609d(0x10e))/0x5*(parseInt(_0x22609d(0x185))/0x6)+parseInt(_0x22609d(0x156))/0x7*(-parseInt(_0x22609d(0x1bf))/0x8)+parseInt(_0x22609d(0x147))/0x9+parseInt(_0x22609d(0x16a))/0xa*(parseInt(_0x22609d(0x16e))/0xb);if(_0x20fc31===_0x35d78f)break;else _0x501983['push'](_0x501983['shift']());}catch(_0x75424e){_0x501983['push'](_0x501983['shift']());}}}(a0_0x2d8d,0xdd710));import{BaseTool}from'./baseTool.js';import a0_0x3a9d9a from'../utilities/tagParser.js';import a0_0x417253 from'../utilities/directoryAccessManager.js';import a0_0x19f56d from'fs/promises';import a0_0x346124 from'path';import a0_0xfb82e9 from'crypto';import{STATIC_ANALYSIS,TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class StaticAnalysisTool extends BaseTool{constructor(_0x4ad9e9={},_0x256564=null){const _0x401067=a0_0x224a;super(_0x4ad9e9,_0x256564),this['requiresProject']=!![],this['isAsync']=![],this['timeout']=_0x4ad9e9['timeout']||STATIC_ANALYSIS[_0x401067(0x1c0)],this['maxConcurrentOperations']=_0x4ad9e9[_0x401067(0x1d2)]||0x1,this[_0x401067(0x1c2)]=_0x4ad9e9[_0x401067(0x1c2)]||STATIC_ANALYSIS['MAX_FILE_SIZE_FOR_ANALYSIS'],this[_0x401067(0x13d)]=_0x4ad9e9['maxFilesPerBatch']||STATIC_ANALYSIS[_0x401067(0x1e6)],this['enableCache']=_0x4ad9e9[_0x401067(0x178)]!==![]&&STATIC_ANALYSIS[_0x401067(0x1cd)],this[_0x401067(0x186)]=new Map(),this[_0x401067(0x1e0)]=STATIC_ANALYSIS['CACHE_DURATION'],this[_0x401067(0x168)]=_0x4ad9e9['parallelAnalysis']!==![],this[_0x401067(0x1d8)]=_0x4ad9e9['maxParallelFiles']||0xa,this['useContentHash']=_0x4ad9e9['useContentHash']!==![],this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0},this[_0x401067(0x11e)]=new a0_0x417253(_0x4ad9e9,_0x256564),this['analyzers']={'javascript':null,'typescript':null,'python':null,'css':null,'scss':null,'less':null,'eslint':null,'security':null,'config':null},this[_0x401067(0x115)]={'prettier':null};}['getDescription'](){const _0x3acc4d=a0_0x224a;return'\x0aStatic\x20Code\x20Analysis\x20Tool:\x20Analyze\x20code\x20files\x20for\x20errors\x20without\x20execution\x0a\x0aThis\x20tool\x20performs\x20static\x20analysis\x20on\x20code\x20files\x20to\x20find\x20syntax\x20errors,\x20type\x20errors,\x20import\x20issues,\x20and\x20other\x20problems\x20without\x20running\x20the\x20code.\x20It\x20uses\x20official\x20language\x20parsers\x20for\x20accurate\x20results.\x0a\x0aSUPPORTED\x20LANGUAGES:\x0a-\x20JavaScript\x20(.js,\x20.jsx,\x20.mjs,\x20.cjs)\x0a-\x20TypeScript\x20(.ts,\x20.tsx)\x0a-\x20Python\x20(.py)\x0a-\x20CSS\x20(.css)\x0a-\x20SCSS\x20(.scss,\x20.sass)\x0a-\x20LESS\x20(.less)\x0a\x0aUSAGE\x20-\x20XML\x20FORMAT:\x0a\x0aSingle\x20File\x20Analysis:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/index.js\x22\x20/>\x0a[/tool]\x0a\x0aMultiple\x20Files\x20Analysis:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/index.js\x22\x20/>\x0a<analyze\x20file-path=\x22src/utils.js\x22\x20/>\x0a<analyze\x20file-path=\x22src/components/Button.jsx\x22\x20/>\x0a[/tool]\x0a\x0aProject-Wide\x20Analysis:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze-project\x20directory=\x22src\x22\x20pattern=\x22**/*.js\x22\x20/>\x0a[/tool]\x0a\x0aAuto-Fix\x20Code\x20Issues:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<fix\x20file-path=\x22src/app.js\x22\x20/>\x0a[/tool]\x0a\x0aFormat\x20Code:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<format\x20file-path=\x22src/app.js\x22\x20/>\x0a[/tool]\x0a\x0aUSAGE\x20-\x20JSON\x20FORMAT:\x0a\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22staticanalysis\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22analyze\x22,\x0a\x20\x20\x20\x20\x20\x20\x22filePath\x22:\x20\x22src/index.js\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22analyze-project\x22,\x0a\x20\x20\x20\x20\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x20\x20\x20\x20\x22pattern\x22:\x20\x22**/*.{js,ts,py}\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a-\x20file-path:\x20Path\x20to\x20file\x20to\x20analyze\x20(for\x20single\x20file)\x0a-\x20directory:\x20Directory\x20to\x20analyze\x20(for\x20project-wide)\x0a-\x20pattern:\x20Glob\x20pattern\x20for\x20files\x20to\x20include\x20(optional,\x20defaults\x20to\x20language-specific\x20patterns)\x0a-\x20include-warnings:\x20Include\x20warnings\x20in\x20results\x20(true/false,\x20default:\x20true)\x0a-\x20max-errors:\x20Maximum\x20number\x20of\x20errors\x20to\x20return\x20(default:\x20all)\x0a\x0aOUTPUT\x20FORMAT:\x0aReturns\x20structured\x20error\x20information:\x0a-\x20file:\x20File\x20path\x0a-\x20line:\x20Line\x20number\x0a-\x20column:\x20Column\x20number\x0a-\x20severity:\x20critical\x20|\x20error\x20|\x20warning\x20|\x20info\x0a-\x20rule:\x20Rule\x20identifier\x0a-\x20message:\x20Human-readable\x20description\x0a-\x20category:\x20syntax\x20|\x20type\x20|\x20import\x20|\x20style\x20|\x20security\x20|\x20performance\x20|\x20best_practice\x0a-\x20fixable:\x20Whether\x20error\x20can\x20be\x20auto-fixed\x0a-\x20suggestion:\x20Fix\x20suggestion\x20(if\x20applicable)\x0a-\x20remediation:\x20Security\x20remediation\x20advice\x20(for\x20security\x20issues)\x0a\x0aDETECTION:\x0a-\x20Language:\x20Automatically\x20detected\x20from\x20file\x20extension\x0a-\x20Framework:\x20Detected\x20from\x20package.json,\x20requirements.txt,\x20etc.\x0a-\x20Context:\x20Project\x20structure\x20analyzed\x20for\x20better\x20accuracy\x0a\x0aEXAMPLES:\x0a\x0aFind\x20all\x20errors\x20in\x20a\x20JavaScript\x20file:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/app.js\x22\x20/>\x0a[/tool]\x0a\x0aAnalyze\x20TypeScript\x20with\x20type\x20checking:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze\x20file-path=\x22src/types.ts\x22\x20/>\x0a[/tool]\x0a\x0aCheck\x20all\x20Python\x20files\x20in\x20a\x20directory:\x0a[tool\x20id=\x22staticanalysis\x22]\x0a<analyze-project\x20directory=\x22backend\x22\x20pattern=\x22**/*.py\x22\x20/>\x0a[/tool]\x0a\x0aLIMITATIONS:\x0a-\x20File\x20size\x20limit:\x20'+Math['round'](this[_0x3acc4d(0x1c2)]/0x400/0x400)+'MB\x20per\x20file\x0a-\x20Batch\x20limit:\x20'+this['maxFilesPerBatch']+'\x20files\x20per\x20operation\x0a-\x20Analysis\x20timeout:\x20'+this['timeout']/0x3e8+_0x3acc4d(0x165);}[a0_0x1af86f(0x1d0)](_0x1265b8){const _0x10550f=a0_0x1af86f;try{const _0x51f3dd={},_0x2ed8bd=[];this[_0x10550f(0x188)]?.[_0x10550f(0x157)](_0x10550f(0x148),{'contentLength':_0x1265b8[_0x10550f(0x1d9)],'contentPreview':_0x1265b8[_0x10550f(0x11a)](0x0,0xc8)});const _0x172cca=/<analyze\s+(.+?)\/>/g;let _0x448939;while((_0x448939=_0x172cca['exec'](_0x1265b8))!==null){const _0x4488ef=_0x448939[0x1]['trim'](),_0x69d660=new a0_0x3a9d9a(),_0x572d7a=_0x69d660[_0x10550f(0x13a)](_0x4488ef),_0x4e65d4={'type':_0x10550f(0x13f),..._0x572d7a};_0x4e65d4[_0x10550f(0x18e)]&&(_0x4e65d4['filePath']=_0x4e65d4[_0x10550f(0x18e)],delete _0x4e65d4['file-path']),_0x4e65d4['include-warnings']&&(_0x4e65d4['includeWarnings']=_0x4e65d4[_0x10550f(0x18c)]==='true',delete _0x4e65d4['include-warnings']),_0x4e65d4['max-errors']&&(_0x4e65d4[_0x10550f(0x191)]=parseInt(_0x4e65d4['max-errors'],0xa),delete _0x4e65d4[_0x10550f(0x16f)]),_0x2ed8bd[_0x10550f(0x16d)](_0x4e65d4);}const _0x29102c=/<analyze-project\s+(.+?)\/>/g;while((_0x448939=_0x29102c['exec'](_0x1265b8))!==null){const _0x6664de=_0x448939[0x1][_0x10550f(0x14a)](),_0x591365=new a0_0x3a9d9a(),_0x1ca3d8=_0x591365['parseAttributes'](_0x6664de),_0x1fc4bb={'type':'analyze-project',..._0x1ca3d8};_0x1fc4bb[_0x10550f(0x18c)]&&(_0x1fc4bb[_0x10550f(0x182)]=_0x1fc4bb[_0x10550f(0x18c)]==='true',delete _0x1fc4bb[_0x10550f(0x18c)]),_0x1fc4bb['max-errors']&&(_0x1fc4bb[_0x10550f(0x191)]=parseInt(_0x1fc4bb[_0x10550f(0x16f)],0xa),delete _0x1fc4bb[_0x10550f(0x16f)]),_0x2ed8bd[_0x10550f(0x16d)](_0x1fc4bb);}const _0x5181b0=/<fix\s+(.+?)\/>/g;while((_0x448939=_0x5181b0['exec'](_0x1265b8))!==null){const _0x20376c=_0x448939[0x1][_0x10550f(0x14a)](),_0x4f7c18=new a0_0x3a9d9a(),_0x1bffd3=_0x4f7c18[_0x10550f(0x13a)](_0x20376c),_0x13268d={'type':_0x10550f(0x1cc),..._0x1bffd3};_0x13268d['file-path']&&(_0x13268d['filePath']=_0x13268d[_0x10550f(0x18e)],delete _0x13268d['file-path']),_0x13268d[_0x10550f(0x1a8)]&&(_0x13268d['writeFile']=_0x13268d[_0x10550f(0x1a8)]===_0x10550f(0x1c7),delete _0x13268d['write-file']),_0x2ed8bd[_0x10550f(0x16d)](_0x13268d);}const _0x4bd090=/<format\s+(.+?)\/>/g;while((_0x448939=_0x4bd090['exec'](_0x1265b8))!==null){const _0x17e552=_0x448939[0x1][_0x10550f(0x14a)](),_0x2318b7=new a0_0x3a9d9a(),_0x215869=_0x2318b7[_0x10550f(0x13a)](_0x17e552),_0x7f551b={'type':'format',..._0x215869};_0x7f551b['file-path']&&(_0x7f551b[_0x10550f(0x1cb)]=_0x7f551b['file-path'],delete _0x7f551b[_0x10550f(0x18e)]),_0x7f551b[_0x10550f(0x1a8)]&&(_0x7f551b[_0x10550f(0x15d)]=_0x7f551b[_0x10550f(0x1a8)]===_0x10550f(0x1c7),delete _0x7f551b['write-file']),_0x2ed8bd[_0x10550f(0x16d)](_0x7f551b);}const _0x154b62=/<security-scan\s+(.+?)\/>/g;while((_0x448939=_0x154b62[_0x10550f(0x119)](_0x1265b8))!==null){const _0x4b024c=_0x448939[0x1][_0x10550f(0x14a)](),_0x2a2568=new a0_0x3a9d9a(),_0x318e61=_0x2a2568['parseAttributes'](_0x4b024c),_0x4d3c94={'type':_0x10550f(0x174),..._0x318e61};_0x4d3c94[_0x10550f(0x18e)]&&(_0x4d3c94[_0x10550f(0x1cb)]=_0x4d3c94[_0x10550f(0x18e)],delete _0x4d3c94['file-path']),_0x4d3c94['skip-test-files']&&(_0x4d3c94['skipTestFiles']=_0x4d3c94['skip-test-files']==='true',delete _0x4d3c94['skip-test-files']),_0x2ed8bd[_0x10550f(0x16d)](_0x4d3c94);}const _0x5e3bf1=/<security-scan-project\s+(.+?)\/>/g;while((_0x448939=_0x5e3bf1['exec'](_0x1265b8))!==null){const _0x5a0eb6=_0x448939[0x1]['trim'](),_0x4eedcc=new a0_0x3a9d9a(),_0x5b3848=_0x4eedcc[_0x10550f(0x13a)](_0x5a0eb6),_0x37e275={'type':'security-scan-project',..._0x5b3848};_0x37e275['skip-test-files']&&(_0x37e275['skipTestFiles']=_0x37e275[_0x10550f(0x16b)]===_0x10550f(0x1c7),delete _0x37e275['skip-test-files']),_0x2ed8bd[_0x10550f(0x16d)](_0x37e275);}const _0x782f95=/<validate-config\s+(.+?)\/>/g;while((_0x448939=_0x782f95['exec'](_0x1265b8))!==null){const _0x3d7fd1=_0x448939[0x1]['trim'](),_0x24a527=new a0_0x3a9d9a(),_0x3f833b=_0x24a527[_0x10550f(0x13a)](_0x3d7fd1),_0x55593e={'type':_0x10550f(0x131),..._0x3f833b};_0x55593e['file-path']&&(_0x55593e['filePath']=_0x55593e[_0x10550f(0x18e)],delete _0x55593e[_0x10550f(0x18e)]),_0x2ed8bd['push'](_0x55593e);}const _0x17eed3=/<validate-config-directory\s+(.+?)\/>/g;while((_0x448939=_0x17eed3[_0x10550f(0x119)](_0x1265b8))!==null){const _0x39a178=_0x448939[0x1]['trim'](),_0x2512a9=new a0_0x3a9d9a(),_0x47f256=_0x2512a9[_0x10550f(0x13a)](_0x39a178),_0x208640={'type':_0x10550f(0x16c),..._0x47f256};_0x2ed8bd[_0x10550f(0x16d)](_0x208640);}return _0x51f3dd[_0x10550f(0x123)]=_0x2ed8bd,_0x51f3dd['rawContent']=_0x1265b8['trim'](),this['logger']?.['debug'](_0x10550f(0x1ce),{'totalActions':_0x2ed8bd[_0x10550f(0x1d9)],'actionTypes':_0x2ed8bd['map'](_0x51354d=>_0x51354d[_0x10550f(0x10f)])}),_0x51f3dd;}catch(_0x37372e){throw new Error('Failed\x20to\x20parse\x20static\x20analysis\x20parameters:\x20'+_0x37372e[_0x10550f(0x19b)]);}}[a0_0x1af86f(0x1e3)](){const _0x3a5e6a=a0_0x1af86f;return[_0x3a5e6a(0x123)];}['customValidateParameters'](_0x456006){const _0x105c24=a0_0x1af86f,_0x56c051=[];if(!_0x456006[_0x105c24(0x123)]||!Array['isArray'](_0x456006[_0x105c24(0x123)])||_0x456006[_0x105c24(0x123)][_0x105c24(0x1d9)]===0x0)_0x56c051[_0x105c24(0x16d)](_0x105c24(0x180));else{for(const [_0x2ab612,_0x526f42]of _0x456006['actions']['entries']()){if(!_0x526f42[_0x105c24(0x10f)]){_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x140));continue;}switch(_0x526f42[_0x105c24(0x10f)]){case'analyze':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x1dd));break;case _0x105c24(0x1ae):!_0x526f42['directory']&&_0x56c051['push']('Action\x20'+(_0x2ab612+0x1)+':\x20directory\x20is\x20required\x20for\x20analyze-project');break;case'fix':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x1c6));break;case _0x105c24(0x149):!_0x526f42[_0x105c24(0x1cb)]&&_0x56c051['push']('Action\x20'+(_0x2ab612+0x1)+':\x20file-path\x20is\x20required\x20for\x20format');break;case'security-scan':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+':\x20file-path\x20is\x20required\x20for\x20security-scan');break;case _0x105c24(0x14e):!_0x526f42[_0x105c24(0x14b)]&&_0x56c051[_0x105c24(0x16d)]('Action\x20'+(_0x2ab612+0x1)+':\x20directory\x20is\x20required\x20for\x20security-scan-project');break;case'validate-config':!_0x526f42['filePath']&&_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+':\x20file-path\x20is\x20required\x20for\x20validate-config');break;case'validate-config-directory':!_0x526f42[_0x105c24(0x14b)]&&_0x56c051[_0x105c24(0x16d)](_0x105c24(0x160)+(_0x2ab612+0x1)+_0x105c24(0x1d7));break;default:_0x56c051['push'](_0x105c24(0x160)+(_0x2ab612+0x1)+':\x20unknown\x20action\x20type:\x20'+_0x526f42[_0x105c24(0x10f)]);}}_0x456006['actions'][_0x105c24(0x1d9)]>this[_0x105c24(0x13d)]&&_0x56c051[_0x105c24(0x16d)]('Too\x20many\x20actions:\x20'+_0x456006[_0x105c24(0x123)][_0x105c24(0x1d9)]+_0x105c24(0x15a)+this[_0x105c24(0x13d)]+')');}return{'valid':_0x56c051[_0x105c24(0x1d9)]===0x0,'errors':_0x56c051};}async['execute'](_0x2d7027,_0x54ea97){const _0x3c5ffd=a0_0x1af86f,{actions:_0x1ddcb7}=_0x2d7027,{projectDir:_0x527c36,agentId:_0x18c9fd,directoryAccess:_0x105d78}=_0x54ea97,_0xd73cac=_0x105d78||this[_0x3c5ffd(0x11e)][_0x3c5ffd(0x1c3)]({'workingDirectory':_0x527c36||process['cwd'](),'writeEnabledDirectories':[_0x527c36||process[_0x3c5ffd(0x134)]()],'restrictToProject':!![]}),_0x3c7443=this['directoryAccessManager']['getWorkingDirectory'](_0xd73cac),_0x1f3f06={'files':[],'summary':{'totalFiles':0x0,'totalErrors':0x0,'totalWarnings':0x0,'totalInfo':0x0,'errorsByCategory':{},'filesByLanguage':{},'filesWithErrors':0x0}};for(const _0x1fd077 of _0x1ddcb7){try{let _0x56fff4;switch(_0x1fd077['type']){case _0x3c5ffd(0x13f):_0x56fff4=await this[_0x3c5ffd(0x198)](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&(_0x1f3f06['files']['push'](_0x56fff4),this[_0x3c5ffd(0x1aa)](_0x1f3f06['summary'],_0x56fff4));break;case _0x3c5ffd(0x1ae):const _0x228091=await this['analyzeProject'](_0x1fd077['directory'],_0x1fd077['pattern'],_0x3c7443,_0xd73cac,_0x1fd077);_0x1f3f06[_0x3c5ffd(0x126)][_0x3c5ffd(0x16d)](..._0x228091);for(const _0x5f386e of _0x228091){this['updateSummary'](_0x1f3f06[_0x3c5ffd(0x15f)],_0x5f386e);}break;case _0x3c5ffd(0x1cc):_0x56fff4=await this[_0x3c5ffd(0x15e)](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&_0x1f3f06['files']['push'](_0x56fff4);break;case _0x3c5ffd(0x149):_0x56fff4=await this[_0x3c5ffd(0x150)](_0x1fd077['filePath'],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&_0x1f3f06['files'][_0x3c5ffd(0x16d)](_0x56fff4);break;case _0x3c5ffd(0x174):_0x56fff4=await this['securityScanFile'](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&(_0x1f3f06[_0x3c5ffd(0x126)][_0x3c5ffd(0x16d)](_0x56fff4),this[_0x3c5ffd(0x1aa)](_0x1f3f06[_0x3c5ffd(0x15f)],_0x56fff4));break;case'security-scan-project':const _0x4905e0=await this[_0x3c5ffd(0x17e)](_0x1fd077['directory'],_0x1fd077['pattern'],_0x3c7443,_0xd73cac,_0x1fd077);_0x1f3f06['files']['push'](..._0x4905e0);for(const _0x3fe5ec of _0x4905e0){this['updateSummary'](_0x1f3f06['summary'],_0x3fe5ec);}break;case'validate-config':_0x56fff4=await this['validateConfigFile'](_0x1fd077[_0x3c5ffd(0x1cb)],_0x3c7443,_0xd73cac,_0x1fd077);_0x56fff4&&(_0x1f3f06['files']['push'](_0x56fff4),this['updateSummary'](_0x1f3f06['summary'],_0x56fff4));break;case _0x3c5ffd(0x16c):const _0x43e97e=await this[_0x3c5ffd(0x122)](_0x1fd077[_0x3c5ffd(0x14b)],_0x3c7443,_0xd73cac,_0x1fd077);_0x1f3f06['files'][_0x3c5ffd(0x16d)](..._0x43e97e);for(const _0x599d8e of _0x43e97e){this[_0x3c5ffd(0x1aa)](_0x1f3f06[_0x3c5ffd(0x15f)],_0x599d8e);}break;default:throw new Error(_0x3c5ffd(0x1bd)+_0x1fd077['type']);}}catch(_0x5c3320){this['logger']?.[_0x3c5ffd(0x13e)](_0x3c5ffd(0x17a),{'action':_0x1fd077['type'],'error':_0x5c3320['message']}),_0x1f3f06[_0x3c5ffd(0x126)]['push']({'file':_0x1fd077['filePath']||_0x1fd077[_0x3c5ffd(0x14b)],'error':_0x5c3320[_0x3c5ffd(0x19b)],'success':![]});}}return{'success':!![],'results':_0x1f3f06,'toolUsed':_0x3c5ffd(0x179),'performance':this[_0x3c5ffd(0x1b9)]()};}async['analyzeFile'](_0x40bb79,_0x141a5e,_0x314b60,_0x4138e8={}){const _0x674763=a0_0x1af86f,_0x10e704=a0_0x346124[_0x674763(0x18b)](_0x40bb79)?a0_0x346124[_0x674763(0x129)](_0x40bb79):a0_0x346124['resolve'](_0x141a5e,_0x40bb79),_0x2a8d97=this['directoryAccessManager']['validateReadAccess'](_0x10e704,_0x314b60);if(!_0x2a8d97[_0x674763(0x1ba)])throw new Error('Read\x20access\x20denied:\x20'+_0x2a8d97[_0x674763(0x176)]);try{const _0xc0420c=await a0_0x19f56d[_0x674763(0x154)](_0x10e704);if(_0xc0420c[_0x674763(0x137)]>this[_0x674763(0x1c2)])throw new Error(_0x674763(0x135)+_0xc0420c['size']+'\x20bytes\x20(max\x20'+this[_0x674763(0x1c2)]+')');const _0xae7782=this[_0x674763(0x18a)](_0x10e704);if(!_0xae7782)return{'file':this[_0x674763(0x11e)]['createRelativePath'](_0x10e704,_0x314b60),'fullPath':_0x10e704,'language':_0x674763(0x1a3),'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'Unsupported\x20file\x20type'};const _0x2466ec=await a0_0x19f56d[_0x674763(0x167)](_0x10e704,_0x674763(0x14d)),_0x149bb3=this[_0x674763(0x172)]?this['computeContentHash'](_0x2466ec):null,_0x166e3c=this['useContentHash']?_0x10e704+':'+_0x149bb3:_0x10e704+':'+_0xc0420c[_0x674763(0x1e5)][_0x674763(0x1db)]();if(this[_0x674763(0x178)]&&this['analysisCache'][_0x674763(0x175)](_0x166e3c)){const _0x512872=this[_0x674763(0x186)][_0x674763(0x1a0)](_0x166e3c);if(Date[_0x674763(0x1d1)]()-_0x512872[_0x674763(0x1c1)]<this['cacheExpiry'])return this[_0x674763(0x188)]?.[_0x674763(0x157)]('Using\x20cached\x20analysis\x20result',{'file':_0x10e704}),this['metrics']['cacheHits']++,this[_0x674763(0x1b2)][_0x674763(0x1c8)]++,_0x512872[_0x674763(0x177)];}this[_0x674763(0x1b2)][_0x674763(0x14c)]++,this['metrics']['totalAnalyses']++;const _0xb3dfdd=await this['getAnalyzer'](_0xae7782);if(!_0xb3dfdd)return{'file':this[_0x674763(0x11e)]['createRelativePath'](_0x10e704,_0x314b60),'fullPath':_0x10e704,'language':_0xae7782,'errors':[],'warnings':[],'info':[],'skipped':!![],'skipReason':'No\x20analyzer\x20available\x20for\x20'+_0xae7782};const _0x1e6590=Date[_0x674763(0x1d1)](),_0x3769f7=await _0xb3dfdd[_0x674763(0x13f)](_0x10e704,_0x2466ec,{'workingDir':_0x141a5e,'accessConfig':_0x314b60,'framework':await this['detectFramework'](_0x141a5e,_0xae7782)}),_0x4f573c=Date[_0x674763(0x1d1)]()-_0x1e6590;this[_0x674763(0x1b2)]['totalAnalysisTime']+=_0x4f573c,this[_0x674763(0x1b2)][_0x674763(0x139)]++;const _0x152669={'file':this[_0x674763(0x11e)]['createRelativePath'](_0x10e704,_0x314b60),'fullPath':_0x10e704,'language':_0xae7782,'framework':await this[_0x674763(0x1dc)](_0x141a5e,_0xae7782),'errors':_0x3769f7[_0x674763(0x1c5)](_0x313396=>_0x313396['severity']===STATIC_ANALYSIS[_0x674763(0x151)][_0x674763(0x155)]),'warnings':_0x4138e8['includeWarnings']!==![]?_0x3769f7['filter'](_0x2ea8fb=>_0x2ea8fb['severity']===STATIC_ANALYSIS['SEVERITY'][_0x674763(0x19c)]):[],'info':_0x3769f7[_0x674763(0x1c5)](_0x2639fd=>_0x2639fd[_0x674763(0x153)]===STATIC_ANALYSIS[_0x674763(0x151)][_0x674763(0x112)]),'totalIssues':_0x3769f7['length'],'analyzed':!![],'timestamp':new Date()[_0x674763(0x11d)]()};return _0x4138e8[_0x674763(0x191)]&&_0x152669['errors']['length']>_0x4138e8['maxErrors']&&(_0x152669[_0x674763(0x128)]=_0x152669[_0x674763(0x128)]['slice'](0x0,_0x4138e8[_0x674763(0x191)]),_0x152669['truncated']=!![]),this[_0x674763(0x178)]&&this[_0x674763(0x186)][_0x674763(0x114)](_0x166e3c,{'result':_0x152669,'timestamp':Date[_0x674763(0x1d1)]()}),_0x152669;}catch(_0x227edc){throw new Error(_0x674763(0x1a5)+_0x40bb79+':\x20'+_0x227edc[_0x674763(0x19b)]);}}async[a0_0x1af86f(0x1e4)](_0x4fc735,_0x1c0ef6,_0xe85c99,_0x5bd045,_0x4e1bdf={}){const _0x457563=a0_0x1af86f,_0x1f2710=a0_0x346124[_0x457563(0x18b)](_0x4fc735)?a0_0x346124[_0x457563(0x129)](_0x4fc735):a0_0x346124['resolve'](_0xe85c99,_0x4fc735),_0x2b6fde=this[_0x457563(0x11e)]['validateReadAccess'](_0x1f2710,_0x5bd045);if(!_0x2b6fde['allowed'])throw new Error(_0x457563(0x1d6)+_0x2b6fde['reason']);const _0x3c2760=await this['findFiles'](_0x1f2710,_0x1c0ef6);if(_0x3c2760['length']>this[_0x457563(0x13d)])throw new Error(_0x457563(0x125)+_0x3c2760[_0x457563(0x1d9)]+'\x20(max\x20'+this['maxFilesPerBatch']+')');const _0x2be747=[];if(this['parallelAnalysis']&&_0x3c2760['length']>0x1){this['logger']?.[_0x457563(0x157)]('Using\x20parallel\x20analysis',{'totalFiles':_0x3c2760['length'],'batchSize':this['maxParallelFiles']});for(let _0x2ba395=0x0;_0x2ba395<_0x3c2760['length'];_0x2ba395+=this['maxParallelFiles']){const _0x50e1a5=_0x3c2760['slice'](_0x2ba395,_0x2ba395+this[_0x457563(0x1d8)]);this[_0x457563(0x1b2)]['parallelBatches']++;const _0x3ee22f={'completed':_0x2ba395,'total':_0x3c2760[_0x457563(0x1d9)],'percentage':Math['round'](_0x2ba395/_0x3c2760[_0x457563(0x1d9)]*0x64)};_0x4e1bdf[_0x457563(0x1af)]&&_0x4e1bdf[_0x457563(0x1af)](_0x3ee22f);this['logger']?.[_0x457563(0x157)]('Analyzing\x20batch',{'batch':Math[_0x457563(0x17c)](_0x2ba395/this[_0x457563(0x1d8)])+0x1,'filesInBatch':_0x50e1a5[_0x457563(0x1d9)],'progress':_0x3ee22f[_0x457563(0x194)]+'/'+_0x3ee22f[_0x457563(0x181)]});const _0x4f1dbc=_0x50e1a5['map'](async _0x5c846e=>{const _0x41b64d=_0x457563;try{const _0x103c25=await this['analyzeFile'](_0x5c846e,_0xe85c99,_0x5bd045,_0x4e1bdf);return _0x103c25;}catch(_0x384308){return this[_0x41b64d(0x188)]?.[_0x41b64d(0x1ca)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x5c846e,'error':_0x384308['message']}),{'file':this[_0x41b64d(0x11e)][_0x41b64d(0x111)](_0x5c846e,_0x5bd045),'fullPath':_0x5c846e,'error':_0x384308['message'],'success':![]};}}),_0x27049c=await Promise['all'](_0x4f1dbc);_0x2be747['push'](..._0x27049c[_0x457563(0x1c5)](_0x1e933b=>_0x1e933b!==null));}_0x4e1bdf['onProgress']&&_0x4e1bdf['onProgress']({'completed':_0x3c2760[_0x457563(0x1d9)],'total':_0x3c2760['length'],'percentage':0x64});}else for(const _0x8607a6 of _0x3c2760){try{const _0x5a0f5e=await this['analyzeFile'](_0x8607a6,_0xe85c99,_0x5bd045,_0x4e1bdf);_0x5a0f5e&&_0x2be747['push'](_0x5a0f5e);}catch(_0x1c4322){this['logger']?.[_0x457563(0x1ca)]('Failed\x20to\x20analyze\x20file\x20in\x20project',{'file':_0x8607a6,'error':_0x1c4322[_0x457563(0x19b)]}),_0x2be747['push']({'file':this['directoryAccessManager']['createRelativePath'](_0x8607a6,_0x5bd045),'fullPath':_0x8607a6,'error':_0x1c4322[_0x457563(0x19b)],'success':![]});}}return _0x2be747;}async[a0_0x1af86f(0x15e)](_0x5e4156,_0x2475d2,_0x278b9d,_0x3bd099={}){const _0xf4caeb=a0_0x1af86f,_0x3bcf60=a0_0x346124['isAbsolute'](_0x5e4156)?a0_0x346124[_0xf4caeb(0x129)](_0x5e4156):a0_0x346124[_0xf4caeb(0x1c9)](_0x2475d2,_0x5e4156),_0x9af703=this['directoryAccessManager'][_0xf4caeb(0x1de)](_0x3bcf60,_0x278b9d);if(!_0x9af703['allowed'])throw new Error(_0xf4caeb(0x1d6)+_0x9af703['reason']);if(_0x3bd099['writeFile']){const _0x9cf036=this['directoryAccessManager'][_0xf4caeb(0x18d)](_0x3bcf60,_0x278b9d);if(!_0x9cf036[_0xf4caeb(0x1ba)])throw new Error(_0xf4caeb(0x1bb)+_0x9cf036[_0xf4caeb(0x176)]);}try{const _0x1297fc=await a0_0x19f56d[_0xf4caeb(0x167)](_0x3bcf60,'utf-8'),_0x5e52fd=await this['getESLintAnalyzer'](),_0x5c26e4=await _0x5e52fd[_0xf4caeb(0x1cc)](_0x3bcf60,_0x1297fc,{'workingDir':_0x2475d2,'accessConfig':_0x278b9d,'framework':await this[_0xf4caeb(0x1dc)](_0x2475d2,this[_0xf4caeb(0x18a)](_0x3bcf60))});return _0x3bd099['writeFile']&&_0x5c26e4['fixed']&&(await a0_0x19f56d['writeFile'](_0x3bcf60,_0x5c26e4['content'],_0xf4caeb(0x14d)),this[_0xf4caeb(0x188)]?.[_0xf4caeb(0x192)](_0xf4caeb(0x1b7),{'file':_0x3bcf60})),{'file':this[_0xf4caeb(0x11e)]['createRelativePath'](_0x3bcf60,_0x278b9d),'fullPath':_0x3bcf60,'action':'fix','fixed':_0x5c26e4[_0xf4caeb(0x1be)],'fixedCount':_0x5c26e4[_0xf4caeb(0x164)],'remainingErrors':_0x5c26e4[_0xf4caeb(0x12b)],'remainingWarnings':_0x5c26e4['remainingWarnings'],'changes':_0x5c26e4[_0xf4caeb(0x132)],'written':!!(_0x3bd099['writeFile']&&_0x5c26e4[_0xf4caeb(0x1be)]),'preview':!_0x3bd099['writeFile']&&_0x5c26e4['fixed']?_0x5c26e4[_0xf4caeb(0x17b)]:undefined};}catch(_0x1459a4){throw new Error(_0xf4caeb(0x1e2)+_0x5e4156+':\x20'+_0x1459a4['message']);}}async['formatFile'](_0x43fade,_0x24da4a,_0x2ffaa2,_0x423fb6={}){const _0x3a2d16=a0_0x1af86f,_0x56163f=a0_0x346124['isAbsolute'](_0x43fade)?a0_0x346124['normalize'](_0x43fade):a0_0x346124['resolve'](_0x24da4a,_0x43fade),_0x1f1807=this[_0x3a2d16(0x11e)][_0x3a2d16(0x1de)](_0x56163f,_0x2ffaa2);if(!_0x1f1807[_0x3a2d16(0x1ba)])throw new Error(_0x3a2d16(0x1d6)+_0x1f1807[_0x3a2d16(0x176)]);if(_0x423fb6['writeFile']){const _0x10e686=this[_0x3a2d16(0x11e)]['validateWriteAccess'](_0x56163f,_0x2ffaa2);if(!_0x10e686[_0x3a2d16(0x1ba)])throw new Error(_0x3a2d16(0x1bb)+_0x10e686[_0x3a2d16(0x176)]);}try{const _0x18e3da=await a0_0x19f56d[_0x3a2d16(0x167)](_0x56163f,'utf-8'),_0xd14719=await this[_0x3a2d16(0x1e1)]();if(!_0xd14719['isSupported'](_0x56163f))return{'file':this[_0x3a2d16(0x11e)][_0x3a2d16(0x111)](_0x56163f,_0x2ffaa2),'fullPath':_0x56163f,'action':_0x3a2d16(0x149),'formatted':![],'skipped':!![],'skipReason':'File\x20type\x20not\x20supported\x20by\x20Prettier'};const _0x45f953=await _0xd14719[_0x3a2d16(0x149)](_0x56163f,_0x18e3da,{'workingDir':_0x24da4a,'accessConfig':_0x2ffaa2});return _0x423fb6[_0x3a2d16(0x15d)]&&_0x45f953['formatted']&&(await a0_0x19f56d[_0x3a2d16(0x15d)](_0x56163f,_0x45f953[_0x3a2d16(0x17b)],'utf-8'),this[_0x3a2d16(0x188)]?.['info'](_0x3a2d16(0x17f),{'file':_0x56163f})),{'file':this[_0x3a2d16(0x11e)][_0x3a2d16(0x111)](_0x56163f,_0x2ffaa2),'fullPath':_0x56163f,'action':'format','formatted':_0x45f953['formatted'],'linesChanged':_0x45f953['linesChanged'],'changes':_0x45f953[_0x3a2d16(0x132)],'written':!!(_0x423fb6[_0x3a2d16(0x15d)]&&_0x45f953[_0x3a2d16(0x1a2)]),'preview':!_0x423fb6['writeFile']&&_0x45f953[_0x3a2d16(0x1a2)]?_0x45f953['content']:undefined};}catch(_0x31905b){throw new Error('Failed\x20to\x20format\x20'+_0x43fade+':\x20'+_0x31905b['message']);}}async['securityScanFile'](_0x3a1c50,_0x158291,_0x21978a,_0x1ea9c1={}){const _0x59621c=a0_0x1af86f,_0x49ad5d=a0_0x346124[_0x59621c(0x18b)](_0x3a1c50)?a0_0x346124['normalize'](_0x3a1c50):a0_0x346124['resolve'](_0x158291,_0x3a1c50),_0x4cdc84=this[_0x59621c(0x11e)][_0x59621c(0x1de)](_0x49ad5d,_0x21978a);if(!_0x4cdc84['allowed'])throw new Error(_0x59621c(0x1d6)+_0x4cdc84['reason']);try{const _0x4778d5=await a0_0x19f56d[_0x59621c(0x154)](_0x49ad5d);if(_0x4778d5[_0x59621c(0x137)]>this[_0x59621c(0x1c2)])throw new Error(_0x59621c(0x135)+_0x4778d5['size']+'\x20bytes\x20(max\x20'+this['maxFileSize']+')');const _0x20b9ea=this[_0x59621c(0x18a)](_0x49ad5d);if(!_0x20b9ea||!['javascript',_0x59621c(0x133),_0x59621c(0x11f)][_0x59621c(0x1e9)](_0x20b9ea))return{'file':this['directoryAccessManager']['createRelativePath'](_0x49ad5d,_0x21978a),'fullPath':_0x49ad5d,'language':_0x20b9ea||'unknown','issues':[],'skipped':!![],'skipReason':'Security\x20scanning\x20only\x20supports\x20JavaScript,\x20TypeScript,\x20and\x20Python\x20files'};const _0x1a865a=await a0_0x19f56d['readFile'](_0x49ad5d,_0x59621c(0x14d)),_0x4f5603=await this['getSecurityAnalyzer'](),_0x57c6b3=await _0x4f5603[_0x59621c(0x13f)](_0x49ad5d,_0x1a865a,{'skipTestFiles':_0x1ea9c1['skipTestFiles']!==![]}),_0x11827c={'file':this[_0x59621c(0x11e)]['createRelativePath'](_0x49ad5d,_0x21978a),'fullPath':_0x49ad5d,'language':_0x20b9ea,'action':_0x59621c(0x174),'critical':_0x57c6b3['filter'](_0x570227=>_0x570227['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x57c6b3['filter'](_0x46ad08=>_0x46ad08[_0x59621c(0x153)]===STATIC_ANALYSIS['SEVERITY']['ERROR']),'warnings':_0x57c6b3['filter'](_0x47adb0=>_0x47adb0['severity']===STATIC_ANALYSIS[_0x59621c(0x151)][_0x59621c(0x19c)]),'info':_0x57c6b3['filter'](_0x27747c=>_0x27747c[_0x59621c(0x153)]===STATIC_ANALYSIS['SEVERITY']['INFO']),'totalIssues':_0x57c6b3[_0x59621c(0x1d9)],'analyzed':!![],'scannersUsed':_0x57c6b3[_0x59621c(0x1a4)](_0x49add1=>_0x49add1['scanner'])['filter']((_0x59a6ee,_0x3e1eb1,_0x190a48)=>_0x190a48[_0x59621c(0x1b8)](_0x59a6ee)===_0x3e1eb1),'timestamp':new Date()['toISOString']()};return _0x11827c;}catch(_0x4c54ed){throw new Error('Failed\x20to\x20security\x20scan\x20'+_0x3a1c50+':\x20'+_0x4c54ed['message']);}}async['securityScanProject'](_0x94750b,_0x2ce129,_0x53aa92,_0x2852a4,_0xfe5431={}){const _0x5ee1de=a0_0x1af86f,_0x8f1d9e=a0_0x346124[_0x5ee1de(0x18b)](_0x94750b)?a0_0x346124['normalize'](_0x94750b):a0_0x346124[_0x5ee1de(0x1c9)](_0x53aa92,_0x94750b),_0x5baece=this[_0x5ee1de(0x11e)][_0x5ee1de(0x1de)](_0x8f1d9e,_0x2852a4);if(!_0x5baece[_0x5ee1de(0x1ba)])throw new Error(_0x5ee1de(0x1d6)+_0x5baece['reason']);const _0x546488=await this['getSecurityAnalyzer'](),_0x57ad9a=await _0x546488[_0x5ee1de(0x1e4)](_0x8f1d9e,_0x5ee1de(0x1ea),_0xfe5431),_0x572458=_0x2ce129||_0x5ee1de(0x1da),_0x53ab6e=await this[_0x5ee1de(0x189)](_0x8f1d9e,_0x572458);if(_0x53ab6e[_0x5ee1de(0x1d9)]>this['maxFilesPerBatch'])throw new Error(_0x5ee1de(0x125)+_0x53ab6e[_0x5ee1de(0x1d9)]+_0x5ee1de(0x15a)+this[_0x5ee1de(0x13d)]+')');const _0x3aeffd=[];if(this[_0x5ee1de(0x168)]&&_0x53ab6e[_0x5ee1de(0x1d9)]>0x1){this['logger']?.[_0x5ee1de(0x157)]('Using\x20parallel\x20security\x20scanning',{'totalFiles':_0x53ab6e['length'],'batchSize':this[_0x5ee1de(0x1d8)]});for(let _0x4f48d1=0x0;_0x4f48d1<_0x53ab6e[_0x5ee1de(0x1d9)];_0x4f48d1+=this[_0x5ee1de(0x1d8)]){const _0x4e8a1c=_0x53ab6e[_0x5ee1de(0x17d)](_0x4f48d1,_0x4f48d1+this['maxParallelFiles']);_0xfe5431[_0x5ee1de(0x1af)]&&_0xfe5431['onProgress']({'completed':_0x4f48d1,'total':_0x53ab6e[_0x5ee1de(0x1d9)],'percentage':Math[_0x5ee1de(0x12f)](_0x4f48d1/_0x53ab6e[_0x5ee1de(0x1d9)]*0x64)});const _0xccd4c0=_0x4e8a1c['map'](async _0x5ce187=>{const _0x1680d1=_0x5ee1de;try{return await this[_0x1680d1(0x142)](_0x5ce187,_0x53aa92,_0x2852a4,_0xfe5431);}catch(_0xefb9df){return this[_0x1680d1(0x188)]?.[_0x1680d1(0x1ca)](_0x1680d1(0x130),{'file':_0x5ce187,'error':_0xefb9df[_0x1680d1(0x19b)]}),{'file':this['directoryAccessManager'][_0x1680d1(0x111)](_0x5ce187,_0x2852a4),'fullPath':_0x5ce187,'error':_0xefb9df[_0x1680d1(0x19b)],'success':![]};}}),_0x72b5b2=await Promise[_0x5ee1de(0x1a6)](_0xccd4c0);_0x3aeffd['push'](..._0x72b5b2[_0x5ee1de(0x1c5)](_0x185aaf=>_0x185aaf!==null));}_0xfe5431['onProgress']&&_0xfe5431[_0x5ee1de(0x1af)]({'completed':_0x53ab6e['length'],'total':_0x53ab6e['length'],'percentage':0x64});}else for(const _0x4d080f of _0x53ab6e){try{const _0x5d497e=await this[_0x5ee1de(0x142)](_0x4d080f,_0x53aa92,_0x2852a4,_0xfe5431);_0x5d497e&&_0x3aeffd['push'](_0x5d497e);}catch(_0x4c36db){this['logger']?.['warn']('Failed\x20to\x20security\x20scan\x20file\x20in\x20project',{'file':_0x4d080f,'error':_0x4c36db['message']}),_0x3aeffd[_0x5ee1de(0x16d)]({'file':this[_0x5ee1de(0x11e)][_0x5ee1de(0x111)](_0x4d080f,_0x2852a4),'fullPath':_0x4d080f,'error':_0x4c36db[_0x5ee1de(0x19b)],'success':![]});}}return _0x57ad9a['length']>0x0&&_0x3aeffd['push']({'file':a0_0x346124['join'](_0x8f1d9e,_0x5ee1de(0x1a1)),'fullPath':a0_0x346124[_0x5ee1de(0x161)](_0x8f1d9e,_0x5ee1de(0x1a1)),'action':_0x5ee1de(0x163),'critical':_0x57ad9a['filter'](_0x224650=>_0x224650['severity']===STATIC_ANALYSIS[_0x5ee1de(0x151)]['CRITICAL']),'errors':_0x57ad9a[_0x5ee1de(0x1c5)](_0x12b488=>_0x12b488['severity']===STATIC_ANALYSIS['SEVERITY'][_0x5ee1de(0x155)]),'warnings':_0x57ad9a[_0x5ee1de(0x1c5)](_0xba0983=>_0xba0983[_0x5ee1de(0x153)]===STATIC_ANALYSIS['SEVERITY'][_0x5ee1de(0x19c)]),'info':_0x57ad9a[_0x5ee1de(0x1c5)](_0x8e66f0=>_0x8e66f0[_0x5ee1de(0x153)]===STATIC_ANALYSIS[_0x5ee1de(0x151)]['INFO']),'totalIssues':_0x57ad9a['length'],'analyzed':!![],'scannersUsed':['npm-audit'],'timestamp':new Date()[_0x5ee1de(0x11d)]()}),_0x3aeffd;}async[a0_0x1af86f(0x190)](_0x1d7122,_0x5b4233,_0x5c8846,_0x184a14={}){const _0x1f4aa7=a0_0x1af86f,_0x513480=a0_0x346124['isAbsolute'](_0x1d7122)?a0_0x346124['normalize'](_0x1d7122):a0_0x346124[_0x1f4aa7(0x1c9)](_0x5b4233,_0x1d7122),_0x34c744=this[_0x1f4aa7(0x11e)]['validateReadAccess'](_0x513480,_0x5c8846);if(!_0x34c744[_0x1f4aa7(0x1ba)])throw new Error(_0x1f4aa7(0x1d6)+_0x34c744[_0x1f4aa7(0x176)]);try{const _0x550f9b=await a0_0x19f56d['stat'](_0x513480);if(_0x550f9b[_0x1f4aa7(0x137)]>this['maxFileSize'])throw new Error(_0x1f4aa7(0x135)+_0x550f9b['size']+_0x1f4aa7(0x19a)+this[_0x1f4aa7(0x1c2)]+')');const _0x4b4f3e=await this['getConfigValidator'](),_0x211416=await _0x4b4f3e[_0x1f4aa7(0x1b1)](_0x513480,_0x184a14),_0x75faaf={'file':this['directoryAccessManager']['createRelativePath'](_0x513480,_0x5c8846),'fullPath':_0x513480,'action':'validate-config','critical':_0x211416[_0x1f4aa7(0x1c5)](_0x5c0f5a=>_0x5c0f5a['severity']===STATIC_ANALYSIS['SEVERITY']['CRITICAL']),'errors':_0x211416[_0x1f4aa7(0x1c5)](_0x59fc58=>_0x59fc58[_0x1f4aa7(0x153)]===STATIC_ANALYSIS[_0x1f4aa7(0x151)]['ERROR']),'warnings':_0x211416[_0x1f4aa7(0x1c5)](_0x4a805b=>_0x4a805b['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING']),'info':_0x211416['filter'](_0x387a53=>_0x387a53['severity']===STATIC_ANALYSIS[_0x1f4aa7(0x151)][_0x1f4aa7(0x112)]),'totalIssues':_0x211416['length'],'analyzed':!![],'validatorsUsed':_0x211416['map'](_0x4082bc=>_0x4082bc['validator'])['filter']((_0x312496,_0x14a100,_0x1b5d75)=>_0x1b5d75[_0x1f4aa7(0x1b8)](_0x312496)===_0x14a100),'timestamp':new Date()[_0x1f4aa7(0x11d)]()};return _0x75faaf;}catch(_0x3e9d4b){throw new Error(_0x1f4aa7(0x158)+_0x1d7122+':\x20'+_0x3e9d4b[_0x1f4aa7(0x19b)]);}}async['validateConfigDirectory'](_0x15e1b7,_0x3f7688,_0x4c8a88,_0x364d1c={}){const _0x207e2d=a0_0x1af86f,_0x587925=a0_0x346124['isAbsolute'](_0x15e1b7)?a0_0x346124['normalize'](_0x15e1b7):a0_0x346124['resolve'](_0x3f7688,_0x15e1b7),_0x399274=this['directoryAccessManager'][_0x207e2d(0x1de)](_0x587925,_0x4c8a88);if(!_0x399274[_0x207e2d(0x1ba)])throw new Error(_0x207e2d(0x1d6)+_0x399274[_0x207e2d(0x176)]);const _0x15efbe=await this[_0x207e2d(0x162)](_0x587925);if(_0x15efbe['length']>this['maxFilesPerBatch'])throw new Error(_0x207e2d(0x11b)+_0x15efbe['length']+_0x207e2d(0x15a)+this[_0x207e2d(0x13d)]+')');const _0x7385ec=[];for(const _0x2f5602 of _0x15efbe){try{const _0x34342e=await this[_0x207e2d(0x190)](_0x2f5602,_0x3f7688,_0x4c8a88,_0x364d1c);_0x34342e&&_0x7385ec['push'](_0x34342e);}catch(_0x5b41ce){this[_0x207e2d(0x188)]?.[_0x207e2d(0x1ca)]('Failed\x20to\x20validate\x20config\x20file',{'file':_0x2f5602,'error':_0x5b41ce[_0x207e2d(0x19b)]}),_0x7385ec['push']({'file':this[_0x207e2d(0x11e)][_0x207e2d(0x111)](_0x2f5602,_0x4c8a88),'fullPath':_0x2f5602,'error':_0x5b41ce['message'],'success':![]});}}return _0x7385ec;}async['findConfigFiles'](_0x5c08ca){const _0x358876=a0_0x1af86f,_0x5d9433=[],_0x55583e=[_0x358876(0x1a1),'tsconfig.json','Dockerfile','docker-compose.yml','docker-compose.yaml','.env','.env.example',_0x358876(0x141),'.eslintrc.json',_0x358876(0x1b4),'.prettierrc.json'],_0x5df63d=['.yml','.yaml','.json',_0x358876(0x170),'.tfvars'],_0x5a9620=async _0x15b11a=>{const _0x233135=_0x358876,_0x36171c=await a0_0x19f56d['readdir'](_0x15b11a,{'withFileTypes':!![]});for(const _0x395690 of _0x36171c){const _0x53126f=a0_0x346124[_0x233135(0x161)](_0x15b11a,_0x395690['name']);if(_0x395690['isDirectory']()){if(_0x395690['name']===_0x233135(0x1d4)||_0x395690['name']==='kubernetes'||_0x395690[_0x233135(0x152)]===_0x233135(0x1e7)||_0x395690[_0x233135(0x152)]===_0x233135(0x136))await _0x5a9620(_0x53126f);else{if(!['node_modules',_0x233135(0x196),'dist',_0x233135(0x1df)]['includes'](_0x395690['name']))continue;}}else{if(_0x395690['isFile']()){if(_0x55583e['includes'](_0x395690[_0x233135(0x152)]))_0x5d9433[_0x233135(0x16d)](_0x53126f);else{const _0x1c3133=a0_0x346124['extname'](_0x395690[_0x233135(0x152)])[_0x233135(0x118)]();if(_0x5df63d[_0x233135(0x1e9)](_0x1c3133)){const _0x48819a=a0_0x346124['basename'](a0_0x346124['dirname'](_0x53126f));(_0x48819a==='kubernetes'||_0x48819a==='k8s'||_0x48819a===_0x233135(0x136)||_0x48819a==='workflows')&&_0x5d9433[_0x233135(0x16d)](_0x53126f);}}}}}};return await _0x5a9620(_0x5c08ca),_0x5d9433;}[a0_0x1af86f(0x18a)](_0x37f535){const _0x38e13b=a0_0x1af86f,_0x2ced07=a0_0x346124['extname'](_0x37f535)[_0x38e13b(0x118)]();return STATIC_ANALYSIS[_0x38e13b(0x146)][_0x2ced07]||null;}async[a0_0x1af86f(0x1dc)](_0x420a6b,_0x4cd05f){const _0x3da636=a0_0x1af86f;try{if(_0x4cd05f===STATIC_ANALYSIS[_0x3da636(0x19d)]['JAVASCRIPT']||_0x4cd05f===STATIC_ANALYSIS[_0x3da636(0x19d)]['TYPESCRIPT'])return await this[_0x3da636(0x15b)](_0x420a6b);if(_0x4cd05f===STATIC_ANALYSIS['LANGUAGE']['PYTHON'])return await this['detectPythonFramework'](_0x420a6b);return null;}catch(_0x4356d8){return this['logger']?.['debug']('Framework\x20detection\x20failed',{'error':_0x4356d8['message']}),null;}}async[a0_0x1af86f(0x15b)](_0x4406ea){const _0x5d923f=a0_0x1af86f;try{const _0x2946ed=a0_0x346124[_0x5d923f(0x161)](_0x4406ea,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x5d923f(0x19e)]),_0x26880f=await a0_0x19f56d['readFile'](_0x2946ed,_0x5d923f(0x14d)),_0x1d82fc=JSON[_0x5d923f(0x13b)](_0x26880f),_0x2869ac={..._0x1d82fc[_0x5d923f(0x1d3)],..._0x1d82fc['devDependencies']};for(const [_0x21b974,_0x5939fd]of Object['entries'](STATIC_ANALYSIS['JS_FRAMEWORKS'])){if(_0x2869ac[_0x5939fd])return _0x21b974['toLowerCase']();}return null;}catch(_0x13f9f5){return null;}}async['detectPythonFramework'](_0x40d818){const _0x4f85ab=a0_0x1af86f;try{const _0x36779e=a0_0x346124[_0x4f85ab(0x161)](_0x40d818,STATIC_ANALYSIS['FRAMEWORK_MANIFESTS'][_0x4f85ab(0x1bc)]),_0x10efea=await a0_0x19f56d['readFile'](_0x36779e,_0x4f85ab(0x14d));for(const [_0x446383,_0x7684b8]of Object[_0x4f85ab(0x184)](STATIC_ANALYSIS[_0x4f85ab(0x159)])){if(_0x10efea[_0x4f85ab(0x118)]()[_0x4f85ab(0x1e9)](_0x7684b8))return _0x446383[_0x4f85ab(0x118)]();}return null;}catch(_0x437fb6){try{const _0x5168ad=a0_0x346124[_0x4f85ab(0x161)](_0x40d818,STATIC_ANALYSIS[_0x4f85ab(0x173)][_0x4f85ab(0x1ab)]),_0x12bbdc=await a0_0x19f56d['readFile'](_0x5168ad,'utf-8');for(const [_0x5ee90c,_0x4f804c]of Object['entries'](STATIC_ANALYSIS[_0x4f85ab(0x159)])){if(_0x12bbdc['toLowerCase']()[_0x4f85ab(0x1e9)](_0x4f804c))return _0x5ee90c[_0x4f85ab(0x118)]();}}catch{}return null;}}async['findFiles'](_0x36c0c9,_0x5b4bb7){const _0x3e2879=[],_0xe4337d=_0x5b4bb7||'**/*.{js,jsx,mjs,cjs,ts,tsx,py,css,scss,sass,less}',_0x3158ac=_0x449310=>{const _0x1bea3d=a0_0x224a,_0x17eeda=[],_0x3c4037=_0x449310[_0x1bea3d(0x199)](/\*\.\{([^}]+)\}/);if(_0x3c4037){const _0x5b5e11=_0x3c4037[0x1][_0x1bea3d(0x121)](',')['map'](_0x16f2f1=>_0x16f2f1[_0x1bea3d(0x14a)]());_0x5b5e11['forEach'](_0x2fef8a=>_0x17eeda['push'](_0x2fef8a[_0x1bea3d(0x18f)]('.')?_0x2fef8a:'.'+_0x2fef8a));}else{const _0x36b43c=_0x449310['match'](/\*\.([a-z]+)$/i);if(_0x36b43c){const _0x4d68de=_0x36b43c[0x1];_0x17eeda['push'](_0x4d68de['startsWith']('.')?_0x4d68de:'.'+_0x4d68de);}}if(_0x17eeda['length']===0x0)return null;return _0x17eeda;},_0x36956b=_0x3158ac(_0xe4337d),_0x5c8169=async _0x14ce92=>{const _0x78c2ee=a0_0x224a,_0x3b2ee2=await a0_0x19f56d[_0x78c2ee(0x15c)](_0x14ce92,{'withFileTypes':!![]});for(const _0xe47086 of _0x3b2ee2){const _0x337fe2=a0_0x346124[_0x78c2ee(0x161)](_0x14ce92,_0xe47086[_0x78c2ee(0x152)]);if(_0xe47086['isDirectory']())![_0x78c2ee(0x124),'.git','dist',_0x78c2ee(0x1df),_0x78c2ee(0x138),'.venv',_0x78c2ee(0x144)]['includes'](_0xe47086[_0x78c2ee(0x152)])&&await _0x5c8169(_0x337fe2);else{if(_0xe47086['isFile']()){const _0x15ce0d=a0_0x346124[_0x78c2ee(0x13c)](_0xe47086[_0x78c2ee(0x152)])['toLowerCase']();STATIC_ANALYSIS['EXTENSION_TO_LANGUAGE'][_0x15ce0d]&&((_0x36956b===null||_0x36956b['includes'](_0x15ce0d))&&_0x3e2879['push'](_0x337fe2));}}}};return await _0x5c8169(_0x36c0c9),_0x3e2879;}async['getAnalyzer'](_0xd068ef){const _0x49df5d=a0_0x1af86f;try{if(_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)]['JAVASCRIPT']){if(!this[_0x49df5d(0x1ac)]['javascript']){const {default:_0x5367a1}=await import(_0x49df5d(0x193));this[_0x49df5d(0x1ac)][_0x49df5d(0x1ea)]=new _0x5367a1(this['logger']);}return this['analyzers'][_0x49df5d(0x1ea)];}if(_0xd068ef===STATIC_ANALYSIS['LANGUAGE'][_0x49df5d(0x120)]){if(!this[_0x49df5d(0x1ac)][_0x49df5d(0x133)]){const {default:_0x305f71}=await import(_0x49df5d(0x171));this[_0x49df5d(0x1ac)]['typescript']=new _0x305f71(this['logger']);}return this[_0x49df5d(0x1ac)][_0x49df5d(0x133)];}if(_0xd068ef===STATIC_ANALYSIS['LANGUAGE'][_0x49df5d(0x1bc)]){if(!this['analyzers'][_0x49df5d(0x11f)]){const {default:_0x48ac73}=await import(_0x49df5d(0x1b0));this[_0x49df5d(0x1ac)][_0x49df5d(0x11f)]=new _0x48ac73(this[_0x49df5d(0x188)]);}return this[_0x49df5d(0x1ac)]['python'];}if(_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)][_0x49df5d(0x12d)]||_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)]['SCSS']||_0xd068ef===STATIC_ANALYSIS[_0x49df5d(0x19d)][_0x49df5d(0x183)]){if(!this[_0x49df5d(0x1ac)]['css']){const {default:_0xd5fe88}=await import(_0x49df5d(0x197));this[_0x49df5d(0x1ac)]['css']=new _0xd5fe88(this[_0x49df5d(0x188)]);}return this['analyzers'][_0x49df5d(0x1b6)];}return null;}catch(_0xc88b91){return this['logger']?.['error']('Failed\x20to\x20load\x20analyzer',{'language':_0xd068ef,'error':_0xc88b91['message']}),null;}}async[a0_0x1af86f(0x1a7)](){const _0x4f765c=a0_0x1af86f;if(!this[_0x4f765c(0x1ac)][_0x4f765c(0x169)]){const {default:_0x1b402b}=await import(_0x4f765c(0x166));this['analyzers'][_0x4f765c(0x169)]=new _0x1b402b(this[_0x4f765c(0x188)]);}return this[_0x4f765c(0x1ac)]['eslint'];}async['getPrettierFormatter'](){const _0x542042=a0_0x1af86f;if(!this[_0x542042(0x115)]['prettier']){const {default:_0x422857}=await import('../analyzers/PrettierFormatter.js');this[_0x542042(0x115)]['prettier']=new _0x422857(this[_0x542042(0x188)]);}return this['formatters'][_0x542042(0x19f)];}async['getSecurityAnalyzer'](){const _0x172706=a0_0x1af86f;if(!this[_0x172706(0x1ac)][_0x172706(0x1ad)]){const {default:_0x18d262}=await import('../analyzers/SecurityAnalyzer.js');this['analyzers']['security']=new _0x18d262(this['logger']);}return this['analyzers'][_0x172706(0x1ad)];}async['getConfigValidator'](){const _0x3b6bc3=a0_0x1af86f;if(!this[_0x3b6bc3(0x1ac)][_0x3b6bc3(0x1cf)]){const {default:_0xc8e95d}=await import(_0x3b6bc3(0x1a9));this[_0x3b6bc3(0x1ac)][_0x3b6bc3(0x1cf)]=new _0xc8e95d(this['logger']);}return this[_0x3b6bc3(0x1ac)][_0x3b6bc3(0x1cf)];}['updateSummary'](_0x27ac1d,_0x571279){const _0xa47436=a0_0x1af86f;if(_0x571279['analyzed']){_0x27ac1d['totalFiles']++;const _0x435fbb=_0x571279['critical']?.[_0xa47436(0x1d9)]||0x0,_0x258f5c=_0x571279[_0xa47436(0x128)]?.['length']||0x0,_0x13e539=_0x571279[_0xa47436(0x145)]?.[_0xa47436(0x1d9)]||0x0,_0x5ae8a3=_0x571279[_0xa47436(0x192)]?.[_0xa47436(0x1d9)]||0x0;_0x27ac1d[_0xa47436(0x113)]===undefined&&(_0x27ac1d[_0xa47436(0x113)]=0x0);_0x27ac1d['totalCritical']+=_0x435fbb,_0x27ac1d[_0xa47436(0x1b3)]+=_0x258f5c,_0x27ac1d['totalWarnings']+=_0x13e539,_0x27ac1d['totalInfo']+=_0x5ae8a3;(_0x435fbb>0x0||_0x258f5c>0x0)&&_0x27ac1d['filesWithErrors']++;_0x571279[_0xa47436(0x127)]&&(_0x27ac1d['filesByLanguage'][_0x571279[_0xa47436(0x127)]]=(_0x27ac1d[_0xa47436(0x187)][_0x571279['language']]||0x0)+0x1);const _0x27d33b=[..._0x571279[_0xa47436(0x1e8)]||[],..._0x571279['errors']||[],..._0x571279['warnings']||[]];for(const _0x23963e of _0x27d33b){_0x23963e[_0xa47436(0x11c)]&&(_0x27ac1d['errorsByCategory'][_0x23963e[_0xa47436(0x11c)]]=(_0x27ac1d['errorsByCategory'][_0x23963e[_0xa47436(0x11c)]]||0x0)+0x1);}}}[a0_0x1af86f(0x195)](_0x1ea077){const _0x417ec7=a0_0x1af86f;return a0_0xfb82e9[_0x417ec7(0x117)]('sha256')['update'](_0x1ea077)[_0x417ec7(0x110)]('hex')['substring'](0x0,0x10);}[a0_0x1af86f(0x1b9)](){const _0x2157eb=a0_0x1af86f,_0x27f333=this['metrics'][_0x2157eb(0x1c8)]>0x0?this[_0x2157eb(0x1b2)][_0x2157eb(0x143)]/this[_0x2157eb(0x1b2)]['totalAnalyses']*0x64:0x0,_0xca647=this[_0x2157eb(0x1b2)][_0x2157eb(0x139)]>0x0?this[_0x2157eb(0x1b2)]['totalAnalysisTime']/this[_0x2157eb(0x1b2)]['filesAnalyzed']:0x0;return{...this[_0x2157eb(0x1b2)],'cacheHitRate':Math[_0x2157eb(0x12f)](_0x27f333*0xa)/0xa,'averageAnalysisTime':Math[_0x2157eb(0x12f)](_0xca647),'cacheSize':this[_0x2157eb(0x186)]['size']};}['resetPerformanceMetrics'](){this['metrics']={'totalAnalyses':0x0,'cacheHits':0x0,'cacheMisses':0x0,'totalAnalysisTime':0x0,'filesAnalyzed':0x0,'parallelBatches':0x0};}['clearCache'](){const _0x31790a=a0_0x1af86f;this[_0x31790a(0x186)]['clear'](),this[_0x31790a(0x188)]?.['debug'](_0x31790a(0x12a));}[a0_0x1af86f(0x12e)](){const _0x5d94ae=a0_0x1af86f;return['analyze','analyze-project','fix',_0x5d94ae(0x149),'security-scan','security-scan-project','validate-config','validate-config-directory'];}[a0_0x1af86f(0x116)](){const _0x2c88f1=a0_0x1af86f;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this[_0x2c88f1(0x12e)]()},'filePath':{'type':'string'},'directory':{'type':'string'},'pattern':{'type':_0x2c88f1(0x12c)},'includeWarnings':{'type':'boolean'},'maxErrors':{'type':'number'}},'required':[_0x2c88f1(0x10f)]}}},'required':[_0x2c88f1(0x123)]};}}export default StaticAnalysisTool;function a0_0x2d8d(){const _0x394ae1=['oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9YihzHBgLKyxrLlwnVBMzPzY1KAxjLy3rVCNK','Bwf4ugfYywXSzwXgAwXLCW','BgvUz3rO','kIOVkI57ANmSANn4lg1QCYXJANmSDhmSDhn4lhb5Fq','z2v0vgLTzq','zgv0zwn0rNjHBwv3B3jR','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigfUywX5EMu','DMfSAwrHDgvszwfKqwnJzxnZ','yNvPBgq','y2fJAgvfEhbPCNK','z2v0uhjLDhrPzxjgB3jTyxr0zxi','rMfPBgvKihrVigzPEca','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','yw5HBhL6zvbYB2PLy3q','BxrPBwu','tufyx0zjtevtx1bfuL9cqvrdsa','AZHZ','y3jPDgLJywW','Aw5JBhvKzxm','AMf2yxnJCMLWDa','nuPPvMDNDG','DhLWzq','zgLNzxn0','y3jLyxrLuMvSyxrPDMvqyxrO','su5gtW','Dg90ywXdCML0AwnHBa','C2v0','zM9YBwf0DgvYCW','z2v0ugfYyw1LDgvYu2nOzw1H','y3jLyxrLsgfZAa','Dg9mB3DLCKnHC2u','zxHLyW','C3vIC3rYAw5N','vg9Vig1HBNKGy29UzMLNigzPBgvZoIa','y2f0zwDVCNK','Dg9ju09tDhjPBMC','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','ChL0Ag9U','vfLqrvnduKLqva','C3bSAxq','DMfSAwrHDgvdB25MAwDeAxjLy3rVCNK','ywn0Aw9UCW','BM9Kzv9TB2r1BgvZ','vg9Vig1HBNKGzMLSzxm6ia','zMLSzxm','BgfUz3vHz2u','zxjYB3jZ','BM9YBwfSAxPL','qw5HBhLZAxmGy2fJAguGy2XLyxjLza','CMvTywLUAw5NrxjYB3jZ','C3rYAw5N','q1nt','z2v0u3vWCg9YDgvKqwn0Aw9UCW','CM91BMq','rMfPBgvKihrVihnLy3vYAxr5ihnJyw4GzMLSzsbPBIbWCM9Qzwn0','DMfSAwrHDguTy29UzMLN','y2HHBMDLCW','DhLWzxnJCMLWDa','y3DK','rMLSzsb0B28GBgfYz2u6ia','DgvYCMfMB3jT','C2L6zq','x19WEwnHy2HLx18','zMLSzxnbBMfSExPLza','CgfYC2vbDhrYAwj1DgvZ','CgfYC2u','zxH0BMfTzq','Bwf4rMLSzxnqzxjcyxrJAa','zxjYB3i','yw5HBhL6zq','oIb0ExbLigLZihjLCxvPCMvK','lMvZBgLUDhjJlMPZ','C2vJDxjPDhLty2fUrMLSzq','y2fJAgviAxrZ','DMvUDG','D2fYBMLUz3m','rvHuru5tsu9ox1rpx0XbtKDvquDf','nZC5mZaZn3DYu0ThAa','u3rHDgLJqw5HBhLZAxmGDg9VBcbWyxjZAw5NihbHCMfTzxrLCNm','zM9YBwf0','DhjPBq','zgLYzwn0B3j5','y2fJAgvnAxnZzxm','DxrMltG','C2vJDxjPDhKTC2nHBI1WCM9Qzwn0','ndm2ntaZmMzZufv1vq','zM9YBwf0rMLSzq','u0vwrvjjvfK','BMfTzq','C2v2zxjPDhK','C3rHDa','rvjst1i','mJaZAeLKrKzy','zgvIDwC','rMfPBgvKihrVihzHBgLKyxrLignVBMzPzYa','ufLuse9ox0zsqu1fv09ss1m','icHTyxGG','zgv0zwn0sLngCMfTzxDVCMS','CMvHzgrPCG','D3jPDgvgAwXL','zML4rMLSzq','C3vTBwfYEq','qwn0Aw9Uia','AM9PBG','zMLUzenVBMzPz0zPBgvZ','zgvWzw5Kzw5JEs1Zy2fU','zML4zwrdB3vUDa','ihnLy29UzhmklsbpBMX5ihn1ChbVCNrZigXHBMD1ywDLCYb3AxrOigj1AwX0lwLUigfUywX5EMvYCWOGicaG','lI4Vyw5HBhL6zxjZl0vttgLUDefUywX5EMvYlMPZ','CMvHzezPBgu','CgfYywXSzwXbBMfSExnPCW','zxnSAw50','ntaXmhHLAe9JEq','C2TPCc10zxn0lwzPBgvZ','DMfSAwrHDguTy29UzMLNlwrPCMvJDg9YEq','ChvZAa','mtC3nZz4sMzLqNC','Bwf4lwvYCM9YCW','lNrM','lI4Vyw5HBhL6zxjZl1r5Cgvty3jPChrbBMfSExPLCI5QCW','DxnLq29UDgvUDeHHC2G','rLjbtuvxt1jlx01btKLgrvnuuW','C2vJDxjPDhKTC2nHBG','AgfZ','CMvHC29U','CMvZDwX0','zw5HyMXLq2fJAgu','C3rHDgLJyw5HBhLZAxm','u3rHDgLJigfUywX5C2LZigfJDgLVBIbMywLSzwq','y29UDgvUDa','zMXVB3i','C2XPy2u','C2vJDxjPDhLty2fUuhjVAMvJDa','rMLSzsbMB3jTyxr0zwqGyw5KihDYAxr0zw4','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','Dg90ywW','Aw5JBhvKzvDHCM5PBMDZ','tevtuW','zw50CMLLCW','mta2ndu0odjsr0nvBMC','yw5HBhLZAxndywnOzq','zMLSzxncEuXHBMD1ywDL','Bg9Nz2vY','zMLUzezPBgvZ','zgv0zwn0tgfUz3vHz2u','AxnbyNnVBhv0zq','Aw5JBhvKzs13yxjUAw5NCW','DMfSAwrHDgvxCML0zufJy2vZCW','zMLSzs1WyxrO','C3rHCNrZv2L0Aa','DMfSAwrHDgvdB25MAwDgAwXL','Bwf4rxjYB3jZ','Aw5MBW','lI4Vyw5HBhL6zxjZl0PHDMfty3jPChrbBMfSExPLCI5QCW','y29TCgXLDgvK','y29TChv0zunVBNrLBNriyxnO','lMDPDa','lI4Vyw5HBhL6zxjZl0ntu0fUywX5EMvYlMPZ','yw5HBhL6zuzPBgu','Bwf0y2G','igj5DgvZicHTyxGG','BwvZC2fNzq','v0fstKLorW','tefor1vbr0u','sKfwqvnduKLqva','ChjLDhrPzxi','z2v0','CgfJA2fNzs5QC29U','zM9YBwf0DgvK','Dw5RBM93BG','BwfW','rMfPBgvKihrVigfUywX5EMuG','ywXS','z2v0rvnmAw50qw5HBhL6zxi','D3jPDguTzMLSzq','lI4Vyw5HBhL6zxjZl0nVBMzPz1zHBgLKyxrVCI5QCW','DxbKyxrLu3vTBwfYEq','ufLuse9ox1bprvrswq','yw5HBhL6zxjZ','C2vJDxjPDhK','yw5HBhL6zs1WCM9Qzwn0','B25qCM9NCMvZCW','lI4Vyw5HBhL6zxjZl1b5DgHVBKfUywX5EMvYlMPZ','DMfSAwrHDgu','Bwv0CMLJCW','Dg90ywXfCNjVCNm','lNbYzxr0AwvYCMm','nZGXodGXq01my3DQ','y3nZ','rMLSzsbMAxHLzcbHBMqGD3jPDhrLBG','Aw5KzxHpzG','z2v0ugvYzM9YBwfUy2vnzxrYAwnZ','ywXSB3DLza','v3jPDguGywnJzxnZigrLBMLLzdOG','ufLuse9o','vw5RBM93BIbHy3rPB24GDhLWztOG','zML4zwq','nJq1nJbbru1kAK4','qu5btfLtsvnFveLnru9vva','DgLTzxn0yw1W','Bwf4rMLSzvnPEMu','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','mteYmdKZBhvKrKzd','zMLSDgvY','oIbMAwXLlxbHDgGGAxmGCMvXDwLYzwqGzM9YigzPEa','Dhj1zq','Dg90ywXbBMfSExnLCW','CMvZB2X2zq','D2fYBG','zMLSzvbHDgG','zML4','ru5bqKXfx0nbq0Hf','ugfYC2vKifn0yxrPy0fUywX5C2LZihrVB2WGCgfYyw1LDgvYCW','y29UzMLN','CgfYC2vqyxjHBwv0zxjZ','BM93','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','zgvWzw5Kzw5JAwvZ','lMDPDgH1yG','mM9XB0D5qG','uMvHzcbHy2nLC3mGzgvUAwvKoIa'];a0_0x2d8d=function(){return _0x394ae1;};return a0_0x2d8d();}
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;