@loxia-labs/loxia-autopilot-one 1.0.11 → 1.0.13
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.
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -2
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -0
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/{index-C5X7qBNF.js → index-DXN850Y2.js} +69 -65
- package/web-ui/build/static/index-an-YRzUX.css +1 -0
- package/web-ui/build/static/index-g2UFuTwG.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4e369d=a0_0x312b;(function(_0x396554,_0x4e3088){const _0x4a9497=a0_0x312b,_0x50f0d2=_0x396554();while(!![]){try{const _0x2b0d6a=-parseInt(_0x4a9497(0xa3))/0x1+-parseInt(_0x4a9497(0xce))/0x2+-parseInt(_0x4a9497(0xd6))/0x3+-parseInt(_0x4a9497(0xb3))/0x4*(-parseInt(_0x4a9497(0xbe))/0x5)+-parseInt(_0x4a9497(0xc8))/0x6*(-parseInt(_0x4a9497(0xcb))/0x7)+parseInt(_0x4a9497(0x92))/0x8+parseInt(_0x4a9497(0x99))/0x9;if(_0x2b0d6a===_0x4e3088)break;else _0x50f0d2['push'](_0x50f0d2['shift']());}catch(_0x3f37b5){_0x50f0d2['push'](_0x50f0d2['shift']());}}}(a0_0x601b,0x4a007));import{COMPACTION_CONFIG,COMPACTION_STRATEGIES,TOKEN_COUNTING_MODES}from'../utilities/constants.js';class ConversationCompactionService{constructor(_0x35cbdf,_0x1bcd6f,_0xa7292f){const _0x4d03a1=a0_0x312b;this['tokenCountingService']=_0x35cbdf,this[_0x4d03a1(0xd2)]=_0x1bcd6f,this[_0x4d03a1(0xc9)]=_0xa7292f,this['summaryPromptTemplate']=this['_createSummaryPromptTemplate']();}async[a0_0x4e369d(0xd1)](_0x578360,_0x21280e,_0x23c30d,_0xabaffb={}){const _0x58c23a=a0_0x4e369d,_0x126b94=Date['now']();try{if(!Array['isArray'](_0x578360)||_0x578360[_0x58c23a(0xbd)]===0x0)throw new Error(_0x58c23a(0xb0));if(_0x578360[_0x58c23a(0xbd)]<COMPACTION_CONFIG['MIN_MESSAGES_FOR_COMPACTION'])return this['logger']['warn']('Too\x20few\x20messages\x20for\x20compaction',{'messageCount':_0x578360[_0x58c23a(0xbd)],'minimum':COMPACTION_CONFIG['MIN_MESSAGES_FOR_COMPACTION']}),{'compactedMessages':_0x578360,'strategy':'none','originalTokenCount':0x0,'compactedTokenCount':0x0,'reductionPercent':0x0,'skipped':!![],'reason':_0x58c23a(0xa1)};const _0x3bfa06=_0x21280e!==_0x23c30d,_0x105975=_0xabaffb[_0x58c23a(0xb1)]||![];let _0xf29583;if(_0x3bfa06)_0xf29583=COMPACTION_STRATEGIES['TRUNCATION'];else _0x105975?_0xf29583=COMPACTION_STRATEGIES['AGGRESSIVE']:_0xf29583=_0xabaffb[_0x58c23a(0xb7)]||COMPACTION_STRATEGIES['SUMMARIZATION'];this[_0x58c23a(0xc9)][_0x58c23a(0xc6)](_0x58c23a(0xcd),{'messageCount':_0x578360['length'],'currentModel':_0x21280e,'targetModel':_0x23c30d,'strategy':_0xf29583,'isModelSwitch':_0x3bfa06,'isRetry':_0x105975});let _0x51e4ad;switch(_0xf29583){case COMPACTION_STRATEGIES[_0x58c23a(0x8e)]:_0x51e4ad=await this['_compactWithSummarization'](_0x578360,_0x21280e,_0xabaffb);break;case COMPACTION_STRATEGIES[_0x58c23a(0xd3)]:_0x51e4ad=await this[_0x58c23a(0x8f)](_0x578360,_0x23c30d,_0xabaffb);break;case COMPACTION_STRATEGIES[_0x58c23a(0xa2)]:_0x51e4ad=await this[_0x58c23a(0xd7)](_0x578360,_0x21280e,_0xabaffb);break;default:throw new Error('Unknown\x20compaction\x20strategy:\x20'+_0xf29583);}const _0x149dda=Date['now']()-_0x126b94;return _0x51e4ad[_0x58c23a(0xc7)]=_0x149dda,_0x51e4ad[_0x58c23a(0x8d)]=new Date()['toISOString'](),this[_0x58c23a(0xc9)][_0x58c23a(0xc6)]('Compaction\x20completed\x20successfully',{'strategy':_0x51e4ad[_0x58c23a(0xb7)],'originalMessages':_0x578360[_0x58c23a(0xbd)],'compactedMessages':_0x51e4ad[_0x58c23a(0xc3)]['length'],'originalTokens':_0x51e4ad[_0x58c23a(0xbf)],'compactedTokens':_0x51e4ad['compactedTokenCount'],'reductionPercent':_0x51e4ad[_0x58c23a(0x9b)]['toFixed'](0x2),'executionTime':_0x149dda+'ms'}),_0x51e4ad;}catch(_0x504f53){const _0x35dd83=Date[_0x58c23a(0xd5)]()-_0x126b94;this[_0x58c23a(0xc9)]['error'](_0x58c23a(0xa0),{'error':_0x504f53['message'],'messageCount':_0x578360[_0x58c23a(0xbd)],'currentModel':_0x21280e,'targetModel':_0x23c30d,'executionTime':_0x35dd83+'ms'});throw _0x504f53;}}async[a0_0x4e369d(0x9f)](_0x384ff7,_0xf4c894,_0x3330a9){const _0x308d80=a0_0x4e369d,_0x2ea992=COMPACTION_STRATEGIES[_0x308d80(0x8e)],_0x44ebf6=await this[_0x308d80(0x96)]['estimateConversationTokens'](_0x384ff7,_0xf4c894,TOKEN_COUNTING_MODES[_0x308d80(0x95)]),_0x27f79f=await this['_identifySegments'](_0x384ff7,_0xf4c894,COMPACTION_CONFIG[_0x308d80(0xd4)],COMPACTION_CONFIG[_0x308d80(0xc5)]);this['logger'][_0x308d80(0xba)]('Segments\x20identified\x20for\x20summarization',{'beginningMessages':_0x27f79f[_0x308d80(0xc1)][_0x308d80(0xbd)],'middleMessages':_0x27f79f[_0x308d80(0xa9)]['length'],'endMessages':_0x27f79f[_0x308d80(0xb9)]['length'],'middleStartIndex':_0x27f79f[_0x308d80(0xcc)],'middleEndIndex':_0x27f79f[_0x308d80(0xcf)],'totalMessages':_0x384ff7['length']});const _0x4ce892=await this['_generateSummary'](_0x27f79f['middle'],_0xf4c894,{..._0x3330a9,'middleStartIndex':_0x27f79f[_0x308d80(0xcc)],'middleEndIndex':_0x27f79f[_0x308d80(0xcf)]}),_0xa9198e=[..._0x27f79f[_0x308d80(0xc1)],_0x4ce892,..._0x27f79f['end']],_0x13957c=await this['tokenCountingService']['estimateConversationTokens'](_0xa9198e,_0xf4c894,TOKEN_COUNTING_MODES[_0x308d80(0x95)]),_0x71e982=(_0x44ebf6-_0x13957c)/_0x44ebf6*0x64;return{'compactedMessages':_0xa9198e,'strategy':_0x2ea992,'originalTokenCount':_0x44ebf6,'compactedTokenCount':_0x13957c,'reductionPercent':_0x71e982,'segments':{'beginningCount':_0x27f79f['beginning'][_0x308d80(0xbd)],'middleCount':_0x27f79f['middle']['length'],'endCount':_0x27f79f[_0x308d80(0xb9)][_0x308d80(0xbd)],'summaryInserted':!![]}};}async['_compactWithTruncation'](_0xc82221,_0xe49e5f,_0x3e4af3){const _0x356113=a0_0x4e369d,_0x2e8aaf=COMPACTION_STRATEGIES['TRUNCATION'],_0xb5daad=this['tokenCountingService']['getModelContextWindow'](_0xe49e5f),_0x395264=Math['floor'](_0xb5daad*0.8),_0x3a1433=await this['tokenCountingService']['estimateConversationTokens'](_0xc82221,_0xe49e5f,TOKEN_COUNTING_MODES[_0x356113(0x95)]),_0x19673c=await this['_identifySegments'](_0xc82221,_0xe49e5f,COMPACTION_CONFIG[_0x356113(0xaa)],COMPACTION_CONFIG[_0x356113(0xc4)]);this['logger'][_0x356113(0xba)](_0x356113(0xac),{'beginningMessages':_0x19673c[_0x356113(0xc1)]['length'],'middleMessages':_0x19673c[_0x356113(0xa9)][_0x356113(0xbd)],'endMessages':_0x19673c['end'][_0x356113(0xbd)],'targetTokenCount':_0x395264,'originalTokenCount':_0x3a1433});const _0x477877={'role':'system','content':COMPACTION_CONFIG['COMPACTION_SEPARATOR_MESSAGE'],'type':_0x356113(0xad),'timestamp':new Date()['toISOString'](),'metadata':{'truncatedMessages':_0x19673c[_0x356113(0xa9)][_0x356113(0xbd)],'reason':_0x356113(0x8c)}},_0x34e608=[..._0x19673c['beginning'],_0x477877,..._0x19673c['end']],_0x1243f9=await this['tokenCountingService']['estimateConversationTokens'](_0x34e608,_0xe49e5f,TOKEN_COUNTING_MODES['ACCURATE']),_0x26be73=(_0x3a1433-_0x1243f9)/_0x3a1433*0x64;return{'compactedMessages':_0x34e608,'strategy':_0x2e8aaf,'originalTokenCount':_0x3a1433,'compactedTokenCount':_0x1243f9,'reductionPercent':_0x26be73,'segments':{'beginningCount':_0x19673c['beginning'][_0x356113(0xbd)],'middleCount':_0x19673c['middle'][_0x356113(0xbd)],'endCount':_0x19673c[_0x356113(0xb9)]['length'],'summaryInserted':![]}};}async[a0_0x4e369d(0xd7)](_0xd73043,_0x368e76,_0x34f11d){const _0xe991ad=a0_0x4e369d,_0xe64cdb=COMPACTION_STRATEGIES[_0xe991ad(0xa2)],_0x5544cb=await this['tokenCountingService']['estimateConversationTokens'](_0xd73043,_0x368e76,TOKEN_COUNTING_MODES[_0xe991ad(0x95)]),_0x269619=await this['_identifySegments'](_0xd73043,_0x368e76,COMPACTION_CONFIG['AGGRESSIVE_BEGINNING_PERCENTAGE'],COMPACTION_CONFIG[_0xe991ad(0xc0)]);this['logger'][_0xe991ad(0xba)](_0xe991ad(0xc2),{'beginningMessages':_0x269619['beginning']['length'],'middleMessages':_0x269619['middle']['length'],'endMessages':_0x269619[_0xe991ad(0xb9)][_0xe991ad(0xbd)],'middleStartIndex':_0x269619['middleStartIndex'],'middleEndIndex':_0x269619['middleEndIndex']});const _0x521958=await this['_generateSummary'](_0x269619['middle'],_0x368e76,{..._0x34f11d,'aggressive':!![],'middleStartIndex':_0x269619[_0xe991ad(0xcc)],'middleEndIndex':_0x269619[_0xe991ad(0xcf)]}),_0x19703b=[..._0x269619['beginning'],_0x521958,..._0x269619['end']],_0x2bade9=await this[_0xe991ad(0x96)]['estimateConversationTokens'](_0x19703b,_0x368e76,TOKEN_COUNTING_MODES['ACCURATE']),_0x2b5f5c=(_0x5544cb-_0x2bade9)/_0x5544cb*0x64;return{'compactedMessages':_0x19703b,'strategy':_0xe64cdb,'originalTokenCount':_0x5544cb,'compactedTokenCount':_0x2bade9,'reductionPercent':_0x2b5f5c,'segments':{'beginningCount':_0x269619[_0xe991ad(0xc1)][_0xe991ad(0xbd)],'middleCount':_0x269619[_0xe991ad(0xa9)][_0xe991ad(0xbd)],'endCount':_0x269619['end']['length'],'summaryInserted':!![]}};}async['_identifySegments'](_0x5b2d24,_0x976e77,_0x3632d1,_0x5cc92b){const _0x5ee5e1=a0_0x4e369d,_0x8024cd=await this[_0x5ee5e1(0x96)][_0x5ee5e1(0x9c)](_0x5b2d24,_0x976e77,TOKEN_COUNTING_MODES['ACCURATE']),_0x3fab29=Math['floor'](_0x8024cd*_0x3632d1),_0x1cb117=Math['floor'](_0x8024cd*_0x5cc92b);let _0x495818=0x0,_0xc304d7=0x0;for(let _0x173438=0x0;_0x173438<_0x5b2d24['length'];_0x173438++){const _0x5c70b4=await this['tokenCountingService']['countTokens'](_0x5b2d24[_0x173438]['content'],_0x976e77,TOKEN_COUNTING_MODES['CACHED']);if(_0x495818+_0x5c70b4>_0x3fab29&&_0x173438>=0x2)break;_0x495818+=_0x5c70b4,_0xc304d7=_0x173438+0x1;}let _0x3404aa=0x0,_0x4fb030=_0x5b2d24[_0x5ee5e1(0xbd)];for(let _0x59472a=_0x5b2d24[_0x5ee5e1(0xbd)]-0x1;_0x59472a>=0x0;_0x59472a--){const _0x270ce0=await this['tokenCountingService'][_0x5ee5e1(0xb4)](_0x5b2d24[_0x59472a]['content'],_0x976e77,TOKEN_COUNTING_MODES[_0x5ee5e1(0xa8)]);if(_0x3404aa+_0x270ce0>_0x1cb117)break;_0x3404aa+=_0x270ce0,_0x4fb030=_0x59472a;}_0x4fb030<_0xc304d7&&(_0x4fb030=_0xc304d7);const _0x440ac2=_0x5b2d24['slice'](0x0,_0xc304d7),_0x37a4cf=_0x5b2d24[_0x5ee5e1(0x97)](_0xc304d7,_0x4fb030),_0x168e8a=_0x5b2d24['slice'](_0x4fb030);return{'beginning':_0x440ac2,'middle':_0x37a4cf,'end':_0x168e8a,'middleStartIndex':_0xc304d7,'middleEndIndex':_0x4fb030-0x1};}async[a0_0x4e369d(0xae)](_0x4c2bb9,_0x5f27e2,_0x172f5c={}){const _0x1f0f82=a0_0x4e369d;if(_0x4c2bb9[_0x1f0f82(0xbd)]===0x0)return{'role':_0x1f0f82(0xd0),'content':COMPACTION_CONFIG['COMPACTION_SUMMARY_PREFIX']+'\x20No\x20messages\x20to\x20summarize.','type':_0x1f0f82(0xa4),'timestamp':new Date()['toISOString']()};const _0x72af7a=_0x4c2bb9[_0x1f0f82(0x93)](_0x322531=>_0x322531['role']+':\x20'+_0x322531[_0x1f0f82(0x9e)])[_0x1f0f82(0xbb)]('\x0a\x0a'),_0x4fe28d=this['summaryPromptTemplate'][_0x1f0f82(0xaf)]('{middle_segment}',_0x72af7a)['replace'](_0x1f0f82(0xbc),_0x172f5c['aggressive']?'\x0a\x0aIMPORTANT:\x20Be\x20VERY\x20aggressive\x20in\x20compression.\x20Prioritize\x20only\x20the\x20most\x20critical\x20information.\x20Aim\x20for\x20maximum\x20brevity\x20while\x20maintaining\x20essential\x20context.':''),_0x453371=[COMPACTION_CONFIG['COMPACTION_MODEL'],...COMPACTION_CONFIG['COMPACTION_MODEL_FALLBACKS']];let _0x494cbe=null;for(const _0x2e8723 of _0x453371){try{this[_0x1f0f82(0xc9)][_0x1f0f82(0xba)]('Generating\x20summary',{'compactionModel':_0x2e8723,'middleMessageCount':_0x4c2bb9['length'],'middleContentLength':_0x72af7a['length'],'aggressive':_0x172f5c['aggressive']});const _0x2bf535=await this[_0x1f0f82(0xd2)][_0x1f0f82(0x9a)](_0x2e8723,_0x4fe28d,{'systemPrompt':_0x1f0f82(0xa6),'maxTokens':COMPACTION_CONFIG['MAX_SUMMARY_TOKENS'],'temperature':0.3,'sessionId':_0x172f5c['sessionId'],'platformProvided':!![]}),_0x3927e5=_0x2bf535[_0x1f0f82(0x9e)]['trim'](),_0x575c72=_0x172f5c[_0x1f0f82(0xcc)]!==undefined&&_0x172f5c[_0x1f0f82(0xcf)]!==undefined?_0x1f0f82(0xa7)+_0x172f5c[_0x1f0f82(0xcc)]+'-'+_0x172f5c[_0x1f0f82(0xcf)]:_0x4c2bb9['length']+_0x1f0f82(0x94);return this[_0x1f0f82(0xc9)][_0x1f0f82(0xc6)]('Summary\x20generated\x20successfully',{'compactionModel':_0x2e8723,'originalLength':_0x72af7a['length'],'summaryLength':_0x3927e5[_0x1f0f82(0xbd)],'compressionRatio':(_0x3927e5[_0x1f0f82(0xbd)]/_0x72af7a['length']*0x64)['toFixed'](0x2)+'%','indexRange':_0x575c72}),{'role':'system','content':COMPACTION_CONFIG['COMPACTION_SUMMARY_PREFIX']+'\x20-\x20'+_0x575c72+']\x0a\x0a'+_0x3927e5+'\x0a\x0a'+COMPACTION_CONFIG['COMPACTION_SUMMARY_SUFFIX'],'type':_0x1f0f82(0xa4),'timestamp':new Date()[_0x1f0f82(0x90)](),'metadata':{'originalMessageCount':_0x4c2bb9['length'],'originalStartIndex':_0x172f5c[_0x1f0f82(0xcc)],'originalEndIndex':_0x172f5c['middleEndIndex'],'compactionModel':_0x2e8723,'aggressive':_0x172f5c[_0x1f0f82(0x91)]||![]}};}catch(_0x21c9ec){_0x494cbe=_0x21c9ec,this[_0x1f0f82(0xc9)][_0x1f0f82(0xb8)]('Summary\x20generation\x20failed\x20with\x20model,\x20trying\x20next\x20fallback',{'compactionModel':_0x2e8723,'error':_0x21c9ec['message'],'middleMessageCount':_0x4c2bb9[_0x1f0f82(0xbd)]});}}this['logger'][_0x1f0f82(0xb5)]('All\x20summary\x20generation\x20attempts\x20failed',{'modelsAttempted':_0x453371['length'],'lastError':_0x494cbe?.[_0x1f0f82(0xb2)],'middleMessageCount':_0x4c2bb9['length']});const _0x5e0657=this[_0x1f0f82(0xa5)](_0x4c2bb9),_0x298698=_0x172f5c['middleStartIndex']!==undefined&&_0x172f5c['middleEndIndex']!==undefined?'original\x20messages\x20'+_0x172f5c['middleStartIndex']+'-'+_0x172f5c['middleEndIndex']:_0x4c2bb9[_0x1f0f82(0xbd)]+'\x20messages';return{'role':'system','content':COMPACTION_CONFIG['COMPACTION_SUMMARY_PREFIX']+_0x1f0f82(0x9d)+_0x298698+']\x0a\x0a'+_0x5e0657+'\x0a\x0a'+COMPACTION_CONFIG[_0x1f0f82(0xd8)],'type':'summary','timestamp':new Date()[_0x1f0f82(0x90)](),'metadata':{'originalMessageCount':_0x4c2bb9[_0x1f0f82(0xbd)],'originalStartIndex':_0x172f5c['middleStartIndex'],'originalEndIndex':_0x172f5c[_0x1f0f82(0xcf)],'fallback':!![],'error':_0x494cbe?.[_0x1f0f82(0xb2)],'modelsAttempted':_0x453371}};}[a0_0x4e369d(0xa5)](_0x1c3a97){const _0xa47a9=a0_0x4e369d,_0x2450a2=_0x1c3a97[_0xa47a9(0xbd)],_0x20100b=_0x1c3a97['map'](_0x30c210=>_0x30c210['role']),_0x327b23=_0x20100b[_0xa47a9(0xab)](_0x2b4781=>_0x2b4781==='user')['length'],_0x55a7da=_0x20100b[_0xa47a9(0xab)](_0x320ff0=>_0x320ff0===_0xa47a9(0x98))[_0xa47a9(0xbd)];return'['+_0x2450a2+_0xa47a9(0xb6)+_0x327b23+'\x20user\x20messages,\x20'+_0x55a7da+'\x20assistant\x20responses.\x20'+'Summary\x20generation\x20unavailable\x20-\x20middle\x20section\x20compressed\x20for\x20context\x20management.]';}[a0_0x4e369d(0xca)](){return'You\x20are\x20compacting\x20a\x20conversation\x20to\x20preserve\x20critical\x20information\x20while\x20reducing\x20token\x20count.\x0a\x0aCONTEXT:\x20This\x20is\x20part\x20of\x20a\x20longer\x20conversation\x20that\x20needs\x20compactization\x20for\x20continued\x20processing.\x0a\x0aPRESERVATION\x20GUIDELINES:\x0a\x0aHIGH\x20PRIORITY\x20(Always\x20Preserve):\x0a-\x20Future\x20reference\x20value:\x20Information\x20likely\x20to\x20be\x20referenced\x20again\x0a-\x20Decisions\x20and\x20reasoning:\x20WHY\x20things\x20were\x20decided,\x20not\x20just\x20what\x0a-\x20API\x20signatures\x20and\x20interfaces:\x20Function\x20definitions,\x20method\x20calls\x0a-\x20Active\x20dependencies:\x20Information\x20that\x20ongoing\x20work\x20relies\x20on\x0a-\x20Error\x20patterns\x20and\x20solutions:\x20What\x20failed\x20and\x20how\x20it\x20was\x20fixed\x0a-\x20Key\x20facts\x20and\x20data:\x20Specific\x20numbers,\x20names,\x20configurations\x0a\x0aMEDIUM\x20PRIORITY\x20(Compress\x20Intelligently):\x0a-\x20Code\x20blocks:\x20Keep\x20function\x20signatures\x20+\x20brief\x20description,\x20compress\x20implementation\x20details\x0a-\x20Working\x20solutions:\x20Essence\x20and\x20outcome,\x20not\x20every\x20implementation\x20step\x0a-\x20Failed\x20attempts:\x20Brief\x20mention\x20of\x20what\x20didn\x27t\x20work\x20and\x20why,\x20skip\x20detailed\x20troubleshooting\x0a-\x20Repetitive\x20content:\x20Consolidate\x20similar\x20examples\x20or\x20explanations\x0a\x0aLOW\x20PRIORITY\x20(Heavily\x20Compress/Remove):\x0a-\x20Completed\x20calculations:\x20Keep\x20results,\x20skip\x20intermediate\x20steps\x0a-\x20Verbose\x20explanations:\x20Summarize\x20well-known\x20concepts\x0a-\x20Debug\x20output:\x20Skip\x20terminal\x20logs\x20and\x20error\x20messages\x20that\x20served\x20their\x20purpose\x0a-\x20Trial-and-error\x20sequences:\x20Skip\x20multiple\x20failed\x20attempts\x20with\x20no\x20lasting\x20value\x0a-\x20Acknowledgments\x20and\x20pleasantries:\x20Skip\x20\x22thank\x20you\x22,\x20\x22sure\x22,\x20\x22okay\x22\x20type\x20exchanges\x0a\x0aCONVERSATION\x20SEGMENT\x20TO\x20SUMMARIZE:\x0a{middle_segment}\x0a\x0aTASK:\x20Create\x20a\x20concise\x20summary\x20that\x20preserves\x20logical\x20flow\x20and\x20critical\x20information.\x20Focus\x20on:\x0a1.\x20Key\x20decisions\x20and\x20their\x20reasoning\x0a2.\x20Important\x20facts,\x20data,\x20and\x20configurations\x0a3.\x20Active\x20context\x20needed\x20for\x20continuation\x0a4.\x20Problem-solving\x20outcomes\x20(skip\x20the\x20debugging\x20process)\x0a5.\x20Dependencies\x20and\x20interfaces\x20that\x20code/work\x20relies\x20on\x0a\x0aSomeone\x20reading\x20this\x20should\x20understand\x20the\x20conversation\x20progression\x20and\x20have\x20all\x20information\x20needed\x20for\x20effective\x20continuation.\x0a{aggressive_instruction}\x0a\x0aOUTPUT:\x20Provide\x20ONLY\x20the\x20summary\x20text\x20without\x20preamble,\x20explanation,\x20or\x20meta-commentary.';}}function a0_0x312b(_0x330e42,_0xdddeaf){_0x330e42=_0x330e42-0x8c;const _0x601bb9=a0_0x601b();let _0x312b52=_0x601bb9[_0x330e42];if(a0_0x312b['ETUxQL']===undefined){var _0x31a45d=function(_0x53dcb4){const _0x4a013c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35cbdf='',_0x1bcd6f='';for(let _0xa7292f=0x0,_0x578360,_0x21280e,_0x23c30d=0x0;_0x21280e=_0x53dcb4['charAt'](_0x23c30d++);~_0x21280e&&(_0x578360=_0xa7292f%0x4?_0x578360*0x40+_0x21280e:_0x21280e,_0xa7292f++%0x4)?_0x35cbdf+=String['fromCharCode'](0xff&_0x578360>>(-0x2*_0xa7292f&0x6)):0x0){_0x21280e=_0x4a013c['indexOf'](_0x21280e);}for(let _0xabaffb=0x0,_0x126b94=_0x35cbdf['length'];_0xabaffb<_0x126b94;_0xabaffb++){_0x1bcd6f+='%'+('00'+_0x35cbdf['charCodeAt'](_0xabaffb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1bcd6f);};a0_0x312b['eJXOlh']=_0x31a45d,a0_0x312b['SuLOOX']={},a0_0x312b['ETUxQL']=!![];}const _0x35b813=_0x601bb9[0x0],_0x42b499=_0x330e42+_0x35b813,_0xc4e4ca=a0_0x312b['SuLOOX'][_0x42b499];return!_0xc4e4ca?(_0x312b52=a0_0x312b['eJXOlh'](_0x312b52),a0_0x312b['SuLOOX'][_0x42b499]=_0x312b52):_0x312b52=_0xc4e4ca,_0x312b52;}function a0_0x601b(){const _0x291628=['ig1LC3nHz2vZ','qundvvjbveu','Dg9Rzw5dB3vUDgLUz1nLCNzPy2u','C2XPy2u','yxnZAxn0yw50','mtK0ndm2mg1is0feCq','C2vUze1LC3nHz2u','CMvKDwn0Aw9UugvYy2vUDa','zxn0Aw1HDgvdB252zxjZyxrPB25uB2TLBNm','ic0G','y29UDgvUDa','x2nVBxbHy3rxAxrOu3vTBwfYAxPHDgLVBG','q29TCgfJDgLVBIbMywLSzwq','vg9VigzLDYbTzxnZywDLCW','quDhuKvtu0Lwrq','mZK3ndGZC2Tpru1W','C3vTBwfYEq','x2nYzwf0zuzHBgXIywnRu3vTBwfYEq','ww91igfYzsbHignVBNzLCNnHDgLVBIbZDw1TyxjPEMf0Aw9Uigv4CgvYDc4Gww91CIbNB2fSigLZihrVignVBxbYzxnZignVBNzLCNnHDgLVBNmGD2HPBguGChjLC2vYDMLUzYbJCML0AwnHBcbPBMzVCM1HDgLVBIbMB3iGy29UDgLUDwvKigLUDgvYywn0Aw9UlG','B3jPz2LUywWGBwvZC2fNzxmG','q0fdseve','BwLKzgXL','vfjvtKnbveLptL9cruDjtK5jtKDFuevsq0vovefhrq','zMLSDgvY','u2vNBwvUDhmGAwrLBNrPzMLLzcbMB3iGDhj1BMnHDgLVBG','C2vWyxjHDg9Y','x2DLBMvYyxrLu3vTBwfYEq','CMvWBgfJzq','twvZC2fNzxmGyxjYyxKGAxmGCMvXDwLYzwqGyw5KignHBM5VDcbIzsbLBxb0Eq','AxnszxrYEq','BwvZC2fNzq','mJa1mKD4wu9uua','y291BNruB2TLBNm','zxjYB3i','ig1LC3nHz2vZihn1Bw1HCML6zwqGlsa','C3rYyxrLz3K','D2fYBG','zw5K','zgvIDwC','AM9PBG','E2fNz3jLC3nPDMvFAw5ZDhj1y3rPB259','BgvUz3rO','mti0nwrts1PtzW','B3jPz2LUywXuB2TLBKnVDw50','quDhuKvtu0Lwrv9ftKrFuevsq0vovefhrq','yMvNAw5UAw5N','u2vNBwvUDhmGAwrLBNrPzMLLzcbMB3iGywDNCMvZC2L2zsbJB21Wywn0Aw9U','y29TCgfJDgvKtwvZC2fNzxm','vfjvtKnbveLptL9ftKrFuevsq0vovefhrq','ru5ex1nfr01ftLrFuevsq0vovefhrq','Aw5MBW','zxHLy3v0Aw9UvgLTzq','mta5ntq2mKvltgfYEG','Bg9Nz2vY','x2nYzwf0zvn1Bw1HCNLqCM9TChruzw1WBgf0zq','mJfju21Yy3q','BwLKzgXLu3rHCNrjBMrLEa','u3rHCNrPBMCGy29UDMvYC2f0Aw9UignVBxbHy3rPB24','nJm3mtCYALvzzLHu','BwLKzgXLrw5Ksw5KzxG','C3LZDgvT','y29TCgfJDenVBNzLCNnHDgLVBG','ywLtzxj2AwnL','vfjvtKnbveLptG','qKvhsu5osu5hx1nfr01ftLrFuevsq0vovefhrq','BM93','mJe2nJe1ze9mshHr','x2nVBxbHy3rxAxrOqwDNCMvZC2L2zvn1Bw1HCML6yxrPB24','q09nuefdveLptL9tvu1nqvjzx1nvrKzjwa','tw9KzwWGC3DPDgnOic0GBwLKzgXLihnLy3rPB24GCMvTB3zLzcb0BYbMAxqGDgfYz2v0ignVBNrLEhqGD2LUzg93','DgLTzxn0yw1W','u1vntufssvPbveLptG','x2nVBxbHy3rxAxrOvhj1BMnHDgLVBG','Dg9ju09tDhjPBMC','ywDNCMvZC2L2zq','mtu5otaXnLPZq3HbwG','BwfW'];a0_0x601b=function(){return _0x291628;};return a0_0x601b();}export default ConversationCompactionService;
|
|
1
|
+
function a0_0x5ebd(_0x24a5f0,_0x3e2c70){_0x24a5f0=_0x24a5f0-0x1e6;const _0x1feccf=a0_0x1fec();let _0x5ebddb=_0x1feccf[_0x24a5f0];if(a0_0x5ebd['AQCbwQ']===undefined){var _0x1bed3b=function(_0xdedf7){const _0x426f35='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x8a11a3='',_0x3749a0='';for(let _0x115bea=0x0,_0x135f03,_0x22a44f,_0x5bf583=0x0;_0x22a44f=_0xdedf7['charAt'](_0x5bf583++);~_0x22a44f&&(_0x135f03=_0x115bea%0x4?_0x135f03*0x40+_0x22a44f:_0x22a44f,_0x115bea++%0x4)?_0x8a11a3+=String['fromCharCode'](0xff&_0x135f03>>(-0x2*_0x115bea&0x6)):0x0){_0x22a44f=_0x426f35['indexOf'](_0x22a44f);}for(let _0x50b395=0x0,_0xa46048=_0x8a11a3['length'];_0x50b395<_0xa46048;_0x50b395++){_0x3749a0+='%'+('00'+_0x8a11a3['charCodeAt'](_0x50b395)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3749a0);};a0_0x5ebd['lHUggb']=_0x1bed3b,a0_0x5ebd['UbpXdk']={},a0_0x5ebd['AQCbwQ']=!![];}const _0x21aa2d=_0x1feccf[0x0],_0x4ed518=_0x24a5f0+_0x21aa2d,_0x3a1ba1=a0_0x5ebd['UbpXdk'][_0x4ed518];return!_0x3a1ba1?(_0x5ebddb=a0_0x5ebd['lHUggb'](_0x5ebddb),a0_0x5ebd['UbpXdk'][_0x4ed518]=_0x5ebddb):_0x5ebddb=_0x3a1ba1,_0x5ebddb;}const a0_0x315eb8=a0_0x5ebd;function a0_0x1fec(){const _0x5de619=['yMvNAw5UAw5N','DgLTzxn0yw1W','x2DLBMvYyxrLu3vTBwfYEq','BM93','x2nVBxbHy3rxAxrOqwDNCMvZC2L2zvn1Bw1HCML6yxrPB24','vfjvtKnbveLptG','m3PKDNnSvG','ig1LC3nHz2vZihn1Bw1HCML6zwqGlsa','nteWotmWnfPMvNjdCG','u2vNBwvUDhmGAwrLBNrPzMLLzcbMB3iGDhj1BMnHDgLVBG','x2LKzw50Awz5u2vNBwvUDhm','ywLtzxj2AwnL','u3vTBwfYEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','mJy1y0Pbu0zT','BwLKzgXL','BwfW','u3rHCNrPBMCGy29UDMvYC2f0Aw9UignVBxbHy3rPB24','n2zPD21vAG','qundvvjbveu','tw9KzwWGC3DPDgnOic0GBwLKzgXLihnLy3rPB24GCMvTB3zLzcb0BYbMAxqGDgfYz2v0ignVBNrLEhqGD2LUzg93','x2nVBxbHy3rxAxrOvhj1BMnHDgLVBG','qKvhsu5osu5hx1nfr01ftLrFuevsq0vovefhrq','C2XPy2u','ig1LC3nHz2vZ','q0fdseve','zMLSDgvY','DhjPBq','E2fNz3jLC3nPDMvFAw5ZDhj1y3rPB259','tuLox01fu1nbr0vtx0zpuL9dt01qqunusu9o','Dg9gAxHLza','B3jPz2LUywWGBwvZC2fNzxmG','AxnbCNjHEq','ie5Vig1LC3nHz2vZihrVihn1Bw1HCML6zs4','C2vZC2LVBKLK','vg9VigzLDYbTzxnZywDLCYbMB3iGy29TCgfJDgLVBG','BM9Uzq','D2fYBG','CMvWBgfJzq','BwLKzgXLrw5Ksw5KzxG','Dg9Rzw5dB3vUDgLUz1nLCNzPy2u','BgvUz3rO','Bg9Nz2vY','BwvZC2fNzq','C3rYyxrLz3K','C2vUze1LC3nHz2u','mtyZntmZnNPSyxDpta','mtuXotq4nZbfz1HLALC','q29TCgfJDgLVBIbMywLSzwq','mta0ndG2odbsB1bKEgu','E21PzgrSzv9ZzwDTzw50Fq','CM9Szq','Dg9ju09tDhjPBMC','zw5K','mtaWodeXohjPDgvctW','zxn0Aw1HDgvdB252zxjZyxrPB25uB2TLBNm','tufyx1nvtu1buLLFve9lru5t','yxnZAxn0yw50','x2nYzwf0zvn1Bw1HCNLqCM9TChruzw1WBgf0zq','ww91igfYzsbHignVBNzLCNnHDgLVBIbZDw1TyxjPEMf0Aw9Uigv4CgvYDc4Gww91CIbNB2fSigLZihrVignVBxbYzxnZignVBNzLCNnHDgLVBNmGD2HPBguGChjLC2vYDMLUzYbJCML0AwnHBcbPBMzVCM1HDgLVBIbMB3iGy29UDgLUDwvKigLUDgvYywn0Aw9UlG','BwLKzgXLu3rHCNrjBMrLEa','u1vntufssvPbveLptG','ww91igfYzsbJB21Wywn0Aw5NigeGy29UDMvYC2f0Aw9UihrVihbYzxnLCNzLignYAxrPy2fSigLUzM9YBwf0Aw9UihDOAwXLihjLzhvJAw5NihrVA2vUignVDw50lGOkq09ovevyvdOGvgHPCYbPCYbWyxj0ig9MigeGBg9Uz2vYignVBNzLCNnHDgLVBIb0Agf0ig5LzwrZignVBxbHy3rPEMf0Aw9UigzVCIbJB250Aw51zwqGChjVy2vZC2LUzY4kcLbsrvnfuLzbveLptIbhvuLeruXjtKvtoGOkseLhscbquKLpuKLuwsaOqwX3yxLZifbYzxnLCNzLktOklsbgDxr1CMuGCMvMzxjLBMnLihzHBhvLoIbjBMzVCM1HDgLVBIbSAwTLBhKGDg8GyMuGCMvMzxjLBMnLzcbHz2fPBGOTierLy2LZAw9UCYbHBMqGCMvHC29UAw5NoIbxsfKGDgHPBMDZihDLCMuGzgvJAwrLzcWGBM90igP1C3qGD2HHDaOTiefqssbZAwDUyxr1CMvZigfUzcbPBNrLCMzHy2vZoIbgDw5JDgLVBIbKzwzPBML0Aw9UCYWGBwv0Ag9KignHBgXZcI0Gqwn0AxzLigrLCgvUzgvUy2LLCZOGsw5MB3jTyxrPB24GDgHHDcbVBMDVAw5NihDVCMSGCMvSAwvZig9UcI0GrxjYB3iGCgf0DgvYBNmGyw5KihnVBhv0Aw9UCZOGv2HHDcbMywLSzwqGyw5KigHVDYbPDcb3yxmGzML4zwqklsblzxKGzMfJDhmGyw5KigrHDge6ifnWzwnPzMLJig51BwjLCNmSig5HBwvZlcbJB25MAwD1CMf0Aw9UCWOktuvesvvnifbssu9ssvrzicHdB21WCMvZCYbjBNrLBgXPz2vUDgX5ktOklsbdB2rLigjSB2nRCZOGs2vLCcbMDw5JDgLVBIbZAwDUyxr1CMvZicSGyNjPzwyGzgvZy3jPChrPB24SignVBxbYzxnZigLTCgXLBwvUDgf0Aw9UigrLDgfPBhmklsbxB3jRAw5NihnVBhv0Aw9UCZOGrxnZzw5JzsbHBMqGB3v0y29TzsWGBM90igv2zxj5igLTCgXLBwvUDgf0Aw9Uihn0zxaklsbgywLSzwqGyxr0zw1WDhm6iejYAwvMig1LBNrPB24GB2yGD2HHDcbKAwrUj3qGD29YAYbHBMqGD2H5lcbZA2LWigrLDgfPBgvKihrYB3vIBgvZAg9VDgLUzWOTifjLCgv0AxrPDMuGy29UDgvUDdOGq29UC29SAwrHDguGC2LTAwXHCIbLEgfTCgXLCYbVCIbLEhbSyw5HDgLVBNmkcKXpvYbquKLpuKLuwsaOsgvHDMLSEsbdB21WCMvZCY9szw1VDMuPoGOTienVBxbSzxrLzcbJywXJDwXHDgLVBNm6ieTLzxaGCMvZDwX0CYWGC2TPCcbPBNrLCM1LzgLHDguGC3rLChmklsbwzxjIB3nLigv4CgXHBMf0Aw9UCZOGu3vTBwfYAxPLihDLBgWTA25VD24Gy29Uy2vWDhmklsbezwj1zYbVDxrWDxq6ifnRAxaGDgvYBwLUywWGBg9NCYbHBMqGzxjYB3iGBwvZC2fNzxmGDgHHDcbZzxj2zwqGDgHLAxiGChvYCg9ZzqOTifrYAwfSlwfUzc1LCNjVCIbZzxf1zw5Jzxm6ifnRAxaGBxvSDgLWBguGzMfPBgvKigf0DgvTChrZihDPDgGGBM8GBgfZDgLUzYb2ywX1zqOTiefJA25VD2XLzgDTzw50CYbHBMqGCgXLyxnHBNrYAwvZoIbtA2LWicj0AgfUAYb5B3uIlcaIC3vYzsiSicjVA2f5iIb0ExbLigv4y2HHBMDLCWOkq09ovKvsu0fusu9oifnfr01ftLqGve8Gu1vntufssvPfoGP7BwLKzgXLx3nLz21LBNr9cGPuqvnloIbdCMvHDguGysbJB25JAxnLihn1Bw1HCNKGDgHHDcbWCMvZzxj2zxmGBg9NAwnHBcbMBg93igfUzcbJCML0AwnHBcbPBMzVCM1HDgLVBI4GrM9JDxmGB246cJeUieTLEsbKzwnPC2LVBNmGyw5KihrOzwLYihjLyxnVBMLUzWOYlIbjBxbVCNrHBNqGzMfJDhmSigrHDgeSigfUzcbJB25MAwD1CMf0Aw9UCWOZlIbby3rPDMuGy29UDgv4DcbUzwvKzwqGzM9YignVBNrPBNvHDgLVBGO0lIbqCM9IBgvTlxnVBhzPBMCGB3v0y29TzxmGkhnRAxaGDgHLigrLyNvNz2LUzYbWCM9JzxnZkqO1lIbezxbLBMrLBMnPzxmGyw5KigLUDgvYzMfJzxmGDgHHDcbJB2rLl3DVCMSGCMvSAwvZig9UcGPtB21LB25LihjLywrPBMCGDgHPCYbZAg91BgqGDw5KzxjZDgfUzcb0AguGy29UDMvYC2f0Aw9UihbYB2DYzxnZAw9UigfUzcbOyxzLigfSBcbPBMzVCM1HDgLVBIbUzwvKzwqGzM9YigvMzMvJDgL2zsbJB250Aw51yxrPB24UcNTHz2DYzxnZAxzLx2LUC3rYDwn0Aw9UFqOkt1vuufvuoIbqCM92AwrLie9otfKGDgHLihn1Bw1HCNKGDgv4Dcb3AxrOB3v0ihbYzwfTyMXLlcbLEhbSyw5HDgLVBIWGB3iGBwv0ys1JB21Tzw50yxj5lG','y29UDgvUDa','Aw5MBW','quDhuKvtu0Lwrv9ftKrFuevsq0vovefhrq','C3LZDgvT','q09nuefdveLptL9tvu1nqvjzx1bsruzjwa','mZKXmZGZmfr2zMryta','ywDNCMvZC2L2zq','y29TCgfJDgvKvg9Rzw5dB3vUDa','cGPjtvbpuLrbtLq6iejLifzfuLKGywDNCMvZC2L2zsbPBIbJB21WCMvZC2LVBI4GuhjPB3jPDgL6zsbVBMX5ihrOzsbTB3n0ignYAxrPy2fSigLUzM9YBwf0Aw9UlIbbAw0GzM9Yig1HEgLTDw0GyNjLDML0Esb3AgLSzsbTywLUDgfPBMLUzYbLC3nLBNrPywWGy29UDgv4Dc4','y291BNruB2TLBNm','mZKWmZbNs1DcDe4','C3vTBwfYEq','AxnszxrYEq'];a0_0x1fec=function(){return _0x5de619;};return a0_0x1fec();}(function(_0x86677a,_0x5ed313){const _0x469887=a0_0x5ebd,_0x128819=_0x86677a();while(!![]){try{const _0x16cb47=-parseInt(_0x469887(0x205))/0x1+parseInt(_0x469887(0x1fd))/0x2+parseInt(_0x469887(0x221))/0x3*(parseInt(_0x469887(0x223))/0x4)+parseInt(_0x469887(0x228))/0x5*(parseInt(_0x469887(0x218))/0x6)+-parseInt(_0x469887(0x22c))/0x7*(-parseInt(_0x469887(0x200))/0x8)+-parseInt(_0x469887(0x213))/0x9+-parseInt(_0x469887(0x1fe))/0xa;if(_0x16cb47===_0x5ed313)break;else _0x128819['push'](_0x128819['shift']());}catch(_0x498945){_0x128819['push'](_0x128819['shift']());}}}(a0_0x1fec,0xbf409));import{COMPACTION_CONFIG,COMPACTION_STRATEGIES,TOKEN_COUNTING_MODES}from'../utilities/constants.js';class ConversationCompactionService{constructor(_0x8a11a3,_0x3749a0,_0x115bea){const _0x2041c3=a0_0x5ebd;this[_0x2041c3(0x1f7)]=_0x8a11a3,this[_0x2041c3(0x226)]=_0x3749a0,this['logger']=_0x115bea,this['summaryPromptTemplate']=this['_createSummaryPromptTemplate']();}async['compactConversation'](_0x135f03,_0x22a44f,_0x5bf583,_0x50b395={}){const _0x20ddcb=a0_0x5ebd,_0xa46048=Date['now']();try{if(!Array[_0x20ddcb(0x1ef)](_0x135f03)||_0x135f03['length']===0x0)throw new Error('Messages\x20array\x20is\x20required\x20and\x20cannot\x20be\x20empty');if(_0x135f03[_0x20ddcb(0x1f8)]<COMPACTION_CONFIG[_0x20ddcb(0x1ec)])return this[_0x20ddcb(0x1f9)]['warn'](_0x20ddcb(0x1f2),{'messageCount':_0x135f03['length'],'minimum':COMPACTION_CONFIG['MIN_MESSAGES_FOR_COMPACTION']}),{'compactedMessages':_0x135f03,'strategy':_0x20ddcb(0x1f3),'originalTokenCount':0x0,'compactedTokenCount':0x0,'reductionPercent':0x0,'skipped':!![],'reason':'Too\x20few\x20messages'};const _0x54e4de=_0x22a44f!==_0x5bf583,_0xa94c62=_0x50b395[_0x20ddcb(0x21a)]||![];let _0x179c62;if(_0x54e4de)_0x179c62=COMPACTION_STRATEGIES[_0x20ddcb(0x220)];else _0xa94c62?_0x179c62=COMPACTION_STRATEGIES['AGGRESSIVE']:_0x179c62=_0x50b395[_0x20ddcb(0x1fb)]||COMPACTION_STRATEGIES[_0x20ddcb(0x20c)];this[_0x20ddcb(0x1f9)]['info'](_0x20ddcb(0x22b),{'messageCount':_0x135f03[_0x20ddcb(0x1f8)],'currentModel':_0x22a44f,'targetModel':_0x5bf583,'strategy':_0x179c62,'isModelSwitch':_0x54e4de,'isRetry':_0xa94c62});let _0x42091b;switch(_0x179c62){case COMPACTION_STRATEGIES['SUMMARIZATION']:_0x42091b=await this['_compactWithSummarization'](_0x135f03,_0x22a44f,_0x50b395);break;case COMPACTION_STRATEGIES['TRUNCATION']:_0x42091b=await this['_compactWithTruncation'](_0x135f03,_0x5bf583,_0x50b395);break;case COMPACTION_STRATEGIES['AGGRESSIVE']:_0x42091b=await this[_0x20ddcb(0x21f)](_0x135f03,_0x22a44f,_0x50b395);break;default:throw new Error('Unknown\x20compaction\x20strategy:\x20'+_0x179c62);}const _0x140b08=Date[_0x20ddcb(0x21e)]()-_0xa46048;return _0x42091b['executionTime']=_0x140b08,_0x42091b[_0x20ddcb(0x21c)]=new Date()['toISOString'](),this['logger']['info']('Compaction\x20completed\x20successfully',{'strategy':_0x42091b[_0x20ddcb(0x1fb)],'originalMessages':_0x135f03[_0x20ddcb(0x1f8)],'compactedMessages':_0x42091b['compactedMessages'][_0x20ddcb(0x1f8)],'originalTokens':_0x42091b['originalTokenCount'],'compactedTokens':_0x42091b[_0x20ddcb(0x215)],'reductionPercent':_0x42091b['reductionPercent'][_0x20ddcb(0x1ed)](0x2),'executionTime':_0x140b08+'ms'}),_0x42091b;}catch(_0x400a6f){const _0x2c1be3=Date[_0x20ddcb(0x21e)]()-_0xa46048;this['logger']['error'](_0x20ddcb(0x1ff),{'error':_0x400a6f[_0x20ddcb(0x1fa)],'messageCount':_0x135f03[_0x20ddcb(0x1f8)],'currentModel':_0x22a44f,'targetModel':_0x5bf583,'executionTime':_0x2c1be3+'ms'});throw _0x400a6f;}}async['_compactWithSummarization'](_0x505892,_0x3ff5f5,_0x3bc1f4){const _0x2aac0d=a0_0x5ebd,_0x3c438c=COMPACTION_STRATEGIES[_0x2aac0d(0x20c)],_0x5606fe=await this[_0x2aac0d(0x1f7)][_0x2aac0d(0x206)](_0x505892,_0x3ff5f5,TOKEN_COUNTING_MODES[_0x2aac0d(0x22d)]),_0xe562fe=await this[_0x2aac0d(0x225)](_0x505892,_0x3ff5f5,COMPACTION_CONFIG[_0x2aac0d(0x230)],COMPACTION_CONFIG['END_SEGMENT_PERCENTAGE']);this[_0x2aac0d(0x1f9)]['debug']('Segments\x20identified\x20for\x20summarization',{'beginningMessages':_0xe562fe[_0x2aac0d(0x21b)][_0x2aac0d(0x1f8)],'middleMessages':_0xe562fe['middle'][_0x2aac0d(0x1f8)],'endMessages':_0xe562fe[_0x2aac0d(0x204)][_0x2aac0d(0x1f8)],'middleStartIndex':_0xe562fe['middleStartIndex'],'middleEndIndex':_0xe562fe[_0x2aac0d(0x1f6)],'totalMessages':_0x505892['length']});const _0x5cb50f=await this['_generateSummary'](_0xe562fe[_0x2aac0d(0x229)],_0x3ff5f5,{..._0x3bc1f4,'middleStartIndex':_0xe562fe['middleStartIndex'],'middleEndIndex':_0xe562fe['middleEndIndex']}),_0x35d264=[..._0xe562fe[_0x2aac0d(0x21b)],_0x5cb50f,..._0xe562fe[_0x2aac0d(0x204)]],_0x2231f9=await this[_0x2aac0d(0x1f7)][_0x2aac0d(0x206)](_0x35d264,_0x3ff5f5,TOKEN_COUNTING_MODES['ACCURATE']),_0x24f4af=(_0x5606fe-_0x2231f9)/_0x5606fe*0x64;return{'compactedMessages':_0x35d264,'strategy':_0x3c438c,'originalTokenCount':_0x5606fe,'compactedTokenCount':_0x2231f9,'reductionPercent':_0x24f4af,'segments':{'beginningCount':_0xe562fe['beginning'][_0x2aac0d(0x1f8)],'middleCount':_0xe562fe[_0x2aac0d(0x229)][_0x2aac0d(0x1f8)],'endCount':_0xe562fe[_0x2aac0d(0x204)][_0x2aac0d(0x1f8)],'summaryInserted':!![]}};}async[a0_0x315eb8(0x22f)](_0x310303,_0x34d052,_0x161c1a){const _0x1d0ded=a0_0x315eb8,_0x5d66d4=COMPACTION_STRATEGIES[_0x1d0ded(0x220)],_0x38fd7c=this[_0x1d0ded(0x1f7)]['getModelContextWindow'](_0x34d052),_0x40043c=Math['floor'](_0x38fd7c*0.8),_0x615e6f=await this[_0x1d0ded(0x1f7)]['estimateConversationTokens'](_0x310303,_0x34d052,TOKEN_COUNTING_MODES[_0x1d0ded(0x22d)]),_0x450d90=await this[_0x1d0ded(0x225)](_0x310303,_0x34d052,COMPACTION_CONFIG['TRUNCATION_BEGINNING_PERCENTAGE'],COMPACTION_CONFIG['TRUNCATION_END_PERCENTAGE']);this['logger']['debug'](_0x1d0ded(0x224),{'beginningMessages':_0x450d90['beginning']['length'],'middleMessages':_0x450d90[_0x1d0ded(0x229)]['length'],'endMessages':_0x450d90['end']['length'],'targetTokenCount':_0x40043c,'originalTokenCount':_0x615e6f});const _0x481ac2={'role':_0x1d0ded(0x211),'content':COMPACTION_CONFIG['COMPACTION_SEPARATOR_MESSAGE'],'type':'separator','timestamp':new Date()['toISOString'](),'metadata':{'truncatedMessages':_0x450d90['middle'][_0x1d0ded(0x1f8)],'reason':_0x1d0ded(0x22e)}},_0x3f0365=[..._0x450d90['beginning'],_0x481ac2,..._0x450d90['end']],_0x3d766b=await this[_0x1d0ded(0x1f7)][_0x1d0ded(0x206)](_0x3f0365,_0x34d052,TOKEN_COUNTING_MODES[_0x1d0ded(0x22d)]),_0x3e45e1=(_0x615e6f-_0x3d766b)/_0x615e6f*0x64;return{'compactedMessages':_0x3f0365,'strategy':_0x5d66d4,'originalTokenCount':_0x615e6f,'compactedTokenCount':_0x3d766b,'reductionPercent':_0x3e45e1,'segments':{'beginningCount':_0x450d90['beginning'][_0x1d0ded(0x1f8)],'middleCount':_0x450d90['middle']['length'],'endCount':_0x450d90['end'][_0x1d0ded(0x1f8)],'summaryInserted':![]}};}async[a0_0x315eb8(0x21f)](_0x12feb6,_0x4aa1cf,_0xee25d3){const _0x3c23f4=a0_0x315eb8,_0xb77aec=COMPACTION_STRATEGIES['AGGRESSIVE'],_0x595f13=await this[_0x3c23f4(0x1f7)][_0x3c23f4(0x206)](_0x12feb6,_0x4aa1cf,TOKEN_COUNTING_MODES['ACCURATE']),_0x4ee41b=await this[_0x3c23f4(0x225)](_0x12feb6,_0x4aa1cf,COMPACTION_CONFIG['AGGRESSIVE_BEGINNING_PERCENTAGE'],COMPACTION_CONFIG[_0x3c23f4(0x210)]);this[_0x3c23f4(0x1f9)]['debug']('Segments\x20identified\x20for\x20aggressive\x20compaction',{'beginningMessages':_0x4ee41b['beginning'][_0x3c23f4(0x1f8)],'middleMessages':_0x4ee41b['middle']['length'],'endMessages':_0x4ee41b[_0x3c23f4(0x204)]['length'],'middleStartIndex':_0x4ee41b['middleStartIndex'],'middleEndIndex':_0x4ee41b[_0x3c23f4(0x1f6)]});const _0x550812=await this[_0x3c23f4(0x21d)](_0x4ee41b['middle'],_0x4aa1cf,{..._0xee25d3,'aggressive':!![],'middleStartIndex':_0x4ee41b[_0x3c23f4(0x20b)],'middleEndIndex':_0x4ee41b['middleEndIndex']}),_0x479685=[..._0x4ee41b[_0x3c23f4(0x21b)],_0x550812,..._0x4ee41b['end']],_0x2c0eb8=await this['tokenCountingService']['estimateConversationTokens'](_0x479685,_0x4aa1cf,TOKEN_COUNTING_MODES[_0x3c23f4(0x22d)]),_0x24ca3b=(_0x595f13-_0x2c0eb8)/_0x595f13*0x64;return{'compactedMessages':_0x479685,'strategy':_0xb77aec,'originalTokenCount':_0x595f13,'compactedTokenCount':_0x2c0eb8,'reductionPercent':_0x24ca3b,'segments':{'beginningCount':_0x4ee41b['beginning']['length'],'middleCount':_0x4ee41b[_0x3c23f4(0x229)][_0x3c23f4(0x1f8)],'endCount':_0x4ee41b[_0x3c23f4(0x204)]['length'],'summaryInserted':!![]}};}async[a0_0x315eb8(0x225)](_0x36e200,_0x3c02ae,_0x332e7f,_0x403650){const _0x5186c6=a0_0x315eb8,_0x4f1af1=await this['tokenCountingService']['estimateConversationTokens'](_0x36e200,_0x3c02ae,TOKEN_COUNTING_MODES[_0x5186c6(0x22d)]),_0x530028=Math['floor'](_0x4f1af1*_0x332e7f),_0x45df24=Math['floor'](_0x4f1af1*_0x403650);let _0x295541=0x0,_0x45ecde=0x0;for(let _0x5c76f1=0x0;_0x5c76f1<_0x36e200['length'];_0x5c76f1++){const _0x471600=await this[_0x5186c6(0x1f7)]['countTokens'](_0x36e200[_0x5c76f1]['content'],_0x3c02ae,TOKEN_COUNTING_MODES[_0x5186c6(0x1e8)]);if(_0x295541+_0x471600>_0x530028&&_0x5c76f1>=0x2)break;_0x295541+=_0x471600,_0x45ecde=_0x5c76f1+0x1;}let _0x1a77bc=0x0,_0x5ae863=_0x36e200[_0x5186c6(0x1f8)];for(let _0x102112=_0x36e200['length']-0x1;_0x102112>=0x0;_0x102112--){const _0x106e55=await this['tokenCountingService'][_0x5186c6(0x217)](_0x36e200[_0x102112][_0x5186c6(0x20e)],_0x3c02ae,TOKEN_COUNTING_MODES['CACHED']);if(_0x1a77bc+_0x106e55>_0x45df24)break;_0x1a77bc+=_0x106e55,_0x5ae863=_0x102112;}_0x5ae863<_0x45ecde&&(_0x5ae863=_0x45ecde);const _0x4ffbd9=_0x36e200['slice'](0x0,_0x45ecde),_0x5c87f2=_0x36e200[_0x5186c6(0x1e6)](_0x45ecde,_0x5ae863),_0x8b8948=_0x36e200['slice'](_0x5ae863);return{'beginning':_0x4ffbd9,'middle':_0x5c87f2,'end':_0x8b8948,'middleStartIndex':_0x45ecde,'middleEndIndex':_0x5ae863-0x1};}async['_generateSummary'](_0xdfc913,_0x52fad9,_0x4201db={}){const _0x7008c9=a0_0x315eb8;if(_0xdfc913['length']===0x0)return{'role':_0x7008c9(0x211),'content':COMPACTION_CONFIG[_0x7008c9(0x212)]+_0x7008c9(0x1f0),'type':_0x7008c9(0x219),'timestamp':new Date()[_0x7008c9(0x203)]()};const _0x32f3aa=_0xdfc913['map'](_0x361c54=>_0x361c54[_0x7008c9(0x202)]+':\x20'+_0x361c54[_0x7008c9(0x20e)])['join']('\x0a\x0a'),_0x30c618=this['summaryPromptTemplate']['replace'](_0x7008c9(0x201),_0x32f3aa)[_0x7008c9(0x1f5)](_0x7008c9(0x1eb),_0x4201db['aggressive']?_0x7008c9(0x216):''),_0x3b666c=[COMPACTION_CONFIG['COMPACTION_MODEL'],...COMPACTION_CONFIG['COMPACTION_MODEL_FALLBACKS']];let _0x2f0e7e=null;for(const _0x2be14d of _0x3b666c){try{this[_0x7008c9(0x1f9)]['debug']('Generating\x20summary',{'compactionModel':_0x2be14d,'middleMessageCount':_0xdfc913[_0x7008c9(0x1f8)],'middleContentLength':_0x32f3aa[_0x7008c9(0x1f8)],'aggressive':_0x4201db[_0x7008c9(0x214)]});const _0x2f82d3=await this[_0x7008c9(0x226)][_0x7008c9(0x1fc)](_0x2be14d,_0x30c618,{'systemPrompt':_0x7008c9(0x20a),'maxTokens':COMPACTION_CONFIG[_0x7008c9(0x207)],'temperature':0.3,'sessionId':_0x4201db[_0x7008c9(0x1f1)],'platformProvided':!![]}),_0x154aed=_0x2f82d3['content'][_0x7008c9(0x1ea)](),_0x188146=_0x4201db['middleStartIndex']!==undefined&&_0x4201db['middleEndIndex']!==undefined?_0x7008c9(0x1ee)+_0x4201db[_0x7008c9(0x20b)]+'-'+_0x4201db[_0x7008c9(0x1f6)]:_0xdfc913[_0x7008c9(0x1f8)]+_0x7008c9(0x1e7);return this['logger'][_0x7008c9(0x20f)](_0x7008c9(0x227),{'compactionModel':_0x2be14d,'originalLength':_0x32f3aa['length'],'summaryLength':_0x154aed[_0x7008c9(0x1f8)],'compressionRatio':(_0x154aed[_0x7008c9(0x1f8)]/_0x32f3aa['length']*0x64)[_0x7008c9(0x1ed)](0x2)+'%','indexRange':_0x188146}),{'role':_0x7008c9(0x211),'content':COMPACTION_CONFIG['COMPACTION_SUMMARY_PREFIX']+'\x20-\x20'+_0x188146+']\x0a\x0a'+_0x154aed+'\x0a\x0a'+COMPACTION_CONFIG['COMPACTION_SUMMARY_SUFFIX'],'type':'summary','timestamp':new Date()['toISOString'](),'metadata':{'originalMessageCount':_0xdfc913['length'],'originalStartIndex':_0x4201db[_0x7008c9(0x20b)],'originalEndIndex':_0x4201db[_0x7008c9(0x1f6)],'compactionModel':_0x2be14d,'aggressive':_0x4201db[_0x7008c9(0x214)]||![]}};}catch(_0x3d7ee6){_0x2f0e7e=_0x3d7ee6,this[_0x7008c9(0x1f9)][_0x7008c9(0x1f4)]('Summary\x20generation\x20failed\x20with\x20model,\x20trying\x20next\x20fallback',{'compactionModel':_0x2be14d,'error':_0x3d7ee6[_0x7008c9(0x1fa)],'middleMessageCount':_0xdfc913['length']});}}this['logger']['error']('All\x20summary\x20generation\x20attempts\x20failed',{'modelsAttempted':_0x3b666c['length'],'lastError':_0x2f0e7e?.[_0x7008c9(0x1fa)],'middleMessageCount':_0xdfc913['length']});const _0x776a32=this['_createFallbackSummary'](_0xdfc913),_0x54ec99=_0x4201db['middleStartIndex']!==undefined&&_0x4201db[_0x7008c9(0x1f6)]!==undefined?_0x7008c9(0x1ee)+_0x4201db[_0x7008c9(0x20b)]+'-'+_0x4201db[_0x7008c9(0x1f6)]:_0xdfc913[_0x7008c9(0x1f8)]+'\x20messages';return{'role':_0x7008c9(0x211),'content':COMPACTION_CONFIG['COMPACTION_SUMMARY_PREFIX']+'\x20-\x20'+_0x54ec99+']\x0a\x0a'+_0x776a32+'\x0a\x0a'+COMPACTION_CONFIG['COMPACTION_SUMMARY_SUFFIX'],'type':'summary','timestamp':new Date()[_0x7008c9(0x203)](),'metadata':{'originalMessageCount':_0xdfc913[_0x7008c9(0x1f8)],'originalStartIndex':_0x4201db[_0x7008c9(0x20b)],'originalEndIndex':_0x4201db['middleEndIndex'],'fallback':!![],'error':_0x2f0e7e?.[_0x7008c9(0x1fa)],'modelsAttempted':_0x3b666c}};}['_createFallbackSummary'](_0x4574fe){const _0x51e10e=a0_0x315eb8,_0x2bf60c=_0x4574fe[_0x51e10e(0x1f8)],_0x48c008=_0x4574fe[_0x51e10e(0x22a)](_0x3f3f83=>_0x3f3f83[_0x51e10e(0x202)]),_0x5ef860=_0x48c008['filter'](_0x930f33=>_0x930f33==='user')[_0x51e10e(0x1f8)],_0x469eae=_0x48c008[_0x51e10e(0x1e9)](_0x36e53d=>_0x36e53d===_0x51e10e(0x208))['length'];return'['+_0x2bf60c+_0x51e10e(0x222)+_0x5ef860+'\x20user\x20messages,\x20'+_0x469eae+'\x20assistant\x20responses.\x20'+'Summary\x20generation\x20unavailable\x20-\x20middle\x20section\x20compressed\x20for\x20context\x20management.]';}[a0_0x315eb8(0x209)](){const _0x5f29ea=a0_0x315eb8;return _0x5f29ea(0x20d);}}export default ConversationCompactionService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3044c4=a0_0x1328;(function(_0x2420eb,_0x2e4bdc){const _0x32f8ca=a0_0x1328,_0x5bf1c2=_0x2420eb();while(!![]){try{const _0x5a0024=parseInt(_0x32f8ca(0xd3))/0x1+-parseInt(_0x32f8ca(0xfd))/0x2+parseInt(_0x32f8ca(0x8f))/0x3+parseInt(_0x32f8ca(0xd9))/0x4+-parseInt(_0x32f8ca(0xd4))/0x5*(parseInt(_0x32f8ca(0xdd))/0x6)+parseInt(_0x32f8ca(0xdf))/0x7*(-parseInt(_0x32f8ca(0xe8))/0x8)+parseInt(_0x32f8ca(0xcb))/0x9;if(_0x5a0024===_0x2e4bdc)break;else _0x5bf1c2['push'](_0x5bf1c2['shift']());}catch(_0x59d8e1){_0x5bf1c2['push'](_0x5bf1c2['shift']());}}}(a0_0x2b66,0x4d4db));function a0_0x2b66(){const _0x27ac98=['qxr0zw1WDgLUzYbLCNjVCIbYzwnVDMvYEq','BMfTzq','q2fUBM90igfKANvZDcb0Aw1LB3v0','y29UzMLN','zxjYB3i','rKLmrv9ot1rFrK9vtKq','z2v0twf4uMv0CMLLCW','CMvJB3zLCNLtDhjHDgvNAwvZ','zNjVBuvUDhjPzxm','AgfZ','BM90Awz5u3vIC2nYAwjLCNm','C3vJy2vZCW','tM8GCMvJB3zLCNKGC3rYyxrLz3KGyxzHAwXHyMXL','z2v0rxjYB3jtDgf0CW','D2fPDgvKx2zVCL9YyxrLx2XPBwL0','BgvUz3rO','ywn0Aw9U','zMLSzv9VCgvYyxrPB24','rxjYB3iGC3vIC2nYAwjLCIbJywXSyMfJAYbMywLSzwq','AxnqCM9JzxnZAw5NuxvLDwu','ywDLBNrjza','D2fYBG','ChjVy2vZC0vYCM9Y','AgLNAa','zMLSzv9UB3rFzM91BMrFCMvJB3zLCNK','Dg9mB3DLCKnHC2u','zxjYB3jrDwv1zq','C2v0','zxjYxW','z2vUzxjHDgvfCNjVCKLK','rK9sqKLerevo','zxjYB3jZqNLbz2vUDa','Bwf4uMv0CMLLCW','zgvIDwC','B3bLCMf0Aw9Uswq','t3bLCMf0Aw9UihrPBwvVDxqGzgv0zwn0zwq','yxr0zw1WDfjLy292zxj5','v2fPDgLUzYbMB3iGCMf0zsbSAw1PDcbYzwnVDMvYEq','tM8GAw5WDxqGzgf0ysb0BYbZyw5PDgL6zq','y3jPDgLJywXfCNjVCNm','rxjYB3iGChjVy2vZC2LUzYbMywLSzwq','C3vIC3rY','y29UDgv4Da','Dg90ywXfCNjVCNm','y29UzMLNDxjHDgLVBG','uMvJB3zLCNKGyxr0zw1WDcbMywLSzwq','Aw52ywXPza','uKfurv9msu1jvf9fwenfrurfra','C2v2zxjPDhK','ndGXntG4mLr1quLPtG','C2HVDwXKuMv0CNK','y2XLyxjfCNjVCLn0yxrZ','rxjYB3iGCMvJB3zLCNKGC3vJy2vZC2z1Ba','ywDLBNrFy29TBxvUAwnHDgLVBG','BM93','z2v0','vw5Oyw5KBgvKifjLAMvJDgLVBJOG','mJK2ndi3EeX6wg9M','mtu1swHUwvvo','ChjVy2vZC0vYCM9YuxvLDwu','DhLWzq','t1bfuKfusu9ox1rjtuvpvvq','ChvZAa','nte0nJeYreD3wu5W','zgv0zxjTAw5LrxjYB3juExbL','AgfUzgXLuMf0zuXPBwL0rxHJzwvKzwq','y3jPDgLJywW','mtC4otHXCef5twe','Dg9tDhjPBMC','n1bqt0Xbsa','Bg9Nz2vY','C3vJy2vZC2z1BfjLy292zxjPzxm','Aw5PDgLHBgL6zvjLy292zxj5u3rYyxrLz2LLCW','y29Kzq','zw1PDa','BwvZC2fNzq','vKfmsurbveLptL9fuLjpuG','y2fSy3vSyxrLuMf0zuXPBwL0v2fPDa','ndKWnJmXmLnlBLLkEq','zxjYB3jZqNLuExbL','rufdq0vt','DxbKyxrLrxjYB3jtDgf0CW','Dg9VBeLK','Aw5JBhvKzxm','zgv0zxjTAw5Lu2v2zxjPDhK','CMvJB3zLCMfIBgu','AgfUzgXLqxv0AgvUDgLJyxrPB25gywLSDxjL','B3bLCMf0Aw9U','rxjYB3iGCxvLDwuGChjVy2vZC2LUzYbMywLSzwq','DgLTzw91Da','C2v0DxbfCNjVCLbYB2nLC3nPBMC','vu5bvvrit1jjwKve','yxbPx3jLCxvLC3q','Bg93','CMvJB3zLCNLbDhrLBxb0CW','rxjYB3iGAgfUzgXPBMCGzMfPBgvK','CMv0CNLdB3vUDa','zxjYB3jtDgf0CW','CMvHC29U','ntaWmda2tujNDMTI','uMvJB3zLCNKGyxr0zw1WDcbMywLSzwq6ia','qvvusevoveLdqvrjt05FrKfjteve','BwLU','y2fSy3vSyxrLuMv0CNLezwXHEq','Dw5Oyw5KBgvKx3jLAMvJDgLVBG','Bg9NrxjYB3i','uhjVy2vZC2LUzYbLCNjVCIbIyxrJAa','ve9px01btLLFuKvrvuvtvfm','C3rHDhvZ','otm2nJy2CNPvvhbw','AgfUzgXLr2vUzxjPy0nYAxrPy2fSrxjYB3i','DMfSAwrHDgLVBG','AgfUzgXLq3jPDgLJywXfCNjVCG','AgfUzgXLt3bLCMf0Aw9UvgLTzw91Da','q3jPDgLJywWGzxjYB3iGAgfUzgXPBMCGzMfPBgvK','C3rHy2S','zxjYB3jtDwjZy3jPyMvYCW','vu5ltK9xtL9fuLjpuG','C3bSAwnL','rxjYB3iGCMvJB3zLCNKGzMfPBgvK'];a0_0x2b66=function(){return _0x27ac98;};return a0_0x2b66();}function a0_0x1328(_0x35ea0f,_0x264b38){_0x35ea0f=_0x35ea0f-0x87;const _0x2b66e7=a0_0x2b66();let _0x13289e=_0x2b66e7[_0x35ea0f];if(a0_0x1328['TSXqai']===undefined){var _0x4e375c=function(_0x3a4e76){const _0x16a5ff='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2e84d0='',_0x56cc65='';for(let _0x3a8ec8=0x0,_0x5227c6,_0x5cbd13,_0x157dda=0x0;_0x5cbd13=_0x3a4e76['charAt'](_0x157dda++);~_0x5cbd13&&(_0x5227c6=_0x3a8ec8%0x4?_0x5227c6*0x40+_0x5cbd13:_0x5cbd13,_0x3a8ec8++%0x4)?_0x2e84d0+=String['fromCharCode'](0xff&_0x5227c6>>(-0x2*_0x3a8ec8&0x6)):0x0){_0x5cbd13=_0x16a5ff['indexOf'](_0x5cbd13);}for(let _0x27f448=0x0,_0x1e94e5=_0x2e84d0['length'];_0x27f448<_0x1e94e5;_0x27f448++){_0x56cc65+='%'+('00'+_0x2e84d0['charCodeAt'](_0x27f448)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x56cc65);};a0_0x1328['wXsLFC']=_0x4e375c,a0_0x1328['kXCtLp']={},a0_0x1328['TSXqai']=!![];}const _0xa13463=_0x2b66e7[0x0],_0x4640d1=_0x35ea0f+_0xa13463,_0x588f42=a0_0x1328['kXCtLp'][_0x4640d1];return!_0x588f42?(_0x13289e=a0_0x1328['wXsLFC'](_0x13289e),a0_0x1328['kXCtLp'][_0x4640d1]=_0x13289e):_0x13289e=_0x588f42,_0x13289e;}import{ERROR_TYPES,HTTP_STATUS,AGENT_STATUS}from'../utilities/constants.js';export class ErrorHandler{constructor(_0x2e84d0,_0x56cc65){const _0x359ae6=a0_0x1328;this[_0x359ae6(0x9d)]=_0x2e84d0||{},this[_0x359ae6(0xe0)]=_0x56cc65,this[_0x359ae6(0xfb)]={'totalErrors':0x0,'errorsByType':new Map(),'errorsByAgent':new Map(),'recoveryAttempts':0x0,'successfulRecoveries':0x0,'criticalErrors':0x0},this['recoveryStrategies']=new Map(),this['errorSubscribers']=new Set(),this['errorQueue']=[],this['isProcessingQueue']=![],this[_0x359ae6(0xe2)](),this[_0x359ae6(0xf4)]();}async['handleError'](_0x3a8ec8,_0x5227c6={}){const _0x2e075f=a0_0x1328;try{const _0x5cbd13=this['classifyError'](_0x3a8ec8,_0x5227c6),_0x157dda=await this[_0x2e075f(0xb0)](_0x5cbd13);return this['updateErrorStats'](_0x5cbd13),this[_0x2e075f(0xa4)](_0x5cbd13,_0x157dda),_0x157dda;}catch(_0x27f448){return this['logger']['error'](_0x2e075f(0xf9),{'originalError':_0x3a8ec8[_0x2e075f(0xe5)],'handlingError':_0x27f448[_0x2e075f(0xe5)]}),{'success':![],'error':_0x27f448,'recovery':null,'severity':'critical'};}}['classifyError'](_0x1e94e5,_0x21ceab={}){const _0x375fc0=a0_0x1328,_0x161446={'id':this['generateErrorId'](),'timestamp':new Date()['toISOString'](),'message':_0x1e94e5['message']||_0x1e94e5[_0x375fc0(0xde)](),'stack':_0x1e94e5[_0x375fc0(0x95)]||null,'code':_0x1e94e5['code']||null,'type':this['determineErrorType'](_0x1e94e5,_0x21ceab),'severity':this[_0x375fc0(0xee)](_0x1e94e5,_0x21ceab),'context':{..._0x21ceab},'recoverable':!![],'retryCount':_0x21ceab[_0x375fc0(0xfa)]||0x0,'maxRetries':this['getMaxRetries'](_0x1e94e5,_0x21ceab)};return _0x21ceab[_0x375fc0(0xae)]&&(_0x161446[_0x375fc0(0xae)]=_0x21ceab['agentId']),_0x21ceab['toolId']&&(_0x161446[_0x375fc0(0xec)]=_0x21ceab[_0x375fc0(0xec)]),_0x21ceab[_0x375fc0(0xbc)]&&(_0x161446[_0x375fc0(0xbc)]=_0x21ceab['operationId']),_0x161446['recoverable']=this['isRecoverable'](_0x161446),_0x161446;}async[a0_0x3044c4(0xb0)](_0x124e8f){const _0x12566d=a0_0x3044c4;try{this[_0x12566d(0xe0)]['error']('Processing\x20error',{'errorId':_0x124e8f['id'],'type':_0x124e8f[_0x12566d(0xd6)],'severity':_0x124e8f['severity'],'agentId':_0x124e8f['agentId'],'message':_0x124e8f['message']});_0x124e8f['severity']===_0x12566d(0xdc)&&await this['handleCriticalError'](_0x124e8f);let _0x6f6797=null;return _0x124e8f[_0x12566d(0xef)]&&_0x124e8f[_0x12566d(0xfa)]<_0x124e8f['maxRetries']&&(_0x6f6797=await this[_0x12566d(0xbe)](_0x124e8f)),await this['logError'](_0x124e8f,_0x6f6797),{'success':_0x6f6797?.[_0x12566d(0xa5)]||![],'errorId':_0x124e8f['id'],'errorType':_0x124e8f[_0x12566d(0xd6)],'severity':_0x124e8f[_0x12566d(0xca)],'recovery':_0x6f6797,'shouldRetry':this['shouldRetry'](_0x124e8f,_0x6f6797),'retryDelay':this['calculateRetryDelay'](_0x124e8f)};}catch(processingError){return this['logger'][_0x12566d(0x9e)](_0x12566d(0xc2),{'errorId':_0x124e8f['id'],'processingError':processingError[_0x12566d(0xe5)]}),{'success':![],'errorId':_0x124e8f['id'],'errorType':_0x124e8f[_0x12566d(0xd6)],'severity':'critical','recovery':null,'shouldRetry':![]};}}async[a0_0x3044c4(0xbe)](_0x1405f9){const _0x3f3388=a0_0x3044c4;try{this['errorStats'][_0x3f3388(0xf8)]++;const _0x4919c6=this['recoveryStrategies']['get'](_0x1405f9[_0x3f3388(0xd6)])||this['recoveryStrategies'][_0x3f3388(0xd1)]('default');if(!_0x4919c6)return this[_0x3f3388(0xe0)][_0x3f3388(0xaf)]('No\x20recovery\x20strategy\x20found',{'errorType':_0x1405f9[_0x3f3388(0xd6)]}),{'success':![],'reason':_0x3f3388(0xa6)};this['logger']['info'](_0x3f3388(0x9a),{'errorId':_0x1405f9['id'],'errorType':_0x1405f9[_0x3f3388(0xd6)],'strategy':_0x4919c6[_0x3f3388(0x9b)],'retryCount':_0x1405f9[_0x3f3388(0xfa)]});const _0x6c7df8=await _0x4919c6['recover'](_0x1405f9);return _0x6c7df8[_0x3f3388(0xa5)]?(this['errorStats'][_0x3f3388(0xe1)]++,this[_0x3f3388(0xe0)]['info'](_0x3f3388(0xce),{'errorId':_0x1405f9['id'],'strategy':_0x4919c6['name']})):this[_0x3f3388(0xe0)]['warn'](_0x3f3388(0x99),{'errorId':_0x1405f9['id'],'strategy':_0x4919c6['name'],'reason':_0x6c7df8[_0x3f3388(0xfc)]}),_0x6c7df8;}catch(_0x1bd1d9){return this['logger'][_0x3f3388(0x9e)](_0x3f3388(0xc7),{'errorId':_0x1405f9['id'],'recoveryError':_0x1bd1d9[_0x3f3388(0xe5)]}),{'success':![],'reason':_0x3f3388(0xfe)+_0x1bd1d9['message']};}}async[a0_0x3044c4(0x92)](_0x27a88a){const _0xf5b593=a0_0x3044c4;try{this['errorStats']['criticalErrors']++,this['logger']['error']('Critical\x20error\x20detected',{'errorId':_0x27a88a['id'],'message':_0x27a88a['message'],'context':_0x27a88a[_0xf5b593(0xc4)]});typeof process!=='undefined'&&process[_0xf5b593(0xe4)]&&process['emit']('criticalError',_0x27a88a);switch(_0x27a88a[_0xf5b593(0xd6)]){case ERROR_TYPES['AUTHENTICATION_FAILED']:await this[_0xf5b593(0xf0)](_0x27a88a);break;case ERROR_TYPES[_0xf5b593(0xc9)]:await this[_0xf5b593(0xdb)](_0x27a88a);break;case ERROR_TYPES[_0xf5b593(0xd7)]:await this['handleOperationTimeout'](_0x27a88a);break;default:await this[_0xf5b593(0x90)](_0x27a88a);}}catch(_0xd2f030){this['logger']['error'](_0xf5b593(0x94),{'errorId':_0x27a88a['id'],'handlingError':_0xd2f030[_0xf5b593(0xe5)]});}}['determineErrorType'](_0x31a649,_0x2a26f0){const _0x3f95c9=a0_0x3044c4;if(_0x31a649['code']==='ENOENT'||_0x31a649[_0x3f95c9(0x8e)]===HTTP_STATUS['NOT_FOUND'])return ERROR_TYPES[_0x3f95c9(0x9f)];if(_0x31a649[_0x3f95c9(0xe3)]===_0x3f95c9(0xea)||_0x31a649['status']===HTTP_STATUS[_0x3f95c9(0xb8)])return ERROR_TYPES['PERMISSION_DENIED'];if(_0x31a649[_0x3f95c9(0x8e)]===HTTP_STATUS[_0x3f95c9(0xf5)])return ERROR_TYPES[_0x3f95c9(0x87)];if(_0x31a649['status']===HTTP_STATUS[_0x3f95c9(0x8d)])return ERROR_TYPES[_0x3f95c9(0xc9)];const _0x257f24=_0x31a649[_0x3f95c9(0xe5)]?.[_0x3f95c9(0xb3)]()||'';if(_0x257f24['includes']('timeout')||_0x257f24['includes']('timed\x20out'))return ERROR_TYPES['OPERATION_TIMEOUT'];if(_0x257f24[_0x3f95c9(0xed)](_0x3f95c9(0x91))||_0x257f24[_0x3f95c9(0xed)](_0x3f95c9(0xc8)))return ERROR_TYPES['VALIDATION_ERROR'];if(_0x257f24[_0x3f95c9(0xed)](_0x3f95c9(0x9d))||_0x257f24['includes'](_0x3f95c9(0xc6)))return ERROR_TYPES['CONFIGURATION_ERROR'];if(_0x2a26f0[_0x3f95c9(0xf1)]===_0x3f95c9(0xab))return ERROR_TYPES['FILE_NOT_FOUND'];if(_0x2a26f0['operation']===_0x3f95c9(0xf6))return ERROR_TYPES['RATE_LIMIT_EXCEEDED'];return ERROR_TYPES[_0x3f95c9(0x97)];}[a0_0x3044c4(0xee)](_0x178a4c,_0x4cbeac){const _0x4bb0f0=a0_0x3044c4,_0x6e3558=[ERROR_TYPES[_0x4bb0f0(0x87)],ERROR_TYPES['CONFIGURATION_ERROR']],_0x960506=[ERROR_TYPES[_0x4bb0f0(0xc9)],ERROR_TYPES['OPERATION_TIMEOUT'],ERROR_TYPES['PERMISSION_DENIED']],_0x53c108=this['determineErrorType'](_0x178a4c,_0x4cbeac);if(_0x6e3558[_0x4bb0f0(0xed)](_0x53c108))return'critical';if(_0x960506['includes'](_0x53c108))return _0x4bb0f0(0xb1);const _0xc846da=_0x4cbeac&&_0x4cbeac[_0x4bb0f0(0xfa)]||0x0;if(_0xc846da>=0x3)return _0x4bb0f0(0xb1);if(_0x4cbeac&&_0x4cbeac[_0x4bb0f0(0xae)]&&_0x4cbeac['operation']===_0x4bb0f0(0xcf))return'medium';return _0x4bb0f0(0xf7);}['isRecoverable'](_0x25e35f){const _0x5cf96a=a0_0x3044c4,_0x322d1b=[ERROR_TYPES['AUTHENTICATION_FAILED'],ERROR_TYPES['CONFIGURATION_ERROR']];if(_0x322d1b[_0x5cf96a(0xed)](_0x25e35f[_0x5cf96a(0xd6)]))return![];if(_0x25e35f['retryCount']>=_0x25e35f['maxRetries'])return![];if(_0x25e35f['severity']==='critical')return![];return!![];}[a0_0x3044c4(0xa0)](_0x185a03,_0xa5f43){const _0x1305b5=a0_0x3044c4,_0x5b46ea=this[_0x1305b5(0xda)](_0x185a03,_0xa5f43),_0x227c1b={[ERROR_TYPES[_0x1305b5(0xc9)]]:0x5,[ERROR_TYPES['OPERATION_TIMEOUT']]:0x3,[ERROR_TYPES['FILE_NOT_FOUND']]:0x2,[ERROR_TYPES['PERMISSION_DENIED']]:0x1,[ERROR_TYPES[_0x1305b5(0xe6)]]:0x2,[ERROR_TYPES[_0x1305b5(0x97)]]:0x3};return _0x227c1b[_0x5b46ea]||0x3;}[a0_0x3044c4(0xcc)](_0x205561,_0x43d241){const _0x1d9fba=a0_0x3044c4;if(!_0x205561['recoverable'])return![];if(_0x205561[_0x1d9fba(0xfa)]>=_0x205561[_0x1d9fba(0xba)])return![];if(_0x43d241&&_0x43d241[_0x1d9fba(0xa5)])return![];return!![];}[a0_0x3044c4(0x89)](_0x32936c){const _0xd5c3f5=a0_0x3044c4,_0x5bb76d=0x3e8,_0x3e2edd=0x7530,_0x2a287d=_0x5bb76d*Math['pow'](0x2,_0x32936c['retryCount']),_0x5acbcf=Math['random']()*0x3e8;return Math[_0xd5c3f5(0x88)](_0x2a287d+_0x5acbcf,_0x3e2edd);}['initializeRecoveryStrategies'](){const _0x21c961=a0_0x3044c4;this['recoveryStrategies']['set'](ERROR_TYPES['FILE_NOT_FOUND'],{'name':_0x21c961(0xb2),'recover':async _0x1a908a=>{const _0x566274=_0x21c961;if(_0x1a908a[_0x566274(0xc4)]['filePath'])return{'success':![],'reason':'File\x20recovery\x20not\x20implemented\x20yet','suggestion':'Check\x20file\x20path\x20and\x20permissions'};return{'success':![],'reason':'No\x20file\x20path\x20provided'};}}),this[_0x21c961(0xa1)][_0x21c961(0xb5)](ERROR_TYPES[_0x21c961(0xc9)],{'name':'rate_limit_recovery','recover':async _0x52ae42=>{const _0x43520c=_0x21c961,_0x8e1495=this[_0x43520c(0xe7)](_0x52ae42);return this[_0x43520c(0xe0)]['info'](_0x43520c(0xbf),{'waitTime':_0x8e1495}),await new Promise(_0x55141b=>setTimeout(_0x55141b,_0x8e1495)),{'success':!![],'action':_0x43520c(0xa8),'waitTime':_0x8e1495};}}),this['recoveryStrategies'][_0x21c961(0xb5)](ERROR_TYPES['OPERATION_TIMEOUT'],{'name':'timeout_recovery','recover':async _0x4b3ee9=>{const _0x49ceb5=_0x21c961;if(_0x4b3ee9[_0x49ceb5(0xc4)][_0x49ceb5(0xf3)]){const _0x3ebd23=Math['min'](_0x4b3ee9[_0x49ceb5(0xc4)]['timeout']*1.5,0x493e0);return{'success':!![],'action':'increased_timeout','newTimeout':_0x3ebd23};}return{'success':![],'reason':_0x49ceb5(0x9c)};}}),this['recoveryStrategies']['set'](ERROR_TYPES['PERMISSION_DENIED'],{'name':'permission_recovery','recover':async _0x5e36a6=>{return{'success':![],'reason':'Permission\x20errors\x20require\x20manual\x20intervention','suggestion':'Check\x20file/directory\x20permissions'};}}),this[_0x21c961(0xa1)][_0x21c961(0xb5)](ERROR_TYPES[_0x21c961(0xe6)],{'name':'validation_recovery','recover':async _0x21a0fc=>{const _0x3f7750=_0x21c961;if(_0x21a0fc[_0x3f7750(0xc4)]['inputData'])return{'success':!![],'action':'data_sanitization','suggestion':'Input\x20data\x20was\x20sanitized\x20for\x20retry'};return{'success':![],'reason':_0x3f7750(0xc0)};}}),this[_0x21c961(0xa1)]['set']('default',{'name':'default_recovery','recover':async _0x3d8977=>{const _0x380817=this['calculateRetryDelay'](_0x3d8977);return await new Promise(_0x39eb4b=>setTimeout(_0x39eb4b,_0x380817)),{'success':!![],'action':'delay_retry','delay':_0x380817};}});}async['handleAuthenticationFailure'](_0xbbb191){const _0x1037f2=a0_0x3044c4;this[_0x1037f2(0xe0)][_0x1037f2(0x9e)]('Authentication\x20failure\x20detected',{'errorId':_0xbbb191['id']});if(_0xbbb191['agentId']){}}async[a0_0x3044c4(0xdb)](_0x2987a5){const _0x43eacb=a0_0x3044c4,_0x38b22c=this[_0x43eacb(0xe7)](_0x2987a5);this['logger']['warn']('Rate\x20limit\x20exceeded,\x20implementing\x20backoff',{'errorId':_0x2987a5['id'],'waitTime':_0x38b22c,'agentId':_0x2987a5[_0x43eacb(0xae)]});if(_0x2987a5['agentId']){}}async[a0_0x3044c4(0x93)](_0x2cc138){const _0x49405d=a0_0x3044c4;this['logger'][_0x49405d(0x9e)](_0x49405d(0xbd),{'errorId':_0x2cc138['id'],'operation':_0x2cc138['context'][_0x49405d(0xf1)],'timeout':_0x2cc138['context']['timeout']});}async[a0_0x3044c4(0x90)](_0x278348){const _0x2f9c72=a0_0x3044c4;this['logger']['error']('Generic\x20critical\x20error',{'errorId':_0x278348['id'],'type':_0x278348['type'],'message':_0x278348['message']}),_0x278348['agentId']&&this['logger'][_0x2f9c72(0xaf)]('Considering\x20agent\x20pause\x20due\x20to\x20critical\x20error',{'agentId':_0x278348['agentId']});}['calculateRateLimitWait'](_0x1b3749){const _0x376a9c=0xea60,_0x2c15cf=Math['pow'](0x2,_0x1b3749['retryCount']),_0x7d7f63=0x493e0;return Math['min'](_0x376a9c*_0x2c15cf,_0x7d7f63);}async[a0_0x3044c4(0x8b)](_0x41c24f,_0x34e5f0){const _0x42b97b=a0_0x3044c4;try{const _0x146b7d={'errorId':_0x41c24f['id'],'timestamp':_0x41c24f['timestamp'],'type':_0x41c24f[_0x42b97b(0xd6)],'severity':_0x41c24f['severity'],'message':_0x41c24f['message'],'agentId':_0x41c24f['agentId'],'toolId':_0x41c24f[_0x42b97b(0xec)],'operationId':_0x41c24f['operationId'],'retryCount':_0x41c24f[_0x42b97b(0xfa)],'recoveryAttempted':!!_0x34e5f0,'recoverySuccess':_0x34e5f0?.['success']||![],'recoveryAction':_0x34e5f0?.[_0x42b97b(0xaa)]||null};this[_0x42b97b(0xb4)][_0x42b97b(0xd8)](_0x146b7d),!this['isProcessingQueue']&&this['processErrorQueue']();}catch(_0x4f9f62){this[_0x42b97b(0xe0)]['error']('Error\x20logging\x20failed',{'errorId':_0x41c24f['id'],'loggingError':_0x4f9f62['message']});}}async['processErrorQueue'](){const _0x55d127=a0_0x3044c4;if(this[_0x55d127(0xad)]||this[_0x55d127(0xb4)]['length']===0x0)return;this['isProcessingQueue']=!![];try{while(this['errorQueue']['length']>0x0){const _0x216547=this['errorQueue'][_0x55d127(0x98)](0x0,0xa);this[_0x55d127(0xe0)][_0x55d127(0xbb)](_0x55d127(0x8c),{'batchSize':_0x216547[_0x55d127(0xa9)]}),await new Promise(_0x443435=>setTimeout(_0x443435,0x64));}}catch(processingError){this[_0x55d127(0xe0)][_0x55d127(0x9e)](_0x55d127(0xf2),{'error':processingError[_0x55d127(0xe5)]});}finally{this['isProcessingQueue']=![];}}[a0_0x3044c4(0xf4)](){setInterval(()=>{const _0x36050a=a0_0x1328;this['errorQueue'][_0x36050a(0xa9)]>0x0&&this[_0x36050a(0xd5)]();},0x1388),typeof process!=='undefined'&&(process['on']('uncaughtException',_0x3f68fa=>{this['handleError'](_0x3f68fa,{'type':'uncaught_exception','severity':'critical'});}),process['on']('unhandledRejection',(_0x492532,_0x522409)=>{const _0x29cd65=a0_0x1328;this['handleError'](new Error(_0x29cd65(0xd2)+_0x492532),{'type':_0x29cd65(0x8a),'severity':'high','promise':_0x522409[_0x29cd65(0xde)]()});}));}[a0_0x3044c4(0xeb)](_0x37cc8a){const _0x11de56=a0_0x3044c4;this['errorStats'][_0x11de56(0xc5)]++,!this['errorStats'][_0x11de56(0xe9)][_0x11de56(0xa3)](_0x37cc8a[_0x11de56(0xd6)])&&this[_0x11de56(0xfb)][_0x11de56(0xe9)]['set'](_0x37cc8a['type'],0x0),this[_0x11de56(0xfb)][_0x11de56(0xe9)][_0x11de56(0xb5)](_0x37cc8a['type'],this[_0x11de56(0xfb)][_0x11de56(0xe9)]['get'](_0x37cc8a[_0x11de56(0xd6)])+0x1),_0x37cc8a['agentId']&&(!this[_0x11de56(0xfb)][_0x11de56(0xb9)][_0x11de56(0xa3)](_0x37cc8a[_0x11de56(0xae)])&&this[_0x11de56(0xfb)][_0x11de56(0xb9)][_0x11de56(0xb5)](_0x37cc8a['agentId'],0x0),this[_0x11de56(0xfb)]['errorsByAgent']['set'](_0x37cc8a[_0x11de56(0xae)],this['errorStats'][_0x11de56(0xb9)][_0x11de56(0xd1)](_0x37cc8a['agentId'])+0x1));}['subscribe'](_0x275b9c){const _0x5c00ed=a0_0x3044c4;return this[_0x5c00ed(0x96)]['add'](_0x275b9c),()=>this[_0x5c00ed(0x96)]['delete'](_0x275b9c);}['notifySubscribers'](_0x4476f8,_0x249a97){const _0x41b02f=a0_0x3044c4;this[_0x41b02f(0x96)]['forEach'](_0x21ed3b=>{const _0x18576a=_0x41b02f;try{_0x21ed3b(_0x4476f8,_0x249a97);}catch(_0x3b1332){this[_0x18576a(0xe0)]['error'](_0x18576a(0xac),{'error':_0x3b1332[_0x18576a(0xe5)]});}});}[a0_0x3044c4(0xb7)](){const _0x3489cc=a0_0x3044c4;return _0x3489cc(0xb6)+Date[_0x3489cc(0xd0)]()+'_'+Math['random']()['toString'](0x24)[_0x3489cc(0xc3)](0x2,0x9);}[a0_0x3044c4(0xa7)](){const _0x1e500f=a0_0x3044c4;return{'totalErrors':this[_0x1e500f(0xfb)]['totalErrors'],'errorsByType':Object[_0x1e500f(0xa2)](this[_0x1e500f(0xfb)][_0x1e500f(0xe9)]),'errorsByAgent':Object['fromEntries'](this['errorStats']['errorsByAgent']),'recoveryAttempts':this['errorStats']['recoveryAttempts'],'successfulRecoveries':this['errorStats'][_0x1e500f(0xe1)],'recoverySuccessRate':this['errorStats']['recoveryAttempts']>0x0?this[_0x1e500f(0xfb)][_0x1e500f(0xe1)]/this['errorStats'][_0x1e500f(0xf8)]:0x0,'criticalErrors':this[_0x1e500f(0xfb)][_0x1e500f(0xc1)],'queueLength':this[_0x1e500f(0xb4)]['length']};}[a0_0x3044c4(0xcd)](){const _0x4a3d3f=a0_0x3044c4;this[_0x4a3d3f(0xfb)]={'totalErrors':0x0,'errorsByType':new Map(),'errorsByAgent':new Map(),'recoveryAttempts':0x0,'successfulRecoveries':0x0,'criticalErrors':0x0},this['errorQueue']=[];}}export default ErrorHandler;
|
|
1
|
+
const a0_0xa497da=a0_0x5363;(function(_0x4b42ad,_0xc334f){const _0x2af50f=a0_0x5363,_0x19d0b2=_0x4b42ad();while(!![]){try{const _0x10508f=parseInt(_0x2af50f(0xe0))/0x1*(-parseInt(_0x2af50f(0x124))/0x2)+-parseInt(_0x2af50f(0x12c))/0x3*(parseInt(_0x2af50f(0xf0))/0x4)+-parseInt(_0x2af50f(0x123))/0x5+parseInt(_0x2af50f(0xdf))/0x6*(parseInt(_0x2af50f(0x11d))/0x7)+parseInt(_0x2af50f(0x116))/0x8*(parseInt(_0x2af50f(0xf7))/0x9)+parseInt(_0x2af50f(0xf1))/0xa+parseInt(_0x2af50f(0xd4))/0xb*(-parseInt(_0x2af50f(0xfb))/0xc);if(_0x10508f===_0xc334f)break;else _0x19d0b2['push'](_0x19d0b2['shift']());}catch(_0x49dfd8){_0x19d0b2['push'](_0x19d0b2['shift']());}}}(a0_0x4316,0xe8e18));function a0_0x4316(){const _0x48a289=['Bg93','C2HVDwXKuMv0CNK','ywrK','zgf0yv9Zyw5PDgL6yxrPB24','Dg90ywXfCNjVCNm','q3jPDgLJywWGzxjYB3iGzgv0zwn0zwq','zxjYB3jZqNLbz2vUDa','rxjYB3iGC3vIC2nYAwjLCIbJywXSyMfJAYbMywLSzwq','otLSDfbgteK','rKLmrv9ot1rFrK9vtKq','AxnszwnVDMvYywjSzq','vu5bvvrit1jjwKve','zxjYB3jZqNLuExbL','yxr0zw1WDfjLy292zxj5','zgv0zxjTAw5LrxjYB3juExbL','ywDLBNrjza','AgfUzgXLt3bLCMf0Aw9UvgLTzw91Da','uevstuLtu0LptL9eru5jruq','DgLTzw91Da','mtHczgnuzeC','mwDYDNzdzq','D2fYBG','zMLSzv9VCgvYyxrPB24','AgfUzgXLuMf0zuXPBwL0rxHJzwvKzwq','ChjVy2vZC0vYCM9Y','rxjYB3iGBg9Nz2LUzYbMywLSzwq','BwvZC2fNzq','y2fSy3vSyxrLuMf0zuXPBwL0v2fPDa','Dg9VBeLK','tM8GCMvJB3zLCNKGC3rYyxrLz3KGzM91BMq','Bwf4uMv0CMLLCW','y29Kzq','zxjYB3jtDwjZy3jPyMvYCW','zgv0zxjTAw5Lu2v2zxjPDhK','sw5WDxqGzgf0ysb3yxmGC2fUAxrPEMvKigzVCIbYzxrYEq','Aw5JBhvKzxm','ofbvCKXivG','otq4odG4mhfJBxb4sG','y29UzMLNDxjHDgLVBG','B3bLCMf0Aw9U','BMfTzq','DhLWzq','zxjYxW','mtyWmJG3mZLNAw1PBgG','DgLTzxn0yw1W','CMvJB3zLCMfIBgu','Dw5Oyw5KBgvKx3jLAMvJDgLVBG','mJqYnJyXnNP6yuD1yq','vu5ltK9xtL9fuLjpuG','C3vJy2vZC2z1BfjLy292zxjPzxm','BwLU','DxbKyxrLrxjYB3jtDgf0CW','C3vJy2vZCW','Bg9NrxjYB3i','uKfurv9msu1jvf9fwenfrurfra','Dw5JyxvNAhrfEgnLChrPB24','ru5pru5u','z2v0twf4uMv0CMLLCW','Aw5MBW','zxjYB3i','CMvHC29U','AgfZ','CMv0CNLdB3vUDa','rxjYB3iGChjVy2vZC2LUzYbMywLSzwq','uMf0zsbSAw1PDcbLEgnLzwrLzcWGAw1WBgvTzw50Aw5NigjHy2TVzMy','Dg9tDhjPBMC','B3bLCMf0Aw9Uswq','zxjYB3jtDgf0CW','Dg9mB3DLCKnHC2u','z2vUzxjHDgvfCNjVCKLK','y2XHC3nPzNLfCNjVCG','DMfSAwrHDgLVBG','zNjVBuvUDhjPzxm','C3rHy2S','oerivw5YDG','Aw52ywXPza','q3jPDgLJywWGzxjYB3iGAgfUzgXPBMCGzMfPBgvK','Aw5JCMvHC2vKx3rPBwvVDxq','Aw5PDgLHBgL6zvjLy292zxj5u3rYyxrLz2LLCW','zgvIDwC','AgfUzgXLqxv0AgvUDgLJyxrPB25gywLSDxjL','ndi4ntqWn3vdu2zWra','q09orKLhvvjbveLptL9fuLjpuG','zMLSzv9UB3rFzM91BMrFCMvJB3zLCNK','ve9px01btLLFuKvrvuvtvfm','tM8GCMvJB3zLCNKGC3rYyxrLz3KGyxzHAwXHyMXL','Cg93','ndu1nJC0mfHVrwT4tW','mtqXmdHxwLLIt1G','Dw5Oyw5KBgvKuMvQzwn0Aw9U','Bg9Nz2vY','AgfUzgXLq3jPDgLJywXfCNjVCG','q29UC2LKzxjPBMCGywDLBNqGCgf1C2uGzhvLihrVignYAxrPy2fSigvYCM9Y','y29UDgv4Da','y3jPDgLJywW','CMvJB3zLCNLbDhrLBxb0CW','mtmXmtmYn0PXvhjAzG','qvvusevoveLdqvrjt05FrKfjteve','tK9ux0zpvu5e','AgLNAa','y2fSy3vSyxrLuMv0CNLezwXHEq','Dw5KzwzPBMvK','ywDLBNrFy29TBxvUAwnHDgLVBG','Aw5WDxreyxrH','zM9YrwfJAa','z2v0','vKfmsurbveLptL9fuLjpuG','C2v2zxjPDhK','t1bfuKfusu9ox1rjtuvpvvq','CgvYBwLZC2LVBL9YzwnVDMvYEq','ChjVy2vZC0vYCM9YuxvLDwu','z2v0rxjYB3jtDgf0CW','C2v0','rufdq0vt','uMvJB3zLCNKGyxr0zw1WDcbMywLSzwq','BM93','CMvJB3zLCNLtDhjHDgvNAwvZ','zxjYB3jrDwv1zq'];a0_0x4316=function(){return _0x48a289;};return a0_0x4316();}import{ERROR_TYPES,HTTP_STATUS,AGENT_STATUS}from'../utilities/constants.js';export class ErrorHandler{constructor(_0x27596d,_0x1ed529){const _0x55416b=a0_0x5363;this['config']=_0x27596d||{},this['logger']=_0x1ed529,this['errorStats']={'totalErrors':0x0,'errorsByType':new Map(),'errorsByAgent':new Map(),'recoveryAttempts':0x0,'successfulRecoveries':0x0,'criticalErrors':0x0},this[_0x55416b(0xca)]=new Map(),this[_0x55416b(0xec)]=new Set(),this[_0x55416b(0xcb)]=[],this['isProcessingQueue']=![],this['initializeRecoveryStrategies'](),this['setupErrorProcessing']();}async['handleError'](_0x531346,_0x25316e={}){const _0x39720a=a0_0x5363;try{const _0x3e3f2d=this[_0x39720a(0x112)](_0x531346,_0x25316e),_0x27dfa5=await this['processError'](_0x3e3f2d);return this[_0x39720a(0xff)](_0x3e3f2d),this['notifySubscribers'](_0x3e3f2d,_0x27dfa5),_0x27dfa5;}catch(_0x19eb6a){return this['logger'][_0x39720a(0x107)]('Error\x20handling\x20failed',{'originalError':_0x531346['message'],'handlingError':_0x19eb6a['message']}),{'success':![],'error':_0x19eb6a,'recovery':null,'severity':_0x39720a(0x12a)};}}[a0_0xa497da(0x112)](_0x75365b,_0x215010={}){const _0x9e8b68=a0_0xa497da,_0x3efcec={'id':this[_0x9e8b68(0x111)](),'timestamp':new Date()['toISOString'](),'message':_0x75365b[_0x9e8b68(0xe6)]||_0x75365b[_0x9e8b68(0x10d)](),'stack':_0x75365b[_0x9e8b68(0x115)]||null,'code':_0x75365b['code']||null,'type':this[_0x9e8b68(0xda)](_0x75365b,_0x215010),'severity':this[_0x9e8b68(0xed)](_0x75365b,_0x215010),'context':{..._0x215010},'recoverable':!![],'retryCount':_0x215010[_0x9e8b68(0x10a)]||0x0,'maxRetries':this[_0x9e8b68(0x105)](_0x75365b,_0x215010)};return _0x215010['agentId']&&(_0x3efcec['agentId']=_0x215010[_0x9e8b68(0xdb)]),_0x215010[_0x9e8b68(0xe8)]&&(_0x3efcec[_0x9e8b68(0xe8)]=_0x215010[_0x9e8b68(0xe8)]),_0x215010[_0x9e8b68(0x10e)]&&(_0x3efcec[_0x9e8b68(0x10e)]=_0x215010[_0x9e8b68(0x10e)]),_0x3efcec['recoverable']=this[_0x9e8b68(0xd6)](_0x3efcec),_0x3efcec;}async[a0_0xa497da(0xe4)](_0x13707d){const _0x4119ec=a0_0xa497da;try{this[_0x4119ec(0x126)]['error']('Processing\x20error',{'errorId':_0x13707d['id'],'type':_0x13707d[_0x4119ec(0xf5)],'severity':_0x13707d[_0x4119ec(0xc1)],'agentId':_0x13707d['agentId'],'message':_0x13707d['message']});_0x13707d[_0x4119ec(0xc1)]==='critical'&&await this['handleCriticalError'](_0x13707d);let _0x2f315e=null;return _0x13707d[_0x4119ec(0xf9)]&&_0x13707d[_0x4119ec(0x10a)]<_0x13707d['maxRetries']&&(_0x2f315e=await this[_0x4119ec(0xd9)](_0x13707d)),await this[_0x4119ec(0x101)](_0x13707d,_0x2f315e),{'success':_0x2f315e?.['success']||![],'errorId':_0x13707d['id'],'errorType':_0x13707d['type'],'severity':_0x13707d['severity'],'recovery':_0x2f315e,'shouldRetry':this['shouldRetry'](_0x13707d,_0x2f315e),'retryDelay':this[_0x4119ec(0x130)](_0x13707d)};}catch(processingError){return this[_0x4119ec(0x126)]['error'](_0x4119ec(0x10b),{'errorId':_0x13707d['id'],'processingError':processingError['message']}),{'success':![],'errorId':_0x13707d['id'],'errorType':_0x13707d[_0x4119ec(0xf5)],'severity':'critical','recovery':null,'shouldRetry':![]};}}async['attemptRecovery'](_0x2c57a7){const _0x18442b=a0_0xa497da;try{this[_0x18442b(0x10f)]['recoveryAttempts']++;const _0x266ead=this[_0x18442b(0xca)]['get'](_0x2c57a7['type'])||this[_0x18442b(0xca)][_0x18442b(0x135)]('default');if(!_0x266ead)return this['logger'][_0x18442b(0xe1)](_0x18442b(0xe9),{'errorType':_0x2c57a7['type']}),{'success':![],'reason':_0x18442b(0x121)};this[_0x18442b(0x126)]['info']('Attempting\x20error\x20recovery',{'errorId':_0x2c57a7['id'],'errorType':_0x2c57a7['type'],'strategy':_0x266ead['name'],'retryCount':_0x2c57a7['retryCount']});const _0x2fdba7=await _0x266ead['recover'](_0x2c57a7);return _0x2fdba7[_0x18442b(0x100)]?(this[_0x18442b(0x10f)]['successfulRecoveries']++,this[_0x18442b(0x126)][_0x18442b(0x106)]('Error\x20recovery\x20successful',{'errorId':_0x2c57a7['id'],'strategy':_0x266ead[_0x18442b(0xf4)]})):this['logger']['warn']('Error\x20recovery\x20failed',{'errorId':_0x2c57a7['id'],'strategy':_0x266ead['name'],'reason':_0x2fdba7[_0x18442b(0x108)]}),_0x2fdba7;}catch(_0x4220ff){return this['logger'][_0x18442b(0x107)](_0x18442b(0xc8),{'errorId':_0x2c57a7['id'],'recoveryError':_0x4220ff['message']}),{'success':![],'reason':'Recovery\x20attempt\x20failed:\x20'+_0x4220ff[_0x18442b(0xe6)]};}}async[a0_0xa497da(0x127)](_0x22d5b3){const _0x3d3a80=a0_0xa497da;try{this[_0x3d3a80(0x10f)]['criticalErrors']++,this['logger'][_0x3d3a80(0x107)](_0x3d3a80(0xd1),{'errorId':_0x22d5b3['id'],'message':_0x22d5b3[_0x3d3a80(0xe6)],'context':_0x22d5b3[_0x3d3a80(0x129)]});typeof process!=='undefined'&&process['emit']&&process['emit']('criticalError',_0x22d5b3);switch(_0x22d5b3['type']){case ERROR_TYPES['AUTHENTICATION_FAILED']:await this[_0x3d3a80(0x11c)](_0x22d5b3);break;case ERROR_TYPES['RATE_LIMIT_EXCEEDED']:await this[_0x3d3a80(0xe3)](_0x22d5b3);break;case ERROR_TYPES['OPERATION_TIMEOUT']:await this[_0x3d3a80(0xdc)](_0x22d5b3);break;default:await this['handleGenericCriticalError'](_0x22d5b3);}}catch(_0x873d8a){this['logger'][_0x3d3a80(0x107)](_0x3d3a80(0x118),{'errorId':_0x22d5b3['id'],'handlingError':_0x873d8a['message']});}}['determineErrorType'](_0x2a2cf3,_0x2fbe2d){const _0x1a285f=a0_0xa497da;if(_0x2a2cf3[_0x1a285f(0xeb)]===_0x1a285f(0x104)||_0x2a2cf3['status']===HTTP_STATUS[_0x1a285f(0x12e)])return ERROR_TYPES[_0x1a285f(0xd5)];if(_0x2a2cf3['code']===_0x1a285f(0xc7)||_0x2a2cf3['status']===HTTP_STATUS['FORBIDDEN'])return ERROR_TYPES[_0x1a285f(0xdd)];if(_0x2a2cf3['status']===HTTP_STATUS[_0x1a285f(0xd7)])return ERROR_TYPES[_0x1a285f(0x12d)];if(_0x2a2cf3['status']===HTTP_STATUS[_0x1a285f(0x120)])return ERROR_TYPES[_0x1a285f(0x102)];const _0x306ae3=_0x2a2cf3[_0x1a285f(0xe6)]?.[_0x1a285f(0x110)]()||'';if(_0x306ae3[_0x1a285f(0xef)](_0x1a285f(0xde))||_0x306ae3['includes']('timed\x20out'))return ERROR_TYPES['OPERATION_TIMEOUT'];if(_0x306ae3['includes'](_0x1a285f(0x113))||_0x306ae3['includes'](_0x1a285f(0x117)))return ERROR_TYPES[_0x1a285f(0x136)];if(_0x306ae3['includes']('config')||_0x306ae3[_0x1a285f(0xef)](_0x1a285f(0xf2)))return ERROR_TYPES['CONFIGURATION_ERROR'];if(_0x2fbe2d[_0x1a285f(0xf3)]===_0x1a285f(0xe2))return ERROR_TYPES[_0x1a285f(0xd5)];if(_0x2fbe2d['operation']==='api_request')return ERROR_TYPES['RATE_LIMIT_EXCEEDED'];return ERROR_TYPES[_0x1a285f(0xfc)];}[a0_0xa497da(0xed)](_0x3b8199,_0x5c48f4){const _0x75d57a=a0_0xa497da,_0x1dce81=[ERROR_TYPES['AUTHENTICATION_FAILED'],ERROR_TYPES[_0x75d57a(0x11e)]],_0x4e69b3=[ERROR_TYPES['RATE_LIMIT_EXCEEDED'],ERROR_TYPES['OPERATION_TIMEOUT'],ERROR_TYPES['PERMISSION_DENIED']],_0x2e738b=this[_0x75d57a(0xda)](_0x3b8199,_0x5c48f4);if(_0x1dce81[_0x75d57a(0xef)](_0x2e738b))return _0x75d57a(0x12a);if(_0x4e69b3[_0x75d57a(0xef)](_0x2e738b))return _0x75d57a(0x12f);const _0x1899c8=_0x5c48f4&&_0x5c48f4[_0x75d57a(0x10a)]||0x0;if(_0x1899c8>=0x3)return'high';if(_0x5c48f4&&_0x5c48f4[_0x75d57a(0xdb)]&&_0x5c48f4['operation']===_0x75d57a(0x132))return'medium';return _0x75d57a(0xcc);}['isRecoverable'](_0x1285b3){const _0x5614d2=a0_0xa497da,_0x4a7b23=[ERROR_TYPES['AUTHENTICATION_FAILED'],ERROR_TYPES['CONFIGURATION_ERROR']];if(_0x4a7b23[_0x5614d2(0xef)](_0x1285b3['type']))return![];if(_0x1285b3['retryCount']>=_0x1285b3['maxRetries'])return![];if(_0x1285b3['severity']==='critical')return![];return!![];}['getMaxRetries'](_0x170508,_0x14dc0c){const _0x1838a5=a0_0xa497da,_0x47602a=this[_0x1838a5(0xda)](_0x170508,_0x14dc0c),_0x261145={[ERROR_TYPES[_0x1838a5(0x102)]]:0x5,[ERROR_TYPES[_0x1838a5(0xc2)]]:0x3,[ERROR_TYPES[_0x1838a5(0xd5)]]:0x2,[ERROR_TYPES[_0x1838a5(0xdd)]]:0x1,[ERROR_TYPES['VALIDATION_ERROR']]:0x2,[ERROR_TYPES[_0x1838a5(0xfc)]]:0x3};return _0x261145[_0x47602a]||0x3;}[a0_0xa497da(0xcd)](_0x4ac20b,_0x27b782){const _0x3b007e=a0_0xa497da;if(!_0x4ac20b['recoverable'])return![];if(_0x4ac20b['retryCount']>=_0x4ac20b[_0x3b007e(0xea)])return![];if(_0x27b782&&_0x27b782['success'])return![];return!![];}['calculateRetryDelay'](_0x2a4b0c){const _0xc898bf=a0_0xa497da,_0x2eff42=0x3e8,_0x45da8a=0x7530,_0x280287=_0x2eff42*Math[_0xc898bf(0x122)](0x2,_0x2a4b0c['retryCount']),_0x1dce79=Math['random']()*0x3e8;return Math[_0xc898bf(0xfe)](_0x280287+_0x1dce79,_0x45da8a);}[a0_0xa497da(0x11a)](){const _0x1a3ea8=a0_0xa497da;this[_0x1a3ea8(0xca)][_0x1a3ea8(0xc6)](ERROR_TYPES[_0x1a3ea8(0xd5)],{'name':_0x1a3ea8(0x11f),'recover':async _0x8228a2=>{const _0x5964fa=_0x1a3ea8;if(_0x8228a2[_0x5964fa(0x129)]['filePath'])return{'success':![],'reason':'File\x20recovery\x20not\x20implemented\x20yet','suggestion':'Check\x20file\x20path\x20and\x20permissions'};return{'success':![],'reason':'No\x20file\x20path\x20provided'};}}),this[_0x1a3ea8(0xca)][_0x1a3ea8(0xc6)](ERROR_TYPES[_0x1a3ea8(0x102)],{'name':'rate_limit_recovery','recover':async _0x51b7d3=>{const _0x360596=_0x1a3ea8,_0x1a27d4=this['calculateRateLimitWait'](_0x51b7d3);return this['logger'][_0x360596(0x106)]('Waiting\x20for\x20rate\x20limit\x20recovery',{'waitTime':_0x1a27d4}),await new Promise(_0x10c435=>setTimeout(_0x10c435,_0x1a27d4)),{'success':!![],'action':'waited_for_rate_limit','waitTime':_0x1a27d4};}}),this['recoveryStrategies'][_0x1a3ea8(0xc6)](ERROR_TYPES['OPERATION_TIMEOUT'],{'name':'timeout_recovery','recover':async _0x2bcdb8=>{const _0x3c9bb8=_0x1a3ea8;if(_0x2bcdb8['context'][_0x3c9bb8(0xde)]){const _0x2ba429=Math[_0x3c9bb8(0xfe)](_0x2bcdb8['context'][_0x3c9bb8(0xde)]*1.5,0x493e0);return{'success':!![],'action':_0x3c9bb8(0x119),'newTimeout':_0x2ba429};}return{'success':![],'reason':'Cannot\x20adjust\x20timeout'};}}),this[_0x1a3ea8(0xca)][_0x1a3ea8(0xc6)](ERROR_TYPES[_0x1a3ea8(0xdd)],{'name':_0x1a3ea8(0xc3),'recover':async _0x3f64af=>{return{'success':![],'reason':'Permission\x20errors\x20require\x20manual\x20intervention','suggestion':'Check\x20file/directory\x20permissions'};}}),this[_0x1a3ea8(0xca)][_0x1a3ea8(0xc6)](ERROR_TYPES[_0x1a3ea8(0x136)],{'name':'validation_recovery','recover':async _0x30e607=>{const _0x163844=_0x1a3ea8;if(_0x30e607[_0x163844(0x129)][_0x163844(0x133)])return{'success':!![],'action':_0x163844(0xcf),'suggestion':_0x163844(0xee)};return{'success':![],'reason':'No\x20input\x20data\x20to\x20sanitize'};}}),this['recoveryStrategies'][_0x1a3ea8(0xc6)]('default',{'name':'default_recovery','recover':async _0x5e036e=>{const _0x5e1af5=_0x1a3ea8,_0xecda84=this[_0x5e1af5(0x130)](_0x5e036e);return await new Promise(_0x122544=>setTimeout(_0x122544,_0xecda84)),{'success':!![],'action':'delay_retry','delay':_0xecda84};}});}async['handleAuthenticationFailure'](_0x1e352b){this['logger']['error']('Authentication\x20failure\x20detected',{'errorId':_0x1e352b['id']});if(_0x1e352b['agentId']){}}async['handleRateLimitExceeded'](_0x4ec12c){const _0x3cfdae=a0_0xa497da,_0x502adc=this[_0x3cfdae(0xe7)](_0x4ec12c);this['logger'][_0x3cfdae(0xe1)](_0x3cfdae(0x10c),{'errorId':_0x4ec12c['id'],'waitTime':_0x502adc,'agentId':_0x4ec12c['agentId']});if(_0x4ec12c[_0x3cfdae(0xdb)]){}}async['handleOperationTimeout'](_0x2e5a11){const _0x3c9bc1=a0_0xa497da;this['logger']['error']('Operation\x20timeout\x20detected',{'errorId':_0x2e5a11['id'],'operation':_0x2e5a11['context']['operation'],'timeout':_0x2e5a11[_0x3c9bc1(0x129)]['timeout']});}async['handleGenericCriticalError'](_0x51cd87){const _0xd5e918=a0_0xa497da;this[_0xd5e918(0x126)]['error']('Generic\x20critical\x20error',{'errorId':_0x51cd87['id'],'type':_0x51cd87[_0xd5e918(0xf5)],'message':_0x51cd87['message']}),_0x51cd87[_0xd5e918(0xdb)]&&this['logger'][_0xd5e918(0xe1)](_0xd5e918(0x128),{'agentId':_0x51cd87[_0xd5e918(0xdb)]});}[a0_0xa497da(0xe7)](_0x32495c){const _0x4f297f=a0_0xa497da,_0x43c072=0xea60,_0x1e8c23=Math['pow'](0x2,_0x32495c[_0x4f297f(0x10a)]),_0x50f3e8=0x493e0;return Math['min'](_0x43c072*_0x1e8c23,_0x50f3e8);}async['logError'](_0x2fd9aa,_0x43b32e){const _0x569ada=a0_0xa497da;try{const _0x157ff1={'errorId':_0x2fd9aa['id'],'timestamp':_0x2fd9aa[_0x569ada(0xf8)],'type':_0x2fd9aa[_0x569ada(0xf5)],'severity':_0x2fd9aa['severity'],'message':_0x2fd9aa['message'],'agentId':_0x2fd9aa[_0x569ada(0xdb)],'toolId':_0x2fd9aa[_0x569ada(0xe8)],'operationId':_0x2fd9aa['operationId'],'retryCount':_0x2fd9aa[_0x569ada(0x10a)],'recoveryAttempted':!!_0x43b32e,'recoverySuccess':_0x43b32e?.['success']||![],'recoveryAction':_0x43b32e?.['action']||null};this['errorQueue']['push'](_0x157ff1),!this['isProcessingQueue']&&this['processErrorQueue']();}catch(_0xb18917){this['logger'][_0x569ada(0x107)](_0x569ada(0xe5),{'errorId':_0x2fd9aa['id'],'loggingError':_0xb18917['message']});}}async[a0_0xa497da(0xc4)](){const _0x50e903=a0_0xa497da;if(this['isProcessingQueue']||this[_0x50e903(0xcb)]['length']===0x0)return;this['isProcessingQueue']=!![];try{while(this['errorQueue']['length']>0x0){const _0x1862fc=this['errorQueue']['splice'](0x0,0xa);this['logger'][_0x50e903(0x11b)]('Processing\x20error\x20batch',{'batchSize':_0x1862fc['length']}),await new Promise(_0x2f463e=>setTimeout(_0x2f463e,0x64));}}catch(processingError){this[_0x50e903(0x126)]['error']('Error\x20queue\x20processing\x20failed',{'error':processingError['message']});}finally{this['isProcessingQueue']=![];}}['setupErrorProcessing'](){const _0xed9631=a0_0xa497da;setInterval(()=>{const _0x7cb414=a0_0x5363;this['errorQueue']['length']>0x0&&this[_0x7cb414(0xc4)]();},0x1388),typeof process!==_0xed9631(0x131)&&(process['on'](_0xed9631(0x103),_0x3d59eb=>{const _0x4a90eb=_0xed9631;this['handleError'](_0x3d59eb,{'type':'uncaught_exception','severity':_0x4a90eb(0x12a)});}),process['on'](_0xed9631(0x125),(_0x9a9057,_0x15e274)=>{const _0x5cdf50=_0xed9631;this['handleError'](new Error('Unhandled\x20Rejection:\x20'+_0x9a9057),{'type':_0x5cdf50(0xfa),'severity':'high','promise':_0x15e274['toString']()});}));}[a0_0xa497da(0xff)](_0x54dba7){const _0x30e650=a0_0xa497da;this['errorStats'][_0x30e650(0xd0)]++,!this[_0x30e650(0x10f)]['errorsByType'][_0x30e650(0x109)](_0x54dba7['type'])&&this[_0x30e650(0x10f)]['errorsByType'][_0x30e650(0xc6)](_0x54dba7[_0x30e650(0xf5)],0x0),this['errorStats']['errorsByType'][_0x30e650(0xc6)](_0x54dba7['type'],this[_0x30e650(0x10f)][_0x30e650(0xd8)]['get'](_0x54dba7['type'])+0x1),_0x54dba7['agentId']&&(!this['errorStats']['errorsByAgent']['has'](_0x54dba7['agentId'])&&this['errorStats'][_0x30e650(0xd2)][_0x30e650(0xc6)](_0x54dba7['agentId'],0x0),this[_0x30e650(0x10f)]['errorsByAgent']['set'](_0x54dba7['agentId'],this[_0x30e650(0x10f)]['errorsByAgent'][_0x30e650(0x135)](_0x54dba7['agentId'])+0x1));}['subscribe'](_0x4e7457){const _0x231d44=a0_0xa497da;return this[_0x231d44(0xec)][_0x231d44(0xce)](_0x4e7457),()=>this['errorSubscribers']['delete'](_0x4e7457);}['notifySubscribers'](_0xb85bb1,_0x25ec18){const _0x1d1273=a0_0xa497da;this['errorSubscribers'][_0x1d1273(0x134)](_0x5df45b=>{const _0x315f59=_0x1d1273;try{_0x5df45b(_0xb85bb1,_0x25ec18);}catch(_0x3c435b){this[_0x315f59(0x126)]['error'](_0x315f59(0xd3),{'error':_0x3c435b[_0x315f59(0xe6)]});}});}[a0_0xa497da(0x111)](){const _0x10d2f8=a0_0xa497da;return _0x10d2f8(0xf6)+Date[_0x10d2f8(0xc9)]()+'_'+Math['random']()['toString'](0x24)['substr'](0x2,0x9);}[a0_0xa497da(0xc5)](){const _0x330a35=a0_0xa497da;return{'totalErrors':this[_0x330a35(0x10f)]['totalErrors'],'errorsByType':Object[_0x330a35(0x114)](this[_0x330a35(0x10f)][_0x330a35(0xd8)]),'errorsByAgent':Object['fromEntries'](this[_0x330a35(0x10f)][_0x330a35(0xd2)]),'recoveryAttempts':this[_0x330a35(0x10f)][_0x330a35(0x12b)],'successfulRecoveries':this['errorStats'][_0x330a35(0xfd)],'recoverySuccessRate':this[_0x330a35(0x10f)][_0x330a35(0x12b)]>0x0?this[_0x330a35(0x10f)][_0x330a35(0xfd)]/this[_0x330a35(0x10f)]['recoveryAttempts']:0x0,'criticalErrors':this['errorStats']['criticalErrors'],'queueLength':this['errorQueue']['length']};}['clearErrorStats'](){const _0xca8cec=a0_0xa497da;this['errorStats']={'totalErrors':0x0,'errorsByType':new Map(),'errorsByAgent':new Map(),'recoveryAttempts':0x0,'successfulRecoveries':0x0,'criticalErrors':0x0},this[_0xca8cec(0xcb)]=[];}}function a0_0x5363(_0x5c5849,_0x2bf400){_0x5c5849=_0x5c5849-0xc1;const _0x431658=a0_0x4316();let _0x53635f=_0x431658[_0x5c5849];if(a0_0x5363['hGiaQO']===undefined){var _0x432e97=function(_0x3f0e36){const _0x10cb55='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27596d='',_0x1ed529='';for(let _0x531346=0x0,_0x25316e,_0x3e3f2d,_0x27dfa5=0x0;_0x3e3f2d=_0x3f0e36['charAt'](_0x27dfa5++);~_0x3e3f2d&&(_0x25316e=_0x531346%0x4?_0x25316e*0x40+_0x3e3f2d:_0x3e3f2d,_0x531346++%0x4)?_0x27596d+=String['fromCharCode'](0xff&_0x25316e>>(-0x2*_0x531346&0x6)):0x0){_0x3e3f2d=_0x10cb55['indexOf'](_0x3e3f2d);}for(let _0x19eb6a=0x0,_0x75365b=_0x27596d['length'];_0x19eb6a<_0x75365b;_0x19eb6a++){_0x1ed529+='%'+('00'+_0x27596d['charCodeAt'](_0x19eb6a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ed529);};a0_0x5363['TnLSpQ']=_0x432e97,a0_0x5363['ADshsE']={},a0_0x5363['hGiaQO']=!![];}const _0x3bbfbe=_0x431658[0x0],_0x2f0b90=_0x5c5849+_0x3bbfbe,_0x59d9b5=a0_0x5363['ADshsE'][_0x2f0b90];return!_0x59d9b5?(_0x53635f=a0_0x5363['TnLSpQ'](_0x53635f),a0_0x5363['ADshsE'][_0x2f0b90]=_0x53635f):_0x53635f=_0x59d9b5,_0x53635f;}export default ErrorHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x5c7419=a0_0x45b0;(function(_0x42a798,_0x39479a){const _0x59a449=a0_0x45b0,_0x2c19bc=_0x42a798();while(!![]){try{const _0x5059a4=-parseInt(_0x59a449(0xe6))/0x1*(parseInt(_0x59a449(0xc2))/0x2)+parseInt(_0x59a449(0xbc))/0x3*(parseInt(_0x59a449(0xe2))/0x4)+-parseInt(_0x59a449(0xfe))/0x5+parseInt(_0x59a449(0xdb))/0x6*(-parseInt(_0x59a449(0xfc))/0x7)+parseInt(_0x59a449(0xf8))/0x8+-parseInt(_0x59a449(0xd8))/0x9*(-parseInt(_0x59a449(0xc8))/0xa)+parseInt(_0x59a449(0xd3))/0xb;if(_0x5059a4===_0x39479a)break;else _0x2c19bc['push'](_0x2c19bc['shift']());}catch(_0x2f8023){_0x2c19bc['push'](_0x2c19bc['shift']());}}}(a0_0x2f4e,0x45f90));import a0_0xb6bca2 from'path';import{fileURLToPath}from'url';import{randomUUID}from'crypto';import a0_0xa8461f from'../utilities/fileProcessor.js';import a0_0x440047 from'../utilities/attachmentValidator.js';function a0_0x2f4e(){const _0x17f1fc=['Bg9Nz2vY','zxjYB3i','Bw9KAwzPzwq','DxbKyxrLqxr0ywnOBwvUDa','CMvMzxjLBMnLzej5','qwDLBNqGyxr0ywnOBwvUDhmGzgvSzxrLza','zgvSzxrLrgLYzwn0B3j5','Bg9HzeLUzgv4','rxjYB3iGAw5PDgLHBgL6Aw5NiezPBgvbDhrHy2HTzw50u2vYDMLJzq','mZeYnZGWmfPKsLDhtG','C2f2zuLUzgv4','DMfSAwq','z2v0rMLSzvn0yxrZ','mZqZmti2BeLzs0Pt','w0LTywDLignVBNrLBNqGlsbIyxnLnJqGzw5JB2rLzf0','nJG2mdm1wMr2BNzc','ywDLBNrjza','BgfZDe1VzgLMAwvK','Dg9Nz2XLqwn0AxzL','y2fSy3vSyxrLsgfZAa','qxr0ywnOBwvUDcbUB3qGzM91BMq6ia','zMLSzvbYB2nLC3nVCG','C2L6zuXLDMvS','CMvHzezPBgu','ChvZAa','zxjYB3jZ','mZziqK9bEgW','zgvSzxrLqxr0ywnOBwvUDa','rxjYB3iGDxbSB2fKAw5NigzPBgu','C3rHCNrZv2L0Aa','DMfSAwrHDg9Y','Aw5KzxG','mJiWmJHOC25QDw4','z2v0qxr0ywnOBwvUDa','y29UDgvUDc5IyxnLnJq','Aw1Hz2u','zMLSzuv4Axn0CW','z2v0qxr0ywnOBwvUDfbYzxzPzxC','mty1nJb6veTSr2i','BwvZC2fNzq','D3jPDgvgAwXL','Aw5JBhvKzxm','z2v0qxr0ywnOBwvUDenVBNrLBNq','qxr0ywnOBwvUDcbHy3rPDMuGC3rHDguGDg9Nz2XLza','DxrMoa','D2fYBMLUz3m','rxjYB3iGz2v0DgLUzYbHDhrHy2HTzw50ihbYzxzPzxC','CMvMzxjLBMnL','Aw5MBW','nte2mJi1nLDmyxz3DG','ywn0AxzL','y3jLyxrLrgLYzwn0B3j5','y29UDgvUDa','C3rYAw5NAwz5','mJuWmLrHqw1VDq','y29UDgvUDezPBgvoyw1L','Aw1WB3j0rNjVBufNzw50','nJzSEuHowe4','Dg9ju09tDhjPBMC','C2L6zq','zMLSzu5HBwu','vMfSAwrHDgLVBIbMywLSzwq6ia','ywDLBNrszwzZ','rxjYB3iGDg9Nz2XPBMCGyxr0ywnOBwvUDa','ntmZndrds2XYCM4','lI4U','z2v0twLTzvr5Cgu','CgfYC2u','ndDOCKffzwi','AM9PBG','yxr0ywnOBwvUDhm','CgrM','y29UDgvUDc50Ehq','zMLSDgvY','Bw9Kzq','Bwv0ywrHDgeUANnVBG','yxr0ywnOBwvUDhmTAw5KzxGUANnVBG'];a0_0x2f4e=function(){return _0x17f1fc;};return a0_0x2f4e();}function a0_0x45b0(_0x4dcd29,_0x3c5719){_0x4dcd29=_0x4dcd29-0xb2;const _0x2f4e33=a0_0x2f4e();let _0x45b02a=_0x2f4e33[_0x4dcd29];if(a0_0x45b0['NtIhlp']===undefined){var _0x37f238=function(_0x552131){const _0x4fc15c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb6bca2='',_0xa8461f='';for(let _0x440047=0x0,_0x391cc6,_0x255f99,_0x44ba2b=0x0;_0x255f99=_0x552131['charAt'](_0x44ba2b++);~_0x255f99&&(_0x391cc6=_0x440047%0x4?_0x391cc6*0x40+_0x255f99:_0x255f99,_0x440047++%0x4)?_0xb6bca2+=String['fromCharCode'](0xff&_0x391cc6>>(-0x2*_0x440047&0x6)):0x0){_0x255f99=_0x4fc15c['indexOf'](_0x255f99);}for(let _0x689d4d=0x0,_0x3efa5c=_0xb6bca2['length'];_0x689d4d<_0x3efa5c;_0x689d4d++){_0xa8461f+='%'+('00'+_0xb6bca2['charCodeAt'](_0x689d4d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa8461f);};a0_0x45b0['XjntUB']=_0x37f238,a0_0x45b0['fmzEwY']={},a0_0x45b0['NtIhlp']=!![];}const _0x4e2ba0=_0x2f4e33[0x0],_0x471475=_0x4dcd29+_0x4e2ba0,_0x5afae9=a0_0x45b0['fmzEwY'][_0x471475];return!_0x5afae9?(_0x45b02a=a0_0x45b0['XjntUB'](_0x45b02a),a0_0x45b0['fmzEwY'][_0x471475]=_0x45b02a):_0x45b02a=_0x5afae9,_0x45b02a;}const __filename=fileURLToPath(import.meta.url),__dirname=a0_0xb6bca2['dirname'](__filename),ATTACHMENTS_DIR=a0_0xb6bca2[a0_0x5c7419(0xe7)](process['cwd'](),'loxia-state','attachments'),INDEX_FILE=a0_0xb6bca2['join'](ATTACHMENTS_DIR,a0_0x5c7419(0xee));class FileAttachmentService{constructor(_0x391cc6={},_0x255f99=null){const _0x1846e3=a0_0x5c7419;this['config']=_0x391cc6,this[_0x1846e3(0xef)]=_0x255f99,this['fileProcessor']=new a0_0xa8461f(_0x391cc6,_0x255f99),this[_0x1846e3(0xc0)]=new a0_0x440047(_0x391cc6,_0x255f99),this['index']=null;}async['initialize'](){const _0x4f1d45=a0_0x5c7419;try{await this['fileProcessor']['createDirectory'](ATTACHMENTS_DIR),await this['loadIndex'](),this['logger']?.[_0x4f1d45(0xd2)]('FileAttachmentService\x20initialized',{'attachmentsDir':ATTACHMENTS_DIR});}catch(_0x44ba2b){this['logger']?.['error'](_0x4f1d45(0xf7),{'error':_0x44ba2b['message']});throw _0x44ba2b;}}async['loadIndex'](){const _0x50b7dd=a0_0x5c7419;try{const _0x689d4d=await this['fileProcessor']['fileExists'](INDEX_FILE);if(!_0x689d4d)this['index']={'attachments':{},'agentRefs':{}},await this['saveIndex']();else{const _0x3efa5c=await this['fileProcessor'][_0x50b7dd(0xb9)](INDEX_FILE,_0x50b7dd(0xce));this[_0x50b7dd(0xc1)]=JSON['parse'](_0x3efa5c);}return this['index'];}catch(_0x56c99a){return this[_0x50b7dd(0xef)]?.['error']('Error\x20loading\x20index',{'error':_0x56c99a['message']}),this['index']={'attachments':{},'agentRefs':{}},this[_0x50b7dd(0xc1)];}}async['saveIndex'](){const _0xca984d=a0_0x5c7419;try{await this[_0xca984d(0xb7)]['writeFile'](INDEX_FILE,JSON[_0xca984d(0xd7)](this[_0xca984d(0xc1)],null,0x2),'utf8');}catch(_0x3e5139){this[_0xca984d(0xef)]?.[_0xca984d(0xf0)]('Error\x20saving\x20index',{'error':_0x3e5139['message']});throw _0x3e5139;}}async['uploadFile']({agentId:_0x174844,filePath:_0x285e9b,mode:mode=a0_0x5c7419(0xd6),fileName:fileName=null}){const _0x3046d1=a0_0x5c7419;!this['index']&&await this['loadIndex']();try{const _0x3f70a9=await this[_0x3046d1(0xb7)][_0x3046d1(0xc6)](_0x285e9b);if(!_0x3f70a9)throw new Error('File\x20not\x20found:\x20'+_0x285e9b);const _0x183a43=await this[_0x3046d1(0xb7)][_0x3046d1(0xfb)](_0x285e9b),_0x3dbf51=fileName||a0_0xb6bca2['basename'](_0x285e9b),_0x370a73=a0_0xb6bca2['extname'](_0x3dbf51),_0x59ee33=this[_0x3046d1(0xc0)]['validate']({'fileName':_0x3dbf51,'size':_0x183a43[_0x3046d1(0xdd)],'mode':mode,'path':mode===_0x3046d1(0xd1)?_0x285e9b:null});if(!_0x59ee33[_0x3046d1(0xfa)])throw new Error(_0x3046d1(0xdf)+_0x59ee33[_0x3046d1(0xbb)][_0x3046d1(0xe7)](',\x20'));const _0x451ea7=randomUUID(),_0x3c65a5=await this['fileProcessor'][_0x3046d1(0xb5)](_0x285e9b),_0x254837=this['validator']['getContentType'](_0x3dbf51),_0xb8406e=a0_0xb6bca2['join'](ATTACHMENTS_DIR,_0x174844,_0x451ea7);await this['fileProcessor'][_0x3046d1(0xd5)](_0xb8406e);let _0x55a77b=0x0,_0xe8aba6=null;if(mode==='content'){const processResult=await this['fileProcessor']['processFile'](_0x285e9b,_0x254837),_0x217125=processResult['content'];if(_0x254837==='text')_0xe8aba6=_0x3046d1(0xea);else{if(_0x254837===_0x3046d1(0xc5))_0xe8aba6=_0x3046d1(0xc4);else _0x254837===_0x3046d1(0xe9)&&(_0xe8aba6='content.txt');}const _0xd68183=a0_0xb6bca2['join'](_0xb8406e,_0xe8aba6);await this[_0x3046d1(0xb7)]['writeFile'](_0xd68183,_0x217125,_0x3046d1(0xce)),_0x55a77b=this[_0x3046d1(0xb7)]['estimateTokens'](_0x217125);}const _0x223ee7={'fileId':_0x451ea7,'agentId':_0x174844,'fileName':_0x3dbf51,'originalPath':_0x285e9b,'fileType':this[_0x3046d1(0xc0)][_0x3046d1(0xe4)](_0x3dbf51),'fileExtension':_0x370a73,'size':_0x183a43['size'],'mode':mode,'active':!![],'uploadedAt':new Date()[_0x3046d1(0xdc)](),'lastModified':_0x183a43[_0x3046d1(0xf1)][_0x3046d1(0xdc)](),'hash':_0x3c65a5,'tokenEstimate':_0x55a77b,'contentType':_0x254837,'contentFileName':_0xe8aba6,'warnings':_0x59ee33[_0x3046d1(0xcf)],'sizeLevel':_0x59ee33[_0x3046d1(0xb8)],'importedFrom':null,'referencedBy':[_0x174844]},_0x334784=a0_0xb6bca2['join'](_0xb8406e,'metadata.json');return await this['fileProcessor'][_0x3046d1(0xca)](_0x334784,JSON[_0x3046d1(0xd7)](_0x223ee7,null,0x2),'utf8'),this[_0x3046d1(0xc1)][_0x3046d1(0xe8)][_0x451ea7]={'fileId':_0x451ea7,'agentId':_0x174844,'fileName':_0x3dbf51,'mode':mode,'active':_0x223ee7['active'],'referencedBy':_0x223ee7['referencedBy']},!this[_0x3046d1(0xc1)]['agentRefs'][_0x174844]&&(this['index']['agentRefs'][_0x174844]=[]),this[_0x3046d1(0xc1)][_0x3046d1(0xe0)][_0x174844][_0x3046d1(0xba)](_0x451ea7),await this[_0x3046d1(0xf9)](),this['logger']?.['info']('File\x20uploaded',{'fileId':_0x451ea7,'agentId':_0x174844,'fileName':_0x3dbf51,'mode':mode}),_0x223ee7;}catch(_0x1cc347){this[_0x3046d1(0xef)]?.[_0x3046d1(0xf0)](_0x3046d1(0xbe),{'agentId':_0x174844,'filePath':_0x285e9b,'error':_0x1cc347[_0x3046d1(0xc9)]});throw _0x1cc347;}}async['getAttachments'](_0x149e39,_0x57ef0b={}){const _0x45bd8c=a0_0x5c7419;!this[_0x45bd8c(0xc1)]&&await this[_0x45bd8c(0xf6)]();try{const _0x166c7a=this['index']['agentRefs'][_0x149e39]||[],_0x3515bb=[];for(const _0x112c80 of _0x166c7a){const _0x43b0ce=await this['getAttachment'](_0x112c80);if(_0x43b0ce){if(_0x57ef0b[_0x45bd8c(0xd4)]!==undefined&&_0x43b0ce['active']!==_0x57ef0b[_0x45bd8c(0xd4)])continue;if(_0x57ef0b[_0x45bd8c(0xec)]&&_0x43b0ce[_0x45bd8c(0xec)]!==_0x57ef0b['mode'])continue;_0x3515bb[_0x45bd8c(0xba)](_0x43b0ce);}}return _0x3515bb;}catch(_0x4e5f48){this[_0x45bd8c(0xef)]?.['error']('Error\x20getting\x20attachments',{'agentId':_0x149e39,'error':_0x4e5f48[_0x45bd8c(0xc9)]});throw _0x4e5f48;}}async['getAttachment'](_0x149b18){const _0x3651ff=a0_0x5c7419;!this['index']&&await this[_0x3651ff(0xf6)]();try{const _0x479360=this[_0x3651ff(0xc1)]['attachments'][_0x149b18];if(!_0x479360)return null;const _0x2b0051=a0_0xb6bca2['join'](ATTACHMENTS_DIR,_0x479360[_0x3651ff(0xb2)],_0x149b18,_0x3651ff(0xed)),_0x48a565=await this['fileProcessor'][_0x3651ff(0xc6)](_0x2b0051);if(!_0x48a565)return this['logger']?.['warn']('Metadata\x20file\x20not\x20found',{'fileId':_0x149b18}),null;const _0x57c043=await this['fileProcessor']['readFile'](_0x2b0051,_0x3651ff(0xce));return JSON[_0x3651ff(0xe5)](_0x57c043);}catch(_0x3f11d4){return this[_0x3651ff(0xef)]?.['error']('Error\x20getting\x20attachment',{'fileId':_0x149b18,'error':_0x3f11d4[_0x3651ff(0xc9)]}),null;}}async[a0_0x5c7419(0xcc)](_0x48cade){const _0x159545=a0_0x5c7419;try{const _0x1e5e8c=await this[_0x159545(0xc3)](_0x48cade);if(!_0x1e5e8c||_0x1e5e8c['mode']!=='content')return null;const _0x544465=a0_0xb6bca2[_0x159545(0xe7)](ATTACHMENTS_DIR,_0x1e5e8c[_0x159545(0xb2)],_0x48cade,_0x1e5e8c[_0x159545(0xd9)]),_0x4bdd21=await this[_0x159545(0xb7)]['fileExists'](_0x544465);if(!_0x4bdd21)return null;return await this['fileProcessor']['readFile'](_0x544465,_0x159545(0xce));}catch(_0x37ed12){return this[_0x159545(0xef)]?.['error']('Error\x20getting\x20attachment\x20content',{'fileId':_0x48cade,'error':_0x37ed12[_0x159545(0xc9)]}),null;}}async[a0_0x5c7419(0xb4)](_0x42e48c){const _0x3a43fe=a0_0x5c7419;try{const _0x3cd151=await this[_0x3a43fe(0xc3)](_0x42e48c);if(!_0x3cd151)throw new Error(_0x3a43fe(0xb6)+_0x42e48c);_0x3cd151[_0x3a43fe(0xd4)]=!_0x3cd151[_0x3a43fe(0xd4)],_0x3cd151[_0x3a43fe(0xb3)]=new Date()['toISOString']();const _0x5324c0=a0_0xb6bca2[_0x3a43fe(0xe7)](ATTACHMENTS_DIR,_0x3cd151[_0x3a43fe(0xb2)],_0x42e48c,_0x3a43fe(0xed));return await this['fileProcessor']['writeFile'](_0x5324c0,JSON[_0x3a43fe(0xd7)](_0x3cd151,null,0x2),'utf8'),this['index'][_0x3a43fe(0xe8)][_0x42e48c]&&(this['index'][_0x3a43fe(0xe8)][_0x42e48c][_0x3a43fe(0xd4)]=_0x3cd151[_0x3a43fe(0xd4)],await this['saveIndex']()),this['logger']?.[_0x3a43fe(0xd2)](_0x3a43fe(0xcd),{'fileId':_0x42e48c,'active':_0x3cd151[_0x3a43fe(0xd4)]}),_0x3cd151;}catch(_0x27b1f3){this[_0x3a43fe(0xef)]?.[_0x3a43fe(0xf0)](_0x3a43fe(0xe1),{'fileId':_0x42e48c,'error':_0x27b1f3[_0x3a43fe(0xc9)]});throw _0x27b1f3;}}async[a0_0x5c7419(0xf2)](_0x39cd8a,_0x3d5145){const _0x28e471=a0_0x5c7419;try{const _0x22c86d=await this[_0x28e471(0xc3)](_0x39cd8a);if(!_0x22c86d)throw new Error(_0x28e471(0xb6)+_0x39cd8a);const _0x41c9a5=['fileName','active'];for(const _0x1a473c of _0x41c9a5){_0x3d5145[_0x1a473c]!==undefined&&(_0x22c86d[_0x1a473c]=_0x3d5145[_0x1a473c]);}_0x22c86d['lastModified']=new Date()['toISOString']();const _0x3410bf=a0_0xb6bca2['join'](ATTACHMENTS_DIR,_0x22c86d['agentId'],_0x39cd8a,'metadata.json');return await this[_0x28e471(0xb7)][_0x28e471(0xca)](_0x3410bf,JSON[_0x28e471(0xd7)](_0x22c86d,null,0x2),_0x28e471(0xce)),this[_0x28e471(0xc1)][_0x28e471(0xe8)][_0x39cd8a]&&(_0x3d5145['fileName']&&(this[_0x28e471(0xc1)][_0x28e471(0xe8)][_0x39cd8a][_0x28e471(0xde)]=_0x3d5145[_0x28e471(0xde)]),_0x3d5145[_0x28e471(0xd4)]!==undefined&&(this['index'][_0x28e471(0xe8)][_0x39cd8a]['active']=_0x3d5145[_0x28e471(0xd4)]),await this[_0x28e471(0xf9)]()),this['logger']?.[_0x28e471(0xd2)]('Attachment\x20updated',{'fileId':_0x39cd8a,'updates':_0x3d5145}),_0x22c86d;}catch(_0x4b30ad){this[_0x28e471(0xef)]?.['error']('Error\x20updating\x20attachment',{'fileId':_0x39cd8a,'error':_0x4b30ad['message']});throw _0x4b30ad;}}async[a0_0x5c7419(0xbd)](_0x5c13ce,_0x310ba2){const _0x30ddb1=a0_0x5c7419;try{const _0x309d69=await this[_0x30ddb1(0xc3)](_0x5c13ce);if(!_0x309d69)throw new Error('Attachment\x20not\x20found:\x20'+_0x5c13ce);_0x309d69['referencedBy']=_0x309d69[_0x30ddb1(0xf3)][_0x30ddb1(0xeb)](_0x2e659c=>_0x2e659c!==_0x310ba2);if(_0x309d69['referencedBy']['length']>0x0){const _0x3293ef=a0_0xb6bca2['join'](ATTACHMENTS_DIR,_0x309d69[_0x30ddb1(0xb2)],_0x5c13ce,_0x30ddb1(0xed));return await this['fileProcessor']['writeFile'](_0x3293ef,JSON['stringify'](_0x309d69,null,0x2),'utf8'),this['index']['attachments'][_0x5c13ce]&&(this['index'][_0x30ddb1(0xe8)][_0x5c13ce][_0x30ddb1(0xf3)]=_0x309d69[_0x30ddb1(0xf3)]),this['index'][_0x30ddb1(0xe0)][_0x310ba2]&&(this[_0x30ddb1(0xc1)][_0x30ddb1(0xe0)][_0x310ba2]=this[_0x30ddb1(0xc1)]['agentRefs'][_0x310ba2]['filter'](_0x2ad224=>_0x2ad224!==_0x5c13ce)),await this[_0x30ddb1(0xf9)](),this[_0x30ddb1(0xef)]?.['info']('Attachment\x20dereferenced',{'fileId':_0x5c13ce,'agentId':_0x310ba2,'remainingRefs':_0x309d69['referencedBy']['length']}),![];}const _0x1fbb4e=a0_0xb6bca2[_0x30ddb1(0xe7)](ATTACHMENTS_DIR,_0x309d69['agentId'],_0x5c13ce);return await this['fileProcessor'][_0x30ddb1(0xf5)](_0x1fbb4e),delete this[_0x30ddb1(0xc1)][_0x30ddb1(0xe8)][_0x5c13ce],this['index']['agentRefs'][_0x310ba2]&&(this[_0x30ddb1(0xc1)][_0x30ddb1(0xe0)][_0x310ba2]=this['index'][_0x30ddb1(0xe0)][_0x310ba2][_0x30ddb1(0xeb)](_0x32be8a=>_0x32be8a!==_0x5c13ce)),await this['saveIndex'](),this[_0x30ddb1(0xef)]?.[_0x30ddb1(0xd2)]('Attachment\x20deleted',{'fileId':_0x5c13ce,'agentId':_0x310ba2}),!![];}catch(_0x592477){this[_0x30ddb1(0xef)]?.['error']('Error\x20deleting\x20attachment',{'fileId':_0x5c13ce,'agentId':_0x310ba2,'error':_0x592477[_0x30ddb1(0xc9)]});throw _0x592477;}}async['deleteAgentAttachments'](_0x17d35b){const _0x5bb697=a0_0x5c7419;try{const _0x185f58=this[_0x5bb697(0xc1)]['agentRefs'][_0x17d35b]||[];let _0xf01810=0x0,_0x5cdee2=0x0;for(const _0x527acb of _0x185f58){const _0xb5fe28=await this[_0x5bb697(0xbd)](_0x527acb,_0x17d35b);_0xb5fe28?_0xf01810++:_0x5cdee2++;}return this[_0x5bb697(0xef)]?.[_0x5bb697(0xd2)](_0x5bb697(0xf4),{'agentId':_0x17d35b,'deleted':_0xf01810,'dereferenced':_0x5cdee2}),{'deleted':_0xf01810,'dereferenced':_0x5cdee2};}catch(_0x1e1889){this[_0x5bb697(0xef)]?.[_0x5bb697(0xf0)]('Error\x20deleting\x20agent\x20attachments',{'agentId':_0x17d35b,'error':_0x1e1889[_0x5bb697(0xc9)]});throw _0x1e1889;}}async[a0_0x5c7419(0xda)](_0x40d20d,_0x101827){const _0x245d93=a0_0x5c7419;try{const _0x46139d=await this['getAttachment'](_0x40d20d);if(!_0x46139d)throw new Error('Source\x20attachment\x20not\x20found:\x20'+_0x40d20d);!_0x46139d['referencedBy'][_0x245d93(0xcb)](_0x101827)&&_0x46139d['referencedBy']['push'](_0x101827);_0x46139d['lastModified']=new Date()['toISOString'](),_0x46139d['importedFrom']=_0x46139d[_0x245d93(0xb2)];const _0x4d294d=a0_0xb6bca2['join'](ATTACHMENTS_DIR,_0x46139d[_0x245d93(0xb2)],_0x40d20d,'metadata.json');return await this['fileProcessor'][_0x245d93(0xca)](_0x4d294d,JSON[_0x245d93(0xd7)](_0x46139d,null,0x2),_0x245d93(0xce)),this[_0x245d93(0xc1)][_0x245d93(0xe8)][_0x40d20d]&&(this[_0x245d93(0xc1)][_0x245d93(0xe8)][_0x40d20d]['referencedBy']=_0x46139d['referencedBy']),!this[_0x245d93(0xc1)][_0x245d93(0xe0)][_0x101827]&&(this['index']['agentRefs'][_0x101827]=[]),!this['index']['agentRefs'][_0x101827][_0x245d93(0xcb)](_0x40d20d)&&this[_0x245d93(0xc1)]['agentRefs'][_0x101827][_0x245d93(0xba)](_0x40d20d),await this[_0x245d93(0xf9)](),this['logger']?.['info']('Attachment imported',{'sourceFileId':_0x40d20d,'targetAgentId':_0x101827}),_0x46139d;}catch(_0x4903d8){this[_0x245d93(0xef)]?.[_0x245d93(0xf0)]('Error importing attachment',{'sourceFileId':_0x40d20d,'targetAgentId':_0x101827,'error':_0x4903d8['message']});throw _0x4903d8;}}async['getActiveAttachments'](_0x14f14d){return await this['getAttachments'](_0x14f14d,{'active':!![]});}async[a0_0x5c7419(0xc7)](_0xa886b5){const _0x326fe7=a0_0x5c7419;try{const _0x28f50b=await this['getAttachmentContent'](_0xa886b5);if(!_0x28f50b)return null;if(_0x28f50b[_0x326fe7(0xbf)]('data:image'))return _0x326fe7(0xfd);return _0x28f50b['length']>0x3e8?_0x28f50b['substring'](0x0,0x3e8)+_0x326fe7(0xe3):_0x28f50b;}catch(_0x42ae30){return this['logger']?.[_0x326fe7(0xf0)](_0x326fe7(0xd0),{'fileId':_0xa886b5,'error':_0x42ae30[_0x326fe7(0xc9)]}),null;}}}export default FileAttachmentService;
|
|
1
|
+
const a0_0x20f659=a0_0x3028;(function(_0x377ed6,_0x512bc0){const _0x880c3b=a0_0x3028,_0x552c6c=_0x377ed6();while(!![]){try{const _0x5a85b4=parseInt(_0x880c3b(0x116))/0x1*(parseInt(_0x880c3b(0x106))/0x2)+parseInt(_0x880c3b(0x100))/0x3*(-parseInt(_0x880c3b(0x117))/0x4)+parseInt(_0x880c3b(0xf8))/0x5+-parseInt(_0x880c3b(0x12c))/0x6+-parseInt(_0x880c3b(0x113))/0x7+parseInt(_0x880c3b(0x10f))/0x8*(parseInt(_0x880c3b(0x115))/0x9)+-parseInt(_0x880c3b(0x119))/0xa;if(_0x5a85b4===_0x512bc0)break;else _0x552c6c['push'](_0x552c6c['shift']());}catch(_0x16a67f){_0x552c6c['push'](_0x552c6c['shift']());}}}(a0_0x5587,0xace85));import a0_0x4cd589 from'path';function a0_0x3028(_0x385b32,_0x20e33d){_0x385b32=_0x385b32-0xe1;const _0x5587b2=a0_0x5587();let _0x302885=_0x5587b2[_0x385b32];if(a0_0x3028['nSkdAi']===undefined){var _0xae9066=function(_0x1cc88a){const _0x12be42='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4cd589='',_0x3fb696='';for(let _0x5553ac=0x0,_0x6e0f68,_0x5621d3,_0x4edde0=0x0;_0x5621d3=_0x1cc88a['charAt'](_0x4edde0++);~_0x5621d3&&(_0x6e0f68=_0x5553ac%0x4?_0x6e0f68*0x40+_0x5621d3:_0x5621d3,_0x5553ac++%0x4)?_0x4cd589+=String['fromCharCode'](0xff&_0x6e0f68>>(-0x2*_0x5553ac&0x6)):0x0){_0x5621d3=_0x12be42['indexOf'](_0x5621d3);}for(let _0x25917a=0x0,_0x33d81a=_0x4cd589['length'];_0x25917a<_0x33d81a;_0x25917a++){_0x3fb696+='%'+('00'+_0x4cd589['charCodeAt'](_0x25917a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3fb696);};a0_0x3028['VvecnE']=_0xae9066,a0_0x3028['UCSmTf']={},a0_0x3028['nSkdAi']=!![];}const _0x501a08=_0x5587b2[0x0],_0x5c4758=_0x385b32+_0x501a08,_0x35ea66=a0_0x3028['UCSmTf'][_0x5c4758];return!_0x35ea66?(_0x302885=a0_0x3028['VvecnE'](_0x302885),a0_0x3028['UCSmTf'][_0x5c4758]=_0x302885):_0x302885=_0x35ea66,_0x302885;}import{randomUUID}from'crypto';import a0_0x3fb696 from'../utilities/fileProcessor.js';function a0_0x5587(){const _0x2b4a99=['CMvMzxjLBMnL','y2fSy3vSyxrLsgfZAa','zMLSzu5HBwu','rxjYB3iGAw5PDgLHBgL6Aw5NiezPBgvbDhrHy2HTzw50u2vYDMLJzq','rxjYB3iGDg9Nz2XPBMCGyxr0ywnOBwvUDa','D2fYBG','Bw9Kzq','Aw5MBW','ChvZAa','nJe4mZy4mhPpveH2ua','DMfSAwq','DxrMoa','rMLSzuf0DgfJAg1LBNrtzxj2AwnLigLUAxrPywXPEMvK','rxjYB3iGz2v0DgLUzYbHDhrHy2HTzw50ignVBNrLBNq','C2L6zuXLDMvS','z2v0qxr0ywnOBwvUDa','Aw1WB3j0rNjVBufNzw50','ovbIqMXprW','D2fYBMLUz3m','zxjYB3i','twv0ywrHDgeGzMLSzsbUB3qGzM91BMq','u291CMnLigf0DgfJAg1LBNqGBM90igzVDw5KoIa','qwDLBNqGyxr0ywnOBwvUDhmGzgvSzxrLza','mtzfB21ev2u','zxn0Aw1HDgvuB2TLBNm','z2v0qxr0ywnOBwvUDfbYzxzPzxC','z2v0q29UDgvUDfr5Cgu','C2f2zuLUzgv4','Bwv0ywrHDgeUANnVBG','yxr0ywnOBwvUDhm','z2v0qwn0AxzLqxr0ywnOBwvUDhm','y3jLyxrLrgLYzwn0B3j5','mti5nK1hzK5RBG','C2L6zq','y29UDgvUDc50Ehq','ywDLBNrjza','mJe3ntK1n1fSwwXsBW','zgvSzxrLqxr0ywnOBwvUDa','ntC5nZHjzxztEeC','mtaZmZCYzfr4BxPx','mtC4ndCYnhbHwNjzwG','Dg9ju09tDhjPBMC','mZG3mJi1mgH0qwLNEa','BgvUz3rO','rMLSzsbUB3qGzM91BMq6ia','C3rYAw5NAwz5','C3vIC3rYAw5N','BwvZC2fNzq','AM9PBG','Bg9Nz2vY','ywn0AxzL','Aw5KzxG','BgfZDe1VzgLMAwvK','qxr0ywnOBwvUDcb1CgrHDgvK','CMvMzxjLBMnLzej5','lI4U','rxjYB3iGz2v0DgLUzYbHDhrHy2HTzw50CW','zMLSzvbYB2nLC3nVCG','C3rHCNrZv2L0Aa','zMLSzuv4Axn0CW','qxr0ywnOBwvUDcbHy3rPDMuGC3rHDguGDg9Nz2XLza','mJe3ndGWoePAuvDtsG','rxjYB3iGz2v0DgLUzYbHDhrHy2HTzw50','ywDLBNrszwzZ','qxr0ywnOBwvUDcbUB3qGzM91BMq6ia','z2v0twLTzvr5Cgu','zgvSzxrLrgLYzwn0B3j5','rMLSzsb1CgXVywrLza','CgfYC2u','y29UDgvUDa','z2v0qxr0ywnOBwvUDenVBNrLBNq','zMLSDgvY','Aw5JBhvKzxm','z2v0rMLSzvn0yxrZ','yMfZzw5HBwu','CMvHzezPBgu','D3jPDgvgAwXL','Bg9HzeLUzgv4','y29UDgvUDc5IyxnLnJq','DMfSAwrHDg9Y'];a0_0x5587=function(){return _0x2b4a99;};return a0_0x5587();}import a0_0x5553ac from'../utilities/attachmentValidator.js';import{getUserDataPaths}from'../utilities/userDataDir.js';const userPaths=getUserDataPaths(),ATTACHMENTS_DIR=userPaths['attachments'],INDEX_FILE=a0_0x4cd589[a0_0x20f659(0x11f)](ATTACHMENTS_DIR,'attachments-index.json');class FileAttachmentService{constructor(_0x6e0f68={},_0x5621d3=null){const _0x5c309f=a0_0x20f659;this['config']=_0x6e0f68,this[_0x5c309f(0x120)]=_0x5621d3,this[_0x5c309f(0x128)]=new a0_0x3fb696(_0x6e0f68,_0x5621d3),this[_0x5c309f(0xee)]=new a0_0x5553ac(_0x6e0f68,_0x5621d3),this['index']=null;}async['initialize'](){const _0x34b3b0=a0_0x20f659;try{await this['fileProcessor'][_0x34b3b0(0x10e)](ATTACHMENTS_DIR),await this[_0x34b3b0(0xec)](),this['logger']?.[_0x34b3b0(0xf6)](_0x34b3b0(0xfb),{'attachmentsDir':ATTACHMENTS_DIR});}catch(_0x4edde0){this['logger']?.['error'](_0x34b3b0(0xf2),{'error':_0x4edde0['message']});throw _0x4edde0;}}async[a0_0x20f659(0xec)](){const _0x113a94=a0_0x20f659;try{const _0x25917a=await this['fileProcessor'][_0x113a94(0x12a)](INDEX_FILE);if(!_0x25917a)this['index']={'attachments':{},'agentRefs':{}},await this[_0x113a94(0x10a)]();else{const _0x33d81a=await this['fileProcessor'][_0x113a94(0xea)](INDEX_FILE,'utf8');this[_0x113a94(0x122)]=JSON[_0x113a94(0xe3)](_0x33d81a);}return this[_0x113a94(0x122)];}catch(_0x31bb21){return this['logger']?.['error']('Error\x20loading\x20index',{'error':_0x31bb21['message']}),this[_0x113a94(0x122)]={'attachments':{},'agentRefs':{}},this['index'];}}async[a0_0x20f659(0x10a)](){const _0x507ec9=a0_0x20f659;try{await this['fileProcessor']['writeFile'](INDEX_FILE,JSON['stringify'](this['index'],null,0x2),_0x507ec9(0xfa));}catch(_0x235668){this[_0x507ec9(0x120)]?.[_0x507ec9(0x102)]('Error\x20saving\x20index',{'error':_0x235668[_0x507ec9(0x11e)]});throw _0x235668;}}async['uploadFile']({agentId:_0x4f06fa,filePath:_0x5c0485,mode:mode=a0_0x20f659(0xe4),fileName:fileName=null}){const _0x5ad667=a0_0x20f659;!this[_0x5ad667(0x122)]&&await this[_0x5ad667(0xec)]();try{const _0xe0c1a1=await this['fileProcessor'][_0x5ad667(0x12a)](_0x5c0485);if(!_0xe0c1a1)throw new Error(_0x5ad667(0x11b)+_0x5c0485);const _0x326f08=await this[_0x5ad667(0x128)][_0x5ad667(0xe8)](_0x5c0485),_0x5137c6=fileName||a0_0x4cd589[_0x5ad667(0xe9)](_0x5c0485),_0x583d7e=a0_0x4cd589['extname'](_0x5137c6),_0x42a999=this['validator']['validate']({'fileName':_0x5137c6,'size':_0x326f08['size'],'mode':mode,'path':mode===_0x5ad667(0xef)?_0x5c0485:null});if(!_0x42a999[_0x5ad667(0xf9)])throw new Error('Validation\x20failed:\x20'+_0x42a999['errors']['join'](',\x20'));const _0x48e6ae=randomUUID(),_0x403721=await this['fileProcessor'][_0x5ad667(0xf0)](_0x5c0485),_0x17ba5f=this[_0x5ad667(0xee)][_0x5ad667(0x109)](_0x5137c6),_0xa686d4=a0_0x4cd589[_0x5ad667(0x11f)](ATTACHMENTS_DIR,_0x4f06fa,_0x48e6ae);await this[_0x5ad667(0x128)][_0x5ad667(0x10e)](_0xa686d4);let _0x1360b5=0x0,_0x5eb7c6=null;if(mode==='content'){const processResult=await this[_0x5ad667(0x128)]['processFile'](_0x5c0485,_0x17ba5f),_0x5cc395=processResult['content'];if(_0x17ba5f==='text')_0x5eb7c6=_0x5ad667(0x111);else{if(_0x17ba5f==='image')_0x5eb7c6=_0x5ad667(0xed);else _0x17ba5f==='pdf'&&(_0x5eb7c6=_0x5ad667(0x111));}const _0x2138e1=a0_0x4cd589[_0x5ad667(0x11f)](_0xa686d4,_0x5eb7c6);await this['fileProcessor'][_0x5ad667(0xeb)](_0x2138e1,_0x5cc395,'utf8'),_0x1360b5=this[_0x5ad667(0x128)][_0x5ad667(0x107)](_0x5cc395);}const _0x44aef0={'fileId':_0x48e6ae,'agentId':_0x4f06fa,'fileName':_0x5137c6,'originalPath':_0x5c0485,'fileType':this['validator'][_0x5ad667(0x130)](_0x5137c6),'fileExtension':_0x583d7e,'size':_0x326f08[_0x5ad667(0x110)],'mode':mode,'active':!![],'uploadedAt':new Date()[_0x5ad667(0x118)](),'lastModified':_0x326f08['modified'][_0x5ad667(0x118)](),'hash':_0x403721,'tokenEstimate':_0x1360b5,'contentType':_0x17ba5f,'contentFileName':_0x5eb7c6,'warnings':_0x42a999[_0x5ad667(0x101)],'sizeLevel':_0x42a999[_0x5ad667(0xfd)],'importedFrom':null,'referencedBy':[_0x4f06fa]},_0x4f8bc4=a0_0x4cd589[_0x5ad667(0x11f)](_0xa686d4,'metadata.json');return await this['fileProcessor']['writeFile'](_0x4f8bc4,JSON[_0x5ad667(0x11c)](_0x44aef0,null,0x2),_0x5ad667(0xfa)),this['index'][_0x5ad667(0x10c)][_0x48e6ae]={'fileId':_0x48e6ae,'agentId':_0x4f06fa,'fileName':_0x5137c6,'mode':mode,'active':_0x44aef0[_0x5ad667(0x121)],'referencedBy':_0x44aef0['referencedBy']},!this[_0x5ad667(0x122)][_0x5ad667(0x12e)][_0x4f06fa]&&(this[_0x5ad667(0x122)]['agentRefs'][_0x4f06fa]=[]),this['index'][_0x5ad667(0x12e)][_0x4f06fa][_0x5ad667(0xf7)](_0x48e6ae),await this[_0x5ad667(0x10a)](),this[_0x5ad667(0x120)]?.[_0x5ad667(0xf6)](_0x5ad667(0xe2),{'fileId':_0x48e6ae,'agentId':_0x4f06fa,'fileName':_0x5137c6,'mode':mode}),_0x44aef0;}catch(_0x42bb18){this['logger']?.[_0x5ad667(0x102)]('Error\x20uploading\x20file',{'agentId':_0x4f06fa,'filePath':_0x5c0485,'error':_0x42bb18['message']});throw _0x42bb18;}}async['getAttachments'](_0x208c70,_0x3c140d={}){const _0x552caa=a0_0x20f659;!this[_0x552caa(0x122)]&&await this['loadIndex']();try{const _0x4cdd1f=this[_0x552caa(0x122)][_0x552caa(0x12e)][_0x208c70]||[],_0x3acb4d=[];for(const _0x5026db of _0x4cdd1f){const _0x1706ce=await this[_0x552caa(0xfe)](_0x5026db);if(_0x1706ce){if(_0x3c140d[_0x552caa(0x121)]!==undefined&&_0x1706ce[_0x552caa(0x121)]!==_0x3c140d[_0x552caa(0x121)])continue;if(_0x3c140d['mode']&&_0x1706ce[_0x552caa(0xf5)]!==_0x3c140d['mode'])continue;_0x3acb4d['push'](_0x1706ce);}}return _0x3acb4d;}catch(_0x2c39d5){this[_0x552caa(0x120)]?.['error'](_0x552caa(0x127),{'agentId':_0x208c70,'error':_0x2c39d5['message']});throw _0x2c39d5;}}async[a0_0x20f659(0xfe)](_0x4a1cde){const _0x45b553=a0_0x20f659;!this[_0x45b553(0x122)]&&await this['loadIndex']();try{const _0x46a099=this[_0x45b553(0x122)]['attachments'][_0x4a1cde];if(!_0x46a099)return null;const _0x1a871a=a0_0x4cd589[_0x45b553(0x11f)](ATTACHMENTS_DIR,_0x46a099['agentId'],_0x4a1cde,'metadata.json'),_0x3cf04a=await this[_0x45b553(0x128)][_0x45b553(0x12a)](_0x1a871a);if(!_0x3cf04a)return this['logger']?.[_0x45b553(0xf4)](_0x45b553(0x103),{'fileId':_0x4a1cde}),null;const _0x54c332=await this['fileProcessor']['readFile'](_0x1a871a,_0x45b553(0xfa));return JSON[_0x45b553(0xe3)](_0x54c332);}catch(_0x3094eb){return this[_0x45b553(0x120)]?.['error'](_0x45b553(0x12d),{'fileId':_0x4a1cde,'error':_0x3094eb[_0x45b553(0x11e)]}),null;}}async['getAttachmentContent'](_0x4914f9){const _0x21b3c9=a0_0x20f659;try{const _0x48acf8=await this['getAttachment'](_0x4914f9);if(!_0x48acf8||_0x48acf8['mode']!=='content')return null;const _0x31822c=a0_0x4cd589['join'](ATTACHMENTS_DIR,_0x48acf8[_0x21b3c9(0x112)],_0x4914f9,_0x48acf8['contentFileName']),_0xa98c03=await this[_0x21b3c9(0x128)]['fileExists'](_0x31822c);if(!_0xa98c03)return null;return await this['fileProcessor']['readFile'](_0x31822c,_0x21b3c9(0xfa));}catch(_0x13e446){return this[_0x21b3c9(0x120)]?.[_0x21b3c9(0x102)](_0x21b3c9(0xfc),{'fileId':_0x4914f9,'error':_0x13e446[_0x21b3c9(0x11e)]}),null;}}async['toggleActive'](_0xc9fb77){const _0x5bafcb=a0_0x20f659;try{const _0x385ed1=await this['getAttachment'](_0xc9fb77);if(!_0x385ed1)throw new Error(_0x5bafcb(0x12f)+_0xc9fb77);_0x385ed1[_0x5bafcb(0x121)]=!_0x385ed1[_0x5bafcb(0x121)],_0x385ed1[_0x5bafcb(0x123)]=new Date()[_0x5bafcb(0x118)]();const _0x283fe9=a0_0x4cd589[_0x5bafcb(0x11f)](ATTACHMENTS_DIR,_0x385ed1[_0x5bafcb(0x112)],_0xc9fb77,'metadata.json');return await this[_0x5bafcb(0x128)]['writeFile'](_0x283fe9,JSON[_0x5bafcb(0x11c)](_0x385ed1,null,0x2),'utf8'),this[_0x5bafcb(0x122)][_0x5bafcb(0x10c)][_0xc9fb77]&&(this[_0x5bafcb(0x122)]['attachments'][_0xc9fb77]['active']=_0x385ed1['active'],await this['saveIndex']()),this['logger']?.[_0x5bafcb(0xf6)](_0x5bafcb(0x12b),{'fileId':_0xc9fb77,'active':_0x385ed1['active']}),_0x385ed1;}catch(_0x4c35a0){this['logger']?.['error'](_0x5bafcb(0xf3),{'fileId':_0xc9fb77,'error':_0x4c35a0[_0x5bafcb(0x11e)]});throw _0x4c35a0;}}async['updateAttachment'](_0x58a6bb,_0x7f0cf5){const _0x2770f5=a0_0x20f659;try{const _0x2e316b=await this['getAttachment'](_0x58a6bb);if(!_0x2e316b)throw new Error(_0x2770f5(0x12f)+_0x58a6bb);const _0x339b4b=['fileName',_0x2770f5(0x121)];for(const _0x5273df of _0x339b4b){_0x7f0cf5[_0x5273df]!==undefined&&(_0x2e316b[_0x5273df]=_0x7f0cf5[_0x5273df]);}_0x2e316b['lastModified']=new Date()['toISOString']();const _0x3dec60=a0_0x4cd589['join'](ATTACHMENTS_DIR,_0x2e316b[_0x2770f5(0x112)],_0x58a6bb,_0x2770f5(0x10b));return await this['fileProcessor'][_0x2770f5(0xeb)](_0x3dec60,JSON['stringify'](_0x2e316b,null,0x2),'utf8'),this['index']['attachments'][_0x58a6bb]&&(_0x7f0cf5[_0x2770f5(0xf1)]&&(this[_0x2770f5(0x122)]['attachments'][_0x58a6bb]['fileName']=_0x7f0cf5[_0x2770f5(0xf1)]),_0x7f0cf5[_0x2770f5(0x121)]!==undefined&&(this['index']['attachments'][_0x58a6bb][_0x2770f5(0x121)]=_0x7f0cf5[_0x2770f5(0x121)]),await this['saveIndex']()),this['logger']?.['info'](_0x2770f5(0x124),{'fileId':_0x58a6bb,'updates':_0x7f0cf5}),_0x2e316b;}catch(_0x5f4c7a){this['logger']?.['error']('Error\x20updating\x20attachment',{'fileId':_0x58a6bb,'error':_0x5f4c7a[_0x2770f5(0x11e)]});throw _0x5f4c7a;}}async[a0_0x20f659(0x114)](_0x39df0d,_0x57e81d){const _0x3db976=a0_0x20f659;try{const _0x1662f2=await this[_0x3db976(0xfe)](_0x39df0d);if(!_0x1662f2)throw new Error(_0x3db976(0x12f)+_0x39df0d);_0x1662f2[_0x3db976(0x125)]=_0x1662f2['referencedBy']['filter'](_0x291ea4=>_0x291ea4!==_0x57e81d);if(_0x1662f2['referencedBy'][_0x3db976(0x11a)]>0x0){const _0x27f840=a0_0x4cd589['join'](ATTACHMENTS_DIR,_0x1662f2['agentId'],_0x39df0d,'metadata.json');return await this[_0x3db976(0x128)][_0x3db976(0xeb)](_0x27f840,JSON[_0x3db976(0x11c)](_0x1662f2,null,0x2),_0x3db976(0xfa)),this[_0x3db976(0x122)]['attachments'][_0x39df0d]&&(this[_0x3db976(0x122)]['attachments'][_0x39df0d]['referencedBy']=_0x1662f2[_0x3db976(0x125)]),this[_0x3db976(0x122)][_0x3db976(0x12e)][_0x57e81d]&&(this[_0x3db976(0x122)]['agentRefs'][_0x57e81d]=this[_0x3db976(0x122)][_0x3db976(0x12e)][_0x57e81d][_0x3db976(0xe6)](_0x4af844=>_0x4af844!==_0x39df0d)),await this['saveIndex'](),this[_0x3db976(0x120)]?.[_0x3db976(0xf6)]('Attachment\x20dereferenced',{'fileId':_0x39df0d,'agentId':_0x57e81d,'remainingRefs':_0x1662f2['referencedBy'][_0x3db976(0x11a)]}),![];}const _0x21167c=a0_0x4cd589['join'](ATTACHMENTS_DIR,_0x1662f2['agentId'],_0x39df0d);return await this[_0x3db976(0x128)][_0x3db976(0xe1)](_0x21167c),delete this['index']['attachments'][_0x39df0d],this['index'][_0x3db976(0x12e)][_0x57e81d]&&(this[_0x3db976(0x122)][_0x3db976(0x12e)][_0x57e81d]=this[_0x3db976(0x122)]['agentRefs'][_0x57e81d][_0x3db976(0xe6)](_0x1d7c32=>_0x1d7c32!==_0x39df0d)),await this['saveIndex'](),this['logger']?.['info']('Attachment\x20deleted',{'fileId':_0x39df0d,'agentId':_0x57e81d}),!![];}catch(_0x13e19b){this['logger']?.[_0x3db976(0x102)]('Error\x20deleting\x20attachment',{'fileId':_0x39df0d,'agentId':_0x57e81d,'error':_0x13e19b[_0x3db976(0x11e)]});throw _0x13e19b;}}async['deleteAgentAttachments'](_0x193e35){const _0x37a563=a0_0x20f659;try{const _0x46baf4=this[_0x37a563(0x122)]['agentRefs'][_0x193e35]||[];let _0x307171=0x0,_0xf2a581=0x0;for(const _0x542f2f of _0x46baf4){const _0x522bcb=await this[_0x37a563(0x114)](_0x542f2f,_0x193e35);_0x522bcb?_0x307171++:_0xf2a581++;}return this[_0x37a563(0x120)]?.[_0x37a563(0xf6)](_0x37a563(0x105),{'agentId':_0x193e35,'deleted':_0x307171,'dereferenced':_0xf2a581}),{'deleted':_0x307171,'dereferenced':_0xf2a581};}catch(_0x5aa38a){this['logger']?.[_0x37a563(0x102)]('Error\x20deleting\x20agent\x20attachments',{'agentId':_0x193e35,'error':_0x5aa38a['message']});throw _0x5aa38a;}}async[a0_0x20f659(0xff)](_0x3ac7f4,_0x61ee62){const _0x445220=a0_0x20f659;try{const _0xa7d6c=await this[_0x445220(0xfe)](_0x3ac7f4);if(!_0xa7d6c)throw new Error(_0x445220(0x104)+_0x3ac7f4);!_0xa7d6c['referencedBy'][_0x445220(0xe7)](_0x61ee62)&&_0xa7d6c['referencedBy'][_0x445220(0xf7)](_0x61ee62);_0xa7d6c[_0x445220(0x123)]=new Date()['toISOString'](),_0xa7d6c['importedFrom']=_0xa7d6c['agentId'];const _0x484bc9=a0_0x4cd589[_0x445220(0x11f)](ATTACHMENTS_DIR,_0xa7d6c['agentId'],_0x3ac7f4,'metadata.json');return await this['fileProcessor'][_0x445220(0xeb)](_0x484bc9,JSON['stringify'](_0xa7d6c,null,0x2),'utf8'),this['index'][_0x445220(0x10c)][_0x3ac7f4]&&(this['index']['attachments'][_0x3ac7f4]['referencedBy']=_0xa7d6c[_0x445220(0x125)]),!this['index']['agentRefs'][_0x61ee62]&&(this['index'][_0x445220(0x12e)][_0x61ee62]=[]),!this['index'][_0x445220(0x12e)][_0x61ee62]['includes'](_0x3ac7f4)&&this[_0x445220(0x122)][_0x445220(0x12e)][_0x61ee62]['push'](_0x3ac7f4),await this['saveIndex'](),this[_0x445220(0x120)]?.[_0x445220(0xf6)]('Attachment imported',{'sourceFileId':_0x3ac7f4,'targetAgentId':_0x61ee62}),_0xa7d6c;}catch(_0x31d50b){this['logger']?.[_0x445220(0x102)]('Error importing attachment',{'sourceFileId':_0x3ac7f4,'targetAgentId':_0x61ee62,'error':_0x31d50b['message']});throw _0x31d50b;}}async[a0_0x20f659(0x10d)](_0xe948ea){return await this['getAttachments'](_0xe948ea,{'active':!![]});}async[a0_0x20f659(0x108)](_0x1f2a27){const _0x1a0065=a0_0x20f659;try{const _0x21cbbb=await this[_0x1a0065(0xe5)](_0x1f2a27);if(!_0x21cbbb)return null;if(_0x21cbbb[_0x1a0065(0x129)]('data:image'))return'[Image\x20content\x20-\x20base64\x20encoded]';return _0x21cbbb['length']>0x3e8?_0x21cbbb[_0x1a0065(0x11d)](0x0,0x3e8)+_0x1a0065(0x126):_0x21cbbb;}catch(_0x1441e6){return this['logger']?.[_0x1a0065(0x102)]('Error\x20getting\x20attachment\x20preview',{'fileId':_0x1f2a27,'error':_0x1441e6['message']}),null;}}}export default FileAttachmentService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x45022a=a0_0x1fd8;function a0_0x1fd8(_0x166ce6,_0x6bf690){_0x166ce6=_0x166ce6-0x129;const _0x1ba5ab=a0_0x1ba5();let _0x1fd84a=_0x1ba5ab[_0x166ce6];if(a0_0x1fd8['jAaLwE']===undefined){var _0x5a1251=function(_0x141d0a){const _0x2dbe23='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32e146='',_0x4b6bbd='';for(let _0xe7fe0a=0x0,_0x380aaf,_0x37af4b,_0xdaaaa1=0x0;_0x37af4b=_0x141d0a['charAt'](_0xdaaaa1++);~_0x37af4b&&(_0x380aaf=_0xe7fe0a%0x4?_0x380aaf*0x40+_0x37af4b:_0x37af4b,_0xe7fe0a++%0x4)?_0x32e146+=String['fromCharCode'](0xff&_0x380aaf>>(-0x2*_0xe7fe0a&0x6)):0x0){_0x37af4b=_0x2dbe23['indexOf'](_0x37af4b);}for(let _0x253b95=0x0,_0x57be9e=_0x32e146['length'];_0x253b95<_0x57be9e;_0x253b95++){_0x4b6bbd+='%'+('00'+_0x32e146['charCodeAt'](_0x253b95)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4b6bbd);};a0_0x1fd8['PGkVHI']=_0x5a1251,a0_0x1fd8['CbfZKg']={},a0_0x1fd8['jAaLwE']=!![];}const _0x4fbefc=_0x1ba5ab[0x0],_0x125e58=_0x166ce6+_0x4fbefc,_0x58c9c0=a0_0x1fd8['CbfZKg'][_0x125e58];return!_0x58c9c0?(_0x1fd84a=a0_0x1fd8['PGkVHI'](_0x1fd84a),a0_0x1fd8['CbfZKg'][_0x125e58]=_0x1fd84a):_0x1fd84a=_0x58c9c0,_0x1fd84a;}(function(_0x300a34,_0x4447bb){const _0x1fa5c8=a0_0x1fd8,_0x36df8f=_0x300a34();while(!![]){try{const _0x345848=-parseInt(_0x1fa5c8(0x175))/0x1*(parseInt(_0x1fa5c8(0x17a))/0x2)+parseInt(_0x1fa5c8(0x12d))/0x3*(parseInt(_0x1fa5c8(0x13a))/0x4)+-parseInt(_0x1fa5c8(0x161))/0x5+-parseInt(_0x1fa5c8(0x156))/0x6*(parseInt(_0x1fa5c8(0x159))/0x7)+parseInt(_0x1fa5c8(0x167))/0x8*(parseInt(_0x1fa5c8(0x13f))/0x9)+parseInt(_0x1fa5c8(0x179))/0xa+parseInt(_0x1fa5c8(0x12c))/0xb;if(_0x345848===_0x4447bb)break;else _0x36df8f['push'](_0x36df8f['shift']());}catch(_0x55c837){_0x36df8f['push'](_0x36df8f['shift']());}}}(a0_0x1ba5,0xd7a8a));function a0_0x1ba5(){const _0x2b99a2=['mJq3nJjXyLfiDwO','x3bHCNnLuM91DgLUz1jLC3bVBNnL','yMvUy2HTyxjRu2vYDMLJzq','nJC5v2jOtMDX','ihWGu3rYzw5NDgHZoIa','CMvHC29UAw5N','zw50CMLLCW','y29UDgv4De1LC3nHz2vZq291BNq','cGOJiYbszwnLBNqGq29UDMvYC2f0Aw9UienVBNrLEhqk','y29UDgv4DfjLzMvYzw5Jzxm','z2v0qMvUy2HTyxjRvgfIBgu','ndG1ndC0mgryqvbMCG','cImJiYbnB2rLBcbezxrHAwXZcG','C2vSzwn0zwrnB2rLBa','kIOGka','z2v0u3rHDhvZ','zgvIDwC','oejUrNjhAa','uM91DgvYihrLC3qGzMfPBgvK','qu5usfjpueLdx09qvvm','uM91DgvYihrLC3qGy29TCgXLDgvK','ww91igfYzsbHig1VzgvSihjVDxrPBMCGzxHWzxj0lIbbBMfSExPLignVBNzLCNnHDgLVBNmGyw5KihnLBgvJDcbVChrPBwfSiefjig1VzgvSCY4GqwX3yxLZihjLC3bVBMqGD2L0Acb2ywXPzcbku09oig9UBhKU','zM9YrwfJAa','tw9KzwWGCM91DgLUzYbMywLSzwqSigzHBgXPBMCGyMfJAYb0BYbJDxjYzw50ig1VzgvS','BwfW','y29UDgvUDa','rMfPBgvKihrVihbHCNnLihjVDxrPBMCGCMvZCg9UC2u','DgfZA1r5Cgu','AgfZq29UDgv4DfjLzMvYzw5Jzxm','tM8GCMvHC29UAw5NihbYB3zPzgvK','kIPdB250zxH0ifr5CgvZkIO6ia','mvvcA1nxyq','tM8GCMvJzw50ig1LC3nHz2vZigf2ywLSywjSzs4','CMvXDwvZDfrPBwvVDxq','BwvZC2fNzq','nZm4nJK0mhD4DxvytG','nZKYodK4zhjIC2Hh','tI9b','twLZC2LUzYbZzwXLy3rLze1VzgvSigLUigf1Dg9WAwXVDc1TB2rLBc1YB3v0zxiGCMvZCg9UC2u','DhLWzq','Dw5RBM93BG','qu5usfjpueLdx1nptK5fva','cGOJiYbsB3v0Aw5NierLy2LZAw9UcKfUywX5EMuGDgHLign1CNjLBNqGBwvZC2fNzsbHBMqGy29UDMvYC2f0Aw9UignVBNrLEhqGDg8GC2vSzwn0ihrOzsbIzxn0ig1VzgvSlIbdB25ZAwrLCJOkcJeUicOQvgfZAYbuExbLkIO6ieLUzMvYigzYB20Gy29UDMvYC2f0Aw9UignVBNrLBNqGlsbPCYb0AgLZignVzgLUzYWGyw5HBhLZAxmSignYzwf0AxzLihDYAxrPBMCSig9YigeGCxvPy2SGDgfZAZ8kmI4GkIPdB21WBgv4Axr5kIO6ierVzxmGAxqGCMvXDwLYzsbKzwvWihjLyxnVBMLUzYbVCIbPCYbPDcbZDhjHAwDODgzVCNDHCMq/cJmUicOQq29UDgv4DcOQoIbbCMuGDgHLCMuGy29KzsbMAwXLCYbVCIb0zwnOBMLJywWGCMvMzxjLBMnLCZ8knc4GkIPdB252zxjZyxrPB24GrMXVDYOQoIbxAgf0igHHCYbIzwvUigrPC2n1C3nLzcbYzwnLBNrSEsb0BYb1BMrLCNn0yw5KihrOzsbVDMvYywXSihrHC2S/cJuUicOQrwzMAwnPzw5JEsOQoIbcywXHBMnLihbLCMzVCM1HBMnLihDPDgGGy29ZDc9ZCgvLzcbUzwvKCWOkuMvZCg9Uzcb3AxrOiePtt04GB25SEtOkEWOGicjZzwXLy3rLze1VzgvSiJOGiM1VzgvSlw5HBwuIlaOGicj0yxnRvhLWzsi6icjJB2rPBMD8yw5HBhLZAxn8y3jLyxrPDMv8CxvPy2STDgfZA3mIlaOGicjJB25MAwrLBMnLiJOGmc44nsWkicaICMvHC29UAw5NiJOGiKjYAwvMigv4CgXHBMf0Aw9Uig9MihDOEsb0AgLZig1VzgvSihDHCYbJAg9Zzw4IlaOGicjMywn0B3jZiJOGwYjMywn0B3iXiIWGiMzHy3rVCJiIlcaIzMfJDg9YmYjDcN0','uKvrvuvtvf9usu1ft1vu','Bwf0y2G','CM9Szq','AM9PBG','mtC2mduZnZLcEfzArgS','otiYogfMBLLjAa','CgfYC2u','x2fZA0zVCLjVDxrPBMC','C2XPy2u','lIaQkG','y3vYCMvUDe1LC3nHz2u','BwvZC2fNzunVDw50','Bg9Nz2vY','Dg9Wtw9KzwXZ','Aw5JBhvKzxm','y29UzMLN','ktOG','x2zVCM1HDejLBMnOBwfYA0rHDge','odb3rLfICxm','C3vIC3rYAw5N','cGOJiYbnB2rLBcbczw5JAg1HCMSGrgf0yqO','Bw9KzwWTCM91DgvY','yxv0B3bPBg90lw1VzgvSlxjVDxrLCIbYB3v0Aw5NihjLCxvLC3qGzMfPBgvK','mJi1mZe1ovrxAKffra','C2nVCMu','y3vYCMvUDe1VzgvS','zMfJDg9YCW','y29UzMLKzw5Jzq','x2nYzwf0zvjVDxrPBMDqCM9TChq','C2vZC2LVBKLK','y29UDgv4Dfr5CgvZ','zxjYB3i','cI0GkIPnzxnZywDLienVDw50kIO6ia','CM91DgvYtw9KzwW','q2fUihLVDsbOzwXWig1LigrLyNvNihrOAxmGsMf2yvnJCMLWDcbMDw5JDgLVBJ8','uM91DgvYihnLBgvJDgvKihvUyxzHAwXHyMXLig1VzgvSlcb1C2LUzYbJDxjYzw50ig1VzgvS','tM8Gzgf0yq','uM91DgLUzYbMywLSzwqSihvZAw5NigzHBgXIywnRig1VzgvS','DxnLCG','q09ovevyvf9nrvntquDfu19dt1vova','DgfZA3m','revfufnfruTFuJe','BgvUz3rO','D2fYBG','DgvZDfjVDxrLCG','CM91DgvnzxnZywDL'];a0_0x1ba5=function(){return _0x2b99a2;};return a0_0x1ba5();}import{MODEL_ROUTER_CONFIG,HTTP_STATUS,MODELS}from'../utilities/constants.js';class ModelRouterService{constructor(_0x32e146,_0x4b6bbd,_0xe7fe0a,_0x380aaf){const _0x35432b=a0_0x1fd8;this[_0x35432b(0x137)]=_0x32e146,this[_0x35432b(0x134)]=_0x4b6bbd,this[_0x35432b(0x158)]=_0xe7fe0a,this['aiService']=_0x380aaf,this['routerModel']=MODEL_ROUTER_CONFIG['ROUTER_MODEL'],this['contextMessagesCount']=MODEL_ROUTER_CONFIG[_0x35432b(0x14f)],this['requestTimeout']=MODEL_ROUTER_CONFIG[_0x35432b(0x181)];}async[a0_0x45022a(0x155)](_0x37af4b,_0xdaaaa1=[],_0x253b95='',_0x57be9e=[],_0x5f47ef={}){const _0x2fa3f1=a0_0x45022a;try{this['logger'][_0x2fa3f1(0x166)]('Starting\x20model\x20routing\x20analysis',{'messageLength':_0x37af4b['content']?.[_0x2fa3f1(0x152)]||0x0,'recentMessagesCount':_0xdaaaa1[_0x2fa3f1(0x152)],'currentModel':_0x253b95,'availableModelsCount':_0x57be9e[_0x2fa3f1(0x152)]});const _0x511b60=this['_buildRoutingContext'](_0x37af4b,_0xdaaaa1,_0x253b95,_0x57be9e),_0x5684cc=this['benchmarkService'][_0x2fa3f1(0x160)](),_0x5d9807=this[_0x2fa3f1(0x144)](_0x511b60,_0x5684cc),_0xa3a787=await this[_0x2fa3f1(0x12f)](_0x5d9807,_0x5f47ef),_0x5411d7=this['_validateModelSelection'](_0xa3a787,_0x57be9e,_0x253b95);return this['logger']['info']('Model\x20routing\x20completed',{'selectedModel':_0x5411d7,'previousModel':_0x253b95,'changed':_0x5411d7!==_0x253b95,'reasoning':_0xa3a787['reasoning']?.[_0x2fa3f1(0x13b)](0x0,0x64)||_0x2fa3f1(0x173)}),{'selectedModel':_0x5411d7,'previousModel':_0x253b95,'changed':_0x5411d7!==_0x253b95,'reasoning':_0xa3a787['reasoning']||_0x2fa3f1(0x173)};}catch(_0x38a5cb){this[_0x2fa3f1(0x134)][_0x2fa3f1(0x147)](_0x2fa3f1(0x16d),{'error':_0x38a5cb['message'],'currentModel':_0x253b95});const _0x486808=_0x253b95||_0x57be9e[0x0]||MODELS['ANTHROPIC_SONNET'];return{'selectedModel':_0x486808,'previousModel':_0x253b95,'changed':![],'reasoning':_0x2fa3f1(0x14d)};}}['_buildRoutingContext'](_0xfb7b24,_0x2f43fb,_0x13a975,_0x307225){const _0x3af325=a0_0x45022a,_0x5d3513=_0x2f43fb[_0x3af325(0x130)](-this[_0x3af325(0x15d)])[_0x3af325(0x16e)](_0xd15f72=>({'role':_0xd15f72['role'],'content':_0xd15f72['content']?.['substring'](0x0,0x1f4)||'','timestamp':_0xd15f72['timestamp']}));return{'currentMessage':{'content':_0xfb7b24[_0x3af325(0x16f)]?.['substring'](0x0,0x3e8)||'','role':_0xfb7b24['role']||_0x3af325(0x14e),'hasContextReferences':!!_0xfb7b24[_0x3af325(0x15f)]?.[_0x3af325(0x152)],'contextTypes':_0xfb7b24[_0x3af325(0x15f)]?.['map'](_0x5996b9=>_0x5996b9[_0x3af325(0x17d)])||[]},'recentMessages':_0x5d3513,'currentModel':_0x13a975,'availableModels':_0x307225['map'](_0x4855b2=>({'name':_0x4855b2,'isCurrentModel':_0x4855b2===_0x13a975})),'messageCount':_0x2f43fb[_0x3af325(0x152)]+0x1,'timestamp':new Date()['toISOString']()};}['_createRoutingPrompt'](_0x5c8607,_0x3473cf){const _0x10ca28=a0_0x45022a;return'You\x20are\x20a\x20model\x20routing\x20assistant.\x20Your\x20job\x20is\x20to\x20analyze\x20a\x20conversation\x20and\x20select\x20the\x20optimal\x20AI\x20model\x20for\x20the\x20next\x20response.\x0a\x0a##\x20Current\x20Situation\x0a-\x20**Current\x20Model**:\x20'+(_0x5c8607[_0x10ca28(0x141)]||'None')+_0x10ca28(0x148)+_0x5c8607[_0x10ca28(0x133)]+'\x0a-\x20**Available\x20Models**:\x20'+_0x5c8607['availableModels'][_0x10ca28(0x16e)](_0x544062=>_0x544062['name'])[_0x10ca28(0x12b)](',\x20')+_0x10ca28(0x15e)+this['_formatRecentMessages'](_0x5c8607['recentMessages'])+'\x0a\x0a##\x20Current\x20Message\x20to\x20Route\x0a**Role**:\x20'+_0x5c8607[_0x10ca28(0x132)][_0x10ca28(0x12a)]+'\x0a**Content**:\x20'+_0x5c8607[_0x10ca28(0x132)]['content']+'\x0a**Has\x20Context\x20References**:\x20'+_0x5c8607[_0x10ca28(0x132)][_0x10ca28(0x172)]+'\x0a'+(_0x5c8607[_0x10ca28(0x132)][_0x10ca28(0x146)][_0x10ca28(0x152)]>0x0?_0x10ca28(0x174)+_0x5c8607['currentMessage']['contextTypes']['join'](',\x20'):'')+_0x10ca28(0x13c)+this[_0x10ca28(0x139)](_0x3473cf)+_0x10ca28(0x180);}['_formatRecentMessages'](_0x389589){const _0x32f666=a0_0x45022a;if(!_0x389589['length'])return _0x32f666(0x176);return _0x389589[_0x32f666(0x16e)]((_0x44168b,_0x842813)=>_0x842813+0x1+_0x32f666(0x131)+_0x44168b['role']+'**:\x20'+_0x44168b['content'])[_0x32f666(0x12b)]('\x0a');}['_formatBenchmarkData'](_0x3ee5f5){const _0x2057a4=a0_0x45022a,_0x1df18d=_0x3ee5f5['models']||[],_0x2acc9b=_0x3ee5f5[_0x2057a4(0x150)]||{},_0x49b613=_0x3ee5f5['summary']||{};let _0x1f5bdf='###\x20Model\x20Performance\x20Summary\x0a';return Object[_0x2057a4(0x15c)](_0x2acc9b)['forEach'](([_0x354139,_0x2f6492])=>{const _0x28926f=_0x2057a4;_0x1f5bdf+='**'+_0x354139['toUpperCase']()+_0x28926f(0x164)+_0x2f6492['description']+_0x28926f(0x138)+(_0x2f6492[_0x28926f(0x135)]?.['join'](',\x20')||_0x28926f(0x14c))+'\x0a';}),_0x1f5bdf+=_0x2057a4(0x162),_0x1df18d['slice'](0x0,0x8)[_0x2057a4(0x16c)](_0x5ba876=>{const _0xd029d9=_0x2057a4;_0x1f5bdf+='**'+_0x5ba876['name']+'**:\x20';const _0x211882=Object[_0xd029d9(0x15c)](_0x5ba876[_0xd029d9(0x150)]||{})['map'](([_0x15d406,_0x1a4e92])=>_0x15d406+'('+_0x1a4e92[_0xd029d9(0x140)]+')')['join'](',\x20');_0x1f5bdf+=_0x211882+_0xd029d9(0x15a)+(_0x5ba876['strengths']?.['join'](',\x20')||_0xd029d9(0x17b))+'\x0a';}),_0x1f5bdf;}async[a0_0x45022a(0x12f)](_0x257c7b,_0x529a8b={}){const _0x337349=a0_0x45022a;try{const _0x30277f=await this['aiService']['sendMessage'](this['routerModel'],_0x257c7b,{'agentId':_0x337349(0x13d),'systemPrompt':_0x337349(0x16b),'temperature':0.3,'maxTokens':0x1f4,'timeout':this['requestTimeout'],'sessionId':_0x529a8b[_0x337349(0x145)],'apiKey':_0x529a8b['apiKey']||this[_0x337349(0x137)]['apiKey'],'customApiKeys':_0x529a8b['customApiKeys'],'platformProvided':!![]});if(!_0x30277f['content'])throw new Error('No response content from autopilot-model-router');const _0x1dfe1d=this[_0x337349(0x157)](_0x30277f['content']);return _0x1dfe1d;}catch(_0x3d762b){this['logger']['error'](_0x337349(0x13e),{'error':_0x3d762b['message'],'routerModel':this[_0x337349(0x149)]});throw _0x3d762b;}}[a0_0x45022a(0x157)](_0x539fdd){const _0xcdb496=a0_0x45022a;try{const _0xb3a84c=_0x539fdd[_0xcdb496(0x129)](/\{[\s\S]*\}/);if(!_0xb3a84c)throw new Error('No\x20JSON\x20found\x20in\x20autopilot-model-router\x20response');const _0x4b6dad=JSON[_0xcdb496(0x12e)](_0xb3a84c[0x0]);if(!_0x4b6dad['selectedModel'])throw new Error(_0xcdb496(0x17c));return{'selectedModel':_0x4b6dad[_0xcdb496(0x163)],'taskType':_0x4b6dad[_0xcdb496(0x171)]||'unknown','confidence':_0x4b6dad[_0xcdb496(0x143)]||0.5,'reasoning':_0x4b6dad[_0xcdb496(0x15b)]||'No\x20reasoning\x20provided','factors':_0x4b6dad[_0xcdb496(0x142)]||[]};}catch(_0x184ad4){return this[_0xcdb496(0x134)][_0xcdb496(0x153)]('Failed\x20to\x20parse\x20autopilot-model-router\x20routing\x20response',{'error':_0x184ad4[_0xcdb496(0x178)],'content':_0x539fdd['substring'](0x0,0xc8)}),{'selectedModel':null,'taskType':_0xcdb496(0x17e),'confidence':0x0,'reasoning':_0xcdb496(0x170),'factors':['parsing-error']};}}['_validateModelSelection'](_0x2dbed5,_0x2a75d8,_0x1f0597){const _0x19b69b=a0_0x45022a,{selectedModel:_0x43436f}=_0x2dbed5;if(!_0x43436f)return this['logger']['debug']('No\x20model\x20selected\x20by\x20router,\x20using\x20current\x20model'),_0x1f0597;if(!_0x2a75d8[_0x19b69b(0x136)](_0x43436f))return this[_0x19b69b(0x134)][_0x19b69b(0x153)](_0x19b69b(0x14b),{'selectedModel':_0x43436f,'availableModels':_0x2a75d8}),_0x1f0597;return _0x43436f;}[a0_0x45022a(0x165)](){const _0xe60af0=a0_0x45022a;return{'routerModel':this['routerModel'],'contextMessagesCount':this[_0xe60af0(0x15d)],'requestTimeout':this[_0xe60af0(0x177)],'benchmarkServiceStatus':this[_0xe60af0(0x158)][_0xe60af0(0x165)](),'isAvailable':!![]};}async[a0_0x45022a(0x154)](){const _0x52e906=a0_0x45022a;try{const _0x52cddd={'content':_0x52e906(0x14a),'role':_0x52e906(0x14e)},_0x507eca=await this['routeMessage'](_0x52cddd,[],MODELS[_0x52e906(0x17f)],[MODELS['ANTHROPIC_SONNET'],MODELS[_0x52e906(0x169)],MODELS['GPT_4'],MODELS[_0x52e906(0x151)]],{'apiKey':'test-key'});return this[_0x52e906(0x134)]['info'](_0x52e906(0x16a),{'selectedModel':_0x507eca}),{'success':!![],'selectedModel':_0x507eca};}catch(_0xc69098){return this[_0x52e906(0x134)][_0x52e906(0x147)](_0x52e906(0x168),{'error':_0xc69098[_0x52e906(0x178)]}),{'success':![],'error':_0xc69098[_0x52e906(0x178)]};}}}export default ModelRouterService;
|
|
1
|
+
const a0_0x5a1f1c=a0_0x2ba6;(function(_0x565280,_0x3925f8){const _0x12daac=a0_0x2ba6,_0x3f481e=_0x565280();while(!![]){try{const _0x118dc4=-parseInt(_0x12daac(0x194))/0x1+-parseInt(_0x12daac(0x19d))/0x2*(parseInt(_0x12daac(0x1bb))/0x3)+-parseInt(_0x12daac(0x173))/0x4+-parseInt(_0x12daac(0x199))/0x5*(-parseInt(_0x12daac(0x179))/0x6)+-parseInt(_0x12daac(0x1a1))/0x7*(-parseInt(_0x12daac(0x180))/0x8)+-parseInt(_0x12daac(0x1b0))/0x9*(parseInt(_0x12daac(0x17a))/0xa)+parseInt(_0x12daac(0x1b4))/0xb*(parseInt(_0x12daac(0x170))/0xc);if(_0x118dc4===_0x3925f8)break;else _0x3f481e['push'](_0x3f481e['shift']());}catch(_0x3f9665){_0x3f481e['push'](_0x3f481e['shift']());}}}(a0_0xfcb5,0x6cd26));import{MODEL_ROUTER_CONFIG,HTTP_STATUS,MODELS}from'../utilities/constants.js';function a0_0x2ba6(_0x40c309,_0x2c1b6b){_0x40c309=_0x40c309-0x16d;const _0xfcb592=a0_0xfcb5();let _0x2ba634=_0xfcb592[_0x40c309];if(a0_0x2ba6['wmLksD']===undefined){var _0x2ec975=function(_0x42e0c2){const _0x52ba82='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x84a569='',_0x4605f3='';for(let _0x3145eb=0x0,_0x6a1b06,_0x226a5e,_0x3d876d=0x0;_0x226a5e=_0x42e0c2['charAt'](_0x3d876d++);~_0x226a5e&&(_0x6a1b06=_0x3145eb%0x4?_0x6a1b06*0x40+_0x226a5e:_0x226a5e,_0x3145eb++%0x4)?_0x84a569+=String['fromCharCode'](0xff&_0x6a1b06>>(-0x2*_0x3145eb&0x6)):0x0){_0x226a5e=_0x52ba82['indexOf'](_0x226a5e);}for(let _0x140ac=0x0,_0x3a3435=_0x84a569['length'];_0x140ac<_0x3a3435;_0x140ac++){_0x4605f3+='%'+('00'+_0x84a569['charCodeAt'](_0x140ac)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4605f3);};a0_0x2ba6['yTpxON']=_0x2ec975,a0_0x2ba6['KtkjyH']={},a0_0x2ba6['wmLksD']=!![];}const _0x517c00=_0xfcb592[0x0],_0x56bee7=_0x40c309+_0x517c00,_0x3df345=a0_0x2ba6['KtkjyH'][_0x56bee7];return!_0x3df345?(_0x2ba634=a0_0x2ba6['yTpxON'](_0x2ba634),a0_0x2ba6['KtkjyH'][_0x56bee7]=_0x2ba634):_0x2ba634=_0x3df345,_0x2ba634;}class ModelRouterService{constructor(_0x84a569,_0x4605f3,_0x3145eb,_0x6a1b06){const _0x1e6b90=a0_0x2ba6;this[_0x1e6b90(0x171)]=_0x84a569,this[_0x1e6b90(0x16f)]=_0x4605f3,this[_0x1e6b90(0x1ad)]=_0x3145eb,this['aiService']=_0x6a1b06,this['routerModel']=MODEL_ROUTER_CONFIG['ROUTER_MODEL'],this[_0x1e6b90(0x176)]=MODEL_ROUTER_CONFIG['CONTEXT_MESSAGES_COUNT'],this['requestTimeout']=MODEL_ROUTER_CONFIG[_0x1e6b90(0x1b6)];}async[a0_0x5a1f1c(0x1a5)](_0x226a5e,_0x3d876d=[],_0x140ac='',_0x3a3435=[],_0x14139f={}){const _0x708df9=a0_0x5a1f1c;try{this['logger'][_0x708df9(0x17d)](_0x708df9(0x192),{'messageLength':_0x226a5e[_0x708df9(0x183)]?.['length']||0x0,'recentMessagesCount':_0x3d876d['length'],'currentModel':_0x140ac,'availableModelsCount':_0x3a3435[_0x708df9(0x189)]});const _0x21f8fc=this[_0x708df9(0x19c)](_0x226a5e,_0x3d876d,_0x140ac,_0x3a3435),_0x39d48f=this[_0x708df9(0x1ad)]['getBenchmarkTable'](),_0xaf6259=this['_createRoutingPrompt'](_0x21f8fc,_0x39d48f),_0x34463f=await this['_askForRouting'](_0xaf6259,_0x14139f),_0x50ba07=this['_validateModelSelection'](_0x34463f,_0x3a3435,_0x140ac);return this['logger'][_0x708df9(0x19a)]('Model\x20routing\x20completed',{'selectedModel':_0x50ba07,'previousModel':_0x140ac,'changed':_0x50ba07!==_0x140ac,'reasoning':_0x34463f['reasoning']?.[_0x708df9(0x1ab)](0x0,0x64)||_0x708df9(0x19b)}),{'selectedModel':_0x50ba07,'previousModel':_0x140ac,'changed':_0x50ba07!==_0x140ac,'reasoning':_0x34463f['reasoning']||_0x708df9(0x19b)};}catch(_0x80ddd0){this[_0x708df9(0x16f)][_0x708df9(0x1ba)]('Model\x20routing\x20failed,\x20falling\x20back\x20to\x20current\x20model',{'error':_0x80ddd0['message'],'currentModel':_0x140ac});const _0x178da0=_0x140ac||_0x3a3435[0x0]||MODELS[_0x708df9(0x1a9)];return{'selectedModel':_0x178da0,'previousModel':_0x140ac,'changed':![],'reasoning':'Routing\x20failed,\x20using\x20fallback\x20model'};}}[a0_0x5a1f1c(0x19c)](_0xc9b977,_0x2423ae,_0x1aec9d,_0x42de49){const _0x134631=a0_0x5a1f1c,_0x4c2195=_0x2423ae[_0x134631(0x195)](-this[_0x134631(0x176)])[_0x134631(0x1a3)](_0x4d66ba=>({'role':_0x4d66ba['role'],'content':_0x4d66ba[_0x134631(0x183)]?.['substring'](0x0,0x1f4)||'','timestamp':_0x4d66ba[_0x134631(0x17b)]}));return{'currentMessage':{'content':_0xc9b977['content']?.[_0x134631(0x1ab)](0x0,0x3e8)||'','role':_0xc9b977[_0x134631(0x1b1)]||'user','hasContextReferences':!!_0xc9b977['contextReferences']?.['length'],'contextTypes':_0xc9b977['contextReferences']?.['map'](_0x5085da=>_0x5085da['type'])||[]},'recentMessages':_0x4c2195,'currentModel':_0x1aec9d,'availableModels':_0x42de49['map'](_0x3ac2e1=>({'name':_0x3ac2e1,'isCurrentModel':_0x3ac2e1===_0x1aec9d})),'messageCount':_0x2423ae[_0x134631(0x189)]+0x1,'timestamp':new Date()['toISOString']()};}['_createRoutingPrompt'](_0x2f1ddc,_0x5baa54){const _0x1f7e65=a0_0x5a1f1c;return'You\x20are\x20a\x20model\x20routing\x20assistant.\x20Your\x20job\x20is\x20to\x20analyze\x20a\x20conversation\x20and\x20select\x20the\x20optimal\x20AI\x20model\x20for\x20the\x20next\x20response.\x0a\x0a##\x20Current\x20Situation\x0a-\x20**Current\x20Model**:\x20'+(_0x2f1ddc[_0x1f7e65(0x1af)]||_0x1f7e65(0x19f))+_0x1f7e65(0x18b)+_0x2f1ddc[_0x1f7e65(0x185)]+'\x0a-\x20**Available\x20Models**:\x20'+_0x2f1ddc['availableModels']['map'](_0x3a7167=>_0x3a7167['name'])['join'](',\x20')+_0x1f7e65(0x18e)+this[_0x1f7e65(0x182)](_0x2f1ddc['recentMessages'])+_0x1f7e65(0x172)+_0x2f1ddc['currentMessage'][_0x1f7e65(0x1b1)]+_0x1f7e65(0x1ae)+_0x2f1ddc['currentMessage'][_0x1f7e65(0x183)]+_0x1f7e65(0x175)+_0x2f1ddc['currentMessage'][_0x1f7e65(0x1a8)]+'\x0a'+(_0x2f1ddc[_0x1f7e65(0x1a0)]['contextTypes']['length']>0x0?'**Context\x20Types**:\x20'+_0x2f1ddc[_0x1f7e65(0x1a0)][_0x1f7e65(0x190)][_0x1f7e65(0x178)](',\x20'):'')+_0x1f7e65(0x1a6)+this['_formatBenchmarkData'](_0x5baa54)+_0x1f7e65(0x197);}['_formatRecentMessages'](_0x2ca1e9){const _0x529861=a0_0x5a1f1c;if(!_0x2ca1e9['length'])return'No\x20recent\x20messages\x20available.';return _0x2ca1e9[_0x529861(0x1a3)]((_0x8f9778,_0x3a4257)=>_0x3a4257+0x1+_0x529861(0x186)+_0x8f9778[_0x529861(0x1b1)]+'**:\x20'+_0x8f9778[_0x529861(0x183)])['join']('\x0a');}['_formatBenchmarkData'](_0xfdb748){const _0xdb73f9=a0_0x5a1f1c,_0x2bbcc0=_0xfdb748['models']||[],_0x51a9ec=_0xfdb748[_0xdb73f9(0x193)]||{},_0x4f2404=_0xfdb748['summary']||{};let _0x16b367='###\x20Model\x20Performance\x20Summary\x0a';return Object['entries'](_0x51a9ec)[_0xdb73f9(0x1a4)](([_0x2da17d,_0x45e4c8])=>{const _0xc154da=_0xdb73f9;_0x16b367+='**'+_0x2da17d['toUpperCase']()+_0xc154da(0x181)+_0x45e4c8[_0xc154da(0x18d)]+'):\x20'+(_0x45e4c8['topModels']?.['join'](',\x20')||_0xc154da(0x1a7))+'\x0a';}),_0x16b367+='\x0a###\x20Model\x20Details\x0a',_0x2bbcc0['slice'](0x0,0x8)[_0xdb73f9(0x1a4)](_0x2aac06=>{const _0x2aa13b=_0xdb73f9;_0x16b367+='**'+_0x2aac06['name']+'**:\x20';const _0x17a10d=Object[_0x2aa13b(0x1b5)](_0x2aac06['tasks']||{})['map'](([_0x2275f2,_0x2ce576])=>_0x2275f2+'('+_0x2ce576[_0x2aa13b(0x17f)]+')')['join'](',\x20');_0x16b367+=_0x17a10d+_0x2aa13b(0x16e)+(_0x2aac06['strengths']?.[_0x2aa13b(0x178)](',\x20')||_0x2aa13b(0x1b7))+'\x0a';}),_0x16b367;}async[a0_0x5a1f1c(0x18f)](_0x4ea941,_0x1c3a36={}){const _0x3bfdb5=a0_0x5a1f1c;try{const _0x22835c=await this['aiService'][_0x3bfdb5(0x1b8)](this[_0x3bfdb5(0x1a2)],_0x4ea941,{'agentId':'model-router','systemPrompt':'You\x20are\x20a\x20model\x20routing\x20expert.\x20Analyze\x20conversations\x20and\x20select\x20optimal\x20AI\x20models.\x20Always\x20respond\x20with\x20valid\x20JSON\x20only.','temperature':0.3,'maxTokens':0x1f4,'timeout':this[_0x3bfdb5(0x187)],'sessionId':_0x1c3a36[_0x3bfdb5(0x17c)],'apiKey':_0x1c3a36[_0x3bfdb5(0x1aa)]||this['config']['apiKey'],'customApiKeys':_0x1c3a36['customApiKeys'],'platformProvided':!![]});if(!_0x22835c[_0x3bfdb5(0x183)])throw new Error('No response content from autopilot-model-router');const _0x48b0e0=this['_parseRoutingResponse'](_0x22835c[_0x3bfdb5(0x183)]);return _0x48b0e0;}catch(_0x1841c9){this[_0x3bfdb5(0x16f)]['error']('autopilot-model-router\x20routing\x20request\x20failed',{'error':_0x1841c9['message'],'routerModel':this['routerModel']});throw _0x1841c9;}}['_parseRoutingResponse'](_0x5e0a7a){const _0x4518bd=a0_0x5a1f1c;try{const _0x5c07cc=_0x5e0a7a['match'](/\{[\s\S]*\}/);if(!_0x5c07cc)throw new Error(_0x4518bd(0x1ac));const _0x560444=JSON[_0x4518bd(0x19e)](_0x5c07cc[0x0]);if(!_0x560444['selectedModel'])throw new Error('Missing\x20selectedModel\x20in\x20autopilot-model-router\x20response');return{'selectedModel':_0x560444[_0x4518bd(0x177)],'taskType':_0x560444[_0x4518bd(0x198)]||_0x4518bd(0x1b3),'confidence':_0x560444['confidence']||0.5,'reasoning':_0x560444[_0x4518bd(0x16d)]||_0x4518bd(0x19b),'factors':_0x560444[_0x4518bd(0x174)]||[]};}catch(_0x5ac15b){return this['logger']['warn'](_0x4518bd(0x18c),{'error':_0x5ac15b['message'],'content':_0x5e0a7a[_0x4518bd(0x1ab)](0x0,0xc8)}),{'selectedModel':null,'taskType':'unknown','confidence':0x0,'reasoning':'Failed\x20to\x20parse\x20routing\x20response','factors':['parsing-error']};}}['_validateModelSelection'](_0x3cd10a,_0x281a4e,_0x5a1293){const _0x3c03b0=a0_0x5a1f1c,{selectedModel:_0x2d11cf}=_0x3cd10a;if(!_0x2d11cf)return this[_0x3c03b0(0x16f)]['debug'](_0x3c03b0(0x191)),_0x5a1293;if(!_0x281a4e[_0x3c03b0(0x184)](_0x2d11cf))return this[_0x3c03b0(0x16f)][_0x3c03b0(0x1b2)]('Router\x20selected\x20unavailable\x20model,\x20using\x20current\x20model',{'selectedModel':_0x2d11cf,'availableModels':_0x281a4e}),_0x5a1293;return _0x2d11cf;}[a0_0x5a1f1c(0x1b9)](){const _0x206453=a0_0x5a1f1c;return{'routerModel':this[_0x206453(0x1a2)],'contextMessagesCount':this['contextMessagesCount'],'requestTimeout':this[_0x206453(0x187)],'benchmarkServiceStatus':this[_0x206453(0x1ad)]['getStatus'](),'isAvailable':!![]};}async[a0_0x5a1f1c(0x188)](){const _0x554dc1=a0_0x5a1f1c;try{const _0x2edd79={'content':'Can\x20you\x20help\x20me\x20debug\x20this\x20JavaScript\x20function?','role':'user'},_0x248985=await this[_0x554dc1(0x1a5)](_0x2edd79,[],MODELS['ANTHROPIC_SONNET'],[MODELS['ANTHROPIC_SONNET'],MODELS[_0x554dc1(0x17e)],MODELS['GPT_4'],MODELS['DEEPSEEK_R1']],{'apiKey':'test-key'});return this[_0x554dc1(0x16f)]['info']('Router\x20test\x20completed',{'selectedModel':_0x248985}),{'success':!![],'selectedModel':_0x248985};}catch(_0x2417e5){return this['logger']['error'](_0x554dc1(0x196),{'error':_0x2417e5['message']}),{'success':![],'error':_0x2417e5[_0x554dc1(0x18a)]};}}}export default ModelRouterService;function a0_0xfcb5(){const _0x27e3cc=['DgLTzxn0yw1W','C2vZC2LVBKLK','zgvIDwC','qu5usfjpueLdx09qvvm','C2nVCMu','nJi3nJbltM5ItMK','kIOGka','x2zVCM1HDfjLy2vUDe1LC3nHz2vZ','y29UDgvUDa','Aw5JBhvKzxm','BwvZC2fNzunVDw50','lIaQkG','CMvXDwvZDfrPBwvVDxq','DgvZDfjVDxrLCG','BgvUz3rO','BwvZC2fNzq','cI0GkIPnzxnZywDLienVDw50kIO6ia','rMfPBgvKihrVihbHCNnLigf1Dg9WAwXVDc1TB2rLBc1YB3v0zxiGCM91DgLUzYbYzxnWB25Zzq','zgvZy3jPChrPB24','cGOJiYbszwnLBNqGq29UDMvYC2f0Aw9UienVBNrLEhqk','x2fZA0zVCLjVDxrPBMC','y29UDgv4Dfr5CgvZ','tM8GBw9KzwWGC2vSzwn0zwqGyNKGCM91DgvYlcb1C2LUzYbJDxjYzw50ig1VzgvS','u3rHCNrPBMCGBw9KzwWGCM91DgLUzYbHBMfSExnPCW','DgfZA3m','mZK4nJmWuMX2vKrq','C2XPy2u','uM91DgvYihrLC3qGzMfPBgvK','cGOJiYbsB3v0Aw5NierLy2LZAw9UcKfUywX5EMuGDgHLign1CNjLBNqGBwvZC2fNzsbHBMqGy29UDMvYC2f0Aw9UignVBNrLEhqGDg8GC2vSzwn0ihrOzsbIzxn0ig1VzgvSlIbdB25ZAwrLCJOkcJeUicOQvgfZAYbuExbLkIO6ieLUzMvYigzYB20Gy29UDMvYC2f0Aw9UignVBNrLBNqGlsbPCYb0AgLZignVzgLUzYWGyw5HBhLZAxmSignYzwf0AxzLihDYAxrPBMCSig9YigeGCxvPy2SGDgfZAZ8kmI4GkIPdB21WBgv4Axr5kIO6ierVzxmGAxqGCMvXDwLYzsbKzwvWihjLyxnVBMLUzYbVCIbPCYbPDcbZDhjHAwDODgzVCNDHCMq/cJmUicOQq29UDgv4DcOQoIbbCMuGDgHLCMuGy29KzsbMAwXLCYbVCIb0zwnOBMLJywWGCMvMzxjLBMnLCZ8knc4GkIPdB252zxjZyxrPB24GrMXVDYOQoIbxAgf0igHHCYbIzwvUigrPC2n1C3nLzcbYzwnLBNrSEsb0BYb1BMrLCNn0yw5KihrOzsbVDMvYywXSihrHC2S/cJuUicOQrwzMAwnPzw5JEsOQoIbcywXHBMnLihbLCMzVCM1HBMnLihDPDgGGy29ZDc9ZCgvLzcbUzwvKCWOkuMvZCg9Uzcb3AxrOiePtt04GB25SEtOkEWOGicjZzwXLy3rLze1VzgvSiJOGiM1VzgvSlw5HBwuIlaOGicj0yxnRvhLWzsi6icjJB2rPBMD8yw5HBhLZAxn8y3jLyxrPDMv8CxvPy2STDgfZA3mIlaOGicjJB25MAwrLBMnLiJOGmc44nsWkicaICMvHC29UAw5NiJOGiKjYAwvMigv4CgXHBMf0Aw9Uig9MihDOEsb0AgLZig1VzgvSihDHCYbJAg9Zzw4IlaOGicjMywn0B3jZiJOGwYjMywn0B3iXiIWGiMzHy3rVCJiIlcaIzMfJDg9YmYjDcN0','DgfZA1r5Cgu','ndvptMPMBeK','Aw5MBW','tM8GCMvHC29UAw5NihbYB3zPzgvK','x2j1AwXKuM91DgLUz0nVBNrLEhq','mtKYmdm0t3vnAvz1','CgfYC2u','tM9Uzq','y3vYCMvUDe1LC3nHz2u','nZKXzMLUrg9W','CM91DgvYtw9KzwW','BwfW','zM9YrwfJAa','CM91DgvnzxnZywDL','cGOJiYbnB2rLBcbczw5JAg1HCMSGrgf0yqO','tM8Gzgf0yq','AgfZq29UDgv4DfjLzMvYzw5Jzxm','qu5usfjpueLdx1nptK5fva','yxbPs2v5','C3vIC3rYAw5N','tM8GsLnptIbMB3vUzcbPBIbHDxrVCgLSB3qTBw9KzwWTCM91DgvYihjLC3bVBNnL','yMvUy2HTyxjRu2vYDMLJzq','cIOQq29UDgvUDcOQoIa','y3vYCMvUDe1VzgvS','ntC0otiWovbzrMvyBG','CM9Szq','D2fYBG','Dw5RBM93BG','odHNwerTt3K','zw50CMLLCW','uKvrvuvtvf9usu1ft1vu','tI9b','C2vUze1LC3nHz2u','z2v0u3rHDhvZ','zxjYB3i','m0vwteX4qq','CMvHC29UAw5N','ihWGu3rYzw5NDgHZoIa','Bg9Nz2vY','mtC5odqWnfjvEvnzEa','y29UzMLN','cGOJiYbdDxjYzw50ie1LC3nHz2uGDg8GuM91DgukkIPsB2XLkIO6ia','mZe3nJu5nK9lvLnfsG','zMfJDg9YCW','cIOQsgfZienVBNrLEhqGuMvMzxjLBMnLCYOQoIa','y29UDgv4De1LC3nHz2vZq291BNq','C2vSzwn0zwrnB2rLBa','AM9PBG','mtKXotqWvLP2DuTg','mtbNsNLYEeW'];a0_0xfcb5=function(){return _0x27e3cc;};return a0_0xfcb5();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x4801e1=a0_0x27c7;(function(_0x40a278,_0xd4270a){const _0x327fb4=a0_0x27c7,_0x2dbe78=_0x40a278();while(!![]){try{const _0x5eb85a=-parseInt(_0x327fb4(0x16b))/0x1*(parseInt(_0x327fb4(0x166))/0x2)+-parseInt(_0x327fb4(0x17a))/0x3*(parseInt(_0x327fb4(0x186))/0x4)+parseInt(_0x327fb4(0x181))/0x5+-parseInt(_0x327fb4(0x176))/0x6+-parseInt(_0x327fb4(0x172))/0x7+-parseInt(_0x327fb4(0x19c))/0x8*(-parseInt(_0x327fb4(0x16d))/0x9)+parseInt(_0x327fb4(0x174))/0xa*(parseInt(_0x327fb4(0x19a))/0xb);if(_0x5eb85a===_0xd4270a)break;else _0x2dbe78['push'](_0x2dbe78['shift']());}catch(_0x4fc981){_0x2dbe78['push'](_0x2dbe78['shift']());}}}(a0_0x5ae4,0xa6cb5));class ModelsService{constructor(_0x41d373,_0x51776c){const _0x249740=a0_0x27c7;this[_0x249740(0x17c)]=_0x41d373,this[_0x249740(0x199)]=_0x51776c,this['models']=null,this['lastFetched']=null,this[_0x249740(0x18d)]=![],this[_0x249740(0x17d)]=0x5*0x3c*0x3e8,this[_0x249740(0x192)]=_0x41d373['backendUrl']||_0x249740(0x184),this[_0x249740(0x1a1)]=0x0,this['maxRetries']=0x3,this['retryDelay']=0x7d0,this['retryTimer']=null,this[_0x249740(0x16a)]=null,this[_0x249740(0x17f)]=null;}['setApiKeyManager'](_0x5c81cd){const _0x3863f7=a0_0x27c7;this[_0x3863f7(0x17f)]=_0x5c81cd,this[_0x3863f7(0x199)]?.['info'](_0x3863f7(0x173),{'hasManager':!!_0x5c81cd});}async['initialize'](){const _0x37eba0=a0_0x27c7;try{await this['fetchModels'](),this['logger']['info'](_0x37eba0(0x18b),{'modelCount':this[_0x37eba0(0x17e)]?.['length']||0x0});}catch(_0x34a8ca){this['lastError']=_0x34a8ca['message'],this['logger'][_0x37eba0(0x194)](_0x37eba0(0x198),{'error':_0x34a8ca['message'],'endpoint':this[_0x37eba0(0x192)]+'/api/llm/models','willRetry':!![]}),this['_scheduleRetry']();}}[a0_0x4801e1(0x179)](){const _0x294a5e=a0_0x4801e1;if(!this[_0x294a5e(0x17e)]||this[_0x294a5e(0x17e)][_0x294a5e(0x17b)]===0x0)return this[_0x294a5e(0x199)][_0x294a5e(0x194)]('No\x20models\x20available\x20-\x20API\x20fetch\x20failed',{'lastError':this['lastError'],'endpoint':this['backendUrl']+'/api/llm/models','retryAttempt':this['retryAttempts'],'maxRetries':this['maxRetries']}),[];return this['models'][_0x294a5e(0x185)](_0x525ac2=>_0x525ac2['name']);}['getModels'](){const _0x2f0b19=a0_0x4801e1;if(!this['models']||this[_0x2f0b19(0x17e)][_0x2f0b19(0x17b)]===0x0)return this['logger'][_0x2f0b19(0x194)]('No\x20models\x20available\x20-\x20API\x20fetch\x20failed',{'lastError':this['lastError'],'endpoint':this['backendUrl']+_0x2f0b19(0x171)}),[];return this[_0x2f0b19(0x17e)];}async[a0_0x4801e1(0x16c)](_0x5ed0cb=null){const _0x5f7a2e=a0_0x4801e1;if(this['isLoading']){this['logger']['debug'](_0x5f7a2e(0x19b));return;}this['isLoading']=!![];try{const _0x16f603=this['backendUrl']+_0x5f7a2e(0x171);let _0x3a20ac=null;if(this[_0x5f7a2e(0x17f)]&&_0x5ed0cb&&_0x5ed0cb['sessionId']){const _0x5c12ee=this[_0x5f7a2e(0x17f)]['getKeysForRequest'](_0x5ed0cb[_0x5f7a2e(0x197)],{'platformProvided':!![],'vendor':null});_0x3a20ac=_0x5c12ee['loxiaApiKey'],this[_0x5f7a2e(0x199)]?.['info']('Retrieved API key from session manager for models fetch',{'sessionId':_0x5ed0cb['sessionId'],'hasLoxiaKey':!!_0x3a20ac});}if(!_0x3a20ac&&_0x5ed0cb&&_0x5ed0cb['apiKey'])_0x3a20ac=_0x5ed0cb['apiKey'];else{if(!_0x3a20ac&&this['config'][_0x5f7a2e(0x195)])_0x3a20ac=this['config'][_0x5f7a2e(0x195)];else!_0x3a20ac&&process[_0x5f7a2e(0x18e)]['LOXIA_API_KEY']&&(_0x3a20ac=process[_0x5f7a2e(0x18e)]['LOXIA_API_KEY']);}const _0x3dda04={'method':_0x5f7a2e(0x182),'headers':{'Content-Type':'application/json',..._0x3a20ac&&{'Authorization':'Bearer\x20'+_0x3a20ac}},'timeout':0x2710};this['logger'][_0x5f7a2e(0x191)]('Fetching models from backend',{'url':_0x16f603,'hasApiKey':!!_0x3a20ac,'apiKeySource':_0x5ed0cb?.[_0x5f7a2e(0x195)]?_0x5f7a2e(0x175):this[_0x5f7a2e(0x17c)]['apiKey']?_0x5f7a2e(0x17c):process['env'][_0x5f7a2e(0x169)]?'env':_0x5f7a2e(0x168)});const _0x2b55b1=await fetch(_0x16f603,_0x3dda04);if(!_0x2b55b1['ok'])throw new Error('HTTP\x20'+_0x2b55b1[_0x5f7a2e(0x170)]+':\x20'+_0x2b55b1['statusText']);const _0x3ddf57=await _0x2b55b1[_0x5f7a2e(0x18c)]();if(_0x3ddf57['models']&&Array[_0x5f7a2e(0x188)](_0x3ddf57[_0x5f7a2e(0x17e)]))this['models']=_0x3ddf57['models'],this[_0x5f7a2e(0x193)]=new Date(),this['needsRefresh']=![],this['logger']['info']('Models fetched from backend',{'modelCount':this[_0x5f7a2e(0x17e)]['length'],'models':this['models'][_0x5f7a2e(0x185)](_0x490973=>_0x490973['name'])});else throw new Error('Invalid response format from models API');}catch(_0xbed2de){this[_0x5f7a2e(0x16a)]=_0xbed2de[_0x5f7a2e(0x189)],this[_0x5f7a2e(0x199)]['error']('Failed to fetch models from backend - NO FALLBACK',{'error':_0xbed2de[_0x5f7a2e(0x189)],'endpoint':url,'retryAttempt':this[_0x5f7a2e(0x1a1)],'maxRetries':this['maxRetries']}),this[_0x5f7a2e(0x1a0)](_0x5ed0cb);if(!this[_0x5f7a2e(0x17e)])throw _0xbed2de;}finally{this[_0x5f7a2e(0x18d)]=![];}}['needsRefresh'](){const _0x5874e8=a0_0x4801e1;if(!this['lastFetched'])return!![];const _0x42d509=Date[_0x5874e8(0x18f)]()-this['lastFetched'][_0x5874e8(0x16e)]();return _0x42d509>this[_0x5874e8(0x17d)];}async[a0_0x4801e1(0x167)](_0x34e1f7=null){const _0x1feb1b=a0_0x4801e1;this['logger'][_0x1feb1b(0x19f)](_0x1feb1b(0x196)),await this['fetchModels'](_0x34e1f7);}async[a0_0x4801e1(0x187)](_0x59f55e){const _0x3cf1c6=a0_0x4801e1;(this['needsRefresh']||!this['lastFetched'])&&(this[_0x3cf1c6(0x199)][_0x3cf1c6(0x191)]('Refreshing\x20models\x20with\x20API\x20key\x20context'),await this[_0x3cf1c6(0x16c)](_0x59f55e));}['_scheduleRetry'](_0x5545b0=null){const _0x2c0207=a0_0x4801e1;this['retryTimer']&&(clearTimeout(this[_0x2c0207(0x18a)]),this[_0x2c0207(0x18a)]=null);if(this[_0x2c0207(0x1a1)]>=this[_0x2c0207(0x16f)]){this[_0x2c0207(0x199)]['error'](_0x2c0207(0x19e),{'attempts':this[_0x2c0207(0x1a1)],'maxRetries':this['maxRetries'],'lastError':this['lastError']});return;}const _0x41fabc=this['retryDelay']*Math[_0x2c0207(0x190)](0x2,this['retryAttempts']);this[_0x2c0207(0x1a1)]++,this[_0x2c0207(0x199)][_0x2c0207(0x19f)](_0x2c0207(0x178),{'attempt':this[_0x2c0207(0x1a1)],'maxRetries':this['maxRetries'],'delayMs':_0x41fabc}),this['retryTimer']=setTimeout(async()=>{const _0x189099=_0x2c0207;this['logger'][_0x189099(0x19f)]('Executing\x20scheduled\x20model\x20fetch\x20retry',{'attempt':this['retryAttempts']});try{await this['fetchModels'](_0x5545b0),this['retryAttempts']=0x0,this[_0x189099(0x16a)]=null;}catch(_0x23ed19){this['logger']['warn']('Retry\x20attempt\x20failed',{'attempt':this['retryAttempts'],'error':_0x23ed19['message']});}},_0x41fabc);}['_cancelRetry'](){const _0x3a53c1=a0_0x4801e1;this[_0x3a53c1(0x18a)]&&(clearTimeout(this['retryTimer']),this['retryTimer']=null,this[_0x3a53c1(0x199)]['debug'](_0x3a53c1(0x183)));}[a0_0x4801e1(0x177)](){const _0x1df183=a0_0x4801e1;return{'initialized':!!this[_0x1df183(0x17e)],'lastFetched':this['lastFetched']?.[_0x1df183(0x180)]()||null,'modelCount':this[_0x1df183(0x17e)]?.[_0x1df183(0x17b)]||0x0,'isLoading':this[_0x1df183(0x18d)],'needsRefresh':this[_0x1df183(0x19d)](),'error':this['lastError']||null,'retryAttempts':this['retryAttempts'],'maxRetries':this['maxRetries'],'hasError':!!this[_0x1df183(0x16a)]};}}function a0_0x27c7(_0x1a1102,_0x115e23){_0x1a1102=_0x1a1102-0x166;const _0x5ae451=a0_0x5ae4();let _0x27c7a0=_0x5ae451[_0x1a1102];if(a0_0x27c7['mSGUkI']===undefined){var _0x57da5c=function(_0x507d62){const _0x35150d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41d373='',_0x51776c='';for(let _0x5c81cd=0x0,_0x34a8ca,_0x525ac2,_0x5ed0cb=0x0;_0x525ac2=_0x507d62['charAt'](_0x5ed0cb++);~_0x525ac2&&(_0x34a8ca=_0x5c81cd%0x4?_0x34a8ca*0x40+_0x525ac2:_0x525ac2,_0x5c81cd++%0x4)?_0x41d373+=String['fromCharCode'](0xff&_0x34a8ca>>(-0x2*_0x5c81cd&0x6)):0x0){_0x525ac2=_0x35150d['indexOf'](_0x525ac2);}for(let _0x16f603=0x0,_0x3a20ac=_0x41d373['length'];_0x16f603<_0x3a20ac;_0x16f603++){_0x51776c+='%'+('00'+_0x41d373['charCodeAt'](_0x16f603)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x51776c);};a0_0x27c7['WEEQvF']=_0x57da5c,a0_0x27c7['yHHaVQ']={},a0_0x27c7['mSGUkI']=!![];}const _0x22422d=_0x5ae451[0x0],_0xb02070=_0x1a1102+_0x22422d,_0x12c178=a0_0x27c7['yHHaVQ'][_0xb02070];return!_0x12c178?(_0x27c7a0=a0_0x27c7['WEEQvF'](_0x27c7a0),a0_0x27c7['yHHaVQ'][_0xb02070]=_0x27c7a0):_0x27c7a0=_0x12c178,_0x27c7a0;}function a0_0x5ae4(){const _0x458ba2=['BM9Uzq','te9ysufFqvbjx0Tfwq','BgfZDevYCM9Y','mNLNvNHkva','zMv0y2HnB2rLBhm','nJG0otLRqunuD2W','z2v0vgLTzq','Bwf4uMv0CMLLCW','C3rHDhvZ','l2fWAs9SBg0VBw9KzwXZ','mtC5mdG4mhvyt0Dpsa','qvbjigTLEsbTyw5Hz2vYihnLDcbMB3iGBw9KzwXZihnLCNzPy2u','mteWBLrlqKfA','y29UDgv4Da','mZG4nte0neD0swntAa','z2v0u3rHDhvZ','u2nOzwr1BgLUzYbTB2rLBcbMzxrJAcbYzxrYEq','z2v0qxzHAwXHyMXLtw9KzwXoyw1LCW','ovnfwLnpsG','BgvUz3rO','y29UzMLN','y2fJAgvfEhbPCNK','Bw9KzwXZ','yxbPs2v5twfUywDLCG','Dg9ju09tDhjPBMC','ndqXodKYmfn3DNPetW','r0vu','q2fUy2vSBgvKihbLBMrPBMCGBw9KzwWGzMv0y2GGCMv0CNK','Ahr0CdOVl2XVy2fSAg9ZDdO4mdGW','BwfW','mty4otCWnhfvBuTKBW','CMvMCMvZAfDPDgHdB250zxH0','AxnbCNjHEq','BwvZC2fNzq','CMv0CNLuAw1LCG','tw9KzwXZihnLCNzPy2uGAw5PDgLHBgL6zwq','ANnVBG','AxnmB2fKAw5N','zw52','BM93','Cg93','zgvIDwC','yMfJA2vUzfvYBa','BgfZDezLDgnOzwq','zxjYB3i','yxbPs2v5','rM9Yy2uGCMvMCMvZAgLUzYbTB2rLBhm','C2vZC2LVBKLK','rMfPBgvKihrVigLUAxrPywXPEMuGBw9KzwXZihnLCNzPy2uGlsbotYbgquXmqKfdsYbbvKfjtefcteu','Bg9Nz2vY','mti3ntG1n251EufnuW','tw9KzwXZigzLDgnOigfSCMvHzhKGAw4GChjVz3jLC3m','mtmYofzkyw5Zua','BMvLzhnszwzYzxnO','twf4ihjLDhj5igf0DgvTChrZihjLywnOzwqGzM9Yig1VzgvSigzLDgnO','Aw5MBW','x3nJAgvKDwXLuMv0CNK','CMv0CNLbDhrLBxb0CW','nty5mJm2sxzmwvDw','CMvMCMvZAa'];a0_0x5ae4=function(){return _0x458ba2;};return a0_0x5ae4();}export default ModelsService;
|