@whalent/agent 0.3.95 → 0.3.96

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/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';const a0_0x6a9c70=a0_0x1f90;(function(_0x185401,_0x69af23){const _0x4257da=a0_0x1f90,_0xb3c77e=_0x185401();while(!![]){try{const _0x59f9b8=-parseInt(_0x4257da(0x1e3))/0x1+parseInt(_0x4257da(0x1a1))/0x2*(parseInt(_0x4257da(0x1d9))/0x3)+parseInt(_0x4257da(0x1a3))/0x4+-parseInt(_0x4257da(0x21c))/0x5*(-parseInt(_0x4257da(0x203))/0x6)+parseInt(_0x4257da(0x190))/0x7*(parseInt(_0x4257da(0x211))/0x8)+parseInt(_0x4257da(0x1ec))/0x9+-parseInt(_0x4257da(0x1bb))/0xa;if(_0x59f9b8===_0x69af23)break;else _0xb3c77e['push'](_0xb3c77e['shift']());}catch(_0x5c92b1){_0xb3c77e['push'](_0xb3c77e['shift']());}}}(a0_0x1bcd,0x1f3dd));var __create=Object[a0_0x6a9c70(0x222)],__defProp=Object[a0_0x6a9c70(0x1fd)],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object[a0_0x6a9c70(0x1e1)],__hasOwnProp=Object[a0_0x6a9c70(0x1ca)]['hasOwnProperty'],__copyProps=(_0x4b08f4,_0x3ce9c9,_0x5d5cef,_0x40a656)=>{if(_0x3ce9c9&&typeof _0x3ce9c9==='object'||typeof _0x3ce9c9==='function'){for(let _0x4e166c of __getOwnPropNames(_0x3ce9c9))if(!__hasOwnProp['call'](_0x4b08f4,_0x4e166c)&&_0x4e166c!==_0x5d5cef)__defProp(_0x4b08f4,_0x4e166c,{'get':()=>_0x3ce9c9[_0x4e166c],'enumerable':!(_0x40a656=__getOwnPropDesc(_0x3ce9c9,_0x4e166c))||_0x40a656['enumerable']});}return _0x4b08f4;},__toESM=(_0x540739,_0x157552,_0xba082b)=>(_0xba082b=_0x540739!=null?__create(__getProtoOf(_0x540739)):{},__copyProps(_0x157552||!_0x540739||!_0x540739['__esModule']?__defProp(_0xba082b,'default',{'value':_0x540739,'enumerable':!![]}):_0xba082b,_0x540739)),import_child_process=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x6a9c70(0x181)),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x6a9c70(0x180)),0x1),WRAPPER_PKG_NAME=a0_0x6a9c70(0x1d3),CORE_PKG_NAME='@whalent/agent-core',NPM_REGISTRY='https://registry.npm'+'js.org',SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,MIN_RESTART_DELAY_MS=0x3e8,MAX_RESTART_DELAY_MS=0xea60,MAX_CRASHES_IN_WINDOW=0x3,CRASH_WINDOW_MS=0x3*0x3c*0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,FATAL_PATTERN=/\[(?:agent|daemon|wrapper)\][^\n]*\bFatal error:[^\n]+|\[daemon\] Failed to start:[^\n]+|Error:[^\n]+/,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set(),CHECKED_NODE_PTY_RUNTIMES=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){const _0x748abc=a0_0x6a9c70;return path[_0x748abc(0x1e2)](os[_0x748abc(0x202)](),_0x748abc(0x1f2));}function upgradeStatePath(){const _0x4e4abc=a0_0x6a9c70;return path[_0x4e4abc(0x1e2)](configDir(),_0x4e4abc(0x1b7));}function lastCrashFilePath(){const _0x177ac6=a0_0x6a9c70;return path['join'](configDir(),_0x177ac6(0x1fb));}function writeLastCrash(_0x178553){const _0x14d9af=a0_0x6a9c70;try{fs[_0x14d9af(0x221)](configDir(),{'recursive':!![]});const _0x2fdd77={..._0x178553,'reported':![]};fs[_0x14d9af(0x218)](lastCrashFilePath(),JSON[_0x14d9af(0x19b)](_0x2fdd77,null,0x2),_0x14d9af(0x1b2));}catch{}}function readWrapperVersion(){const _0xc0b5f5=a0_0x6a9c70;try{const _0x48be40=JSON[_0xc0b5f5(0x198)](fs[_0xc0b5f5(0x183)](path['join'](wrapperBaseDir(),'..','package.json'),'utf-8'));return String(_0x48be40[_0xc0b5f5(0x210)]||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){try{return JSON['parse'](fs['readFileSync'](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x4e2bc6){const _0x315c2b=a0_0x6a9c70;try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs[_0x315c2b(0x218)](upgradeStatePath(),JSON[_0x315c2b(0x19b)]({..._0x4e2bc6,'updated_at':Date[_0x315c2b(0x1b1)]()},null,0x2),'utf-8');}catch{}}function run(_0x418164,_0x109727,_0x379bad=process.env){const _0x58b038=a0_0x6a9c70;return(0x0,import_child_process[_0x58b038(0x199)])(_0x418164,_0x109727,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x379bad,'shell':![]});}function runNpmView(_0x4719f5){const _0x570aaa=a0_0x6a9c70,_0x4d2db2=resolveExecutable('npm');if(!_0x4d2db2)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error('npm\x20not\x20found')};return(0x0,import_child_process[_0x570aaa(0x199)])(_0x4d2db2,_0x4719f5,{'encoding':_0x570aaa(0x207),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x4f7f5b=a0_0x6a9c70,_0x4e1c9a=resolveExecutable('npm');if(!_0x4e1c9a)return'';const _0xb9efcc=run(_0x4e1c9a,[_0x4f7f5b(0x1a0),'-g']);if(_0xb9efcc['status']!==0x0)return'';return String(_0xb9efcc['stdout']||'')[_0x4f7f5b(0x208)]();}function compareSemver(_0x429904,_0x21c55f){const _0x5c3d55=a0_0x6a9c70,_0x58f828=String(_0x429904||'')[_0x5c3d55(0x1f1)](/^v/,'')[_0x5c3d55(0x1b3)](/[.-]/)['map'](_0x5da452=>Number['parseInt'](_0x5da452,0xa)||0x0),_0x48e73d=String(_0x21c55f||'')['replace'](/^v/,'')[_0x5c3d55(0x1b3)](/[.-]/)['map'](_0x193a5b=>Number[_0x5c3d55(0x1f8)](_0x193a5b,0xa)||0x0);for(let _0x5cec42=0x0;_0x5cec42<Math[_0x5c3d55(0x17e)](_0x58f828['length'],_0x48e73d[_0x5c3d55(0x1bd)],0x3);_0x5cec42++){const _0x4cfe2e=_0x58f828[_0x5cec42]||0x0,_0x23a89c=_0x48e73d[_0x5cec42]||0x0;if(_0x4cfe2e>_0x23a89c)return 0x1;if(_0x4cfe2e<_0x23a89c)return-0x1;}return 0x0;}function resolveExecutable(_0x58cfc2){const _0x25eb8d=a0_0x6a9c70,_0x304919=process[_0x25eb8d(0x191)]===_0x25eb8d(0x21a)?_0x25eb8d(0x184):_0x25eb8d(0x1ff);try{const _0x53f676=(0x0,import_child_process['spawnSync'])(_0x304919,[_0x58cfc2],{'encoding':'utf8','timeout':0xbb8,'shell':![]});if(_0x53f676[_0x25eb8d(0x1db)]!==0x0)return'';return String(_0x53f676['stdout']||'')[_0x25eb8d(0x1b3)](/\r?\n/)[_0x25eb8d(0x1f3)](_0x5a3b3f=>_0x5a3b3f['trim']())['filter'](Boolean)[0x0]||'';}catch{return'';}}function skipWrapperUpdateCheck(){const _0x253c14=a0_0x6a9c70,_0x4b56bb=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x253c14(0x208)]()[_0x253c14(0x1f5)]();return _0x4b56bb==='1'||_0x4b56bb===_0x253c14(0x223)||_0x4b56bb==='yes'||_0x4b56bb==='on';}function latestWrapperVersion(){const _0x3f111b=a0_0x6a9c70,_0x24de46=runNpmView(['view',WRAPPER_PKG_NAME+'@latest','version','--registry='+NPM_REGISTRY]);if(_0x24de46['status']!==0x0)return'';return String(_0x24de46['stdout']||'')[_0x3f111b(0x208)]()[_0x3f111b(0x1b3)](/\r?\n/)['filter'](Boolean)['pop']()||'';}function installWrapperVersion(_0x711d40){const _0x1a825=a0_0x6a9c70,_0x3748ae=resolveExecutable('npm');if(!_0x3748ae)return{'ok':![],'output':_0x1a825(0x1ef)+'H'};const _0x2b8130=run(_0x3748ae,[_0x1a825(0x1d6),'-g',WRAPPER_PKG_NAME+'@'+_0x711d40,'--registry='+NPM_REGISTRY]),_0x5b0a62=((_0x2b8130['stdout']||'')+'\x0a'+(_0x2b8130[_0x1a825(0x20a)]||''))[_0x1a825(0x208)]();return{'ok':_0x2b8130[_0x1a825(0x1db)]===0x0,'output':_0x5b0a62};}function maybeUpdateWrapper(_0x339c8a){const _0x3535bc=a0_0x6a9c70;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0xbc177a=latestWrapperVersion();if(!_0xbc177a||compareSemver(_0xbc177a,WRAPPER_VERSION)<=0x0)return![];console[_0x3535bc(0x1cd)](_0x3535bc(0x18d)+_0x3535bc(0x18b)+WRAPPER_VERSION+_0x3535bc(0x1fa)+_0xbc177a),console[_0x3535bc(0x1cd)](_0x3535bc(0x192)+'\x20'+WRAPPER_PKG_NAME+'@'+_0xbc177a+('\x20from\x20npm\x20before\x20sta'+'rting\x20core...'));const _0x229f59=installWrapperVersion(_0xbc177a);if(!_0x229f59['ok']){console[_0x3535bc(0x1cd)](_0x3535bc(0x1e0)+_0x3535bc(0x189)+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x229f59[_0x3535bc(0x1d5)])console[_0x3535bc(0x1cd)](_0x229f59['output'][_0x3535bc(0x1b3)](/\r?\n/)[_0x3535bc(0x1ba)](-0xc)['join']('\x0a'));return console[_0x3535bc(0x1cd)]('[wrapper]\x20Manual\x20upd'+'ate:\x20npm\x20install\x20-g\x20'+WRAPPER_PKG_NAME+'@'+_0xbc177a+'\x20--registry='+NPM_REGISTRY),![];}console[_0x3535bc(0x1cd)](_0x3535bc(0x1e0)+_0x3535bc(0x1ea)+_0xbc177a+_0x3535bc(0x185));const _0x105335=process[_0x3535bc(0x1c5)][0x1],_0x1735f4=(0x0,import_child_process[_0x3535bc(0x199)])(process['execPath'],[_0x105335,..._0x339c8a],{'stdio':_0x3535bc(0x19d),'env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0xbc177a},'shell':![]});process['exit'](_0x1735f4[_0x3535bc(0x1db)]??0x0);}function findCoreScript(){const _0xc38188=a0_0x6a9c70,_0x2213b9=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x17093e=['1',_0xc38188(0x223),_0xc38188(0x1ee),'on'][_0xc38188(0x1de)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()[_0xc38188(0x1f5)]());if(_0x2213b9&&_0x17093e&&fs['existsSync'](_0x2213b9))return _0x2213b9;const _0x5963ee=[],_0x3df1fc=_0x115296=>{const _0x484d33=_0xc38188;if(fs[_0x484d33(0x1ce)](_0x115296)&&!_0x5963ee[_0x484d33(0x1de)](_0x115296))_0x5963ee[_0x484d33(0x187)](_0x115296);};if(_0x2213b9)_0x3df1fc(_0x2213b9);const _0x5a29e7=npmRootGlobal();if(_0x5a29e7){const _0xafce57=path[_0xc38188(0x1e2)](_0x5a29e7,'@whalent',_0xc38188(0x19e),_0xc38188(0x1e7),_0xc38188(0x1eb));_0x3df1fc(_0xafce57);}const _0x1c2818=path['join'](wrapperBaseDir(),_0xc38188(0x1c6));_0x3df1fc(_0x1c2818);const _0x5c37d9=path[_0xc38188(0x1e2)](wrapperBaseDir(),'..',_0xc38188(0x212),'core',_0xc38188(0x1e7),_0xc38188(0x1eb));_0x3df1fc(_0x5c37d9);if(_0x5963ee[_0xc38188(0x1bd)]>0x0)return _0x5963ee['map']((_0xa6829f,_0xf2a0a2)=>({'candidate':_0xa6829f,'index':_0xf2a0a2,'version':coreVersion(_0xa6829f)}))[_0xc38188(0x19f)]((_0x372271,_0xadaa6c)=>{const _0x14cba1=_0xc38188,_0x21b6d4=compareSemver(_0xadaa6c[_0x14cba1(0x210)],_0x372271[_0x14cba1(0x210)]);if(_0x21b6d4!==0x0)return _0x21b6d4;return _0xadaa6c['index']-_0x372271[_0x14cba1(0x1c3)];})[0x0][_0xc38188(0x1b8)];throw new Error(_0xc38188(0x1d0)+_0xc38188(0x1ae)+_0xc38188(0x1ac)+'or\x20rebuild\x20@whalent/'+_0xc38188(0x1b0));}function coreVersion(_0x1e3500=findCoreScript()){const _0xc1b5a5=a0_0x6a9c70;ensureNodePtyNativeModule(_0x1e3500);const _0x4b38b0=(0x0,import_child_process['spawnSync'])(process[_0xc1b5a5(0x1da)],[_0x1e3500,_0xc1b5a5(0x1e4)],{'encoding':_0xc1b5a5(0x207),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x24bc3f=(_0x4b38b0['stdout']||'')+'\x0a'+(_0x4b38b0['stderr']||'');return _0x24bc3f['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x47214b){const _0x29de87=a0_0x6a9c70;try{return fs['accessSync'](_0x47214b,fs[_0x29de87(0x1c9)]['X_OK']),!![];}catch{return![];}}function shellQuote(_0x10631b){const _0x3f181e=a0_0x6a9c70;return'\x27'+_0x10631b['replace'](/'/g,_0x3f181e(0x206))+'\x27';}function corePackageRoot(_0xe8820e){const _0xac33b8=a0_0x6a9c70;return path['resolve'](path[_0xac33b8(0x1b4)](_0xe8820e),'..');}function nodePtyPackageRoot(_0xdaa6fa){const _0x258137=a0_0x6a9c70,_0x4224d4=(0x0,import_module[_0x258137(0x1d1)])(_0xdaa6fa),_0x4ce1ed=_0x4224d4['resolve']('node-pty');let _0x59b152=path[_0x258137(0x1b4)](_0x4ce1ed);for(let _0x11783c=0x0;_0x11783c<0x5;_0x11783c++){const _0x429db1=path['join'](_0x59b152,_0x258137(0x224));try{const _0x3f4e20=JSON[_0x258137(0x198)](fs['readFileSync'](_0x429db1,_0x258137(0x1b2)));if(_0x3f4e20['name']===_0x258137(0x196))return _0x59b152;}catch{}const _0x2f2d1c=path[_0x258137(0x1b4)](_0x59b152);if(_0x2f2d1c===_0x59b152)break;_0x59b152=_0x2f2d1c;}return path['resolve'](path[_0x258137(0x1b4)](_0x4ce1ed),'..');}function nodePtyNativeCandidates(_0x5ec470){const _0x16204d=a0_0x6a9c70;return[path[_0x16204d(0x1e2)](_0x5ec470,_0x16204d(0x1f6),'Release','pty.node'),path[_0x16204d(0x1e2)](_0x5ec470,_0x16204d(0x215),process[_0x16204d(0x191)]+'-'+process[_0x16204d(0x200)],_0x16204d(0x1d4))];}function hasNodePtyNativeModule(_0x159279){const _0x2278ec=a0_0x6a9c70;return nodePtyNativeCandidates(_0x159279)['some'](_0x304a02=>fs[_0x2278ec(0x1ce)](_0x304a02));}function printNodePtyRebuildHint(_0x2c3bcc){const _0x7e8649=a0_0x6a9c70,_0x5f0758=corePackageRoot(_0x2c3bcc);console['warn'](_0x7e8649(0x20d)+':'),console['warn'](_0x7e8649(0x193)+shellQuote(_0x5f0758)),console[_0x7e8649(0x1cd)](_0x7e8649(0x216)+_0x7e8649(0x1fe));}function ensureNodePtyNativeModule(_0x152cbc){const _0x5040f1=a0_0x6a9c70;if(process['platform']==='win32')return;let _0x259bd9='';try{_0x259bd9=nodePtyPackageRoot(_0x152cbc);}catch(_0x27f09e){console[_0x5040f1(0x1cd)](_0x5040f1(0x21d)+_0x5040f1(0x1dc)+_0x5040f1(0x1c0)+_0x27f09e['message']),printNodePtyRebuildHint(_0x152cbc);return;}const _0x1498ab=((()=>{try{return fs['realpathSync'](_0x259bd9);}catch{return _0x259bd9;}})());if(CHECKED_NODE_PTY_RUNTIMES[_0x5040f1(0x19a)](_0x1498ab))return;CHECKED_NODE_PTY_RUNTIMES[_0x5040f1(0x217)](_0x1498ab);if(hasNodePtyNativeModule(_0x259bd9))return;const _0x4c8a90=resolveExecutable('npm');console['warn']('[wrapper]\x20node-pty\x20n'+_0x5040f1(0x1df)+_0x5040f1(0x1c7)+_0x259bd9),console['warn']('[wrapper]\x20rebuilding'+'\x20node-pty\x20before\x20sta'+'rting\x20core...');if(!_0x4c8a90){console[_0x5040f1(0x1cd)]('[wrapper]\x20npm\x20not\x20fo'+_0x5040f1(0x205)+'node-pty\x20automatical'+'ly'),printNodePtyRebuildHint(_0x152cbc);return;}const _0x455b52=corePackageRoot(_0x152cbc),_0x33b7d0=(0x0,import_child_process['spawnSync'])(_0x4c8a90,[_0x5040f1(0x1c4),'node-pty','--verbose'],{'cwd':_0x455b52,'stdio':'inherit','timeout':NPM_INSTALL_TIMEOUT_MS,'env':process.env,'shell':![]});if(_0x33b7d0['status']===0x0&&hasNodePtyNativeModule(_0x259bd9)){console['warn']('[wrapper]\x20node-pty\x20r'+'ebuild\x20completed');return;}console[_0x5040f1(0x1cd)]('[wrapper]\x20node-pty\x20r'+'ebuild\x20failed'+(_0x33b7d0[_0x5040f1(0x1db)]!==null?_0x5040f1(0x186)+_0x33b7d0['status']+')':'')+(';\x20core\x20may\x20fail\x20to\x20s'+'tart')),printNodePtyRebuildHint(_0x152cbc);}function coreNodePtySpawnHelperPath(_0x52a8e8){const _0x171d2c=a0_0x6a9c70;if(process['platform']!==_0x171d2c(0x1a2))return'';try{const _0x133560=(0x0,import_module[_0x171d2c(0x1d1)])(_0x52a8e8),_0x5067c6=_0x133560[_0x171d2c(0x188)]('node-pty'),_0x39f976=path[_0x171d2c(0x188)](path[_0x171d2c(0x1b4)](_0x5067c6),'..');return path[_0x171d2c(0x1e2)](_0x39f976,'prebuilds',_0x171d2c(0x214)+process['arch'],_0x171d2c(0x1e9));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x26d2fd){const _0x55357b=a0_0x6a9c70,_0x348e58=coreNodePtySpawnHelperPath(_0x26d2fd);if(!_0x348e58||CHECKED_PTY_HELPERS['has'](_0x348e58))return;CHECKED_PTY_HELPERS['add'](_0x348e58);if(!fs[_0x55357b(0x1ce)](_0x348e58)){console['warn'](_0x55357b(0x1aa)+_0x55357b(0x18a)+'t\x20found:\x20'+_0x348e58);return;}if(isExecutable(_0x348e58))return;try{const _0xc82369=fs['statSync'](_0x348e58)['mode'];fs[_0x55357b(0x1d2)](_0x348e58,_0xc82369|0x1ed);}catch{}if(isExecutable(_0x348e58)){console[_0x55357b(0x1cd)]('[wrapper]\x20fixed\x20macO'+_0x55357b(0x1e6)+'per\x20executable\x20bit:\x20'+_0x348e58);return;}console['warn']('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+_0x55357b(0x1ab)+_0x348e58),console[_0x55357b(0x1cd)](_0x55357b(0x213)+'nce\x20to\x20fix\x20terminal/'+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0x348e58)),console['warn']('\x20\x20ls\x20-l\x20\x22$HELPER\x22'),console[_0x55357b(0x1cd)]('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0x58cdff=a0_0x6a9c70;let _0x3f70d9='';try{_0x3f70d9=coreVersion();}catch{}console[_0x58cdff(0x1cb)]('whalent-agent\x20'+WRAPPER_VERSION),console[_0x58cdff(0x1cb)](_0x58cdff(0x1ad)+WRAPPER_VERSION),console[_0x58cdff(0x1cb)](_0x58cdff(0x1a6)+(_0x3f70d9||_0x58cdff(0x1af)));}function directCore(_0x405e5c){const _0x4778f8=a0_0x6a9c70,_0x53fd84=findCoreScript();ensureNodePtyNativeModule(_0x53fd84),checkMacNodePtySpawnHelper(_0x53fd84);const _0xf7aa46=(0x0,import_child_process['spawnSync'])(process['execPath'],[_0x53fd84,..._0x405e5c],{'stdio':_0x4778f8(0x19d),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x53fd84},'shell':![]});process[_0x4778f8(0x1b5)](_0xf7aa46[_0x4778f8(0x1db)]??0x0);}function shouldSupervise(_0x36087c){const _0x37fa2c=a0_0x6a9c70;if(_0x36087c['includes']('--agent-id'))return![];if(_0x36087c[_0x37fa2c(0x1de)]('--resume')||_0x36087c[0x0]===_0x37fa2c(0x18e))return![];const _0x5f12cd=_0x36087c[0x0]||'';if(_0x5f12cd==='ls'||_0x5f12cd===_0x37fa2c(0x1db)||_0x5f12cd==='ps')return![];if(_0x5f12cd===_0x37fa2c(0x1c2)||_0x5f12cd===_0x37fa2c(0x1cf))return![];if(_0x36087c[_0x37fa2c(0x1de)]('--help')||_0x36087c['includes']('-h'))return![];return!![];}function a0_0x1f90(_0x1cdee9,_0x4b99ba){_0x1cdee9=_0x1cdee9-0x17e;const _0x1bcdee=a0_0x1bcd();let _0x1f90df=_0x1bcdee[_0x1cdee9];if(a0_0x1f90['JvigOZ']===undefined){var _0x49fedb=function(_0x21f654){const _0x5cdb7a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b08f4='',_0x3ce9c9='';for(let _0x5d5cef=0x0,_0x40a656,_0x4e166c,_0x540739=0x0;_0x4e166c=_0x21f654['charAt'](_0x540739++);~_0x4e166c&&(_0x40a656=_0x5d5cef%0x4?_0x40a656*0x40+_0x4e166c:_0x4e166c,_0x5d5cef++%0x4)?_0x4b08f4+=String['fromCharCode'](0xff&_0x40a656>>(-0x2*_0x5d5cef&0x6)):0x0){_0x4e166c=_0x5cdb7a['indexOf'](_0x4e166c);}for(let _0x157552=0x0,_0xba082b=_0x4b08f4['length'];_0x157552<_0xba082b;_0x157552++){_0x3ce9c9+='%'+('00'+_0x4b08f4['charCodeAt'](_0x157552)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ce9c9);};a0_0x1f90['OVUKBY']=_0x49fedb,a0_0x1f90['VwlQDY']={},a0_0x1f90['JvigOZ']=!![];}const _0x52b953=_0x1bcdee[0x0],_0x1a3555=_0x1cdee9+_0x52b953,_0xcd1e61=a0_0x1f90['VwlQDY'][_0x1a3555];return!_0xcd1e61?(_0x1f90df=a0_0x1f90['OVUKBY'](_0x1f90df),a0_0x1f90['VwlQDY'][_0x1a3555]=_0x1f90df):_0x1f90df=_0xcd1e61,_0x1f90df;}function installCoreVersion(_0x2687d7){const _0xbb2285=a0_0x6a9c70,_0x36fd6a=resolveExecutable('npm');if(!_0x36fd6a)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x196039=CORE_PKG_NAME+'@'+_0x2687d7,_0x31e65a=run(_0x36fd6a,['install','-g',_0x196039,_0xbb2285(0x1c8)+NPM_REGISTRY]),_0x254d95=((_0x31e65a['stdout']||'')+'\x0a'+(_0x31e65a['stderr']||''))[_0xbb2285(0x208)]();return{'ok':_0x31e65a['status']===0x0,'output':_0x254d95};}async function superviseCore(_0x4770f0){const _0x36dd63=a0_0x6a9c70;let _0x206bcb=![],_0x39049e=null;const _0x19f846=[];let _0x49e5fa=MIN_RESTART_DELAY_MS;const _0x5e045f=()=>{const _0x443114=a0_0x1f90;_0x206bcb=!![];if(_0x39049e&&!_0x39049e[_0x443114(0x21e)])try{_0x39049e[_0x443114(0x1e8)](_0x443114(0x1be));}catch{}else process[_0x443114(0x1b5)](0x0);};process['on'](_0x36dd63(0x1f9),_0x5e045f),process['on'](_0x36dd63(0x1be),_0x5e045f);while(!![]){const _0x245f94=findCoreScript();ensureNodePtyNativeModule(_0x245f94),checkMacNodePtySpawnHelper(_0x245f94);const _0x2ab3b1={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x245f94},_0x1d9f91=readUpgradeState(),_0x3a4f5c=!!_0x1d9f91?.['pending'];let _0x34b8ac=![],_0x5ab605=null,_0x4f535b='';const _0x2990d7=[],_0x4a2dd0=0xc;console[_0x36dd63(0x1cb)]('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x245f94),_0x39049e=(0x0,import_child_process['spawn'])(process[_0x36dd63(0x1da)],[_0x245f94,..._0x4770f0],{'env':_0x2ab3b1,'stdio':[_0x36dd63(0x19d),_0x36dd63(0x1a7),'pipe']});const _0x248e11=()=>{const _0x13a3b9=_0x36dd63;if(_0x34b8ac)return;_0x34b8ac=!![];if(_0x5ab605)clearTimeout(_0x5ab605);_0x19f846['length']=0x0,_0x49e5fa=MIN_RESTART_DELAY_MS;const _0x418c27=readUpgradeState();_0x418c27?.[_0x13a3b9(0x194)]&&(writeUpgradeState({..._0x418c27,'pending':![],'rollback':![],'health_status':_0x13a3b9(0x1b6)}),console[_0x13a3b9(0x1cb)](_0x13a3b9(0x1a4)+_0x13a3b9(0x1bf)+(_0x418c27['installed_version']||_0x418c27[_0x13a3b9(0x1e5)]||'')));},_0xf6d322=(_0x88961f,_0x5b068b=![])=>{const _0x1708dd=_0x36dd63,_0x58c61f=_0x88961f['toString']();(_0x5b068b?process['stderr']:process[_0x1708dd(0x197)])['write'](_0x58c61f);if(_0x5b068b)for(const _0xad825 of _0x58c61f['split'](/\r?\n/)){if(!_0xad825['trim']())continue;_0x2990d7[_0x1708dd(0x187)](_0xad825);if(_0x2990d7[_0x1708dd(0x1bd)]>_0x4a2dd0)_0x2990d7[_0x1708dd(0x182)]();const _0x5c17b3=_0xad825['match'](FATAL_PATTERN);if(_0x5c17b3)_0x4f535b=_0x5c17b3[0x0];}(_0x58c61f[_0x1708dd(0x1de)]('[gateway]\x20Connected')||_0x58c61f['includes'](_0x1708dd(0x1fc)+_0x1708dd(0x18c))||_0x58c61f[_0x1708dd(0x1de)]('Gateway:\x20connected'))&&_0x248e11();};_0x39049e['stdout']?.['on'](_0x36dd63(0x195),_0x2f7af=>_0xf6d322(_0x2f7af,![])),_0x39049e['stderr']?.['on']('data',_0x494d93=>_0xf6d322(_0x494d93,!![]));_0x3a4f5c&&(_0x5ab605=setTimeout(()=>{const _0x4cee99=_0x36dd63;if(_0x34b8ac||!_0x39049e||_0x39049e[_0x4cee99(0x21e)])return;console['error'](_0x4cee99(0x219)+_0x4cee99(0x1c1)+_0x4cee99(0x1ed)+_0x4cee99(0x20b));try{_0x39049e['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x7206d0=await new Promise(_0xdbb4f4=>{const _0x4bd322=_0x36dd63;_0x39049e[_0x4bd322(0x1dd)]('exit',(_0x5668f0,_0x33b0b3)=>_0xdbb4f4({'code':_0x5668f0,'signal':_0x33b0b3}));});if(_0x5ab605)clearTimeout(_0x5ab605);_0x39049e=null;if(_0x206bcb)process[_0x36dd63(0x1b5)](_0x7206d0['code']??0x0);const _0x4b1fc3=readUpgradeState();if(_0x4b1fc3?.['pending']&&!_0x34b8ac){const _0xa9e002=String(_0x4b1fc3[_0x36dd63(0x21b)+'n']||'')['trim']();if(_0xa9e002){console['error'](_0x36dd63(0x209)+_0x36dd63(0x1d8)+_0xa9e002);const _0xbf7f47=installCoreVersion(_0xa9e002);writeUpgradeState({..._0x4b1fc3,'pending':![],'rollback':!![],'health_status':_0xbf7f47['ok']?_0x36dd63(0x1f0):_0x36dd63(0x18f),'error':_0xbf7f47['ok']?'':_0xbf7f47['output']});}else writeUpgradeState({..._0x4b1fc3,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':'previous\x20core\x20versio'+_0x36dd63(0x20c)});}const _0x568e8f=_0x7206d0[_0x36dd63(0x1a5)]===SUPERVISED_RESTART_CODE||_0x4b1fc3?.['pending'];if(!_0x568e8f&&_0x7206d0[_0x36dd63(0x1a5)]===0x0)process[_0x36dd63(0x1b5)](0x0);const _0x2642c6=Date[_0x36dd63(0x1b1)]();_0x19f846['push'](_0x2642c6);while(_0x19f846['length']>0x0&&_0x2642c6-_0x19f846[0x0]>CRASH_WINDOW_MS){_0x19f846[_0x36dd63(0x182)]();}const _0x33124b=_0x19f846[_0x36dd63(0x1bd)];writeLastCrash({'timestamp':_0x2642c6,'exit_code':_0x7206d0['code'],'exit_signal':_0x7206d0['signal']||null,'fatal_line':_0x4f535b,'raw_tail':_0x2990d7['join']('\x0a'),'consecutive_crashes':_0x33124b}),console['log'](_0x36dd63(0x1a8)+_0x36dd63(0x1a9)+(_0x7206d0[_0x36dd63(0x1a5)]??'')+(_0x7206d0['signal']?'\x20signal='+_0x7206d0['signal']:'')+'\x20('+_0x33124b+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x36dd63(0x1f7)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x4f535b)console['log']('[wrapper]\x20last\x20fatal'+':\x20'+_0x4f535b);_0x33124b>=MAX_CRASHES_IN_WINDOW&&(console[_0x36dd63(0x201)](_0x36dd63(0x1d7)+'d\x20'+_0x33124b+_0x36dd63(0x21f)+Math['round'](CRASH_WINDOW_MS/0x3e8)+(_0x36dd63(0x1f4)+_0x36dd63(0x220))+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+_0x36dd63(0x17f)+'erlying\x20issue\x20is\x20fix'+'ed.')),process['exit'](0x1)),console['log'](_0x36dd63(0x1cc)+_0x36dd63(0x20f)+_0x49e5fa+'ms'),await new Promise(_0x3b6af6=>setTimeout(_0x3b6af6,_0x49e5fa)),_0x49e5fa=Math[_0x36dd63(0x20e)](_0x49e5fa*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x235cba=a0_0x6a9c70,_0x26161a=process[_0x235cba(0x1c5)]['slice'](0x2);if(_0x26161a[0x0]===_0x235cba(0x1e4)||_0x26161a[0x0]==='-v'||_0x26161a[0x0]===_0x235cba(0x210)){printVersion();return;}if((_0x26161a[0x0]===_0x235cba(0x1db)||_0x26161a[0x0]==='ls'||_0x26161a[0x0]==='ps')&&!_0x26161a[_0x235cba(0x1de)]('--json')){console['log'](_0x235cba(0x1ad)+WRAPPER_VERSION);try{console[_0x235cba(0x1cb)]('core\x20'+(coreVersion()||_0x235cba(0x1af)));}catch{console[_0x235cba(0x1cb)](_0x235cba(0x19c));}}maybeUpdateWrapper(_0x26161a);if(!shouldSupervise(_0x26161a))directCore(_0x26161a);await superviseCore(_0x26161a);}main()[a0_0x6a9c70(0x204)](_0x39c2ff=>{const _0x2e2e1c=a0_0x6a9c70;console['error'](_0x2e2e1c(0x1b9)+'r:\x20'+(_0x39c2ff?.[_0x2e2e1c(0x1bc)]||String(_0x39c2ff))),process['exit'](0x1);});function a0_0x1bcd(){const _0x59d694=['BwvZC2fNzq','BgvUz3rO','u0Lhvevstq','zguGAgvHBhrOEtOG','ywjSzsbMB3iGy29YztOG','AwqGBM90igjLy29TzsbOzwfSDgG','BwnW','Aw5KzxG','CMvIDwLSza','yxjNDG','y29Yzs5JANm','Aw5NihvUzgvYia','ls1YzwDPC3rYEt0','y29UC3rHBNrZ','ChjVDg90ExbL','Bg9N','w3DYyxbWzxjDihjLC3rHCNrPBMC','D2fYBG','zxHPC3rZu3LUyW','zgfLBw9Ulw1JCa','D2HHBgvUDcbJB3jLihj1BNrPBwu','y3jLyxrLuMvXDwLYzq','y2HTB2rtEw5J','qhDOywXLBNqVywDLBNq','Chr5lM5Vzgu','B3v0Chv0','Aw5ZDgfSBa','w3DYyxbWzxjDignVCMuGzMfPBgu','y2SGy29Yzsb0BYa','mJeYnti5ChnfCeLN','zxHLy1bHDgG','C3rHDhvZ','zxbLBMrLBMn5ig5VDcbYzxnVBhy','B25Jzq','Aw5JBhvKzxm','yxrPDMuGBw9KDwXLigLZig1PC3m','w3DYyxbWzxjDihDYyxbWzxiGDxa','z2v0uhjVDg90ExbLt2y','AM9PBG','nZe0odnVvvz2qLq','ls12zxjZAw9U','DgfYz2v0x3zLCNnPB24','uYbUB2rLlxb0EsbZCgf3BI1OzwW','zgLZDa','A2LSBa','C3bHD24TAgvSCgvY','zgf0zwqGDg8G','Aw5KzxGUy2PZ','mtyYnda4nMHYAgjWrq','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','EwvZ','BNbTig5VDcbMB3vUzcbVBIbqqvq','CM9SBgvKx2jHy2S','CMvWBgfJzq','lNDOywXLBNqTywDLBNq','BwfW','CZSGz2L2Aw5NihvWlIbdCMfZAca','Dg9mB3DLCKnHC2u','yNvPBgq','CM91BMq','CgfYC2vjBNq','u0Lhsu5u','ic0+ia','BgfZDc1JCMfZAc5QC29U','r2f0zxDHEsbYzwDPC3rLCMvKig0','zgvMAw5LuhjVCgvYDhK','DhKGls12zxjIB3nL','D2HPy2G','yxjJAa','zxjYB3i','Ag9TzwrPCG','mtiZmtyZoej3EhnpyG','y2f0y2G','Dw5KoYbJyw5UB3qGCMvIDwLSzca','j1WNjW','DxrMoa','DhjPBq','w3DYyxbWzxjDihjVBgXPBMCGyMe','C3rKzxjY','ywnR','BIb1BMTUB3DU','w3DYyxbWzxjDie1HBNvHBcbMAxG','BwLU','igLUia','DMvYC2LVBG','mtm2mdbJuhH2qu0','CgfJA2fNzxm','w3DYyxbWzxjDifj1BIb0AgLZig8','zgfYD2LUlq','ChjLyNvPBgrZ','icbUCg0GCMvIDwLSzcbUB2rLlxa','ywrK','D3jPDgvgAwXLu3LUyW','w3DYyxbWzxjDig5LDYbJB3jLigq','D2LUmZi','ChjLDMLVDxnFy29Yzv92zxjZAw8','nwjuENr6AW','w3DYyxbWzxjDig5VzguTChr5igq','A2LSBgvK','ihrPBwvZihDPDgHPBIa','CMvJB3jKoIa','BwTKAxjtEw5J','y3jLyxrL','Dhj1zq','CgfJA2fNzs5QC29U','Bwf4','BNvHBgX5igfMDgvYihrOzsb1BMq','Cgf0Aa','Bw9KDwXL','C2HPzNq','CMvHzezPBgvtEw5J','D2HLCMuUzxHL','oYbYzxn0yxj0Aw5NihDYyxbWzxi','icHLEgL0pq','ChvZAa','CMvZB2X2zq','zgf0zsbMywLSzwq7ignVBNrPBNu','lxb0EsbZCgf3BI1OzwXWzxiGBM8','AwXHyMXLoIa','ywnOAw5L','w3DYyxbWzxjDihvWzgf0zsbHDMe','CMvZDw1L','CM9SBgjHy2TFzMfPBgvK','mZu3wvvAvuPN','CgXHDgzVCM0','w3DYyxbWzxjDigLUC3rHBgXPBMC','icbJzca','CgvUzgLUzW','zgf0yq','BM9Kzs1WDhK','C3rKB3v0','CgfYC2u','C3bHD25tEw5J','AgfZ','C3rYAw5NAwz5','y29YzsbUB3qGAw5ZDgfSBgvK','Aw5OzxjPDa','ywDLBNqTy29Yzq','C29YDa','CM9VDa','mNDtvM5mrG','zgfYD2LU','nZa2ntKYCvLtt1Ps','w3DYyxbWzxjDignVCMuGDxbNCMe','y29Kzq','y29Yzsa','CgLWzq','w3DYyxbWzxjDignVCMuGzxHPDgu','zcbJB2rLpq','w3DYyxbWzxjDig1Hy09tig5Vzgu','ig5VDcbLEgvJDxrHyMXLoIa','qhDOywXLBNqVywDLBNqTy29Yzsa','D3jHChbLCIa','ig5VDcbMB3vUzdSGAw5ZDgfSBca','BM90igLUC3rHBgXLza','ywDLBNq','BM93','DxrMltG','C3bSAxq','zgLYBMfTzq','zxHPDa','AgvHBhrOEq','y29Yzs11CgDYywrLlMPZB24','y2fUzgLKyxrL','w3DYyxbWzxjDiezHDgfSigvYCM8','C2XPy2u','ntiWndCWmeLnv2rOyG'];a0_0x1bcd=function(){return _0x59d694;};return a0_0x1bcd();}
2
+ 'use strict';const a0_0x502ea5=a0_0x5c12;(function(_0x9a74f7,_0x5bb460){const _0x4ca89b=a0_0x5c12,_0x457090=_0x9a74f7();while(!![]){try{const _0x145126=-parseInt(_0x4ca89b(0xc1))/0x1+-parseInt(_0x4ca89b(0xb7))/0x2*(parseInt(_0x4ca89b(0x13e))/0x3)+-parseInt(_0x4ca89b(0xac))/0x4+parseInt(_0x4ca89b(0x124))/0x5*(parseInt(_0x4ca89b(0xec))/0x6)+parseInt(_0x4ca89b(0x130))/0x7*(-parseInt(_0x4ca89b(0xb8))/0x8)+-parseInt(_0x4ca89b(0xbf))/0x9+parseInt(_0x4ca89b(0xd1))/0xa*(parseInt(_0x4ca89b(0x12b))/0xb);if(_0x145126===_0x5bb460)break;else _0x457090['push'](_0x457090['shift']());}catch(_0x66dc4e){_0x457090['push'](_0x457090['shift']());}}}(a0_0x5b5f,0xe10e2));var __create=Object[a0_0x502ea5(0xab)],__defProp=Object[a0_0x502ea5(0xf7)],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object[a0_0x502ea5(0x115)][a0_0x502ea5(0x107)],__copyProps=(_0x3f9ad6,_0x27a388,_0x5711bf,_0x3919cb)=>{const _0x3f3755=a0_0x502ea5;if(_0x27a388&&typeof _0x27a388==='object'||typeof _0x27a388==='function'){for(let _0x533836 of __getOwnPropNames(_0x27a388))if(!__hasOwnProp['call'](_0x3f9ad6,_0x533836)&&_0x533836!==_0x5711bf)__defProp(_0x3f9ad6,_0x533836,{'get':()=>_0x27a388[_0x533836],'enumerable':!(_0x3919cb=__getOwnPropDesc(_0x27a388,_0x533836))||_0x3919cb[_0x3f3755(0xc9)]});}return _0x3f9ad6;},__toESM=(_0x2807f3,_0x39ed2f,_0x278185)=>(_0x278185=_0x2807f3!=null?__create(__getProtoOf(_0x2807f3)):{},__copyProps(_0x39ed2f||!_0x2807f3||!_0x2807f3['__esModule']?__defProp(_0x278185,'default',{'value':_0x2807f3,'enumerable':!![]}):_0x278185,_0x2807f3)),import_child_process=require(a0_0x502ea5(0xff)),fs=__toESM(require('fs'),0x1),import_module=require('module'),os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),WRAPPER_PKG_NAME='@whalent/agent',CORE_PKG_NAME=a0_0x502ea5(0x10b),NPM_REGISTRY=a0_0x502ea5(0xea)+a0_0x502ea5(0xd0),SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,MIN_RESTART_DELAY_MS=0x3e8,MAX_RESTART_DELAY_MS=0xea60,MAX_CRASHES_IN_WINDOW=0x3,CRASH_WINDOW_MS=0x3*0x3c*0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,FATAL_PATTERN=/\[(?:agent|daemon|wrapper)\][^\n]*\bFatal error:[^\n]+|\[daemon\] Failed to start:[^\n]+|Error:[^\n]+/,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set(),CHECKED_NODE_PTY_RUNTIMES=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){return path['join'](os['homedir'](),'.whalent-agent');}function upgradeStatePath(){const _0x91ee9b=a0_0x502ea5;return path[_0x91ee9b(0x13d)](configDir(),'core-upgrade.json');}function lastCrashFilePath(){const _0x51eec5=a0_0x502ea5;return path[_0x51eec5(0x13d)](configDir(),_0x51eec5(0x9e));}function writeLastCrash(_0x1ab541){const _0x3818b7=a0_0x502ea5;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x2290dd={..._0x1ab541,'reported':![]};fs[_0x3818b7(0x137)](lastCrashFilePath(),JSON[_0x3818b7(0xad)](_0x2290dd,null,0x2),'utf-8');}catch{}}function a0_0x5b5f(){const _0x2103dc=['CgfJA2fNzs5QC29U','BNbTig5VDcbMB3vUzcbVBIbqqvq','w3DYyxbWzxjDihjVBgXPBMCGyMe','ChvZAa','qgXHDgvZDa','mtGWnJG5nw5pt3DkAG','D2HPy2G','BwvZC2fNzq','DxrMltG','C2LNBMfS','ls1YzwDPC3rYEt0','ig5VDcbLEgvJDxrHyMXLoIa','nJm4AuLPCfD2','zxHPC3rZu3LUyW','ls1Hz2vUDc1Pza','CMvZDw1L','BwnW','mJi4mLfcrMXzra','C3bHD25tEw5J','CMvJB3jKoIa','CMvHBhbHDgHtEw5J','w3DYyxbWzxjDignVCMuGzMfPBgu','DgfYz2v0x3zLCNnPB24','ig5VzguTChr5igjLzM9YzsbZDge','D3jPDgvgAwXLu3LUyW','y2f0y2G','DxrMoa','lxb0EsbZCgf3BI1OzwXWzxiGBM8','BNbTig5VDcbMB3vUza','BwTKAxjtEw5J','AM9PBG','ndKWndeWsuTfAwfL','CgXHDgzVCM0','igLUigXHC3qG','D2HLCMuUzxHL','ywrK','BgfZDc1JCMfZAc5QC29U','y3jLyxrLuMvXDwLYzq','zgLZDa','CgvUzgLUzW','u0Lhvevstq','ywDLBNqTy29Yzq','ig5VDcbMB3vUzdSGAw5ZDgfSBca','qhDOywXLBNq','C3bSAxq','zxHLy1bHDgG','D2LUmZi','D2fYBG','CMvHzezPBgvtEw5J','y3jLyxrL','nda5mJaWmhfzqNLMBG','C3rYAw5NAwz5','BIb1BMTUB3DU','B3iGCMvIDwLSzcbaD2HHBgvUDc8','zMLSDgvY','zxHPDa','Bw9Kzq','A2LSBa','BNbT','CgvYigv4zwn1DgfIBguGyML0oIa','yxrPDMuGBw9KDwXLigLZig1PC3m','mLv5zwH6rW','mJC0odH4quXIyNO','CgfYC2u','CgLWzq','j1WNjW','BM93','zxjYB3i','zwj1AwXKigzHAwXLza','mZGWndyXnwXss2nAsq','AwqGBM90igjLy29TzsbOzwfSDgG','oda2ntC4qNLnBunf','r2f0zxDHEtOGy29UBMvJDgvK','DhKGls12zxjIB3nL','y29Kzq','yxjJAa','Aw5KzxGUy2PZ','CM9SBgjHy2TFzMfPBgvK','ls12zxjIB3nL','zw51BwvYywjSzq','C29YDa','ChjLDMLVDxnFy29Yzv92zxjZAw8','Dg9mB3DLCKnHC2u','y2SGy29Yzsb0BYa','C2XPy2u','ywnOAw5L','ANmUB3jN','nZa2mJCWyxDhrNDf','EwvZ','BM9Kzs1WDhKGyxv0B21HDgLJywW','C3rKB3v0','CNrPBMCGy29Yzs4UlG','DhjPBq','w3DYyxbWzxjDig5VzguTChr5ig4','ls12zxjZAw9U','zcbJB2rLpq','BM90igLUC3rHBgXLza','DMvYC2LVBG','icbSCYaTBcaIjeHftfbfuIi','DgfYDa','w3DYyxbWzxjDihn0yxj0Aw5Nigm','CMvZB2X2zq','CgfYC2vjBNq','oYbJB3jLig1HEsbMywLSihrVihm','w3DYyxbWzxjDihvWzgf0zsbHDMe','AgvHBhrOEq','w3DYyxbWzxjDig1Hy09tig5Vzgu','Aw5KzxG','ywjSzsbMB3iGy29YztOG','AgfZ','CZSGz2L2Aw5NihvWlIbdCMfZAca','icbUCg0GCMvIDwLSzcbUB2rLlxa','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','C3rHDhvZ','nNDKvxnLBW','w3DYyxbWzxjDifj1BIb0AgLZig8','CMvWBgfJzq','icbJAg1VzcaREcaIjeHftfbfuIi','zgfLBw9Ulw1JCa','lIbszxn0yxj0ihDYyxbWzxiGBwe','CM9SBgjHy2TFDw5HDMfPBgfIBgu','yxrLoIbUCg0GAw5ZDgfSBcaTzYa','B3jLoIa','C29Tzq','C3rKzxjY','zgvMAw5LuhjVCgvYDhK','ChjLyNvPBgrZ','icbiruXqrvi9','ic0TCMvNAxn0CNK9','zxjSEwLUzYbPC3n1zsbPCYbMAxG','Dg9tDhjPBMC','w3DYyxbWzxjDie1HBNvHBcbMAxG','zgLYBMfTzq','y2HPBgrFChjVy2vZCW','Aw5NihDPDgGG','Bg9N','BM9Kzs1WDhK','BwfW','Bwf0y2G','zgfYD2LUlq','y29Yzs5JANm','AgfZt3DUuhjVCgvYDhK','zwj1AwXKignVBxbSzxrLza','w3DYyxbWzxjDig5VzguTChr5ihi','w3DYyxbWzxjDihDYyxbWzxiGDxa','qhDOywXLBNqVywDLBNqTy29Yzq','Aw5JBhvKzxm','ChjLDMLVDxmGy29Yzsb2zxjZAw8','CM91BMq','C3rHDfn5BMm','ihrPBwvZihDPDgHPBIa','BgvUz3rO','Aw5OzxjPDa','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','w3DYyxbWzxjDig5WBsbUB3qGzM8','ChjVDg90ExbL','y29Yzsa','zxbLBMrLBMn5ig5VDcbYzxnVBhy','y2fUzgLKyxrL','w3DYyxbWzxjDihjLyNvPBgrPBMC','Dw5KoYbJyw5UB3qGCMvIDwLSzca','A2LSBgvK','B25Jzq','D2HHBgvUDc1Hz2vUDca','B3v0Chv0'];a0_0x5b5f=function(){return _0x2103dc;};return a0_0x5b5f();}function readWrapperVersion(){const _0x266b2e=a0_0x502ea5;try{const _0x3f99a3=JSON[_0x266b2e(0xb9)](fs[_0x266b2e(0xaa)](path['join'](wrapperBaseDir(),'..',_0x266b2e(0x11f)),'utf-8'));return String(_0x3f99a3['version']||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x5e046e=a0_0x502ea5;try{return JSON['parse'](fs[_0x5e046e(0xaa)](upgradeStatePath(),_0x5e046e(0x127)));}catch{return null;}}function writeUpgradeState(_0x57eeb8){const _0x374c48=a0_0x502ea5;try{fs[_0x374c48(0x13c)](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x57eeb8,'updated_at':Date[_0x374c48(0xbc)]()},null,0x2),'utf-8');}catch{}}function run(_0x4dffd8,_0x3cb91e,_0x49f111=process.env){return(0x0,import_child_process['spawnSync'])(_0x4dffd8,_0x3cb91e,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x49f111,'shell':![]});}function runNpmView(_0xa89f1d){const _0xd8aa65=a0_0x502ea5,_0xa87e5d=resolveExecutable(_0xd8aa65(0xb4));if(!_0xa87e5d)return{'status':0x7f,'stdout':'','stderr':_0xd8aa65(0x13b),'error':new Error('npm\x20not\x20found')};return(0x0,import_child_process['spawnSync'])(_0xa87e5d,_0xa89f1d,{'encoding':_0xd8aa65(0x139),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x3fa5d6=a0_0x502ea5,_0x373add=resolveExecutable(_0x3fa5d6(0xb4));if(!_0x373add)return'';const _0x29bc51=run(_0x373add,['root','-g']);if(_0x29bc51[_0x3fa5d6(0xeb)]!==0x0)return'';return String(_0x29bc51[_0x3fa5d6(0xd4)]||'')['trim']();}function compareSemver(_0x3eedc0,_0x40d348){const _0x5bea56=a0_0x502ea5,_0x287154=String(_0x3eedc0||'')['replace'](/^v/,'')[_0x5bea56(0xa6)](/[.-]/)[_0x5bea56(0x103)](_0x1e290a=>Number['parseInt'](_0x1e290a,0xa)||0x0),_0x3789c7=String(_0x40d348||'')[_0x5bea56(0xee)](/^v/,'')[_0x5bea56(0xa6)](/[.-]/)[_0x5bea56(0x103)](_0x5eb1d6=>Number[_0x5bea56(0xe0)](_0x5eb1d6,0xa)||0x0);for(let _0x3744c5=0x0;_0x3744c5<Math['max'](_0x287154[_0x5bea56(0x111)],_0x3789c7[_0x5bea56(0x111)],0x3);_0x3744c5++){const _0x3bd789=_0x287154[_0x3744c5]||0x0,_0x23f380=_0x3789c7[_0x3744c5]||0x0;if(_0x3bd789>_0x23f380)return 0x1;if(_0x3bd789<_0x23f380)return-0x1;}return 0x0;}function resolveExecutable(_0x513426){const _0x1ef859=a0_0x502ea5,_0x2ccc8c=process['platform']===_0x1ef859(0xa8)?_0x1ef859(0x9c):_0x1ef859(0x125);try{const _0x39423d=(0x0,import_child_process[_0x1ef859(0x131)])(_0x2ccc8c,[_0x513426],{'encoding':'utf8','timeout':0xbb8,'shell':![]});if(_0x39423d[_0x1ef859(0xeb)]!==0x0)return'';return String(_0x39423d[_0x1ef859(0xd4)]||'')['split'](/\r?\n/)['map'](_0x3189b6=>_0x3189b6[_0x1ef859(0xd6)]())[_0x1ef859(0xb0)](Boolean)[0x0]||'';}catch{return'';}}function skipWrapperUpdateCheck(){const _0x594a16=a0_0x502ea5,_0x27826d=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x594a16(0xd6)]()[_0x594a16(0xcc)]();return _0x27826d==='1'||_0x27826d==='true'||_0x27826d===_0x594a16(0xd2)||_0x27826d==='on';}function latestWrapperVersion(){const _0x5839d0=a0_0x502ea5,_0x9011d7=runNpmView(['view',WRAPPER_PKG_NAME+_0x5839d0(0x123),'version','--registry='+NPM_REGISTRY]);if(_0x9011d7[_0x5839d0(0xeb)]!==0x0)return'';return String(_0x9011d7['stdout']||'')[_0x5839d0(0xd6)]()['split'](/\r?\n/)['filter'](Boolean)['pop']()||'';}function installWrapperVersion(_0xf39e97){const _0x194a37=a0_0x502ea5,_0x21115f=resolveExecutable('npm');if(!_0x21115f)return{'ok':![],'output':_0x194a37(0x120)+'H'};const _0x491543=run(_0x21115f,['install','-g',WRAPPER_PKG_NAME+'@'+_0xf39e97,_0x194a37(0x129)+NPM_REGISTRY]),_0x28b4a9=((_0x491543['stdout']||'')+'\x0a'+(_0x491543[_0x194a37(0xf6)]||''))['trim']();return{'ok':_0x491543['status']===0x0,'output':_0x28b4a9};}function maybeUpdateWrapper(_0x16ac01){const _0x5581ea=a0_0x502ea5;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x5d20a6=latestWrapperVersion();if(!_0x5d20a6||compareSemver(_0x5d20a6,WRAPPER_VERSION)<=0x0)return![];console[_0x5581ea(0xa9)](_0x5581ea(0xe2)+'ilable:\x20'+WRAPPER_VERSION+'\x20->\x20'+_0x5d20a6),console[_0x5581ea(0xa9)]('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x5d20a6+('\x20from\x20npm\x20before\x20sta'+_0x5581ea(0xd5)));const _0x37e280=installWrapperVersion(_0x5d20a6);if(!_0x37e280['ok']){console[_0x5581ea(0xa9)]('[wrapper]\x20wrapper\x20up'+'date\x20failed;\x20continu'+_0x5581ea(0x100)+WRAPPER_VERSION);if(_0x37e280['output'])console['warn'](_0x37e280[_0x5581ea(0x11e)][_0x5581ea(0xa6)](/\r?\n/)['slice'](-0xc)['join']('\x0a'));return console[_0x5581ea(0xa9)]('[wrapper]\x20Manual\x20upd'+_0x5581ea(0xf3)+WRAPPER_PKG_NAME+'@'+_0x5d20a6+_0x5581ea(0xfa)+NPM_REGISTRY),![];}console[_0x5581ea(0xa9)](_0x5581ea(0x10a)+'dated\x20to\x20'+_0x5d20a6+';\x20restarting\x20wrapper');const _0x5b826e=process['argv'][0x1],_0x136a38=(0x0,import_child_process[_0x5581ea(0x131)])(process['execPath'],[_0x5b826e,..._0x16ac01],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x5d20a6},'shell':![]});process['exit'](_0x136a38[_0x5581ea(0xeb)]??0x0);}function findCoreScript(){const _0x37b661=a0_0x502ea5,_0x28f1b0=String(process.env.WHALENT_CORE_ENTRY||'')[_0x37b661(0xd6)](),_0x3a52da=['1','true','yes','on'][_0x37b661(0x10c)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')['trim']()['toLowerCase']());if(_0x28f1b0&&_0x3a52da&&fs['existsSync'](_0x28f1b0))return _0x28f1b0;const _0x527626=[],_0x477639=_0x2e984b=>{const _0x57baad=_0x37b661;if(fs[_0x57baad(0x12c)](_0x2e984b)&&!_0x527626[_0x57baad(0x10c)](_0x2e984b))_0x527626['push'](_0x2e984b);};if(_0x28f1b0)_0x477639(_0x28f1b0);const _0x1c1e41=npmRootGlobal();if(_0x1c1e41){const _0x194208=path['join'](_0x1c1e41,_0x37b661(0xa5),_0x37b661(0xa3),_0x37b661(0xa0),_0x37b661(0xc6));_0x477639(_0x194208);}const _0x345848=path[_0x37b661(0x13d)](wrapperBaseDir(),_0x37b661(0x106));_0x477639(_0x345848);const _0x5bf02a=path['join'](wrapperBaseDir(),'..','packages','core','dist','index.cjs');_0x477639(_0x5bf02a);if(_0x527626['length']>0x0)return _0x527626[_0x37b661(0x103)]((_0x221c2c,_0x4c15df)=>({'candidate':_0x221c2c,'index':_0x4c15df,'version':coreVersion(_0x221c2c)}))[_0x37b661(0xca)]((_0x269d22,_0x4f9582)=>{const _0x1f35ab=_0x37b661,_0x16a5dc=compareSemver(_0x4f9582['version'],_0x269d22['version']);if(_0x16a5dc!==0x0)return _0x16a5dc;return _0x4f9582[_0x1f35ab(0xe5)]-_0x269d22['index'];})[0x0][_0x37b661(0x118)];throw new Error('whalent\x20core\x20runtime'+_0x37b661(0xa4)+'@whalent/agent-core\x20'+_0x37b661(0xaf)+'agent');}function coreVersion(_0x53591c=findCoreScript()){const _0x372a28=a0_0x502ea5;ensureNodePtyNativeModule(_0x53591c);const _0x17a96a=(0x0,import_child_process['spawnSync'])(process['execPath'],[_0x53591c,_0x372a28(0xd8)],{'encoding':_0x372a28(0x139),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x36c327=(_0x17a96a[_0x372a28(0xd4)]||'')+'\x0a'+(_0x17a96a[_0x372a28(0xf6)]||'');return _0x36c327[_0x372a28(0x104)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x1d07f9){try{return fs['accessSync'](_0x1d07f9,fs['constants']['X_OK']),!![];}catch{return![];}}function shellQuote(_0x19b5b7){const _0x1f2c7c=a0_0x502ea5;return'\x27'+_0x19b5b7['replace'](/'/g,_0x1f2c7c(0xbb))+'\x27';}function corePackageRoot(_0x3a15ef){const _0xfae9f=a0_0x502ea5;return path['resolve'](path[_0xfae9f(0xfe)](_0x3a15ef),'..');}function nodePtyPackageRoot(_0x2ad5e0){const _0xc34954=a0_0x502ea5,_0x4f13ef=(0x0,import_module[_0xc34954(0x9f)])(_0x2ad5e0),_0x2a44d1=_0x4f13ef[_0xc34954(0xdf)](_0xc34954(0x102));let _0x1391c2=path['dirname'](_0x2a44d1);for(let _0x21084d=0x0;_0x21084d<0x5;_0x21084d++){const _0x378dd3=path[_0xc34954(0x13d)](_0x1391c2,_0xc34954(0x11f));try{const _0x22ea89=JSON['parse'](fs['readFileSync'](_0x378dd3,_0xc34954(0x127)));if(_0x22ea89['name']===_0xc34954(0x102))return _0x1391c2;}catch{}const _0x14812b=path['dirname'](_0x1391c2);if(_0x14812b===_0x1391c2)break;_0x1391c2=_0x14812b;}return path[_0xc34954(0xdf)](path['dirname'](_0x2a44d1),'..');}function nodePtyNativeCandidates(_0x19b2a){const _0x3d3b93=a0_0x502ea5;return[path['join'](_0x19b2a,'build','Release','pty.node'),path[_0x3d3b93(0x13d)](_0x19b2a,_0x3d3b93(0xf8),process[_0x3d3b93(0x13f)]+'-'+process[_0x3d3b93(0xc5)],'pty.node')];}function a0_0x5c12(_0x2771d4,_0x54c92b){_0x2771d4=_0x2771d4-0x9c;const _0x5b5fc4=a0_0x5b5f();let _0x5c12d6=_0x5b5fc4[_0x2771d4];if(a0_0x5c12['Ildbrz']===undefined){var _0x2ca4f7=function(_0x346878){const _0x3047ce='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f9ad6='',_0x27a388='';for(let _0x5711bf=0x0,_0x3919cb,_0x533836,_0x2807f3=0x0;_0x533836=_0x346878['charAt'](_0x2807f3++);~_0x533836&&(_0x3919cb=_0x5711bf%0x4?_0x3919cb*0x40+_0x533836:_0x533836,_0x5711bf++%0x4)?_0x3f9ad6+=String['fromCharCode'](0xff&_0x3919cb>>(-0x2*_0x5711bf&0x6)):0x0){_0x533836=_0x3047ce['indexOf'](_0x533836);}for(let _0x39ed2f=0x0,_0x278185=_0x3f9ad6['length'];_0x39ed2f<_0x278185;_0x39ed2f++){_0x27a388+='%'+('00'+_0x3f9ad6['charCodeAt'](_0x39ed2f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27a388);};a0_0x5c12['YfGoJh']=_0x2ca4f7,a0_0x5c12['xXCeFK']={},a0_0x5c12['Ildbrz']=!![];}const _0x25fe48=_0x5b5fc4[0x0],_0x2548fe=_0x2771d4+_0x25fe48,_0x35a02b=a0_0x5c12['xXCeFK'][_0x2548fe];return!_0x35a02b?(_0x5c12d6=a0_0x5c12['YfGoJh'](_0x5c12d6),a0_0x5c12['xXCeFK'][_0x2548fe]=_0x5c12d6):_0x5c12d6=_0x35a02b,_0x5c12d6;}function hasNodePtyNativeModule(_0x568fdd){const _0x3ff440=a0_0x502ea5;return nodePtyNativeCandidates(_0x568fdd)[_0x3ff440(0xf5)](_0x638c1e=>fs[_0x3ff440(0x12c)](_0x638c1e));}function printNodePtyRebuildHint(_0x5919db){const _0x106c65=a0_0x502ea5,_0x318c13=corePackageRoot(_0x5919db);console['warn'](_0x106c65(0xfd)+':'),console['warn']('\x20\x20cd\x20'+shellQuote(_0x318c13)),console[_0x106c65(0xa9)](_0x106c65(0xe9)+_0x106c65(0xc3));}function ensureNodePtyNativeModule(_0x4ae23b){const _0x4a576d=a0_0x502ea5;if(process['platform']===_0x4a576d(0xa8))return;let _0x3e8fee='';try{_0x3e8fee=nodePtyPackageRoot(_0x4ae23b);}catch(_0x472ea8){console[_0x4a576d(0xa9)]('[wrapper]\x20node-pty\x20d'+_0x4a576d(0x117)+_0x4a576d(0xe6)+_0x472ea8[_0x4a576d(0x126)]),printNodePtyRebuildHint(_0x4ae23b);return;}const _0x58905f=((()=>{const _0x391c7d=_0x4a576d;try{return fs[_0x391c7d(0x133)](_0x3e8fee);}catch{return _0x3e8fee;}})());if(CHECKED_NODE_PTY_RUNTIMES[_0x4a576d(0xe7)](_0x58905f))return;CHECKED_NODE_PTY_RUNTIMES['add'](_0x58905f);if(hasNodePtyNativeModule(_0x3e8fee))return;const _0x529414=resolveExecutable(_0x4a576d(0xb4));console[_0x4a576d(0xa9)](_0x4a576d(0xd7)+_0x4a576d(0xb6)+'ing\x20under\x20'+_0x3e8fee),console['warn'](_0x4a576d(0x119)+_0x4a576d(0x136)+_0x4a576d(0xd5));if(!_0x529414){console[_0x4a576d(0xa9)](_0x4a576d(0x114)+_0x4a576d(0x11a)+_0x4a576d(0xd3)+'ly'),printNodePtyRebuildHint(_0x4ae23b);return;}const _0x5c6081=corePackageRoot(_0x4ae23b),_0xb8c59f=(0x0,import_child_process[_0x4a576d(0x131)])(_0x529414,['rebuild','node-pty',_0x4a576d(0xc8)],{'cwd':_0x5c6081,'stdio':_0x4a576d(0x112),'timeout':NPM_INSTALL_TIMEOUT_MS,'env':process.env,'shell':![]});if(_0xb8c59f[_0x4a576d(0xeb)]===0x0&&hasNodePtyNativeModule(_0x3e8fee)){console[_0x4a576d(0xa9)](_0x4a576d(0x109)+_0x4a576d(0x108));return;}console['warn'](_0x4a576d(0x109)+_0x4a576d(0xbe)+(_0xb8c59f[_0x4a576d(0xeb)]!==null?'\x20(exit='+_0xb8c59f['status']+')':'')+(_0x4a576d(0xe1)+_0x4a576d(0xdd))),printNodePtyRebuildHint(_0x4ae23b);}function coreNodePtySpawnHelperPath(_0x212039){const _0x6fda2=a0_0x502ea5;if(process[_0x6fda2(0x13f)]!=='darwin')return'';try{const _0xc92426=(0x0,import_module[_0x6fda2(0x9f)])(_0x212039),_0x295c6e=_0xc92426[_0x6fda2(0xdf)]('node-pty'),_0x2272e2=path[_0x6fda2(0xdf)](path['dirname'](_0x295c6e),'..');return path[_0x6fda2(0x13d)](_0x2272e2,'prebuilds',_0x6fda2(0x105)+process[_0x6fda2(0xc5)],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x1824bc){const _0xd98c52=a0_0x502ea5,_0x4c9aaa=coreNodePtySpawnHelperPath(_0x1824bc);if(!_0x4c9aaa||CHECKED_PTY_HELPERS[_0xd98c52(0xe7)](_0x4c9aaa))return;CHECKED_PTY_HELPERS[_0xd98c52(0x9d)](_0x4c9aaa);if(!fs['existsSync'](_0x4c9aaa)){console[_0xd98c52(0xa9)](_0xd98c52(0xe4)+_0xd98c52(0x13a)+'t\x20found:\x20'+_0x4c9aaa);return;}if(isExecutable(_0x4c9aaa))return;try{const _0x426986=fs[_0xd98c52(0x10f)](_0x4c9aaa)[_0xd98c52(0xb2)];fs['chmodSync'](_0x4c9aaa,_0x426986|0x1ed);}catch{}if(isExecutable(_0x4c9aaa)){console['warn']('[wrapper]\x20fixed\x20macO'+'S\x20node-pty\x20spawn-hel'+_0xd98c52(0xb5)+_0x4c9aaa);return;}console[_0xd98c52(0xa9)]('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20is'+_0xd98c52(0x12a)+_0x4c9aaa),console[_0xd98c52(0xa9)](_0xd98c52(0xed)+'nce\x20to\x20fix\x20terminal/'+'PTY\x20startup:'),console[_0xd98c52(0xa9)](_0xd98c52(0xf9)+shellQuote(_0x4c9aaa)),console['warn'](_0xd98c52(0xdc)),console['warn'](_0xd98c52(0xef));}function printVersion(){const _0x45c223=a0_0x502ea5;let _0xf7353='';try{_0xf7353=coreVersion();}catch{}console['log'](_0x45c223(0x11d)+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console[_0x45c223(0x101)]('core\x20'+(_0xf7353||'not\x20installed'));}function directCore(_0x138346){const _0x4979a1=a0_0x502ea5,_0x8797e9=findCoreScript();ensureNodePtyNativeModule(_0x8797e9),checkMacNodePtySpawnHelper(_0x8797e9);const _0x33aa43=(0x0,import_child_process[_0x4979a1(0x131)])(process['execPath'],[_0x8797e9,..._0x138346],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x8797e9},'shell':![]});process[_0x4979a1(0xb1)](_0x33aa43['status']??0x0);}function shouldSupervise(_0x2d6889){const _0x169570=a0_0x502ea5;if(_0x2d6889['includes'](_0x169570(0x12d)))return![];if(_0x2d6889[_0x169570(0x10c)]('--resume')||_0x2d6889[0x0]===_0x169570(0x12e))return![];const _0x422dfd=_0x2d6889[0x0]||'';if(_0x422dfd==='ls'||_0x422dfd==='status'||_0x422dfd==='ps')return![];if(_0x422dfd===_0x169570(0x12f)||_0x422dfd===_0x169570(0xf0))return![];if(_0x2d6889['includes']('--help')||_0x2d6889[_0x169570(0x10c)]('-h'))return![];return!![];}function installCoreVersion(_0xdb31f8){const _0x4a5a1c=a0_0x502ea5,_0x59b776=resolveExecutable(_0x4a5a1c(0xb4));if(!_0x59b776)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x14a848=CORE_PKG_NAME+'@'+_0xdb31f8,_0x19db18=run(_0x59b776,['install','-g',_0x14a848,_0x4a5a1c(0x129)+NPM_REGISTRY]),_0xd1bad2=((_0x19db18['stdout']||'')+'\x0a'+(_0x19db18[_0x4a5a1c(0xf6)]||''))['trim']();return{'ok':_0x19db18[_0x4a5a1c(0xeb)]===0x0,'output':_0xd1bad2};}async function superviseCore(_0x2121a8){const _0x509c37=a0_0x502ea5;let _0x25c93b=![],_0xeb1ea9=null;const _0x1f6a30=[];let _0x46cbc4=MIN_RESTART_DELAY_MS;const _0x6f1700=()=>{const _0x31a224=a0_0x5c12;_0x25c93b=!![];if(_0xeb1ea9&&!_0xeb1ea9[_0x31a224(0x11b)])try{_0xeb1ea9[_0x31a224(0xb3)](_0x31a224(0xa2));}catch{}else process[_0x31a224(0xb1)](0x0);};process['on']('SIGINT',_0x6f1700),process['on'](_0x509c37(0xa2),_0x6f1700);while(!![]){const _0x70c125=findCoreScript();ensureNodePtyNativeModule(_0x70c125),checkMacNodePtySpawnHelper(_0x70c125);const _0x3851c5={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x70c125},_0x59df25=readUpgradeState(),_0x1f5c33=!!_0x59df25?.['pending'];let _0x156831=![],_0x260283=null,_0x370596='';const _0x3686f8=[],_0x4d84a6=0xc;console[_0x509c37(0x101)](_0x509c37(0xde)+_0x509c37(0xf4)+_0x70c125),_0xeb1ea9=(0x0,import_child_process['spawn'])(process[_0x509c37(0xa7)],[_0x70c125,..._0x2121a8],{'env':_0x3851c5,'stdio':[_0x509c37(0x112),'pipe',_0x509c37(0xba)]});const _0x385419=()=>{const _0x347a85=_0x509c37;if(_0x156831)return;_0x156831=!![];if(_0x260283)clearTimeout(_0x260283);_0x1f6a30['length']=0x0,_0x46cbc4=MIN_RESTART_DELAY_MS;const _0x489852=readUpgradeState();_0x489852?.[_0x347a85(0xa1)]&&(writeUpgradeState({..._0x489852,'pending':![],'rollback':![],'health_status':_0x347a85(0xe3)}),console['log']('[wrapper]\x20core\x20upgra'+'de\x20healthy:\x20'+(_0x489852['installed_version']||_0x489852[_0x347a85(0x135)]||'')));},_0x4f337c=(_0x3cb3a3,_0x24e5ac=![])=>{const _0x307033=_0x509c37,_0x3bb8f2=_0x3cb3a3[_0x307033(0xfc)]();(_0x24e5ac?process['stderr']:process['stdout'])['write'](_0x3bb8f2);if(_0x24e5ac)for(const _0x713564 of _0x3bb8f2[_0x307033(0xa6)](/\r?\n/)){if(!_0x713564['trim']())continue;_0x3686f8['push'](_0x713564);if(_0x3686f8['length']>_0x4d84a6)_0x3686f8['shift']();const _0x235bdc=_0x713564[_0x307033(0x104)](FATAL_PATTERN);if(_0x235bdc)_0x370596=_0x235bdc[0x0];}(_0x3bb8f2['includes']('[gateway]\x20Connected')||_0x3bb8f2[_0x307033(0x10c)]('Gateway\x20registered\x20m'+_0x307033(0xcf))||_0x3bb8f2['includes'](_0x307033(0xc2)))&&_0x385419();};_0xeb1ea9[_0x509c37(0xd4)]?.['on']('data',_0xa83418=>_0x4f337c(_0xa83418,![])),_0xeb1ea9[_0x509c37(0xf6)]?.['on']('data',_0x354f45=>_0x4f337c(_0x354f45,!![]));_0x1f5c33&&(_0x260283=setTimeout(()=>{const _0x54fcc6=_0x509c37;if(_0x156831||!_0xeb1ea9||_0xeb1ea9[_0x54fcc6(0x11b)])return;console['error']('[wrapper]\x20new\x20core\x20d'+_0x54fcc6(0xc0)+_0x54fcc6(0x113)+'ack');try{_0xeb1ea9[_0x54fcc6(0xb3)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x169a7a=await new Promise(_0x3ba0f6=>{const _0x2503ae=_0x509c37;_0xeb1ea9[_0x2503ae(0x11c)](_0x2503ae(0xb1),(_0x3d5a2e,_0x21322b)=>_0x3ba0f6({'code':_0x3d5a2e,'signal':_0x21322b}));});if(_0x260283)clearTimeout(_0x260283);_0xeb1ea9=null;if(_0x25c93b)process['exit'](_0x169a7a['code']??0x0);const _0x4be076=readUpgradeState();if(_0x4be076?.[_0x509c37(0xa1)]&&!_0x156831){const _0x5437e5=String(_0x4be076[_0x509c37(0xcb)+'n']||'')['trim']();if(_0x5437e5){console[_0x509c37(0xbd)](_0x509c37(0x121)+_0x509c37(0xcd)+_0x5437e5);const _0x26fbef=installCoreVersion(_0x5437e5);writeUpgradeState({..._0x4be076,'pending':![],'rollback':!![],'health_status':_0x26fbef['ok']?'rolled_back':_0x509c37(0xc7),'error':_0x26fbef['ok']?'':_0x26fbef['output']});}else writeUpgradeState({..._0x4be076,'pending':![],'rollback':!![],'health_status':_0x509c37(0xf2),'error':_0x509c37(0x10d)+_0x509c37(0xae)});}const _0x3f81cb=_0x169a7a[_0x509c37(0xc4)]===SUPERVISED_RESTART_CODE||_0x4be076?.['pending'];if(!_0x3f81cb&&_0x169a7a['code']===0x0)process['exit'](0x0);const _0x4353f4=Date['now']();_0x1f6a30[_0x509c37(0x122)](_0x4353f4);while(_0x1f6a30[_0x509c37(0x111)]>0x0&&_0x4353f4-_0x1f6a30[0x0]>CRASH_WINDOW_MS){_0x1f6a30['shift']();}const _0x1fe9d4=_0x1f6a30[_0x509c37(0x111)];writeLastCrash({'timestamp':_0x4353f4,'exit_code':_0x169a7a[_0x509c37(0xc4)],'exit_signal':_0x169a7a[_0x509c37(0x128)]||null,'fatal_line':_0x370596,'raw_tail':_0x3686f8['join']('\x0a'),'consecutive_crashes':_0x1fe9d4}),console['log']('[wrapper]\x20core\x20exite'+_0x509c37(0xd9)+(_0x169a7a[_0x509c37(0xc4)]??'')+(_0x169a7a[_0x509c37(0x128)]?'\x20signal='+_0x169a7a['signal']:'')+'\x20('+_0x1fe9d4+'/'+MAX_CRASHES_IN_WINDOW+_0x509c37(0x140)+Math[_0x509c37(0x10e)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x370596)console['log']('[wrapper]\x20last\x20fatal'+':\x20'+_0x370596);_0x1fe9d4>=MAX_CRASHES_IN_WINDOW&&(console['error'](_0x509c37(0x134)+'d\x20'+_0x1fe9d4+_0x509c37(0x110)+Math['round'](CRASH_WINDOW_MS/0x3e8)+(_0x509c37(0xe8)+_0x509c37(0x132))+lastCrashFilePath()+(_0x509c37(0xf1)+'nually\x20after\x20the\x20und'+_0x509c37(0xfb)+'ed.')),process[_0x509c37(0xb1)](0x1)),console[_0x509c37(0x101)]('[wrapper]\x20restarting'+'\x20in\x20'+_0x46cbc4+'ms'),await new Promise(_0x723ee8=>setTimeout(_0x723ee8,_0x46cbc4)),_0x46cbc4=Math['min'](_0x46cbc4*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x62c990=a0_0x502ea5,_0x2ff6b9=process['argv'][_0x62c990(0xce)](0x2);if(_0x2ff6b9[0x0]==='--version'||_0x2ff6b9[0x0]==='-v'||_0x2ff6b9[0x0]===_0x62c990(0xdb)){printVersion();return;}if((_0x2ff6b9[0x0]===_0x62c990(0xeb)||_0x2ff6b9[0x0]==='ls'||_0x2ff6b9[0x0]==='ps')&&!_0x2ff6b9[_0x62c990(0x10c)]('--json')){console[_0x62c990(0x101)]('wrapper\x20'+WRAPPER_VERSION);try{console[_0x62c990(0x101)](_0x62c990(0x116)+(coreVersion()||_0x62c990(0xda)));}catch{console[_0x62c990(0x101)]('core\x20not\x20installed');}}maybeUpdateWrapper(_0x2ff6b9);if(!shouldSupervise(_0x2ff6b9))directCore(_0x2ff6b9);await superviseCore(_0x2ff6b9);}main()[a0_0x502ea5(0x138)](_0x57fdb3=>{const _0xf8ce46=a0_0x502ea5;console['error']('[wrapper]\x20Fatal\x20erro'+'r:\x20'+(_0x57fdb3?.['message']||String(_0x57fdb3))),process[_0xf8ce46(0xb1)](0x1);});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whalent/agent",
3
- "version": "0.3.95",
3
+ "version": "0.3.96",
4
4
  "description": "Stable wrapper for Whalent Agent core runtime",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -42,7 +42,7 @@
42
42
  "yaml": "^2.4.0"
43
43
  },
44
44
  "optionalDependencies": {
45
- "@whalent/agent-core": "0.3.95"
45
+ "@whalent/agent-core": "0.3.96"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@types/node": "^20.0.0",