@ranger-testing/ranger-cli 2.2.5 → 2.3.0
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/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/featureReportGenerator.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/git.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -0
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/reportGenerator.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -0
- package/build/commands/verifyInBrowser.js +1 -1
- package/package.json +3 -1
package/build/commands/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x5539e7=_0xd630;(function(_0x3acf4f,_0x57a113){const _0x214195=_0xd630,_0x207565=_0x3acf4f();while(!![]){try{const _0x56d3dc=parseInt(_0x214195(0x1f7))/0x1*(parseInt(_0x214195(0x205))/0x2)+-parseInt(_0x214195(0x206))/0x3*(parseInt(_0x214195(0x1fa))/0x4)+parseInt(_0x214195(0x1fd))/0x5*(parseInt(_0x214195(0x1f0))/0x6)+parseInt(_0x214195(0x1ef))/0x7+-parseInt(_0x214195(0x1ee))/0x8*(-parseInt(_0x214195(0x213))/0x9)+-parseInt(_0x214195(0x1f9))/0xa*(-parseInt(_0x214195(0x20f))/0xb)+parseInt(_0x214195(0x1f8))/0xc*(parseInt(_0x214195(0x201))/0xd);if(_0x56d3dc===_0x57a113)break;else _0x207565['push'](_0x207565['shift']());}catch(_0x3cfd86){_0x207565['push'](_0x207565['shift']());}}}(_0x3bee,0xe483e));function _0xd630(_0x535026,_0x1d43e9){_0x535026=_0x535026-0x1ee;const _0x3bee69=_0x3bee();let _0xd630e3=_0x3bee69[_0x535026];return _0xd630e3;}import{readdir,stat}from'fs/promises';function _0x3bee(){const _0x509e7f=['pXyaR','includes','1cksFCT','348tVrFji','10HaRXaT','12NlUtkb','log','Run:\x20ranger\x20profile\x20add\x20<profile-name>','5xnLLnO','kFsmX','sessions','kJHST','62348FCzBUh','.txt','environmentDetails','YpehF','452484JdfPvP','1547871KhCyPE','local','EYdwj','\x20\x20\x20\x20\x20\x20URL:\x20','baseUrl','push','\x0aProfiles:','legacy','\x0aNo\x20profiles\x20found.','1850321SZtiPz','sort','length','UWKdw','714501dXKpdx','104KazkDT','1911028rTxVli','3871626uRCVdo','iZOaL','bug-bashes','isDirectory','\x0a*\x20=\x20active\x20profile'];_0x3bee=function(){return _0x509e7f;};return _0x3bee();}import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x5539e7(0x1ff),_0x5539e7(0x1f2),'reports','local','ci'];export async function getEnvNames(){const _0x284660=_0x5539e7,_0x244c55={'YpehF':function(_0x2c3cc7){return _0x2c3cc7();},'pXyaR':function(_0x4b1ee6,_0x5ac29c,_0x3fe8cc){return _0x4b1ee6(_0x5ac29c,_0x3fe8cc);},'WlPQS':function(_0x5d2342,_0x48890e){return _0x5d2342(_0x48890e);},'kJHST':function(_0x512de2,_0xda0c4c){return _0x512de2(_0xda0c4c);},'EYdwj':function(_0x4e681e,_0x5838fe,_0x18d5fa){return _0x4e681e(_0x5838fe,_0x18d5fa);},'Mzssp':function(_0x39a98e,_0x107ee5,_0x1150b8){return _0x39a98e(_0x107ee5,_0x1150b8);},'tNGzq':function(_0x1c9d5d,_0x48b44b){return _0x1c9d5d(_0x48b44b);},'tNTzr':function(_0x5d168a,_0x40c6f4){return _0x5d168a(_0x40c6f4);},'dQBCv':'settings.json'},_0x411f17=getRangerDir();if(!existsSync(_0x411f17))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x4740cf=await _0x244c55[_0x284660(0x204)](readActiveProfileName),_0x17d429=[],_0x4d361d={},_0x2fa25e=_0x244c55[_0x284660(0x1f5)](join,_0x411f17,_0x284660(0x207));if(_0x244c55['WlPQS'](existsSync,_0x2fa25e)){const _0x507743=await _0x244c55[_0x284660(0x200)](readdir,_0x2fa25e);for(const _0x328b4 of _0x507743){const _0x15f2b1=_0x244c55[_0x284660(0x208)](join,_0x2fa25e,_0x328b4),_0x5cf830=await stat(_0x15f2b1);_0x5cf830['isDirectory']()&&(_0x17d429['push'](_0x328b4),_0x4d361d[_0x328b4]='local');}}const _0x4d497c=_0x244c55['Mzssp'](join,_0x411f17,'ci');if(existsSync(_0x4d497c)){const _0x452be5=await readdir(_0x4d497c);for(const _0x5d3c7a of _0x452be5){const _0x7a0acb=join(_0x4d497c,_0x5d3c7a),_0x1eb5c4=await _0x244c55['tNGzq'](stat,_0x7a0acb);_0x1eb5c4['isDirectory']()&&(_0x17d429[_0x284660(0x20b)](_0x5d3c7a),_0x4d361d[_0x5d3c7a]='ci');}}const _0x175999=await readdir(_0x411f17);for(const _0x207756 of _0x175999){if(NON_ENV_DIRS[_0x284660(0x1f6)](_0x207756))continue;if(_0x207756['startsWith']('.'))continue;if(_0x207756['endsWith'](_0x284660(0x202)))continue;const _0x1cfe4f=join(_0x411f17,_0x207756),_0x56e280=await stat(_0x1cfe4f);_0x56e280[_0x284660(0x1f3)]()&&_0x244c55['tNTzr'](existsSync,join(_0x1cfe4f,_0x244c55['dQBCv']))&&(!_0x17d429[_0x284660(0x1f6)](_0x207756)&&(_0x17d429['push'](_0x207756),_0x4d361d[_0x207756]=_0x284660(0x20d)));}return{'envNames':_0x17d429,'activeEnv':_0x4740cf,'envTypes':_0x4d361d};}export async function envList(){const _0x4a8ca2=_0x5539e7,_0x30092e={'oozZG':_0x4a8ca2(0x20e),'iZOaL':_0x4a8ca2(0x1fc),'UWKdw':_0x4a8ca2(0x20c),'kFsmX':function(_0x5b0da8,_0xb8e3a1){return _0x5b0da8===_0xb8e3a1;},'KyArq':'legacy'},{envNames:_0x3b449d,activeEnv:_0xc76a93,envTypes:_0x30e7c3}=await getEnvNames();if(_0x3b449d[_0x4a8ca2(0x211)]===0x0){console['log'](_0x30092e['oozZG']),console['log'](_0x30092e[_0x4a8ca2(0x1f1)]);return;}console[_0x4a8ca2(0x1fb)](_0x30092e[_0x4a8ca2(0x212)]);for(const _0x588605 of _0x3b449d[_0x4a8ca2(0x210)]()){const _0x496efb=_0x30092e[_0x4a8ca2(0x1fe)](_0x588605,_0xc76a93),_0x4bf1dc=_0x30e7c3[_0x588605]||'local',_0x331580=await loadSettings(_0x588605),_0x10e004=_0x30092e['kFsmX'](_0x4bf1dc,_0x30092e['KyArq'])?'':'\x20['+_0x4bf1dc+']';console['log']('\x20\x20'+(_0x496efb?'*\x20':'\x20\x20')+_0x588605+_0x10e004),_0x331580[_0x4a8ca2(0x20a)]&&console['log'](_0x4a8ca2(0x209)+_0x331580['baseUrl']),_0x331580[_0x4a8ca2(0x203)]&&console[_0x4a8ca2(0x1fb)]('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x331580['environmentDetails']);}_0xc76a93&&console['log'](_0x4a8ca2(0x1f4));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0xc65e02=_0x1064;(function(_0x4bed51,_0x4a439d){const _0x402474=_0x1064,_0x5988fd=_0x4bed51();while(!![]){try{const _0x1bd5c8=parseInt(_0x402474(0x8d))/0x1*(-parseInt(_0x402474(0xe8))/0x2)+-parseInt(_0x402474(0x10b))/0x3+-parseInt(_0x402474(0x13d))/0x4*(parseInt(_0x402474(0xe5))/0x5)+parseInt(_0x402474(0xa2))/0x6*(parseInt(_0x402474(0xa9))/0x7)+-parseInt(_0x402474(0xf3))/0x8*(-parseInt(_0x402474(0xc1))/0x9)+-parseInt(_0x402474(0xb1))/0xa*(parseInt(_0x402474(0xd6))/0xb)+-parseInt(_0x402474(0x79))/0xc*(-parseInt(_0x402474(0x11a))/0xd);if(_0x1bd5c8===_0x4a439d)break;else _0x5988fd['push'](_0x5988fd['shift']());}catch(_0x27e21f){_0x5988fd['push'](_0x5988fd['shift']());}}}(_0x4cfc,0x7c679));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x4cb599 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0xc85ade=>'\x1b[1m'+_0xc85ade+_0xc65e02(0x154);function getGitRepoUrl(){const _0xded7fa=_0xc65e02,_0x2cfc2a={'RKaCX':_0xded7fa(0xb9),'fFDgW':'utf-8','FCnbO':_0xded7fa(0xf7),'sYjOX':'github.com/'};try{const _0x4bf52a=execSync(_0x2cfc2a['RKaCX'],{'encoding':_0x2cfc2a[_0xded7fa(0x12f)],'stdio':[_0xded7fa(0xf7),_0x2cfc2a['FCnbO'],_0x2cfc2a[_0xded7fa(0xde)]]})[_0xded7fa(0xfb)]();return _0x4bf52a['replace'](/\.git$/,'')[_0xded7fa(0xee)](/^git@github\.com:/,_0x2cfc2a['sYjOX'])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x2fb012=_0xc65e02,_0x39fc44={'lEqTe':function(_0x56d554,_0x32e04b,_0x22fe8e){return _0x56d554(_0x32e04b,_0x22fe8e);},'NPlfE':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','UcTmE':'pipe'};try{return _0x39fc44['lEqTe'](execSync,_0x39fc44['NPlfE'],{'encoding':_0x2fb012(0x155),'stdio':[_0x2fb012(0xf7),_0x39fc44[_0x2fb012(0x12b)],_0x39fc44[_0x2fb012(0x12b)]]})[_0x2fb012(0xfb)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x3c00db=_0xc65e02,_0x1ac3cd={'RkLxB':_0x3c00db(0x155)},_0x116d59=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x116d59))return null;try{const _0x347d8c=await readFile(_0x116d59,_0x1ac3cd['RkLxB']);return _0x347d8c['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x36926e){const _0x4e8f69=_0xc65e02,_0x29bc5b={'QnPmy':function(_0x24e0d3){return _0x24e0d3();},'ehPCZ':function(_0x47f910,_0x90b247,_0x1f082b){return _0x47f910(_0x90b247,_0x1f082b);},'WWzUU':function(_0x5c99a8,_0x1e414c,_0x1e124a,_0x3ee59f){return _0x5c99a8(_0x1e414c,_0x1e124a,_0x3ee59f);}},_0x205217=_0x29bc5b[_0x4e8f69(0xd5)](getRangerDir),_0xeed0ea=_0x29bc5b[_0x4e8f69(0x113)](join,_0x205217,ACTIVE_FEATURE_FILE);!existsSync(_0x205217)&&await _0x29bc5b['ehPCZ'](mkdir,_0x205217,{'recursive':!![]}),await _0x29bc5b['WWzUU'](writeFile,_0xeed0ea,_0x36926e,'utf-8');}function getProgressDisplay(_0x4d559e){const _0x336e70=_0xc65e02,_0x484614={'yxtDm':function(_0x180c27,_0x2a10f4){return _0x180c27+_0x2a10f4;},'KbZiJ':function(_0x1e8c15,_0x32449f){return _0x1e8c15>_0x32449f;},'anOYC':function(_0x36a9ad,_0x155c8e){return _0x36a9ad>_0x155c8e;}},_0x316db4=_0x4d559e['verifiedItems']||0x0,_0x595159=_0x4d559e[_0x336e70(0x130)]||0x0,_0x1b7932=_0x4d559e[_0x336e70(0x11b)]||0x0,_0x519322=_0x4d559e[_0x336e70(0x141)]||0x0,_0x576fbf=_0x4d559e[_0x336e70(0x13c)]||0x0,_0x1c499c=_0x484614['yxtDm'](_0x484614['yxtDm'](_0x316db4,_0x595159)+_0x1b7932+_0x519322,_0x576fbf);if(_0x1c499c===0x0)return'-';const _0x560dc7=0xa,_0x56962c=Math[_0x336e70(0x13f)](_0x316db4/_0x1c499c*_0x560dc7),_0x38e26f=_0x484614[_0x336e70(0xd3)]('█'['repeat'](_0x56962c),'░'[_0x336e70(0x10f)](_0x560dc7-_0x56962c)),_0xe2f5fc=[];if(_0x1b7932>0x0)_0xe2f5fc[_0x336e70(0x72)](_0x1b7932+'\x20blocked');if(_0x484614[_0x336e70(0xbe)](_0x519322,0x0))_0xe2f5fc[_0x336e70(0x72)](_0x519322+'\x20incomplete');if(_0x595159>0x0)_0xe2f5fc['push'](_0x595159+_0x336e70(0x7e));const _0x58bfcf=_0x484614[_0x336e70(0xae)](_0xe2f5fc[_0x336e70(0x95)],0x0)?'\x20('+_0xe2f5fc[_0x336e70(0xcc)](',\x20')+')':'';return _0x38e26f+'\x20'+_0x316db4+'/'+_0x1c499c+'\x20verified'+_0x58bfcf;}function getCurrentSessionItems(_0x4bf2f9,_0x785952){const _0x563702=_0xc65e02;if(!_0x4bf2f9[_0x563702(0xec)])return _0x785952[_0x563702(0x88)](_0x5ee449=>!_0x5ee449[_0x563702(0xf6)]);return _0x785952['filter'](_0x5efece=>_0x5efece['sessionId']===_0x4bf2f9['currentSessionId']||!_0x5efece[_0x563702(0xf6)]);}function displayFeature(_0x5563e9,_0x45da8c){const _0x3a09ae=_0xc65e02,_0xd3aa7f={'LXWhL':'\x0a\x20\x20\x20Scenarios:','evEFg':function(_0x138e83,_0x59efce){return _0x138e83<_0x59efce;},'DLeXw':function(_0x4f304b,_0x3aed58){return _0x4f304b===_0x3aed58;},'Hyydw':'closed','WVskq':'verified','IZMFA':'incomplete','LWGqg':function(_0x2a25d8,_0x1ab94e){return _0x2a25d8===_0x1ab94e;},'MHGon':_0x3a09ae(0x134),'pqvjv':'verification_in_progress','txyPq':function(_0x2628d8,_0x11e1cd){return _0x2628d8>_0x11e1cd;},'lPmMy':function(_0x197995,_0x42178f){return _0x197995!==_0x42178f;},'ZuONc':function(_0x1ac4dd,_0x302629){return _0x1ac4dd!==_0x302629;},'hRMDF':function(_0x430578,_0x39c8c5){return _0x430578+_0x39c8c5;},'QxsUI':function(_0x427de5,_0x4ddf20){return _0x427de5===_0x4ddf20;},'AnKYG':function(_0x473f07,_0x55fad7){return _0x473f07===_0x55fad7;},'PdgVS':_0x3a09ae(0x111)};console['log']('\x0a'+_0x5563e9[_0x3a09ae(0xca)]+'\x20('+_0x5563e9['dashboardUrl']+')');_0x5563e9['stats']&&console[_0x3a09ae(0xb2)](_0x3a09ae(0x123)+getProgressDisplay(_0x5563e9['stats']));_0x5563e9['description']&&console[_0x3a09ae(0xb2)]('\x20\x20\x20Description:\x20'+_0x5563e9['description']);_0x5563e9['gitRepoUrl']&&console[_0x3a09ae(0xb2)]('\x20\x20\x20Repository:\x20'+_0x5563e9['gitRepoUrl']);_0x5563e9['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x5563e9['gitBranch']);console[_0x3a09ae(0xb2)](_0x3a09ae(0x133)+new Date(_0x5563e9[_0x3a09ae(0xb5)])[_0x3a09ae(0xc7)]());_0x5563e9['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x5563e9['completedAt'])[_0x3a09ae(0xc7)]());if(_0x45da8c&&_0x45da8c['length']>0x0){console['log'](_0xd3aa7f['LXWhL']);for(let _0xfa4604=0x0;_0xd3aa7f[_0x3a09ae(0x94)](_0xfa4604,_0x45da8c[_0x3a09ae(0x95)]);_0xfa4604++){const _0x5c9bc2=_0x45da8c[_0xfa4604];let _0x5f4e71;if(_0xd3aa7f['DLeXw'](_0x5c9bc2[_0x3a09ae(0x11d)],_0xd3aa7f[_0x3a09ae(0x108)])&&_0xd3aa7f[_0x3a09ae(0x99)](_0x5c9bc2['terminalReason'],_0x3a09ae(0x111)))_0x5f4e71='✅';else{if(_0x5c9bc2[_0x3a09ae(0x11d)]===_0xd3aa7f[_0x3a09ae(0xc8)])_0x5f4e71='🟢';else{if(_0x5c9bc2[_0x3a09ae(0x11d)]===_0xd3aa7f['IZMFA'])_0x5f4e71='🟠';else{if(_0xd3aa7f[_0x3a09ae(0x103)](_0x5c9bc2[_0x3a09ae(0x11d)],_0xd3aa7f['MHGon']))_0x5f4e71='🛑';else{if(_0x5c9bc2['status']===_0x3a09ae(0xd2))_0x5f4e71='⛔';else _0xd3aa7f['DLeXw'](_0x5c9bc2[_0x3a09ae(0x11d)],_0xd3aa7f['pqvjv'])?_0x5f4e71='⏳':_0x5f4e71='⬜';}}}}const _0x2febc1=_0xd3aa7f[_0x3a09ae(0x12e)](_0x5c9bc2[_0x3a09ae(0x10d)],0x1)?'\x20(v'+_0x5c9bc2['version']+')':'',_0x16398d=_0x5c9bc2['version']>0x1&&_0x5c9bc2[_0x3a09ae(0xdc)]&&_0xd3aa7f['lPmMy'](_0x5c9bc2['status'],_0xd3aa7f['Hyydw'])&&_0xd3aa7f['ZuONc'](_0x5c9bc2[_0x3a09ae(0x11d)],'verified')?'\x20[has\x20reviewer\x20feedback]':'';console[_0x3a09ae(0xb2)]('\x20\x20\x20'+_0xd3aa7f[_0x3a09ae(0xf5)](_0xfa4604,0x1)+'.\x20'+_0x5f4e71+'\x20'+_0x5c9bc2[_0x3a09ae(0xa3)]+_0x2febc1+_0x16398d);_0x5c9bc2[_0x3a09ae(0x11d)]===_0xd3aa7f[_0x3a09ae(0x140)]&&_0x5c9bc2['blockedReason']&&console['log'](_0x3a09ae(0x110)+_0x5c9bc2['blockedReason']);_0xd3aa7f['LWGqg'](_0x5c9bc2[_0x3a09ae(0x11d)],_0xd3aa7f['IZMFA'])&&_0x5c9bc2[_0x3a09ae(0xe3)]&&console[_0x3a09ae(0xb2)](_0x3a09ae(0xa7)+_0x5c9bc2[_0x3a09ae(0xe3)]);if(_0xd3aa7f['QxsUI'](_0x5c9bc2['status'],_0xd3aa7f['Hyydw'])&&_0xd3aa7f['AnKYG'](_0x5c9bc2[_0x3a09ae(0x126)],_0xd3aa7f[_0x3a09ae(0x8b)]))console[_0x3a09ae(0xb2)]('\x20\x20\x20\x20\x20\x20Approved');else _0x5c9bc2['status']===_0x3a09ae(0xd2)&&_0x5c9bc2[_0x3a09ae(0xdd)]&&console[_0x3a09ae(0xb2)](_0x3a09ae(0x10e)+_0x5c9bc2['canceledReason']);}}}export async function featureCreate(_0x4d1a48,_0x14a139){const _0x3fa474=_0xc65e02,_0x324ec9={'RAENj':function(_0x45db40,_0x484a5c){return _0x45db40===_0x484a5c;},'bekBI':function(_0xf8e9fd,_0x5533f0){return _0xf8e9fd(_0x5533f0);},'XxqtI':function(_0x3f1883,_0x23b691){return _0x3f1883(_0x23b691);},'NyRNP':function(_0x4011f9,_0x401c96){return _0x4011f9(_0x401c96);}},{envNames:_0xbadea6}=await getEnvNames();_0x324ec9[_0x3fa474(0xdb)](_0xbadea6[_0x3fa474(0x95)],0x0)&&console['warn']('\x0a'+_0x324ec9['bekBI'](formatProfileRequiredMessage,_0x3ba9ac=>bold(_0x3ba9ac)));const _0xe92e6=_0x14a139[_0x3fa474(0xd1)]?_0x14a139['scenarios']['map'](_0x509072=>_0x509072['trim']()):[],_0x18ff87=getGitRepoUrl(),_0x258c39=getGitBranch();console['log'](_0x3fa474(0xcf));const _0xee4ac8=await _0x324ec9[_0x3fa474(0x86)](createFeature,{'name':_0x4d1a48,'description':_0x14a139['description'],'checklist':_0xe92e6,'gitRepoUrl':_0x18ff87,'gitBranch':_0x258c39});await _0x324ec9['NyRNP'](setActiveFeatureId,_0xee4ac8['id']),await tryStartCurrentSession(_0xee4ac8['id']);const _0x362365=process[_0x3fa474(0x77)][_0x3fa474(0x9a)];_0x362365&®isterSession(_0x362365,_0xee4ac8['id']),console[_0x3fa474(0xb2)](_0x3fa474(0x83)+_0xee4ac8['id']),displayFeature(_0xee4ac8,_0xee4ac8['checklistItems']),console['log'](_0x3fa474(0x9f));}export async function featureList(_0x366c7e){const _0x5163e4=_0xc65e02,_0x59cfae={'XrCiw':function(_0x3a8a6b){return _0x3a8a6b();},'dMJwN':function(_0x36f5e9,_0x40febb){return _0x36f5e9(_0x40febb);},'qGSjP':function(_0x36b1a3,_0x3313ae){return _0x36b1a3>_0x3313ae;},'ErXXZ':function(_0x11b037,_0x5b4cba){return _0x11b037(_0x5b4cba);},'ntkuN':function(_0x157480,_0x17cc68){return _0x157480!==_0x17cc68;},'CMLvA':'\x20--current-branch','iIbeS':'\x20--include-deleted'},_0x3bb700={'limit':_0x366c7e['limit']??0xa,'offset':_0x366c7e['offset']??0x0,'includeDeleted':_0x366c7e['includeDeleted']};_0x366c7e[_0x5163e4(0xfa)]&&(_0x3bb700['gitRepoUrl']=_0x59cfae['XrCiw'](getGitRepoUrl),_0x3bb700['gitBranch']=getGitBranch());const _0x3fd6b7=await _0x59cfae[_0x5163e4(0x78)](listFeatures,_0x3bb700);if(_0x3fd6b7['items'][_0x5163e4(0x95)]===0x0){console['log']('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x19c61d=_0x59cfae['qGSjP'](_0x3fd6b7[_0x5163e4(0xc3)],_0x3fd6b7['items'][_0x5163e4(0x95)])?'Showing\x20'+_0x3fd6b7['items']['length']+_0x5163e4(0x13e)+_0x3fd6b7['totalCount']:_0x3fd6b7['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x19c61d+':\x0a');for(const _0x1365f0 of _0x3fd6b7['items']){const _0x17ca1f=_0x5163e4(0x71)['split']('|');let _0x2e8d6f=0x0;while(!![]){switch(_0x17ca1f[_0x2e8d6f++]){case'0':console[_0x5163e4(0xb2)](''+_0x1365f0[_0x5163e4(0xca)]);continue;case'1':console[_0x5163e4(0xb2)]('');continue;case'2':console['log'](_0x5163e4(0x133)+new Date(_0x1365f0['createdAt'])['toLocaleDateString']());continue;case'3':_0x1365f0['gitBranch']&&console[_0x5163e4(0xb2)]('\x20\x20\x20Branch:\x20'+_0x1365f0['gitBranch']);continue;case'4':console['log']('\x20\x20\x20ID:\x20'+_0x1365f0['id']);continue;case'5':_0x1365f0[_0x5163e4(0xcb)]&&console['log'](_0x5163e4(0x123)+_0x59cfae['ErXXZ'](getProgressDisplay,_0x1365f0['stats']));continue;}break;}}const _0x56ac29=_0x3bb700[_0x5163e4(0x8f)]??0xa,_0x2d1861=(_0x3bb700['offset']??0x0)+_0x3fd6b7[_0x5163e4(0x143)][_0x5163e4(0x95)];if(_0x2d1861<_0x3fd6b7[_0x5163e4(0xc3)]){const _0x1a0416=_0x59cfae[_0x5163e4(0x87)](_0x56ac29,0xa)?_0x5163e4(0xd7)+_0x56ac29:'',_0x444781=_0x366c7e[_0x5163e4(0xfa)]?_0x59cfae[_0x5163e4(0x121)]:'',_0xa68c49=_0x366c7e[_0x5163e4(0x139)]?_0x59cfae[_0x5163e4(0x90)]:'';console['log'](_0x5163e4(0x117)+_0x2d1861+_0x1a0416+_0x444781+_0xa68c49);}}export async function featureShow(_0x37e2d0){const _0x343ca0=_0xc65e02,_0x371552={'oaHHT':function(_0x2cfa3f){return _0x2cfa3f();},'iNtzZ':_0x343ca0(0x73),'aYmBW':function(_0x3dbecd,_0x209b76){return _0x3dbecd(_0x209b76);}},_0x297760=_0x37e2d0||await _0x371552[_0x343ca0(0xb7)](getActiveFeatureId);if(!_0x297760)throw new Error(_0x371552[_0x343ca0(0x148)]);const _0x4c2bb0=await _0x371552['aYmBW'](getFeature,_0x297760);displayFeature(_0x4c2bb0,_0x4c2bb0[_0x343ca0(0xad)]);}export async function featureResume(_0x123c93){const _0x9322a7=_0xc65e02,_0x3ef975={'APpnO':function(_0x296ef0,_0x160815){return _0x296ef0(_0x160815);},'SxLrV':function(_0x3438df,_0x147ee0){return _0x3438df!==_0x147ee0;},'PTPYG':function(_0x5334f8,_0x2efe46,_0x3e6788){return _0x5334f8(_0x2efe46,_0x3e6788);},'szLQP':_0x9322a7(0xce),'HbONj':_0x9322a7(0x14d),'UVzVp':_0x9322a7(0x137),'ihzaV':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','OlnQp':_0x9322a7(0xe6),'VOGjD':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','GMETH':function(_0x5ce6e8,_0x1cc5da){return _0x5ce6e8(_0x1cc5da);}};if(_0x123c93){const _0x14d5de=await getFeature(_0x123c93);await _0x3ef975[_0x9322a7(0x13a)](setActiveFeatureId,_0x14d5de['id']);const _0x55ac84=getGitBranch();_0x55ac84&&_0x3ef975[_0x9322a7(0x8e)](_0x55ac84,_0x14d5de[_0x9322a7(0xfc)])&&(await _0x3ef975['PTPYG'](updateFeature,_0x14d5de['id'],{'gitBranch':_0x55ac84}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x55ac84));console[_0x9322a7(0xb2)](_0x9322a7(0x105)+_0x14d5de['name']+'\x20('+_0x14d5de['id']+')'),await tryStartCurrentSession(_0x14d5de['id']);const _0x1c22ca=process[_0x9322a7(0x77)][_0x9322a7(0x9a)];_0x1c22ca&®isterSession(_0x1c22ca,_0x14d5de['id']);displayFeature(_0x14d5de,_0x14d5de['checklistItems']),await printFeedbackNudge(_0x14d5de['id']);return;}const _0x2d60f0=getGitRepoUrl(),_0x316628=getGitBranch();if(!_0x2d60f0&&!_0x316628)throw new Error(_0x3ef975[_0x9322a7(0x119)]);console[_0x9322a7(0xb2)](_0x9322a7(0xbd)+(_0x2d60f0||_0x3ef975['HbONj'])+'\x20/\x20'+(_0x316628||_0x9322a7(0x14d))+_0x9322a7(0x82));const _0x2f932d=await listFeatures({'gitRepoUrl':_0x2d60f0,'gitBranch':_0x316628}),_0x264367=_0x2f932d[_0x9322a7(0x143)][_0x9322a7(0x88)](_0x23a4c9=>!_0x23a4c9[_0x9322a7(0x146)]);if(_0x264367[_0x9322a7(0x95)]===0x0){console[_0x9322a7(0xb2)](_0x3ef975['UVzVp']),console['log'](_0x3ef975['ihzaV']);return;}let _0x464a92;if(_0x264367[_0x9322a7(0x95)]===0x1)_0x464a92=_0x264367[0x0];else{const _0x2f91cf=process[_0x9322a7(0xa6)][_0x9322a7(0x11c)]&&process['stdout']['isTTY'];if(!_0x2f91cf){console[_0x9322a7(0xb2)](_0x9322a7(0xd4));for(const _0x59c3f5 of _0x264367){console['log']('\x20\x20'+_0x59c3f5[_0x9322a7(0xca)]),console['log'](_0x9322a7(0x81)+_0x59c3f5['id']),_0x59c3f5['stats']&&console[_0x9322a7(0xb2)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x59c3f5['stats'])),_0x59c3f5[_0x9322a7(0xfc)]&&console[_0x9322a7(0xb2)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x59c3f5['gitBranch']);}throw new Error(_0x3ef975[_0x9322a7(0xb6)]);}const {selected:_0x90eeef}=await _0x4cb599[_0x9322a7(0xe7)]([{'type':'list','name':'selected','message':_0x3ef975[_0x9322a7(0xff)],'choices':_0x264367['map'](_0x3442c7=>({'name':_0x3442c7['name']+'\x20('+_0x3442c7['id']+')','value':_0x3442c7['id']}))}]);_0x464a92=_0x264367['find'](_0x3147de=>_0x3147de['id']===_0x90eeef);}await _0x3ef975[_0x9322a7(0x13a)](setActiveFeatureId,_0x464a92['id']);_0x316628&&_0x316628!==_0x464a92['gitBranch']&&(await _0x3ef975['PTPYG'](updateFeature,_0x464a92['id'],{'gitBranch':_0x316628}),console['log'](_0x9322a7(0xb3)+_0x316628));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x464a92['name']+'\x20('+_0x464a92['id']+')'),await _0x3ef975['GMETH'](tryStartCurrentSession,_0x464a92['id']);const _0x7efb67=await getFeature(_0x464a92['id']),_0xeca7da=process[_0x9322a7(0x77)][_0x9322a7(0x9a)];_0xeca7da&®isterSession(_0xeca7da,_0x7efb67['id']),displayFeature(_0x7efb67,_0x7efb67[_0x9322a7(0xad)]),await printFeedbackNudge(_0x7efb67['id']);}async function printFeedbackNudge(_0x4b5640){const _0x11a64f=_0xc65e02,_0xe82073={'VZOaf':function(_0x1eab0a,_0x4b0d38){return _0x1eab0a(_0x4b0d38);},'IdPOM':function(_0x1b6e3b,_0x587210){return _0x1b6e3b>_0x587210;},'CnvUw':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x24a4eb}=await _0xe82073['VZOaf'](getActionItems,_0x4b5640);let _0x540123=0x0,_0x2f4b9e=0x0;for(const _0x3743d6 of _0x24a4eb){const _0x3a2e94=await getItemFeedback(_0x4b5640,_0x3743d6['id']);_0xe82073['IdPOM'](_0x3a2e94[_0x11a64f(0x157)]['length'],0x0)&&(_0x540123+=_0x3a2e94['unaddressedComments']['length'],_0x2f4b9e++);}_0xe82073[_0x11a64f(0xef)](_0x540123,0x0)&&(console[_0x11a64f(0xb2)](_0x11a64f(0x7f)+_0x540123+_0x11a64f(0x118)+_0x2f4b9e+_0x11a64f(0x8a)),console['log'](_0xe82073[_0x11a64f(0x106)]));}catch{}}async function tryStartCurrentSession(_0x38e832){const _0x11c396=_0xc65e02,_0x2374cd={'NUjAn':function(_0x1d0868,_0x349c14){return _0x1d0868(_0x349c14);}};try{const {sessions:_0x4251ee}=await _0x2374cd[_0x11c396(0x107)](listFeatureSessions,_0x38e832),_0xdbef9c=_0x4251ee['find'](_0x1afdfe=>_0x1afdfe[_0x11c396(0x11d)]==='ready');_0xdbef9c&&(await startSession(_0x38e832,_0xdbef9c['id']),console[_0x11c396(0xb2)](_0x11c396(0x145)+_0xdbef9c['iteration']));}catch{}}export async function featureReport(_0x37bcad,_0x2090ea){const _0x24989e=_0xc65e02,_0x3ee81c={'KdnbK':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','JeuQo':function(_0x321691,_0x47dcf9,_0x49b45b){return _0x321691(_0x47dcf9,_0x49b45b);},'NbrRt':function(_0x26d1ee,_0x339340,_0x5dfee7,_0x36cff0){return _0x26d1ee(_0x339340,_0x5dfee7,_0x36cff0);},'ujEIK':function(_0x4e61eb){return _0x4e61eb();},'bGwcS':function(_0x19e73d,_0x3da91d,_0x38c6db){return _0x19e73d(_0x3da91d,_0x38c6db);},'Vfxvm':'utf-8'},_0x37fafb=_0x37bcad||await getActiveFeatureId();if(!_0x37fafb)throw new Error(_0x3ee81c[_0x24989e(0x12a)]);console[_0x24989e(0xb2)]('\x0aGenerating\x20report...');const _0x4c75a2=await _0x3ee81c['JeuQo'](getFeatureReportMarkdown,_0x37fafb,{'style':_0x2090ea['style']}),_0x14ae4c=_0x2090ea[_0x24989e(0x12d)]||_0x3ee81c[_0x24989e(0x10c)](join,_0x3ee81c[_0x24989e(0x12c)](getRangerDir),_0x24989e(0xf8),_0x37fafb+'.md'),_0xf6973f=_0x3ee81c[_0x24989e(0x11f)](join,_0x14ae4c,'..');!existsSync(_0xf6973f)&&await _0x3ee81c[_0x24989e(0x142)](mkdir,_0xf6973f,{'recursive':!![]}),await writeFile(_0x14ae4c,_0x4c75a2,_0x3ee81c[_0x24989e(0x131)]),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x14ae4c);}function getScenarioResult(_0x36b490){const _0x161abb=_0xc65e02,_0x2a3d2d={'DeRYH':function(_0x332eae,_0x4e1b60){return _0x332eae===_0x4e1b60;}};if(_0x2a3d2d[_0x161abb(0xf0)](_0x36b490['status'],'closed'))return _0x36b490[_0x161abb(0x126)]??_0x161abb(0xd2);if(_0x2a3d2d['DeRYH'](_0x36b490[_0x161abb(0x11d)],_0x161abb(0xd8)))return _0x161abb(0xbf);return _0x36b490['status'];}function getScenarioRationale(_0x3c10e4,_0x58e511){const _0x55345c=_0xc65e02;if(_0x58e511)return _0x58e511;if(_0x3c10e4[_0x55345c(0x8c)])return _0x3c10e4[_0x55345c(0x8c)];if(_0x3c10e4[_0x55345c(0xe3)])return _0x3c10e4['incompleteReason'];if(_0x3c10e4['canceledReason'])return _0x3c10e4['canceledReason'];if(_0x3c10e4['notes'])return _0x3c10e4['notes'];return null;}export async function featureReportPrDescription(_0xaa1cf4,_0x36d25d){const _0x3a1e58=_0xc65e02,_0x19ad32={'jZbrk':_0x3a1e58(0x97),'eerlJ':function(_0x343c28,_0x388e7d){return _0x343c28(_0x388e7d);},'fPhZV':function(_0x2c8e42,_0x24bf9d,_0x2e99b8){return _0x2c8e42(_0x24bf9d,_0x2e99b8);},'qQCsk':function(_0x2ebf61,_0x18b297){return _0x2ebf61===_0x18b297;},'MpbJG':_0x3a1e58(0x7a),'lKbPt':function(_0x4fc245,_0x1f8da3){return _0x4fc245>_0x1f8da3;},'bmbFk':function(_0x593bbc,_0x57a9b3){return _0x593bbc<_0x57a9b3;},'dPaxT':function(_0x45b97b,_0x293a68){return _0x45b97b+_0x293a68;},'DGAXV':function(_0x25f10b,_0x6b8ed0){return _0x25f10b===_0x6b8ed0;},'vpSNz':function(_0x4b8de2,_0x46cdc3,_0x47f14f,_0x5d4179){return _0x4b8de2(_0x46cdc3,_0x47f14f,_0x5d4179);}},_0x48137b=_0xaa1cf4||await getActiveFeatureId();if(!_0x48137b)throw new Error(_0x19ad32['jZbrk']);const _0x2e43eb=await _0x19ad32['eerlJ'](getFeature,_0x48137b),_0xad09d9=_0x2e43eb['checklistItems']||[],_0x4f172c=_0x19ad32['fPhZV'](getCurrentSessionItems,_0x2e43eb,_0xad09d9);_0x19ad32['qQCsk'](_0x4f172c['length'],0x0)&&(console['error'](_0x19ad32[_0x3a1e58(0xd9)]),process['exit'](0x1));const _0x523a84=_0x36d25d[_0x3a1e58(0x149)]??[],_0x4ef0ed=_0x523a84['filter'](_0x3b556a=>!Number[_0x3a1e58(0xaf)](_0x3b556a)||_0x3b556a<0x1||_0x3b556a>_0x4f172c[_0x3a1e58(0x95)]);if(_0x19ad32['lKbPt'](_0x4ef0ed[_0x3a1e58(0x95)],0x0)){console[_0x3a1e58(0xa5)](_0x3a1e58(0x127)+_0x4ef0ed[_0x3a1e58(0xcc)](',\x20')),console[_0x3a1e58(0xb2)](_0x3a1e58(0x76));for(let _0x57ad28=0x0;_0x19ad32['bmbFk'](_0x57ad28,_0x4f172c['length']);_0x57ad28++){console[_0x3a1e58(0xb2)]('\x20\x20'+_0x19ad32['dPaxT'](_0x57ad28,0x1)+'.\x20'+_0x4f172c[_0x57ad28][_0x3a1e58(0xa3)]);}process[_0x3a1e58(0xc2)](0x1);}const _0x2a2fa6=new Set(_0x523a84[_0x3a1e58(0x114)](_0x11004c=>_0x11004c-0x1)),_0x305556=_0x4f172c[_0x3a1e58(0x88)]((_0x2a386e,_0x48b4e3)=>!_0x2a2fa6[_0x3a1e58(0xe4)](_0x48b4e3));_0x19ad32['DGAXV'](_0x305556['length'],0x0)&&(console['error'](_0x3a1e58(0xf1)),process[_0x3a1e58(0xc2)](0x1));if(_0x36d25d[_0x3a1e58(0xb4)])await _0x19ad32[_0x3a1e58(0x136)](outputJsonReport,_0x48137b,_0x2e43eb,_0x305556);else{const _0x3ecaae=await getFeatureReportMarkdown(_0x48137b,{'itemIds':_0x305556['map'](_0xe7b4a0=>_0xe7b4a0['id'])});process[_0x3a1e58(0xac)]['write'](_0x3ecaae['trimEnd']()+'\x0a');}}function _0x1064(_0x25f627,_0x5678dd){_0x25f627=_0x25f627-0x71;const _0x4cfcd6=_0x4cfc();let _0x10649f=_0x4cfcd6[_0x25f627];return _0x10649f;}async function outputJsonReport(_0x10681f,_0x44da79,_0x558c29){const _0x3f4b01=_0xc65e02,_0x10f2a4={'kSlEu':function(_0x4d3915,_0x1fc268){return _0x4d3915(_0x1fc268);},'oTZrR':function(_0x4b66f6,_0x14bac7){return _0x4b66f6===_0x14bac7;}},_0x5b3284=getApiBaseUrl(),_0x5b52ab=await getFeatureReport(_0x10681f),_0x1f5cdc=new Map(_0x5b52ab[_0x3f4b01(0xad)]['map'](_0x1f71c8=>[_0x1f71c8['id'],_0x1f71c8])),_0x584f6d=await Promise[_0x3f4b01(0x14f)](_0x558c29['map'](async _0x512f06=>{const _0x1c6a76=_0x3f4b01,_0x4bbde4=_0x1f5cdc[_0x1c6a76(0x100)](_0x512f06['id']),_0x18c525=_0x4bbde4?.[_0x1c6a76(0xc4)]??null;let _0x41e476=[];if(_0x512f06['browserSessionId'])try{const {steps:_0x376643}=await _0x10f2a4[_0x1c6a76(0x125)](getBrowserSessionSteps,_0x512f06['browserSessionId']);_0x376643[_0x1c6a76(0x95)]>0x0&&(_0x41e476=_0x376643[_0x1c6a76(0x114)](_0x3abe10=>{const _0x498880=_0x1c6a76,_0xab1377=_0x3abe10['assets'][_0x498880(0xfe)](_0x18395d=>_0x18395d['assetType']===_0x498880(0x96)&&_0x18395d['timing']==='after')??_0x3abe10[_0x498880(0xa0)]['find'](_0x2422ee=>_0x2422ee['assetType']==='screenshot');let _0x4986bb=null,_0x38018d=null;if(_0xab1377){const _0x3f45d6=_0xab1377[_0x498880(0x13b)]['location']['split']('/')['pop']();_0x4986bb=_0x5b3284+'/api/v1/mcp/browser-sessions/'+_0x512f06['browserSessionId']+_0x498880(0xed)+_0x3f45d6,_0x3f45d6&&(_0x38018d=_0x3f45d6[_0x498880(0xee)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x38018d||_0x3abe10[_0x498880(0xa3)]||_0x3abe10['stepName']||'Step\x20'+_0x3abe10['position'],'screenshot':_0x4986bb,'is_key_step':_0x3abe10[_0x498880(0xc9)]};}));}catch{}return _0x10f2a4['oTZrR'](_0x41e476['length'],0x0)&&_0x18c525?.['screenshotUrls']&&(_0x41e476=_0x18c525[_0x1c6a76(0x124)]['map']((_0x3e2fa7,_0x5557fb)=>({'description':_0x1c6a76(0x129)+(_0x5557fb+0x1),'screenshot':_0x3e2fa7,'is_key_step':![]}))),{'description':_0x512f06[_0x1c6a76(0xa3)],'result':getScenarioResult(_0x512f06),'rationale':getScenarioRationale(_0x512f06,_0x18c525?.['agentResponse']),'steps':_0x41e476};})),_0x22e392={'url':_0x44da79['dashboardUrl'],'scenarios':_0x584f6d};process['stdout']['write'](JSON['stringify'](_0x22e392,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x2727fc){const _0x3b4f86=_0xc65e02,_0x491cb7={'wlrpW':function(_0x41d58a,_0x171b1d){return _0x41d58a(_0x171b1d);},'HGVda':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','FHAoA':function(_0x2f00f6,_0x2a7752){return _0x2f00f6!==_0x2a7752;}},_0x4e73db=_0x2727fc||await getActiveFeatureId();if(!_0x4e73db)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x32fd3a=await _0x491cb7[_0x3b4f86(0x7d)](getFeature,_0x4e73db);if(!_0x32fd3a[_0x3b4f86(0xec)])throw new Error(_0x491cb7[_0x3b4f86(0xba)]);const {sessions:_0x3ec151}=await listFeatureSessions(_0x4e73db),_0x167694=_0x3ec151['find'](_0xbd85af=>_0xbd85af['id']===_0x32fd3a['currentSessionId']);if(!_0x167694)throw new Error(_0x3b4f86(0x144));if(_0x167694[_0x3b4f86(0x11d)]===_0x3b4f86(0x128)){console[_0x3b4f86(0xb2)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x491cb7[_0x3b4f86(0x93)](_0x167694[_0x3b4f86(0x11d)],'in_progress'))throw new Error(_0x3b4f86(0x153)+_0x167694[_0x3b4f86(0x11d)]);console[_0x3b4f86(0xb2)]('\x0aConcluding\x20session...'),await concludeSession(_0x4e73db,_0x32fd3a[_0x3b4f86(0xec)]),console[_0x3b4f86(0xb2)]('\x0a✅\x20Session\x20'+_0x167694['iteration']+_0x3b4f86(0x132)),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0xc170f5){const _0x1377d5=_0xc65e02,_0x28ee94={'rHXKK':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','iuRFg':function(_0x53938c,_0x141574){return _0x53938c(_0x141574);},'BhqAu':_0x1377d5(0xd0),'uXTGq':function(_0x1cb5e9,_0x584df6){return _0x1cb5e9===_0x584df6;},'oEMUi':'completed','DUHEE':function(_0x1c9248,_0x551db8){return _0x1c9248===_0x551db8;},'VanAw':'in_progress'},_0xd13a4f=_0xc170f5||await getActiveFeatureId();if(!_0xd13a4f)throw new Error(_0x28ee94[_0x1377d5(0x11e)]);const _0x5a12b1=await _0x28ee94['iuRFg'](getFeature,_0xd13a4f);console['log'](_0x1377d5(0x7b)+_0x5a12b1['name']+'\x0a');const {sessions:_0x4e1b76}=await listFeatureSessions(_0xd13a4f);if(_0x4e1b76['length']===0x0){console[_0x1377d5(0xb2)](_0x28ee94['BhqAu']);return;}for(const _0x81c24c of _0x4e1b76){const _0x16c060=_0x28ee94[_0x1377d5(0xda)](_0x81c24c['status'],_0x28ee94['oEMUi'])?'✅':_0x28ee94['DUHEE'](_0x81c24c['status'],_0x28ee94[_0x1377d5(0x98)])?'🔄':'▶️';console['log'](_0x16c060+'\x20Session\x20'+_0x81c24c['iteration']+'\x20('+_0x81c24c['id']+')'),console['log'](_0x1377d5(0xfd)+_0x81c24c[_0x1377d5(0x11d)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x81c24c[_0x1377d5(0xb5)])[_0x1377d5(0xc7)]()),_0x81c24c['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x81c24c[_0x1377d5(0x146)])[_0x1377d5(0xc7)]()),console[_0x1377d5(0xb2)]('');}}export async function featureAddScenario(_0x4e3d5b,_0x26250f){const _0x3f61c7=_0xc65e02,_0x6e31b3={'wGJkA':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','eXuNI':function(_0x5177a3,_0x477364){return _0x5177a3(_0x477364);},'bZElS':function(_0x5d492f,_0x296fca,_0x4435e8){return _0x5d492f(_0x296fca,_0x4435e8);}},_0x1a0824=_0x26250f||await getActiveFeatureId();if(!_0x1a0824)throw new Error(_0x6e31b3[_0x3f61c7(0x122)]);const _0x1c217e=await _0x6e31b3[_0x3f61c7(0x7c)](getFeature,_0x1a0824);if(_0x1c217e[_0x3f61c7(0x150)]&&!_0x1c217e[_0x3f61c7(0x150)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x1c217e[_0x3f61c7(0x9e)]);await createChecklistItem(_0x1a0824,_0x4e3d5b);const _0x12b84f=await _0x6e31b3[_0x3f61c7(0x7c)](getFeature,_0x1a0824);console['log'](_0x3f61c7(0xaa)),_0x6e31b3[_0x3f61c7(0x14e)](displayFeature,_0x12b84f,_0x12b84f['checklistItems']);}export async function featureEditScenario(_0x5a1985,_0x477929){const _0x1e30e4=_0xc65e02,_0xdc4612={'IZkIX':function(_0x15bec0,_0x1bce08){return _0x15bec0(_0x1bce08);},'LTgBD':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','qUfeA':_0x1e30e4(0x76),'AccKg':function(_0x16a577,_0x258a6f){return _0x16a577<_0x258a6f;},'pWNqW':function(_0xc6e687,_0x48b98d){return _0xc6e687-_0x48b98d;},'pEymd':function(_0x795f79,_0x3c5c85){return _0x795f79>=_0x3c5c85;},'WAeZn':function(_0xf72e05,_0x313fa8){return _0xf72e05+_0x313fa8;},'Kbmmi':function(_0xc0f7b0,_0x237bc9,_0x4a4daa,_0x2824d1){return _0xc0f7b0(_0x237bc9,_0x4a4daa,_0x2824d1);},'cQXli':function(_0x1f30ac,_0x9ee05e,_0x2b26f8){return _0x1f30ac(_0x9ee05e,_0x2b26f8);}},_0x1b21c0=_0x477929['id']||await getActiveFeatureId();!_0x1b21c0&&(console[_0x1e30e4(0xa5)](_0x1e30e4(0x14b)),console[_0x1e30e4(0xa5)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x1e30e4(0xc2)](0x1));const _0xae8b81=await _0xdc4612['IZkIX'](getFeature,_0x1b21c0);_0xae8b81[_0x1e30e4(0x150)]&&!_0xae8b81['latestReview']['submittedAt']&&(console[_0x1e30e4(0xa5)](_0xdc4612[_0x1e30e4(0x147)]),console[_0x1e30e4(0xa5)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1e30e4(0xa5)]('\x20\x20'+_0xae8b81[_0x1e30e4(0x9e)]),process['exit'](0x1));const _0x5d3c73=_0xae8b81[_0x1e30e4(0xad)]||[];_0x5d3c73[_0x1e30e4(0x95)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process[_0x1e30e4(0xc2)](0x1));if(_0x477929['scenario']===undefined){console[_0x1e30e4(0xa5)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console[_0x1e30e4(0xb2)](_0xdc4612['qUfeA']);for(let _0x216a5e=0x0;_0xdc4612[_0x1e30e4(0xa8)](_0x216a5e,_0x5d3c73[_0x1e30e4(0x95)]);_0x216a5e++){console['log']('\x20\x20'+(_0x216a5e+0x1)+'.\x20'+_0x5d3c73[_0x216a5e]['description']);}process['exit'](0x1);}const _0x103760=_0xdc4612['pWNqW'](_0x477929[_0x1e30e4(0x9c)],0x1);if(_0xdc4612['AccKg'](_0x103760,0x0)||_0xdc4612['pEymd'](_0x103760,_0x5d3c73['length'])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x477929[_0x1e30e4(0x9c)]+'.\x20Feature\x20review\x20has\x20'+_0x5d3c73['length']+_0x1e30e4(0xe1)),console['log'](_0x1e30e4(0x76));for(let _0x25382f=0x0;_0xdc4612[_0x1e30e4(0xa8)](_0x25382f,_0x5d3c73[_0x1e30e4(0x95)]);_0x25382f++){console[_0x1e30e4(0xb2)]('\x20\x20'+_0xdc4612['WAeZn'](_0x25382f,0x1)+'.\x20'+_0x5d3c73[_0x25382f][_0x1e30e4(0xa3)]);}process['exit'](0x1);}const _0x5340da=_0x5d3c73[_0x103760];await _0xdc4612['Kbmmi'](updateChecklistItem,_0x1b21c0,_0x5340da['id'],{'description':_0x5a1985});const _0x37bdcc=await getFeature(_0x1b21c0);console['log'](_0x1e30e4(0x120)),_0xdc4612['cQXli'](displayFeature,_0x37bdcc,_0x37bdcc['checklistItems']);}async function downloadFeedbackImage(_0x3ab193,_0x15d7d2){const _0x4d5c89=_0xc65e02,_0x57d29d={'wEdVt':function(_0x229c55){return _0x229c55();},'Bwkqe':function(_0x31083c,_0xa7baa9,_0x305e17){return _0x31083c(_0xa7baa9,_0x305e17);},'eluxj':function(_0x2ff868,_0x295f4b){return _0x2ff868(_0x295f4b);}};try{const _0x5d3c89=join(_0x57d29d[_0x4d5c89(0x135)](getRangerDir),_0x4d5c89(0xe2));await mkdir(_0x5d3c89,{'recursive':!![]});const _0x440d0d=_0x57d29d[_0x4d5c89(0x84)](join,_0x5d3c89,'comment_'+_0x15d7d2+'.png'),_0x1154fc=await _0x57d29d[_0x4d5c89(0xb0)](fetch,_0x3ab193);if(!_0x1154fc['ok'])return null;const _0x114b36=Buffer[_0x4d5c89(0xf9)](await _0x1154fc[_0x4d5c89(0x10a)]());return await writeFile(_0x440d0d,_0x114b36),_0x440d0d;}catch{return null;}}function _0x4cfc(){const _0x560550=['feedback-images','incompleteReason','has','5QePzgE','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','prompt','10skIaLK','\x20at\x20[','element','domRef','currentSessionId','/artifacts/','replace','IdPOM','DeRYH','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','\x20\x20✅\x20No\x20feedback\x20to\x20address','1024tbUzJl','content','hRMDF','sessionId','pipe','reports','from','currentBranch','trim','gitBranch','\x20\x20\x20Status:\x20','find','VOGjD','get',':\x20\x22','\x20unaddressed\x20comment(s)','LWGqg','toFixed','\x0a✅\x20Resumed\x20feature\x20review:\x20','CnvUw','NUjAn','Hyydw','vRQgz','arrayBuffer','696489LLMEyH','NbrRt','version','\x20\x20\x20\x20\x20\x20Cancelled:\x20','repeat','\x20\x20\x20\x20\x20\x20Blocked:\x20','approved','authorName','ehPCZ','map','ZGwrr','split','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','szLQP','132158xWodrl','blockedItems','isTTY','status','rHXKK','bGwcS','\x0a✅\x20Scenario\x20updated','CMLvA','wGJkA','\x20\x20\x20Progress:\x20','screenshotUrls','kSlEu','terminalReason','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','completed','Screenshot\x20','KdnbK','UcTmE','ujEIK','output','txyPq','fFDgW','verificationInProgressItems','Vfxvm','\x20concluded.','\x20\x20\x20Created:\x20','blocked','wEdVt','vpSNz','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','authorEmail','includeDeleted','APpnO','storage','pendingItems','1709940ClqPrC','\x20of\x20','round','MHGon','incompleteItems','JeuQo','items','Current\x20session\x20not\x20found.','\x20\x20\x20▶️\x20Started\x20session\x20','completedAt','LTgBD','iNtzZ','excludeScenarios','textContent','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20>\x20','any','bZElS','all','latestReview','GUVsm','type','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x1b[0m','utf-8','pop','unaddressedComments','0|4|5|3|2|1','push','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','selector','\x0aAvailable\x20scenarios:','env','dMJwN','708nqRxhu','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','eXuNI','wlrpW','\x20in\x20progress','\x0a⚠️\x20\x20','\x20(v','\x20\x20\x20\x20\x20ID:\x20','...','\x0a✅\x20Feature\x20review\x20created:\x20','Bwkqe','EFgqA','XxqtI','ntkuN','filter','Scenario\x20','\x20scenario(s).','PdgVS','blockedReason','78762ukRlUa','SxLrV','limit','iIbeS','):\x20\x22','en-US','FHAoA','evEFg','length','screenshot','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','VanAw','DLeXw','CLAUDE_SESSION_ID','numeric','scenario','canonicalFlow','dashboardUrl','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','assets','Jvjpj','838446WDKRhU','description','\x20\x20\x20\x20','error','stdin','\x20\x20\x20\x20\x20\x20Incomplete:\x20','AccKg','49hIrLEC','\x0a✅\x20Scenario\x20added','short','stdout','checklistItems','anOYC','isInteger','eluxj','569460rfuVyp','log','\x20\x20\x20Updated\x20branch\x20to:\x20','json','createdAt','OlnQp','oaHHT','QvhDR','git\x20remote\x20get-url\x20origin','HGVda','toLocaleDateString','iEPpB','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','KbZiJ','in_progress','Unknown','2952GnbETD','exit','totalCount','linkedSession','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','nZwvg','toLocaleString','WVskq','isKeyStep','name','stats','join','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','Not\x20in\x20a\x20git\x20repository.','\x0aCreating\x20feature\x20review...','No\x20sessions\x20found.','scenarios','closed','yxtDm','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','QnPmy','11wJfwHg','\x20--limit\x20','verification_in_progress','MpbJG','uXTGq','RAENj','parentItemId','canceledReason','FCnbO','spatial','\x0a📋\x20Feedback\x20for:\x20','\x20scenarios.'];_0x4cfc=function(){return _0x560550;};return _0x4cfc();}export async function featureGetReview(_0x3f28e3){const _0x404dab=_0xc65e02,_0x31ed1b={'qrvHz':function(_0xfa6371,_0x54bf6f){return _0xfa6371(_0x54bf6f);},'GWsmB':function(_0x3d375f,_0x463ed7){return _0x3d375f===_0x463ed7;},'ZGwrr':function(_0x5107fd,_0x5a92bc){return _0x5107fd+_0x5a92bc;},'iEPpB':_0x404dab(0x92),'GUVsm':_0x404dab(0xc0),'vRQgz':function(_0x3075db,_0x2d909f,_0x1fa47b){return _0x3075db(_0x2d909f,_0x1fa47b);},'EzwRr':_0x404dab(0x14c),'nZwvg':_0x404dab(0xea),'Desjq':'point'},_0x26d698=_0x3f28e3||await getActiveFeatureId();if(!_0x26d698)throw new Error(_0x404dab(0x73));const _0x5deb7f=await getFeature(_0x26d698),{items:_0x7bca9c}=await _0x31ed1b['qrvHz'](getActionItems,_0x26d698);console['log'](_0x404dab(0xe0)+_0x5deb7f['name']+'\x20('+_0x5deb7f['id']+')\x0a');if(_0x31ed1b['GWsmB'](_0x7bca9c['length'],0x0)){console['log']('No\x20scenarios\x20found.');return;}for(let _0x2d7e96=0x0;_0x2d7e96<_0x7bca9c['length'];_0x2d7e96++){const _0x539060=_0x7bca9c[_0x2d7e96],_0x4b6786=_0x539060['version']>0x1?_0x404dab(0x80)+_0x539060[_0x404dab(0x10d)]+')':'',_0xddf8b=await getItemFeedback(_0x26d698,_0x539060['id']);if(_0xddf8b[_0x404dab(0x157)]['length']>0x0){console[_0x404dab(0xb2)]('Scenario\x20'+_0x31ed1b[_0x404dab(0x115)](_0x2d7e96,0x1)+_0x404dab(0x101)+_0x539060['description']+'\x22'+_0x4b6786+'\x20—\x20'+_0xddf8b['unaddressedComments'][_0x404dab(0x95)]+_0x404dab(0x102));for(const _0xdc91a0 of _0xddf8b[_0x404dab(0x157)]){const _0x1e63f9=new Date(_0xdc91a0['createdAt'])[_0x404dab(0xbb)](_0x31ed1b[_0x404dab(0xbc)],{'month':_0x404dab(0xab),'day':_0x404dab(0x9b)}),_0x1c0d0a=_0xdc91a0[_0x404dab(0x112)]||_0xdc91a0[_0x404dab(0x138)]||_0x31ed1b[_0x404dab(0x151)];console['log']('\x20\x20💬\x20'+_0x1c0d0a+'\x20('+_0x1e63f9+_0x404dab(0x91)+_0xdc91a0[_0x404dab(0xf4)]+'\x22');if(_0xdc91a0['assetUrl']){const _0x1c51cc=await _0x31ed1b[_0x404dab(0x109)](downloadFeedbackImage,_0xdc91a0['assetUrl'],_0xdc91a0['id']);_0x1c51cc&&console[_0x404dab(0xb2)](_0x404dab(0xc5)+_0x1c51cc);}if(_0xdc91a0['domRef']){const _0x1fc8a5=_0xdc91a0[_0x404dab(0xeb)][_0x404dab(0x75)]['split'](_0x31ed1b['EzwRr'])[_0x404dab(0x156)]()?.[_0x404dab(0x116)](':')[0x0]||_0x31ed1b[_0x404dab(0xc6)],_0x5a4c43=_0xdc91a0[_0x404dab(0xeb)]['textContent']?'\x20\x22'+_0xdc91a0[_0x404dab(0xeb)][_0x404dab(0x14a)]['slice'](0x0,0x3c)+'\x22':'';console[_0x404dab(0xb2)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x1fc8a5+'>'+_0x5a4c43),console[_0x404dab(0xb2)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0xdc91a0['domRef']['selector']);}else{if(_0xdc91a0['spatial']){const _0x3f4594=_0xdc91a0[_0x404dab(0xdf)]['coordinates'];_0xdc91a0[_0x404dab(0xdf)]['type']===_0x31ed1b['Desjq']&&_0x3f4594['length']>=0x2?console['log'](_0x404dab(0xcd)+_0x3f4594[0x0][_0x404dab(0x104)](0x2)+',\x20'+_0x3f4594[0x1]['toFixed'](0x2)+')'):console['log'](_0x404dab(0x74)+_0xdc91a0[_0x404dab(0xdf)][_0x404dab(0x152)]+_0x404dab(0xe9)+_0x3f4594['map'](_0x4d6d5b=>_0x4d6d5b[_0x404dab(0x104)](0x2))[_0x404dab(0xcc)](',\x20')+']');}}}if(_0xddf8b[_0x404dab(0x9d)]){console[_0x404dab(0xb2)]('\x20\x20Expected\x20flow:');for(const _0xf96dfa of _0xddf8b['canonicalFlow'][_0x404dab(0x116)]('\x0a')){console['log'](_0x404dab(0xa4)+_0xf96dfa);}}}else console['log'](_0x404dab(0x89)+_0x31ed1b[_0x404dab(0x115)](_0x2d7e96,0x1)+_0x404dab(0x101)+_0x539060['description']+'\x22'+_0x4b6786+'\x20—\x20no\x20comments'),console['log'](_0x404dab(0xf2));console[_0x404dab(0xb2)]('');}}export async function featureDelete(_0x46ca99){const _0x1f7ea2=_0xc65e02,_0x3244d8={'acpDB':function(_0x553b9c){return _0x553b9c();},'bFysP':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','YKVmg':function(_0xbdb28f,_0x207f86){return _0xbdb28f(_0x207f86);},'kogND':function(_0x333752,_0x368ce0){return _0x333752+_0x368ce0;},'QvhDR':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x1a1706=_0x46ca99||await _0x3244d8['acpDB'](getActiveFeatureId);if(!_0x1a1706)throw new Error(_0x3244d8['bFysP']);const _0x309d2d=await getFeature(_0x1a1706);await _0x3244d8['YKVmg'](softDeleteFeature,_0x1a1706),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x309d2d['name']+'\x20('+_0x1a1706+')'),console[_0x1f7ea2(0xb2)](_0x3244d8['kogND'](_0x3244d8[_0x1f7ea2(0xb8)],_0x1a1706));}export async function featureRestore(_0x544bce){const _0x163a02=_0xc65e02,_0xd08e10={'EFgqA':function(_0x366106,_0x461ee6){return _0x366106(_0x461ee6);},'Jvjpj':function(_0x3889d5,_0x3b1b1c){return _0x3889d5(_0x3b1b1c);}};await _0xd08e10[_0x163a02(0x85)](restoreFeature,_0x544bce);const _0x1b02d2=await _0xd08e10[_0x163a02(0xa1)](getFeature,_0x544bce);console[_0x163a02(0xb2)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x1b02d2['name']+'\x20('+_0x544bce+')'),displayFeature(_0x1b02d2,_0x1b02d2['checklistItems']);}
|
|
1
|
+
function _0x42a3(){const _0x46bee6=['/api/v1/mcp/browser-sessions/','\x20/\x20','RecJt','split','gitRepoUrl','\x20\x20\x20\x20\x20ID:\x20','\x20\x20💬\x20','yxLfk','ELhOw','reports','QrpAV','1NYHPjn','\x1b[0m','No\x20scenarios\x20found.','Next\x20page:\x20ranger\x20list\x20--offset\x20','browserSessionId','output','env','assets','verification_in_progress','tzcQd','lsdFQ','utf-8','name','incompleteItems','4990794eBguxG','completedAt','checklistItems','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','LDsnr','ziEVL','2798109PGroeq','GWTIg','createdAt','nYuwk','aVlqW','stepName','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','currentSessionId','CLAUDE_SESSION_ID','write','description','tHHiU','parentItemId','\x20concluded.','quPBR','incompleteReason','\x20\x20\x20Progress:\x20','\x0a❌\x20Invalid\x20scenario\x20index:\x20','RojiB','\x20verified','JGyNK',':\x20\x22','evDWG','\x0a✅\x20Restored\x20feature\x20review:\x20','GwRrh','scenario','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','kpBek','xzEDQ','50lAdbdP','version','unaddressedComments','sknqb','kmqmT','DBPgo','toLocaleDateString','MfVwp','length','jzfBk','pop','closed','pdgyz','kHCvH','rtAgn','ijcsd','VDykV','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','iteration','\x20\x20\x20\x20\x20\x20Incomplete:\x20','assetType','terminalReason','TZAaW','CRXNh','\x20\x20\x20\x20\x20\x20Approved','olDcG','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','trim','stats','EGMOs','toLocaleString','KcwQD','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x0a⚠️\x20\x20','ftgZP','timing','VDVYy','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','ready','rThpx','\x20at\x20[','\x0a✅\x20Resumed\x20feature\x20review:\x20','5677160TppIXr','canonicalFlow','\x20\x20\x20\x20','63ZptVam','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','type','\x20\x20\x20▶️\x20Started\x20session\x20','error','\x20blocked','\x20of\x20','isTTY','\x20—\x20','pUEOF','git\x20remote\x20get-url\x20origin','includeDeleted','trimEnd','replace','agentResponse','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','MrTJg','approved','ufTUf','log','Screenshot\x20','blockedReason','authorName','uhogo','en-US','stdout','screenshot','gitBranch','assetUrl','vWZWX','qkXio','gjIih','join','map','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','FiaxO','...','status','ATEZL','6645HsRJdb','position','PKNyF','get','json','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','blockedItems','oeffw','\x20\x20\x20\x20\x20Branch:\x20','JxBDa','filter','QGIaT','domRef','Current\x20session\x20not\x20found.','yfhWJ','gfOkJ','xWNxp','LtTaf','warn','stringify','has','totalCount','zRNkM','coordinates','gMbzK','element','IrZMY','4228ClJUui','\x20\x20\x20\x20\x20📋\x20Selector:\x20','canceledReason','blocked','wCtmR','authorEmail','\x20[has\x20reviewer\x20feedback]','notes','Showing\x20','aNFnx','point','hhhfi','spatial','\x0a✅\x20Session\x20is\x20already\x20completed.','sessionId','find','QzVdj','github.com/','895296THVAkq','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','textContent','hupaA','selector','in_progress','3141470GRHWhx','\x20\x20\x20Completed:\x20','\x20\x20\x20Description:\x20','dashboardUrl','latestReview','pipe','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20\x20Expected\x20flow:','toFixed','Cannot\x20conclude\x20session\x20with\x20status:\x20','kQmNV','SmiEL','\x20--limit\x20','completed','submittedAt','\x20Session\x20','QOdXJ','uBoBz','LOivW','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','scenarios','VTbaN','active-feature.txt','51269867nVSiis','No\x20sessions\x20found.','\x0a✅\x20Feature\x20review\x20created:\x20','\x20\x20\x20ID:\x20'];_0x42a3=function(){return _0x46bee6;};return _0x42a3();}const _0x492c6d=_0x56e7;(function(_0x21d07a,_0x480696){const _0x58578e=_0x56e7,_0x517c7d=_0x21d07a();while(!![]){try{const _0x1fef29=-parseInt(_0x58578e(0x13d))/0x1*(-parseInt(_0x58578e(0x117))/0x2)+parseInt(_0x58578e(0x14b))/0x3+parseInt(_0x58578e(0x1dd))/0x4*(parseInt(_0x58578e(0x1c2))/0x5)+parseInt(_0x58578e(0x111))/0x6*(-parseInt(_0x58578e(0x19b))/0x7)+parseInt(_0x58578e(0x198))/0x8+parseInt(_0x58578e(0x151))/0x9*(parseInt(_0x58578e(0x16e))/0xa)+-parseInt(_0x58578e(0x12e))/0xb;if(_0x1fef29===_0x480696)break;else _0x517c7d['push'](_0x517c7d['shift']());}catch(_0x281bd7){_0x517c7d['push'](_0x517c7d['shift']());}}}(_0x42a3,0xdb943));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x29615f from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE=_0x492c6d(0x12d),bold=_0x1dc034=>'\x1b[1m'+_0x1dc034+_0x492c6d(0x13e);function getGitRepoUrl(){const _0x1ceff0=_0x492c6d,_0x4fd855={'PIqDK':_0x1ceff0(0x1a5),'iNtKN':'pipe'};try{const _0x2a2d86=execSync(_0x4fd855['PIqDK'],{'encoding':'utf-8','stdio':[_0x1ceff0(0x11c),'pipe',_0x4fd855['iNtKN']]})[_0x1ceff0(0x189)]();return _0x2a2d86['replace'](/\.git$/,'')[_0x1ceff0(0x1a8)](/^git@github\.com:/,_0x1ceff0(0x110))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x24be31=_0x492c6d,_0x55e57b={'euCvA':function(_0x3d585b,_0x22907e,_0x50ddf0){return _0x3d585b(_0x22907e,_0x50ddf0);},'gdfMa':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','FMFBT':_0x24be31(0x148),'LDsnr':'pipe'};try{return _0x55e57b['euCvA'](execSync,_0x55e57b['gdfMa'],{'encoding':_0x55e57b['FMFBT'],'stdio':[_0x55e57b[_0x24be31(0x14f)],_0x24be31(0x11c),'pipe']})[_0x24be31(0x189)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x539496=_0x492c6d,_0x36d633={'dzsyT':function(_0x1942a6,_0x13bd41,_0x10b343){return _0x1942a6(_0x13bd41,_0x10b343);},'jkdVs':function(_0x501212){return _0x501212();},'kmqmT':_0x539496(0x148)},_0x4546df=_0x36d633['dzsyT'](join,_0x36d633['jkdVs'](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x4546df))return null;try{const _0x241822=await readFile(_0x4546df,_0x36d633[_0x539496(0x172)]);return _0x241822['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x18d453){const _0x55caf5=_0x492c6d,_0x439dc0={'ATEZL':function(_0x25d07c,_0x2f171b,_0x36276c){return _0x25d07c(_0x2f171b,_0x36276c);},'VTbaN':function(_0x51f0b7,_0x23e6b2,_0x28d7ba,_0x2eb577){return _0x51f0b7(_0x23e6b2,_0x28d7ba,_0x2eb577);},'FiaxO':_0x55caf5(0x148)},_0x4a5352=getRangerDir(),_0x2fadda=join(_0x4a5352,ACTIVE_FEATURE_FILE);!existsSync(_0x4a5352)&&await _0x439dc0[_0x55caf5(0x1c1)](mkdir,_0x4a5352,{'recursive':!![]}),await _0x439dc0[_0x55caf5(0x12c)](writeFile,_0x2fadda,_0x18d453,_0x439dc0[_0x55caf5(0x1be)]);}function getProgressDisplay(_0x4b3279){const _0x2265b6=_0x492c6d,_0x2ed766={'ziEVL':function(_0x5f2a90,_0x1d5d9b){return _0x5f2a90+_0x1d5d9b;},'ftgZP':function(_0x5af7d4,_0x2779b7){return _0x5af7d4+_0x2779b7;},'RecJt':function(_0x4a9a4f,_0x7484b1){return _0x4a9a4f+_0x7484b1;},'stvGt':function(_0x399d3d,_0x31f977){return _0x399d3d*_0x31f977;},'lsdFQ':function(_0x61c02,_0x59e859){return _0x61c02/_0x59e859;},'uBoBz':function(_0x2fc164,_0x259921){return _0x2fc164>_0x259921;}},_0x44fb10=_0x4b3279['verifiedItems']||0x0,_0x47083c=_0x4b3279['verificationInProgressItems']||0x0,_0x309d46=_0x4b3279[_0x2265b6(0x1c8)]||0x0,_0x348a55=_0x4b3279[_0x2265b6(0x14a)]||0x0,_0x1ed48b=_0x4b3279['pendingItems']||0x0,_0x530e4b=_0x2ed766[_0x2265b6(0x150)](_0x2ed766[_0x2265b6(0x190)](_0x2ed766[_0x2265b6(0x134)](_0x44fb10+_0x47083c,_0x309d46),_0x348a55),_0x1ed48b);if(_0x530e4b===0x0)return'-';const _0x39b100=0xa,_0x3e12a6=Math['round'](_0x2ed766['stvGt'](_0x2ed766[_0x2265b6(0x147)](_0x44fb10,_0x530e4b),_0x39b100)),_0x1064aa='█'['repeat'](_0x3e12a6)+'░'['repeat'](_0x39b100-_0x3e12a6),_0x100beb=[];if(_0x2ed766[_0x2265b6(0x128)](_0x309d46,0x0))_0x100beb['push'](_0x309d46+_0x2265b6(0x1a0));if(_0x348a55>0x0)_0x100beb['push'](_0x348a55+'\x20incomplete');if(_0x47083c>0x0)_0x100beb['push'](_0x47083c+'\x20in\x20progress');const _0x31ce26=_0x2ed766['uBoBz'](_0x100beb[_0x2265b6(0x176)],0x0)?'\x20('+_0x100beb['join'](',\x20')+')':'';return _0x1064aa+'\x20'+_0x44fb10+'/'+_0x530e4b+_0x2265b6(0x164)+_0x31ce26;}function getCurrentSessionItems(_0x73e644,_0xd392b8){const _0x5cd922=_0x492c6d;if(!_0x73e644['currentSessionId'])return _0xd392b8['filter'](_0x41f37e=>!_0x41f37e['sessionId']);return _0xd392b8[_0x5cd922(0x1cc)](_0x3476bf=>_0x3476bf[_0x5cd922(0x10d)]===_0x73e644['currentSessionId']||!_0x3476bf[_0x5cd922(0x10d)]);}function displayFeature(_0x300bd2,_0x488480){const _0x398d12=_0x492c6d,_0xa27599={'nYuwk':function(_0x2a0c6b,_0x5c159d){return _0x2a0c6b>_0x5c159d;},'tzcQd':function(_0x2acc34,_0x434f0e){return _0x2acc34<_0x434f0e;},'ogslj':function(_0x105e99,_0x1e67c4){return _0x105e99===_0x1e67c4;},'aVlqW':_0x398d12(0x1ac),'evDWG':function(_0x112cf0,_0x1256c9){return _0x112cf0===_0x1256c9;},'TZAaW':'verified','siKJu':'incomplete','QGIaT':_0x398d12(0x1e0),'QzVdj':'closed','LmwfE':'verification_in_progress','qFaHN':function(_0x3a54d6,_0x399247){return _0x3a54d6!==_0x399247;},'KyIxc':function(_0x3aa7d5,_0x4da89c){return _0x3aa7d5!==_0x4da89c;},'GWTIg':function(_0x34bdff,_0x832a3d){return _0x34bdff===_0x832a3d;}};console[_0x398d12(0x1ae)]('\x0a'+_0x300bd2['name']+'\x20('+_0x300bd2[_0x398d12(0x11a)]+')');_0x300bd2['stats']&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x300bd2['stats']));_0x300bd2['description']&&console['log'](_0x398d12(0x119)+_0x300bd2['description']);_0x300bd2[_0x398d12(0x136)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x300bd2['gitRepoUrl']);_0x300bd2['gitBranch']&&console[_0x398d12(0x1ae)]('\x20\x20\x20Branch:\x20'+_0x300bd2['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x300bd2[_0x398d12(0x153)])[_0x398d12(0x18c)]());_0x300bd2[_0x398d12(0x14c)]&&console['log'](_0x398d12(0x118)+new Date(_0x300bd2[_0x398d12(0x14c)])['toLocaleString']());if(_0x488480&&_0xa27599[_0x398d12(0x154)](_0x488480['length'],0x0)){console['log']('\x0a\x20\x20\x20Scenarios:');for(let _0x5d715b=0x0;_0xa27599[_0x398d12(0x146)](_0x5d715b,_0x488480['length']);_0x5d715b++){const _0xe2673b=_0x488480[_0x5d715b];let _0x22df10;if(_0xe2673b[_0x398d12(0x1c0)]==='closed'&&_0xa27599['ogslj'](_0xe2673b[_0x398d12(0x183)],_0xa27599['aVlqW']))_0x22df10='✅';else{if(_0xa27599[_0x398d12(0x167)](_0xe2673b['status'],_0xa27599[_0x398d12(0x184)]))_0x22df10='🟢';else{if(_0xa27599['ogslj'](_0xe2673b['status'],_0xa27599['siKJu']))_0x22df10='🟠';else{if(_0xa27599[_0x398d12(0x167)](_0xe2673b['status'],_0xa27599['QGIaT']))_0x22df10='🛑';else{if(_0xe2673b['status']===_0xa27599['QzVdj'])_0x22df10='⛔';else _0xa27599[_0x398d12(0x167)](_0xe2673b[_0x398d12(0x1c0)],_0xa27599['LmwfE'])?_0x22df10='⏳':_0x22df10='⬜';}}}}const _0x6a926f=_0xe2673b['version']>0x1?'\x20(v'+_0xe2673b[_0x398d12(0x16f)]+')':'',_0x5311b4=_0xe2673b[_0x398d12(0x16f)]>0x1&&_0xe2673b[_0x398d12(0x15d)]&&_0xa27599['qFaHN'](_0xe2673b['status'],'closed')&&_0xa27599['KyIxc'](_0xe2673b['status'],_0xa27599[_0x398d12(0x184)])?_0x398d12(0x1e3):'';console['log']('\x20\x20\x20'+(_0x5d715b+0x1)+'.\x20'+_0x22df10+'\x20'+_0xe2673b[_0x398d12(0x15b)]+_0x6a926f+_0x5311b4);_0xe2673b['status']===_0xa27599[_0x398d12(0x1cd)]&&_0xe2673b['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0xe2673b['blockedReason']);_0xa27599[_0x398d12(0x152)](_0xe2673b['status'],'incomplete')&&_0xe2673b['incompleteReason']&&console['log'](_0x398d12(0x181)+_0xe2673b['incompleteReason']);if(_0xa27599['evDWG'](_0xe2673b['status'],_0xa27599['QzVdj'])&&_0xe2673b['terminalReason']===_0xa27599[_0x398d12(0x155)])console[_0x398d12(0x1ae)](_0x398d12(0x186));else _0xe2673b[_0x398d12(0x1c0)]===_0xa27599[_0x398d12(0x10f)]&&_0xe2673b[_0x398d12(0x1df)]&&console[_0x398d12(0x1ae)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0xe2673b['canceledReason']);}}}export async function featureCreate(_0xf6cb54,_0x3e83dc){const _0xc9b646=_0x492c6d,_0x1ce76f={'bHgzd':function(_0x4fb7ea){return _0x4fb7ea();},'KAilK':function(_0x474558,_0x36a8db){return _0x474558===_0x36a8db;},'RojiB':function(_0x31c920,_0x51f707){return _0x31c920(_0x51f707);},'CPPaP':function(_0x9f5bce){return _0x9f5bce();},'tHHiU':function(_0x1b49f2){return _0x1b49f2();},'uvvxT':'\x0aCreating\x20feature\x20review...','kpBek':function(_0x1e21b0,_0xd7bfa2){return _0x1e21b0(_0xd7bfa2);},'KFxBJ':function(_0x199c77,_0x5a1dbb,_0xa9b5df){return _0x199c77(_0x5a1dbb,_0xa9b5df);}},{envNames:_0x4fe83b}=await _0x1ce76f['bHgzd'](getEnvNames);_0x1ce76f['KAilK'](_0x4fe83b[_0xc9b646(0x176)],0x0)&&console[_0xc9b646(0x1d4)]('\x0a'+_0x1ce76f[_0xc9b646(0x163)](formatProfileRequiredMessage,_0xf6f54c=>bold(_0xf6f54c)));const _0x3a7847=_0x3e83dc['scenarios']?_0x3e83dc[_0xc9b646(0x12b)][_0xc9b646(0x1bc)](_0x35187d=>_0x35187d['trim']()):[],_0x3baa3c=_0x1ce76f['CPPaP'](getGitRepoUrl),_0x5996cb=_0x1ce76f[_0xc9b646(0x15c)](getGitBranch);console['log'](_0x1ce76f['uvvxT']);const _0x4b7a55=await _0x1ce76f[_0xc9b646(0x163)](createFeature,{'name':_0xf6cb54,'description':_0x3e83dc['description'],'checklist':_0x3a7847,'gitRepoUrl':_0x3baa3c,'gitBranch':_0x5996cb});await _0x1ce76f[_0xc9b646(0x16c)](setActiveFeatureId,_0x4b7a55['id']),await _0x1ce76f['RojiB'](tryStartCurrentSession,_0x4b7a55['id']);const _0x48e6f1=process['env'][_0xc9b646(0x159)];_0x48e6f1&&_0x1ce76f['KFxBJ'](registerSession,_0x48e6f1,_0x4b7a55['id']),console[_0xc9b646(0x1ae)](_0xc9b646(0x130)+_0x4b7a55['id']),displayFeature(_0x4b7a55,_0x4b7a55[_0xc9b646(0x14d)]),console['log'](_0xc9b646(0x18e));}export async function featureList(_0x23e8e3){const _0x426727=_0x492c6d,_0x558bd6={'hupaA':function(_0x524ef2){return _0x524ef2();},'GwRrh':function(_0xa9ba7d){return _0xa9ba7d();},'aNFnx':function(_0x4b3e87,_0xe7b349){return _0x4b3e87(_0xe7b349);},'WOjhI':function(_0x4008b2,_0x288b6c){return _0x4008b2+_0x288b6c;},'nUhGb':'\x20--current-branch'},_0x203b01={'limit':_0x23e8e3['limit']??0xa,'offset':_0x23e8e3['offset']??0x0,'includeDeleted':_0x23e8e3[_0x426727(0x1a6)]};_0x23e8e3['currentBranch']&&(_0x203b01[_0x426727(0x136)]=_0x558bd6[_0x426727(0x114)](getGitRepoUrl),_0x203b01[_0x426727(0x1b6)]=_0x558bd6[_0x426727(0x169)](getGitBranch));const _0x36335c=await _0x558bd6[_0x426727(0x1e6)](listFeatures,_0x203b01);if(_0x36335c['items'][_0x426727(0x176)]===0x0){console['log']('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x1cfb59=_0x36335c['totalCount']>_0x36335c['items']['length']?_0x426727(0x1e5)+_0x36335c['items'][_0x426727(0x176)]+_0x426727(0x1a1)+_0x36335c['totalCount']:_0x36335c[_0x426727(0x1d7)]+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x1cfb59+':\x0a');for(const _0x3d8677 of _0x36335c['items']){console[_0x426727(0x1ae)](''+_0x3d8677['name']),console['log'](_0x426727(0x131)+_0x3d8677['id']),_0x3d8677[_0x426727(0x18a)]&&console['log'](_0x426727(0x161)+_0x558bd6['aNFnx'](getProgressDisplay,_0x3d8677['stats'])),_0x3d8677['gitBranch']&&console[_0x426727(0x1ae)]('\x20\x20\x20Branch:\x20'+_0x3d8677['gitBranch']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x3d8677[_0x426727(0x153)])[_0x426727(0x174)]()),console['log']('');}const _0x360f40=_0x203b01['limit']??0xa,_0x3b0731=_0x558bd6['WOjhI'](_0x203b01['offset']??0x0,_0x36335c['items'][_0x426727(0x176)]);if(_0x3b0731<_0x36335c['totalCount']){const _0x515492=_0x360f40!==0xa?_0x426727(0x123)+_0x360f40:'',_0x410326=_0x23e8e3['currentBranch']?_0x558bd6['nUhGb']:'',_0x52fc8e=_0x23e8e3['includeDeleted']?'\x20--include-deleted':'';console[_0x426727(0x1ae)](_0x426727(0x140)+_0x3b0731+_0x515492+_0x410326+_0x52fc8e);}}function _0x56e7(_0x268715,_0x24379f){_0x268715=_0x268715-0x109;const _0x42a387=_0x42a3();let _0x56e7c0=_0x42a387[_0x268715];return _0x56e7c0;}export async function featureShow(_0x3aff8e){const _0x44b1e2=_0x492c6d,_0x44685c=_0x3aff8e||await getActiveFeatureId();if(!_0x44685c)throw new Error(_0x44b1e2(0x11d));const _0x39bf25=await getFeature(_0x44685c);displayFeature(_0x39bf25,_0x39bf25['checklistItems']);}export async function featureResume(_0x500f57){const _0x3c9112=_0x492c6d,_0x527c59={'LtTaf':function(_0x88596f,_0x80a5a8){return _0x88596f(_0x80a5a8);},'bgOvY':function(_0x145130){return _0x145130();},'AawUp':function(_0x312036,_0x293ef8){return _0x312036!==_0x293ef8;},'IrZMY':function(_0x5bf640,_0x5c89de,_0x2c5cd7){return _0x5bf640(_0x5c89de,_0x2c5cd7);},'GngDc':function(_0x13e221){return _0x13e221();},'NZqgx':function(_0x498531,_0x52408c){return _0x498531&&_0x52408c;},'PKNyF':'Not\x20in\x20a\x20git\x20repository.','hfkBx':'any','sknqb':function(_0x52e5f4,_0x365f64){return _0x52e5f4===_0x365f64;},'HhxZQ':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','BrjYv':'selected','XQHWJ':function(_0x5baee2,_0x242b1f){return _0x5baee2(_0x242b1f);},'Xvydo':function(_0x550740,_0x3b05ac,_0x2f54a4){return _0x550740(_0x3b05ac,_0x2f54a4);}};if(_0x500f57){const _0x26eb11=await getFeature(_0x500f57);await _0x527c59['LtTaf'](setActiveFeatureId,_0x26eb11['id']);const _0x5334f4=_0x527c59['bgOvY'](getGitBranch);_0x5334f4&&_0x527c59['AawUp'](_0x5334f4,_0x26eb11[_0x3c9112(0x1b6)])&&(await updateFeature(_0x26eb11['id'],{'gitBranch':_0x5334f4}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x5334f4));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x26eb11[_0x3c9112(0x149)]+'\x20('+_0x26eb11['id']+')'),await tryStartCurrentSession(_0x26eb11['id']);const _0x36bb69=process[_0x3c9112(0x143)]['CLAUDE_SESSION_ID'];_0x36bb69&&_0x527c59['IrZMY'](registerSession,_0x36bb69,_0x26eb11['id']);displayFeature(_0x26eb11,_0x26eb11['checklistItems']),await printFeedbackNudge(_0x26eb11['id']);return;}const _0x248b58=getGitRepoUrl(),_0x1c6a31=_0x527c59['GngDc'](getGitBranch);if(_0x527c59['NZqgx'](!_0x248b58,!_0x1c6a31))throw new Error(_0x527c59[_0x3c9112(0x1c4)]);console[_0x3c9112(0x1ae)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x248b58||'any')+_0x3c9112(0x133)+(_0x1c6a31||_0x527c59['hfkBx'])+_0x3c9112(0x1bf));const _0x1c4292=await _0x527c59[_0x3c9112(0x1d3)](listFeatures,{'gitRepoUrl':_0x248b58,'gitBranch':_0x1c6a31}),_0x3d3c2d=_0x1c4292['items'][_0x3c9112(0x1cc)](_0x155f69=>!_0x155f69[_0x3c9112(0x14c)]);if(_0x527c59[_0x3c9112(0x171)](_0x3d3c2d[_0x3c9112(0x176)],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x3c9112(0x1aa));return;}let _0x231672;if(_0x527c59[_0x3c9112(0x171)](_0x3d3c2d['length'],0x1))_0x231672=_0x3d3c2d[0x0];else{const _0x7c08fe=process['stdin'][_0x3c9112(0x1a2)]&&process[_0x3c9112(0x1b4)][_0x3c9112(0x1a2)];if(!_0x7c08fe){console[_0x3c9112(0x1ae)](_0x3c9112(0x1c7));for(const _0x24e938 of _0x3d3c2d){console['log']('\x20\x20'+_0x24e938[_0x3c9112(0x149)]),console[_0x3c9112(0x1ae)](_0x3c9112(0x137)+_0x24e938['id']),_0x24e938[_0x3c9112(0x18a)]&&console[_0x3c9112(0x1ae)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x24e938[_0x3c9112(0x18a)])),_0x24e938[_0x3c9112(0x1b6)]&&console[_0x3c9112(0x1ae)](_0x3c9112(0x1ca)+_0x24e938['gitBranch']);}throw new Error(_0x527c59['HhxZQ']);}const {selected:_0x9939d4}=await _0x29615f['prompt']([{'type':'list','name':_0x527c59['BrjYv'],'message':_0x3c9112(0x17f),'choices':_0x3d3c2d['map'](_0x4e3ca7=>({'name':_0x4e3ca7[_0x3c9112(0x149)]+'\x20('+_0x4e3ca7['id']+')','value':_0x4e3ca7['id']}))}]);_0x231672=_0x3d3c2d[_0x3c9112(0x10e)](_0x49e5e3=>_0x49e5e3['id']===_0x9939d4);}await setActiveFeatureId(_0x231672['id']);_0x1c6a31&&_0x1c6a31!==_0x231672[_0x3c9112(0x1b6)]&&(await updateFeature(_0x231672['id'],{'gitBranch':_0x1c6a31}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x1c6a31));console['log'](_0x3c9112(0x197)+_0x231672[_0x3c9112(0x149)]+'\x20('+_0x231672['id']+')'),await _0x527c59['XQHWJ'](tryStartCurrentSession,_0x231672['id']);const _0x40c574=await _0x527c59[_0x3c9112(0x1d3)](getFeature,_0x231672['id']),_0x9b91ca=process['env']['CLAUDE_SESSION_ID'];_0x9b91ca&&_0x527c59['Xvydo'](registerSession,_0x9b91ca,_0x40c574['id']),_0x527c59[_0x3c9112(0x1dc)](displayFeature,_0x40c574,_0x40c574[_0x3c9112(0x14d)]),await printFeedbackNudge(_0x40c574['id']);}async function printFeedbackNudge(_0x456aaf){const _0x22f425=_0x492c6d,_0x37105c={'rtAgn':function(_0x3a14a3,_0x55a5fc){return _0x3a14a3(_0x55a5fc);},'QrpAV':function(_0x1807af,_0x22ce5d,_0x5e0f75){return _0x1807af(_0x22ce5d,_0x5e0f75);},'YLuqE':function(_0x470f51,_0x57cba5){return _0x470f51>_0x57cba5;},'yxLfk':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x100ab7}=await _0x37105c[_0x22f425(0x17c)](getActionItems,_0x456aaf);let _0x4aede5=0x0,_0x183ab4=0x0;for(const _0x4069c8 of _0x100ab7){const _0x213318=await _0x37105c[_0x22f425(0x13c)](getItemFeedback,_0x456aaf,_0x4069c8['id']);_0x37105c['YLuqE'](_0x213318[_0x22f425(0x170)]['length'],0x0)&&(_0x4aede5+=_0x213318['unaddressedComments']['length'],_0x183ab4++);}_0x4aede5>0x0&&(console[_0x22f425(0x1ae)](_0x22f425(0x18f)+_0x4aede5+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x183ab4+'\x20scenario(s).'),console['log'](_0x37105c[_0x22f425(0x139)]));}catch{}}async function tryStartCurrentSession(_0x1a1b84){const _0x1c324d=_0x492c6d,_0x4e7190={'EXNZh':function(_0x48b056,_0x3434e9){return _0x48b056(_0x3434e9);},'XrJlt':function(_0x148c70,_0x14e064,_0x47c872){return _0x148c70(_0x14e064,_0x47c872);}};try{const {sessions:_0x21ac14}=await _0x4e7190['EXNZh'](listFeatureSessions,_0x1a1b84),_0x213aee=_0x21ac14[_0x1c324d(0x10e)](_0x43e5eb=>_0x43e5eb['status']===_0x1c324d(0x194));_0x213aee&&(await _0x4e7190['XrJlt'](startSession,_0x1a1b84,_0x213aee['id']),console['log'](_0x1c324d(0x19e)+_0x213aee[_0x1c324d(0x180)]));}catch{}}export async function featureReport(_0x4399de,_0x5acc3a){const _0x3ca01f=_0x492c6d,_0x39401f={'xWNxp':function(_0x5f3e2f,_0x1d0c59,_0x877aa4){return _0x5f3e2f(_0x1d0c59,_0x877aa4);},'oeffw':function(_0x2d7d54,_0x26b877,_0xef7f27,_0x328afc){return _0x2d7d54(_0x26b877,_0xef7f27,_0x328afc);},'jzfBk':_0x3ca01f(0x13b),'zRNkM':function(_0x191d57,_0x1e29d8,_0x1aa1da){return _0x191d57(_0x1e29d8,_0x1aa1da);},'JGyNK':function(_0x3a9253,_0x337b19){return _0x3a9253(_0x337b19);},'hhhfi':function(_0x47bee4,_0x21f087,_0x3a4506){return _0x47bee4(_0x21f087,_0x3a4506);},'VDVYy':_0x3ca01f(0x148)},_0x550e4c=_0x4399de||await getActiveFeatureId();if(!_0x550e4c)throw new Error(_0x3ca01f(0x14e));console['log']('\x0aGenerating\x20report...');const _0x11e781=await _0x39401f[_0x3ca01f(0x1d2)](getFeatureReportMarkdown,_0x550e4c,{'style':_0x5acc3a['style']}),_0x1013e0=_0x5acc3a[_0x3ca01f(0x142)]||_0x39401f[_0x3ca01f(0x1c9)](join,getRangerDir(),_0x39401f[_0x3ca01f(0x177)],_0x550e4c+'.md'),_0x18e7ae=_0x39401f[_0x3ca01f(0x1d8)](join,_0x1013e0,'..');!_0x39401f[_0x3ca01f(0x165)](existsSync,_0x18e7ae)&&await _0x39401f[_0x3ca01f(0x10a)](mkdir,_0x18e7ae,{'recursive':!![]}),await _0x39401f['oeffw'](writeFile,_0x1013e0,_0x11e781,_0x39401f[_0x3ca01f(0x192)]),console[_0x3ca01f(0x1ae)]('\x0a✅\x20Report\x20generated:\x20'+_0x1013e0);}function getScenarioResult(_0x58cfbe){const _0x28baef=_0x492c6d,_0x190182={'XRMQX':_0x28baef(0x179),'pUEOF':function(_0x5cf6c4,_0x44bc94){return _0x5cf6c4===_0x44bc94;},'pAqkm':_0x28baef(0x145),'JxBDa':_0x28baef(0x116)};if(_0x58cfbe[_0x28baef(0x1c0)]===_0x190182['XRMQX'])return _0x58cfbe[_0x28baef(0x183)]??_0x28baef(0x179);if(_0x190182[_0x28baef(0x1a4)](_0x58cfbe['status'],_0x190182['pAqkm']))return _0x190182[_0x28baef(0x1cb)];return _0x58cfbe['status'];}function getScenarioRationale(_0x4534f2,_0x4b8797){const _0x55a572=_0x492c6d;if(_0x4b8797)return _0x4b8797;if(_0x4534f2[_0x55a572(0x1b0)])return _0x4534f2[_0x55a572(0x1b0)];if(_0x4534f2[_0x55a572(0x160)])return _0x4534f2[_0x55a572(0x160)];if(_0x4534f2[_0x55a572(0x1df)])return _0x4534f2[_0x55a572(0x1df)];if(_0x4534f2['notes'])return _0x4534f2[_0x55a572(0x1e4)];return null;}export async function featureReportPrDescription(_0x535e40,_0x17214b){const _0x24757c=_0x492c6d,_0x69896c={'zbMYP':function(_0x319263,_0x11e756,_0x343e3e){return _0x319263(_0x11e756,_0x343e3e);},'QJGmw':function(_0x2dc4a8,_0xd67e99){return _0x2dc4a8===_0xd67e99;},'uhogo':function(_0x2a4654,_0x453c6a){return _0x2a4654+_0x453c6a;},'wCtmR':_0x24757c(0x188),'VDykV':function(_0x527dbd,_0x1b7b44,_0x2472f8,_0x21c9f4){return _0x527dbd(_0x1b7b44,_0x2472f8,_0x21c9f4);}},_0x1c84cf=_0x535e40||await getActiveFeatureId();if(!_0x1c84cf)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x1e6fb6=await getFeature(_0x1c84cf),_0x154c6f=_0x1e6fb6[_0x24757c(0x14d)]||[],_0x418666=_0x69896c['zbMYP'](getCurrentSessionItems,_0x1e6fb6,_0x154c6f);_0x69896c['QJGmw'](_0x418666['length'],0x0)&&(console[_0x24757c(0x19f)](_0x24757c(0x193)),process['exit'](0x1));const _0x5e45f6=_0x17214b['excludeScenarios']??[],_0x2fe0ec=_0x5e45f6[_0x24757c(0x1cc)](_0x1055fa=>!Number['isInteger'](_0x1055fa)||_0x1055fa<0x1||_0x1055fa>_0x418666['length']);if(_0x2fe0ec[_0x24757c(0x176)]>0x0){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x2fe0ec[_0x24757c(0x1bb)](',\x20')),console[_0x24757c(0x1ae)]('\x0aAvailable\x20scenarios:');for(let _0x1711b9=0x0;_0x1711b9<_0x418666['length'];_0x1711b9++){console['log']('\x20\x20'+_0x69896c[_0x24757c(0x1b2)](_0x1711b9,0x1)+'.\x20'+_0x418666[_0x1711b9]['description']);}process['exit'](0x1);}const _0x34d173=new Set(_0x5e45f6[_0x24757c(0x1bc)](_0x396bbb=>_0x396bbb-0x1)),_0x2762ee=_0x418666['filter']((_0x241c06,_0x2f35ad)=>!_0x34d173[_0x24757c(0x1d6)](_0x2f35ad));_0x2762ee['length']===0x0&&(console['error'](_0x69896c[_0x24757c(0x1e1)]),process['exit'](0x1));if(_0x17214b[_0x24757c(0x1c6)])await _0x69896c[_0x24757c(0x17e)](outputJsonReport,_0x1c84cf,_0x1e6fb6,_0x2762ee);else{const _0x5db66e=await getFeatureReportMarkdown(_0x1c84cf,{'itemIds':_0x2762ee[_0x24757c(0x1bc)](_0x3ea62d=>_0x3ea62d['id'])});process[_0x24757c(0x1b4)][_0x24757c(0x15a)](_0x5db66e[_0x24757c(0x1a7)]()+'\x0a');}}async function outputJsonReport(_0x1b9a69,_0x5de1e3,_0x318208){const _0x21ca19=_0x492c6d,_0x4951a3={'ELhOw':function(_0x3ad79c){return _0x3ad79c();},'KcwQD':function(_0x345569,_0x3f2718){return _0x345569(_0x3f2718);}},_0xe97d73=_0x4951a3[_0x21ca19(0x13a)](getApiBaseUrl),_0x418fed=await _0x4951a3[_0x21ca19(0x18d)](getFeatureReport,_0x1b9a69),_0x54bc1c=new Map(_0x418fed[_0x21ca19(0x14d)]['map'](_0x7e6428=>[_0x7e6428['id'],_0x7e6428])),_0x5cadb6=await Promise['all'](_0x318208[_0x21ca19(0x1bc)](async _0x4c80ba=>{const _0x5e9446=_0x21ca19,_0x43b62c=_0x54bc1c[_0x5e9446(0x1c5)](_0x4c80ba['id']),_0x36d5ec=_0x43b62c?.['linkedSession']??null;let _0x1e3f0c=[];if(_0x4c80ba[_0x5e9446(0x141)])try{const {steps:_0x4506e2}=await getBrowserSessionSteps(_0x4c80ba['browserSessionId']);_0x4506e2[_0x5e9446(0x176)]>0x0&&(_0x1e3f0c=_0x4506e2[_0x5e9446(0x1bc)](_0x55b1d5=>{const _0x14f50a=_0x5e9446,_0x382b1d=_0x55b1d5[_0x14f50a(0x144)]['find'](_0x5de71c=>_0x5de71c[_0x14f50a(0x182)]===_0x14f50a(0x1b5)&&_0x5de71c[_0x14f50a(0x191)]==='after')??_0x55b1d5[_0x14f50a(0x144)]['find'](_0x3bedfd=>_0x3bedfd[_0x14f50a(0x182)]===_0x14f50a(0x1b5));let _0xddb7db=null,_0xf668a8=null;if(_0x382b1d){const _0x37a9e5=_0x382b1d['storage']['location'][_0x14f50a(0x135)]('/')[_0x14f50a(0x178)]();_0xddb7db=_0xe97d73+_0x14f50a(0x132)+_0x4c80ba['browserSessionId']+'/artifacts/'+_0x37a9e5,_0x37a9e5&&(_0xf668a8=_0x37a9e5[_0x14f50a(0x1a8)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x14f50a(0x1a8)](/[-_]/g,'\x20'));}return{'description':_0xf668a8||_0x55b1d5['description']||_0x55b1d5[_0x14f50a(0x156)]||'Step\x20'+_0x55b1d5[_0x14f50a(0x1c3)],'screenshot':_0xddb7db,'is_key_step':_0x55b1d5['isKeyStep']};}));}catch{}return _0x1e3f0c['length']===0x0&&_0x36d5ec?.['screenshotUrls']&&(_0x1e3f0c=_0x36d5ec['screenshotUrls']['map']((_0x1dcc71,_0xb3af25)=>({'description':_0x5e9446(0x1af)+(_0xb3af25+0x1),'screenshot':_0x1dcc71,'is_key_step':![]}))),{'description':_0x4c80ba[_0x5e9446(0x15b)],'result':getScenarioResult(_0x4c80ba),'rationale':getScenarioRationale(_0x4c80ba,_0x36d5ec?.[_0x5e9446(0x1a9)]),'steps':_0x1e3f0c};})),_0x236853={'url':_0x5de1e3['dashboardUrl'],'scenarios':_0x5cadb6};process['stdout']['write'](JSON[_0x21ca19(0x1d5)](_0x236853,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x186c57){const _0x34822e=_0x492c6d,_0x4783b6={'McazZ':_0x34822e(0x1cf),'EGMOs':function(_0x3f2114,_0x2a12ff){return _0x3f2114===_0x2a12ff;},'npyvv':function(_0x5b782f,_0x14ae34){return _0x5b782f!==_0x14ae34;}},_0x2d148b=_0x186c57||await getActiveFeatureId();if(!_0x2d148b)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x350e81=await getFeature(_0x2d148b);if(!_0x350e81[_0x34822e(0x158)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x604944}=await listFeatureSessions(_0x2d148b),_0x388ee4=_0x604944['find'](_0x5af8dc=>_0x5af8dc['id']===_0x350e81[_0x34822e(0x158)]);if(!_0x388ee4)throw new Error(_0x4783b6['McazZ']);if(_0x4783b6[_0x34822e(0x18b)](_0x388ee4[_0x34822e(0x1c0)],_0x34822e(0x124))){console[_0x34822e(0x1ae)](_0x34822e(0x10c));return;}if(_0x4783b6['npyvv'](_0x388ee4[_0x34822e(0x1c0)],'in_progress'))throw new Error(_0x34822e(0x120)+_0x388ee4['status']);console[_0x34822e(0x1ae)]('\x0aConcluding\x20session...'),await concludeSession(_0x2d148b,_0x350e81[_0x34822e(0x158)]),console['log']('\x0a✅\x20Session\x20'+_0x388ee4['iteration']+_0x34822e(0x15e)),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x216687){const _0x691874=_0x492c6d,_0x2e6e2e={'gMbzK':function(_0x1b976f){return _0x1b976f();},'qkXio':_0x691874(0x14e),'rmMZi':function(_0x232419,_0xd7228a){return _0x232419(_0xd7228a);},'OZZNh':function(_0x3d0292,_0x17c65b){return _0x3d0292(_0x17c65b);},'QOdXJ':function(_0x560d65,_0x236d87){return _0x560d65===_0x236d87;},'mZqLO':function(_0x464300,_0x4a06cf){return _0x464300===_0x4a06cf;}},_0x5d1502=_0x216687||await _0x2e6e2e[_0x691874(0x1da)](getActiveFeatureId);if(!_0x5d1502)throw new Error(_0x2e6e2e[_0x691874(0x1b9)]);const _0x2df451=await _0x2e6e2e['rmMZi'](getFeature,_0x5d1502);console['log'](_0x691874(0x112)+_0x2df451['name']+'\x0a');const {sessions:_0x599696}=await _0x2e6e2e['OZZNh'](listFeatureSessions,_0x5d1502);if(_0x2e6e2e[_0x691874(0x127)](_0x599696[_0x691874(0x176)],0x0)){console['log'](_0x691874(0x12f));return;}for(const _0x3ee868 of _0x599696){const _0x357ce9=_0x2e6e2e['mZqLO'](_0x3ee868['status'],_0x691874(0x124))?'✅':_0x2e6e2e[_0x691874(0x127)](_0x3ee868[_0x691874(0x1c0)],_0x691874(0x116))?'🔄':'▶️';console[_0x691874(0x1ae)](_0x357ce9+_0x691874(0x126)+_0x3ee868[_0x691874(0x180)]+'\x20('+_0x3ee868['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x3ee868[_0x691874(0x1c0)]),console[_0x691874(0x1ae)]('\x20\x20\x20Created:\x20'+new Date(_0x3ee868['createdAt'])[_0x691874(0x18c)]()),_0x3ee868['completedAt']&&console['log'](_0x691874(0x118)+new Date(_0x3ee868['completedAt'])['toLocaleString']()),console[_0x691874(0x1ae)]('');}}export async function featureAddScenario(_0x1469e5,_0x291332){const _0x552efa=_0x492c6d,_0x584d9b={'olDcG':function(_0x2a3d1a){return _0x2a3d1a();},'neBaY':function(_0x30d607,_0x19cc09,_0x574e68){return _0x30d607(_0x19cc09,_0x574e68);},'kHCvH':function(_0x1ae8ef,_0x2547df,_0x377d7b){return _0x1ae8ef(_0x2547df,_0x377d7b);}},_0x223fc2=_0x291332||await _0x584d9b[_0x552efa(0x187)](getActiveFeatureId);if(!_0x223fc2)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x417f6a=await getFeature(_0x223fc2);if(_0x417f6a[_0x552efa(0x11b)]&&!_0x417f6a['latestReview'][_0x552efa(0x125)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x417f6a['dashboardUrl']);await _0x584d9b['neBaY'](createChecklistItem,_0x223fc2,_0x1469e5);const _0x2ba8df=await getFeature(_0x223fc2);console[_0x552efa(0x1ae)]('\x0a✅\x20Scenario\x20added'),_0x584d9b[_0x552efa(0x17b)](displayFeature,_0x2ba8df,_0x2ba8df[_0x552efa(0x14d)]);}export async function featureEditScenario(_0x4dcb52,_0xb4fe6){const _0x241345=_0x492c6d,_0xefe041={'gjIih':function(_0x2c21bc){return _0x2c21bc();},'ijcsd':'Please\x20finish\x20your\x20review\x20first:','ykpzg':function(_0x13af42,_0x11fa52){return _0x13af42===_0x11fa52;},'gfOkJ':function(_0x16f4f6,_0x12077c){return _0x16f4f6===_0x12077c;},'ruVOL':'\x0aAvailable\x20scenarios:','yfhWJ':function(_0x50e2ec,_0x50463f){return _0x50e2ec<_0x50463f;},'SmiEL':function(_0x15eb82,_0x3347cc){return _0x15eb82-_0x3347cc;},'KQlsV':function(_0x5b0d02,_0x3ddba3){return _0x5b0d02<_0x3ddba3;},'kQmNV':function(_0x545475,_0x5212c2,_0x4d5026,_0x4f4a37){return _0x545475(_0x5212c2,_0x4d5026,_0x4f4a37);},'DBPgo':function(_0x3c0fb1,_0x357744){return _0x3c0fb1(_0x357744);},'xzEDQ':function(_0x32e754,_0x2245d5,_0x2996ae){return _0x32e754(_0x2245d5,_0x2996ae);}},_0x2d75b1=_0xb4fe6['id']||await _0xefe041[_0x241345(0x1ba)](getActiveFeatureId);!_0x2d75b1&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error']('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process['exit'](0x1));const _0x10234b=await getFeature(_0x2d75b1);_0x10234b[_0x241345(0x11b)]&&!_0x10234b[_0x241345(0x11b)][_0x241345(0x125)]&&(console[_0x241345(0x19f)](_0x241345(0x157)),console[_0x241345(0x19f)](_0xefe041[_0x241345(0x17d)]),console[_0x241345(0x19f)]('\x20\x20'+_0x10234b['dashboardUrl']),process['exit'](0x1));const _0x5c6f9f=_0x10234b[_0x241345(0x14d)]||[];_0xefe041['ykpzg'](_0x5c6f9f['length'],0x0)&&(console[_0x241345(0x19f)](_0x241345(0x12a)),process['exit'](0x1));if(_0xefe041[_0x241345(0x1d1)](_0xb4fe6['scenario'],undefined)){console[_0x241345(0x19f)](_0x241345(0x1bd)),console[_0x241345(0x1ae)](_0xefe041['ruVOL']);for(let _0x3d005a=0x0;_0xefe041[_0x241345(0x1d0)](_0x3d005a,_0x5c6f9f[_0x241345(0x176)]);_0x3d005a++){console['log']('\x20\x20'+(_0x3d005a+0x1)+'.\x20'+_0x5c6f9f[_0x3d005a]['description']);}process['exit'](0x1);}const _0x7005f6=_0xefe041[_0x241345(0x122)](_0xb4fe6[_0x241345(0x16a)],0x1);if(_0xefe041['KQlsV'](_0x7005f6,0x0)||_0x7005f6>=_0x5c6f9f[_0x241345(0x176)]){console['error'](_0x241345(0x162)+_0xb4fe6[_0x241345(0x16a)]+'.\x20Feature\x20review\x20has\x20'+_0x5c6f9f[_0x241345(0x176)]+'\x20scenarios.'),console[_0x241345(0x1ae)]('\x0aAvailable\x20scenarios:');for(let _0x35f3d7=0x0;_0x35f3d7<_0x5c6f9f[_0x241345(0x176)];_0x35f3d7++){console[_0x241345(0x1ae)]('\x20\x20'+(_0x35f3d7+0x1)+'.\x20'+_0x5c6f9f[_0x35f3d7]['description']);}process['exit'](0x1);}const _0x31a9f2=_0x5c6f9f[_0x7005f6];await _0xefe041[_0x241345(0x121)](updateChecklistItem,_0x2d75b1,_0x31a9f2['id'],{'description':_0x4dcb52});const _0x5b0a02=await _0xefe041[_0x241345(0x173)](getFeature,_0x2d75b1);console['log']('\x0a✅\x20Scenario\x20updated'),_0xefe041[_0x241345(0x16d)](displayFeature,_0x5b0a02,_0x5b0a02['checklistItems']);}async function downloadFeedbackImage(_0x4e9d28,_0x527e22){const _0x1974e8={'Qhcbv':function(_0x2960e4){return _0x2960e4();}};try{const _0x5cc725=join(_0x1974e8['Qhcbv'](getRangerDir),'feedback-images');await mkdir(_0x5cc725,{'recursive':!![]});const _0x4618d2=join(_0x5cc725,'comment_'+_0x527e22+'.png'),_0x5ad93f=await fetch(_0x4e9d28);if(!_0x5ad93f['ok'])return null;const _0x22b19d=Buffer['from'](await _0x5ad93f['arrayBuffer']());return await writeFile(_0x4618d2,_0x22b19d),_0x4618d2;}catch{return null;}}export async function featureGetReview(_0x1cfd36){const _0x240a48=_0x492c6d,_0x7820cc={'NYeuU':function(_0x45f42a,_0x2d9dba){return _0x45f42a(_0x2d9dba);},'hdBzo':function(_0x1257d7,_0x211c79){return _0x1257d7===_0x211c79;},'GfEXz':_0x240a48(0x13f),'MrTJg':function(_0x2ca7d4,_0x186798){return _0x2ca7d4>_0x186798;},'AxmjZ':function(_0x322bca,_0x2e5961){return _0x322bca>_0x2e5961;},'OtTip':function(_0x2ea215,_0x158a11){return _0x2ea215+_0x158a11;},'LOivW':'numeric','vWZWX':'Unknown','HmVNq':function(_0x3efe1c,_0x4c853e,_0x3502cc){return _0x3efe1c(_0x4c853e,_0x3502cc);},'quPBR':'\x20>\x20','ufTUf':_0x240a48(0x109),'pdgyz':function(_0x31d304,_0x4b4eea){return _0x31d304>=_0x4b4eea;}},_0xaf3caa=_0x1cfd36||await getActiveFeatureId();if(!_0xaf3caa)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x1d47ef=await getFeature(_0xaf3caa),{items:_0x245d37}=await _0x7820cc['NYeuU'](getActionItems,_0xaf3caa);console[_0x240a48(0x1ae)]('\x0a📋\x20Feedback\x20for:\x20'+_0x1d47ef['name']+'\x20('+_0x1d47ef['id']+')\x0a');if(_0x7820cc['hdBzo'](_0x245d37[_0x240a48(0x176)],0x0)){console[_0x240a48(0x1ae)](_0x7820cc['GfEXz']);return;}for(let _0x7784bb=0x0;_0x7784bb<_0x245d37[_0x240a48(0x176)];_0x7784bb++){const _0x387bd4=_0x245d37[_0x7784bb],_0x3f4c97=_0x7820cc[_0x240a48(0x1ab)](_0x387bd4[_0x240a48(0x16f)],0x1)?'\x20(v'+_0x387bd4['version']+')':'',_0x10090f=await getItemFeedback(_0xaf3caa,_0x387bd4['id']);if(_0x7820cc['AxmjZ'](_0x10090f[_0x240a48(0x170)]['length'],0x0)){console['log']('Scenario\x20'+_0x7820cc['OtTip'](_0x7784bb,0x1)+_0x240a48(0x166)+_0x387bd4['description']+'\x22'+_0x3f4c97+_0x240a48(0x1a3)+_0x10090f[_0x240a48(0x170)][_0x240a48(0x176)]+'\x20unaddressed\x20comment(s)');for(const _0x4f7fad of _0x10090f[_0x240a48(0x170)]){const _0x2a5d2d=new Date(_0x4f7fad[_0x240a48(0x153)])[_0x240a48(0x174)](_0x240a48(0x1b3),{'month':'short','day':_0x7820cc[_0x240a48(0x129)]}),_0x3f2ff0=_0x4f7fad[_0x240a48(0x1b1)]||_0x4f7fad[_0x240a48(0x1e2)]||_0x7820cc[_0x240a48(0x1b8)];console['log'](_0x240a48(0x138)+_0x3f2ff0+'\x20('+_0x2a5d2d+'):\x20\x22'+_0x4f7fad['content']+'\x22');if(_0x4f7fad['assetUrl']){const _0x55ae9e=await _0x7820cc['HmVNq'](downloadFeedbackImage,_0x4f7fad[_0x240a48(0x1b7)],_0x4f7fad['id']);_0x55ae9e&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x55ae9e);}if(_0x4f7fad['domRef']){const _0x31efe1=_0x4f7fad['domRef']['selector']['split'](_0x7820cc[_0x240a48(0x15f)])['pop']()?.['split'](':')[0x0]||_0x240a48(0x1db),_0x55cae6=_0x4f7fad['domRef'][_0x240a48(0x113)]?'\x20\x22'+_0x4f7fad[_0x240a48(0x1ce)][_0x240a48(0x113)]['slice'](0x0,0x3c)+'\x22':'';console[_0x240a48(0x1ae)](_0x240a48(0x19c)+_0x31efe1+'>'+_0x55cae6),console['log'](_0x240a48(0x1de)+_0x4f7fad['domRef'][_0x240a48(0x115)]);}else{if(_0x4f7fad[_0x240a48(0x10b)]){const _0x2bb74e=_0x4f7fad[_0x240a48(0x10b)][_0x240a48(0x1d9)];_0x4f7fad['spatial'][_0x240a48(0x19d)]===_0x7820cc[_0x240a48(0x1ad)]&&_0x7820cc[_0x240a48(0x17a)](_0x2bb74e[_0x240a48(0x176)],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x2bb74e[0x0][_0x240a48(0x11f)](0x2)+',\x20'+_0x2bb74e[0x1][_0x240a48(0x11f)](0x2)+')'):console['log'](_0x240a48(0x16b)+_0x4f7fad[_0x240a48(0x10b)][_0x240a48(0x19d)]+_0x240a48(0x196)+_0x2bb74e[_0x240a48(0x1bc)](_0x36c0c0=>_0x36c0c0[_0x240a48(0x11f)](0x2))['join'](',\x20')+']');}}}if(_0x10090f[_0x240a48(0x199)]){console[_0x240a48(0x1ae)](_0x240a48(0x11e));for(const _0x29a82f of _0x10090f[_0x240a48(0x199)][_0x240a48(0x135)]('\x0a')){console[_0x240a48(0x1ae)](_0x240a48(0x19a)+_0x29a82f);}}}else console[_0x240a48(0x1ae)]('Scenario\x20'+(_0x7784bb+0x1)+_0x240a48(0x166)+_0x387bd4['description']+'\x22'+_0x3f4c97+'\x20—\x20no\x20comments'),console[_0x240a48(0x1ae)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x59b1f7){const _0x387b30=_0x492c6d,_0x58d295={'ulmvh':function(_0x4bca21,_0x24114d){return _0x4bca21(_0x24114d);},'rThpx':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x2bbb5c=_0x59b1f7||await getActiveFeatureId();if(!_0x2bbb5c)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x4f3148=await _0x58d295['ulmvh'](getFeature,_0x2bbb5c);await softDeleteFeature(_0x2bbb5c),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x4f3148[_0x387b30(0x149)]+'\x20('+_0x2bbb5c+')'),console[_0x387b30(0x1ae)](_0x58d295[_0x387b30(0x195)]+_0x2bbb5c);}export async function featureRestore(_0x555eb8){const _0x591c5e=_0x492c6d,_0x5366e1={'fTTcX':function(_0x22a6c9,_0x226efb){return _0x22a6c9(_0x226efb);},'MfVwp':function(_0x5b1f0a,_0x108154){return _0x5b1f0a(_0x108154);},'CRXNh':function(_0x255d63,_0x3dff20,_0x388387){return _0x255d63(_0x3dff20,_0x388387);}};await _0x5366e1['fTTcX'](restoreFeature,_0x555eb8);const _0x1c254d=await _0x5366e1[_0x591c5e(0x175)](getFeature,_0x555eb8);console['log'](_0x591c5e(0x168)+_0x1c254d['name']+'\x20('+_0x555eb8+')'),_0x5366e1[_0x591c5e(0x185)](displayFeature,_0x1c254d,_0x1c254d['checklistItems']);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3690e2,_0x2bf3ca){const _0xa9d9bc=_0x3c3c,_0x28d7a5=_0x3690e2();while(!![]){try{const _0x7e928=-parseInt(_0xa9d9bc(0xb0))/0x1*(parseInt(_0xa9d9bc(0xb2))/0x2)+-parseInt(_0xa9d9bc(0xb3))/0x3+parseInt(_0xa9d9bc(0xad))/0x4+parseInt(_0xa9d9bc(0xac))/0x5+parseInt(_0xa9d9bc(0xae))/0x6+-parseInt(_0xa9d9bc(0xaf))/0x7+parseInt(_0xa9d9bc(0xab))/0x8;if(_0x7e928===_0x2bf3ca)break;else _0x28d7a5['push'](_0x28d7a5['shift']());}catch(_0x1bc344){_0x28d7a5['push'](_0x28d7a5['shift']());}}}(_0x4bf7,0x57db9));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x3c3c(_0x403c4c,_0x36dddb){_0x403c4c=_0x403c4c-0xab;const _0x4bf7e7=_0x4bf7();let _0x3c3c0f=_0x4bf7e7[_0x403c4c];return _0x3c3c0f;}function _0x4bf7(){const _0x58099c=['4070680uLjGGO','2037810rEdPXG','1249684NNkvCn','4145652lfgDfA','4169487mPZapi','2oKZuhL','Unknown\x20hook:\x20','275612PCHnwp','2065926FkKfZH','khfga','error','exit'];_0x4bf7=function(){return _0x58099c;};return _0x4bf7();}export async function hook(_0x46fcc6,_0x487887){const _0x28addb=_0x3c3c,_0x26e112={'khfga':function(_0x231985,_0x313423){return _0x231985(_0x313423);}},_0x453aa=HOOKS[_0x46fcc6];if(!_0x453aa){const _0x191760=Object['keys'](HOOKS)['join'](',\x20');console[_0x28addb(0xb5)](_0x28addb(0xb1)+_0x46fcc6),console['error']('Valid\x20hooks:\x20'+_0x191760),process[_0x28addb(0xb6)](0x1);}await _0x26e112[_0x28addb(0xb4)](_0x453aa,_0x487887);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x91464f,_0x4efd99){const _0x2bf179=_0x55a6,_0x49ac03=_0x91464f();while(!![]){try{const _0x4a8d84=-parseInt(_0x2bf179(0x81))/0x1+-parseInt(_0x2bf179(0x82))/0x2*(parseInt(_0x2bf179(0x84))/0x3)+-parseInt(_0x2bf179(0x8a))/0x4*(parseInt(_0x2bf179(0x89))/0x5)+-parseInt(_0x2bf179(0x83))/0x6+parseInt(_0x2bf179(0x88))/0x7+-parseInt(_0x2bf179(0x86))/0x8*(parseInt(_0x2bf179(0x8b))/0x9)+parseInt(_0x2bf179(0x85))/0xa;if(_0x4a8d84===_0x4efd99)break;else _0x49ac03['push'](_0x49ac03['shift']());}catch(_0x5d1c5b){_0x49ac03['push'](_0x49ac03['shift']());}}}(_0x110c,0xad9fd));import{readHookInput}from'./output.js';function _0x110c(){const _0x4cbf9b=['6489282fBOYJm','1702491SVWYLJ','48403140xYQwdU','1832MAjigo','session_id','2886870NenjIu','17145iPFEsn','612rUNhjQ','21852WZEKTi','1244369OMsGYF','4SEvdwa'];_0x110c=function(){return _0x4cbf9b;};return _0x110c();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0x55a6(_0x5f0b0c,_0x50772c){_0x5f0b0c=_0x5f0b0c-0x81;const _0x110c16=_0x110c();let _0x55a655=_0x110c16[_0x5f0b0c];return _0x55a655;}export async function autoPrompt(){const _0x1e4757=_0x55a6,_0x2cb8cb={'iISkR':function(_0x4dece5,_0x5bb138){return _0x4dece5(_0x5bb138);}},_0x15fc5e=await readHookInput(),_0x288407=_0x15fc5e?.[_0x1e4757(0x87)];if(!_0x288407)return;if(isSessionEnabled(_0x288407)||_0x2cb8cb['iISkR'](hasSessionBeenPrompted,_0x288407))return;markSessionPrompted(_0x288407),console['log'](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x52bc4a,_0x2ab104){const _0xacde50=_0x1b7b,_0x122368=_0x52bc4a();while(!![]){try{const _0x54a955=parseInt(_0xacde50(0x87))/0x1*(parseInt(_0xacde50(0x95))/0x2)+parseInt(_0xacde50(0x94))/0x3+-parseInt(_0xacde50(0x8f))/0x4*(-parseInt(_0xacde50(0x88))/0x5)+parseInt(_0xacde50(0x93))/0x6*(-parseInt(_0xacde50(0x96))/0x7)+parseInt(_0xacde50(0x90))/0x8*(parseInt(_0xacde50(0x8b))/0x9)+parseInt(_0xacde50(0x8a))/0xa+-parseInt(_0xacde50(0x85))/0xb;if(_0x54a955===_0x2ab104)break;else _0x122368['push'](_0x122368['shift']());}catch(_0x5ecd62){_0x122368['push'](_0x122368['shift']());}}}(_0x166d,0xece46));function _0x166d(){const _0x2a3db1=['18uXRIjS','VUOmW','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','lEaZK','366500YvIoIN','362832IHRtIs','main','CLAUDE_SESSION_ID','6WyfMdy','3662220NBBRaV','24kmabdp','12240858cUoPgM','2159443FDQVUT','SmWid','7303RBcOgV','5zUHUVz','master','14246080cqEipW'];_0x166d=function(){return _0x2a3db1;};return _0x166d();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x1b7b(_0x552b7f,_0x4f7cec){_0x552b7f=_0x552b7f-0x85;const _0x166d9c=_0x166d();let _0x1b7b1d=_0x166d9c[_0x552b7f];return _0x1b7b1d;}import{printBlock}from'./output.js';export async function disable(_0x3c1839){const _0x2e1856=_0x1b7b,_0x6fc958={'SmWid':function(_0x51196a,_0x5d06ff){return _0x51196a(_0x5d06ff);},'lEaZK':function(_0x1f1a28,_0xd7ac18){return _0x1f1a28!==_0xd7ac18;},'iTCtl':function(_0x59f80c,_0x5dfbb9){return _0x59f80c!==_0x5dfbb9;},'zvMMT':_0x2e1856(0x89),'uxSJM':function(_0x56afb8,_0x21a963){return _0x56afb8(_0x21a963);},'VUOmW':function(_0x4f763e,_0x4827ae){return _0x4f763e!==_0x4827ae;}},_0x24e16c=_0x3c1839||process['env'][_0x2e1856(0x92)]||'';_0x24e16c&&_0x6fc958[_0x2e1856(0x86)](disableSession,_0x24e16c);const _0x39a450=getCurrentBranch();_0x39a450&&_0x6fc958[_0x2e1856(0x8e)](_0x39a450,_0x2e1856(0x91))&&_0x6fc958['iTCtl'](_0x39a450,_0x6fc958['zvMMT'])&&_0x6fc958[_0x2e1856(0x86)](disableBranch,_0x39a450),_0x6fc958['uxSJM'](printBlock,_0x2e1856(0x8d)+(_0x39a450&&_0x39a450!=='main'&&_0x6fc958[_0x2e1856(0x8c)](_0x39a450,'master')?'\x20and\x20branch\x20\x27'+_0x39a450+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x14bf1b,_0x33ff80){const _0x4b613b=_0x433b,_0x49ace6=_0x14bf1b();while(!![]){try{const _0x48d32c=parseInt(_0x4b613b(0x1b9))/0x1+-parseInt(_0x4b613b(0x1b2))/0x2+-parseInt(_0x4b613b(0x1ad))/0x3*(-parseInt(_0x4b613b(0x1a3))/0x4)+parseInt(_0x4b613b(0x1a4))/0x5+-parseInt(_0x4b613b(0x1ba))/0x6*(parseInt(_0x4b613b(0x1a6))/0x7)+-parseInt(_0x4b613b(0x1a8))/0x8+parseInt(_0x4b613b(0x1b1))/0x9;if(_0x48d32c===_0x33ff80)break;else _0x49ace6['push'](_0x49ace6['shift']());}catch(_0xfe27e7){_0x49ace6['push'](_0x49ace6['shift']());}}}(_0x5b18,0xb18ee));function _0x433b(_0x5b4f7a,_0xca33e2){_0x5b4f7a=_0x5b4f7a-0x1a3;const _0x5b18e9=_0x5b18();let _0x433b79=_0x5b18e9[_0x5b4f7a];return _0x433b79;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';function _0x5b18(){const _0x5a9025=['main','#\x20RANGER\x20ENABLED','#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`','752302vkLTqt','7332AUEUqx','12IHJSem','5526370zwqQjE','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','7161bLPFyz','\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.','3336600yhIlmq','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','EXIHn','ECLUv','120837MZmSmi','master','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','MiOLx','16562187iyHVKD','2848394WKLaVL','XkiOK','sUaCM','zAIZR'];_0x5b18=function(){return _0x5a9025;};return _0x5b18();}import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x27184b){const _0x577037=_0x433b,_0x199054={'JvNIn':function(_0x19f811,_0x32bd16){return _0x19f811(_0x32bd16);},'zAIZR':'ranger\x20setup\x20--opencode','EXIHn':'ranger\x20setup','XkiOK':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','sUaCM':function(_0x659067){return _0x659067();},'MiOLx':_0x577037(0x1b6),'ECLUv':function(_0x4474dc,_0x56b499){return _0x4474dc!==_0x56b499;}},_0x2a2b59=_0x27184b||process['env']['CLAUDE_SESSION_ID']||'',_0x5866b8=_0x199054['JvNIn'](Boolean,_0x27184b),_0x402398=await getToken();if(!_0x402398){const _0x273ff9=_0x5866b8?_0x199054[_0x577037(0x1b5)]:_0x199054[_0x577037(0x1ab)],_0x1592fa=_0x5866b8?_0x577037(0x1a5):_0x199054[_0x577037(0x1b3)];printBlock(_0x577037(0x1b8)+_0x273ff9+_0x577037(0x1aa)+_0x1592fa);return;}try{await update();}catch{}_0x2a2b59&&enableSession(_0x2a2b59);const _0x1c9f65=_0x199054[_0x577037(0x1b4)](getCurrentBranch),_0x4291=_0x1c9f65&&_0x1c9f65!==_0x199054[_0x577037(0x1b0)]&&_0x199054[_0x577037(0x1ac)](_0x1c9f65,_0x577037(0x1ae))?'\x0a\x0a**Branch\x20\x27'+_0x1c9f65+_0x577037(0x1a9):'',_0x12f94b=getRangerSkillContent();printBlock(_0x577037(0x1b7)+_0x4291+_0x577037(0x1af)+_0x12f94b+_0x577037(0x1a7));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x362a(_0x23504b,_0x3ad814){_0x23504b=_0x23504b-0x1dd;const _0x293904=_0x2939();let _0x362a7f=_0x293904[_0x23504b];return _0x362a7f;}function _0x2939(){const _0x2ab7f7=['1485400NQIhaE','1317zePgsf','smkZm','761352zMfCZn','660709cylXFx','339853kKQyCM','1322isBwSP','90441ZApjjZ','18LrRoRA','323995lJXxpW','410xFXAUk'];_0x2939=function(){return _0x2ab7f7;};return _0x2939();}(function(_0x2ca50d,_0x2f88cc){const _0x20858b=_0x362a,_0x3f4a68=_0x2ca50d();while(!![]){try{const _0x256c54=-parseInt(_0x20858b(0x1df))/0x1+parseInt(_0x20858b(0x1e0))/0x2*(parseInt(_0x20858b(0x1e6))/0x3)+-parseInt(_0x20858b(0x1dd))/0x4+-parseInt(_0x20858b(0x1e3))/0x5+-parseInt(_0x20858b(0x1e2))/0x6*(-parseInt(_0x20858b(0x1de))/0x7)+-parseInt(_0x20858b(0x1e5))/0x8+-parseInt(_0x20858b(0x1e1))/0x9*(-parseInt(_0x20858b(0x1e4))/0xa);if(_0x256c54===_0x2f88cc)break;else _0x3f4a68['push'](_0x3f4a68['shift']());}catch(_0xbbc007){_0x3f4a68['push'](_0x3f4a68['shift']());}}}(_0x2939,0x31f8c));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x3cb0fc){const _0x32f1fa=_0x362a,_0xeee9b0={'smkZm':function(_0x521901,_0x508932){return _0x521901(_0x508932);}},_0x281f05=await _0xeee9b0[_0x32f1fa(0x1e7)](getEnabledSessionId,_0x3cb0fc);if(!_0x281f05)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1fbb85,_0x5e9c59){var _0x4c4a80=_0x32e3,_0x38877b=_0x1fbb85();while(!![]){try{var _0x54cc81=parseInt(_0x4c4a80(0x1c2))/0x1+parseInt(_0x4c4a80(0x1c8))/0x2*(-parseInt(_0x4c4a80(0x1c0))/0x3)+-parseInt(_0x4c4a80(0x1c6))/0x4*(parseInt(_0x4c4a80(0x1c3))/0x5)+-parseInt(_0x4c4a80(0x1c7))/0x6+parseInt(_0x4c4a80(0x1bf))/0x7+parseInt(_0x4c4a80(0x1c5))/0x8*(-parseInt(_0x4c4a80(0x1c4))/0x9)+parseInt(_0x4c4a80(0x1c1))/0xa;if(_0x54cc81===_0x5e9c59)break;else _0x38877b['push'](_0x38877b['shift']());}catch(_0x18606f){_0x38877b['push'](_0x38877b['shift']());}}}(_0x5bba,0x4e758));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x5bba(){var _0x5885b0=['44dWSvHw','559410UopmPw','538562AqdIuM','1921927qogjGD','3fQaaKe','7511900qrgFFy','76230iZOrZc','33190kRQyBl','3105711WFHtEr','8UpBqBE'];_0x5bba=function(){return _0x5885b0;};return _0x5bba();}export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';function _0x32e3(_0x39e156,_0x2916ea){_0x39e156=_0x39e156-0x1bf;var _0x5bbad3=_0x5bba();var _0x32e3c7=_0x5bbad3[_0x39e156];return _0x32e3c7;}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x586dda,_0x4c827d){const _0x4c02a6=_0x14fd,_0x2cc7e7=_0x586dda();while(!![]){try{const _0x3ab94c=-parseInt(_0x4c02a6(0x190))/0x1+-parseInt(_0x4c02a6(0x19a))/0x2+parseInt(_0x4c02a6(0x198))/0x3*(parseInt(_0x4c02a6(0x195))/0x4)+parseInt(_0x4c02a6(0x191))/0x5+-parseInt(_0x4c02a6(0x194))/0x6+-parseInt(_0x4c02a6(0x193))/0x7+-parseInt(_0x4c02a6(0x18e))/0x8*(-parseInt(_0x4c02a6(0x18f))/0x9);if(_0x3ab94c===_0x4c827d)break;else _0x2cc7e7['push'](_0x2cc7e7['shift']());}catch(_0x383313){_0x2cc7e7['push'](_0x2cc7e7['shift']());}}}(_0x41b9,0x7c211));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x437b34){const _0x26f411=_0x14fd;console[_0x26f411(0x18d)](_0x437b34);}function _0x41b9(){const _0x732299=['PyAnN','9kEUYuh','parse','257940pxqwjB','log','14126408TMOPNg','9ZWjtIS','257772bfDGSm','414835EZuVYZ','stdin','3231340iWWfkR','4320882WdUybT','304232mJGnZz','session_id'];_0x41b9=function(){return _0x732299;};return _0x41b9();}export async function readHookInput(){const _0x12e72a=_0x14fd;let _0x5d17b7='';for await(const _0x4fc0f4 of process[_0x12e72a(0x192)]){_0x5d17b7+=_0x4fc0f4;}try{return JSON[_0x12e72a(0x199)](_0x5d17b7);}catch{return null;}}export async function getEnabledSessionId(_0x1abecb){const _0x4248f8=_0x14fd,_0x5954e6={'PyAnN':function(_0x441923){return _0x441923();}};if(_0x1abecb)return isSessionEnabled(_0x1abecb)?_0x1abecb:null;const _0x1ec938=await _0x5954e6[_0x4248f8(0x197)](readHookInput),_0x4d54e4=_0x1ec938?.[_0x4248f8(0x196)];if(!_0x4d54e4||!isSessionEnabled(_0x4d54e4))return null;return _0x4d54e4;}function _0x14fd(_0x3f8172,_0x2ba49f){_0x3f8172=_0x3f8172-0x18d;const _0x41b939=_0x41b9();let _0x14fdf1=_0x41b939[_0x3f8172];return _0x14fdf1;}export async function getEnabledHookContext(_0x156cec){const _0x5cc33f=_0x14fd;if(_0x156cec){if(!isSessionEnabled(_0x156cec))return null;return{'sessionId':_0x156cec,'input':{'session_id':_0x156cec}};}const _0x3751d6=await readHookInput(),_0x5b3989=_0x3751d6?.[_0x5cc33f(0x196)];if(!_0x5b3989||!isSessionEnabled(_0x5b3989))return null;return{'sessionId':_0x5b3989,'input':_0x3751d6};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5f1567,_0x119b5a){const _0x16e4fb=_0x139c,_0x3c007c=_0x5f1567();while(!![]){try{const _0x5457fd=-parseInt(_0x16e4fb(0x1fa))/0x1*(parseInt(_0x16e4fb(0x1f3))/0x2)+-parseInt(_0x16e4fb(0x1f6))/0x3+parseInt(_0x16e4fb(0x1f5))/0x4+parseInt(_0x16e4fb(0x1f1))/0x5+-parseInt(_0x16e4fb(0x1f4))/0x6+-parseInt(_0x16e4fb(0x1fc))/0x7+-parseInt(_0x16e4fb(0x1f7))/0x8*(-parseInt(_0x16e4fb(0x1fd))/0x9);if(_0x5457fd===_0x119b5a)break;else _0x3c007c['push'](_0x3c007c['shift']());}catch(_0x5095cb){_0x3c007c['push'](_0x3c007c['shift']());}}}(_0x3365,0x8f31c));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x139c(_0x32e430,_0x37676d){_0x32e430=_0x32e430-0x1f1;const _0x336579=_0x3365();let _0x139c2a=_0x336579[_0x32e430];return _0x139c2a;}export async function planReminder(_0x4fa00d){const _0x4035d1=_0x139c,_0x52ecf5={'rLitv':function(_0x200a45,_0xc057df){return _0x200a45(_0xc057df);}},_0xd57813=await getEnabledHookContext(_0x4fa00d);if(!_0xd57813)return;if(_0xd57813[_0x4035d1(0x1f9)][_0x4035d1(0x1fb)]!==_0x4035d1(0x1f8))return;if(!_0x52ecf5['rLitv'](shouldShowPlanReminder,_0xd57813[_0x4035d1(0x1f2)]))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}function _0x3365(){const _0x457730=['5599363coDnYY','3114qQoTUI','5175875ZBHerp','sessionId','1826050bbULLe','351768PXtcYo','1229568gKbUWk','755637pdcYDu','29304gLCdqf','plan','input','1fqXRvT','permission_mode'];_0x3365=function(){return _0x457730;};return _0x3365();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x4ff3(_0x73dc2a,_0x53e493){_0x73dc2a=_0x73dc2a-0x1ae;const _0x1e6849=_0x1e68();let _0x4ff3e2=_0x1e6849[_0x73dc2a];return _0x4ff3e2;}(function(_0x1809f3,_0xc68e3a){const _0x334f11=_0x4ff3,_0x4c864c=_0x1809f3();while(!![]){try{const _0x4cf6bb=-parseInt(_0x334f11(0x1b4))/0x1+parseInt(_0x334f11(0x1b5))/0x2*(-parseInt(_0x334f11(0x1b0))/0x3)+-parseInt(_0x334f11(0x1b8))/0x4+-parseInt(_0x334f11(0x1ae))/0x5+-parseInt(_0x334f11(0x1b6))/0x6*(-parseInt(_0x334f11(0x1b7))/0x7)+parseInt(_0x334f11(0x1b2))/0x8+-parseInt(_0x334f11(0x1b3))/0x9*(-parseInt(_0x334f11(0x1af))/0xa);if(_0x4cf6bb===_0xc68e3a)break;else _0x4c864c['push'](_0x4c864c['shift']());}catch(_0x1ddd5a){_0x4c864c['push'](_0x4c864c['shift']());}}}(_0x1e68,0x8ea41));import{printBlock,getEnabledSessionId}from'./output.js';function _0x1e68(){const _0x5e2cf6=['13960vUkxhO','9XpPhEU','LvpSl','7292752ZZWoAB','7020FTaUUN','541642yKZVzw','559898ZKDxDC','6gpjEqq','6909616BdEjvN','2995088NJAzLz','1365220bDTwEu'];_0x1e68=function(){return _0x5e2cf6;};return _0x1e68();}export async function planStart(_0x58720c){const _0x1b5772=_0x4ff3,_0x57ba36={'LvpSl':function(_0x335494,_0x26aeb8){return _0x335494(_0x26aeb8);}},_0x39adb0=await _0x57ba36[_0x1b5772(0x1b1)](getEnabledSessionId,_0x58720c);if(!_0x39adb0)return;_0x57ba36['LvpSl'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0xc6cc(_0x6f4fdc,_0x412614){_0x6f4fdc=_0x6f4fdc-0x1e0;const _0x14266c=_0x1426();let _0xc6cca5=_0x14266c[_0x6f4fdc];return _0xc6cca5;}(function(_0x55cfcc,_0xa8df3d){const _0x567d6d=_0xc6cc,_0x6e50c5=_0x55cfcc();while(!![]){try{const _0x84e924=-parseInt(_0x567d6d(0x1e5))/0x1+-parseInt(_0x567d6d(0x1ee))/0x2*(-parseInt(_0x567d6d(0x1ea))/0x3)+parseInt(_0x567d6d(0x1e8))/0x4*(parseInt(_0x567d6d(0x1e1))/0x5)+-parseInt(_0x567d6d(0x1e6))/0x6+parseInt(_0x567d6d(0x1e3))/0x7*(parseInt(_0x567d6d(0x1e2))/0x8)+parseInt(_0x567d6d(0x1e0))/0x9*(parseInt(_0x567d6d(0x1ed))/0xa)+-parseInt(_0x567d6d(0x1ec))/0xb;if(_0x84e924===_0xa8df3d)break;else _0x6e50c5['push'](_0x6e50c5['shift']());}catch(_0x202af2){_0x6e50c5['push'](_0x6e50c5['shift']());}}}(_0x1426,0x632c2));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x1426(){const _0x25cb05=['73740qQsokh','IJWMR','883040DUUrKW','RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).','463704zShwNG','stringify','2745864jOIUnx','1783240xbMkCw','2kLdttj','AyXbk','9gBHiWK','15MDAoAz','20144EuGzWY','889JCUJeQ','log','646834OwftoE'];_0x1426=function(){return _0x25cb05;};return _0x1426();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x23af56){const _0x97b151=_0xc6cc,_0x26f20b={'UONGZ':function(_0x22b29a,_0x14e160){return _0x22b29a(_0x14e160);},'AyXbk':function(_0x23ec63,_0x1a2e01){return _0x23ec63(_0x1a2e01);},'IJWMR':'PostToolUse'},_0x1fd806=await _0x26f20b['UONGZ'](getEnabledSessionId,_0x23af56);if(!_0x1fd806)return;_0x26f20b[_0x97b151(0x1ef)](updateBranchTracking,_0x1fd806);const _0x34ed3a=await getToken();if(!_0x34ed3a)return;const _0x9c4be5=getSessionEntry(_0x1fd806);if(_0x9c4be5){const _0x59c2a6={'hookSpecificOutput':{'hookEventName':_0x26f20b[_0x97b151(0x1e7)],'additionalContext':_0x97b151(0x1e9)}};console[_0x97b151(0x1e4)](JSON[_0x97b151(0x1eb)](_0x59c2a6));return;}const _0x25bdd1={'hookSpecificOutput':{'hookEventName':_0x26f20b['IJWMR'],'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x25bdd1));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2d5a91,_0x3fcf8f){const _0x207d60=_0x5670,_0x2f4400=_0x2d5a91();while(!![]){try{const _0x1af59b=parseInt(_0x207d60(0x101))/0x1+parseInt(_0x207d60(0xfa))/0x2*(parseInt(_0x207d60(0x100))/0x3)+-parseInt(_0x207d60(0x102))/0x4*(parseInt(_0x207d60(0xff))/0x5)+-parseInt(_0x207d60(0xfc))/0x6+-parseInt(_0x207d60(0xf9))/0x7+parseInt(_0x207d60(0x103))/0x8*(parseInt(_0x207d60(0xfb))/0x9)+parseInt(_0x207d60(0xfd))/0xa*(parseInt(_0x207d60(0xfe))/0xb);if(_0x1af59b===_0x3fcf8f)break;else _0x2f4400['push'](_0x2f4400['shift']());}catch(_0x33196f){_0x2f4400['push'](_0x2f4400['shift']());}}}(_0x3d7d,0xa4be6));import{getToken}from'../utils/keychain.js';function _0x3d7d(){const _0x263a3f=['90hnCCAd','6844050jHNXLg','3151180iCRtro','55WhDVnQ','30lSMbbc','430293wxFxZZ','8178NzjEHw','452524cpdIoO','554072biYmnu','2490817NkHdSe','8wrDjqt'];_0x3d7d=function(){return _0x263a3f;};return _0x3d7d();}function _0x5670(_0x5a847b,_0x3cbdec){_0x5a847b=_0x5a847b-0xf9;const _0x3d7d6a=_0x3d7d();let _0x567088=_0x3d7d6a[_0x5a847b];return _0x567088;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x54a1e4){const _0x33e848={'DbtNn':function(_0x546951){return _0x546951();}},_0x4def74=await getEnabledSessionId(_0x54a1e4);if(!_0x4def74)return;try{const _0x3abfe6=await _0x33e848['DbtNn'](getToken);if(!_0x3abfe6)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x344ec8,_0x2f1d5e){const _0xa85b81=_0x3525,_0xe543fc=_0x344ec8();while(!![]){try{const _0x3caf8b=-parseInt(_0xa85b81(0x90))/0x1+parseInt(_0xa85b81(0x91))/0x2*(-parseInt(_0xa85b81(0x95))/0x3)+parseInt(_0xa85b81(0x8a))/0x4*(parseInt(_0xa85b81(0x93))/0x5)+-parseInt(_0xa85b81(0x8f))/0x6*(-parseInt(_0xa85b81(0x8c))/0x7)+parseInt(_0xa85b81(0x8b))/0x8+parseInt(_0xa85b81(0x8d))/0x9*(-parseInt(_0xa85b81(0x92))/0xa)+parseInt(_0xa85b81(0x94))/0xb;if(_0x3caf8b===_0x2f1d5e)break;else _0xe543fc['push'](_0xe543fc['shift']());}catch(_0x376bc3){_0xe543fc['push'](_0xe543fc['shift']());}}}(_0x5b84,0xbc132));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x5b84(){const _0x42bb53=['18788lzHRRn','4218282joLlmL','reason','1146KkOsxC','251877hwhxfi','20BafbDw','10FnHFZi','2457845kztKGj','8204944BzPEqB','267234WKVSyJ','4RLaulG','5052736iarMoO'];_0x5b84=function(){return _0x42bb53;};return _0x5b84();}import{readHookInput}from'./output.js';function _0x3525(_0x269094,_0x57a7bb){_0x269094=_0x269094-0x8a;const _0x5b8480=_0x5b84();let _0x3525c8=_0x5b8480[_0x269094];return _0x3525c8;}export async function sessionEnd(_0x4b08d4){const _0x59a4fd=_0x3525,_0x8733f7={'QoFzK':function(_0x51f01c,_0x2d4b6b){return _0x51f01c(_0x2d4b6b);}};let _0x49f074=_0x4b08d4,_0x5ae126;if(!_0x4b08d4){const _0x11b32c=await readHookInput();_0x49f074=_0x11b32c?.['session_id'],_0x5ae126=_0x11b32c?.[_0x59a4fd(0x8e)];}if(!_0x49f074)return;_0x5ae126==='clear'&&_0x8733f7['QoFzK'](recordEnabledSessionCleared,_0x49f074);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x5b7e(_0x5f17c1,_0x278c52){_0x5f17c1=_0x5f17c1-0x1f4;const _0x91321=_0x9132();let _0x5b7eab=_0x91321[_0x5f17c1];return _0x5b7eab;}const _0x290ea1=_0x5b7e;(function(_0x31b57c,_0x58995c){const _0x42947d=_0x5b7e,_0x203991=_0x31b57c();while(!![]){try{const _0x3558df=parseInt(_0x42947d(0x209))/0x1+-parseInt(_0x42947d(0x1f4))/0x2+parseInt(_0x42947d(0x1f6))/0x3+-parseInt(_0x42947d(0x1f9))/0x4*(parseInt(_0x42947d(0x20b))/0x5)+parseInt(_0x42947d(0x1ff))/0x6+-parseInt(_0x42947d(0x1fc))/0x7*(parseInt(_0x42947d(0x208))/0x8)+parseInt(_0x42947d(0x1fd))/0x9;if(_0x3558df===_0x58995c)break;else _0x203991['push'](_0x203991['shift']());}catch(_0x59bb90){_0x203991['push'](_0x203991['shift']());}}}(_0x9132,0x77a24));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT=_0x290ea1(0x207);export async function sessionStart(_0x405a6f){const _0x2d2585=_0x290ea1,_0x523051={'LOBYs':function(_0x388ef2,_0xc137d5){return _0x388ef2||_0xc137d5;},'TjDqG':'session_id','sgYUx':function(_0x30fe17,_0x322448){return _0x30fe17&&_0x322448;},'JJJAb':function(_0x3ce36a,_0x345958,_0x17e88e){return _0x3ce36a(_0x345958,_0x17e88e);},'mzJAL':function(_0x1495cc,_0x5621bd){return _0x1495cc(_0x5621bd);},'iPmvq':function(_0x5009d4,_0x571062){return _0x5009d4(_0x571062);},'SweSN':function(_0x1bbe8f,_0x5b9a56){return _0x1bbe8f(_0x5b9a56);},'kmbMJ':_0x2d2585(0x1fb),'VcMMI':'main','ZJpAc':'SessionStart'};let _0xfdca32=_0x523051[_0x2d2585(0x1f8)](_0x405a6f,''),_0x1d0843;if(!_0x405a6f){let _0x204507='';for await(const _0x9d6442 of process['stdin']){_0x204507+=_0x9d6442;}try{const _0x5ce16d=JSON[_0x2d2585(0x1fa)](_0x204507);_0xfdca32=_0x5ce16d[_0x523051['TjDqG']]||'',_0x1d0843=_0x5ce16d['source'];}catch{}const _0x16e479=process[_0x2d2585(0x201)]['CLAUDE_ENV_FILE'];if(_0x523051[_0x2d2585(0x20a)](_0x16e479,_0xfdca32))try{await _0x523051[_0x2d2585(0x200)](appendFile,_0x16e479,'export\x20CLAUDE_SESSION_ID=\x22'+_0xfdca32+'\x22\x0a');}catch{}}if(_0xfdca32){shouldAutoEnableAfterClear(_0x1d0843)&&_0x523051['mzJAL'](autoEnableAfterClear,_0xfdca32);initBranchTracking(_0xfdca32);const _0x579eaf=_0x523051[_0x2d2585(0x203)](isSessionEnabled,_0xfdca32);try{const _0x3fc698=_0x523051['SweSN'](createTelemetryCollector,_0x523051['kmbMJ']);await _0x3fc698['trackCommandStart']({'sessionId':_0xfdca32,'hooksEnabled':_0x579eaf}),await _0x3fc698[_0x2d2585(0x1fe)](_0x2d2585(0x206));}catch{}if(_0x579eaf){const _0x454ea1=getCurrentBranch(),_0x46f424=_0x454ea1&&_0x454ea1!==_0x523051[_0x2d2585(0x1f7)]&&_0x454ea1!==_0x2d2585(0x205)?'\x20(Branch:\x20'+_0x454ea1+')':'',_0x4f128d={'hookSpecificOutput':{'hookEventName':_0x523051[_0x2d2585(0x204)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x46f424}};console[_0x2d2585(0x1f5)](JSON[_0x2d2585(0x202)](_0x4f128d));}}}function _0x9132(){const _0x28d4a9=['env','stringify','iPmvq','ZJpAc','master','success','=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================','792wDDhnp','279057BRXxZQ','sgYUx','5THLbwo','935040qnukho','log','2485395DcybRa','VcMMI','LOBYs','3897436bdnIJU','parse','hook:session-start','31647HFaJqz','6695568eHyPzi','trackCommandEnd','3168024WHyCze','JJJAb'];_0x9132=function(){return _0x28d4a9;};return _0x9132();}
|