@whalent/agent 0.3.100 → 0.3.101
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 +4 -2
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict';const a0_0x4376c1=a0_0x3884;(function(_0x241b09,_0x4532da){const _0x4b6fc1=a0_0x3884,_0x32f02a=_0x241b09();while(!![]){try{const _0x19912b=-parseInt(_0x4b6fc1(0x177))/0x1+parseInt(_0x4b6fc1(0xdf))/0x2*(-parseInt(_0x4b6fc1(0x170))/0x3)+-parseInt(_0x4b6fc1(0x104))/0x4+-parseInt(_0x4b6fc1(0xdb))/0x5*(-parseInt(_0x4b6fc1(0x103))/0x6)+-parseInt(_0x4b6fc1(0x10b))/0x7*(parseInt(_0x4b6fc1(0xe3))/0x8)+-parseInt(_0x4b6fc1(0x11b))/0x9+parseInt(_0x4b6fc1(0x111))/0xa;if(_0x19912b===_0x4532da)break;else _0x32f02a['push'](_0x32f02a['shift']());}catch(_0x576e50){_0x32f02a['push'](_0x32f02a['shift']());}}}(a0_0x3952,0x4ae52));var __create=Object[a0_0x4376c1(0x124)],__defProp=Object['defineProperty'],__getOwnPropDesc=Object[a0_0x4376c1(0x17b)+'ptor'],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object[a0_0x4376c1(0x112)],__hasOwnProp=Object['prototype'][a0_0x4376c1(0x16f)],__copyProps=(_0x35f881,_0x4b07aa,_0x48d0eb,_0x345baf)=>{if(_0x4b07aa&&typeof _0x4b07aa==='object'||typeof _0x4b07aa==='function'){for(let _0x295c1a of __getOwnPropNames(_0x4b07aa))if(!__hasOwnProp['call'](_0x35f881,_0x295c1a)&&_0x295c1a!==_0x48d0eb)__defProp(_0x35f881,_0x295c1a,{'get':()=>_0x4b07aa[_0x295c1a],'enumerable':!(_0x345baf=__getOwnPropDesc(_0x4b07aa,_0x295c1a))||_0x345baf['enumerable']});}return _0x35f881;},__toESM=(_0x917d2a,_0x4769bf,_0x3dd715)=>(_0x3dd715=_0x917d2a!=null?__create(__getProtoOf(_0x917d2a)):{},__copyProps(_0x4769bf||!_0x917d2a||!_0x917d2a[a0_0x4376c1(0x114)]?__defProp(_0x3dd715,a0_0x4376c1(0xfd),{'value':_0x917d2a,'enumerable':!![]}):_0x3dd715,_0x917d2a)),import_child_process2=require('child_process'),fs=__toESM(require('fs'),0x1),import_module=require(a0_0x4376c1(0x12d)),os=__toESM(require('os'),0x1),path=__toESM(require(a0_0x4376c1(0x108)),0x1),import_child_process=require('child_process'),import_fs=require('fs'),import_path=require(a0_0x4376c1(0x108));function isWindowsCmdFile(_0x37136f){const _0x564864=a0_0x4376c1;return process[_0x564864(0x105)]==='win32'&&/\.(cmd|bat)$/i[_0x564864(0xdc)](_0x37136f||'');}function quoteCmdArg(_0x468254){const _0x3b5b39=a0_0x4376c1,_0x3d1be2=String(_0x468254??'');if(_0x3d1be2&&!/[\s"&|<>^%]/['test'](_0x3d1be2))return _0x3d1be2;return'\x22'+_0x3d1be2['replace'](/(["^&|<>%])/g,_0x3b5b39(0x106))+'\x22';}function cmdFallbackArgs(_0x42e6bc,_0x173d68){const _0x29e183=a0_0x4376c1;return['/d','/s','/c',[quoteCmdArg(_0x42e6bc),..._0x173d68['map'](quoteCmdArg)][_0x29e183(0x11d)]('\x20')];}function resolveExecutablePath(_0x3b7b4b){const _0xec7c0b=a0_0x4376c1;if(!_0x3b7b4b)return null;if(_0x3b7b4b['includes']('/')||_0x3b7b4b['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0xec7c0b(0xdc)](_0x3b7b4b))return(0x0,import_fs['existsSync'])(_0x3b7b4b)?_0x3b7b4b:_0x3b7b4b;const _0x355ff6=process[_0xec7c0b(0x105)]===_0xec7c0b(0x121),_0x266a60=_0x355ff6?'where.exe':_0xec7c0b(0x10c);try{const _0x1413fa=(0x0,import_child_process['spawnSync'])(_0x266a60,[_0x3b7b4b],{'encoding':_0xec7c0b(0xec),'timeout':0xbb8,'shell':![]});if(_0x1413fa[_0xec7c0b(0xd2)]===0x0){const _0x5cce22=(_0x1413fa['stdout']||'')[_0xec7c0b(0x13a)]()['split'](/\r?\n/)['filter'](Boolean);if(_0x5cce22['length']===0x0)return null;if(_0x355ff6)for(const _0x290970 of['.exe',_0xec7c0b(0xe6),_0xec7c0b(0x174),_0xec7c0b(0xf1)]){const _0x32a0ba=_0x5cce22[_0xec7c0b(0x122)](_0x54cca0=>_0x54cca0[_0xec7c0b(0x101)]()[_0xec7c0b(0xd7)](_0x290970));if(_0x32a0ba)return _0x32a0ba;}return _0x5cce22[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0x3895ea){const _0x1df663=a0_0x4376c1;if(process[_0x1df663(0x105)]!==_0x1df663(0x121))return null;if(!/\.(cmd|bat)$/i['test'](_0x3895ea))return null;let _0x134f81;try{_0x134f81=(0x0,import_fs[_0x1df663(0x11c)])(_0x3895ea,_0x1df663(0xec));}catch{return null;}const _0x3cc144=_0x134f81['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x3cc144){const _0x49dbc7=(0x0,import_path['resolve'])((0x0,import_path[_0x1df663(0x130)])(_0x3895ea),_0x3cc144[0x2]);if((0x0,import_fs[_0x1df663(0x119)])(_0x49dbc7))return{'type':_0x1df663(0x16b),'path':_0x49dbc7};}const _0x351885=_0x134f81['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x351885){const _0x4ece52=(0x0,import_path[_0x1df663(0x162)])((0x0,import_path[_0x1df663(0x130)])(_0x3895ea),_0x351885[0x2]);if((0x0,import_fs['existsSync'])(_0x4ece52))return{'type':'exe','path':_0x4ece52};}return null;}function safeSpawnSync(_0x1fc301,_0x11bb12,_0x1bf63c={}){const _0x1ba6e4=a0_0x4376c1,_0x13b667=unwrapWindowsCmdShim(_0x1fc301);if(_0x13b667?.['type']==='node')return(0x0,import_child_process[_0x1ba6e4(0x155)])(process[_0x1ba6e4(0xd4)],[_0x13b667[_0x1ba6e4(0x108)],..._0x11bb12],_0x1bf63c);if(_0x13b667?.['type']===_0x1ba6e4(0xfc))return(0x0,import_child_process[_0x1ba6e4(0x155)])(_0x13b667[_0x1ba6e4(0x108)],_0x11bb12,_0x1bf63c);if(isWindowsCmdFile(_0x1fc301))return(0x0,import_child_process['spawnSync'])(process.env.ComSpec||_0x1ba6e4(0xf4),cmdFallbackArgs(_0x1fc301,_0x11bb12),_0x1bf63c);return(0x0,import_child_process[_0x1ba6e4(0x155)])(_0x1fc301,_0x11bb12,_0x1bf63c);}var WRAPPER_PKG_NAME=a0_0x4376c1(0x127),CORE_PKG_NAME=a0_0x4376c1(0x157),NPM_REGISTRY=a0_0x4376c1(0x144)+a0_0x4376c1(0x125),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 _0x1ea156=a0_0x4376c1;return path['join'](os[_0x1ea156(0xee)](),_0x1ea156(0x128));}function upgradeStatePath(){return path['join'](configDir(),'core-upgrade.json');}function lastCrashFilePath(){const _0x34512b=a0_0x4376c1;return path[_0x34512b(0x11d)](configDir(),'last-crash.json');}function writeLastCrash(_0x2773b5){const _0x6ac0bb=a0_0x4376c1;try{fs['mkdirSync'](configDir(),{'recursive':!![]});const _0x51072e={..._0x2773b5,'reported':![]};fs[_0x6ac0bb(0xfb)](lastCrashFilePath(),JSON[_0x6ac0bb(0x169)](_0x51072e,null,0x2),'utf-8');}catch{}}function readWrapperVersion(){const _0x128df5=a0_0x4376c1;try{const _0x374338=JSON[_0x128df5(0x12a)](fs[_0x128df5(0x11c)](path[_0x128df5(0x11d)](wrapperBaseDir(),'..','package.json'),_0x128df5(0xec)));return String(_0x374338['version']||_0x128df5(0x132));}catch{return'0.0.0';}}function readUpgradeState(){try{return JSON['parse'](fs['readFileSync'](upgradeStatePath(),'utf-8'));}catch{return null;}}function writeUpgradeState(_0x23614b){const _0x13af21=a0_0x4376c1;try{fs['mkdirSync'](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON[_0x13af21(0x169)]({..._0x23614b,'updated_at':Date[_0x13af21(0x13d)]()},null,0x2),_0x13af21(0xec));}catch{}}function run(_0x2c0933,_0x453ba6,_0x523d1d=process.env){return safeSpawnSync(_0x2c0933,_0x453ba6,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x523d1d,'shell':![]});}function a0_0x3884(_0x50fdd4,_0x1cb696){_0x50fdd4=_0x50fdd4-0xcc;const _0x3952ff=a0_0x3952();let _0x3884fd=_0x3952ff[_0x50fdd4];if(a0_0x3884['MMuAEn']===undefined){var _0x152ddb=function(_0x49fc54){const _0xeafff9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35f881='',_0x4b07aa='';for(let _0x48d0eb=0x0,_0x345baf,_0x295c1a,_0x917d2a=0x0;_0x295c1a=_0x49fc54['charAt'](_0x917d2a++);~_0x295c1a&&(_0x345baf=_0x48d0eb%0x4?_0x345baf*0x40+_0x295c1a:_0x295c1a,_0x48d0eb++%0x4)?_0x35f881+=String['fromCharCode'](0xff&_0x345baf>>(-0x2*_0x48d0eb&0x6)):0x0){_0x295c1a=_0xeafff9['indexOf'](_0x295c1a);}for(let _0x4769bf=0x0,_0x3dd715=_0x35f881['length'];_0x4769bf<_0x3dd715;_0x4769bf++){_0x4b07aa+='%'+('00'+_0x35f881['charCodeAt'](_0x4769bf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4b07aa);};a0_0x3884['wEnBpx']=_0x152ddb,a0_0x3884['uCyGDX']={},a0_0x3884['MMuAEn']=!![];}const _0x33713f=_0x3952ff[0x0],_0x22e0bf=_0x50fdd4+_0x33713f,_0x7ba1bb=a0_0x3884['uCyGDX'][_0x22e0bf];return!_0x7ba1bb?(_0x3884fd=a0_0x3884['wEnBpx'](_0x3884fd),a0_0x3884['uCyGDX'][_0x22e0bf]=_0x3884fd):_0x3884fd=_0x7ba1bb,_0x3884fd;}function runNpmView(_0x8bb574){const _0x3a068b=a0_0x4376c1,_0xe724cf=resolveExecutablePath(_0x3a068b(0xcf));if(!_0xe724cf)return{'status':0x7f,'stdout':'','stderr':_0x3a068b(0x11f),'error':new Error('npm\x20not\x20found')};return safeSpawnSync(_0xe724cf,_0x8bb574,{'encoding':_0x3a068b(0xf2),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x40e5ff=a0_0x4376c1,_0x43288a=resolveExecutablePath('npm');if(!_0x43288a)return'';const _0x1b1b39=run(_0x43288a,[_0x40e5ff(0x102),'-g']);if(_0x1b1b39[_0x40e5ff(0xd2)]!==0x0)return'';return String(_0x1b1b39['stdout']||'')[_0x40e5ff(0x13a)]();}function a0_0x3952(){const _0x1490a4=['CM9VDa','nMvKrMDswG','mtK2ndyYmfz3zMzrAG','CgXHDgzVCM0','xIqX','Chr5lM5Vzgu','Cgf0Aa','zxjYB3i','C2XPy2u','mte0nteWmLnLu2vosG','D2HPy2G','w2DHDgv3yxLDienVBM5Ly3rLza','Aw5OzxjPDa','ChjLDMLVDxmGy29Yzsb2zxjZAw8','C3bSAxq','mtG0odG0odbdBLv6CKG','z2v0uhjVDg90ExbLt2y','CMvIDwLSza','x19LC01VzhvSzq','DMLLDW','uYbUB2rLlxb0EsbZCgf3BI1OzwW','CNrPBMCGy29Yzs4UlG','qhDOywXLBNqVywDLBNqTy29Yzsa','zxHPC3rZu3LUyW','CgfYC2vjBNq','nta4nZK3mhDVyxrJAq','CMvHzezPBgvtEw5J','AM9PBG','B3v0Chv0','BNbTig5VDcbMB3vUza','zguGAgvHBhrOEtOG','D2LUmZi','zMLUza','Dg9tDhjPBMC','y3jLyxrL','ANmUB3jN','w3DYyxbWzxjDie1HBNvHBcb1Cgq','qhDOywXLBNqVywDLBNq','lNDOywXLBNqTywDLBNq','ihnPz25HBd0','CgfYC2u','ChjLyNvPBgrZ','Bwf4','Bw9KDwXL','BIb1BMTUB3DU','ywjSzsbMB3iGy29YztOG','zgLYBMfTzq','w3DYyxbWzxjDig5VzguTChr5ihi','mc4WlJa','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','y29Yzsa','BM9Kzs1WDhKGyxv0B21HDgLJywW','DMvYC2LVBG','w3DYyxbWzxjDig1Hy09tig5Vzgu','w3DYyxbWzxjDig5WBsbUB3qGzM8','yxrPDMuGBw9KDwXLigLZig1PC3m','DhjPBq','w3DYyxbWzxjDignVCMuGzMfPBgu','Aw5KzxGUy2PZ','BM93','A2LSBgvK','CgLWzq','D3jHChbLCIa','Aw5NihvUzgvYia','Dhj1zq','w3DYyxbWzxjDihjLyNvPBgrPBMC','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','ChjLDMLVDxnFy29Yzv92zxjZAw8','icbSCYaTBcaIjeHftfbfuIi','icbUCg0GCMvIDwLSzcbUB2rLlxa','BwvZC2fNzq','yxjJAa','D2fYBG','igLUia','BMfTzq','igzYB20GBNbTigjLzM9YzsbZDge','AwXHyMXLoIa','yxjNDG','DgfYDa','y2SGy29Yzsb0BYa','CMvZDw1L','CMvWBgfJzq','DgfYz2v0x3zLCNnPB24','C3bHD25tEw5J','EwvZ','qhDOywXLBNqVywDLBNqTy29Yzq','D3jPDgu','CgvUzgLUzW','ls1OzwXW','qhDOywXLBNq','y29Yzq','BwfW','C3rKzxjY','CZSGz2L2Aw5NihvWlIbdCMfZAca','w3DYyxbWzxjDigzPEgvKig1Hy08','icbJzca','CMvZB2X2zq','j1WNjW','C2HPzNq','D2HHBgvUDcbJB3jLihj1BNrPBwu','ls1QC29U','zwj1AwXKignVBxbSzxrLza','zxbLBMrLBMn5ig5VDcbYzxnVBhy','C3rYAw5NAwz5','ls1Hz2vUDc1Pza','BM9Kzq','ywDLBNqTy29Yzq','ywnJzxnZu3LUyW','w3DYyxbWzxjDie1HBNvHBcbMAxG','AgfZt3DUuhjVCgvYDhK','ode5mJC5B3Pdv214','CM9SBgvKx2jHy2S','C2LNBMfS','Cg9W','lMjHDa','CMvHBhbHDgHtEw5J','ig5VDcbMB3vUzdSGAw5ZDgfSBca','nZmXmdfgvK1hCMu','CM9SBgjHy2TFzMfPBgvK','lxb0EsbZCgf3BI1OzwXWzxiGBM8','CJOG','z2v0t3DUuhjVCgvYDhLezxnJCMK','zgf0yq','zgfYD2LU','zxHPDa','ls12zxjZAw9U','w3DYyxbWzxjDihn0yxj0Aw5Nigm','DhKGls12zxjIB3nL','Aw5ZDgfSBgvKx3zLCNnPB24','BNbT','Bg9N','Aw5KzxG','C3rHDhvZ','C29YDa','zxHLy1bHDgG','w3DYyxbWzxjDihDYyxbWzxiGDxa','Bwf0y2G','zw5KC1DPDgG','C29Tzq','y29UC3rHBNrZ','Aw5JBhvKzxm','mtC1nJC5nw9SEeDSEG','DgvZDa','BNbTig5VDcbMB3vUzcbVBIbqqvq','ywDLBNq','mKXOzM9rvG','BM9Kzs1WDhK','w3DYyxbWzxjDignVCMuGzxHPDgu','w3DYyxbWzxjDihjLC3rHCNrPBMC','mJrqq2LrCwi','ihrPBwvZihDPDgHPBIa','Aw5NihDPDgGG','lMnTza','u0Lhvevstq','y2f0y2G','C3rKB3v0','ChvZAa','zcbJB2rLpq','DxrMltG','BgvUz3rO','Ag9TzwrPCG','r2f0zxDHEsbYzwDPC3rLCMvKig0','zgf0zwqGDg8G','lNbZmq','DxrMoa','zgfYD2LUlq','y21KlMv4zq','qgXHDgvZDa','y3jLyxrLuMvXDwLYzq','icbJAg1VzcaREcaIjeHftfbfuIi','CM91BMq','ls1YzwDPC3rYEt0','Aw5ZDgfSBa','D3jPDgvgAwXLu3LUyW','zxHL','zgvMyxvSDa','y29Kzq','w3DYyxbWzxjDig5VzguTChr5ig4','Bw9Kzq','Dg9mB3DLCKnHC2u'];a0_0x3952=function(){return _0x1490a4;};return a0_0x3952();}function compareSemver(_0x1a57ee,_0x5a9f20){const _0xc3b9d1=a0_0x4376c1,_0x354b35=String(_0x1a57ee||'')['replace'](/^v/,'')[_0xc3b9d1(0x110)](/[.-]/)['map'](_0x536ea5=>Number[_0xc3b9d1(0x11a)](_0x536ea5,0xa)||0x0),_0x244ec5=String(_0x5a9f20||'')[_0xc3b9d1(0x153)](/^v/,'')['split'](/[.-]/)[_0xc3b9d1(0x15d)](_0x14fc68=>Number[_0xc3b9d1(0x11a)](_0x14fc68,0xa)||0x0);for(let _0xe8ab0b=0x0;_0xe8ab0b<Math[_0xc3b9d1(0x12c)](_0x354b35['length'],_0x244ec5['length'],0x3);_0xe8ab0b++){const _0xd94a7e=_0x354b35[_0xe8ab0b]||0x0,_0x59f427=_0x244ec5[_0xe8ab0b]||0x0;if(_0xd94a7e>_0x59f427)return 0x1;if(_0xd94a7e<_0x59f427)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x9bd87e=a0_0x4376c1,_0x1d2c17=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')[_0x9bd87e(0x13a)]()['toLowerCase']();return _0x1d2c17==='1'||_0x1d2c17===_0x9bd87e(0x142)||_0x1d2c17===_0x9bd87e(0x156)||_0x1d2c17==='on';}function latestWrapperVersion(){const _0x67be28=a0_0x4376c1,_0x9038c6=runNpmView([_0x67be28(0x115),WRAPPER_PKG_NAME+_0x67be28(0xf5),'version',_0x67be28(0xf9)+NPM_REGISTRY]);if(_0x9038c6[_0x67be28(0xd2)]!==0x0)return'';return String(_0x9038c6[_0x67be28(0xe9)]||'')[_0x67be28(0x13a)]()[_0x67be28(0x110)](/\r?\n/)['filter'](Boolean)[_0x67be28(0x173)]()||'';}function installWrapperVersion(_0x225b7d){const _0x368d3a=a0_0x4376c1,_0x15d2c3=resolveExecutablePath('npm');if(!_0x15d2c3)return{'ok':![],'output':_0x368d3a(0xdd)+'H'};const _0x3e0bbd=run(_0x15d2c3,[_0x368d3a(0xfa),'-g',WRAPPER_PKG_NAME+'@'+_0x225b7d,_0x368d3a(0xf9)+NPM_REGISTRY]),_0xa64c9a=((_0x3e0bbd[_0x368d3a(0xe9)]||'')+'\x0a'+(_0x3e0bbd[_0x368d3a(0x15e)]||''))[_0x368d3a(0x13a)]();return{'ok':_0x3e0bbd[_0x368d3a(0xd2)]===0x0,'output':_0xa64c9a};}function maybeUpdateWrapper(_0x111142){const _0x17d8f2=a0_0x4376c1;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x4763c0=latestWrapperVersion();if(!_0x4763c0||compareSemver(_0x4763c0,WRAPPER_VERSION)<=0x0)return![];console[_0x17d8f2(0x14a)]('[wrapper]\x20update\x20ava'+_0x17d8f2(0x14e)+WRAPPER_VERSION+'\x20->\x20'+_0x4763c0),console['warn']('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x4763c0+(_0x17d8f2(0x14d)+'rting\x20core...'));const _0x10cc78=installWrapperVersion(_0x4763c0);if(!_0x10cc78['ok']){console[_0x17d8f2(0x14a)](_0x17d8f2(0xd5)+'date\x20failed;\x20continu'+_0x17d8f2(0xe5)+WRAPPER_VERSION);if(_0x10cc78[_0x17d8f2(0x11e)])console[_0x17d8f2(0x14a)](_0x10cc78[_0x17d8f2(0x11e)]['split'](/\r?\n/)['slice'](-0xc)[_0x17d8f2(0x11d)]('\x0a'));return console[_0x17d8f2(0x14a)](_0x17d8f2(0x126)+'ate:\x20npm\x20install\x20-g\x20'+WRAPPER_PKG_NAME+'@'+_0x4763c0+'\x20--registry='+NPM_REGISTRY),![];}console[_0x17d8f2(0x14a)]('[wrapper]\x20wrapper\x20up'+_0x17d8f2(0xf0)+_0x4763c0+';\x20restarting\x20wrapper');const _0x3ef2d3=process['argv'][0x1],_0x5edafc=(0x0,import_child_process2[_0x17d8f2(0x155)])(process[_0x17d8f2(0xd4)],[_0x3ef2d3,..._0x111142],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x4763c0},'shell':![]});process[_0x17d8f2(0x17e)](_0x5edafc[_0x17d8f2(0xd2)]??0x0);}function findCoreScript(){const _0x36ab3f=a0_0x4376c1,_0x4fd61a=String(process.env.WHALENT_CORE_ENTRY||'')[_0x36ab3f(0x13a)](),_0x1fea27=['1',_0x36ab3f(0x142),'yes','on'][_0x36ab3f(0xda)](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')[_0x36ab3f(0x13a)]()['toLowerCase']());if(_0x4fd61a&&_0x1fea27&&fs[_0x36ab3f(0x119)](_0x4fd61a))return _0x4fd61a;const _0x51478f=[],_0x17c9b2=_0x261c32=>{if(fs['existsSync'](_0x261c32)&&!_0x51478f['includes'](_0x261c32))_0x51478f['push'](_0x261c32);};if(_0x4fd61a)_0x17c9b2(_0x4fd61a);const _0x367238=npmRootGlobal();if(_0x367238){const _0x179aa3=path[_0x36ab3f(0x11d)](_0x367238,_0x36ab3f(0x15b),_0x36ab3f(0x16c),'dist',_0x36ab3f(0x13c));_0x17c9b2(_0x179aa3);}const _0x190082=path[_0x36ab3f(0x11d)](wrapperBaseDir(),'core.cjs');_0x17c9b2(_0x190082);const _0x20ef3a=path['join'](wrapperBaseDir(),'..','packages',_0x36ab3f(0x15c),'dist','index.cjs');_0x17c9b2(_0x20ef3a);if(_0x51478f[_0x36ab3f(0xed)]>0x0)return _0x51478f['map']((_0x54f453,_0x27ef88)=>({'candidate':_0x54f453,'index':_0x27ef88,'version':coreVersion(_0x54f453)}))[_0x36ab3f(0xd3)]((_0x14302c,_0x5d45be)=>{const _0x21a818=_0x36ab3f,_0x251ddf=compareSemver(_0x5d45be[_0x21a818(0x136)],_0x14302c[_0x21a818(0x136)]);if(_0x251ddf!==0x0)return _0x251ddf;return _0x5d45be[_0x21a818(0xd1)]-_0x14302c['index'];})[0x0]['candidate'];throw new Error(_0x36ab3f(0x165)+_0x36ab3f(0x176)+_0x36ab3f(0x118)+'or\x20rebuild\x20@whalent/'+_0x36ab3f(0xde));}function coreVersion(_0x516557=findCoreScript()){const _0x3dc063=a0_0x4376c1,_0x1ceddb=(0x0,import_child_process2['spawnSync'])(process[_0x3dc063(0xd4)],[_0x516557,'--version'],{'encoding':'utf8','timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x74bdae=(_0x1ceddb['stdout']||'')+'\x0a'+(_0x1ceddb['stderr']||'');return _0x74bdae[_0x3dc063(0xd6)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x591c41){const _0x778f5e=a0_0x4376c1;try{return fs[_0x778f5e(0x16d)](_0x591c41,fs[_0x778f5e(0xd9)]['X_OK']),!![];}catch{return![];}}function shellQuote(_0x27aafe){const _0x25c1cd=a0_0x4376c1;return'\x27'+_0x27aafe['replace'](/'/g,_0x25c1cd(0x163))+'\x27';}function corePackageRoot(_0x220edb){const _0x218a8d=a0_0x4376c1;return path[_0x218a8d(0x162)](path['dirname'](_0x220edb),'..');}function nodePtyPackageRoot(_0x4b101f){const _0x12fd72=a0_0x4376c1,_0x3ab7b9=(0x0,import_module[_0x12fd72(0xf6)])(_0x4b101f),_0x27ec83=_0x3ab7b9['resolve']('node-pty');let _0xe388b8=path[_0x12fd72(0x130)](_0x27ec83);for(let _0x1f8d2e=0x0;_0x1f8d2e<0x5;_0x1f8d2e++){const _0x24f5e1=path[_0x12fd72(0x11d)](_0xe388b8,'package.json');try{const _0x30caaf=JSON[_0x12fd72(0x12a)](fs[_0x12fd72(0x11c)](_0x24f5e1,'utf-8'));if(_0x30caaf[_0x12fd72(0x14c)]===_0x12fd72(0xe0))return _0xe388b8;}catch{}const _0x5e1471=path[_0x12fd72(0x130)](_0xe388b8);if(_0x5e1471===_0xe388b8)break;_0xe388b8=_0x5e1471;}return path['resolve'](path['dirname'](_0x27ec83),'..');}function nodePtyNativeCandidates(_0x54bd2c){const _0x4d3f2a=a0_0x4376c1;return[path[_0x4d3f2a(0x11d)](_0x54bd2c,'build','Release',_0x4d3f2a(0x107)),path[_0x4d3f2a(0x11d)](_0x54bd2c,'prebuilds',process['platform']+'-'+process['arch'],_0x4d3f2a(0x107))];}function hasNodePtyNativeModule(_0x17a45a){const _0x4a5011=a0_0x4376c1;return nodePtyNativeCandidates(_0x17a45a)[_0x4a5011(0xd8)](_0x58d539=>fs[_0x4a5011(0x119)](_0x58d539));}function printNodePtyRebuildHint(_0x54b926){const _0x2a8cce=a0_0x4376c1,_0x4575a1=corePackageRoot(_0x54b926);console[_0x2a8cce(0x14a)](_0x2a8cce(0x16e)+':'),console[_0x2a8cce(0x14a)](_0x2a8cce(0x161)+shellQuote(_0x4575a1)),console[_0x2a8cce(0x14a)](_0x2a8cce(0x147)+_0x2a8cce(0xcd));}function ensureNodePtyNativeModule(_0x56c489){const _0x5d015d=a0_0x4376c1;if(process['platform']===_0x5d015d(0x121))return;let _0x2cb15b='';try{_0x2cb15b=nodePtyPackageRoot(_0x56c489);}catch(_0x5b784b){console['warn']('[wrapper]\x20node-pty\x20d'+_0x5d015d(0x168)+_0x5d015d(0x12f)+_0x5b784b['message']),printNodePtyRebuildHint(_0x56c489);return;}const _0x17f3ce=((()=>{const _0x170e24=_0x5d015d;try{return fs[_0x170e24(0x175)](_0x2cb15b);}catch{return _0x2cb15b;}})());if(CHECKED_NODE_PTY_RUNTIMES['has'](_0x17f3ce))return;CHECKED_NODE_PTY_RUNTIMES['add'](_0x17f3ce);if(hasNodePtyNativeModule(_0x2cb15b))return;const _0x19588b=resolveExecutablePath('npm');console['warn'](_0x5d015d(0xff)+_0x5d015d(0x139)+_0x5d015d(0x141)+_0x2cb15b),console['warn'](_0x5d015d(0x143)+'\x20node-pty\x20before\x20sta'+_0x5d015d(0x117));if(!_0x19588b){console['warn'](_0x5d015d(0x138)+'und;\x20cannot\x20rebuild\x20'+_0x5d015d(0x135)+'ly'),printNodePtyRebuildHint(_0x56c489);return;}const _0x56f023=corePackageRoot(_0x56c489),_0x5169d0=safeSpawnSync(_0x19588b,[_0x5d015d(0x113),_0x5d015d(0xe0),'--verbose'],{'cwd':_0x56f023,'stdio':'inherit','timeout':NPM_INSTALL_TIMEOUT_MS,'env':process.env,'shell':![]});if(_0x5169d0[_0x5d015d(0xd2)]===0x0&&hasNodePtyNativeModule(_0x2cb15b)){console['warn'](_0x5d015d(0x131)+_0x5d015d(0x167));return;}console[_0x5d015d(0x14a)]('[wrapper]\x20node-pty\x20r'+'ebuild\x20failed'+(_0x5169d0[_0x5d015d(0xd2)]!==null?'\x20(exit='+_0x5169d0[_0x5d015d(0xd2)]+')':'')+(';\x20core\x20may\x20fail\x20to\x20s'+_0x5d015d(0x150))),printNodePtyRebuildHint(_0x56c489);}function coreNodePtySpawnHelperPath(_0x40a15e){const _0x4eefcb=a0_0x4376c1;if(process['platform']!==_0x4eefcb(0x17d))return'';try{const _0x14e02c=(0x0,import_module['createRequire'])(_0x40a15e),_0xee3a27=_0x14e02c['resolve'](_0x4eefcb(0xe0)),_0x3cc223=path['resolve'](path[_0x4eefcb(0x130)](_0xee3a27),'..');return path[_0x4eefcb(0x11d)](_0x3cc223,_0x4eefcb(0x12b),_0x4eefcb(0xf3)+process[_0x4eefcb(0x149)],'spawn-helper');}catch{return'';}}function checkMacNodePtySpawnHelper(_0x817945){const _0x18d172=a0_0x4376c1,_0x5c8c34=coreNodePtySpawnHelperPath(_0x817945);if(!_0x5c8c34||CHECKED_PTY_HELPERS['has'](_0x5c8c34))return;CHECKED_PTY_HELPERS['add'](_0x5c8c34);if(!fs['existsSync'](_0x5c8c34)){console['warn'](_0x18d172(0x137)+_0x18d172(0x179)+'t\x20found:\x20'+_0x5c8c34);return;}if(isExecutable(_0x5c8c34))return;try{const _0x4fbc6c=fs['statSync'](_0x5c8c34)[_0x18d172(0x100)];fs['chmodSync'](_0x5c8c34,_0x4fbc6c|0x1ed);}catch{}if(isExecutable(_0x5c8c34)){console[_0x18d172(0x14a)](_0x18d172(0x160)+_0x18d172(0x116)+'per\x20executable\x20bit:\x20'+_0x5c8c34);return;}console['warn'](_0x18d172(0x137)+'-pty\x20spawn-helper\x20is'+'\x20not\x20executable:\x20'+_0x5c8c34),console['warn']('[wrapper]\x20Run\x20this\x20o'+'nce\x20to\x20fix\x20terminal/'+'PTY\x20startup:'),console['warn']('\x20\x20HELPER='+shellQuote(_0x5c8c34)),console[_0x18d172(0x14a)](_0x18d172(0x146)),console['warn'](_0x18d172(0xf7));}function printVersion(){const _0x40e6d5=a0_0x4376c1;let _0x50b43a='';try{_0x50b43a=coreVersion();}catch{}console[_0x40e6d5(0xd0)]('whalent-agent\x20'+WRAPPER_VERSION),console[_0x40e6d5(0xd0)](_0x40e6d5(0x140)+WRAPPER_VERSION),console['log']('core\x20'+(_0x50b43a||'not\x20installed'));}function directCore(_0x2f2ba5){const _0x23d4b5=a0_0x4376c1,_0x53f8d2=findCoreScript();ensureNodePtyNativeModule(_0x53f8d2),checkMacNodePtySpawnHelper(_0x53f8d2);const _0x1ca65b=(0x0,import_child_process2[_0x23d4b5(0x155)])(process['execPath'],[_0x53f8d2,..._0x2f2ba5],{'stdio':_0x23d4b5(0x10e),'env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x53f8d2},'shell':![]});process['exit'](_0x1ca65b[_0x23d4b5(0xd2)]??0x0);}function shouldSupervise(_0x52fd8d){const _0x78c01d=a0_0x4376c1;if(_0x52fd8d['includes'](_0x78c01d(0x16a)))return![];if(_0x52fd8d['includes']('--resume')||_0x52fd8d[0x0]===_0x78c01d(0x152))return![];const _0x2f4e0d=_0x52fd8d[0x0]||'';if(_0x2f4e0d==='ls'||_0x2f4e0d===_0x78c01d(0xd2)||_0x2f4e0d==='ps')return![];if(_0x2f4e0d==='mcp'||_0x2f4e0d==='daemon-mcp')return![];if(_0x52fd8d[_0x78c01d(0xda)](_0x78c01d(0x15a))||_0x52fd8d[_0x78c01d(0xda)]('-h'))return![];return!![];}function installCoreVersion(_0x5d1242){const _0x5f5bd4=a0_0x4376c1,_0x1ee1e1=resolveExecutablePath(_0x5f5bd4(0xcf));if(!_0x1ee1e1)return{'ok':![],'output':'npm\x20not\x20found\x20on\x20PAT'+'H'};const _0x2782f4=CORE_PKG_NAME+'@'+_0x5d1242,_0x5155f6=run(_0x1ee1e1,[_0x5f5bd4(0xfa),'-g',_0x2782f4,'--registry='+NPM_REGISTRY]),_0x456d1f=((_0x5155f6['stdout']||'')+'\x0a'+(_0x5155f6[_0x5f5bd4(0x15e)]||''))['trim']();return{'ok':_0x5155f6['status']===0x0,'output':_0x456d1f};}async function superviseCore(_0x594f7f){const _0x4b0393=a0_0x4376c1;let _0x247324=![],_0x284017=null;const _0x211836=[];let _0x1c34fd=MIN_RESTART_DELAY_MS;const _0x552e09=()=>{const _0x502060=a0_0x3884;_0x247324=!![];if(_0x284017&&!_0x284017[_0x502060(0x13e)])try{_0x284017['kill']('SIGTERM');}catch{}else process['exit'](0x0);};process['on']('SIGINT',_0x552e09),process['on']('SIGTERM',_0x552e09);while(!![]){const _0x1b1901=findCoreScript();ensureNodePtyNativeModule(_0x1b1901),checkMacNodePtySpawnHelper(_0x1b1901);const _0x2de210={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x1b1901},_0x70aa8=readUpgradeState(),_0x37365d=!!_0x70aa8?.[_0x4b0393(0x159)];let _0x164cba=![],_0x464c7e=null,_0x26ac57='';const _0x3eceb4=[],_0x5c29ce=0xc;console[_0x4b0393(0xd0)](_0x4b0393(0xcc)+'ore:\x20'+_0x1b1901),_0x284017=(0x0,import_child_process2['spawn'])(process[_0x4b0393(0xd4)],[_0x1b1901,..._0x594f7f],{'env':_0x2de210,'stdio':['inherit',_0x4b0393(0x13f),'pipe']});const _0x3c257a=()=>{const _0x2841c6=_0x4b0393;if(_0x164cba)return;_0x164cba=!![];if(_0x464c7e)clearTimeout(_0x464c7e);_0x211836[_0x2841c6(0xed)]=0x0,_0x1c34fd=MIN_RESTART_DELAY_MS;const _0x2fbd28=readUpgradeState();_0x2fbd28?.[_0x2841c6(0x159)]&&(writeUpgradeState({..._0x2fbd28,'pending':![],'rollback':![],'health_status':'healthy'}),console['log']('[wrapper]\x20core\x20upgra'+_0x2841c6(0x120)+(_0x2fbd28[_0x2841c6(0xce)]||_0x2fbd28[_0x2841c6(0x154)]||'')));},_0x561ddd=(_0x3ebed2,_0x16b7ef=![])=>{const _0x57bff2=_0x4b0393,_0x55dfd1=_0x3ebed2[_0x57bff2(0x123)]();(_0x16b7ef?process['stderr']:process[_0x57bff2(0xe9)])[_0x57bff2(0x158)](_0x55dfd1);if(_0x16b7ef)for(const _0x527f94 of _0x55dfd1['split'](/\r?\n/)){if(!_0x527f94[_0x57bff2(0x13a)]())continue;_0x3eceb4['push'](_0x527f94);if(_0x3eceb4[_0x57bff2(0xed)]>_0x5c29ce)_0x3eceb4['shift']();const _0x51ebf5=_0x527f94['match'](FATAL_PATTERN);if(_0x51ebf5)_0x26ac57=_0x51ebf5[0x0];}(_0x55dfd1[_0x57bff2(0xda)](_0x57bff2(0x10d))||_0x55dfd1['includes'](_0x57bff2(0xef)+'achine')||_0x55dfd1[_0x57bff2(0xda)]('Gateway:\x20connected'))&&_0x3c257a();};_0x284017[_0x4b0393(0xe9)]?.['on'](_0x4b0393(0x17c),_0x196bc0=>_0x561ddd(_0x196bc0,![])),_0x284017['stderr']?.['on']('data',_0x19552f=>_0x561ddd(_0x19552f,!![]));_0x37365d&&(_0x464c7e=setTimeout(()=>{const _0x5bfaaa=_0x4b0393;if(_0x164cba||!_0x284017||_0x284017['killed'])return;console['error']('[wrapper]\x20new\x20core\x20d'+'id\x20not\x20become\x20health'+_0x5bfaaa(0x133)+'ack');try{_0x284017['kill'](_0x5bfaaa(0xe7));}catch{}},HEALTH_TIMEOUT_MS));const _0x1e3b1f=await new Promise(_0x4ec806=>{_0x284017['once']('exit',(_0x42d005,_0x3a995b)=>_0x4ec806({'code':_0x42d005,'signal':_0x3a995b}));});if(_0x464c7e)clearTimeout(_0x464c7e);_0x284017=null;if(_0x247324)process[_0x4b0393(0x17e)](_0x1e3b1f['code']??0x0);const _0xce9c26=readUpgradeState();if(_0xce9c26?.['pending']&&!_0x164cba){const _0x55d9c4=String(_0xce9c26[_0x4b0393(0x145)+'n']||'')['trim']();if(_0x55d9c4){console[_0x4b0393(0x109)]('[wrapper]\x20rolling\x20ba'+_0x4b0393(0x151)+_0x55d9c4);const _0x3c20fe=installCoreVersion(_0x55d9c4);writeUpgradeState({..._0xce9c26,'pending':![],'rollback':!![],'health_status':_0x3c20fe['ok']?_0x4b0393(0x171):_0x4b0393(0x178),'error':_0x3c20fe['ok']?'':_0x3c20fe[_0x4b0393(0x11e)]});}else writeUpgradeState({..._0xce9c26,'pending':![],'rollback':!![],'health_status':'rollback_unavailable','error':_0x4b0393(0x10f)+_0x4b0393(0x12e)});}const _0x446455=_0x1e3b1f['code']===SUPERVISED_RESTART_CODE||_0xce9c26?.[_0x4b0393(0x159)];if(!_0x446455&&_0x1e3b1f['code']===0x0)process['exit'](0x0);const _0x1b7d21=Date[_0x4b0393(0x13d)]();_0x211836[_0x4b0393(0xea)](_0x1b7d21);while(_0x211836[_0x4b0393(0xed)]>0x0&&_0x1b7d21-_0x211836[0x0]>CRASH_WINDOW_MS){_0x211836[_0x4b0393(0x164)]();}const _0x210885=_0x211836['length'];writeLastCrash({'timestamp':_0x1b7d21,'exit_code':_0x1e3b1f[_0x4b0393(0xfe)],'exit_signal':_0x1e3b1f[_0x4b0393(0x172)]||null,'fatal_line':_0x26ac57,'raw_tail':_0x3eceb4['join']('\x0a'),'consecutive_crashes':_0x210885}),console[_0x4b0393(0xd0)](_0x4b0393(0xe1)+_0x4b0393(0xeb)+(_0x1e3b1f['code']??'')+(_0x1e3b1f[_0x4b0393(0x172)]?_0x4b0393(0x129)+_0x1e3b1f['signal']:'')+'\x20('+_0x210885+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math['round'](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x26ac57)console[_0x4b0393(0xd0)]('[wrapper]\x20last\x20fatal'+':\x20'+_0x26ac57);_0x210885>=MAX_CRASHES_IN_WINDOW&&(console[_0x4b0393(0x109)](_0x4b0393(0x13b)+'d\x20'+_0x210885+_0x4b0393(0xe4)+Math[_0x4b0393(0xf8)](CRASH_WINDOW_MS/0x3e8)+(_0x4b0393(0x15f)+'record:\x20')+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+'nually\x20after\x20the\x20und'+'erlying\x20issue\x20is\x20fix'+'ed.')),process[_0x4b0393(0x17e)](0x1)),console[_0x4b0393(0xd0)](_0x4b0393(0xe2)+_0x4b0393(0x14b)+_0x1c34fd+'ms'),await new Promise(_0x2aae82=>setTimeout(_0x2aae82,_0x1c34fd)),_0x1c34fd=Math['min'](_0x1c34fd*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x3ab723=a0_0x4376c1,_0x226832=process[_0x3ab723(0x14f)][_0x3ab723(0x10a)](0x2);if(_0x226832[0x0]===_0x3ab723(0x17f)||_0x226832[0x0]==='-v'||_0x226832[0x0]==='version'){printVersion();return;}if((_0x226832[0x0]==='status'||_0x226832[0x0]==='ls'||_0x226832[0x0]==='ps')&&!_0x226832['includes'](_0x3ab723(0x166))){console[_0x3ab723(0xd0)]('wrapper\x20'+WRAPPER_VERSION);try{console['log'](_0x3ab723(0x134)+(coreVersion()||'not\x20installed'));}catch{console[_0x3ab723(0xd0)]('core\x20not\x20installed');}}maybeUpdateWrapper(_0x226832);if(!shouldSupervise(_0x226832))directCore(_0x226832);await superviseCore(_0x226832);}main()[a0_0x4376c1(0xe8)](_0x4e23f8=>{const _0xcba9f3=a0_0x4376c1;console['error']('[wrapper]\x20Fatal\x20erro'+_0xcba9f3(0x17a)+(_0x4e23f8?.[_0xcba9f3(0x148)]||String(_0x4e23f8))),process['exit'](0x1);});
|
|
2
|
+
'use strict';const a0_0x2efdfc=a0_0x4016;(function(_0x4cad6c,_0x4d7d7a){const _0xd5f7ef=a0_0x4016,_0x201e21=_0x4cad6c();while(!![]){try{const _0xf1888d=-parseInt(_0xd5f7ef(0x233))/0x1*(-parseInt(_0xd5f7ef(0x204))/0x2)+parseInt(_0xd5f7ef(0x247))/0x3*(parseInt(_0xd5f7ef(0x1ea))/0x4)+parseInt(_0xd5f7ef(0x24d))/0x5*(parseInt(_0xd5f7ef(0x223))/0x6)+parseInt(_0xd5f7ef(0x237))/0x7*(parseInt(_0xd5f7ef(0x26a))/0x8)+parseInt(_0xd5f7ef(0x249))/0x9*(-parseInt(_0xd5f7ef(0x23b))/0xa)+parseInt(_0xd5f7ef(0x25f))/0xb*(parseInt(_0xd5f7ef(0x241))/0xc)+-parseInt(_0xd5f7ef(0x269))/0xd*(parseInt(_0xd5f7ef(0x278))/0xe);if(_0xf1888d===_0x4d7d7a)break;else _0x201e21['push'](_0x201e21['shift']());}catch(_0x2262cf){_0x201e21['push'](_0x201e21['shift']());}}}(a0_0x5c58,0xe2445));var __create=Object['create'],__defProp=Object[a0_0x2efdfc(0x1f6)],__getOwnPropDesc=Object[a0_0x2efdfc(0x252)+a0_0x2efdfc(0x21b)],__getOwnPropNames=Object['getOwnPropertyNames'],__getProtoOf=Object['getPrototypeOf'],__hasOwnProp=Object['prototype']['hasOwnProperty'],__copyProps=(_0x358db2,_0x20161a,_0x1876d9,_0xb4a12f)=>{const _0x3080af=a0_0x2efdfc;if(_0x20161a&&typeof _0x20161a===_0x3080af(0x275)||typeof _0x20161a===_0x3080af(0x251)){for(let _0x5b9b3c of __getOwnPropNames(_0x20161a))if(!__hasOwnProp['call'](_0x358db2,_0x5b9b3c)&&_0x5b9b3c!==_0x1876d9)__defProp(_0x358db2,_0x5b9b3c,{'get':()=>_0x20161a[_0x5b9b3c],'enumerable':!(_0xb4a12f=__getOwnPropDesc(_0x20161a,_0x5b9b3c))||_0xb4a12f['enumerable']});}return _0x358db2;},__toESM=(_0x163b17,_0x2f7f19,_0x5598fa)=>(_0x5598fa=_0x163b17!=null?__create(__getProtoOf(_0x163b17)):{},__copyProps(_0x2f7f19||!_0x163b17||!_0x163b17[a0_0x2efdfc(0x282)]?__defProp(_0x5598fa,a0_0x2efdfc(0x22d),{'value':_0x163b17,'enumerable':!![]}):_0x5598fa,_0x163b17)),import_child_process2=require(a0_0x2efdfc(0x1eb)),fs=__toESM(require('fs'),0x1),import_module=require('module'),os=__toESM(require('os'),0x1),path=__toESM(require('path'),0x1),import_child_process=require('child_process'),import_fs=require('fs'),import_path=require('path');function a0_0x5c58(){const _0x3d5089=['zxHLy1bHDgG','w3DYyxbWzxjDihvWzgf0zsbHDMe','C3bHD24TAgvSCgvY','DhjPBq','ywnR','ChjLyNvPBgrZ','BwLU','CMvWBgfJzq','zw5KC1DPDgG','Aw5ZDgfSBa','mNr0z3DeEa','y29Kzq','B3iGCMvIDwLSzcbaD2HHBgvUDc8','igzYB20GBNbTigjLzM9YzsbZDge','DcbMB3vUzdOG','wf9psW','CgfYC2vjBNq','zxHPDa','AgvHBhrOEq','yxrLoIbUCg0GAw5ZDgfSBcaTzYa','C3rHDhvZ','CM9SBgjHy2TFDw5HDMfPBgfIBgu','qhDOywXLBNq','icbSCYaTBcaIjeHftfbfuIi','CgfYC2u','w3DYyxbWzxjDihjVBgXPBMCGyMe','CgvUzgLUzW','ufrzihn0yxj0Dxa6','C3bHD24','zgf0yq','EwvZ','zgfLBw9Ulw1JCa','AwqGBM90igjLy29TzsbOzwfSDgG','ChrVCG','ywDLBNq','y2SGy29Yzsb0BYa','ls1Yzxn1Bwu','w3DYyxbWzxjDignVCMuGzxHPDgu','BNbTig5VDcbMB3vUzcbVBIbqqvq','Dg9mB3DLCKnHC2u','qhDOywXLBNqVywDLBNqTy29Yzq','nKvUA25AvG','Aw5KzxG','u0Lhvevstq','D2LUmZi','y29Yzs5JANm','ls1QC29U','w3DYyxbWzxjDifj1BIb0AgLZig8','igLUia','zxjSEwLUzYbPC3n1zsbPCYbMAxG','CM9VDa','zgvMyxvSDa','A2LSBgvK','w3DYyxbWzxjDignVCMuGDxbNCMe','DxrMoa','lNDOywXLBNqTywDLBNq','lNbZmq','mta0mZyWmuDbD1Leva','ls1YzwDPC3rYEt0','icbiruXqrvi9','zgf0zsbMywLSzwq7ignVBNrPBNu','nJa3odu5C3n6Eefn','w3DYyxbWzxjDihjLC3rHCNrPBMC','zxjYB3i','EsbPBIb0Aw1LoYbYB2XSAw5Nigi','nZqZmhbiAwH6qW','y21KlMv4zq','lMnTza','y2fUzgLKyxrL','B3v0Chv0','ls1Hz2vUDc1Pza','mta4mJK2nerwtLLmBq','CgXHDgzVCM0','CgfJA2fNzs5QC29U','CMvZB2X2zq','icbJAg1VzcaREcaIjeHftfbfuIi','BwfW','m2XyveHxuq','C2LNBMfS','odKXovHRB3LMsa','BwTKAxjtEw5J','j1WNjW','DhLWzq','ndKYntmZnxf2svn3uW','BgvUz3rO','C3rKB3v0','C3bHD25tEw5J','zNvUy3rPB24','z2v0t3DUuhjVCgvYDhLezxnJCMK','BNbTig5VDcbMB3vUza','ic0+ia','zgfYD2LU','DxrMltG','DMvYC2LVBG','zwqU','C2XPy2u','BIb1BMTUB3DU','w3DYyxbWzxjDigzPEgvKig1Hy08','Aw5JBhvKzxm','ywnOAw5L','B25Jzq','mZnuC3zMqLO','C3rKzxjY','w3DYyxbWzxjDigXHC3qGzMf0ywW','DMLLDW','DgvZDa','D2HLCMuUzxHL','Dg9tDhjPBMC','Aw5OzxjPDa','CZSGz2L2Aw5NihvWlIbdCMfZAca','ig5VDcbMB3vUzdSGAw5ZDgfSBca','mtGYBfLRu0Lj','mtuYrvjAwK14','CM9SBgvKx2jHy2S','C3rYAw5NAwz5','Bwf0y2G','y29UC3rHBNrZ','Ahr0Chm6lY9YzwDPC3rYEs5UCg0','AM9PBG','yxjJAa','CMvHzezPBgvtEw5J','Aw5KzxGUy2PZ','BM9Kzq','B2jQzwn0','oYbYzxn0yxj0Aw5NihDYyxbWzxi','Bg9N','mJm4ody5neTIwgTkDG','ywnJzxnZu3LUyW','lMv4zq','ic0TCMvNAxn0CNK9','Cg9W','BM90igLUC3rHBgXLza','BwnW','ig5VDcbLEgvJDxrHyMXLoIa','zgLYBMfTzq','CM91BMq','x19LC01VzhvSzq','ChvZAa','w3DYyxbWzxjDig1Hy09tig5Vzgu','Bwf4','nda5otm2z3D1rhbm','y2HPBgrFChjVy2vZCW','zgfYD2LUlq','BM93','lMjHDa','AgfZ','D2HPy2G','zxHL','zxHPC3rZu3LUyW','D2fYBG','C2HPzNq','CMvJB3jKoIa','zgvMAw5LuhjVCgvYDhK','y3jLyxrLuMvXDwLYzq','CM9SBgjHy2TFzMfPBgvK','yxjNDG'];a0_0x5c58=function(){return _0x3d5089;};return a0_0x5c58();}function isWindowsCmdFile(_0x2da029){const _0xc980f2=a0_0x2efdfc;return process[_0xc980f2(0x242)]===_0xc980f2(0x226)&&/\.(cmd|bat)$/i[_0xc980f2(0x263)](_0x2da029||'');}function quoteCmdArg(_0x4d06b6){const _0x14af0a=a0_0x2efdfc,_0x1b722d=String(_0x4d06b6??'');if(_0x1b722d&&!/[\s"&|<>^%]/[_0x14af0a(0x263)](_0x1b722d))return _0x1b722d;return'\x22'+_0x1b722d[_0x14af0a(0x201)](/(["^&|<>%])/g,'^$1')+'\x22';}function cmdFallbackArgs(_0x12a2e0,_0x3903cb){return['/d','/s','/c',[quoteCmdArg(_0x12a2e0),..._0x3903cb['map'](quoteCmdArg)]['join']('\x20')];}function resolveExecutablePath(_0x260729){const _0x1ecf7f=a0_0x2efdfc;if(!_0x260729)return null;if(_0x260729['includes']('/')||_0x260729['includes']('\x5c')||/\.[A-Za-z0-9]{1,5}$/[_0x1ecf7f(0x263)](_0x260729))return(0x0,import_fs['existsSync'])(_0x260729)?_0x260729:_0x260729;const _0x5105ee=process['platform']==='win32',_0x4279d4=_0x5105ee?_0x1ecf7f(0x264):_0x1ecf7f(0x1f0);try{const _0x57ce71=(0x0,import_child_process['spawnSync'])(_0x4279d4,[_0x260729],{'encoding':'utf-8','timeout':0xbb8,'shell':![]});if(_0x57ce71[_0x1ecf7f(0x20e)]===0x0){const _0x347bbd=(_0x57ce71['stdout']||'')[_0x1ecf7f(0x1fd)]()['split'](/\r?\n/)['filter'](Boolean);if(_0x347bbd['length']===0x0)return null;if(_0x5105ee)for(const _0x1fd5fd of[_0x1ecf7f(0x27a),_0x1ecf7f(0x23d),_0x1ecf7f(0x1ee),_0x1ecf7f(0x232)]){const _0x3e9235=_0x347bbd['find'](_0x13639f=>_0x13639f['toLowerCase']()[_0x1ecf7f(0x202)](_0x1fd5fd));if(_0x3e9235)return _0x3e9235;}return _0x347bbd[0x0]||null;}}catch{}return null;}function unwrapWindowsCmdShim(_0xe76c85){const _0x53f3db=a0_0x2efdfc;if(process['platform']!==_0x53f3db(0x226))return null;if(!/\.(cmd|bat)$/i['test'](_0xe76c85))return null;let _0x4fdd07;try{_0x4fdd07=(0x0,import_fs['readFileSync'])(_0xe76c85,_0x53f3db(0x256));}catch{return null;}const _0x1ddf66=_0x4fdd07['match'](/"(%~?dp0%?)[\\/]+([^"]+\.(?:js|cjs|mjs))"/i);if(_0x1ddf66){const _0x635060=(0x0,import_path[_0x53f3db(0x244)])((0x0,import_path['dirname'])(_0xe76c85),_0x1ddf66[0x2]);if((0x0,import_fs['existsSync'])(_0x635060))return{'type':_0x53f3db(0x274),'path':_0x635060};}const _0x53319b=_0x4fdd07['match'](/"(%~?dp0%?)[\\/]+([^"]+\.exe)"/i);if(_0x53319b){const _0x4ca99c=(0x0,import_path['resolve'])((0x0,import_path[_0x53f3db(0x280)])(_0xe76c85),_0x53319b[0x2]);if((0x0,import_fs[_0x53f3db(0x1f2)])(_0x4ca99c))return{'type':_0x53f3db(0x1f1),'path':_0x4ca99c};}return null;}function safeSpawnSync(_0x43c516,_0x470307,_0x33947f={}){const _0x132a66=a0_0x2efdfc,_0x252528=unwrapWindowsCmdShim(_0x43c516);if(_0x252528?.[_0x132a66(0x24c)]==='node')return(0x0,import_child_process[_0x132a66(0x250)])(process[_0x132a66(0x1fa)],[_0x252528['path'],..._0x470307],_0x33947f);if(_0x252528?.['type']==='exe')return(0x0,import_child_process['spawnSync'])(_0x252528['path'],_0x470307,_0x33947f);if(isWindowsCmdFile(_0x43c516))return(0x0,import_child_process[_0x132a66(0x250)])(process.env.ComSpec||_0x132a66(0x23c),cmdFallbackArgs(_0x43c516,_0x470307),_0x33947f);return(0x0,import_child_process['spawnSync'])(_0x43c516,_0x470307,_0x33947f);}var WRAPPER_PKG_NAME='@whalent/agent',CORE_PKG_NAME=a0_0x2efdfc(0x222),NPM_REGISTRY=a0_0x2efdfc(0x26f)+'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();function wrapperBaseDir(){return __dirname;}function configDir(){const _0x9c04d1=a0_0x2efdfc;return path[_0x9c04d1(0x270)](os['homedir'](),_0x9c04d1(0x231));}function upgradeStatePath(){return path['join'](configDir(),'core-upgrade.json');}function lastCrashFilePath(){return path['join'](configDir(),'last-crash.json');}function writeLastCrash(_0x2d3d02){const _0x53ff7b=a0_0x2efdfc;try{fs[_0x53ff7b(0x24a)](configDir(),{'recursive':!![]});const _0x31013c={..._0x2d3d02,'reported':![]};fs['writeFileSync'](lastCrashFilePath(),JSON[_0x53ff7b(0x26c)](_0x31013c,null,0x2),_0x53ff7b(0x256));}catch{}}function readWrapperVersion(){const _0x5d094e=a0_0x2efdfc;try{const _0xb7ed3e=JSON[_0x5d094e(0x212)](fs[_0x5d094e(0x272)](path[_0x5d094e(0x270)](wrapperBaseDir(),'..',_0x5d094e(0x243)),_0x5d094e(0x256)));return String(_0xb7ed3e['version']||'0.0.0');}catch{return'0.0.0';}}function readUpgradeState(){const _0x5dd3d2=a0_0x2efdfc;try{return JSON[_0x5dd3d2(0x212)](fs['readFileSync'](upgradeStatePath(),_0x5dd3d2(0x256)));}catch{return null;}}function writeUpgradeState(_0x5c8910){const _0x3cc647=a0_0x2efdfc;try{fs[_0x3cc647(0x24a)](configDir(),{'recursive':!![]}),fs['writeFileSync'](upgradeStatePath(),JSON['stringify']({..._0x5c8910,'updated_at':Date['now']()},null,0x2),_0x3cc647(0x256));}catch{}}function run(_0x380609,_0x59ea3c,_0x43ecfa=process.env){return safeSpawnSync(_0x380609,_0x59ea3c,{'encoding':'utf8','timeout':NPM_INSTALL_TIMEOUT_MS,'maxBuffer':NPM_INSTALL_MAX_BUFFER,'env':_0x43ecfa,'shell':![]});}function runNpmView(_0x1fde92){const _0xab63e3=a0_0x2efdfc,_0x2aa6a2=resolveExecutablePath('npm');if(!_0x2aa6a2)return{'status':0x7f,'stdout':'','stderr':_0xab63e3(0x253),'error':new Error(_0xab63e3(0x253))};return safeSpawnSync(_0x2aa6a2,_0x1fde92,{'encoding':_0xab63e3(0x230),'timeout':NPM_VIEW_TIMEOUT_MS,'maxBuffer':0x400*0x400,'env':process.env,'shell':![]});}function npmRootGlobal(){const _0x315aee=a0_0x2efdfc,_0x5ae2f6=resolveExecutablePath('npm');if(!_0x5ae2f6)return'';const _0x1dc8d0=run(_0x5ae2f6,[_0x315aee(0x22c),'-g']);if(_0x1dc8d0[_0x315aee(0x20e)]!==0x0)return'';return String(_0x1dc8d0[_0x315aee(0x24f)]||'')['trim']();}function compareSemver(_0xed17a7,_0x1edfca){const _0x37d075=a0_0x2efdfc,_0x13d05f=String(_0xed17a7||'')[_0x37d075(0x201)](/^v/,'')['split'](/[.-]/)[_0x37d075(0x246)](_0x1cdf53=>Number['parseInt'](_0x1cdf53,0xa)||0x0),_0x5357b5=String(_0x1edfca||'')['replace'](/^v/,'')['split'](/[.-]/)[_0x37d075(0x246)](_0x45c84d=>Number[_0x37d075(0x20a)](_0x45c84d,0xa)||0x0);for(let _0x4a9dda=0x0;_0x4a9dda<Math[_0x37d075(0x1e9)](_0x13d05f[_0x37d075(0x24e)],_0x5357b5['length'],0x3);_0x4a9dda++){const _0x5ad096=_0x13d05f[_0x4a9dda]||0x0,_0x39c31d=_0x5357b5[_0x4a9dda]||0x0;if(_0x5ad096>_0x39c31d)return 0x1;if(_0x5ad096<_0x39c31d)return-0x1;}return 0x0;}function skipWrapperUpdateCheck(){const _0x2a78a3=String(process.env.WHALENT_SKIP_UPDATE_CHECK||process.env.WHALENT_NO_UPDATE_CHECK||process.env.WHALENT_SKIP_WRAPPER_UPDATE||'')['trim']()['toLowerCase']();return _0x2a78a3==='1'||_0x2a78a3==='true'||_0x2a78a3==='yes'||_0x2a78a3==='on';}function latestWrapperVersion(){const _0x349afa=a0_0x2efdfc,_0x12fe2b=runNpmView([_0x349afa(0x262),WRAPPER_PKG_NAME+'@latest','version','--registry='+NPM_REGISTRY]);if(_0x12fe2b[_0x349afa(0x20e)]!==0x0)return'';return String(_0x12fe2b['stdout']||'')['trim']()['split'](/\r?\n/)['filter'](Boolean)[_0x349afa(0x27c)]()||'';}function installWrapperVersion(_0x29bc63){const _0x4616d9=a0_0x2efdfc,_0x4be0a5=resolveExecutablePath('npm');if(!_0x4be0a5)return{'ok':![],'output':_0x4616d9(0x220)+'H'};const _0x156e93=run(_0x4be0a5,[_0x4616d9(0x203),'-g',WRAPPER_PKG_NAME+'@'+_0x29bc63,'--registry='+NPM_REGISTRY]),_0x146374=((_0x156e93['stdout']||'')+'\x0a'+(_0x156e93['stderr']||''))['trim']();return{'ok':_0x156e93[_0x4616d9(0x20e)]===0x0,'output':_0x146374};}function maybeUpdateWrapper(_0x4e5c8e){const _0x4f7e6c=a0_0x2efdfc;if(skipWrapperUpdateCheck())return![];if(process.env.WHALENT_WRAPPER_UPDATE_ATTEMPTED)return![];const _0x1eeca4=latestWrapperVersion();if(!_0x1eeca4||compareSemver(_0x1eeca4,WRAPPER_VERSION)<=0x0)return![];console['warn'](_0x4f7e6c(0x1fb)+'ilable:\x20'+WRAPPER_VERSION+_0x4f7e6c(0x254)+_0x1eeca4),console['warn']('[wrapper]\x20installing'+'\x20'+WRAPPER_PKG_NAME+'@'+_0x1eeca4+(_0x4f7e6c(0x207)+'rting\x20core...'));const _0x1e0478=installWrapperVersion(_0x1eeca4);if(!_0x1e0478['ok']){console[_0x4f7e6c(0x1f3)]('[wrapper]\x20wrapper\x20up'+_0x4f7e6c(0x236)+'ing\x20with\x20'+WRAPPER_VERSION);if(_0x1e0478[_0x4f7e6c(0x23f)])console['warn'](_0x1e0478['output']['split'](/\r?\n/)[_0x4f7e6c(0x259)](-0xc)[_0x4f7e6c(0x270)]('\x0a'));return console[_0x4f7e6c(0x1f3)]('[wrapper]\x20Manual\x20upd'+_0x4f7e6c(0x20d)+WRAPPER_PKG_NAME+'@'+_0x1eeca4+_0x4f7e6c(0x27b)+NPM_REGISTRY),![];}console[_0x4f7e6c(0x1f3)]('[wrapper]\x20wrapper\x20up'+'dated\x20to\x20'+_0x1eeca4+_0x4f7e6c(0x276));const _0x6d7898=process['argv'][0x1],_0x49a80d=(0x0,import_child_process2[_0x4f7e6c(0x250)])(process['execPath'],[_0x6d7898,..._0x4e5c8e],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_UPDATE_ATTEMPTED':_0x1eeca4},'shell':![]});process[_0x4f7e6c(0x20b)](_0x49a80d[_0x4f7e6c(0x20e)]??0x0);}function findCoreScript(){const _0x546b75=a0_0x2efdfc,_0xe114a1=String(process.env.WHALENT_CORE_ENTRY||'')['trim'](),_0x4e3d40=['1','true',_0x546b75(0x218),'on']['includes'](String(process.env.WHALENT_FORCE_CORE_ENTRY||'')[_0x546b75(0x1fd)]()[_0x546b75(0x221)]());if(_0xe114a1&&_0x4e3d40&&fs[_0x546b75(0x1f2)](_0xe114a1))return _0xe114a1;const _0x380c29=[],_0x348c65=_0x3ca7a0=>{const _0x3a04c7=_0x546b75;if(fs[_0x3a04c7(0x1f2)](_0x3ca7a0)&&!_0x380c29[_0x3a04c7(0x25c)](_0x3ca7a0))_0x380c29[_0x3a04c7(0x283)](_0x3ca7a0);};if(_0xe114a1)_0x348c65(_0xe114a1);const _0x275bc9=npmRootGlobal();if(_0x275bc9){const _0x56a8d4=path['join'](_0x275bc9,_0x546b75(0x210),'agent-core','dist',_0x546b75(0x273));_0x348c65(_0x56a8d4);}const _0x2b4193=path[_0x546b75(0x270)](wrapperBaseDir(),_0x546b75(0x227));_0x348c65(_0x2b4193);const _0x32bba5=path[_0x546b75(0x270)](wrapperBaseDir(),'..','packages','core','dist',_0x546b75(0x273));_0x348c65(_0x32bba5);if(_0x380c29[_0x546b75(0x24e)]>0x0)return _0x380c29[_0x546b75(0x246)]((_0x112748,_0x5ae453)=>({'candidate':_0x112748,'index':_0x5ae453,'version':coreVersion(_0x112748)}))['sort']((_0x536b50,_0x52ad43)=>{const _0x1070ff=_0x546b75,_0x3e5775=compareSemver(_0x52ad43[_0x1070ff(0x257)],_0x536b50['version']);if(_0x3e5775!==0x0)return _0x3e5775;return _0x52ad43[_0x1070ff(0x224)]-_0x536b50[_0x1070ff(0x224)];})[0x0][_0x546b75(0x23e)];throw new Error('whalent\x20core\x20runtime'+_0x546b75(0x268)+'@whalent/agent-core\x20'+_0x546b75(0x206)+_0x546b75(0x21c));}function coreVersion(_0x107d62=findCoreScript()){const _0x533449=a0_0x2efdfc,_0x2dff57=(0x0,import_child_process2[_0x533449(0x250)])(process[_0x533449(0x1fa)],[_0x107d62,'--version'],{'encoding':_0x533449(0x230),'timeout':0x3a98,'env':{...process.env,'WHALENT_SKIP_UPDATE_CHECK':'1'},'shell':![]}),_0x50fe4f=(_0x2dff57[_0x533449(0x24f)]||'')+'\x0a'+(_0x2dff57['stderr']||'');return _0x50fe4f[_0x533449(0x26d)](/(\d+\.\d+\.\d+(?:[-\w.]+)?)/)?.[0x1]||'';}function isExecutable(_0x3dced4){const _0x566ecf=a0_0x2efdfc;try{return fs[_0x566ecf(0x279)](_0x3dced4,fs[_0x566ecf(0x26e)][_0x566ecf(0x209)]),!![];}catch{return![];}}function a0_0x4016(_0x2b3c4a,_0x4fb76f){_0x2b3c4a=_0x2b3c4a-0x1e8;const _0x5c58a7=a0_0x5c58();let _0x401639=_0x5c58a7[_0x2b3c4a];if(a0_0x4016['JcCtXX']===undefined){var _0xd37ac5=function(_0x3ec10f){const _0x3397e6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x358db2='',_0x20161a='';for(let _0x1876d9=0x0,_0xb4a12f,_0x5b9b3c,_0x163b17=0x0;_0x5b9b3c=_0x3ec10f['charAt'](_0x163b17++);~_0x5b9b3c&&(_0xb4a12f=_0x1876d9%0x4?_0xb4a12f*0x40+_0x5b9b3c:_0x5b9b3c,_0x1876d9++%0x4)?_0x358db2+=String['fromCharCode'](0xff&_0xb4a12f>>(-0x2*_0x1876d9&0x6)):0x0){_0x5b9b3c=_0x3397e6['indexOf'](_0x5b9b3c);}for(let _0x2f7f19=0x0,_0x5598fa=_0x358db2['length'];_0x2f7f19<_0x5598fa;_0x2f7f19++){_0x20161a+='%'+('00'+_0x358db2['charCodeAt'](_0x2f7f19)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x20161a);};a0_0x4016['vpLIXv']=_0xd37ac5,a0_0x4016['CvYUkI']={},a0_0x4016['JcCtXX']=!![];}const _0x3d1a99=_0x5c58a7[0x0],_0x3ec519=_0x2b3c4a+_0x3d1a99,_0x304307=a0_0x4016['CvYUkI'][_0x3ec519];return!_0x304307?(_0x401639=a0_0x4016['vpLIXv'](_0x401639),a0_0x4016['CvYUkI'][_0x3ec519]=_0x401639):_0x401639=_0x304307,_0x401639;}function shellQuote(_0x2009bc){const _0x293548=a0_0x2efdfc;return'\x27'+_0x2009bc['replace'](/'/g,_0x293548(0x24b))+'\x27';}function coreNodePtySpawnHelperPath(_0x40ef43){const _0xce99b2=a0_0x2efdfc;if(process['platform']!==_0xce99b2(0x255))return'';try{const _0x18f8fa=(0x0,import_module[_0xce99b2(0x1f7)])(_0x40ef43),_0x559cf8=_0x18f8fa['resolve']('node-pty'),_0x10d2d6=path['resolve'](path['dirname'](_0x559cf8),'..');return path['join'](_0x10d2d6,_0xce99b2(0x1ff),_0xce99b2(0x1ec)+process[_0xce99b2(0x271)],_0xce99b2(0x1fc));}catch{return'';}}function checkMacNodePtySpawnHelper(_0x314aca){const _0x15f01c=a0_0x2efdfc,_0x258a26=coreNodePtySpawnHelperPath(_0x314aca);if(!_0x258a26||CHECKED_PTY_HELPERS[_0x15f01c(0x1ef)](_0x258a26))return;CHECKED_PTY_HELPERS['add'](_0x258a26);if(!fs['existsSync'](_0x258a26)){console[_0x15f01c(0x1f3)]('[wrapper]\x20macOS\x20node'+'-pty\x20spawn-helper\x20no'+_0x15f01c(0x208)+_0x258a26);return;}if(isExecutable(_0x258a26))return;try{const _0x57b285=fs['statSync'](_0x258a26)['mode'];fs['chmodSync'](_0x258a26,_0x57b285|0x1ed);}catch{}if(isExecutable(_0x258a26)){console[_0x15f01c(0x1f3)](_0x15f01c(0x25b)+'S\x20node-pty\x20spawn-hel'+'per\x20executable\x20bit:\x20'+_0x258a26);return;}console['warn'](_0x15f01c(0x1e8)+'-pty\x20spawn-helper\x20is'+_0x15f01c(0x27f)+_0x258a26),console[_0x15f01c(0x1f3)](_0x15f01c(0x229)+'nce\x20to\x20fix\x20terminal/'+_0x15f01c(0x215)),console[_0x15f01c(0x1f3)](_0x15f01c(0x235)+shellQuote(_0x258a26)),console['warn'](_0x15f01c(0x211)),console['warn'](_0x15f01c(0x245));}function printVersion(){const _0x16bc47=a0_0x2efdfc;let _0x31f0e2='';try{_0x31f0e2=coreVersion();}catch{}console['log']('whalent-agent\x20'+WRAPPER_VERSION),console[_0x16bc47(0x277)]('wrapper\x20'+WRAPPER_VERSION),console['log']('core\x20'+(_0x31f0e2||_0x16bc47(0x27d)));}function directCore(_0xf7e643){const _0x26a3fd=a0_0x2efdfc,_0x2ef357=findCoreScript();checkMacNodePtySpawnHelper(_0x2ef357);const _0x115f56=(0x0,import_child_process2['spawnSync'])(process[_0x26a3fd(0x1fa)],[_0x2ef357,..._0xf7e643],{'stdio':'inherit','env':{...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_CORE_ENTRY':_0x2ef357},'shell':![]});process[_0x26a3fd(0x20b)](_0x115f56['status']??0x0);}function shouldSupervise(_0x1a92fb){const _0x1648e2=a0_0x2efdfc;if(_0x1a92fb[_0x1648e2(0x25c)](_0x1648e2(0x240)))return![];if(_0x1a92fb['includes'](_0x1648e2(0x21e))||_0x1a92fb[0x0]==='resume')return![];const _0x203af3=_0x1a92fb[0x0]||'';if(_0x203af3==='ls'||_0x203af3===_0x1648e2(0x20e)||_0x203af3==='ps')return![];if(_0x203af3===_0x1648e2(0x27e)||_0x203af3===_0x1648e2(0x219))return![];if(_0x1a92fb['includes']('--help')||_0x1a92fb['includes']('-h'))return![];return!![];}function installCoreVersion(_0x29de40){const _0x45223a=a0_0x2efdfc,_0x26e01c=resolveExecutablePath('npm');if(!_0x26e01c)return{'ok':![],'output':_0x45223a(0x220)+'H'};const _0x3b3954=CORE_PKG_NAME+'@'+_0x29de40,_0xf91576=run(_0x26e01c,['install','-g',_0x3b3954,_0x45223a(0x234)+NPM_REGISTRY]),_0x3e4362=((_0xf91576['stdout']||'')+'\x0a'+(_0xf91576[_0x45223a(0x260)]||''))['trim']();return{'ok':_0xf91576[_0x45223a(0x20e)]===0x0,'output':_0x3e4362};}async function superviseCore(_0x5be5d7){const _0x2b3071=a0_0x2efdfc;let _0x24b554=![],_0x55319b=null;const _0x39ac69=[];let _0x25588c=MIN_RESTART_DELAY_MS;const _0x32b531=()=>{const _0x597b0b=a0_0x4016;_0x24b554=!![];if(_0x55319b&&!_0x55319b[_0x597b0b(0x22e)])try{_0x55319b['kill'](_0x597b0b(0x225));}catch{}else process[_0x597b0b(0x20b)](0x0);};process['on']('SIGINT',_0x32b531),process['on']('SIGTERM',_0x32b531);while(!![]){const _0x2b3e99=findCoreScript();checkMacNodePtySpawnHelper(_0x2b3e99);const _0x272335={...process.env,'WHALENT_WRAPPER_VERSION':WRAPPER_VERSION,'WHALENT_WRAPPER_MANAGED':'1','WHALENT_CORE_ENTRY':_0x2b3e99},_0x5e291d=readUpgradeState(),_0x97775e=!!_0x5e291d?.['pending'];let _0x41f013=![],_0x34bd93=null,_0x3b91b4='';const _0x26f6ce=[],_0x1dcf0e=0xc;console['log']('[wrapper]\x20starting\x20c'+'ore:\x20'+_0x2b3e99),_0x55319b=(0x0,import_child_process2[_0x2b3071(0x216)])(process['execPath'],[_0x2b3e99,..._0x5be5d7],{'env':_0x272335,'stdio':[_0x2b3071(0x266),'pipe','pipe']});const _0x10f55f=()=>{const _0x59247c=_0x2b3071;if(_0x41f013)return;_0x41f013=!![];if(_0x34bd93)clearTimeout(_0x34bd93);_0x39ac69[_0x59247c(0x24e)]=0x0,_0x25588c=MIN_RESTART_DELAY_MS;const _0x278e53=readUpgradeState();_0x278e53?.['pending']&&(writeUpgradeState({..._0x278e53,'pending':![],'rollback':![],'health_status':_0x59247c(0x20c)}),console[_0x59247c(0x277)](_0x59247c(0x22f)+'de\x20healthy:\x20'+(_0x278e53['installed_version']||_0x278e53['target_version']||'')));},_0x31d184=(_0xba673,_0x203b92=![])=>{const _0x119c73=_0x2b3071,_0x212c6d=_0xba673[_0x119c73(0x265)]();(_0x203b92?process['stderr']:process[_0x119c73(0x24f)])['write'](_0x212c6d);if(_0x203b92)for(const _0x4fc79d of _0x212c6d['split'](/\r?\n/)){if(!_0x4fc79d['trim']())continue;_0x26f6ce[_0x119c73(0x283)](_0x4fc79d);if(_0x26f6ce[_0x119c73(0x24e)]>_0x1dcf0e)_0x26f6ce['shift']();const _0x23fc08=_0x4fc79d[_0x119c73(0x26d)](FATAL_PATTERN);if(_0x23fc08)_0x3b91b4=_0x23fc08[0x0];}(_0x212c6d[_0x119c73(0x25c)]('[gateway]\x20Connected')||_0x212c6d['includes']('Gateway\x20registered\x20m'+_0x119c73(0x25d))||_0x212c6d[_0x119c73(0x25c)]('Gateway:\x20connected'))&&_0x10f55f();};_0x55319b[_0x2b3071(0x24f)]?.['on'](_0x2b3071(0x217),_0x262fc7=>_0x31d184(_0x262fc7,![])),_0x55319b['stderr']?.['on'](_0x2b3071(0x217),_0x409361=>_0x31d184(_0x409361,!![]));_0x97775e&&(_0x34bd93=setTimeout(()=>{const _0x2e0eb2=_0x2b3071;if(_0x41f013||!_0x55319b||_0x55319b['killed'])return;console['error']('[wrapper]\x20new\x20core\x20d'+_0x2e0eb2(0x21a)+_0x2e0eb2(0x23a)+_0x2e0eb2(0x1fe));try{_0x55319b['kill']('SIGTERM');}catch{}},HEALTH_TIMEOUT_MS));const _0x27d150=await new Promise(_0x7fd770=>{const _0x42fff9=_0x2b3071;_0x55319b[_0x42fff9(0x25e)]('exit',(_0x586407,_0x1d98ce)=>_0x7fd770({'code':_0x586407,'signal':_0x1d98ce}));});if(_0x34bd93)clearTimeout(_0x34bd93);_0x55319b=null;if(_0x24b554)process[_0x2b3071(0x20b)](_0x27d150['code']??0x0);const _0x3726d9=readUpgradeState();if(_0x3726d9?.[_0x2b3071(0x214)]&&!_0x41f013){const _0x222547=String(_0x3726d9['previous_core_versio'+'n']||'')['trim']();if(_0x222547){console['error'](_0x2b3071(0x213)+_0x2b3071(0x21d)+_0x222547);const _0x2d0327=installCoreVersion(_0x222547);writeUpgradeState({..._0x3726d9,'pending':![],'rollback':!![],'health_status':_0x2d0327['ok']?_0x2b3071(0x26b):_0x2b3071(0x1f8),'error':_0x2d0327['ok']?'':_0x2d0327['output']});}else writeUpgradeState({..._0x3726d9,'pending':![],'rollback':!![],'health_status':_0x2b3071(0x20f),'error':'previous\x20core\x20versio'+_0x2b3071(0x25a)});}const _0x169218=_0x27d150['code']===SUPERVISED_RESTART_CODE||_0x3726d9?.['pending'];if(!_0x169218&&_0x27d150[_0x2b3071(0x205)]===0x0)process[_0x2b3071(0x20b)](0x0);const _0x58aa57=Date[_0x2b3071(0x1ed)]();_0x39ac69['push'](_0x58aa57);while(_0x39ac69[_0x2b3071(0x24e)]>0x0&&_0x58aa57-_0x39ac69[0x0]>CRASH_WINDOW_MS){_0x39ac69[_0x2b3071(0x1f4)]();}const _0x5dab17=_0x39ac69['length'];writeLastCrash({'timestamp':_0x58aa57,'exit_code':_0x27d150[_0x2b3071(0x205)],'exit_signal':_0x27d150[_0x2b3071(0x248)]||null,'fatal_line':_0x3b91b4,'raw_tail':_0x26f6ce[_0x2b3071(0x270)]('\x0a'),'consecutive_crashes':_0x5dab17}),console[_0x2b3071(0x277)](_0x2b3071(0x21f)+'d\x20code='+(_0x27d150[_0x2b3071(0x205)]??'')+(_0x27d150['signal']?'\x20signal='+_0x27d150[_0x2b3071(0x248)]:'')+'\x20('+_0x5dab17+'/'+MAX_CRASHES_IN_WINDOW+'\x20in\x20last\x20'+Math[_0x2b3071(0x281)](CRASH_WINDOW_MS/0x3e8)+'s)');if(_0x3b91b4)console['log'](_0x2b3071(0x261)+':\x20'+_0x3b91b4);_0x5dab17>=MAX_CRASHES_IN_WINDOW&&(console[_0x2b3071(0x239)]('[wrapper]\x20core\x20faile'+'d\x20'+_0x5dab17+'\x20times\x20within\x20'+Math[_0x2b3071(0x281)](CRASH_WINDOW_MS/0x3e8)+(_0x2b3071(0x267)+_0x2b3071(0x1f5))+lastCrashFilePath()+('.\x20Restart\x20wrapper\x20ma'+'nually\x20after\x20the\x20und'+_0x2b3071(0x22b)+_0x2b3071(0x258))),process[_0x2b3071(0x20b)](0x1)),console[_0x2b3071(0x277)](_0x2b3071(0x238)+_0x2b3071(0x22a)+_0x25588c+'ms'),await new Promise(_0x22a50b=>setTimeout(_0x22a50b,_0x25588c)),_0x25588c=Math[_0x2b3071(0x200)](_0x25588c*0x2,MAX_RESTART_DELAY_MS);}}async function main(){const _0x23ebcc=a0_0x2efdfc,_0x51dedd=process[_0x23ebcc(0x1f9)][_0x23ebcc(0x259)](0x2);if(_0x51dedd[0x0]==='--version'||_0x51dedd[0x0]==='-v'||_0x51dedd[0x0]===_0x23ebcc(0x257)){printVersion();return;}if((_0x51dedd[0x0]==='status'||_0x51dedd[0x0]==='ls'||_0x51dedd[0x0]==='ps')&&!_0x51dedd[_0x23ebcc(0x25c)](_0x23ebcc(0x228))){console[_0x23ebcc(0x277)]('wrapper\x20'+WRAPPER_VERSION);try{console['log']('core\x20'+(coreVersion()||'not\x20installed'));}catch{console[_0x23ebcc(0x277)]('core\x20not\x20installed');}}maybeUpdateWrapper(_0x51dedd);if(!shouldSupervise(_0x51dedd))directCore(_0x51dedd);await superviseCore(_0x51dedd);}main()['catch'](_0x5b0c0e=>{const _0xb05ec8=a0_0x2efdfc;console['error']('[wrapper]\x20Fatal\x20erro'+'r:\x20'+(_0x5b0c0e?.['message']||String(_0x5b0c0e))),process[_0xb05ec8(0x20b)](0x1);});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whalent/agent",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.101",
|
|
4
4
|
"description": "Stable wrapper for Whalent Agent core runtime",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
"build:fast": "node build.mjs --no-obfuscate",
|
|
20
20
|
"build:sqlite-helper": "node scripts/build-sqlite-helper.mjs",
|
|
21
21
|
"build:sqlite-helper:all": "node scripts/build-sqlite-helper.mjs --all",
|
|
22
|
+
"build:terminal-helper": "node scripts/build-terminal-helper.mjs",
|
|
23
|
+
"build:terminal-helper:all": "node scripts/build-terminal-helper.mjs --all",
|
|
22
24
|
"preinstall": "node scripts/preinstall-check.cjs",
|
|
23
25
|
"prepublishOnly": "node build.mjs",
|
|
24
26
|
"start": "node dist/index.cjs"
|
|
@@ -41,7 +43,7 @@
|
|
|
41
43
|
"yaml": "^2.4.0"
|
|
42
44
|
},
|
|
43
45
|
"optionalDependencies": {
|
|
44
|
-
"@whalent/agent-core": "0.3.
|
|
46
|
+
"@whalent/agent-core": "0.3.101",
|
|
45
47
|
"node-pty": "^1.1.0"
|
|
46
48
|
},
|
|
47
49
|
"devDependencies": {
|