@whalent/agent 0.3.59 → 0.3.60
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/core.cjs +7 -7
- package/dist/index.cjs +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict';const a0_0x290759=a0_0x4430;(function(_0x299eed,_0x56e549){const _0x3656d3=a0_0x4430,_0x43d743=_0x299eed();while(!![]){try{const _0x49a56b=-parseInt(_0x3656d3(0xf9))/0x1*(-parseInt(_0x3656d3(0x159))/0x2)+-parseInt(_0x3656d3(0x113))/0x3*(-parseInt(_0x3656d3(0x139))/0x4)+-parseInt(_0x3656d3(0xf8))/0x5+-parseInt(_0x3656d3(0x12b))/0x6*(-parseInt(_0x3656d3(0x137))/0x7)+parseInt(_0x3656d3(0x12e))/0x8+parseInt(_0x3656d3(0x10d))/0x9+-parseInt(_0x3656d3(0x13e))/0xa*(parseInt(_0x3656d3(0x12d))/0xb);if(_0x49a56b===_0x56e549)break;else _0x43d743['push'](_0x43d743['shift']());}catch(_0xc8e6c5){_0x43d743['push'](_0x43d743['shift']());}}}(a0_0xeef3,0x7f7a9));var __create=Object[a0_0x290759(0x154)],__defProp=Object['defineProperty'],__getOwnPropDesc=Object[a0_0x290759(0x13c)+a0_0x290759(0x138)],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object[a0_0x290759(0x156)],__hasOwnProp=Object['prototype'][a0_0x290759(0x106)],__copyProps=(_0x364d4b,_0x3c82ad,_0x9c0a56,_0x3deee4)=>{const _0xcf8b56=a0_0x290759;if(_0x3c82ad&&typeof _0x3c82ad===_0xcf8b56(0x109)||typeof _0x3c82ad==='function'){for(let _0x232e68 of __getOwnPropNames(_0x3c82ad))if(!__hasOwnProp[_0xcf8b56(0x11a)](_0x364d4b,_0x232e68)&&_0x232e68!==_0x9c0a56)__defProp(_0x364d4b,_0x232e68,{'get':()=>_0x3c82ad[_0x232e68],'enumerable':!(_0x3deee4=__getOwnPropDesc(_0x3c82ad,_0x232e68))||_0x3deee4['enumerable']});}return _0x364d4b;},__toESM=(_0x226a9c,_0x46e37b,_0x25acdc)=>(_0x25acdc=_0x226a9c!=null?__create(__getProtoOf(_0x226a9c)):{},__copyProps(_0x46e37b||!_0x226a9c||!_0x226a9c[a0_0x290759(0x132)]?__defProp(_0x25acdc,'default',{'value':_0x226a9c,'enumerable':!![]}):_0x25acdc,_0x226a9c)),import_child_process=require(a0_0x290759(0x15c)),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='@whalent/agent-core',NPM_REGISTRY=a0_0x290759(0x14e)+a0_0x290759(0x13b),SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,RESTART_DELAY_MS=0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set();function wrapperBaseDir(){return __dirname;}function configDir(){const _0x40d054=a0_0x290759;return path[_0x40d054(0x15d)](os['homedir'](),'.whalent-agent');}function upgradeStatePath(){const _0x55d790=a0_0x290759;return path[_0x55d790(0x15d)](configDir(),_0x55d790(0x143));}function readWrapperVersion(){const _0x535ac6=a0_0x290759;try{const _0x41d70e=JSON[_0x535ac6(0x105)](fs[_0x535ac6(0xff)](path[_0x535ac6(0x15d)](wrapperBaseDir(),'..','package.json'),'utf-8'));return String(_0x41d70e['version']||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x444530=a0_0x290759;try{return JSON[_0x444530(0x105)](fs[_0x444530(0xff)](upgradeStatePath(),_0x444530(0x107)));}catch{return null;}}function writeUpgradeState(_0x329992){const _0x95c3a9=a0_0x290759;try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs[_0x95c3a9(0x127)](upgradeStatePath(),JSON['stringify']({..._0x329992,'updated_at':Date['now']()},null,0x2),_0x95c3a9(0x107));}catch{}}function run(_0x452b6d,_0x58b8ef,_0x3400c9=process.env){const _0x32225a=a0_0x290759;return(0x0,import_child_process['spawnSync'])(_0x452b6d,_0x58b8ef,{'encoding':_0x32225a(0x10e),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x3400c9,'shell':![]});}function runNpmView(_0x1d09d6){const _0x23f05=a0_0x290759,_0x2b933f=resolveExecutable(_0x23f05(0x104));if(!_0x2b933f)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error('npm\x20not\x20found')};return(0x0,import_child_process[_0x23f05(0x110)])(_0x2b933f,_0x1d09d6,{'encoding':_0x23f05(0x10e),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x1d0547=a0_0x290759,_0x33f952=resolveExecutable(_0x1d0547(0x104));if(!_0x33f952)return'';const _0x41d0e8=run(_0x33f952,[_0x1d0547(0x151),'-g']);if(_0x41d0e8[_0x1d0547(0x14a)]!==0x0)return'';return String(_0x41d0e8[_0x1d0547(0x146)]||'')['trim']();}function compareSemver(_0x20d094,_0xd4bbba){const _0x3f91b9=a0_0x290759,_0x202503=String(_0x20d094||'')['replace'](/^v/,'')[_0x3f91b9(0x161)](/[.-]/)[_0x3f91b9(0x128)](_0x51cbc1=>Number[_0x3f91b9(0x152)](_0x51cbc1,0xa)||0x0),_0x256062=String(_0xd4bbba||'')['replace'](/^v/,'')['split'](/[.-]/)[_0x3f91b9(0x128)](_0x10db65=>Number['parseInt'](_0x10db65,0xa)||0x0);for(let _0x4e5de7=0x0;_0x4e5de7<Math['max'](_0x202503['length'],_0x256062[_0x3f91b9(0x168)],0x3);_0x4e5de7++){const _0x252ca0=_0x202503[_0x4e5de7]||0x0,_0x55b9b0=_0x256062[_0x4e5de7]||0x0;if(_0x252ca0>_0x55b9b0)return 0x1;if(_0x252ca0<_0x55b9b0)return-0x1;}return 0x0;}function resolveExecutable(_0x1016bf){const _0x271ee8=a0_0x290759,_0x5e8e5f=process[_0x271ee8(0x166)]==='win32'?_0x271ee8(0x120):'which';try{const _0xeeee8c=(0x0,import_child_process['spawnSync'])(_0x5e8e5f,[_0x1016bf],{'encoding':_0x271ee8(0x10e),'timeout':0xbb8,'shell':![]});if(_0xeeee8c[_0x271ee8(0x14a)]!==0x0)return'';return String(_0xeeee8c[_0x271ee8(0x146)]||'')['split'](/\r?\n/)[_0x271ee8(0x128)](_0x122085=>_0x122085[_0x271ee8(0x164)]())[_0x271ee8(0x119)](Boolean)[0x0]||'';}catch{return'';}}function skipWrapperUpdateCheck(){const _0x51209f=a0_0x290759,_0x336b8b=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x51209f(0x164)]()[_0x51209f(0x11b)]();return _0x336b8b==='1'||_0x336b8b===_0x51209f(0x118)||_0x336b8b===_0x51209f(0x15b)||_0x336b8b==='on';}function latestWrapperVersion(){const _0x3ab9ce=a0_0x290759,_0x35c308=runNpmView([_0x3ab9ce(0x14b),WRAPPER_PKG_NAME+'@latest',_0x3ab9ce(0x115),'--registry='+NPM_REGISTRY]);if(_0x35c308['status']!==0x0)return'';return String(_0x35c308[_0x3ab9ce(0x146)]||'')[_0x3ab9ce(0x164)]()['split'](/\r?\n/)[_0x3ab9ce(0x119)](Boolean)[_0x3ab9ce(0x153)]()||'';}function installWrapperVersion(_0x5ea552){const _0x10a116=a0_0x290759,_0x3b9e70=resolveExecutable('npm');if(!_0x3b9e70)return{'ok':![],'output':_0x10a116(0x117)+'H'};const _0xbc0716=run(_0x3b9e70,[_0x10a116(0x163),'-g',WRAPPER_PKG_NAME+'@'+_0x5ea552,'--registry='+NPM_REGISTRY]),_0xe5981f=((_0xbc0716['stdout']||'')+'\x0a'+(_0xbc0716[_0x10a116(0xfe)]||''))[_0x10a116(0x164)]();return{'ok':_0xbc0716['status']===0x0,'output':_0xe5981f};}function maybeUpdateWrapper(_0x4cd8c3){const _0x23b8d0=a0_0x290759;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0xbe1994=latestWrapperVersion();if(!_0xbe1994||compareSemver(_0xbe1994,WRAPPER_VERSION)<=0x0)return![];console[_0x23b8d0(0xfd)]('[wrapper]\x20update\x20ava'+_0x23b8d0(0x140)+WRAPPER_VERSION+_0x23b8d0(0x111)+_0xbe1994),console['warn']('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0xbe1994+('\x20from\x20npm\x20before\x20sta'+'rting\x20core...'));const _0x4091d2=installWrapperVersion(_0xbe1994);if(!_0x4091d2['ok']){console[_0x23b8d0(0xfd)]('[wrapper]\x20wrapper\x20up'+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x4091d2['output'])console['warn'](_0x4091d2['output']['split'](/\r?\n/)[_0x23b8d0(0x122)](-0xc)['join']('\x0a'));return console[_0x23b8d0(0xfd)]('[wrapper]\x20Manual\x20upd'+_0x23b8d0(0x167)+WRAPPER_PKG_NAME+'@'+_0xbe1994+_0x23b8d0(0x147)+NPM_REGISTRY),![];}console[_0x23b8d0(0xfd)](_0x23b8d0(0x114)+'dated\x20to\x20'+_0xbe1994+';\x20restarting\x20wrapper');const _0x4908fe=process[_0x23b8d0(0x116)][0x1],_0x15b482=(0x0,import_child_process['spawnSync'])(process['execPath'],[_0x4908fe,..._0x4cd8c3],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0xbe1994},'shell':![]});process['exit'](_0x15b482[_0x23b8d0(0x14a)]??0x0);}function findCoreScript(){const _0x13df1a=a0_0x290759,_0x32642d=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x2e8331=['1','true','yes','on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')[_0x13df1a(0x164)]()['toLowerCase']());if(_0x32642d&&_0x2e8331&&fs['existsSync'](_0x32642d))return _0x32642d;const _0x148799=[],_0x160238=_0x12f288=>{if(fs['existsSync'](_0x12f288)&&!_0x148799['includes'](_0x12f288))_0x148799['push'](_0x12f288);};if(_0x32642d)_0x160238(_0x32642d);const _0x5c25e9=npmRootGlobal();if(_0x5c25e9){const _0x2cb299=path[_0x13df1a(0x15d)](_0x5c25e9,_0x13df1a(0x165),'agent-core','dist','index.cjs');_0x160238(_0x2cb299);}const _0x2373ac=path[_0x13df1a(0x15d)](wrapperBaseDir(),_0x13df1a(0x129));_0x160238(_0x2373ac);const _0x273f6d=path['join'](wrapperBaseDir(),'..','packages','core','dist',_0x13df1a(0x10b));_0x160238(_0x273f6d);if(_0x148799['length']>0x0)return _0x148799[_0x13df1a(0x128)]((_0x4bebf2,_0x43392f)=>({'candidate':_0x4bebf2,'index':_0x43392f,'version':coreVersion(_0x4bebf2)}))['sort']((_0x1dd525,_0x3a7189)=>{const _0x34f3c7=_0x13df1a,_0x4b389a=compareSemver(_0x3a7189['version'],_0x1dd525['version']);if(_0x4b389a!==0x0)return _0x4b389a;return _0x3a7189[_0x34f3c7(0x149)]-_0x1dd525['index'];})[0x0][_0x13df1a(0x160)];throw new Error('whalent\x20core\x20runtime'+_0x13df1a(0x15e)+'@whalent/agent-core\x20'+_0x13df1a(0x15f)+_0x13df1a(0x157));}function coreVersion(_0x47a8bc=findCoreScript()){const _0x3b92d3=a0_0x290759,_0x274566=(0x0,import_child_process[_0x3b92d3(0x110)])(process['execPath'],[_0x47a8bc,'--version'],{'encoding':_0x3b92d3(0x10e),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x21993e=(_0x274566['stdout']||'')+'\x0a'+(_0x274566['stderr']||'');return _0x21993e[_0x3b92d3(0x133)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x2519d2){try{return fs['accessSync'](_0x2519d2,fs['constants']['X_OK']),!![];}catch{return![];}}function shellQuote(_0x343eb0){const _0x4f87a1=a0_0x290759;return'\x27'+_0x343eb0['replace'](/'/g,_0x4f87a1(0x169))+'\x27';}function coreNodePtySpawnHelperPath(_0x216112){const _0x49c6a8=a0_0x290759;if(process[_0x49c6a8(0x166)]!==_0x49c6a8(0x162))return'';try{const _0x1edc83=(0x0,import_module[_0x49c6a8(0x103)])(_0x216112),_0x304805=_0x1edc83[_0x49c6a8(0x102)](_0x49c6a8(0x135)),_0x59d300=path['resolve'](path[_0x49c6a8(0xfb)](_0x304805),'..');return path['join'](_0x59d300,'prebuilds',_0x49c6a8(0x14c)+process[_0x49c6a8(0xf7)],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x3fbf77){const _0x413a0f=a0_0x290759,_0x171d71=coreNodePtySpawnHelperPath(_0x3fbf77);if(!_0x171d71||CHECKED_PTY_HELPERS['has'](_0x171d71))return;CHECKED_PTY_HELPERS['add'](_0x171d71);if(!fs[_0x413a0f(0x12f)](_0x171d71)){console[_0x413a0f(0xfd)]('[wrapper]\x20macOS\x20node'+_0x413a0f(0x121)+'t\x20found:\x20'+_0x171d71);return;}if(isExecutable(_0x171d71))return;try{const _0x4b341c=fs['statSync'](_0x171d71)['mode'];fs['chmodSync'](_0x171d71,_0x4b341c|0x1ed);}catch{}if(isExecutable(_0x171d71)){console[_0x413a0f(0xfd)](_0x413a0f(0x150)+'S\x20node-pty\x20spawn-hel'+_0x413a0f(0x145)+_0x171d71);return;}console['warn']('[wrapper]\x20macOS\x20node'+_0x413a0f(0x10f)+_0x413a0f(0x130)+_0x171d71),console[_0x413a0f(0xfd)]('[wrapper]\x20Run\x20this\x20o'+_0x413a0f(0x12c)+_0x413a0f(0x11f)),console[_0x413a0f(0xfd)](_0x413a0f(0x13d)+shellQuote(_0x171d71)),console[_0x413a0f(0xfd)](_0x413a0f(0x125)),console['warn']('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0x44e0a4=a0_0x290759;let _0x27b699='';try{_0x27b699=coreVersion();}catch{}console['log']('whalent-agent\x20'+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console[_0x44e0a4(0x13f)](_0x44e0a4(0x108)+(_0x27b699||_0x44e0a4(0x144)));}function directCore(_0x3aa26e){const _0x1adf34=a0_0x290759,_0x1b2314=findCoreScript();checkMacNodePtySpawnHelper(_0x1b2314);const _0x4d6f67=(0x0,import_child_process[_0x1adf34(0x110)])(process[_0x1adf34(0x13a)],[_0x1b2314,..._0x3aa26e],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x1b2314},'shell':![]});process[_0x1adf34(0xfa)](_0x4d6f67[_0x1adf34(0x14a)]??0x0);}function shouldSupervise(_0x121a07){const _0x2ae2df=a0_0x290759;if(_0x121a07[_0x2ae2df(0x158)]('--agent-id'))return![];const _0x253e7e=_0x121a07[0x0]||'';if(_0x253e7e==='ls'||_0x253e7e===_0x2ae2df(0x14a)||_0x253e7e==='ps')return![];if(_0x253e7e===_0x2ae2df(0x16a)||_0x253e7e==='daemon-mcp')return![];if(_0x121a07[_0x2ae2df(0x158)]('--help')||_0x121a07['includes']('-h'))return![];return!![];}function a0_0x4430(_0x5ccd48,_0x24c101){_0x5ccd48=_0x5ccd48-0xf7;const _0xeef356=a0_0xeef3();let _0x4430ec=_0xeef356[_0x5ccd48];if(a0_0x4430['aHWQnh']===undefined){var _0x44a3d7=function(_0x13fb9c){const _0xc7e23d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x364d4b='',_0x3c82ad='';for(let _0x9c0a56=0x0,_0x3deee4,_0x232e68,_0x226a9c=0x0;_0x232e68=_0x13fb9c['charAt'](_0x226a9c++);~_0x232e68&&(_0x3deee4=_0x9c0a56%0x4?_0x3deee4*0x40+_0x232e68:_0x232e68,_0x9c0a56++%0x4)?_0x364d4b+=String['fromCharCode'](0xff&_0x3deee4>>(-0x2*_0x9c0a56&0x6)):0x0){_0x232e68=_0xc7e23d['indexOf'](_0x232e68);}for(let _0x46e37b=0x0,_0x25acdc=_0x364d4b['length'];_0x46e37b<_0x25acdc;_0x46e37b++){_0x3c82ad+='%'+('00'+_0x364d4b['charCodeAt'](_0x46e37b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c82ad);};a0_0x4430['ikqkhH']=_0x44a3d7,a0_0x4430['beaHss']={},a0_0x4430['aHWQnh']=!![];}const _0x1e870f=_0xeef356[0x0],_0x4bdd6e=_0x5ccd48+_0x1e870f,_0x10f311=a0_0x4430['beaHss'][_0x4bdd6e];return!_0x10f311?(_0x4430ec=a0_0x4430['ikqkhH'](_0x4430ec),a0_0x4430['beaHss'][_0x4bdd6e]=_0x4430ec):_0x4430ec=_0x10f311,_0x4430ec;}function installCoreVersion(_0x196ee0){const _0x546ca5=a0_0x290759,_0x141246=resolveExecutable('npm');if(!_0x141246)return{'ok':![],'output':_0x546ca5(0x117)+'H'};const _0x331f25=CORE_PKG_NAME+'@'+_0x196ee0,_0x20eb27=run(_0x141246,['install','-g',_0x331f25,'--registry='+NPM_REGISTRY]),_0x11a347=((_0x20eb27['stdout']||'')+'\x0a'+(_0x20eb27['stderr']||''))['trim']();return{'ok':_0x20eb27['status']===0x0,'output':_0x11a347};}async function superviseCore(_0x2d6ffc){const _0x445ecc=a0_0x290759;let _0x1f3801=![],_0x59c543=null;const _0x11365a=()=>{const _0x23fd93=a0_0x4430;_0x1f3801=!![];if(_0x59c543&&!_0x59c543['killed'])try{_0x59c543[_0x23fd93(0x112)](_0x23fd93(0x148));}catch{}else process['exit'](0x0);};process['on'](_0x445ecc(0x11c),_0x11365a),process['on'](_0x445ecc(0x148),_0x11365a);while(!![]){const _0x148fa0=findCoreScript();checkMacNodePtySpawnHelper(_0x148fa0);const _0x231569={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x148fa0},_0x1c8315=readUpgradeState(),_0x4e6c53=!!_0x1c8315?.['pending'];let _0x2c09bd=![],_0xe5599e=null;console['log'](_0x445ecc(0x136)+'ore:\x20'+_0x148fa0),_0x59c543=(0x0,import_child_process[_0x445ecc(0x141)])(process['execPath'],[_0x148fa0,..._0x2d6ffc],{'env':_0x231569,'stdio':[_0x445ecc(0x124),'pipe',_0x445ecc(0x11e)]});const _0x57207f=()=>{const _0x34ca3d=_0x445ecc;if(_0x2c09bd)return;_0x2c09bd=!![];if(_0xe5599e)clearTimeout(_0xe5599e);const _0x52f8fa=readUpgradeState();_0x52f8fa?.[_0x34ca3d(0x131)]&&(writeUpgradeState({..._0x52f8fa,'pending':![],'rollback':![],'health_status':'healthy'}),console['log']('[wrapper]\x20core\x20upgra'+'de\x20healthy:\x20'+(_0x52f8fa['installed_version']||_0x52f8fa[_0x34ca3d(0x14f)]||'')));},_0x298a87=(_0xd5662,_0x2def64=![])=>{const _0xd351ee=_0x445ecc,_0x12c2bb=_0xd5662['toString']();(_0x2def64?process[_0xd351ee(0xfe)]:process[_0xd351ee(0x146)])[_0xd351ee(0x10c)](_0x12c2bb),(_0x12c2bb[_0xd351ee(0x158)]('[gateway]\x20Connected')||_0x12c2bb['includes']('Gateway\x20registered\x20m'+'achine')||_0x12c2bb['includes'](_0xd351ee(0x15a)))&&_0x57207f();};_0x59c543[_0x445ecc(0x146)]?.['on'](_0x445ecc(0x123),_0x9adcbd=>_0x298a87(_0x9adcbd,![])),_0x59c543[_0x445ecc(0xfe)]?.['on']('data',_0x940f0a=>_0x298a87(_0x940f0a,!![]));_0x4e6c53&&(_0xe5599e=setTimeout(()=>{const _0x33fc8d=_0x445ecc;if(_0x2c09bd||!_0x59c543||_0x59c543['killed'])return;console['error']('[wrapper]\x20new\x20core\x20d'+'id\x20not\x20become\x20health'+'y\x20in\x20time;\x20rolling\x20b'+'ack');try{_0x59c543[_0x33fc8d(0x112)](_0x33fc8d(0x148));}catch{}},HEALTH_TIMEOUT_MS));const _0x295a02=await new Promise(_0x5a5abc=>{_0x59c543['once']('exit',(_0x2fe919,_0x3cf6cc)=>_0x5a5abc({'code':_0x2fe919,'signal':_0x3cf6cc}));});if(_0xe5599e)clearTimeout(_0xe5599e);_0x59c543=null;if(_0x1f3801)process[_0x445ecc(0xfa)](_0x295a02[_0x445ecc(0x11d)]??0x0);const _0x42f71d=readUpgradeState();if(_0x42f71d?.[_0x445ecc(0x131)]&&!_0x2c09bd){const _0x5cae73=String(_0x42f71d[_0x445ecc(0x10a)+'n']||'')[_0x445ecc(0x164)]();if(_0x5cae73){console['error']('[wrapper]\x20rolling\x20ba'+'ck\x20core\x20to\x20'+_0x5cae73);const _0x4dca22=installCoreVersion(_0x5cae73);writeUpgradeState({..._0x42f71d,'pending':![],'rollback':!![],'health_status':_0x4dca22['ok']?'rolled_back':'rollback_failed','error':_0x4dca22['ok']?'':_0x4dca22['output']});}else writeUpgradeState({..._0x42f71d,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':_0x445ecc(0x142)+'n\x20unknown'});}const _0x40b79a=_0x295a02[_0x445ecc(0x11d)]===SUPERVISED_RESTART_CODE||_0x42f71d?.['pending'];if(!_0x40b79a&&_0x295a02['code']===0x0)process['exit'](0x0);console['log']('[wrapper]\x20core\x20exite'+_0x445ecc(0x100)+(_0x295a02['code']??'')+(_0x295a02['signal']?'\x20signal='+_0x295a02[_0x445ecc(0x12a)]:'')+';\x20restarting\x20in\x20'+RESTART_DELAY_MS+'ms'),await new Promise(_0x183d33=>setTimeout(_0x183d33,RESTART_DELAY_MS));}}async function main(){const _0x3f27c5=a0_0x290759,_0xb8714a=process['argv'][_0x3f27c5(0x122)](0x2);if(_0xb8714a[0x0]==='--version'||_0xb8714a[0x0]==='-v'||_0xb8714a[0x0]==='version'){printVersion();return;}if((_0xb8714a[0x0]==='status'||_0xb8714a[0x0]==='ls'||_0xb8714a[0x0]==='ps')&&!_0xb8714a['includes'](_0x3f27c5(0xfc))){console['log'](_0x3f27c5(0x101)+WRAPPER_VERSION);try{console['log'](_0x3f27c5(0x108)+(coreVersion()||_0x3f27c5(0x144)));}catch{console[_0x3f27c5(0x13f)]('core\x20not\x20installed');}}maybeUpdateWrapper(_0xb8714a);if(!shouldSupervise(_0xb8714a))directCore(_0xb8714a);await superviseCore(_0xb8714a);}function a0_0xeef3(){const _0x5f2a08=['mtm1odiZmhf4yur3EG','Bg9N','AwXHyMXLoIa','C3bHD24','ChjLDMLVDxmGy29Yzsb2zxjZAw8','y29Yzs11CgDYywrLlMPZB24','BM90igLUC3rHBgXLza','CgvYigv4zwn1DgfIBguGyML0oIa','C3rKB3v0','ic0TCMvNAxn0CNK9','u0Lhvevstq','Aw5KzxG','C3rHDhvZ','DMLLDW','zgfYD2LUlq','zxjYB3i','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','DgfYz2v0x3zLCNnPB24','w3DYyxbWzxjDigzPEgvKig1Hy08','CM9VDa','CgfYC2vjBNq','Cg9W','y3jLyxrL','y2f0y2G','z2v0uhjVDg90ExbLt2y','ywDLBNq','Aw5JBhvKzxm','nda0ngngs3bOsa','r2f0zxDHEtOGy29UBMvJDgvK','EwvZ','y2HPBgrFChjVy2vZCW','AM9PBG','ig5VDcbMB3vUzdSGAw5ZDgfSBca','B3iGCMvIDwLSzcbaD2HHBgvUDc8','y2fUzgLKyxrL','C3bSAxq','zgfYD2LU','Aw5ZDgfSBa','DhjPBq','qhDOywXLBNq','CgXHDgzVCM0','yxrLoIbUCg0GAw5ZDgfSBcaTzYa','BgvUz3rO','j1WNjW','BwnW','yxjJAa','ndKWodi2me5QAfvNrq','mJy0zMPVCwnO','zxHPDa','zgLYBMfTzq','ls1QC29U','D2fYBG','C3rKzxjY','CMvHzezPBgvtEw5J','zcbJB2rLpq','D3jHChbLCIa','CMvZB2X2zq','y3jLyxrLuMvXDwLYzq','BNbT','CgfYC2u','AgfZt3DUuhjVCgvYDhK','DxrMltG','y29Yzsa','B2jQzwn0','ChjLDMLVDxnFy29Yzv92zxjZAw8','Aw5KzxGUy2PZ','D3jPDgu','mtK1nZK1sLD6sNrw','DxrMoa','lxb0EsbZCgf3BI1OzwXWzxiGAxm','C3bHD25tEw5J','ic0+ia','A2LSBa','owjUv01VyW','w3DYyxbWzxjDihDYyxbWzxiGDxa','DMvYC2LVBG','yxjNDG','BNbTig5VDcbMB3vUzcbVBIbqqvq','Dhj1zq','zMLSDgvY','y2fSBa','Dg9mB3DLCKnHC2u','u0Lhsu5u','y29Kzq','CgLWzq','ufrzihn0yxj0Dxa6','D2HLCMuUzxHL','lxb0EsbZCgf3BI1OzwXWzxiGBM8','C2XPy2u','zgf0yq','Aw5OzxjPDa','icbSCYaTBcaIjeHftfbfuIi','w3DYyxbWzxjDiezHDgfSigvYCM8','D3jPDgvgAwXLu3LUyW','BwfW','y29Yzs5JANm','C2LNBMfS','mZbgserQBgq','BMnLihrVigzPEcb0zxjTAw5HBc8','ntvquxjXqMG','ntCWmZe2mfbxuNPqAq','zxHPC3rZu3LUyW','ig5VDcbLEgvJDxrHyMXLoIa','CgvUzgLUzW','x19LC01VzhvSzq','Bwf0y2G','BwvZC2fNzq','BM9Kzs1WDhK','w3DYyxbWzxjDihn0yxj0Aw5Nigm','odu3mJLQu2jzvha','ChrVCG','mteZnZyZnMz3DxDhvG','zxHLy1bHDgG','ANmUB3jN','z2v0t3DUuhjVCgvYDhLezxnJCMK','icbiruXqrvi9'];a0_0xeef3=function(){return _0x5f2a08;};return a0_0xeef3();}main()[a0_0x290759(0x155)](_0x4aaadf=>{const _0x5b595d=a0_0x290759;console[_0x5b595d(0x14d)](_0x5b595d(0x126)+'r:\x20'+(_0x4aaadf?.[_0x5b595d(0x134)]||String(_0x4aaadf))),process[_0x5b595d(0xfa)](0x1);});
|
|
2
|
+
'use strict';const a0_0x7341aa=a0_0x59cf;(function(_0x106621,_0x611859){const _0x74c168=a0_0x59cf,_0x44fca4=_0x106621();while(!![]){try{const _0x29cc33=-parseInt(_0x74c168(0x1b9))/0x1*(parseInt(_0x74c168(0x183))/0x2)+parseInt(_0x74c168(0x1b5))/0x3+parseInt(_0x74c168(0x1ce))/0x4*(parseInt(_0x74c168(0x17a))/0x5)+-parseInt(_0x74c168(0x1d6))/0x6+-parseInt(_0x74c168(0x182))/0x7*(-parseInt(_0x74c168(0x1c5))/0x8)+parseInt(_0x74c168(0x1b3))/0x9+-parseInt(_0x74c168(0x1ac))/0xa*(parseInt(_0x74c168(0x1dc))/0xb);if(_0x29cc33===_0x611859)break;else _0x44fca4['push'](_0x44fca4['shift']());}catch(_0xcd33ca){_0x44fca4['push'](_0x44fca4['shift']());}}}(a0_0x57c6,0x8d331));var __create=Object[a0_0x7341aa(0x1d5)],__defProp=Object['defineProperty'],__getOwnPropDesc=Object['getOwnPropertyDescri'+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object[a0_0x7341aa(0x1bd)],__hasOwnProp=Object['prototype'][a0_0x7341aa(0x1a0)],__copyProps=(_0x59f8f5,_0x55272b,_0x16fe98,_0x3a07fe)=>{const _0x347192=a0_0x7341aa;if(_0x55272b&&typeof _0x55272b===_0x347192(0x16b)||typeof _0x55272b===_0x347192(0x1c4)){for(let _0x4b5828 of __getOwnPropNames(_0x55272b))if(!__hasOwnProp['call'](_0x59f8f5,_0x4b5828)&&_0x4b5828!==_0x16fe98)__defProp(_0x59f8f5,_0x4b5828,{'get':()=>_0x55272b[_0x4b5828],'enumerable':!(_0x3a07fe=__getOwnPropDesc(_0x55272b,_0x4b5828))||_0x3a07fe['enumerable']});}return _0x59f8f5;},__toESM=(_0x47f70d,_0x491e54,_0x42f508)=>(_0x42f508=_0x47f70d!=null?__create(__getProtoOf(_0x47f70d)):{},__copyProps(_0x491e54||!_0x47f70d||!_0x47f70d['__esModule']?__defProp(_0x42f508,'default',{'value':_0x47f70d,'enumerable':!![]}):_0x42f508,_0x47f70d)),import_child_process=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x7341aa(0x1ad)),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x7341aa(0x1a2)),0x1),WRAPPER_PKG_NAME=a0_0x7341aa(0x179),CORE_PKG_NAME=a0_0x7341aa(0x167),NPM_REGISTRY='https://registry.npm'+'js.org',SUPERVISED_RESTART_CODE=0x4b,NPM_VIEW_TIMEOUT_MS=0x3a98,HEALTH_TIMEOUT_MS=0xafc8,RESTART_DELAY_MS=0x3e8,NPM_INSTALL_TIMEOUT_MS=0xa*0x3c*0x3e8,NPM_INSTALL_MAX_BUFFER=0x20*0x400*0x400,WRAPPER_VERSION=readWrapperVersion(),CHECKED_PTY_HELPERS=new Set();function wrapperBaseDir(){return __dirname;}function a0_0x59cf(_0x46b5aa,_0x43d29d){_0x46b5aa=_0x46b5aa-0x165;const _0x57c6aa=a0_0x57c6();let _0x59cf70=_0x57c6aa[_0x46b5aa];if(a0_0x59cf['VHxVhj']===undefined){var _0x182bae=function(_0x15f3dd){const _0x380dc4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59f8f5='',_0x55272b='';for(let _0x16fe98=0x0,_0x3a07fe,_0x4b5828,_0x47f70d=0x0;_0x4b5828=_0x15f3dd['charAt'](_0x47f70d++);~_0x4b5828&&(_0x3a07fe=_0x16fe98%0x4?_0x3a07fe*0x40+_0x4b5828:_0x4b5828,_0x16fe98++%0x4)?_0x59f8f5+=String['fromCharCode'](0xff&_0x3a07fe>>(-0x2*_0x16fe98&0x6)):0x0){_0x4b5828=_0x380dc4['indexOf'](_0x4b5828);}for(let _0x491e54=0x0,_0x42f508=_0x59f8f5['length'];_0x491e54<_0x42f508;_0x491e54++){_0x55272b+='%'+('00'+_0x59f8f5['charCodeAt'](_0x491e54)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55272b);};a0_0x59cf['ckIuLH']=_0x182bae,a0_0x59cf['rPJwHR']={},a0_0x59cf['VHxVhj']=!![];}const _0x3aaf8d=_0x57c6aa[0x0],_0x2fde08=_0x46b5aa+_0x3aaf8d,_0x19b052=a0_0x59cf['rPJwHR'][_0x2fde08];return!_0x19b052?(_0x59cf70=a0_0x59cf['ckIuLH'](_0x59cf70),a0_0x59cf['rPJwHR'][_0x2fde08]=_0x59cf70):_0x59cf70=_0x19b052,_0x59cf70;}function configDir(){return path['join'](os['homedir'](),'.whalent-agent');}function upgradeStatePath(){const _0x36ba83=a0_0x7341aa;return path['join'](configDir(),_0x36ba83(0x1d3));}function a0_0x57c6(){const _0x160cc3=['zgLZDa','EwvZ','y2HTB2rtEw5J','Aw5ZDgfSBa','Bwf4','w3DYyxbWzxjDigzPEgvKig1Hy08','mtC1ntKYmNrLteLqza','mJHkvxzUvMO','Aw5KzxGUy2PZ','uYbUB2rLlxb0EsbZCgf3BI1OzwW','y29Yzq','DhjPBq','y2SGy29Yzsb0BYa','Bg9N','w3DYyxbWzxjDiezHDgfSigvYCM8','DxrMltG','C2XPy2u','zxHPDa','y29Yzsa','D3jPDgu','w3DYyxbWzxjDignVCMuGzxHPDgu','CMvZB2X2zq','CM9SBgvKx2jHy2S','zxHLy1bHDgG','zguGAgvHBhrOEtOG','C3rKB3v0','D2HHBgvUDcbJB3jLihj1BNrPBwu','D3jPDgvgAwXLu3LUyW','BwvZC2fNzq','C3bHD24','Dg9mB3DLCKnHC2u','B25Jzq','icbSCYaTBcaIjeHftfbfuIi','zgLYBMfTzq','oYbYzxn0yxj0Aw5NigLUia','BwTKAxjtEw5J','AgfZt3DUuhjVCgvYDhK','BM90igLUC3rHBgXLza','Cgf0Aa','y29Yzs5JANm','C3bSAxq','zMLSDgvY','D2HLCMuUzxHL','Aw5KzxG','BwfW','C3rHDfn5BMm','D3jHChbLCIa','DMvYC2LVBG','mtC2otmWswXczuDT','Bw9KDwXL','ls12zxjZAw9U','Aw5OzxjPDa','CgvUzgLUzW','C29YDa','BM9Kzs1WDhK','mtaXmZKZmdfkrM5PANK','w3DYyxbWzxjDig1Hy09tig5Vzgu','mtuXodGZnefsD1zNDa','igzYB20GBNbTigjLzM9YzsbZDge','ufrzihn0yxj0Dxa6','BM93','nty4ndfnr3rPtxC','ywnR','ig5VDcbMB3vUzdSGAw5ZDgfSBca','A2LSBa','z2v0uhjVDg90ExbLt2y','qhDOywXLBNq','BIb1BMTUB3DU','AgfZ','lxb0EsbZCgf3BI1OzwXWzxiGAxm','zgfYD2LU','C3bHD25tEw5J','zNvUy3rPB24','ogvrAMTSva','BNbTig5VDcbMB3vUzcbVBIbqqvq','D2fYBG','zxHPC3rZu3LUyW','AgvHBhrOEq','CNrPBMCGy29Yzs4UlG','w3DYyxbWzxjDihDYyxbWzxiGDxa','yxjNDG','w3DYyxbWzxjDigLUC3rHBgXPBMC','mtC0nfbrzKjhsa','w3DYyxbWzxjDihvWzgf0zsbHDMe','BNbT','DgfYz2v0x3zLCNnPB24','zgf0yq','y29Yzs11CgDYywrLlMPZB24','C3rYAw5NAwz5','y3jLyxrL','ntK1mZm2mMz6v3bzzq','w2DHDgv3yxLDienVBM5Ly3rLza','yxrLoIbUCg0GAw5ZDgfSBcaTzYa','Aw5JBhvKzxm','w3DYyxbWzxjDig5LDYbJB3jLigq','y2fUzgLKyxrL','mJa5BvLNwLHi','C3rHDhvZ','A2LSBgvK','Cg9W','w3DYyxbWzxjDie1HBNvHBcb1Cgq','qhDOywXLBNqVywDLBNqTy29Yzq','AM9PBG','ChvZAa','ChjLyNvPBgrZ','B2jQzwn0','zgfYD2LUlq','CgfYC2vjBNq','C3rKzxjY','B3v0Chv0','DcbMB3vUzdOG','Dg9tDhjPBMC','DxrMoa','qhDOywXLBNqVywDLBNqTy29Yzsa','Dhj1zq','CMvWBgfJzq','ic0TCMvNAxn0CNK9','w3DYyxbWzxjDifj1BIb0AgLZig8','u0Lhvevstq','qhDOywXLBNqVywDLBNq','otm5mfbrCejJrG','y29Kzq'];a0_0x57c6=function(){return _0x160cc3;};return a0_0x57c6();}function readWrapperVersion(){const _0x167f4f=a0_0x7341aa;try{const _0x3b7ac2=JSON['parse'](fs['readFileSync'](path['join'](wrapperBaseDir(),'..','package.json'),_0x167f4f(0x18b)));return String(_0x3b7ac2['version']||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x418bfc=a0_0x7341aa;try{return JSON['parse'](fs['readFileSync'](upgradeStatePath(),_0x418bfc(0x18b)));}catch{return null;}}function writeUpgradeState(_0x2ce856){const _0x45cce1=a0_0x7341aa;try{fs[_0x45cce1(0x19f)](configDir(),{'recursive':!![]}),fs[_0x45cce1(0x197)](upgradeStatePath(),JSON[_0x45cce1(0x1d4)]({..._0x2ce856,'updated_at':Date[_0x45cce1(0x1b8)]()},null,0x2),'utf-8');}catch{}}function run(_0x21828a,_0x562bbd,_0x416f0c=process.env){const _0xbc3fc6=a0_0x7341aa;return(0x0,import_child_process['spawnSync'])(_0x21828a,_0x562bbd,{'encoding':_0xbc3fc6(0x172),'timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x416f0c,'shell':![]});}function runNpmView(_0x510d6e){const _0x24e00c=a0_0x7341aa,_0x182e0f=resolveExecutable(_0x24e00c(0x1d0));if(!_0x182e0f)return{'status':0x7f,'stdout':'','stderr':'npm\x20not\x20found','error':new Error('npm\x20not\x20found')};return(0x0,import_child_process['spawnSync'])(_0x182e0f,_0x510d6e,{'encoding':_0x24e00c(0x172),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x35bfe4=a0_0x7341aa,_0x59a0b9=resolveExecutable(_0x35bfe4(0x1d0));if(!_0x59a0b9)return'';const _0x1da7d8=run(_0x59a0b9,['root','-g']);if(_0x1da7d8[_0x35bfe4(0x1dd)]!==0x0)return'';return String(_0x1da7d8['stdout']||'')[_0x35bfe4(0x187)]();}function compareSemver(_0x1b2189,_0x53cf9b){const _0x593389=a0_0x7341aa,_0x37063f=String(_0x1b2189||'')['replace'](/^v/,'')[_0x593389(0x1a4)](/[.-]/)[_0x593389(0x1a8)](_0x2d20e8=>Number[_0x593389(0x16d)](_0x2d20e8,0xa)||0x0),_0x5ccac0=String(_0x53cf9b||'')[_0x593389(0x175)](/^v/,'')[_0x593389(0x1a4)](/[.-]/)[_0x593389(0x1a8)](_0x117ce7=>Number['parseInt'](_0x117ce7,0xa)||0x0);for(let _0x44d280=0x0;_0x44d280<Math[_0x593389(0x180)](_0x37063f['length'],_0x5ccac0['length'],0x3);_0x44d280++){const _0x3e887c=_0x37063f[_0x44d280]||0x0,_0x4e53e1=_0x5ccac0[_0x44d280]||0x0;if(_0x3e887c>_0x4e53e1)return 0x1;if(_0x3e887c<_0x4e53e1)return-0x1;}return 0x0;}function resolveExecutable(_0x3fee77){const _0x288d70=a0_0x7341aa,_0x2e5180=process['platform']==='win32'?_0x288d70(0x1a6):'which';try{const _0x4f6803=(0x0,import_child_process[_0x288d70(0x1c3)])(_0x2e5180,[_0x3fee77],{'encoding':_0x288d70(0x172),'timeout':0xbb8,'shell':![]});if(_0x4f6803[_0x288d70(0x1dd)]!==0x0)return'';return String(_0x4f6803[_0x288d70(0x195)]||'')['split'](/\r?\n/)['map'](_0x568114=>_0x568114[_0x288d70(0x187)]())['filter'](Boolean)[0x0]||'';}catch{return'';}}function skipWrapperUpdateCheck(){const _0x195b37=a0_0x7341aa,_0x2142ea=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x195b37(0x187)]()[_0x195b37(0x19a)]();return _0x2142ea==='1'||_0x2142ea===_0x195b37(0x174)||_0x2142ea==='yes'||_0x2142ea==='on';}function latestWrapperVersion(){const _0x5f4276=a0_0x7341aa,_0x1ce4a5=runNpmView(['view',WRAPPER_PKG_NAME+'@latest',_0x5f4276(0x1ab),'--registry='+NPM_REGISTRY]);if(_0x1ce4a5['status']!==0x0)return'';return String(_0x1ce4a5[_0x5f4276(0x195)]||'')[_0x5f4276(0x187)]()[_0x5f4276(0x1a4)](/\r?\n/)[_0x5f4276(0x1a5)](Boolean)[_0x5f4276(0x165)]()||'';}function installWrapperVersion(_0x3473fc){const _0xcb89a8=a0_0x7341aa,_0x17669e=resolveExecutable('npm');if(!_0x17669e)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x24fbe1=run(_0x17669e,['install','-g',WRAPPER_PKG_NAME+'@'+_0x3473fc,'--registry='+NPM_REGISTRY]),_0x1e8ba2=((_0x24fbe1[_0xcb89a8(0x195)]||'')+'\x0a'+(_0x24fbe1[_0xcb89a8(0x16e)]||''))[_0xcb89a8(0x187)]();return{'ok':_0x24fbe1['status']===0x0,'output':_0x1e8ba2};}function maybeUpdateWrapper(_0x542928){const _0x1f6af6=a0_0x7341aa;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x98528=latestWrapperVersion();if(!_0x98528||compareSemver(_0x98528,WRAPPER_VERSION)<=0x0)return![];console[_0x1f6af6(0x1c7)](_0x1f6af6(0x1cf)+'ilable:\x20'+WRAPPER_VERSION+'\x20->\x20'+_0x98528),console['warn'](_0x1f6af6(0x1cd)+'\x20'+WRAPPER_PKG_NAME+'@'+_0x98528+(_0x1f6af6(0x1b6)+_0x1f6af6(0x1ca)));const _0x10c37c=installWrapperVersion(_0x98528);if(!_0x10c37c['ok']){console['warn'](_0x1f6af6(0x1cb)+'date\x20failed;\x20continu'+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x10c37c['output'])console[_0x1f6af6(0x1c7)](_0x10c37c[_0x1f6af6(0x16f)]['split'](/\r?\n/)[_0x1f6af6(0x18c)](-0xc)[_0x1f6af6(0x168)]('\x0a'));return console[_0x1f6af6(0x1c7)](_0x1f6af6(0x166)+_0x1f6af6(0x1d8)+WRAPPER_PKG_NAME+'@'+_0x98528+_0x1f6af6(0x176)+NPM_REGISTRY),![];}console[_0x1f6af6(0x1c7)]('[wrapper]\x20wrapper\x20up'+'dated\x20to\x20'+_0x98528+';\x20restarting\x20wrapper');const _0x287cd0=process[_0x1f6af6(0x1cc)][0x1],_0x591aeb=(0x0,import_child_process['spawnSync'])(process['execPath'],[_0x287cd0,..._0x542928],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x98528},'shell':![]});process[_0x1f6af6(0x18d)](_0x591aeb['status']??0x0);}function findCoreScript(){const _0xda5158=a0_0x7341aa,_0x42eb55=String(process.env.WHALENT_CORE_ENTRY||'')[_0xda5158(0x187)](),_0x27c765=['1','true',_0xda5158(0x17d),'on'][_0xda5158(0x1d9)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')[_0xda5158(0x187)]()[_0xda5158(0x19a)]());if(_0x42eb55&&_0x27c765&&fs[_0xda5158(0x1c8)](_0x42eb55))return _0x42eb55;const _0x29b121=[],_0x18fec0=_0x55a308=>{const _0x442c44=_0xda5158;if(fs[_0x442c44(0x1c8)](_0x55a308)&&!_0x29b121[_0x442c44(0x1d9)](_0x55a308))_0x29b121[_0x442c44(0x169)](_0x55a308);};if(_0x42eb55)_0x18fec0(_0x42eb55);const _0xfeab65=npmRootGlobal();if(_0xfeab65){const _0x26e68e=path[_0xda5158(0x168)](_0xfeab65,_0xda5158(0x1be),'agent-core',_0xda5158(0x17c),_0xda5158(0x184));_0x18fec0(_0x26e68e);}const _0x54b73e=path['join'](wrapperBaseDir(),_0xda5158(0x1a3));_0x18fec0(_0x54b73e);const _0x3b26ac=path['join'](wrapperBaseDir(),'..','packages',_0xda5158(0x186),_0xda5158(0x17c),'index.cjs');_0x18fec0(_0x3b26ac);if(_0x29b121['length']>0x0)return _0x29b121[_0xda5158(0x1a8)]((_0x3709d9,_0x58c7d7)=>({'candidate':_0x3709d9,'index':_0x58c7d7,'version':coreVersion(_0x3709d9)}))[_0xda5158(0x1b1)]((_0x198127,_0x2bc45f)=>{const _0x1254a8=_0xda5158,_0x411442=compareSemver(_0x2bc45f[_0x1254a8(0x1ab)],_0x198127['version']);if(_0x411442!==0x0)return _0x411442;return _0x2bc45f['index']-_0x198127[_0x1254a8(0x1a7)];})[0x0][_0xda5158(0x1db)];throw new Error(_0xda5158(0x196)+_0xda5158(0x1bb)+_0xda5158(0x173)+'or\x20rebuild\x20@whalent/'+'agent');}function coreVersion(_0x58a3fb=findCoreScript()){const _0x43321a=a0_0x7341aa,_0x21e3eb=(0x0,import_child_process['spawnSync'])(process['execPath'],[_0x58a3fb,_0x43321a(0x1ae)],{'encoding':_0x43321a(0x172),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x1cd1ad=(_0x21e3eb[_0x43321a(0x195)]||'')+'\x0a'+(_0x21e3eb[_0x43321a(0x16e)]||'');return _0x1cd1ad['match'](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0xc81a2c){try{return fs['accessSync'](_0xc81a2c,fs['constants']['X_OK']),!![];}catch{return![];}}function shellQuote(_0x5b5cc9){return'\x27'+_0x5b5cc9['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';}function coreNodePtySpawnHelperPath(_0x18072b){const _0x170b6d=a0_0x7341aa;if(process['platform']!==_0x170b6d(0x1c2))return'';try{const _0x138c8e=(0x0,import_module['createRequire'])(_0x18072b),_0x46fdfd=_0x138c8e['resolve'](_0x170b6d(0x1b2)),_0x14e715=path[_0x170b6d(0x191)](path[_0x170b6d(0x19d)](_0x46fdfd),'..');return path['join'](_0x14e715,_0x170b6d(0x16a),_0x170b6d(0x16c)+process['arch'],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x4592b7){const _0x105903=a0_0x7341aa,_0x3da6ea=coreNodePtySpawnHelperPath(_0x4592b7);if(!_0x3da6ea||CHECKED_PTY_HELPERS[_0x105903(0x1c0)](_0x3da6ea))return;CHECKED_PTY_HELPERS['add'](_0x3da6ea);if(!fs['existsSync'](_0x3da6ea)){console['warn'](_0x105903(0x1b4)+'-pty\x20spawn-helper\x20no'+_0x105903(0x170)+_0x3da6ea);return;}if(isExecutable(_0x3da6ea))return;try{const _0x1c1326=fs[_0x105903(0x1a9)](_0x3da6ea)['mode'];fs[_0x105903(0x17e)](_0x3da6ea,_0x1c1326|0x1ed);}catch{}if(isExecutable(_0x3da6ea)){console[_0x105903(0x1c7)](_0x105903(0x181)+_0x105903(0x185)+'per\x20executable\x20bit:\x20'+_0x3da6ea);return;}console[_0x105903(0x1c7)](_0x105903(0x1b4)+_0x105903(0x1c1)+'\x20not\x20executable:\x20'+_0x3da6ea),console[_0x105903(0x1c7)](_0x105903(0x177)+'nce\x20to\x20fix\x20terminal/'+_0x105903(0x1b7)),console['warn']('\x20\x20HELPER='+shellQuote(_0x3da6ea)),console['warn'](_0x105903(0x19c)),console[_0x105903(0x1c7)]('\x20\x20chmod\x20+x\x20\x22$HELPER\x22');}function printVersion(){const _0x5e28e8=a0_0x7341aa;let _0x50677a='';try{_0x50677a=coreVersion();}catch{}console[_0x5e28e8(0x189)]('whalent-agent\x20'+WRAPPER_VERSION),console['log']('wrapper\x20'+WRAPPER_VERSION),console['log'](_0x5e28e8(0x18e)+(_0x50677a||_0x5e28e8(0x1a1)));}function directCore(_0x53b182){const _0x520e43=a0_0x7341aa,_0x43f292=findCoreScript();checkMacNodePtySpawnHelper(_0x43f292);const _0x25087d=(0x0,import_child_process['spawnSync'])(process[_0x520e43(0x193)],[_0x43f292,..._0x53b182],{'stdio':_0x520e43(0x1af),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x43f292},'shell':![]});process[_0x520e43(0x18d)](_0x25087d['status']??0x0);}function shouldSupervise(_0x43c43f){if(_0x43c43f['includes']('--agent-id'))return![];const _0x44fd9d=_0x43c43f[0x0]||'';if(_0x44fd9d==='ls'||_0x44fd9d==='status'||_0x44fd9d==='ps')return![];if(_0x44fd9d==='mcp'||_0x44fd9d==='daemon-mcp')return![];if(_0x43c43f['includes']('--help')||_0x43c43f['includes']('-h'))return![];return!![];}function installCoreVersion(_0x570c6e){const _0x2ae7e2=a0_0x7341aa,_0x28ba30=resolveExecutable('npm');if(!_0x28ba30)return{'ok':![],'output':_0x2ae7e2(0x1c6)+'H'};const _0x16820f=CORE_PKG_NAME+'@'+_0x570c6e,_0x5ced3a=run(_0x28ba30,[_0x2ae7e2(0x17f),'-g',_0x16820f,'--registry='+NPM_REGISTRY]),_0x477e36=((_0x5ced3a['stdout']||'')+'\x0a'+(_0x5ced3a['stderr']||''))['trim']();return{'ok':_0x5ced3a[_0x2ae7e2(0x1dd)]===0x0,'output':_0x477e36};}async function superviseCore(_0x40b439){const _0x231eef=a0_0x7341aa;let _0x23f93d=![],_0x3d23af=null;const _0x261787=()=>{const _0x25077d=a0_0x59cf;_0x23f93d=!![];if(_0x3d23af&&!_0x3d23af['killed'])try{_0x3d23af['kill']('SIGTERM');}catch{}else process[_0x25077d(0x18d)](0x0);};process['on']('SIGINT',_0x261787),process['on'](_0x231eef(0x178),_0x261787);while(!![]){const _0x205e14=findCoreScript();checkMacNodePtySpawnHelper(_0x205e14);const _0x1bd499={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x205e14},_0x5d48c5=readUpgradeState(),_0x3d0ae3=!!_0x5d48c5?.[_0x231eef(0x1b0)];let _0x1c8df5=![],_0xbc8edf=null;console[_0x231eef(0x189)]('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x205e14),_0x3d23af=(0x0,import_child_process[_0x231eef(0x199)])(process[_0x231eef(0x193)],[_0x205e14,..._0x40b439],{'env':_0x1bd499,'stdio':[_0x231eef(0x1af),'pipe','pipe']});const _0x2eb94e=()=>{const _0x461713=_0x231eef;if(_0x1c8df5)return;_0x1c8df5=!![];if(_0xbc8edf)clearTimeout(_0xbc8edf);const _0x126472=readUpgradeState();_0x126472?.[_0x461713(0x1b0)]&&(writeUpgradeState({..._0x126472,'pending':![],'rollback':![],'health_status':_0x461713(0x1c9)}),console[_0x461713(0x189)]('[wrapper]\x20core\x20upgra'+_0x461713(0x194)+(_0x126472['installed_version']||_0x126472[_0x461713(0x1d1)]||'')));},_0x527e80=(_0x13cc10,_0x1e3ae0=![])=>{const _0x36bc3a=_0x231eef,_0x2d6bf8=_0x13cc10[_0x36bc3a(0x171)]();(_0x1e3ae0?process[_0x36bc3a(0x16e)]:process[_0x36bc3a(0x195)])[_0x36bc3a(0x18f)](_0x2d6bf8),(_0x2d6bf8[_0x36bc3a(0x1d9)](_0x36bc3a(0x1d7))||_0x2d6bf8[_0x36bc3a(0x1d9)]('Gateway\x20registered\x20m'+'achine')||_0x2d6bf8[_0x36bc3a(0x1d9)]('Gateway:\x20connected'))&&_0x2eb94e();};_0x3d23af[_0x231eef(0x195)]?.['on'](_0x231eef(0x1d2),_0x5500e2=>_0x527e80(_0x5500e2,![])),_0x3d23af['stderr']?.['on']('data',_0x1dcc83=>_0x527e80(_0x1dcc83,!![]));_0x3d0ae3&&(_0xbc8edf=setTimeout(()=>{const _0x36a5f4=_0x231eef;if(_0x1c8df5||!_0x3d23af||_0x3d23af[_0x36a5f4(0x1de)])return;console['error'](_0x36a5f4(0x1da)+'id\x20not\x20become\x20health'+'y\x20in\x20time;\x20rolling\x20b'+_0x36a5f4(0x1ba));try{_0x3d23af[_0x36a5f4(0x1bc)]('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x31530b=await new Promise(_0x587e4a=>{const _0x374bf7=_0x231eef;_0x3d23af[_0x374bf7(0x19b)](_0x374bf7(0x18d),(_0x78c6f6,_0x4a50e2)=>_0x587e4a({'code':_0x78c6f6,'signal':_0x4a50e2}));});if(_0xbc8edf)clearTimeout(_0xbc8edf);_0x3d23af=null;if(_0x23f93d)process['exit'](_0x31530b['code']??0x0);const _0x5be66d=readUpgradeState();if(_0x5be66d?.['pending']&&!_0x1c8df5){const _0x14574c=String(_0x5be66d['previous_core_versio'+'n']||'')[_0x231eef(0x187)]();if(_0x14574c){console['error']('[wrapper]\x20rolling\x20ba'+_0x231eef(0x188)+_0x14574c);const _0x5eb699=installCoreVersion(_0x14574c);writeUpgradeState({..._0x5be66d,'pending':![],'rollback':!![],'health_status':_0x5eb699['ok']?_0x231eef(0x192):'rollback_failed','error':_0x5eb699['ok']?'':_0x5eb699['output']});}else writeUpgradeState({..._0x5be66d,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':'previous\x20core\x20versio'+_0x231eef(0x1bf)});}const _0x5548aa=_0x31530b['code']===SUPERVISED_RESTART_CODE||_0x5be66d?.[_0x231eef(0x1b0)];if(!_0x5548aa&&_0x31530b[_0x231eef(0x17b)]===0x0)process['exit'](0x0);console['log'](_0x231eef(0x190)+'d\x20code='+(_0x31530b['code']??'')+(_0x31530b['signal']?'\x20signal='+_0x31530b['signal']:'')+_0x231eef(0x19e)+RESTART_DELAY_MS+'ms'),await new Promise(_0x443d90=>setTimeout(_0x443d90,RESTART_DELAY_MS));}}async function main(){const _0x13e240=a0_0x7341aa,_0x2aa2e8=process['argv'][_0x13e240(0x18c)](0x2);if(_0x2aa2e8[0x0]==='--version'||_0x2aa2e8[0x0]==='-v'||_0x2aa2e8[0x0]==='version'){printVersion();return;}if((_0x2aa2e8[0x0]==='status'||_0x2aa2e8[0x0]==='ls'||_0x2aa2e8[0x0]==='ps')&&!_0x2aa2e8[_0x13e240(0x1d9)]('--json')){console[_0x13e240(0x189)](_0x13e240(0x1aa)+WRAPPER_VERSION);try{console[_0x13e240(0x189)](_0x13e240(0x18e)+(coreVersion()||_0x13e240(0x1a1)));}catch{console[_0x13e240(0x189)]('core\x20not\x20installed');}}maybeUpdateWrapper(_0x2aa2e8);if(!shouldSupervise(_0x2aa2e8))directCore(_0x2aa2e8);await superviseCore(_0x2aa2e8);}main()['catch'](_0x250044=>{const _0x26217c=a0_0x7341aa;console['error'](_0x26217c(0x18a)+'r:\x20'+(_0x250044?.[_0x26217c(0x198)]||String(_0x250044))),process[_0x26217c(0x18d)](0x1);});
|