@ranger-testing/ranger-cli 3.1.7-alpha.a5be4ca-60 → 3.1.7-alpha.e26cd28-63
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/deleteProfile.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/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.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/actors.js +1 -0
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.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/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/scenarioOriginCheck.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/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.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 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +5 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x1e0df1,_0x5a6546){const _0x4ca8f9=_0x52f9,_0x3fa470=_0x1e0df1();while(!![]){try{const _0x3afc93=parseInt(_0x4ca8f9(0x241))/0x1*(parseInt(_0x4ca8f9(0x26b))/0x2)+-parseInt(_0x4ca8f9(0x236))/0x3*(-parseInt(_0x4ca8f9(0x217))/0x4)+parseInt(_0x4ca8f9(0x269))/0x5*(-parseInt(_0x4ca8f9(0x1a5))/0x6)+parseInt(_0x4ca8f9(0x23d))/0x7+-parseInt(_0x4ca8f9(0x203))/0x8*(-parseInt(_0x4ca8f9(0x1bf))/0x9)+-parseInt(_0x4ca8f9(0x233))/0xa*(-parseInt(_0x4ca8f9(0x1b7))/0xb)+parseInt(_0x4ca8f9(0x229))/0xc*(-parseInt(_0x4ca8f9(0x1ba))/0xd);if(_0x3afc93===_0x5a6546)break;else _0x3fa470['push'](_0x3fa470['shift']());}catch(_0x475962){_0x3fa470['push'](_0x3fa470['shift']());}}}(_0xb98a,0xe270c));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x39c117 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';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x31aa25=>'\x1b[1m'+_0x31aa25+'\x1b[0m';function getGitRepoUrl(){const _0x38fc05=_0x52f9,_0x3a0033={'bDMyW':function(_0x183e91,_0x2a5e8b,_0x23f370){return _0x183e91(_0x2a5e8b,_0x23f370);},'CXqQr':_0x38fc05(0x222),'hKSlf':_0x38fc05(0x1e4)};try{const _0x4bed88=_0x3a0033[_0x38fc05(0x1eb)](execSync,'git\x20remote\x20get-url\x20origin',{'encoding':'utf-8','stdio':[_0x3a0033['CXqQr'],_0x3a0033[_0x38fc05(0x1d3)],_0x3a0033['CXqQr']]})['trim']();return _0x4bed88['replace'](/\.git$/,'')[_0x38fc05(0x21b)](/^git@github\.com:/,_0x3a0033['hKSlf'])[_0x38fc05(0x21b)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x589fe5=_0x52f9,_0x2f4b99={'cTkid':function(_0x56407d,_0x5a16ac,_0x1c1b75){return _0x56407d(_0x5a16ac,_0x1c1b75);},'trfQn':_0x589fe5(0x242),'YUrNY':'utf-8','lUnjq':_0x589fe5(0x222)};try{return _0x2f4b99['cTkid'](execSync,_0x2f4b99['trfQn'],{'encoding':_0x2f4b99[_0x589fe5(0x24e)],'stdio':['pipe',_0x2f4b99[_0x589fe5(0x238)],'pipe']})[_0x589fe5(0x239)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0xd7ad0d=_0x52f9,_0x163a5c={'APnvL':function(_0x4fd5a3,_0x4b0310){return _0x4fd5a3(_0x4b0310);},'yyGza':'utf-8'},_0x1136f6=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x163a5c[_0xd7ad0d(0x223)](existsSync,_0x1136f6))return null;try{const _0x7f9eec=await readFile(_0x1136f6,_0x163a5c['yyGza']);return _0x7f9eec[_0xd7ad0d(0x239)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x314aa5){const _0x937d4b=_0x52f9,_0x4eeb0c={'nkZOA':function(_0x2a7974,_0x5722c9,_0xa98786){return _0x2a7974(_0x5722c9,_0xa98786);},'DjKkM':function(_0x3e5c27,_0x5613bf){return _0x3e5c27(_0x5613bf);},'NpWsv':'utf-8'},_0x5b9994=getRangerDir(),_0x54fe5d=_0x4eeb0c['nkZOA'](join,_0x5b9994,ACTIVE_FEATURE_FILE);!_0x4eeb0c[_0x937d4b(0x1da)](existsSync,_0x5b9994)&&await mkdir(_0x5b9994,{'recursive':!![]}),await writeFile(_0x54fe5d,_0x314aa5,_0x4eeb0c['NpWsv']);}function getProgressDisplay(_0x312c5f){const _0x4699e4=_0x52f9,_0x17ff78={'BBBrX':function(_0x130bc8,_0x170c20){return _0x130bc8===_0x170c20;},'EpTnX':function(_0x363e9e,_0xfb7e56){return _0x363e9e*_0xfb7e56;},'HdVRx':function(_0x57d950,_0x5873f2){return _0x57d950>_0x5873f2;},'wcigc':function(_0x54c15c,_0x4beacc){return _0x54c15c>_0x4beacc;}},_0x4e5086=_0x312c5f['verifiedItems']||0x0,_0x568caa=_0x312c5f['verificationInProgressItems']||0x0,_0x41236c=_0x312c5f['blockedItems']||0x0,_0x334000=_0x312c5f[_0x4699e4(0x270)]||0x0,_0x352d8a=_0x312c5f['pendingItems']||0x0,_0x448325=_0x4e5086+_0x568caa+_0x41236c+_0x334000+_0x352d8a;if(_0x17ff78[_0x4699e4(0x211)](_0x448325,0x0))return'-';const _0xc2b9d6=0xa,_0x49b226=Math[_0x4699e4(0x22b)](_0x17ff78['EpTnX'](_0x4e5086/_0x448325,_0xc2b9d6)),_0x1d3117='█'[_0x4699e4(0x200)](_0x49b226)+'░'[_0x4699e4(0x200)](_0xc2b9d6-_0x49b226),_0x54870f=[];if(_0x41236c>0x0)_0x54870f['push'](_0x41236c+_0x4699e4(0x19e));if(_0x334000>0x0)_0x54870f['push'](_0x334000+_0x4699e4(0x1e7));if(_0x17ff78[_0x4699e4(0x1b6)](_0x568caa,0x0))_0x54870f['push'](_0x568caa+_0x4699e4(0x1b3));const _0x2d0255=_0x17ff78['wcigc'](_0x54870f[_0x4699e4(0x1a0)],0x0)?'\x20('+_0x54870f[_0x4699e4(0x1c2)](',\x20')+')':'';return _0x1d3117+'\x20'+_0x4e5086+'/'+_0x448325+'\x20verified'+_0x2d0255;}function getCurrentSessionItems(_0x5c8e93,_0x362590){const _0x1944a4=_0x52f9;if(!_0x5c8e93[_0x1944a4(0x221)])return _0x362590[_0x1944a4(0x27d)](_0x26e865=>!_0x26e865[_0x1944a4(0x20f)]);return _0x362590[_0x1944a4(0x27d)](_0x16da7f=>_0x16da7f['sessionId']===_0x5c8e93['currentSessionId']||!_0x16da7f['sessionId']);}function displayFeature(_0x17ba29,_0x2afa8e){const _0x261d77=_0x52f9,_0x2a2288={'CjMdH':function(_0x60f0d,_0x2811da){return _0x60f0d(_0x2811da);},'aURie':'\x0a\x20\x20\x20Scenarios:','AKxnl':function(_0x323280,_0x47a967){return _0x323280<_0x47a967;},'oYWNg':function(_0x426a3b,_0x1dab4a){return _0x426a3b===_0x1dab4a;},'KgMRz':function(_0x3288c4,_0x30a120){return _0x3288c4===_0x30a120;},'PFiNY':'approved','BwMuj':function(_0x385746,_0x566a4b){return _0x385746===_0x566a4b;},'avWRa':_0x261d77(0x212),'iDynY':function(_0x5dcb63,_0x16c4cb){return _0x5dcb63===_0x16c4cb;},'arMgs':_0x261d77(0x1bc),'xQWLe':function(_0x822430,_0x272c13){return _0x822430>_0x272c13;},'LDLtP':function(_0x2eff4e,_0x1b2bf1){return _0x2eff4e!==_0x1b2bf1;},'bBQUj':function(_0x5dbadd,_0xb94c95){return _0x5dbadd===_0xb94c95;},'HMHlB':'closed'};console[_0x261d77(0x225)]('\x0a'+_0x17ba29[_0x261d77(0x25f)]+'\x20('+_0x17ba29[_0x261d77(0x257)]+')');_0x17ba29['stats']&&console['log'](_0x261d77(0x277)+_0x2a2288[_0x261d77(0x1c4)](getProgressDisplay,_0x17ba29['stats']));_0x17ba29[_0x261d77(0x1ff)]&&console[_0x261d77(0x225)](_0x261d77(0x27f)+_0x17ba29['description']);_0x17ba29['gitRepoUrl']&&console[_0x261d77(0x225)]('\x20\x20\x20Repository:\x20'+_0x17ba29['gitRepoUrl']);_0x17ba29['gitBranch']&&console[_0x261d77(0x225)](_0x261d77(0x1bb)+_0x17ba29[_0x261d77(0x23f)]);console['log'](_0x261d77(0x22c)+new Date(_0x17ba29[_0x261d77(0x1be)])['toLocaleString']());_0x17ba29[_0x261d77(0x27e)]&&console[_0x261d77(0x225)]('\x20\x20\x20Completed:\x20'+new Date(_0x17ba29['completedAt'])[_0x261d77(0x26d)]());if(_0x2afa8e&&_0x2afa8e[_0x261d77(0x1a0)]>0x0){console[_0x261d77(0x225)](_0x2a2288['aURie']);for(let _0x168905=0x0;_0x2a2288['AKxnl'](_0x168905,_0x2afa8e['length']);_0x168905++){const _0x53b445=_0x2afa8e[_0x168905];let _0x5d195a;if(_0x2a2288[_0x261d77(0x1b9)](_0x53b445['status'],'closed')&&_0x2a2288['KgMRz'](_0x53b445[_0x261d77(0x1fc)],_0x2a2288['PFiNY']))_0x5d195a='✅';else{if(_0x2a2288[_0x261d77(0x1b8)](_0x53b445[_0x261d77(0x263)],_0x2a2288['avWRa']))_0x5d195a='🟢';else{if(_0x2a2288['iDynY'](_0x53b445['status'],_0x2a2288['arMgs']))_0x5d195a='🟠';else{if(_0x53b445[_0x261d77(0x263)]==='blocked')_0x5d195a='🛑';else{if(_0x53b445[_0x261d77(0x263)]===_0x261d77(0x1f2))_0x5d195a='⛔';else _0x53b445['status']==='verification_in_progress'?_0x5d195a='⏳':_0x5d195a='⬜';}}}}const _0x6ae45=_0x2a2288[_0x261d77(0x264)](_0x53b445[_0x261d77(0x281)],0x1)?_0x261d77(0x283)+_0x53b445[_0x261d77(0x281)]+')':'',_0x244890=_0x2a2288['xQWLe'](_0x53b445[_0x261d77(0x281)],0x1)&&_0x53b445[_0x261d77(0x218)]&&_0x2a2288['LDLtP'](_0x53b445[_0x261d77(0x263)],'closed')&&_0x53b445[_0x261d77(0x263)]!==_0x261d77(0x212)?'\x20[has\x20reviewer\x20feedback]':'';console[_0x261d77(0x225)]('\x20\x20\x20'+(_0x168905+0x1)+'.\x20'+_0x5d195a+'\x20'+_0x53b445['description']+_0x6ae45+_0x244890);_0x2a2288['bBQUj'](_0x53b445['status'],'blocked')&&_0x53b445[_0x261d77(0x1d2)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x53b445[_0x261d77(0x1d2)]);_0x2a2288['iDynY'](_0x53b445[_0x261d77(0x263)],_0x2a2288[_0x261d77(0x1d0)])&&_0x53b445[_0x261d77(0x265)]&&console[_0x261d77(0x225)](_0x261d77(0x273)+_0x53b445[_0x261d77(0x265)]);if(_0x53b445[_0x261d77(0x263)]===_0x2a2288[_0x261d77(0x1fe)]&&_0x2a2288[_0x261d77(0x1b8)](_0x53b445[_0x261d77(0x1fc)],_0x261d77(0x1cb)))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x53b445[_0x261d77(0x263)]===_0x2a2288[_0x261d77(0x1fe)]&&_0x53b445['canceledReason']&&console['log'](_0x261d77(0x280)+_0x53b445[_0x261d77(0x1ef)]);}}}function _0x52f9(_0x16c410,_0x59d648){_0x16c410=_0x16c410-0x19c;const _0xb98a1e=_0xb98a();let _0x52f92e=_0xb98a1e[_0x16c410];return _0x52f92e;}export async function featureCreate(_0x2f9307,_0x285b5b){const _0x4fcb20=_0x52f9,_0x4c2d1b={'lTWQC':function(_0x2e1337,_0x217ad2){return _0x2e1337===_0x217ad2;},'MlwEe':function(_0x5c05d0,_0x2310d8){return _0x5c05d0(_0x2310d8);},'ZNBMh':function(_0x4010dc){return _0x4010dc();},'BpSDZ':function(_0x397690){return _0x397690();},'aoAYS':function(_0x14fb20,_0x4721b3){return _0x14fb20(_0x4721b3);},'BxQkR':function(_0x3f15ed,_0x1bc132,_0x513cc3){return _0x3f15ed(_0x1bc132,_0x513cc3);},'sXtxf':function(_0x3884cd,_0x2ac1cb,_0x58b2e3){return _0x3884cd(_0x2ac1cb,_0x58b2e3);}},{envNames:_0xe8d0a0}=await getEnvNames();if(_0x4c2d1b['lTWQC'](_0xe8d0a0[_0x4fcb20(0x1a0)],0x0)&&!process[_0x4fcb20(0x1ac)][_0x4fcb20(0x234)]){let _0xa5166b=0x0;try{_0xa5166b=(await listCloudProfiles())['length'];}catch{_0xa5166b=0x1;}_0xa5166b===0x0&&console['warn']('\x0a'+_0x4c2d1b[_0x4fcb20(0x1ed)](formatProfileRequiredMessage,_0x2fefe7=>bold(_0x2fefe7)));}const _0x153da1=_0x285b5b[_0x4fcb20(0x22e)]?_0x285b5b[_0x4fcb20(0x22e)][_0x4fcb20(0x1d4)](_0x189fb3=>_0x189fb3['trim']()):[],_0x4159c6=_0x4c2d1b['ZNBMh'](getGitRepoUrl),_0x56b0bf=_0x4c2d1b[_0x4fcb20(0x23c)](getGitBranch);console[_0x4fcb20(0x225)](_0x4fcb20(0x1bd));const _0x23d463=await _0x4c2d1b[_0x4fcb20(0x1ed)](createFeature,{'name':_0x2f9307,'description':_0x285b5b[_0x4fcb20(0x1ff)],'checklist':_0x153da1,'gitRepoUrl':_0x4159c6,'gitBranch':_0x56b0bf});await setActiveFeatureId(_0x23d463['id']),await _0x4c2d1b[_0x4fcb20(0x216)](tryStartCurrentSession,_0x23d463['id']);const _0x55c900=process['env'][_0x4fcb20(0x243)];_0x55c900&&_0x4c2d1b['BxQkR'](registerSession,_0x55c900,_0x23d463['id']),console[_0x4fcb20(0x225)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x23d463['id']),_0x4c2d1b[_0x4fcb20(0x1ee)](displayFeature,_0x23d463,_0x23d463['checklistItems']),console['log'](_0x4fcb20(0x26e));}export async function featureList(_0x511ae6){const _0x267a8f=_0x52f9,_0x11de4c={'cosEw':function(_0xf00556){return _0xf00556();},'EocLc':function(_0x56f560,_0x213cca){return _0x56f560===_0x213cca;},'GsmBB':'\x0aNo\x20feature\x20reviews\x20found.','oeVkA':function(_0x26a050,_0x2c1135){return _0x26a050>_0x2c1135;},'FKsjU':function(_0x15828c,_0x3ed19c){return _0x15828c!==_0x3ed19c;}},_0x48798e={'limit':_0x511ae6[_0x267a8f(0x259)]??0xa,'offset':_0x511ae6['offset']??0x0,'includeDeleted':_0x511ae6['includeDeleted']};_0x511ae6[_0x267a8f(0x1db)]&&(_0x48798e['gitRepoUrl']=getGitRepoUrl(),_0x48798e['gitBranch']=_0x11de4c[_0x267a8f(0x1e1)](getGitBranch));const _0x1f4b16=await listFeatures(_0x48798e);if(_0x11de4c[_0x267a8f(0x25e)](_0x1f4b16['items'][_0x267a8f(0x1a0)],0x0)){console[_0x267a8f(0x225)](_0x11de4c['GsmBB']);return;}const _0x50b6f4=_0x11de4c['oeVkA'](_0x1f4b16['totalCount'],_0x1f4b16[_0x267a8f(0x213)]['length'])?'Showing\x20'+_0x1f4b16[_0x267a8f(0x213)]['length']+'\x20of\x20'+_0x1f4b16[_0x267a8f(0x22d)]:_0x1f4b16[_0x267a8f(0x22d)]+_0x267a8f(0x1dd);console[_0x267a8f(0x225)]('\x0a'+_0x50b6f4+':\x0a');for(const _0xcdb71f of _0x1f4b16['items']){console[_0x267a8f(0x225)](''+_0xcdb71f['name']),console['log']('\x20\x20\x20ID:\x20'+_0xcdb71f['id']),_0xcdb71f[_0x267a8f(0x231)]&&console['log'](_0x267a8f(0x277)+getProgressDisplay(_0xcdb71f[_0x267a8f(0x231)])),_0xcdb71f['gitBranch']&&console[_0x267a8f(0x225)](_0x267a8f(0x1bb)+_0xcdb71f['gitBranch']),console[_0x267a8f(0x225)](_0x267a8f(0x22c)+new Date(_0xcdb71f['createdAt'])[_0x267a8f(0x1d7)]()),console['log']('');}const _0x9d29da=_0x48798e[_0x267a8f(0x259)]??0xa,_0x24095f=(_0x48798e[_0x267a8f(0x1ae)]??0x0)+_0x1f4b16[_0x267a8f(0x213)][_0x267a8f(0x1a0)];if(_0x24095f<_0x1f4b16['totalCount']){const _0x4ce8e0=_0x11de4c[_0x267a8f(0x1f6)](_0x9d29da,0xa)?_0x267a8f(0x1a2)+_0x9d29da:'',_0x2da212=_0x511ae6[_0x267a8f(0x1db)]?'\x20--current-branch':'',_0x5e5090=_0x511ae6[_0x267a8f(0x20d)]?'\x20--include-deleted':'';console[_0x267a8f(0x225)](_0x267a8f(0x248)+_0x24095f+_0x4ce8e0+_0x2da212+_0x5e5090);}}export async function featureShow(_0x77156b){const _0x2a7a3d=_0x52f9,_0x3143eb={'mOdYj':function(_0x3037e6){return _0x3037e6();},'MdkVP':_0x2a7a3d(0x1a6),'sdywS':function(_0x3fa59f,_0x5b97c2,_0x1631ef){return _0x3fa59f(_0x5b97c2,_0x1631ef);}},_0x265fe0=_0x77156b||await _0x3143eb[_0x2a7a3d(0x256)](getActiveFeatureId);if(!_0x265fe0)throw new Error(_0x3143eb['MdkVP']);const _0x21a502=await getFeature(_0x265fe0);_0x3143eb['sdywS'](displayFeature,_0x21a502,_0x21a502['checklistItems']);}export async function featureResume(_0x4cb650){const _0x462226=_0x52f9,_0x1881ae={'gEzmQ':function(_0x3ed040,_0x5bfaa6){return _0x3ed040(_0x5bfaa6);},'EhVQQ':function(_0x381297){return _0x381297();},'ZNYQK':function(_0x560e39,_0x1115d8){return _0x560e39(_0x1115d8);},'BuuSg':function(_0xac739e,_0x10051d){return _0xac739e&&_0x10051d;},'rBFMa':_0x462226(0x205),'cFjfK':function(_0x43dfbc,_0x5f0a01){return _0x43dfbc===_0x5f0a01;},'lyUQU':_0x462226(0x1e2),'vNHZZ':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','RJXFq':function(_0x4df413,_0x14cc59){return _0x4df413(_0x14cc59);},'XaDds':function(_0x365fc7,_0xe60f24){return _0x365fc7(_0xe60f24);},'gLQSY':function(_0x18d3e3,_0x57a68e,_0x34d64e){return _0x18d3e3(_0x57a68e,_0x34d64e);},'QJUZP':function(_0x2fe3af,_0x57730c){return _0x2fe3af(_0x57730c);}};if(_0x4cb650){const _0x4b3895=await getFeature(_0x4cb650);await _0x1881ae['gEzmQ'](setActiveFeatureId,_0x4b3895['id']);const _0x3479c7=_0x1881ae['EhVQQ'](getGitBranch);_0x3479c7&&_0x3479c7!==_0x4b3895[_0x462226(0x23f)]&&(await updateFeature(_0x4b3895['id'],{'gitBranch':_0x3479c7}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3479c7));console['log'](_0x462226(0x21a)+_0x4b3895[_0x462226(0x25f)]+'\x20('+_0x4b3895['id']+')'),await _0x1881ae[_0x462226(0x25c)](tryStartCurrentSession,_0x4b3895['id']);const _0x2dc741=process['env'][_0x462226(0x243)];_0x2dc741&®isterSession(_0x2dc741,_0x4b3895['id']);displayFeature(_0x4b3895,_0x4b3895[_0x462226(0x224)]),await _0x1881ae['ZNYQK'](printFeedbackNudge,_0x4b3895['id']);return;}const _0x16d392=getGitRepoUrl(),_0x515d89=getGitBranch();if(_0x1881ae['BuuSg'](!_0x16d392,!_0x515d89))throw new Error(_0x1881ae['rBFMa']);console[_0x462226(0x225)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x16d392||_0x462226(0x267))+_0x462226(0x1d6)+(_0x515d89||_0x462226(0x267))+'...');const _0x526080=await listFeatures({'gitRepoUrl':_0x16d392,'gitBranch':_0x515d89}),_0x19871d=_0x526080['items'][_0x462226(0x27d)](_0x423a62=>_0x423a62['status']?_0x423a62[_0x462226(0x263)]!=='verified':!_0x423a62['completedAt']);if(_0x19871d['length']===0x0){console[_0x462226(0x225)](_0x462226(0x1b5)),console[_0x462226(0x225)](_0x462226(0x1ad));return;}let _0x1c4c95;if(_0x1881ae[_0x462226(0x208)](_0x19871d[_0x462226(0x1a0)],0x1))_0x1c4c95=_0x19871d[0x0];else{const _0xb6b085=process[_0x462226(0x20c)][_0x462226(0x1b2)]&&process['stdout'][_0x462226(0x1b2)];if(!_0xb6b085){console['log'](_0x1881ae[_0x462226(0x1ce)]);for(const _0xce5857 of _0x19871d){console[_0x462226(0x225)]('\x20\x20'+_0xce5857[_0x462226(0x25f)]),console[_0x462226(0x225)]('\x20\x20\x20\x20\x20ID:\x20'+_0xce5857['id']),_0xce5857['stats']&&console['log'](_0x462226(0x24a)+getProgressDisplay(_0xce5857[_0x462226(0x231)])),_0xce5857[_0x462226(0x23f)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xce5857[_0x462226(0x23f)]);}throw new Error(_0x462226(0x1cc));}const {selected:_0x5b18a6}=await _0x39c117[_0x462226(0x232)]([{'type':'list','name':'selected','message':_0x1881ae[_0x462226(0x1e8)],'choices':_0x19871d['map'](_0x1ea22a=>({'name':_0x1ea22a[_0x462226(0x25f)]+'\x20('+_0x1ea22a['id']+')','value':_0x1ea22a['id']}))}]);_0x1c4c95=_0x19871d['find'](_0x2b019d=>_0x2b019d['id']===_0x5b18a6);}await _0x1881ae[_0x462226(0x278)](setActiveFeatureId,_0x1c4c95['id']);_0x515d89&&_0x515d89!==_0x1c4c95['gitBranch']&&(await updateFeature(_0x1c4c95['id'],{'gitBranch':_0x515d89}),console[_0x462226(0x225)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x515d89));console['log'](_0x462226(0x21a)+_0x1c4c95['name']+'\x20('+_0x1c4c95['id']+')'),await _0x1881ae[_0x462226(0x246)](tryStartCurrentSession,_0x1c4c95['id']);const _0x1028e5=await getFeature(_0x1c4c95['id']),_0x261c1a=process['env']['CLAUDE_SESSION_ID'];_0x261c1a&&_0x1881ae[_0x462226(0x20b)](registerSession,_0x261c1a,_0x1028e5['id']),displayFeature(_0x1028e5,_0x1028e5['checklistItems']),await _0x1881ae[_0x462226(0x1f5)](printFeedbackNudge,_0x1028e5['id']);}async function printFeedbackNudge(_0xacfd0a){const _0x28fc71=_0x52f9,_0x1b2364={'ytyYo':function(_0x3b3889,_0x4158bc){return _0x3b3889(_0x4158bc);},'ZzNQk':function(_0x5112b3,_0x4dab98,_0x1a95b3){return _0x5112b3(_0x4dab98,_0x1a95b3);},'zxcEm':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x43989e}=await _0x1b2364[_0x28fc71(0x253)](getActionItems,_0xacfd0a);let _0x26b693=0x0,_0x253ff3=0x0;for(const _0x30e007 of _0x43989e){const _0x5a87bc=await _0x1b2364[_0x28fc71(0x20a)](getItemFeedback,_0xacfd0a,_0x30e007['id']);_0x5a87bc['unaddressedComments'][_0x28fc71(0x1a0)]>0x0&&(_0x26b693+=_0x5a87bc['unaddressedComments']['length'],_0x253ff3++);}_0x26b693>0x0&&(console['log'](_0x28fc71(0x1e5)+_0x26b693+_0x28fc71(0x25d)+_0x253ff3+'\x20scenario(s).'),console[_0x28fc71(0x225)](_0x1b2364['zxcEm']));}catch{}}async function tryStartCurrentSession(_0x305ed9){const _0xe03b1d=_0x52f9,_0x8edf4={'qHCeH':function(_0xcb60ab,_0x26f076){return _0xcb60ab(_0x26f076);}};try{const {sessions:_0x2ec11f}=await _0x8edf4['qHCeH'](listFeatureSessions,_0x305ed9),_0x17b831=_0x2ec11f['find'](_0xd815ba=>_0xd815ba['status']===_0xe03b1d(0x1a3));_0x17b831&&(await startSession(_0x305ed9,_0x17b831['id']),console['log'](_0xe03b1d(0x250)+_0x17b831['iteration']));}catch{}}export async function featureReport(_0x3ee45b,_0x1a4fa4){const _0x39a94d=_0x52f9,_0x543885={'kKXZb':function(_0x3e9fd9,_0x3343da,_0x5c7c0b){return _0x3e9fd9(_0x3343da,_0x5c7c0b);},'IbgME':function(_0xe34637,_0x394dbe){return _0xe34637(_0x394dbe);},'VTMyl':'utf-8'},_0x128c49=_0x3ee45b||await getActiveFeatureId();if(!_0x128c49)throw new Error(_0x39a94d(0x284));console[_0x39a94d(0x225)]('\x0aGenerating\x20report...');const _0x5d2e57=await _0x543885[_0x39a94d(0x1f4)](getFeatureReportMarkdown,_0x128c49,{'style':_0x1a4fa4[_0x39a94d(0x266)]}),_0x400c7a=_0x1a4fa4['output']||join(getRangerDir(),'reports',_0x128c49+_0x39a94d(0x207)),_0x2e7d11=join(_0x400c7a,'..');!_0x543885[_0x39a94d(0x24c)](existsSync,_0x2e7d11)&&await mkdir(_0x2e7d11,{'recursive':!![]}),await writeFile(_0x400c7a,_0x5d2e57,_0x543885[_0x39a94d(0x271)]),console[_0x39a94d(0x225)]('\x0a✅\x20Report\x20generated:\x20'+_0x400c7a);}function getScenarioResult(_0x483230){const _0x23cf6a=_0x52f9,_0x4137a7={'eVoCL':function(_0x409e,_0x1e5cdc){return _0x409e===_0x1e5cdc;},'pzZbY':'closed','CgHFT':'verification_in_progress','wkqWu':'in_progress'};if(_0x4137a7['eVoCL'](_0x483230[_0x23cf6a(0x263)],_0x4137a7[_0x23cf6a(0x226)]))return _0x483230[_0x23cf6a(0x1fc)]??_0x4137a7['pzZbY'];if(_0x4137a7[_0x23cf6a(0x251)](_0x483230[_0x23cf6a(0x263)],_0x4137a7[_0x23cf6a(0x26a)]))return _0x4137a7['wkqWu'];return _0x483230['status'];}function getScenarioRationale(_0x57f1dd,_0x5667c7){const _0x329930=_0x52f9,_0x4d269f={'HfApe':_0x329930(0x214)},_0x594a77=_0x4d269f[_0x329930(0x210)][_0x329930(0x1e3)]('|');let _0x315214=0x0;while(!![]){switch(_0x594a77[_0x315214++]){case'0':if(_0x57f1dd['blockedReason'])return _0x57f1dd['blockedReason'];continue;case'1':if(_0x57f1dd['notes'])return _0x57f1dd['notes'];continue;case'2':if(_0x57f1dd[_0x329930(0x265)])return _0x57f1dd[_0x329930(0x265)];continue;case'3':if(_0x5667c7)return _0x5667c7;continue;case'4':return null;case'5':if(_0x57f1dd['canceledReason'])return _0x57f1dd['canceledReason'];continue;}break;}}export async function featureReportPrDescription(_0x153386,_0x2e0754){const _0x2b5395=_0x52f9,_0xf625fe={'ZPkOH':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','VDHXU':function(_0x299ffd,_0x3995d8){return _0x299ffd(_0x3995d8);},'easHH':function(_0x5a4655,_0x19144c){return _0x5a4655===_0x19144c;},'dFsrQ':function(_0x447bf2,_0xaf785d){return _0x447bf2>_0xaf785d;},'kvtPC':function(_0x701281,_0x48b452){return _0x701281<_0x48b452;},'vmOlV':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x31a400=_0x153386||await getActiveFeatureId();if(!_0x31a400)throw new Error(_0xf625fe[_0x2b5395(0x279)]);const _0x2c1bd1=await _0xf625fe[_0x2b5395(0x220)](getFeature,_0x31a400),_0x2f1792=_0x2c1bd1[_0x2b5395(0x224)]||[],_0x5038ea=getCurrentSessionItems(_0x2c1bd1,_0x2f1792);_0xf625fe['easHH'](_0x5038ea['length'],0x0)&&(console['error'](_0x2b5395(0x23e)),process[_0x2b5395(0x1de)](0x1));const _0x3b97a0=_0x2e0754['excludeScenarios']??[],_0x4714d0=_0x3b97a0['filter'](_0xe0d400=>!Number['isInteger'](_0xe0d400)||_0xe0d400<0x1||_0xe0d400>_0x5038ea['length']);if(_0xf625fe[_0x2b5395(0x202)](_0x4714d0['length'],0x0)){console[_0x2b5395(0x27b)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x4714d0[_0x2b5395(0x1c2)](',\x20')),console[_0x2b5395(0x225)]('\x0aAvailable\x20scenarios:');for(let _0xcc8868=0x0;_0xf625fe[_0x2b5395(0x1e0)](_0xcc8868,_0x5038ea[_0x2b5395(0x1a0)]);_0xcc8868++){console['log']('\x20\x20'+(_0xcc8868+0x1)+'.\x20'+_0x5038ea[_0xcc8868]['description']);}process['exit'](0x1);}const _0x39a921=new Set(_0x3b97a0['map'](_0x27781a=>_0x27781a-0x1)),_0x5b0e80=_0x5038ea['filter']((_0x26e007,_0x35a6cf)=>!_0x39a921['has'](_0x35a6cf));_0xf625fe[_0x2b5395(0x21c)](_0x5b0e80[_0x2b5395(0x1a0)],0x0)&&(console[_0x2b5395(0x27b)](_0xf625fe[_0x2b5395(0x1f1)]),process['exit'](0x1));if(_0x2e0754['json'])await outputJsonReport(_0x31a400,_0x2c1bd1,_0x5b0e80);else{const _0xa792e9=await getFeatureReportMarkdown(_0x31a400,{'itemIds':_0x5b0e80['map'](_0x4869cc=>_0x4869cc['id'])});process['stdout'][_0x2b5395(0x247)](_0xa792e9[_0x2b5395(0x237)]()+'\x0a');}}async function outputJsonReport(_0x45c9c8,_0x382037,_0x57a4a5){const _0x446ace=_0x52f9,_0x48725d={'ohMZQ':function(_0x49a7b2,_0xb761e4){return _0x49a7b2>_0xb761e4;},'hlWHQ':function(_0x237347,_0x23777f){return _0x237347===_0x23777f;},'frbal':function(_0x3ebb25,_0x390c5e){return _0x3ebb25(_0x390c5e);},'jtUQZ':function(_0x3f4b2e,_0x301201,_0x37c12b){return _0x3f4b2e(_0x301201,_0x37c12b);},'oOltV':function(_0x27cd56,_0x4df851){return _0x27cd56(_0x4df851);}},_0x56a56e=getApiBaseUrl(),_0x34fbb4=await _0x48725d[_0x446ace(0x25a)](getFeatureReport,_0x45c9c8),_0x106583=new Map(_0x34fbb4['checklistItems']['map'](_0xb4a26b=>[_0xb4a26b['id'],_0xb4a26b])),_0x3d8b0b=await Promise['all'](_0x57a4a5['map'](async _0x38e111=>{const _0x589011=_0x446ace,_0x11b53b=_0x106583['get'](_0x38e111['id']),_0x40397d=_0x11b53b?.[_0x589011(0x1fa)]??null;let _0x4e27ca=[];if(_0x38e111['browserSessionId'])try{const {steps:_0x86746b}=await getBrowserSessionSteps(_0x38e111['browserSessionId']);_0x48725d[_0x589011(0x245)](_0x86746b['length'],0x0)&&(_0x4e27ca=_0x86746b['map'](_0x36c2c7=>{const _0x49ad2d=_0x589011,_0x3f5fcc=_0x36c2c7['assets']['find'](_0x71d8f9=>_0x71d8f9[_0x49ad2d(0x252)]===_0x49ad2d(0x262)&&_0x71d8f9[_0x49ad2d(0x285)]==='after')??_0x36c2c7[_0x49ad2d(0x1aa)]['find'](_0x1f5913=>_0x1f5913[_0x49ad2d(0x252)]==='screenshot');let _0x2f13f8=null,_0x555404=null;if(_0x3f5fcc){const _0x23743b=_0x3f5fcc['storage'][_0x49ad2d(0x1fb)]['split']('/')[_0x49ad2d(0x21e)]();_0x2f13f8=_0x56a56e+'/api/v1/mcp/browser-sessions/'+_0x38e111[_0x49ad2d(0x1a8)]+_0x49ad2d(0x240)+_0x23743b,_0x23743b&&(_0x555404=_0x23743b['replace'](/\.\w+$/,'')[_0x49ad2d(0x21b)](/^(key_)?\d+_/,'')[_0x49ad2d(0x21b)](/[-_]/g,'\x20'));}return{'description':_0x555404||_0x36c2c7['description']||_0x36c2c7[_0x49ad2d(0x27c)]||_0x49ad2d(0x1c8)+_0x36c2c7['position'],'screenshot':_0x2f13f8,'is_key_step':_0x36c2c7['isKeyStep']};}));}catch{}return _0x48725d[_0x589011(0x235)](_0x4e27ca['length'],0x0)&&_0x40397d?.[_0x589011(0x244)]&&(_0x4e27ca=_0x40397d['screenshotUrls'][_0x589011(0x1d4)]((_0x55983c,_0x521096)=>({'description':'Screenshot\x20'+(_0x521096+0x1),'screenshot':_0x55983c,'is_key_step':![]}))),{'description':_0x38e111[_0x589011(0x1ff)],'result':_0x48725d[_0x589011(0x268)](getScenarioResult,_0x38e111),'rationale':_0x48725d['jtUQZ'](getScenarioRationale,_0x38e111,_0x40397d?.['agentResponse']),'steps':_0x4e27ca};})),_0x4cc2fa={'url':_0x382037[_0x446ace(0x257)],'scenarios':_0x3d8b0b};process['stdout']['write'](JSON[_0x446ace(0x1c3)](_0x4cc2fa,null,0x2)+'\x0a');}export async function featureConcludeSession(_0xcc1852){const _0x47a8d8=_0x52f9,_0x3382da={'aFATi':function(_0x57dac4,_0x540bbc){return _0x57dac4(_0x540bbc);},'yZcPD':function(_0x31b661,_0xed51dc){return _0x31b661===_0xed51dc;},'UYoRj':function(_0x257d2e,_0x1c7f16){return _0x257d2e!==_0x1c7f16;},'kfplN':_0x47a8d8(0x204),'nAZCe':_0x47a8d8(0x1f8),'taBCx':function(_0x27b193,_0x425a1c,_0x157c03){return _0x27b193(_0x425a1c,_0x157c03);}},_0x28ddeb=_0xcc1852||await getActiveFeatureId();if(!_0x28ddeb)throw new Error(_0x47a8d8(0x1a6));const _0x2907a4=await _0x3382da['aFATi'](getFeature,_0x28ddeb);if(!_0x2907a4[_0x47a8d8(0x221)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x4467e8}=await listFeatureSessions(_0x28ddeb),_0x455e53=_0x4467e8['find'](_0x1c7c8c=>_0x1c7c8c['id']===_0x2907a4[_0x47a8d8(0x221)]);if(!_0x455e53)throw new Error(_0x47a8d8(0x1b0));if(_0x3382da['yZcPD'](_0x455e53[_0x47a8d8(0x263)],_0x47a8d8(0x1c7))){console[_0x47a8d8(0x225)](_0x47a8d8(0x1f0));return;}if(_0x3382da[_0x47a8d8(0x261)](_0x455e53['status'],_0x3382da['kfplN']))throw new Error(_0x47a8d8(0x21f)+_0x455e53['status']);console['log'](_0x3382da['nAZCe']),await _0x3382da['taBCx'](concludeSession,_0x28ddeb,_0x2907a4[_0x47a8d8(0x221)]),console[_0x47a8d8(0x225)](_0x47a8d8(0x219)+_0x455e53['iteration']+_0x47a8d8(0x19c)),console[_0x47a8d8(0x225)](_0x47a8d8(0x1cd));}function _0xb98a(){const _0x5bc4bb=['timing','NgCjy','\x20concluded.','No\x20scenarios\x20found.','\x20blocked','\x20\x20\x20\x20','length','from','\x20--limit\x20','ready','wqNtB','177156szMSCV','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','en-US','browserSessionId','textContent','assets','\x20unaddressed\x20comment(s)','env','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','offset','tVjPH','Current\x20session\x20not\x20found.','\x0a✅\x20Restored\x20feature\x20review:\x20','isTTY','\x20in\x20progress','short','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','HdVRx','11PShunF','BwMuj','oYWNg','403QLzDLa','\x20\x20\x20Branch:\x20','incomplete','\x0aCreating\x20feature\x20review...','createdAt','222489DfnUMJ','point','oUegS','join','stringify','CjMdH','uIIRj','hhSRk','completed','Step\x20','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','itibB','approved','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','lyUQU','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','arMgs','latestReview','blockedReason','CXqQr','map','Scenario\x20','\x20/\x20','toLocaleDateString','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','numeric','DjKkM','currentBranch','toFixed','\x20feature\x20review(s)\x20found','exit','\x20\x20💬\x20','kvtPC','cosEw','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','split','github.com/','\x0a⚠️\x20\x20','spatial','\x20incomplete','vNHZZ','submittedAt','\x20Session\x20','bDMyW','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','MlwEe','sXtxf','canceledReason','\x0a✅\x20Session\x20is\x20already\x20completed.','vmOlV','closed','\x0aAvailable\x20scenarios:','kKXZb','QJUZP','FKsjU','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','\x0aConcluding\x20session...','comment_','linkedSession','location','terminalReason','\x20\x20\x20Completed:\x20','HMHlB','description','repeat','iKgiv','dFsrQ','392TtHkeb','in_progress','Not\x20in\x20a\x20git\x20repository.',':\x20\x22','.md','cFjfK','QQqWd','ZzNQk','gLQSY','stdin','includeDeleted','slice','sessionId','HfApe','BBBrX','verified','items','3|0|2|5|1|4','zFAAE','aoAYS','556dVVuDR','parentItemId','\x0a✅\x20Session\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','replace','easHH','\x20scenarios.','pop','Cannot\x20conclude\x20session\x20with\x20status:\x20','VDHXU','currentSessionId','pipe','APnvL','checklistItems','log','pzZbY','No\x20sessions\x20found.','assetUrl','739404bjNQVw','\x20>\x20','round','\x20\x20\x20Created:\x20','totalCount','scenarios','\x20at\x20[','selector','stats','prompt','8939980EYwhBZ','RANGER_TEST_USERNAME','hlWHQ','16791gMxKDX','trimEnd','lUnjq','trim','zVhez','unaddressedComments','BpSDZ','4668216YOzylQ','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','gitBranch','/artifacts/','1vKnWtT','git\x20rev-parse\x20--abbrev-ref\x20HEAD','CLAUDE_SESSION_ID','screenshotUrls','ohMZQ','XaDds','write','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','\x20\x20\x20\x20\x20Progress:\x20','\x20—\x20','IbgME','olGbx','YUrNY','domRef','\x20\x20\x20▶️\x20Started\x20session\x20','eVoCL','assetType','ytyYo','HdpJi','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','mOdYj','dashboardUrl','CxSzO','limit','oOltV','\x20\x20\x20\x20\x20📋\x20Selector:\x20','gEzmQ','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','EocLc','name','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','UYoRj','screenshot','status','xQWLe','incompleteReason','style','any','frbal','285ZkdPlI','CgHFT','1940822THqcJQ','DjqPD','toLocaleString','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20\x20Status:\x20','incompleteItems','VTMyl','RZRnA','\x20\x20\x20\x20\x20\x20Incomplete:\x20','type','canonicalFlow','JmMzp','\x20\x20\x20Progress:\x20','RJXFq','ZPkOH','QvsQr','error','stepName','filter','completedAt','\x20\x20\x20Description:\x20','\x20\x20\x20\x20\x20\x20Cancelled:\x20','version','XVAfk','\x20(v','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'];_0xb98a=function(){return _0x5bc4bb;};return _0xb98a();}export async function featureSessions(_0x47ab76){const _0xa6144e=_0x52f9,_0x26c3d0={'olGbx':function(_0x1e7a5d){return _0x1e7a5d();},'oLaFA':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ewUli':function(_0x3faec9,_0x4a2fd2){return _0x3faec9(_0x4a2fd2);},'XRiZU':function(_0x5c58fe,_0x4b19ef){return _0x5c58fe(_0x4b19ef);},'zHjrx':function(_0x4b2b1b,_0x50ba18){return _0x4b2b1b===_0x50ba18;}},_0x4e6f82=_0x47ab76||await _0x26c3d0[_0xa6144e(0x24d)](getActiveFeatureId);if(!_0x4e6f82)throw new Error(_0x26c3d0['oLaFA']);const _0x5e2638=await _0x26c3d0['ewUli'](getFeature,_0x4e6f82);console[_0xa6144e(0x225)](_0xa6144e(0x255)+_0x5e2638['name']+'\x0a');const {sessions:_0x76c545}=await _0x26c3d0['XRiZU'](listFeatureSessions,_0x4e6f82);if(_0x26c3d0['zHjrx'](_0x76c545[_0xa6144e(0x1a0)],0x0)){console['log'](_0xa6144e(0x227));return;}for(const _0x277fdf of _0x76c545){const _0x2ba23f=_0x26c3d0['zHjrx'](_0x277fdf['status'],'completed')?'✅':_0x277fdf[_0xa6144e(0x263)]===_0xa6144e(0x204)?'🔄':'▶️';console[_0xa6144e(0x225)](_0x2ba23f+_0xa6144e(0x1ea)+_0x277fdf['iteration']+'\x20('+_0x277fdf['id']+')'),console['log'](_0xa6144e(0x26f)+_0x277fdf[_0xa6144e(0x263)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x277fdf['createdAt'])['toLocaleString']()),_0x277fdf['completedAt']&&console[_0xa6144e(0x225)](_0xa6144e(0x1fd)+new Date(_0x277fdf[_0xa6144e(0x27e)])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x4e7d14,_0x599450){const _0x26b970=_0x52f9,_0x17bfe2={'AEMku':_0x26b970(0x1a6),'NgCjy':function(_0x312427,_0x60c930,_0x1ffbe0){return _0x312427(_0x60c930,_0x1ffbe0);},'QQqWd':function(_0x42c1d2,_0x59470d){return _0x42c1d2(_0x59470d);}},_0x316a74=_0x599450||await getActiveFeatureId();if(!_0x316a74)throw new Error(_0x17bfe2['AEMku']);const _0x59f1dd=await getFeature(_0x316a74);if(_0x59f1dd['latestReview']&&!_0x59f1dd['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x59f1dd['dashboardUrl']);await _0x17bfe2[_0x26b970(0x286)](createChecklistItem,_0x316a74,_0x4e7d14);const _0x180925=await _0x17bfe2[_0x26b970(0x209)](getFeature,_0x316a74);console[_0x26b970(0x225)]('\x0a✅\x20Scenario\x20added'),_0x17bfe2['NgCjy'](displayFeature,_0x180925,_0x180925[_0x26b970(0x224)]);}export async function featureEditScenario(_0x3f066e,_0x3b0223){const _0x15841c=_0x52f9,_0x380be5={'RKDfJ':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','XVAfk':_0x15841c(0x260),'pQWxK':function(_0x1d0d29,_0x195ee3){return _0x1d0d29===_0x195ee3;},'YQWkV':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','uyvlU':function(_0x1f2909,_0x58ced4){return _0x1f2909===_0x58ced4;},'RZRnA':_0x15841c(0x1f3),'uIIRj':function(_0x1a17bf,_0x298212){return _0x1a17bf<_0x298212;},'oUegS':function(_0x41b23c,_0x4c0137){return _0x41b23c-_0x4c0137;},'DjqPD':function(_0x406705,_0x49033f){return _0x406705<_0x49033f;},'ZQbMn':function(_0x35ba95,_0x3505d6){return _0x35ba95>=_0x3505d6;},'MZGKT':function(_0x224b0a,_0x2cb724,_0x293c6e,_0x1da6fd){return _0x224b0a(_0x2cb724,_0x293c6e,_0x1da6fd);}},_0x474e8e=_0x3b0223['id']||await getActiveFeatureId();!_0x474e8e&&(console['error'](_0x15841c(0x1c9)),console[_0x15841c(0x27b)](_0x380be5['RKDfJ']),process['exit'](0x1));const _0xc458a4=await getFeature(_0x474e8e);_0xc458a4['latestReview']&&!_0xc458a4[_0x15841c(0x1d1)][_0x15841c(0x1e9)]&&(console['error'](_0x380be5[_0x15841c(0x282)]),console[_0x15841c(0x27b)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0xc458a4['dashboardUrl']),process[_0x15841c(0x1de)](0x1));const _0x567c4c=_0xc458a4[_0x15841c(0x224)]||[];_0x380be5['pQWxK'](_0x567c4c[_0x15841c(0x1a0)],0x0)&&(console['error'](_0x380be5['YQWkV']),process['exit'](0x1));if(_0x380be5['uyvlU'](_0x3b0223['scenario'],undefined)){console[_0x15841c(0x27b)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x380be5[_0x15841c(0x272)]);for(let _0x4ba635=0x0;_0x380be5[_0x15841c(0x1c5)](_0x4ba635,_0x567c4c[_0x15841c(0x1a0)]);_0x4ba635++){console[_0x15841c(0x225)]('\x20\x20'+(_0x4ba635+0x1)+'.\x20'+_0x567c4c[_0x4ba635][_0x15841c(0x1ff)]);}process[_0x15841c(0x1de)](0x1);}const _0x303612=_0x380be5[_0x15841c(0x1c1)](_0x3b0223['scenario'],0x1);if(_0x380be5[_0x15841c(0x26c)](_0x303612,0x0)||_0x380be5['ZQbMn'](_0x303612,_0x567c4c['length'])){console[_0x15841c(0x27b)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x3b0223['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x567c4c['length']+_0x15841c(0x21d)),console['log'](_0x15841c(0x1f3));for(let _0x371b66=0x0;_0x371b66<_0x567c4c[_0x15841c(0x1a0)];_0x371b66++){console[_0x15841c(0x225)]('\x20\x20'+(_0x371b66+0x1)+'.\x20'+_0x567c4c[_0x371b66][_0x15841c(0x1ff)]);}process[_0x15841c(0x1de)](0x1);}const _0xb5fff4=_0x567c4c[_0x303612];await _0x380be5['MZGKT'](updateChecklistItem,_0x474e8e,_0xb5fff4['id'],{'description':_0x3f066e});const _0x246bcb=await getFeature(_0x474e8e);console[_0x15841c(0x225)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x246bcb,_0x246bcb['checklistItems']);}async function downloadFeedbackImage(_0x8206cb,_0x4b7a47){const _0x169977=_0x52f9,_0x459741={'iKgiv':function(_0xf92bcc,_0x359537,_0x1fe9f2){return _0xf92bcc(_0x359537,_0x1fe9f2);},'wqNtB':function(_0x31b48e,_0x456c24){return _0x31b48e(_0x456c24);}};try{const _0x1c234c=join(getRangerDir(),'feedback-images');await mkdir(_0x1c234c,{'recursive':!![]});const _0x18369e=_0x459741['iKgiv'](join,_0x1c234c,_0x169977(0x1f9)+_0x4b7a47+'.png'),_0x50ce2f=await _0x459741[_0x169977(0x1a4)](fetch,_0x8206cb);if(!_0x50ce2f['ok'])return null;const _0x2d7650=Buffer[_0x169977(0x1a1)](await _0x50ce2f['arrayBuffer']());return await _0x459741[_0x169977(0x201)](writeFile,_0x18369e,_0x2d7650),_0x18369e;}catch{return null;}}export async function featureGetReview(_0x2e1a28){const _0x61599=_0x52f9,_0x495bae={'itibB':_0x61599(0x1a6),'XcPLw':function(_0x1822d2,_0x5430a8){return _0x1822d2(_0x5430a8);},'vJABn':_0x61599(0x19d),'QvsQr':function(_0x8eaa87,_0x2baf4c,_0xae9116){return _0x8eaa87(_0x2baf4c,_0xae9116);},'hhSRk':_0x61599(0x1a7),'zFAAE':_0x61599(0x1d9),'QQrlz':'Unknown','JmMzp':_0x61599(0x22a),'zVhez':'element','SxUkf':_0x61599(0x1c0),'iwwsl':function(_0x4a9dac,_0xe4ae74){return _0x4a9dac>=_0xe4ae74;}},_0x45d43e=_0x2e1a28||await getActiveFeatureId();if(!_0x45d43e)throw new Error(_0x495bae[_0x61599(0x1ca)]);const _0x1c50ae=await _0x495bae['XcPLw'](getFeature,_0x45d43e),{items:_0xc7d087}=await getActionItems(_0x45d43e);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x1c50ae[_0x61599(0x25f)]+'\x20('+_0x1c50ae['id']+')\x0a');if(_0xc7d087['length']===0x0){console[_0x61599(0x225)](_0x495bae['vJABn']);return;}for(let _0x2dc96d=0x0;_0x2dc96d<_0xc7d087[_0x61599(0x1a0)];_0x2dc96d++){const _0x157fe0=_0xc7d087[_0x2dc96d],_0x1a79a2=_0x157fe0['version']>0x1?_0x61599(0x283)+_0x157fe0['version']+')':'',_0x44ffef=await _0x495bae[_0x61599(0x27a)](getItemFeedback,_0x45d43e,_0x157fe0['id']);if(_0x44ffef['unaddressedComments']['length']>0x0){console[_0x61599(0x225)]('Scenario\x20'+(_0x2dc96d+0x1)+_0x61599(0x206)+_0x157fe0[_0x61599(0x1ff)]+'\x22'+_0x1a79a2+_0x61599(0x24b)+_0x44ffef[_0x61599(0x23b)]['length']+_0x61599(0x1ab));for(const _0x69d509 of _0x44ffef[_0x61599(0x23b)]){const _0x20386c=new Date(_0x69d509['createdAt'])['toLocaleDateString'](_0x495bae[_0x61599(0x1c6)],{'month':_0x61599(0x1b4),'day':_0x495bae[_0x61599(0x215)]}),_0x4684ac=_0x69d509['authorName']||_0x69d509['authorEmail']||_0x495bae['QQrlz'];console['log'](_0x61599(0x1df)+_0x4684ac+'\x20('+_0x20386c+'):\x20\x22'+_0x69d509['content']+'\x22');if(_0x69d509['assetUrl']){const _0x239493=await downloadFeedbackImage(_0x69d509[_0x61599(0x228)],_0x69d509['id']);_0x239493&&console[_0x61599(0x225)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x239493);}if(_0x69d509['domRef']){const _0x46ab5f=_0x69d509['domRef'][_0x61599(0x230)][_0x61599(0x1e3)](_0x495bae[_0x61599(0x276)])['pop']()?.['split'](':')[0x0]||_0x495bae[_0x61599(0x23a)],_0x315d97=_0x69d509[_0x61599(0x24f)][_0x61599(0x1a9)]?'\x20\x22'+_0x69d509['domRef'][_0x61599(0x1a9)][_0x61599(0x20e)](0x0,0x3c)+'\x22':'';console['log'](_0x61599(0x1f7)+_0x46ab5f+'>'+_0x315d97),console['log'](_0x61599(0x25b)+_0x69d509['domRef']['selector']);}else{if(_0x69d509['spatial']){const _0x3ac09d=_0x69d509['spatial']['coordinates'];_0x69d509['spatial']['type']===_0x495bae['SxUkf']&&_0x495bae['iwwsl'](_0x3ac09d[_0x61599(0x1a0)],0x2)?console['log'](_0x61599(0x1cf)+_0x3ac09d[0x0]['toFixed'](0x2)+',\x20'+_0x3ac09d[0x1]['toFixed'](0x2)+')'):console['log'](_0x61599(0x1d8)+_0x69d509[_0x61599(0x1e6)][_0x61599(0x274)]+_0x61599(0x22f)+_0x3ac09d[_0x61599(0x1d4)](_0x1a4037=>_0x1a4037[_0x61599(0x1dc)](0x2))[_0x61599(0x1c2)](',\x20')+']');}}}if(_0x44ffef[_0x61599(0x275)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x5abd6c of _0x44ffef[_0x61599(0x275)]['split']('\x0a')){console[_0x61599(0x225)](_0x61599(0x19f)+_0x5abd6c);}}}else console['log'](_0x61599(0x1d5)+(_0x2dc96d+0x1)+':\x20\x22'+_0x157fe0[_0x61599(0x1ff)]+'\x22'+_0x1a79a2+'\x20—\x20no\x20comments'),console[_0x61599(0x225)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x477636){const _0x50e003=_0x52f9,_0x4c050f={'saUsO':function(_0x4edc75){return _0x4edc75();},'CxSzO':_0x50e003(0x1a6),'tVjPH':function(_0x4cc120,_0x4d6636){return _0x4cc120(_0x4d6636);},'HdpJi':function(_0x25ab51,_0xc43658){return _0x25ab51+_0xc43658;},'jSsys':_0x50e003(0x1ec)},_0x295a89=_0x477636||await _0x4c050f['saUsO'](getActiveFeatureId);if(!_0x295a89)throw new Error(_0x4c050f[_0x50e003(0x258)]);const _0x5d92d1=await _0x4c050f[_0x50e003(0x1af)](getFeature,_0x295a89);await softDeleteFeature(_0x295a89),console['log'](_0x50e003(0x249)+_0x5d92d1['name']+'\x20('+_0x295a89+')'),console['log'](_0x4c050f[_0x50e003(0x254)](_0x4c050f['jSsys'],_0x295a89));}export async function featureRestore(_0x1e23a6){const _0x12b07b=_0x52f9,_0x27b3e9={'IOsIE':function(_0x25d288,_0x44c6c9){return _0x25d288(_0x44c6c9);}};await restoreFeature(_0x1e23a6);const _0x381c99=await _0x27b3e9['IOsIE'](getFeature,_0x1e23a6);console[_0x12b07b(0x225)](_0x12b07b(0x1b1)+_0x381c99[_0x12b07b(0x25f)]+'\x20('+_0x1e23a6+')'),displayFeature(_0x381c99,_0x381c99[_0x12b07b(0x224)]);}
|
|
1
|
+
(function(_0x1660e1,_0x2f49f0){const _0x3c0b17=_0x3558,_0x1509e3=_0x1660e1();while(!![]){try{const _0x55d618=-parseInt(_0x3c0b17(0x16b))/0x1+-parseInt(_0x3c0b17(0x1f8))/0x2+-parseInt(_0x3c0b17(0x1ba))/0x3+parseInt(_0x3c0b17(0x218))/0x4+parseInt(_0x3c0b17(0x177))/0x5+-parseInt(_0x3c0b17(0x1b1))/0x6*(-parseInt(_0x3c0b17(0x224))/0x7)+parseInt(_0x3c0b17(0x1f6))/0x8;if(_0x55d618===_0x2f49f0)break;else _0x1509e3['push'](_0x1509e3['shift']());}catch(_0x33527f){_0x1509e3['push'](_0x1509e3['shift']());}}}(_0x34bd,0x23483));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x30ae08 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';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x128262=>'\x1b[1m'+_0x128262+'\x1b[0m';function getGitRepoUrl(){const _0x373ecf=_0x3558,_0x3249a2={'wHZQw':'utf-8','oIvKu':_0x373ecf(0x209)};try{const _0x40db64=execSync('git\x20remote\x20get-url\x20origin',{'encoding':_0x3249a2['wHZQw'],'stdio':[_0x3249a2['oIvKu'],_0x3249a2['oIvKu'],_0x3249a2['oIvKu']]})[_0x373ecf(0x1bd)]();return _0x40db64[_0x373ecf(0x215)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x373ecf(0x151))[_0x373ecf(0x215)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x53d5ed=_0x3558,_0x22316b={'rrUCS':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','rSpuc':_0x53d5ed(0x211)};try{return execSync(_0x22316b[_0x53d5ed(0x174)],{'encoding':_0x22316b[_0x53d5ed(0x1a5)],'stdio':['pipe',_0x53d5ed(0x209),_0x53d5ed(0x209)]})[_0x53d5ed(0x1bd)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0xe5fff=_0x3558,_0x581e81={'TXYHC':function(_0x1f17b6,_0x2aa627,_0x211d46){return _0x1f17b6(_0x2aa627,_0x211d46);},'xbDkv':function(_0x550452){return _0x550452();},'cazYo':_0xe5fff(0x211)},_0x53df47=_0x581e81['TXYHC'](join,_0x581e81['xbDkv'](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x53df47))return null;try{const _0x2af880=await readFile(_0x53df47,_0x581e81[_0xe5fff(0x1a0)]);return _0x2af880['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x2aa126){const _0x1b458b=_0x3558,_0x545eea={'QDQhx':_0x1b458b(0x211)},_0x312154=getRangerDir(),_0x50e8ad=join(_0x312154,ACTIVE_FEATURE_FILE);!existsSync(_0x312154)&&await mkdir(_0x312154,{'recursive':!![]}),await writeFile(_0x50e8ad,_0x2aa126,_0x545eea['QDQhx']);}function getProgressDisplay(_0x396b4b){const _0x105e12=_0x3558,_0x176fcb={'QGgir':function(_0x1bafa1,_0x1d974f){return _0x1bafa1+_0x1d974f;},'qgGGa':function(_0x43cf2e,_0x232da0){return _0x43cf2e===_0x232da0;},'Okrwz':function(_0x3b7282,_0x3b4359){return _0x3b7282-_0x3b4359;},'UtWeX':function(_0x4954cb,_0x16844e){return _0x4954cb>_0x16844e;},'EtJBz':function(_0x56e512,_0x55975c){return _0x56e512>_0x55975c;}},_0x801bf=_0x396b4b[_0x105e12(0x1c8)]||0x0,_0x4ecc69=_0x396b4b[_0x105e12(0x19f)]||0x0,_0x36807b=_0x396b4b[_0x105e12(0x1cc)]||0x0,_0x5031a9=_0x396b4b[_0x105e12(0x1b7)]||0x0,_0x453e67=_0x396b4b['pendingItems']||0x0,_0x2c59dc=_0x176fcb['QGgir'](_0x176fcb['QGgir'](_0x801bf,_0x4ecc69)+_0x36807b+_0x5031a9,_0x453e67);if(_0x176fcb[_0x105e12(0x1b2)](_0x2c59dc,0x0))return'-';const _0x847a5a=0xa,_0x98773d=Math['round'](_0x801bf/_0x2c59dc*_0x847a5a),_0x140e38='█'[_0x105e12(0x159)](_0x98773d)+'░'['repeat'](_0x176fcb['Okrwz'](_0x847a5a,_0x98773d)),_0x446ab0=[];if(_0x176fcb[_0x105e12(0x1eb)](_0x36807b,0x0))_0x446ab0[_0x105e12(0x1ef)](_0x36807b+_0x105e12(0x14f));if(_0x176fcb['UtWeX'](_0x5031a9,0x0))_0x446ab0[_0x105e12(0x1ef)](_0x5031a9+_0x105e12(0x1e3));if(_0x176fcb[_0x105e12(0x1eb)](_0x4ecc69,0x0))_0x446ab0['push'](_0x4ecc69+'\x20in\x20progress');const _0x1674cc=_0x176fcb[_0x105e12(0x1db)](_0x446ab0[_0x105e12(0x1ea)],0x0)?'\x20('+_0x446ab0['join'](',\x20')+')':'';return _0x140e38+'\x20'+_0x801bf+'/'+_0x2c59dc+_0x105e12(0x226)+_0x1674cc;}function getCurrentSessionItems(_0x50df9b,_0x3a2277){const _0x32a8a9=_0x3558;if(!_0x50df9b[_0x32a8a9(0x173)])return _0x3a2277['filter'](_0x43cb74=>!_0x43cb74[_0x32a8a9(0x1cb)]);return _0x3a2277['filter'](_0x5021ce=>_0x5021ce['sessionId']===_0x50df9b[_0x32a8a9(0x173)]||!_0x5021ce['sessionId']);}function displayFeature(_0x558c84,_0x76e5e8){const _0x43ca12=_0x3558,_0x239e9f={'ggJrW':function(_0x1957a1,_0x3398ab){return _0x1957a1(_0x3398ab);},'hXCCK':_0x43ca12(0x221),'JmyWo':function(_0x1fb84b,_0x48fe03){return _0x1fb84b<_0x48fe03;},'eueMk':function(_0x26f4b6,_0x444d3b){return _0x26f4b6===_0x444d3b;},'MRTLs':'verified','GMeFS':function(_0x355d1c,_0x585287){return _0x355d1c===_0x585287;},'AyTgS':'closed','XYucX':_0x43ca12(0x1d0),'dWkBG':function(_0x4aafb2,_0x415b25){return _0x4aafb2>_0x415b25;},'HvmWe':function(_0x3b6c2,_0x145297){return _0x3b6c2!==_0x145297;},'SHmHp':function(_0x2a639e,_0x5990a5){return _0x2a639e!==_0x5990a5;},'xRIrW':function(_0x412073,_0x3f0979){return _0x412073+_0x3f0979;},'PGDBg':function(_0x130360,_0x59e874){return _0x130360===_0x59e874;},'hLtoP':'incomplete','jlnER':function(_0x4fac23,_0x1e5da6){return _0x4fac23===_0x1e5da6;}};console['log']('\x0a'+_0x558c84['name']+'\x20('+_0x558c84['dashboardUrl']+')');_0x558c84[_0x43ca12(0x1f3)]&&console[_0x43ca12(0x204)](_0x43ca12(0x1df)+_0x239e9f['ggJrW'](getProgressDisplay,_0x558c84['stats']));_0x558c84[_0x43ca12(0x1c6)]&&console[_0x43ca12(0x204)]('\x20\x20\x20Description:\x20'+_0x558c84['description']);_0x558c84[_0x43ca12(0x196)]&&console[_0x43ca12(0x204)]('\x20\x20\x20Repository:\x20'+_0x558c84['gitRepoUrl']);_0x558c84[_0x43ca12(0x19c)]&&console['log'](_0x43ca12(0x1a6)+_0x558c84[_0x43ca12(0x19c)]);console[_0x43ca12(0x204)]('\x20\x20\x20Created:\x20'+new Date(_0x558c84[_0x43ca12(0x1ce)])['toLocaleString']());_0x558c84[_0x43ca12(0x212)]&&console[_0x43ca12(0x204)](_0x43ca12(0x15f)+new Date(_0x558c84['completedAt'])[_0x43ca12(0x17f)]());if(_0x76e5e8&&_0x76e5e8['length']>0x0){console['log'](_0x239e9f['hXCCK']);for(let _0x48ab4b=0x0;_0x239e9f['JmyWo'](_0x48ab4b,_0x76e5e8[_0x43ca12(0x1ea)]);_0x48ab4b++){const _0x5bd811=_0x76e5e8[_0x48ab4b];let _0x196a13;if(_0x239e9f[_0x43ca12(0x1f0)](_0x5bd811[_0x43ca12(0x18c)],'closed')&&_0x239e9f[_0x43ca12(0x1f0)](_0x5bd811['terminalReason'],'approved'))_0x196a13='✅';else{if(_0x5bd811['status']===_0x239e9f['MRTLs'])_0x196a13='🟢';else{if(_0x239e9f[_0x43ca12(0x1f0)](_0x5bd811[_0x43ca12(0x18c)],'incomplete'))_0x196a13='🟠';else{if(_0x239e9f['eueMk'](_0x5bd811['status'],_0x43ca12(0x16c)))_0x196a13='🛑';else{if(_0x239e9f[_0x43ca12(0x164)](_0x5bd811['status'],_0x239e9f[_0x43ca12(0x19b)]))_0x196a13='⛔';else _0x5bd811['status']===_0x239e9f['XYucX']?_0x196a13='⏳':_0x196a13='⬜';}}}}const _0x4729ac=_0x5bd811[_0x43ca12(0x1ca)]>0x1?_0x43ca12(0x222)+_0x5bd811[_0x43ca12(0x1ca)]+')':'',_0x4882a5=_0x239e9f['dWkBG'](_0x5bd811['version'],0x1)&&_0x5bd811['parentItemId']&&_0x239e9f[_0x43ca12(0x21b)](_0x5bd811[_0x43ca12(0x18c)],_0x43ca12(0x1d5))&&_0x239e9f['SHmHp'](_0x5bd811[_0x43ca12(0x18c)],'verified')?'\x20[has\x20reviewer\x20feedback]':'';console[_0x43ca12(0x204)]('\x20\x20\x20'+_0x239e9f['xRIrW'](_0x48ab4b,0x1)+'.\x20'+_0x196a13+'\x20'+_0x5bd811['description']+_0x4729ac+_0x4882a5);_0x239e9f[_0x43ca12(0x206)](_0x5bd811['status'],_0x43ca12(0x16c))&&_0x5bd811[_0x43ca12(0x21d)]&&console['log'](_0x43ca12(0x1be)+_0x5bd811[_0x43ca12(0x21d)]);_0x5bd811[_0x43ca12(0x18c)]===_0x239e9f[_0x43ca12(0x1f4)]&&_0x5bd811[_0x43ca12(0x1f7)]&&console[_0x43ca12(0x204)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x5bd811['incompleteReason']);if(_0x239e9f[_0x43ca12(0x228)](_0x5bd811[_0x43ca12(0x18c)],_0x239e9f['AyTgS'])&&_0x5bd811[_0x43ca12(0x15b)]===_0x43ca12(0x21a))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x239e9f[_0x43ca12(0x206)](_0x5bd811[_0x43ca12(0x18c)],_0x43ca12(0x1d5))&&_0x5bd811['canceledReason']&&console[_0x43ca12(0x204)](_0x43ca12(0x15c)+_0x5bd811[_0x43ca12(0x1f1)]);}}}export async function featureCreate(_0x539656,_0x2b3688){const _0x3630c5=_0x3558,_0x3bf8d6={'eReFB':function(_0x160538){return _0x160538();},'dNkIE':'\x0aCreating\x20feature\x20review...','JKdfU':function(_0x34b263,_0x4082b2){return _0x34b263(_0x4082b2);},'yiCMP':function(_0xd43049,_0x434166,_0x35082b){return _0xd43049(_0x434166,_0x35082b);}},{envNames:_0x5a1f52}=await getEnvNames();if(_0x5a1f52[_0x3630c5(0x1ea)]===0x0&&!process['env'][_0x3630c5(0x1b5)]){let _0x3900b8=0x0;try{_0x3900b8=(await listCloudProfiles())['length'];}catch{_0x3900b8=0x1;}_0x3900b8===0x0&&console[_0x3630c5(0x1c3)]('\x0a'+formatProfileRequiredMessage(_0x475a19=>bold(_0x475a19)));}const _0xdeb101=_0x2b3688[_0x3630c5(0x1ac)]?_0x2b3688['scenarios']['map'](_0x1f1da7=>_0x1f1da7['trim']()):[],_0x5cb237=_0x3bf8d6['eReFB'](getGitRepoUrl),_0x1630cc=_0x3bf8d6['eReFB'](getGitBranch);console[_0x3630c5(0x204)](_0x3bf8d6['dNkIE']);const _0xc75c67=await createFeature({'name':_0x539656,'description':_0x2b3688['description'],'checklist':_0xdeb101,'gitRepoUrl':_0x5cb237,'gitBranch':_0x1630cc});await _0x3bf8d6['JKdfU'](setActiveFeatureId,_0xc75c67['id']),await _0x3bf8d6[_0x3630c5(0x14a)](tryStartCurrentSession,_0xc75c67['id']);const _0x4bddf6=process['env']['CLAUDE_SESSION_ID'];_0x4bddf6&&_0x3bf8d6[_0x3630c5(0x1d7)](registerSession,_0x4bddf6,_0xc75c67['id']),console[_0x3630c5(0x204)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0xc75c67['id']),displayFeature(_0xc75c67,_0xc75c67['checklistItems']),console['log'](_0x3630c5(0x1d3));}export async function featureList(_0x1e42c6){const _0x1429b3=_0x3558,_0x35335e={'bAKxJ':function(_0x2d0486,_0x278194){return _0x2d0486(_0x278194);},'IvcFY':'\x0aNo\x20feature\x20reviews\x20found.','iEfGf':function(_0x3cb956,_0x1fd2ca){return _0x3cb956>_0x1fd2ca;},'cSQLc':function(_0x2afeff,_0x44c1a7){return _0x2afeff+_0x44c1a7;},'bYhfm':_0x1429b3(0x155)},_0x540a66={'limit':_0x1e42c6['limit']??0xa,'offset':_0x1e42c6['offset']??0x0,'includeDeleted':_0x1e42c6['includeDeleted']};_0x1e42c6[_0x1429b3(0x193)]&&(_0x540a66['gitRepoUrl']=getGitRepoUrl(),_0x540a66[_0x1429b3(0x19c)]=getGitBranch());const _0x4f91f3=await _0x35335e[_0x1429b3(0x152)](listFeatures,_0x540a66);if(_0x4f91f3['items']['length']===0x0){console[_0x1429b3(0x204)](_0x35335e[_0x1429b3(0x18f)]);return;}const _0x374bc1=_0x35335e[_0x1429b3(0x1f2)](_0x4f91f3['totalCount'],_0x4f91f3[_0x1429b3(0x20e)]['length'])?_0x1429b3(0x176)+_0x4f91f3[_0x1429b3(0x20e)]['length']+_0x1429b3(0x14c)+_0x4f91f3['totalCount']:_0x4f91f3['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x1429b3(0x204)]('\x0a'+_0x374bc1+':\x0a');for(const _0x42175e of _0x4f91f3['items']){console[_0x1429b3(0x204)](''+_0x42175e[_0x1429b3(0x195)]),console['log'](_0x1429b3(0x15a)+_0x42175e['id']),_0x42175e['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x35335e['bAKxJ'](getProgressDisplay,_0x42175e[_0x1429b3(0x1f3)])),_0x42175e[_0x1429b3(0x19c)]&&console[_0x1429b3(0x204)]('\x20\x20\x20Branch:\x20'+_0x42175e[_0x1429b3(0x19c)]),console[_0x1429b3(0x204)](_0x1429b3(0x203)+new Date(_0x42175e['createdAt'])['toLocaleDateString']()),console[_0x1429b3(0x204)]('');}const _0x5b6437=_0x540a66['limit']??0xa,_0x422c2c=_0x35335e[_0x1429b3(0x227)](_0x540a66['offset']??0x0,_0x4f91f3['items']['length']);if(_0x422c2c<_0x4f91f3[_0x1429b3(0x208)]){const _0x1749fc=_0x5b6437!==0xa?'\x20--limit\x20'+_0x5b6437:'',_0x4f8680=_0x1e42c6['currentBranch']?_0x35335e['bYhfm']:'',_0x4fa976=_0x1e42c6['includeDeleted']?'\x20--include-deleted':'';console[_0x1429b3(0x204)](_0x1429b3(0x1fd)+_0x422c2c+_0x1749fc+_0x4f8680+_0x4fa976);}}export async function featureShow(_0xc1f8ed){const _0xd9cfeb=_0x3558,_0x25e8b4={'nUABY':function(_0x559a70){return _0x559a70();},'uiKya':function(_0x9a776c,_0x1d068f){return _0x9a776c(_0x1d068f);},'RGQiz':function(_0x572245,_0x524345,_0x216571){return _0x572245(_0x524345,_0x216571);}},_0x166eb5=_0xc1f8ed||await _0x25e8b4['nUABY'](getActiveFeatureId);if(!_0x166eb5)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 _0x50eb57=await _0x25e8b4[_0xd9cfeb(0x17a)](getFeature,_0x166eb5);_0x25e8b4[_0xd9cfeb(0x19e)](displayFeature,_0x50eb57,_0x50eb57[_0xd9cfeb(0x184)]);}export async function featureResume(_0x54446a){const _0x25ea51=_0x3558,_0x20c4ad={'vDBEz':function(_0xb6a178,_0x323dd3){return _0xb6a178(_0x323dd3);},'MQWhZ':function(_0x5bfe60,_0x11891d){return _0x5bfe60(_0x11891d);},'lidMg':function(_0xcdf940){return _0xcdf940();},'Wfnub':function(_0x45d850,_0x1fe43a,_0x589e43){return _0x45d850(_0x1fe43a,_0x589e43);},'kLVYS':function(_0x3a47cc,_0x39b88a){return _0x3a47cc(_0x39b88a);},'wsMxR':function(_0x2dc2e4,_0x581489){return _0x2dc2e4&&_0x581489;},'IXMMo':'any','rcTKH':function(_0x3b7172,_0xc4cd6c){return _0x3b7172||_0xc4cd6c;},'vcdeQ':function(_0x5420e4,_0x7d9734){return _0x5420e4===_0x7d9734;},'uGMmv':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','GccRA':_0x25ea51(0x21f),'LCyYY':function(_0x19fc74,_0x42c96c,_0x300cb4){return _0x19fc74(_0x42c96c,_0x300cb4);}};if(_0x54446a){const _0x2d52a8=await _0x20c4ad['vDBEz'](getFeature,_0x54446a);await _0x20c4ad['MQWhZ'](setActiveFeatureId,_0x2d52a8['id']);const _0xba5be8=_0x20c4ad[_0x25ea51(0x188)](getGitBranch);_0xba5be8&&_0xba5be8!==_0x2d52a8['gitBranch']&&(await _0x20c4ad[_0x25ea51(0x18b)](updateFeature,_0x2d52a8['id'],{'gitBranch':_0xba5be8}),console[_0x25ea51(0x204)](_0x25ea51(0x213)+_0xba5be8));console[_0x25ea51(0x204)](_0x25ea51(0x153)+_0x2d52a8[_0x25ea51(0x195)]+'\x20('+_0x2d52a8['id']+')'),await tryStartCurrentSession(_0x2d52a8['id']);const _0x413463=process[_0x25ea51(0x14d)][_0x25ea51(0x18e)];_0x413463&®isterSession(_0x413463,_0x2d52a8['id']);displayFeature(_0x2d52a8,_0x2d52a8['checklistItems']),await _0x20c4ad['kLVYS'](printFeedbackNudge,_0x2d52a8['id']);return;}const _0x6dad28=getGitRepoUrl(),_0x4120c8=getGitBranch();if(_0x20c4ad['wsMxR'](!_0x6dad28,!_0x4120c8))throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log'](_0x25ea51(0x1b8)+(_0x6dad28||_0x20c4ad['IXMMo'])+'\x20/\x20'+_0x20c4ad[_0x25ea51(0x194)](_0x4120c8,_0x25ea51(0x1ff))+_0x25ea51(0x1b0));const _0x4cfc8a=await listFeatures({'gitRepoUrl':_0x6dad28,'gitBranch':_0x4120c8}),_0x478314=_0x4cfc8a['items']['filter'](_0x5b28b9=>_0x5b28b9['status']?_0x5b28b9[_0x25ea51(0x18c)]!=='verified':!_0x5b28b9[_0x25ea51(0x212)]);if(_0x478314[_0x25ea51(0x1ea)]===0x0){console[_0x25ea51(0x204)](_0x25ea51(0x1b3)),console['log'](_0x25ea51(0x1ab));return;}let _0x497673;if(_0x20c4ad['vcdeQ'](_0x478314['length'],0x1))_0x497673=_0x478314[0x0];else{const _0x67d68f=process['stdin'][_0x25ea51(0x16e)]&&process[_0x25ea51(0x20b)][_0x25ea51(0x16e)];if(!_0x67d68f){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x3ad348 of _0x478314){console['log']('\x20\x20'+_0x3ad348[_0x25ea51(0x195)]),console[_0x25ea51(0x204)]('\x20\x20\x20\x20\x20ID:\x20'+_0x3ad348['id']),_0x3ad348['stats']&&console[_0x25ea51(0x204)](_0x25ea51(0x225)+_0x20c4ad[_0x25ea51(0x187)](getProgressDisplay,_0x3ad348['stats'])),_0x3ad348['gitBranch']&&console[_0x25ea51(0x204)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x3ad348['gitBranch']);}throw new Error(_0x20c4ad['uGMmv']);}const {selected:_0x5545c1}=await _0x30ae08['prompt']([{'type':_0x20c4ad['GccRA'],'name':'selected','message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x478314['map'](_0x44b4ff=>({'name':_0x44b4ff[_0x25ea51(0x195)]+'\x20('+_0x44b4ff['id']+')','value':_0x44b4ff['id']}))}]);_0x497673=_0x478314[_0x25ea51(0x1aa)](_0x5dbb9b=>_0x5dbb9b['id']===_0x5545c1);}await setActiveFeatureId(_0x497673['id']);_0x4120c8&&_0x4120c8!==_0x497673[_0x25ea51(0x19c)]&&(await _0x20c4ad['LCyYY'](updateFeature,_0x497673['id'],{'gitBranch':_0x4120c8}),console[_0x25ea51(0x204)](_0x25ea51(0x213)+_0x4120c8));console[_0x25ea51(0x204)](_0x25ea51(0x153)+_0x497673['name']+'\x20('+_0x497673['id']+')'),await tryStartCurrentSession(_0x497673['id']);const _0x49a289=await _0x20c4ad[_0x25ea51(0x1f5)](getFeature,_0x497673['id']),_0x17a84e=process['env']['CLAUDE_SESSION_ID'];_0x17a84e&®isterSession(_0x17a84e,_0x49a289['id']),_0x20c4ad[_0x25ea51(0x18b)](displayFeature,_0x49a289,_0x49a289[_0x25ea51(0x184)]),await _0x20c4ad[_0x25ea51(0x192)](printFeedbackNudge,_0x49a289['id']);}async function printFeedbackNudge(_0x260f45){const _0x5e883f=_0x3558,_0x4edc7f={'auPew':function(_0x5372c2,_0x627027,_0x434bc5){return _0x5372c2(_0x627027,_0x434bc5);}};try{const {items:_0x19fdac}=await getActionItems(_0x260f45);let _0x439bc8=0x0,_0x1444cf=0x0;for(const _0xe3c4d2 of _0x19fdac){const _0x45a140=await _0x4edc7f[_0x5e883f(0x219)](getItemFeedback,_0x260f45,_0xe3c4d2['id']);_0x45a140['unaddressedComments']['length']>0x0&&(_0x439bc8+=_0x45a140[_0x5e883f(0x200)][_0x5e883f(0x1ea)],_0x1444cf++);}_0x439bc8>0x0&&(console[_0x5e883f(0x204)](_0x5e883f(0x20d)+_0x439bc8+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x1444cf+'\x20scenario(s).'),console[_0x5e883f(0x204)]('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x112cda){const _0x525ff6=_0x3558;try{const {sessions:_0x3a0147}=await listFeatureSessions(_0x112cda),_0xc11d52=_0x3a0147['find'](_0x46952a=>_0x46952a['status']==='ready');_0xc11d52&&(await startSession(_0x112cda,_0xc11d52['id']),console[_0x525ff6(0x204)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0xc11d52[_0x525ff6(0x178)]));}catch{}}export async function featureReport(_0x3be9c2,_0x1d2258){const _0x52b812=_0x3558,_0x4d5aef={'blhQR':function(_0x695396){return _0x695396();},'WESNz':_0x52b812(0x198),'tANyj':function(_0x1cc0b1,_0x42b962,_0xd091b4){return _0x1cc0b1(_0x42b962,_0xd091b4);},'KgfwJ':function(_0x13a34d,_0x84f77,_0x408b37,_0x271a5c){return _0x13a34d(_0x84f77,_0x408b37,_0x271a5c);},'weFAT':function(_0xd715f6){return _0xd715f6();},'qZrrS':_0x52b812(0x1d6),'GfPOt':function(_0x3024e0,_0x3b132a,_0x37d1dd){return _0x3024e0(_0x3b132a,_0x37d1dd);}},_0x5912d5=_0x3be9c2||await _0x4d5aef[_0x52b812(0x1d2)](getActiveFeatureId);if(!_0x5912d5)throw new Error(_0x4d5aef[_0x52b812(0x1a8)]);console['log']('\x0aGenerating\x20report...');const _0x79aace=await _0x4d5aef['tANyj'](getFeatureReportMarkdown,_0x5912d5,{'style':_0x1d2258[_0x52b812(0x1a4)]}),_0x4a9107=_0x1d2258['output']||_0x4d5aef[_0x52b812(0x1ad)](join,_0x4d5aef[_0x52b812(0x202)](getRangerDir),_0x4d5aef[_0x52b812(0x185)],_0x5912d5+'.md'),_0x81c49c=_0x4d5aef[_0x52b812(0x1dd)](join,_0x4a9107,'..');!existsSync(_0x81c49c)&&await _0x4d5aef[_0x52b812(0x1a1)](mkdir,_0x81c49c,{'recursive':!![]}),await _0x4d5aef['KgfwJ'](writeFile,_0x4a9107,_0x79aace,'utf-8'),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x4a9107);}function getScenarioResult(_0xb9713b){const _0x38d616=_0x3558,_0x1b5284={'nNSVW':_0x38d616(0x1d5),'lCQEV':_0x38d616(0x1d0)};if(_0xb9713b[_0x38d616(0x18c)]==='closed')return _0xb9713b['terminalReason']??_0x1b5284['nNSVW'];if(_0xb9713b['status']===_0x1b5284['lCQEV'])return _0x38d616(0x186);return _0xb9713b['status'];}function getScenarioRationale(_0x1300c7,_0x47eb34){const _0x5b5852=_0x3558;if(_0x47eb34)return _0x47eb34;if(_0x1300c7[_0x5b5852(0x21d)])return _0x1300c7['blockedReason'];if(_0x1300c7[_0x5b5852(0x1f7)])return _0x1300c7[_0x5b5852(0x1f7)];if(_0x1300c7['canceledReason'])return _0x1300c7[_0x5b5852(0x1f1)];if(_0x1300c7[_0x5b5852(0x154)])return _0x1300c7[_0x5b5852(0x154)];return null;}export async function featureReportPrDescription(_0x50859b,_0x1137a9){const _0x3c3960=_0x3558,_0x4ec986={'IkJsh':function(_0x3049cf){return _0x3049cf();},'yoKPR':function(_0x24feb6,_0x3e57af,_0x23f7a9){return _0x24feb6(_0x3e57af,_0x23f7a9);},'IUdkS':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','uvyFL':function(_0x15bb4b,_0x49499d){return _0x15bb4b>_0x49499d;},'FvQwl':function(_0x1a0dd7,_0x315b13){return _0x1a0dd7+_0x315b13;},'NOydj':_0x3c3960(0x21e)},_0xcfdd39=_0x50859b||await _0x4ec986[_0x3c3960(0x1b6)](getActiveFeatureId);if(!_0xcfdd39)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x1432c7=await getFeature(_0xcfdd39),_0x12fe1d=_0x1432c7['checklistItems']||[],_0x2f88fd=_0x4ec986['yoKPR'](getCurrentSessionItems,_0x1432c7,_0x12fe1d);_0x2f88fd[_0x3c3960(0x1ea)]===0x0&&(console[_0x3c3960(0x160)](_0x4ec986['IUdkS']),process[_0x3c3960(0x17c)](0x1));const _0x152a21=_0x1137a9[_0x3c3960(0x1e0)]??[],_0x48db5f=_0x152a21[_0x3c3960(0x1bf)](_0x1876cd=>!Number['isInteger'](_0x1876cd)||_0x1876cd<0x1||_0x1876cd>_0x2f88fd['length']);if(_0x4ec986[_0x3c3960(0x1d1)](_0x48db5f['length'],0x0)){console[_0x3c3960(0x160)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x48db5f['join'](',\x20')),console[_0x3c3960(0x204)]('\x0aAvailable\x20scenarios:');for(let _0x3e5ae2=0x0;_0x3e5ae2<_0x2f88fd[_0x3c3960(0x1ea)];_0x3e5ae2++){console['log']('\x20\x20'+_0x4ec986[_0x3c3960(0x223)](_0x3e5ae2,0x1)+'.\x20'+_0x2f88fd[_0x3e5ae2][_0x3c3960(0x1c6)]);}process[_0x3c3960(0x17c)](0x1);}const _0x63eb6=new Set(_0x152a21['map'](_0x15ecfa=>_0x15ecfa-0x1)),_0x431944=_0x2f88fd[_0x3c3960(0x1bf)]((_0x198590,_0x56711b)=>!_0x63eb6['has'](_0x56711b));_0x431944['length']===0x0&&(console[_0x3c3960(0x160)](_0x4ec986[_0x3c3960(0x175)]),process[_0x3c3960(0x17c)](0x1));if(_0x1137a9[_0x3c3960(0x189)])await outputJsonReport(_0xcfdd39,_0x1432c7,_0x431944);else{const _0x17c984=await getFeatureReportMarkdown(_0xcfdd39,{'itemIds':_0x431944['map'](_0x3cedbb=>_0x3cedbb['id'])});process['stdout'][_0x3c3960(0x150)](_0x17c984['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x12f6fb,_0x14679b,_0x20d1d5){const _0x55c788=_0x3558,_0x2adf50={'fsxzK':function(_0x409fe7,_0xfb0190){return _0x409fe7(_0xfb0190);},'vKzWM':function(_0x1bf62d,_0x1c5504){return _0x1bf62d>_0x1c5504;},'jJYGN':function(_0xae352a,_0x5a1432,_0x41e1d0){return _0xae352a(_0x5a1432,_0x41e1d0);},'fhzoh':function(_0x337209){return _0x337209();},'otFxC':function(_0x380e27,_0x26373a){return _0x380e27+_0x26373a;}},_0x2c0d77=_0x2adf50['fhzoh'](getApiBaseUrl),_0x5cde49=await _0x2adf50[_0x55c788(0x1cd)](getFeatureReport,_0x12f6fb),_0x2a9df5=new Map(_0x5cde49['checklistItems']['map'](_0x25e618=>[_0x25e618['id'],_0x25e618])),_0x2189e0=await Promise['all'](_0x20d1d5[_0x55c788(0x17d)](async _0x197899=>{const _0x10caf3=_0x55c788,_0x867d08=_0x2a9df5['get'](_0x197899['id']),_0xf9ddb9=_0x867d08?.[_0x10caf3(0x17b)]??null;let _0x4d5ce8=[];if(_0x197899[_0x10caf3(0x1ae)])try{const {steps:_0x2c033f}=await _0x2adf50['fsxzK'](getBrowserSessionSteps,_0x197899['browserSessionId']);_0x2adf50['vKzWM'](_0x2c033f['length'],0x0)&&(_0x4d5ce8=_0x2c033f[_0x10caf3(0x17d)](_0x5acb65=>{const _0x1eb9d7=_0x10caf3,_0x2a20a3=_0x5acb65['assets']['find'](_0x22825e=>_0x22825e[_0x1eb9d7(0x1e6)]==='screenshot'&&_0x22825e[_0x1eb9d7(0x1e4)]==='after')??_0x5acb65[_0x1eb9d7(0x190)][_0x1eb9d7(0x1aa)](_0x59687c=>_0x59687c[_0x1eb9d7(0x1e6)]===_0x1eb9d7(0x170));let _0x45253f=null,_0x2870c6=null;if(_0x2a20a3){const _0x1097ff=_0x2a20a3[_0x1eb9d7(0x179)][_0x1eb9d7(0x1bb)]['split']('/')[_0x1eb9d7(0x1cf)]();_0x45253f=_0x2c0d77+_0x1eb9d7(0x1bc)+_0x197899[_0x1eb9d7(0x1ae)]+_0x1eb9d7(0x18a)+_0x1097ff,_0x1097ff&&(_0x2870c6=_0x1097ff['replace'](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x1eb9d7(0x215)](/[-_]/g,'\x20'));}return{'description':_0x2870c6||_0x5acb65[_0x1eb9d7(0x1c6)]||_0x5acb65['stepName']||_0x1eb9d7(0x1b4)+_0x5acb65[_0x1eb9d7(0x20f)],'screenshot':_0x45253f,'is_key_step':_0x5acb65['isKeyStep']};}));}catch{}return _0x4d5ce8['length']===0x0&&_0xf9ddb9?.[_0x10caf3(0x1a2)]&&(_0x4d5ce8=_0xf9ddb9[_0x10caf3(0x1a2)][_0x10caf3(0x17d)]((_0x2d66a3,_0x2cf420)=>({'description':'Screenshot\x20'+(_0x2cf420+0x1),'screenshot':_0x2d66a3,'is_key_step':![]}))),{'description':_0x197899[_0x10caf3(0x1c6)],'result':getScenarioResult(_0x197899),'rationale':_0x2adf50[_0x10caf3(0x1a9)](getScenarioRationale,_0x197899,_0xf9ddb9?.['agentResponse']),'steps':_0x4d5ce8};})),_0x48e78b={'url':_0x14679b['dashboardUrl'],'scenarios':_0x2189e0};process[_0x55c788(0x20b)]['write'](_0x2adf50[_0x55c788(0x1de)](JSON['stringify'](_0x48e78b,null,0x2),'\x0a'));}function _0x3558(_0x2861b7,_0x187b01){_0x2861b7=_0x2861b7-0x14a;const _0x34bdc6=_0x34bd();let _0x3558d2=_0x34bdc6[_0x2861b7];return _0x3558d2;}export async function featureConcludeSession(_0x36894e){const _0x3ab399=_0x3558,_0x795aa5={'rjfXO':function(_0x3e18ff,_0x42a9b5){return _0x3e18ff(_0x42a9b5);},'CtbRc':_0x3ab399(0x1c7),'SecGj':'Current\x20session\x20not\x20found.','OGJdJ':'\x0a✅\x20Session\x20is\x20already\x20completed.','eSAsj':function(_0x2b43d2,_0x3e9c5d){return _0x2b43d2!==_0x3e9c5d;},'kAMfJ':'in_progress'},_0x20f55d=_0x36894e||await getActiveFeatureId();if(!_0x20f55d)throw new Error(_0x3ab399(0x16a));const _0x3d820e=await _0x795aa5['rjfXO'](getFeature,_0x20f55d);if(!_0x3d820e[_0x3ab399(0x173)])throw new Error(_0x795aa5[_0x3ab399(0x220)]);const {sessions:_0x536b38}=await _0x795aa5[_0x3ab399(0x1e8)](listFeatureSessions,_0x20f55d),_0x3a0601=_0x536b38[_0x3ab399(0x1aa)](_0x4afbff=>_0x4afbff['id']===_0x3d820e[_0x3ab399(0x173)]);if(!_0x3a0601)throw new Error(_0x795aa5[_0x3ab399(0x15d)]);if(_0x3a0601[_0x3ab399(0x18c)]==='completed'){console[_0x3ab399(0x204)](_0x795aa5['OGJdJ']);return;}if(_0x795aa5['eSAsj'](_0x3a0601[_0x3ab399(0x18c)],_0x795aa5['kAMfJ']))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x3a0601[_0x3ab399(0x18c)]);console['log']('\x0aConcluding\x20session...'),await concludeSession(_0x20f55d,_0x3d820e[_0x3ab399(0x173)]),console['log'](_0x3ab399(0x1f9)+_0x3a0601[_0x3ab399(0x178)]+_0x3ab399(0x1c9)),console['log'](_0x3ab399(0x1b9));}export async function featureSessions(_0x45f893){const _0x35e013=_0x3558,_0x4dbf3b={'Jbbzf':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','fehKi':function(_0x5c1d98,_0x20211b){return _0x5c1d98(_0x20211b);},'EowzX':'in_progress'},_0x42d0ca=_0x45f893||await getActiveFeatureId();if(!_0x42d0ca)throw new Error(_0x4dbf3b['Jbbzf']);const _0x5083a7=await _0x4dbf3b[_0x35e013(0x163)](getFeature,_0x42d0ca);console[_0x35e013(0x204)](_0x35e013(0x157)+_0x5083a7[_0x35e013(0x195)]+'\x0a');const {sessions:_0x4348e2}=await listFeatureSessions(_0x42d0ca);if(_0x4348e2[_0x35e013(0x1ea)]===0x0){console[_0x35e013(0x204)](_0x35e013(0x1e1));return;}for(const _0x4726e3 of _0x4348e2){const _0x17c4b0=_0x4726e3[_0x35e013(0x18c)]==='completed'?'✅':_0x4726e3['status']===_0x4dbf3b[_0x35e013(0x14e)]?'🔄':'▶️';console['log'](_0x17c4b0+'\x20Session\x20'+_0x4726e3['iteration']+'\x20('+_0x4726e3['id']+')'),console[_0x35e013(0x204)](_0x35e013(0x210)+_0x4726e3[_0x35e013(0x18c)]),console['log'](_0x35e013(0x203)+new Date(_0x4726e3['createdAt'])[_0x35e013(0x17f)]()),_0x4726e3[_0x35e013(0x212)]&&console[_0x35e013(0x204)]('\x20\x20\x20Completed:\x20'+new Date(_0x4726e3[_0x35e013(0x212)])[_0x35e013(0x17f)]()),console[_0x35e013(0x204)]('');}}function _0x34bd(){const _0x16b7b1=['jlnER','nCvsh','JKdfU','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','\x20of\x20','env','EowzX','\x20blocked','write','github.com/','bAKxJ','\x0a✅\x20Resumed\x20feature\x20review:\x20','notes','\x20--current-branch','scenario','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','NRyiY','repeat','\x20\x20\x20ID:\x20','terminalReason','\x20\x20\x20\x20\x20\x20Cancelled:\x20','SecGj','\x0aAvailable\x20scenarios:','\x20\x20\x20Completed:\x20','error','cYFOa','coordinates','fehKi','GMeFS','\x20unaddressed\x20comment(s)','canonicalFlow','VmoYq','\x20\x20Expected\x20flow:','OVqgy','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','69088SSzUlq','blocked','QwcBG','isTTY','ZBRBT','screenshot','PmILx','\x20—\x20','currentSessionId','rrUCS','NOydj','Showing\x20','384845ABYiRH','iteration','storage','uiKya','linkedSession','exit','map','BxHvs','toLocaleString','point','UGcHp','\x20\x20💬\x20','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','checklistItems','qZrrS','in_progress','MQWhZ','lidMg','json','/artifacts/','Wfnub','status','Unknown','CLAUDE_SESSION_ID','IvcFY','assets','toFixed','kLVYS','currentBranch','rcTKH','name','gitRepoUrl','tYZye','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','en-US','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','AyTgS','gitBranch','Wodhu','RGQiz','verificationInProgressItems','cazYo','tANyj','screenshotUrls','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','style','rSpuc','\x20\x20\x20Branch:\x20','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','WESNz','jJYGN','find','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','scenarios','KgfwJ','browserSessionId','\x20>\x20','...','6WKdcOC','qgGGa','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','Step\x20','RANGER_TEST_USERNAME','IkJsh','incompleteItems','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','750987xYaMpP','location','/api/v1/mcp/browser-sessions/','trim','\x20\x20\x20\x20\x20\x20Blocked:\x20','filter','\x0a✅\x20Scenario\x20added','Scenario\x20','spatial','warn','oZltC','assetUrl','description','No\x20active\x20session\x20for\x20this\x20feature\x20review.','verifiedItems','\x20concluded.','version','sessionId','blockedItems','fsxzK','createdAt','pop','verification_in_progress','uvyFL','blhQR','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20✅\x20No\x20feedback\x20to\x20address','closed','reports','yiCMP','\x20scenarios.','slice','split','EtJBz','domRef','GfPOt','otFxC','\x20\x20\x20Progress:\x20','excludeScenarios','No\x20sessions\x20found.','comment_','\x20incomplete','timing','\x0a📋\x20Feedback\x20for:\x20','assetType','selector','rjfXO','):\x20\x22','length','UtWeX','textContent','latestReview',':\x20\x22','push','eueMk','canceledReason','iEfGf','stats','hLtoP','vDBEz','3203408loAzvX','incompleteReason','117684SDHlTT','\x0a✅\x20Session\x20','Please\x20finish\x20your\x20review\x20first:','arrayBuffer','QKfDh','Next\x20page:\x20ranger\x20list\x20--offset\x20','NrTSq','any','unaddressedComments','No\x20scenarios\x20found.','weFAT','\x20\x20\x20Created:\x20','log','ddbRc','PGDBg','bKcXQ','totalCount','pipe','type','stdout','join','\x0a⚠️\x20\x20','items','position','\x20\x20\x20Status:\x20','utf-8','completedAt','\x20\x20\x20Updated\x20branch\x20to:\x20','HqUTd','replace','vOnMw','.png','92248hhCyQC','auPew','approved','HvmWe','numeric','blockedReason','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','list','CtbRc','\x0a\x20\x20\x20Scenarios:','\x20(v','FvQwl','156219VjyxJL','\x20\x20\x20\x20\x20Progress:\x20','\x20verified','cSQLc'];_0x34bd=function(){return _0x16b7b1;};return _0x34bd();}export async function featureAddScenario(_0x526b34,_0x2bc012){const _0x2a4ec8=_0x3558,_0x3cecdc={'ddbRc':_0x2a4ec8(0x16a),'RXpUj':function(_0x1456a0,_0x37b2f4){return _0x1456a0(_0x37b2f4);},'Wodhu':function(_0x2f4812,_0x157d46,_0x276e73){return _0x2f4812(_0x157d46,_0x276e73);},'VmoYq':function(_0x372363,_0x3d5eba){return _0x372363(_0x3d5eba);}},_0x4611f7=_0x2bc012||await getActiveFeatureId();if(!_0x4611f7)throw new Error(_0x3cecdc[_0x2a4ec8(0x205)]);const _0xfbf3bf=await _0x3cecdc['RXpUj'](getFeature,_0x4611f7);if(_0xfbf3bf[_0x2a4ec8(0x1ed)]&&!_0xfbf3bf[_0x2a4ec8(0x1ed)]['submittedAt'])throw new Error(_0x2a4ec8(0x183)+_0xfbf3bf['dashboardUrl']);await _0x3cecdc[_0x2a4ec8(0x19d)](createChecklistItem,_0x4611f7,_0x526b34);const _0x5f40c0=await _0x3cecdc[_0x2a4ec8(0x167)](getFeature,_0x4611f7);console[_0x2a4ec8(0x204)](_0x2a4ec8(0x1c0)),_0x3cecdc['Wodhu'](displayFeature,_0x5f40c0,_0x5f40c0['checklistItems']);}export async function featureEditScenario(_0x5d4c9b,_0x34627c){const _0x3bef9a=_0x3558,_0x955692={'gYZiq':_0x3bef9a(0x1a3),'FNoOA':function(_0xfb7693,_0x36e810){return _0xfb7693(_0x36e810);},'jjBWM':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','cYFOa':_0x3bef9a(0x1a7),'BxHvs':function(_0x3d800c,_0xc6ed25){return _0x3d800c===_0xc6ed25;},'vOnMw':function(_0x5f0ae9,_0x468f17){return _0x5f0ae9<_0x468f17;},'vPuEI':function(_0x620c2f,_0x164a33){return _0x620c2f+_0x164a33;},'QKfDh':function(_0x555425,_0x2ed12d){return _0x555425-_0x2ed12d;},'DldtZ':function(_0x2ac374,_0x48f7a8){return _0x2ac374>=_0x48f7a8;},'bKcXQ':function(_0x262959,_0x2ad05c){return _0x262959(_0x2ad05c);}},_0x35fdcd=_0x34627c['id']||await getActiveFeatureId();!_0x35fdcd&&(console[_0x3bef9a(0x160)](_0x955692['gYZiq']),console[_0x3bef9a(0x160)](_0x3bef9a(0x19a)),process['exit'](0x1));const _0x38d9e2=await _0x955692['FNoOA'](getFeature,_0x35fdcd);_0x38d9e2[_0x3bef9a(0x1ed)]&&!_0x38d9e2[_0x3bef9a(0x1ed)]['submittedAt']&&(console[_0x3bef9a(0x160)](_0x955692['jjBWM']),console['error'](_0x3bef9a(0x1fa)),console['error']('\x20\x20'+_0x38d9e2['dashboardUrl']),process[_0x3bef9a(0x17c)](0x1));const _0x298713=_0x38d9e2[_0x3bef9a(0x184)]||[];_0x298713[_0x3bef9a(0x1ea)]===0x0&&(console['error'](_0x955692[_0x3bef9a(0x161)]),process['exit'](0x1));if(_0x955692[_0x3bef9a(0x17e)](_0x34627c['scenario'],undefined)){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console[_0x3bef9a(0x204)](_0x3bef9a(0x15e));for(let _0x57e625=0x0;_0x955692[_0x3bef9a(0x216)](_0x57e625,_0x298713['length']);_0x57e625++){console['log']('\x20\x20'+_0x955692['vPuEI'](_0x57e625,0x1)+'.\x20'+_0x298713[_0x57e625][_0x3bef9a(0x1c6)]);}process[_0x3bef9a(0x17c)](0x1);}const _0x4b458a=_0x955692[_0x3bef9a(0x1fc)](_0x34627c['scenario'],0x1);if(_0x4b458a<0x0||_0x955692['DldtZ'](_0x4b458a,_0x298713['length'])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x34627c[_0x3bef9a(0x156)]+'.\x20Feature\x20review\x20has\x20'+_0x298713['length']+_0x3bef9a(0x1d8)),console[_0x3bef9a(0x204)](_0x3bef9a(0x15e));for(let _0x56578b=0x0;_0x56578b<_0x298713[_0x3bef9a(0x1ea)];_0x56578b++){console[_0x3bef9a(0x204)]('\x20\x20'+(_0x56578b+0x1)+'.\x20'+_0x298713[_0x56578b]['description']);}process[_0x3bef9a(0x17c)](0x1);}const _0x3be643=_0x298713[_0x4b458a];await updateChecklistItem(_0x35fdcd,_0x3be643['id'],{'description':_0x5d4c9b});const _0x52a8fc=await _0x955692[_0x3bef9a(0x207)](getFeature,_0x35fdcd);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x52a8fc,_0x52a8fc['checklistItems']);}async function downloadFeedbackImage(_0x5c5f59,_0x18cb6e){const _0x2bc7f5=_0x3558,_0x145363={'QwcBG':function(_0x410052,_0x218088,_0x3a9a72){return _0x410052(_0x218088,_0x3a9a72);},'gqfFJ':'feedback-images','ZBRBT':function(_0x1e62b7,_0x3bf19d,_0x315ba8){return _0x1e62b7(_0x3bf19d,_0x315ba8);},'oZltC':function(_0x15907a,_0x282086){return _0x15907a(_0x282086);}};try{const _0x14952a=_0x145363[_0x2bc7f5(0x16d)](join,getRangerDir(),_0x145363['gqfFJ']);await _0x145363[_0x2bc7f5(0x16f)](mkdir,_0x14952a,{'recursive':!![]});const _0x46402b=join(_0x14952a,_0x2bc7f5(0x1e2)+_0x18cb6e+_0x2bc7f5(0x217)),_0x382ae8=await _0x145363[_0x2bc7f5(0x1c4)](fetch,_0x5c5f59);if(!_0x382ae8['ok'])return null;const _0x4ceec9=Buffer['from'](await _0x382ae8[_0x2bc7f5(0x1fb)]());return await writeFile(_0x46402b,_0x4ceec9),_0x46402b;}catch{return null;}}export async function featureGetReview(_0x1f1bd3){const _0x478ee0=_0x3558,_0xf91480={'nlkPn':function(_0x12d930){return _0x12d930();},'PmILx':function(_0x321750,_0x435cc6){return _0x321750(_0x435cc6);},'tYZye':function(_0x1877c4,_0x1b25e6){return _0x1877c4===_0x1b25e6;},'sHbqs':_0x478ee0(0x201),'CWBRs':function(_0x24c82d,_0x427aee){return _0x24c82d<_0x427aee;},'OVqgy':function(_0xbc097a,_0x4a9883){return _0xbc097a>_0x4a9883;},'HqUTd':'short','jayNW':_0x478ee0(0x21c),'UGcHp':_0x478ee0(0x18d),'OzJFc':function(_0x2a4ee2,_0x19c9c4,_0x4a60a7){return _0x2a4ee2(_0x19c9c4,_0x4a60a7);},'XpPHq':'element'},_0x44c793=_0x1f1bd3||await _0xf91480['nlkPn'](getActiveFeatureId);if(!_0x44c793)throw new Error(_0x478ee0(0x16a));const _0x399160=await _0xf91480[_0x478ee0(0x171)](getFeature,_0x44c793),{items:_0x923cd0}=await getActionItems(_0x44c793);console['log'](_0x478ee0(0x1e5)+_0x399160[_0x478ee0(0x195)]+'\x20('+_0x399160['id']+')\x0a');if(_0xf91480[_0x478ee0(0x197)](_0x923cd0[_0x478ee0(0x1ea)],0x0)){console['log'](_0xf91480['sHbqs']);return;}for(let _0x57ecdc=0x0;_0xf91480['CWBRs'](_0x57ecdc,_0x923cd0['length']);_0x57ecdc++){const _0x3c331a=_0x923cd0[_0x57ecdc],_0x31fae3=_0x3c331a['version']>0x1?'\x20(v'+_0x3c331a['version']+')':'',_0x3ad0c4=await getItemFeedback(_0x44c793,_0x3c331a['id']);if(_0xf91480[_0x478ee0(0x169)](_0x3ad0c4['unaddressedComments'][_0x478ee0(0x1ea)],0x0)){console[_0x478ee0(0x204)]('Scenario\x20'+(_0x57ecdc+0x1)+_0x478ee0(0x1ee)+_0x3c331a['description']+'\x22'+_0x31fae3+_0x478ee0(0x172)+_0x3ad0c4['unaddressedComments'][_0x478ee0(0x1ea)]+_0x478ee0(0x165));for(const _0x4e1697 of _0x3ad0c4['unaddressedComments']){const _0x1abae0=new Date(_0x4e1697['createdAt'])['toLocaleDateString'](_0x478ee0(0x199),{'month':_0xf91480[_0x478ee0(0x214)],'day':_0xf91480['jayNW']}),_0x1066c7=_0x4e1697['authorName']||_0x4e1697['authorEmail']||_0xf91480[_0x478ee0(0x181)];console[_0x478ee0(0x204)](_0x478ee0(0x182)+_0x1066c7+'\x20('+_0x1abae0+_0x478ee0(0x1e9)+_0x4e1697['content']+'\x22');if(_0x4e1697[_0x478ee0(0x1c5)]){const _0x1ce389=await _0xf91480['OzJFc'](downloadFeedbackImage,_0x4e1697[_0x478ee0(0x1c5)],_0x4e1697['id']);_0x1ce389&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x1ce389);}if(_0x4e1697[_0x478ee0(0x1dc)]){const _0x10a0e1=_0x4e1697[_0x478ee0(0x1dc)][_0x478ee0(0x1e7)][_0x478ee0(0x1da)](_0x478ee0(0x1af))[_0x478ee0(0x1cf)]()?.[_0x478ee0(0x1da)](':')[0x0]||_0xf91480['XpPHq'],_0x336e66=_0x4e1697[_0x478ee0(0x1dc)][_0x478ee0(0x1ec)]?'\x20\x22'+_0x4e1697[_0x478ee0(0x1dc)]['textContent'][_0x478ee0(0x1d9)](0x0,0x3c)+'\x22':'';console['log'](_0x478ee0(0x14b)+_0x10a0e1+'>'+_0x336e66),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x4e1697['domRef']['selector']);}else{if(_0x4e1697[_0x478ee0(0x1c2)]){const _0x3f7710=_0x4e1697[_0x478ee0(0x1c2)][_0x478ee0(0x162)];_0x4e1697['spatial'][_0x478ee0(0x20a)]===_0x478ee0(0x180)&&_0x3f7710['length']>=0x2?console[_0x478ee0(0x204)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x3f7710[0x0][_0x478ee0(0x191)](0x2)+',\x20'+_0x3f7710[0x1]['toFixed'](0x2)+')'):console[_0x478ee0(0x204)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x4e1697[_0x478ee0(0x1c2)]['type']+'\x20at\x20['+_0x3f7710[_0x478ee0(0x17d)](_0x337e46=>_0x337e46[_0x478ee0(0x191)](0x2))[_0x478ee0(0x20c)](',\x20')+']');}}}if(_0x3ad0c4[_0x478ee0(0x166)]){console[_0x478ee0(0x204)](_0x478ee0(0x168));for(const _0x26d04c of _0x3ad0c4[_0x478ee0(0x166)][_0x478ee0(0x1da)]('\x0a')){console[_0x478ee0(0x204)]('\x20\x20\x20\x20'+_0x26d04c);}}}else console['log'](_0x478ee0(0x1c1)+(_0x57ecdc+0x1)+':\x20\x22'+_0x3c331a['description']+'\x22'+_0x31fae3+'\x20—\x20no\x20comments'),console[_0x478ee0(0x204)](_0x478ee0(0x1d4));console['log']('');}}export async function featureDelete(_0x93308f){const _0x4198cb=_0x3558,_0x1a45d2={'NrTSq':function(_0x2a2600){return _0x2a2600();},'NRyiY':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','urkmR':function(_0x2af38b,_0x43cf10){return _0x2af38b(_0x43cf10);},'nCvsh':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x48c89a=_0x93308f||await _0x1a45d2[_0x4198cb(0x1fe)](getActiveFeatureId);if(!_0x48c89a)throw new Error(_0x1a45d2[_0x4198cb(0x158)]);const _0x1d8781=await getFeature(_0x48c89a);await _0x1a45d2['urkmR'](softDeleteFeature,_0x48c89a),console[_0x4198cb(0x204)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x1d8781['name']+'\x20('+_0x48c89a+')'),console[_0x4198cb(0x204)](_0x1a45d2[_0x4198cb(0x229)]+_0x48c89a);}export async function featureRestore(_0xd062fc){const _0x7ac73a=_0x3558,_0x41478f={'sDyVc':function(_0xb27543,_0x1dd646,_0x186d75){return _0xb27543(_0x1dd646,_0x186d75);}};await restoreFeature(_0xd062fc);const _0x3f885a=await getFeature(_0xd062fc);console[_0x7ac73a(0x204)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x3f885a['name']+'\x20('+_0xd062fc+')'),_0x41478f['sDyVc'](displayFeature,_0x3f885a,_0x3f885a[_0x7ac73a(0x184)]);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3d7e0a,_0x4548c8){const _0x483ea7=_0x3b5f,_0x437bd6=_0x3d7e0a();while(!![]){try{const _0x3e86f4=-parseInt(_0x483ea7(0xa4))/0x1+-parseInt(_0x483ea7(0x9c))/0x2+parseInt(_0x483ea7(0x9b))/0x3*(-parseInt(_0x483ea7(0xa1))/0x4)+parseInt(_0x483ea7(0x9a))/0x5*(-parseInt(_0x483ea7(0xa5))/0x6)+parseInt(_0x483ea7(0x97))/0x7+parseInt(_0x483ea7(0xa2))/0x8*(parseInt(_0x483ea7(0xa0))/0x9)+parseInt(_0x483ea7(0xa7))/0xa*(parseInt(_0x483ea7(0x9d))/0xb);if(_0x3e86f4===_0x4548c8)break;else _0x437bd6['push'](_0x437bd6['shift']());}catch(_0xac4088){_0x437bd6['push'](_0x437bd6['shift']());}}}(_0x30a3,0x3d0b4));function _0x3b5f(_0x111bef,_0x31577e){_0x111bef=_0x111bef-0x96;const _0x30a327=_0x30a3();let _0x3b5fef=_0x30a327[_0x111bef];return _0x3b5fef;}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};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x90ce0d=_0x3b5f,_0x2d9b39={'OdrQu':'SIGINT'};if(cancellationHandlersInstalled)return;const _0x36177b=()=>{process['exit'](0x0);};process[_0x90ce0d(0x9f)](_0x2d9b39['OdrQu'],_0x36177b),process[_0x90ce0d(0x9f)](_0x90ce0d(0x9e),_0x36177b),process[_0x90ce0d(0x9f)](_0x90ce0d(0x99),_0x36177b),cancellationHandlersInstalled=!![];}export async function hook(_0x2fa923,_0x48849e){const _0x81b85a=_0x3b5f,_0x23d5ca={'VxFJC':function(_0x3fb470){return _0x3fb470();}};_0x23d5ca[_0x81b85a(0x98)](installCancellationHandlers);const _0x43d9a6=HOOKS[_0x2fa923];if(!_0x43d9a6){const _0x4d0409=Object['keys'](HOOKS)['join'](',\x20');console[_0x81b85a(0xa3)](_0x81b85a(0x96)+_0x2fa923),console[_0x81b85a(0xa3)]('Valid\x20hooks:\x20'+_0x4d0409),process[_0x81b85a(0xa6)](0x1);}await _0x43d9a6(_0x48849e);}function _0x30a3(){const _0x1ca02a=['exit','20EJpZib','Unknown\x20hook:\x20','715246ICvxlr','VxFJC','SIGHUP','1538615iGMRGL','84brvKOi','737166qeCUzt','6314341EyjwGr','SIGTERM','once','144477XQbKdM','64996vynuNZ','248uDqCXH','error','366569zlgAIq','6UYEdlt'];_0x30a3=function(){return _0x1ca02a;};return _0x30a3();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x68fed1,_0x33cd9b){const _0xbb4d07=_0x1af4,_0x160df8=_0x68fed1();while(!![]){try{const _0x590141=parseInt(_0xbb4d07(0x1ff))/0x1+parseInt(_0xbb4d07(0x1f4))/0x2*(parseInt(_0xbb4d07(0x1f3))/0x3)+-parseInt(_0xbb4d07(0x1f5))/0x4+-parseInt(_0xbb4d07(0x1fd))/0x5+-parseInt(_0xbb4d07(0x1f9))/0x6*(parseInt(_0xbb4d07(0x200))/0x7)+parseInt(_0xbb4d07(0x1fc))/0x8*(parseInt(_0xbb4d07(0x1f7))/0x9)+parseInt(_0xbb4d07(0x1fb))/0xa*(parseInt(_0xbb4d07(0x1f6))/0xb);if(_0x590141===_0x33cd9b)break;else _0x160df8['push'](_0x160df8['shift']());}catch(_0x5ad2d7){_0x160df8['push'](_0x160df8['shift']());}}}(_0x4b93,0x55e71));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT='\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.';function _0x1af4(_0x17395b,_0x2011c){_0x17395b=_0x17395b-0x1f3;const _0x4b93cc=_0x4b93();let _0x1af46a=_0x4b93cc[_0x17395b];return _0x1af46a;}function _0x4b93(){const _0x284bca=['NPNWo','538390dthlyL','3647ktSlJt','3ptalZy','763386ruRFaR','1621492uJdYCk','218383tirxyL','180BravwO','dCGcd','1542gdkZvB','session_id','50IEEDOQ','110984TwGalW','2028405JeHYhg'];_0x4b93=function(){return _0x284bca;};return _0x4b93();}export async function autoPrompt(){const _0xea0794=_0x1af4,_0x45cf76={'NPNWo':function(_0x23d8c8,_0xed7dc6){return _0x23d8c8(_0xed7dc6);},'dCGcd':function(_0x3fce32,_0x4c79bd){return _0x3fce32(_0x4c79bd);}};if(resolveHookMode()==='off')return;const _0x4e7e24=await readHookInput(),_0x23aaaa=_0x4e7e24?.[_0xea0794(0x1fa)];if(!_0x23aaaa)return;if(isSessionEnabled(_0x23aaaa)||_0x45cf76[_0xea0794(0x1fe)](hasSessionBeenPrompted,_0x23aaaa))return;_0x45cf76[_0xea0794(0x1f8)](markSessionPrompted,_0x23aaaa),console['log'](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x53abdd,_0x531b4b){const _0x29a82f=_0x213b,_0x357d16=_0x53abdd();while(!![]){try{const _0x1e822e=parseInt(_0x29a82f(0x9a))/0x1*(-parseInt(_0x29a82f(0x91))/0x2)+parseInt(_0x29a82f(0x94))/0x3*(parseInt(_0x29a82f(0x93))/0x4)+parseInt(_0x29a82f(0x97))/0x5+parseInt(_0x29a82f(0x9c))/0x6+parseInt(_0x29a82f(0x90))/0x7+-parseInt(_0x29a82f(0x92))/0x8*(-parseInt(_0x29a82f(0x9e))/0x9)+-parseInt(_0x29a82f(0x98))/0xa;if(_0x1e822e===_0x531b4b)break;else _0x357d16['push'](_0x357d16['shift']());}catch(_0x378929){_0x357d16['push'](_0x357d16['shift']());}}}(_0x1a96,0xd86ac));function _0x1a96(){const _0x35c71c=['\x20and\x20branch\x20\x27','5977745tegizQ','14662680GDRSXJ','kwHPl','111jMriaZ','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','7656006QXnyrV','.\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`.','180veirtR','cNlIf','CLAUDE_SESSION_ID','2499693QLUjha','20850nYdYwu','247768AtDWjW','12binjzS','61818dncnMR','xFwNE'];_0x1a96=function(){return _0x35c71c;};return _0x1a96();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x213b(_0x2d09b3,_0xf9afed){_0x2d09b3=_0x2d09b3-0x8f;const _0x1a9614=_0x1a96();let _0x213bd0=_0x1a9614[_0x2d09b3];return _0x213bd0;}export async function disable(_0x1d778a){const _0x47a246=_0x213b,_0x52b3a8={'cNlIf':function(_0xcaf2d8,_0x3582e6){return _0xcaf2d8(_0x3582e6);},'kwHPl':function(_0x1f2660,_0x3131a5){return _0x1f2660!==_0x3131a5;},'fMRhW':function(_0xfad603,_0x32c240){return _0xfad603!==_0x32c240;},'xFwNE':function(_0x214b1e,_0x4c6307){return _0x214b1e(_0x4c6307);},'aJWRV':'main','qBcME':'master'},_0x5042fe=_0x1d778a||process['env'][_0x47a246(0x8f)]||'';_0x5042fe&&_0x52b3a8[_0x47a246(0x9f)](disableSession,_0x5042fe);const _0x4e3f5d=getCurrentBranch();_0x4e3f5d&&_0x52b3a8[_0x47a246(0x99)](_0x4e3f5d,'main')&&_0x52b3a8['fMRhW'](_0x4e3f5d,'master')&&_0x52b3a8[_0x47a246(0x95)](disableBranch,_0x4e3f5d),printBlock(_0x47a246(0x9b)+(_0x4e3f5d&&_0x52b3a8['fMRhW'](_0x4e3f5d,_0x52b3a8['aJWRV'])&&_0x4e3f5d!==_0x52b3a8['qBcME']?_0x47a246(0x96)+_0x4e3f5d+'\x27':'')+_0x47a246(0x9d));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4a7578,_0x14a2d4){const _0x19e697=_0x1c98,_0x42bb72=_0x4a7578();while(!![]){try{const _0x43ad51=parseInt(_0x19e697(0x165))/0x1+parseInt(_0x19e697(0x162))/0x2+parseInt(_0x19e697(0x16e))/0x3+parseInt(_0x19e697(0x164))/0x4+-parseInt(_0x19e697(0x166))/0x5*(parseInt(_0x19e697(0x16a))/0x6)+parseInt(_0x19e697(0x16d))/0x7+-parseInt(_0x19e697(0x16f))/0x8;if(_0x43ad51===_0x14a2d4)break;else _0x42bb72['push'](_0x42bb72['shift']());}catch(_0x3e6f0c){_0x42bb72['push'](_0x42bb72['shift']());}}}(_0x3349,0x6f228));function _0x1c98(_0x2c08cb,_0x246544){_0x2c08cb=_0x2c08cb-0x162;const _0x334969=_0x3349();let _0x1c98ef=_0x334969[_0x2c08cb];return _0x1c98ef;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x3349(){const _0x24fd38=['827287IbmeSF','13105FrGWSD','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','\x0a\x0a**Branch\x20\x27','master','876cYfAjj','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','3853906AOoqNB','512790MuRWep','13240136ztTeYh','Fcbfz','#\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`','1263894XkDRYJ','XEPxp','1248676DovZGV'];_0x3349=function(){return _0x24fd38;};return _0x3349();}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x18aa44){const _0x7f938a=_0x1c98,_0x498d11={'fCZBf':function(_0x58a43c){return _0x58a43c();},'XEPxp':_0x7f938a(0x16c),'Fcbfz':function(_0x1a5e18,_0x1d6d7e){return _0x1a5e18(_0x1d6d7e);},'jFSjr':'main'},_0x4727ca=_0x18aa44||process['env']['CLAUDE_SESSION_ID']||'',_0x622bfa=Boolean(_0x18aa44),_0x3768d4=await _0x498d11['fCZBf'](getToken);if(!_0x3768d4){const _0x191e8a=_0x622bfa?'ranger\x20setup\x20--opencode':'ranger\x20setup',_0x436b75=_0x622bfa?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x498d11[_0x7f938a(0x163)];_0x498d11['Fcbfz'](printBlock,_0x7f938a(0x171)+_0x191e8a+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x436b75);return;}try{await _0x498d11['fCZBf'](update);}catch{}_0x4727ca&&enableSession(_0x4727ca);const _0x58daec=getCurrentBranch(),_0x14c1b5=_0x58daec&&_0x58daec!==_0x498d11['jFSjr']&&_0x58daec!==_0x7f938a(0x169)?_0x7f938a(0x168)+_0x58daec+_0x7f938a(0x167):'',_0x3e0101=getRangerSkillContent();_0x498d11[_0x7f938a(0x170)](printBlock,'#\x20RANGER\x20ENABLED'+_0x14c1b5+_0x7f938a(0x16b)+_0x3e0101+'\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`.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x3a1e(_0x3f76e9,_0x26bc22){_0x3f76e9=_0x3f76e9-0x170;const _0x685224=_0x6852();let _0x3a1e9a=_0x685224[_0x3f76e9];return _0x3a1e9a;}(function(_0x284375,_0x5829d3){const _0x4a4329=_0x3a1e,_0x3e0fef=_0x284375();while(!![]){try{const _0x50d023=parseInt(_0x4a4329(0x172))/0x1*(parseInt(_0x4a4329(0x173))/0x2)+parseInt(_0x4a4329(0x171))/0x3+parseInt(_0x4a4329(0x174))/0x4+-parseInt(_0x4a4329(0x175))/0x5+-parseInt(_0x4a4329(0x170))/0x6+-parseInt(_0x4a4329(0x177))/0x7+-parseInt(_0x4a4329(0x176))/0x8;if(_0x50d023===_0x5829d3)break;else _0x3e0fef['push'](_0x3e0fef['shift']());}catch(_0x4f22ad){_0x3e0fef['push'](_0x3e0fef['shift']());}}}(_0x6852,0x5cf65));function _0x6852(){const _0x268de0=['1390aVpgZW','2378540BiiFob','2341335NVhIql','2858608kUMtSe','1596651nfPhLB','3098238XeaVwQ','1793856eDJFJk','1091aVJBRJ'];_0x6852=function(){return _0x268de0;};return _0x6852();}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x20ea07){const _0x29f983={'HhoKH':function(_0xdc679,_0x2f6a33){return _0xdc679(_0x2f6a33);}},_0x2afe6a=await getEnabledSessionId(_0x20ea07);if(!_0x2afe6a)return;_0x29f983['HhoKH'](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(_0x2f1d36,_0x289bbe){var _0x5deed7=_0x4bb9,_0x3e1ce2=_0x2f1d36();while(!![]){try{var _0x5414d0=parseInt(_0x5deed7(0xf2))/0x1*(-parseInt(_0x5deed7(0xea))/0x2)+-parseInt(_0x5deed7(0xf4))/0x3*(parseInt(_0x5deed7(0xec))/0x4)+parseInt(_0x5deed7(0xf3))/0x5*(parseInt(_0x5deed7(0xef))/0x6)+-parseInt(_0x5deed7(0xf1))/0x7+-parseInt(_0x5deed7(0xed))/0x8+-parseInt(_0x5deed7(0xeb))/0x9+parseInt(_0x5deed7(0xf0))/0xa*(parseInt(_0x5deed7(0xee))/0xb);if(_0x5414d0===_0x289bbe)break;else _0x3e1ce2['push'](_0x3e1ce2['shift']());}catch(_0x574134){_0x3e1ce2['push'](_0x3e1ce2['shift']());}}}(_0x30a9,0xed050));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x30a9(){var _0xe7457c=['13210218ikgTVZ','3537084wIwVpe','11024304HZNmxO','1424467ZJyhmn','1041006MSpmZH','570svLSKX','3583076SSceQy','1631249FHhxpY','10NKTQcV','6eUHwGe','2hzKrbB'];_0x30a9=function(){return _0xe7457c;};return _0x30a9();}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 _0x4bb9(_0x279bd0,_0x19f37c){_0x279bd0=_0x279bd0-0xea;var _0x30a949=_0x30a9();var _0x4bb9ac=_0x30a949[_0x279bd0];return _0x4bb9ac;}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2f759b,_0x240493){const _0x291d84=_0x4564,_0x52aa21=_0x2f759b();while(!![]){try{const _0x9c882b=parseInt(_0x291d84(0xd5))/0x1*(parseInt(_0x291d84(0xd6))/0x2)+parseInt(_0x291d84(0xd1))/0x3*(parseInt(_0x291d84(0xd0))/0x4)+-parseInt(_0x291d84(0xcb))/0x5+-parseInt(_0x291d84(0xd2))/0x6+-parseInt(_0x291d84(0xd9))/0x7*(-parseInt(_0x291d84(0xd8))/0x8)+-parseInt(_0x291d84(0xd7))/0x9*(-parseInt(_0x291d84(0xdb))/0xa)+-parseInt(_0x291d84(0xce))/0xb;if(_0x9c882b===_0x240493)break;else _0x52aa21['push'](_0x52aa21['shift']());}catch(_0x7afa2e){_0x52aa21['push'](_0x52aa21['shift']());}}}(_0x5d72,0xcaa93));function _0x5d72(){const _0x252ba4=['344638LfoXGJ','HTJIU','30ciyumy','5418125JtptfS','log','trim','18400822VNlXDG','cAWcW','140xDXgTS','128451HvCeFt','4190496cGoBWr','RDBMh','parse','861asmFUq','3302njVTCN','845064VPMjaV','176MSVUVr'];_0x5d72=function(){return _0x252ba4;};return _0x5d72();}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x2d9a87){const _0x44131a=_0x4564;console[_0x44131a(0xcc)](_0x2d9a87);}export async function readHookInput(){const _0x3f564d=_0x4564;let _0x5a79b6='';try{for await(const _0x288f2a of process['stdin']){_0x5a79b6+=_0x288f2a;}}catch{return null;}if(!_0x5a79b6[_0x3f564d(0xcd)]())return null;try{return JSON[_0x3f564d(0xd4)](_0x5a79b6);}catch{return null;}}function _0x4564(_0x26f732,_0x13406a){_0x26f732=_0x26f732-0xcb;const _0x5d72dd=_0x5d72();let _0x4564a9=_0x5d72dd[_0x26f732];return _0x4564a9;}export async function getEnabledSessionId(_0x22b12e){const _0x177334=_0x4564,_0x5b3ec6={'HTJIU':function(_0x5503a8){return _0x5503a8();},'cAWcW':function(_0x40e11d,_0x229acb){return _0x40e11d(_0x229acb);}};if(_0x22b12e)return isSessionEnabled(_0x22b12e)?_0x22b12e:null;const _0x300bfb=await _0x5b3ec6[_0x177334(0xda)](readHookInput),_0x202a7a=_0x300bfb?.['session_id'];if(!_0x202a7a||!_0x5b3ec6[_0x177334(0xcf)](isSessionEnabled,_0x202a7a))return null;return _0x202a7a;}export async function getEnabledHookContext(_0x135f28){const _0x419975=_0x4564,_0x584f1b={'RDBMh':function(_0xf71ce7,_0x13377a){return _0xf71ce7(_0x13377a);}};if(_0x135f28){if(!isSessionEnabled(_0x135f28))return null;return{'sessionId':_0x135f28,'input':{'session_id':_0x135f28}};}const _0x1f749a=await readHookInput(),_0x5abf2c=_0x1f749a?.['session_id'];if(!_0x5abf2c||!_0x584f1b[_0x419975(0xd3)](isSessionEnabled,_0x5abf2c))return null;return{'sessionId':_0x5abf2c,'input':_0x1f749a};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x348234,_0x399c09){const _0x5ecc50=_0x4259,_0x4245fb=_0x348234();while(!![]){try{const _0x1951b1=-parseInt(_0x5ecc50(0x85))/0x1+parseInt(_0x5ecc50(0x7e))/0x2+parseInt(_0x5ecc50(0x88))/0x3*(-parseInt(_0x5ecc50(0x83))/0x4)+parseInt(_0x5ecc50(0x84))/0x5+-parseInt(_0x5ecc50(0x86))/0x6*(parseInt(_0x5ecc50(0x7f))/0x7)+parseInt(_0x5ecc50(0x89))/0x8*(parseInt(_0x5ecc50(0x80))/0x9)+-parseInt(_0x5ecc50(0x8b))/0xa*(parseInt(_0x5ecc50(0x81))/0xb);if(_0x1951b1===_0x399c09)break;else _0x4245fb['push'](_0x4245fb['shift']());}catch(_0x5ccddf){_0x4245fb['push'](_0x4245fb['shift']());}}}(_0x879b,0xc9d3f));import{printBlock,getEnabledHookContext}from'./output.js';function _0x879b(){const _0x3825e3=['3273186uqIvKO','474096kVGCRf','117wrDjGz','27586691sMUBwL','permission_mode','1752HWFeyT','5551945PMVEJC','127469KcuoTS','12NEzJee','sessionId','3168wktLbK','808024EWdfRG','LHxSx','10ejAxXx'];_0x879b=function(){return _0x3825e3;};return _0x879b();}function _0x4259(_0x4b8a59,_0x31f108){_0x4b8a59=_0x4b8a59-0x7e;const _0x879b4e=_0x879b();let _0x42598f=_0x879b4e[_0x4b8a59];return _0x42598f;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x53a601){const _0x68fba9=_0x4259,_0x7c6fd2={'yuhXE':function(_0x2eaabb,_0x920b4a){return _0x2eaabb(_0x920b4a);},'LHxSx':'plan'},_0x24f698=await _0x7c6fd2['yuhXE'](getEnabledHookContext,_0x53a601);if(!_0x24f698)return;if(_0x24f698['input'][_0x68fba9(0x82)]!==_0x7c6fd2[_0x68fba9(0x8a)])return;if(!shouldShowPlanReminder(_0x24f698[_0x68fba9(0x87)]))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===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x40fbf0,_0x4936eb){const _0x16b9e1=_0x5c3e,_0x1e8bea=_0x40fbf0();while(!![]){try{const _0x280dd8=parseInt(_0x16b9e1(0xa7))/0x1+-parseInt(_0x16b9e1(0xae))/0x2*(-parseInt(_0x16b9e1(0xaf))/0x3)+-parseInt(_0x16b9e1(0xa8))/0x4*(-parseInt(_0x16b9e1(0xaa))/0x5)+-parseInt(_0x16b9e1(0xa6))/0x6*(parseInt(_0x16b9e1(0xb0))/0x7)+-parseInt(_0x16b9e1(0xad))/0x8*(-parseInt(_0x16b9e1(0xb1))/0x9)+parseInt(_0x16b9e1(0xb2))/0xa*(-parseInt(_0x16b9e1(0xa9))/0xb)+-parseInt(_0x16b9e1(0xa5))/0xc*(-parseInt(_0x16b9e1(0xac))/0xd);if(_0x280dd8===_0x4936eb)break;else _0x1e8bea['push'](_0x1e8bea['shift']());}catch(_0x12f8da){_0x1e8bea['push'](_0x1e8bea['shift']());}}}(_0x533c,0x585fe));import{printBlock,getEnabledSessionId}from'./output.js';function _0x533c(){const _0x17c70d=['248zkAhBD','30hwSbCa','45537qiVwHt','35fIzbwi','6066xSJsnZ','90UWzRdA','2112stvSUx','549864iNqUje','588082rULLgE','310372sJBWYm','769208sSoWcU','25ajBgUe','===\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===','16614TnfLGB'];_0x533c=function(){return _0x17c70d;};return _0x533c();}function _0x5c3e(_0x26ad77,_0x139acf){_0x26ad77=_0x26ad77-0xa5;const _0x533c4a=_0x533c();let _0x5c3ee0=_0x533c4a[_0x26ad77];return _0x5c3ee0;}export async function planStart(_0xf42294){const _0x525b0b=_0x5c3e,_0x389aaa={'Hrjis':function(_0xd95b2a,_0x28b129){return _0xd95b2a(_0x28b129);},'ZSJKi':function(_0xd52eca,_0x41a7c8){return _0xd52eca(_0x41a7c8);}},_0x5e8f52=await _0x389aaa['Hrjis'](getEnabledSessionId,_0xf42294);if(!_0x5e8f52)return;_0x389aaa['ZSJKi'](printBlock,_0x525b0b(0xab));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x26519a,_0x2e1996){const _0x3a8b0f=_0x2cc6,_0x5c5f51=_0x26519a();while(!![]){try{const _0x2dc4ee=parseInt(_0x3a8b0f(0x1df))/0x1+-parseInt(_0x3a8b0f(0x1de))/0x2*(parseInt(_0x3a8b0f(0x1d7))/0x3)+-parseInt(_0x3a8b0f(0x1db))/0x4+parseInt(_0x3a8b0f(0x1d8))/0x5*(parseInt(_0x3a8b0f(0x1d4))/0x6)+parseInt(_0x3a8b0f(0x1d9))/0x7*(parseInt(_0x3a8b0f(0x1d5))/0x8)+-parseInt(_0x3a8b0f(0x1e3))/0x9+parseInt(_0x3a8b0f(0x1d3))/0xa*(parseInt(_0x3a8b0f(0x1dd))/0xb);if(_0x2dc4ee===_0x2e1996)break;else _0x5c5f51['push'](_0x5c5f51['shift']());}catch(_0x1514ff){_0x5c5f51['push'](_0x5c5f51['shift']());}}}(_0x3861,0x40016));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x2cc6(_0x10fef6,_0x59db42){_0x10fef6=_0x10fef6-0x1d3;const _0x38612a=_0x3861();let _0x2cc69a=_0x38612a[_0x10fef6];return _0x2cc69a;}function _0x3861(){const _0x24a073=['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).','556806bMVDki','1960340jWXvPu','84833TNxAjQ','log','1633596qKDmMa','PostToolUse','396aIwDiF','2IXhZgI','49446ktnjjQ','stringify','KWkRO','xJRee','1225503SqzoWl','139540eTPSRN','6xbzdFj','32zWExbG'];_0x3861=function(){return _0x24a073;};return _0x3861();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x447002){const _0x996f0d=_0x2cc6,_0x13c6fe={'xJRee':function(_0x53a4d7,_0x2d5819){return _0x53a4d7(_0x2d5819);},'zzjkL':function(_0xb62abd){return _0xb62abd();},'KWkRO':_0x996f0d(0x1dc)},_0x12fa1f=await _0x13c6fe[_0x996f0d(0x1e2)](getEnabledSessionId,_0x447002);if(!_0x12fa1f)return;updateBranchTracking(_0x12fa1f);const _0xc7f7dc=await _0x13c6fe['zzjkL'](getToken);if(!_0xc7f7dc)return;const _0x3634ac=_0x13c6fe[_0x996f0d(0x1e2)](getSessionEntry,_0x12fa1f);if(_0x3634ac){const _0x55cd94={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x996f0d(0x1d6)}};console['log'](JSON[_0x996f0d(0x1e0)](_0x55cd94));return;}const _0x2ca76b={'hookSpecificOutput':{'hookEventName':_0x13c6fe[_0x996f0d(0x1e1)],'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[_0x996f0d(0x1da)](JSON[_0x996f0d(0x1e0)](_0x2ca76b));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x5860(_0x308e7a,_0x15bd1d){_0x308e7a=_0x308e7a-0x105;const _0x4c648f=_0x4c64();let _0x586031=_0x4c648f[_0x308e7a];return _0x586031;}(function(_0x1f79e7,_0x39aef0){const _0x57cf78=_0x5860,_0xcb4b5=_0x1f79e7();while(!![]){try{const _0x559973=parseInt(_0x57cf78(0x106))/0x1*(parseInt(_0x57cf78(0x108))/0x2)+-parseInt(_0x57cf78(0x107))/0x3+-parseInt(_0x57cf78(0x10b))/0x4+-parseInt(_0x57cf78(0x10a))/0x5+parseInt(_0x57cf78(0x10c))/0x6+-parseInt(_0x57cf78(0x105))/0x7+parseInt(_0x57cf78(0x109))/0x8;if(_0x559973===_0x39aef0)break;else _0xcb4b5['push'](_0xcb4b5['shift']());}catch(_0x1293f2){_0xcb4b5['push'](_0xcb4b5['shift']());}}}(_0x4c64,0x7f269));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x4c64(){const _0xcb6d0b=['2zLoxOE','8849632GdavLk','2340560XUkQVp','1928312mTrBDZ','4690794FUhGVd','307412driDSA','453803dypJdV','2480673OFIySr'];_0x4c64=function(){return _0xcb6d0b;};return _0x4c64();}export async function preCompact(_0x747a51){const _0x3d4898={'MDbIt':function(_0x3fb277,_0x328dcc){return _0x3fb277(_0x328dcc);}},_0x4b09a5=await _0x3d4898['MDbIt'](getEnabledSessionId,_0x747a51);if(!_0x4b09a5)return;try{const _0x23a4ef=await getToken();if(!_0x23a4ef)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 _0x2cbb(){const _0x5ca2ff=['2688976rwsuad','849387mMnpMX','3615576CmXbkJ','PDdHN','4483488sIqAxk','84CoNLrH','14304ZaBFYg','50874BbHWiX','4626ZBWgRl','5pwbAJW','56ckKxVm','CLAUDE_SESSION_ID','20pfiCWb','27670TUHVvQ'];_0x2cbb=function(){return _0x5ca2ff;};return _0x2cbb();}(function(_0x4f03a7,_0x4b7af6){const _0x1ad77f=_0x3b8b,_0x1a45d0=_0x4f03a7();while(!![]){try{const _0x2a7f92=parseInt(_0x1ad77f(0xaa))/0x1*(parseInt(_0x1ad77f(0xb0))/0x2)+parseInt(_0x1ad77f(0xa8))/0x3+-parseInt(_0x1ad77f(0xa6))/0x4*(-parseInt(_0x1ad77f(0xad))/0x5)+-parseInt(_0x1ad77f(0xab))/0x6*(-parseInt(_0x1ad77f(0xae))/0x7)+parseInt(_0x1ad77f(0xa4))/0x8+parseInt(_0x1ad77f(0xac))/0x9*(-parseInt(_0x1ad77f(0xa3))/0xa)+parseInt(_0x1ad77f(0xa5))/0xb*(-parseInt(_0x1ad77f(0xa9))/0xc);if(_0x2a7f92===_0x4b7af6)break;else _0x1a45d0['push'](_0x1a45d0['shift']());}catch(_0xc20ba9){_0x1a45d0['push'](_0x1a45d0['shift']());}}}(_0x2cbb,0xefe63));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x3b8b(_0x463b59,_0x377238){_0x463b59=_0x463b59-0xa3;const _0x2cbb5f=_0x2cbb();let _0x3b8b1b=_0x2cbb5f[_0x463b59];return _0x3b8b1b;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x146cb3){const _0xb631b7=_0x3b8b,_0x2c2fd2={'UwcbT':'clear','PDdHN':function(_0x2183ef,_0x497dc3){return _0x2183ef(_0x497dc3);}},_0x1b91fe=process['env'][_0xb631b7(0xaf)];let _0x42e63d=_0x146cb3,_0x4e1131;if(!_0x146cb3){if(_0x1b91fe&&!isSessionEnabled(_0x1b91fe))return;const _0x3ad5b5=await readHookInput();_0x42e63d=_0x3ad5b5?.['session_id']||_0x1b91fe,_0x4e1131=_0x3ad5b5?.['reason'];}if(!_0x42e63d)return;_0x4e1131===_0x2c2fd2['UwcbT']&&_0x2c2fd2[_0xb631b7(0xa7)](recordEnabledSessionCleared,_0x42e63d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x1c0dad,_0xa48db7){const _0x447a9f=_0x4ced,_0x15d174=_0x1c0dad();while(!![]){try{const _0x276824=parseInt(_0x447a9f(0x94))/0x1*(-parseInt(_0x447a9f(0xa7))/0x2)+-parseInt(_0x447a9f(0xa6))/0x3*(parseInt(_0x447a9f(0x9f))/0x4)+parseInt(_0x447a9f(0x8a))/0x5*(parseInt(_0x447a9f(0xa1))/0x6)+parseInt(_0x447a9f(0x90))/0x7*(-parseInt(_0x447a9f(0xa4))/0x8)+-parseInt(_0x447a9f(0x9a))/0x9*(-parseInt(_0x447a9f(0xa3))/0xa)+parseInt(_0x447a9f(0x98))/0xb+parseInt(_0x447a9f(0xa5))/0xc;if(_0x276824===_0xa48db7)break;else _0x15d174['push'](_0x15d174['shift']());}catch(_0x573bb6){_0x15d174['push'](_0x15d174['shift']());}}}(_0x3e9b,0xdf7d4));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';import{resolveHookMode}from'../utils/environment.js';function _0x4ced(_0x12db23,_0x4df96a){_0x12db23=_0x12db23-0x8a;const _0x3e9b61=_0x3e9b();let _0x4cedab=_0x3e9b61[_0x12db23];return _0x4cedab;}const RANGER_AUTO_ENABLED_PROMPT='=================================================================\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=================================================================';function _0x3e9b(){const _0x30aae2=['DCwjJ','\x20(Branch:\x20','session_id','13062FiqGaM','GdhkH','KiloB','log','2579214RYlurc','MCvJR','9HpyMiS','UPpMX','CLAUDE_ENV_FILE','SessionStart','master','40ovflqO','source','126QJFCMA','parse','5911980CaiiRO','12728zmSyau','22910940xtmIJM','212304YmLPrA','32zKPDcU','stdin','200215koLzBs','RzvFV','env','EasGq','export\x20CLAUDE_SESSION_ID=\x22','stringify','7672iZkLJU'];_0x3e9b=function(){return _0x30aae2;};return _0x3e9b();}export async function sessionStart(_0x31898b){const _0x152512=_0x4ced,_0xc266d3={'liLUG':_0x152512(0xa0),'zkbsy':function(_0x52d267,_0x47c75c){return _0x52d267&&_0x47c75c;},'UPpMX':function(_0x4c1c01,_0x275720){return _0x4c1c01(_0x275720);},'GdhkH':function(_0x43f3d5,_0x35c7bd){return _0x43f3d5(_0x35c7bd);},'OctqE':function(_0x5551bb){return _0x5551bb();},'KiloB':function(_0x328be8,_0x23c3b4){return _0x328be8(_0x23c3b4);},'PVZmj':'hook:session-start','DCwjJ':function(_0x14e834){return _0x14e834();},'EasGq':function(_0x9b7bbd,_0x7e83fa){return _0x9b7bbd!==_0x7e83fa;},'MCvJR':_0x152512(0x9e),'RzvFV':function(_0x3ed5a7,_0x22263f){return _0x3ed5a7+_0x22263f;}};let _0x3799ec=_0x31898b||'',_0x267535;if(!_0x31898b){let _0x202ee9='';for await(const _0x3b4ac9 of process[_0x152512(0xa8)]){_0x202ee9+=_0x3b4ac9;}try{const _0x55a839=JSON[_0x152512(0xa2)](_0x202ee9);_0x3799ec=_0x55a839[_0x152512(0x93)]||'',_0x267535=_0x55a839[_0xc266d3['liLUG']];}catch{}const _0x48fefa=process[_0x152512(0x8c)][_0x152512(0x9c)];if(_0xc266d3['zkbsy'](_0x48fefa,_0x3799ec))try{await appendFile(_0x48fefa,_0x152512(0x8e)+_0x3799ec+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x3799ec){_0xc266d3[_0x152512(0x9b)](shouldAutoEnableAfterClear,_0x267535)&&_0xc266d3[_0x152512(0x9b)](autoEnableAfterClear,_0x3799ec);_0xc266d3['GdhkH'](initBranchTracking,_0x3799ec);_0xc266d3['OctqE'](resolveHookMode)==='on'&&_0xc266d3[_0x152512(0x96)](enableSession,_0x3799ec);const _0x50481c=_0xc266d3[_0x152512(0x96)](isSessionEnabled,_0x3799ec);try{const _0x176696=_0xc266d3[_0x152512(0x95)](createTelemetryCollector,_0xc266d3['PVZmj']);await _0x176696['trackCommandStart']({'sessionId':_0x3799ec,'hooksEnabled':_0x50481c}),await _0x176696['trackCommandEnd']('success');}catch{}if(_0x50481c){const _0x1968b1=_0xc266d3[_0x152512(0x91)](getCurrentBranch),_0x22a6f4=_0x1968b1&&_0xc266d3['EasGq'](_0x1968b1,'main')&&_0xc266d3[_0x152512(0x8d)](_0x1968b1,_0xc266d3[_0x152512(0x99)])?_0x152512(0x92)+_0x1968b1+')':'',_0x5a3b59={'hookSpecificOutput':{'hookEventName':_0x152512(0x9d),'additionalContext':_0xc266d3[_0x152512(0x8b)](RANGER_AUTO_ENABLED_PROMPT,_0x22a6f4)}};console[_0x152512(0x97)](JSON[_0x152512(0x8f)](_0x5a3b59));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x57fc65,_0x2ca9fd){const _0x50a1f0=_0x2ee6,_0x543a48=_0x57fc65();while(!![]){try{const _0x2da879=parseInt(_0x50a1f0(0x8d))/0x1+parseInt(_0x50a1f0(0xa2))/0x2*(parseInt(_0x50a1f0(0x8c))/0x3)+-parseInt(_0x50a1f0(0x92))/0x4+parseInt(_0x50a1f0(0x99))/0x5+parseInt(_0x50a1f0(0x8e))/0x6*(parseInt(_0x50a1f0(0x94))/0x7)+-parseInt(_0x50a1f0(0x9b))/0x8+parseInt(_0x50a1f0(0xa5))/0x9;if(_0x2da879===_0x2ca9fd)break;else _0x543a48['push'](_0x543a48['shift']());}catch(_0x2e3bac){_0x543a48['push'](_0x543a48['shift']());}}}(_0x3b19,0xd9e10));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';function _0x2ee6(_0x40c854,_0x40a9ce){_0x40c854=_0x40c854-0x8c;const _0x3b1901=_0x3b19();let _0x2ee6b6=_0x3b1901[_0x40c854];return _0x2ee6b6;}import{createTelemetryCollector}from'../utils/telemetry.js';function _0x3b19(){const _0x237823=['log','success','blocked','currentSessionId','Stop','featureId','2KtEDlR','HdOpv','trackCommandEnd','7059294vxwqHW','mzMLU','wvBuA','verification_in_progress','3178533eYYNAd','163536iEUZCl','4440rXxWrj','qLpii','rmFOF','checklistItems','5913204VvwjVb','some','728PBnCcm','RvdbM','https://dashboard.ranger.net/features/','status','sessionId','3164470AlDCso','incomplete','2772272qibQKc'];_0x3b19=function(){return _0x237823;};return _0x3b19();}export async function stopHook(_0xc86c9c){const _0x15ef1b=_0x2ee6,_0x3e9cd4={'HdOpv':function(_0x49d8a9,_0x1545e7,_0x475d27,_0x52d671){return _0x49d8a9(_0x1545e7,_0x475d27,_0x52d671);},'SdzSD':function(_0x3657f2,_0x1929ad){return _0x3657f2(_0x1929ad);},'qLpii':function(_0x3af8ed,_0x3e01c2){return _0x3af8ed(_0x3e01c2);},'RvdbM':function(_0x273f24,_0x104162){return _0x273f24&&_0x104162;},'wvBuA':function(_0x2c712f,_0x9b84b6){return _0x2c712f(_0x9b84b6);},'mzMLU':function(_0x2bf888,_0x1e8656){return _0x2bf888&&_0x1e8656;},'rmFOF':function(_0x52e168,_0x5a33bc,_0x573926,_0x317647){return _0x52e168(_0x5a33bc,_0x573926,_0x317647);}},_0x5833ef=await getEnabledHookContext(_0xc86c9c),_0x5d8c15=_0x5833ef?.[_0x15ef1b(0x98)]??null;let _0x54afc5=!![];if(!_0x5d8c15){await _0x3e9cd4[_0x15ef1b(0xa3)](trackStop,_0x5d8c15,![],_0x54afc5);return;}try{const _0x363bbe=_0x3e9cd4['SdzSD'](getSessionEntry,_0x5d8c15);if(!_0x363bbe){await trackStop(_0x5d8c15,!![],_0x54afc5);return;}const _0x37b2d6=await getToken(),_0x766aae=_0x15ef1b(0x96)+_0x363bbe[_0x15ef1b(0xa1)];let _0x3a16b0=null,_0x9d6751=![],_0x5b161c=![];if(_0x37b2d6)try{const _0x444906=await _0x3e9cd4[_0x15ef1b(0x8f)](getFeature,_0x363bbe[_0x15ef1b(0xa1)]);_0x3a16b0=_0x444906[_0x15ef1b(0x9f)]??null;const _0x11a794=_0x444906[_0x15ef1b(0x91)]['filter'](_0x1fb962=>_0x1fb962[_0x15ef1b(0x98)]===_0x3a16b0);_0x9d6751=_0x11a794[_0x15ef1b(0x93)](_0x35c932=>_0x35c932[_0x15ef1b(0x97)]!=='verified'&&_0x35c932[_0x15ef1b(0x97)]!==_0x15ef1b(0x9e)&&_0x35c932['status']!=='closed'&&_0x35c932[_0x15ef1b(0x97)]!==_0x15ef1b(0x9a)),_0x5b161c=_0x11a794[_0x15ef1b(0x93)](_0xd95248=>_0xd95248[_0x15ef1b(0x97)]===_0x15ef1b(0xa8));}catch{}if(_0x3e9cd4[_0x15ef1b(0x95)](_0x37b2d6,_0x3a16b0)&&_0x9d6751){if(!_0x5b161c&&_0x3e9cd4[_0x15ef1b(0xa7)](shouldShowStopReminder,_0x5d8c15)){const _0x1df1e5={'hookSpecificOutput':{'hookEventName':_0x15ef1b(0xa0),'additionalContext':'RANGER:\x20The\x20active\x20feature\x20review\x20still\x20has\x20unfinished\x20checklist\x20items.\x20Before\x20responding\x20to\x20the\x20user,\x20if\x20this\x20UI\x20work\x20is\x20ready,\x20run\x20`ranger\x20show`\x20and\x20then\x20`ranger\x20go`\x20for\x20the\x20relevant\x20scenario(s).\x20If\x20it\x20is\x20not\x20ready\x20for\x20browser\x20verification\x20yet,\x20continue\x20implementing.\x20Dashboard:\x20'+_0x766aae}};console[_0x15ef1b(0x9c)](JSON['stringify'](_0x1df1e5));}}if(_0x3e9cd4[_0x15ef1b(0xa6)](_0x37b2d6,_0x3a16b0)&&!_0x9d6751)try{await concludeSession(_0x363bbe['featureId'],_0x3a16b0);}catch{}await trackStop(_0x5d8c15,!![],_0x54afc5);return;}catch{await _0x3e9cd4[_0x15ef1b(0x90)](trackStop,_0x5d8c15,!![],_0x54afc5);return;}}async function trackStop(_0x2d99b5,_0x59c372,_0x2c118e){const _0xd7e59a=_0x2ee6,_0x37ce21={'bqGix':'hook:stop','AXFQD':_0xd7e59a(0x9d)};try{const _0x1b98dd=createTelemetryCollector(_0x37ce21['bqGix']);await _0x1b98dd['trackCommandStart']({'sessionId':_0x2d99b5??undefined,'hooksEnabled':_0x59c372,'stopAllowed':_0x2c118e}),await _0x1b98dd[_0xd7e59a(0xa4)](_0x37ce21['AXFQD']);}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xb6938d,_0x4401b3){var _0x3cb314=_0x482c,_0x2732a3=_0xb6938d();while(!![]){try{var _0x18103c=parseInt(_0x3cb314(0x1a7))/0x1+-parseInt(_0x3cb314(0x1ae))/0x2*(-parseInt(_0x3cb314(0x1a9))/0x3)+-parseInt(_0x3cb314(0x1a6))/0x4+parseInt(_0x3cb314(0x1ab))/0x5*(-parseInt(_0x3cb314(0x1a5))/0x6)+-parseInt(_0x3cb314(0x1a8))/0x7*(parseInt(_0x3cb314(0x1aa))/0x8)+parseInt(_0x3cb314(0x1ad))/0x9+-parseInt(_0x3cb314(0x1ac))/0xa*(parseInt(_0x3cb314(0x1a4))/0xb);if(_0x18103c===_0x4401b3)break;else _0x2732a3['push'](_0x2732a3['shift']());}catch(_0x1a5482){_0x2732a3['push'](_0x2732a3['shift']());}}}(_0x5640,0x5906f));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';function _0x5640(){var _0x59103d=['635144bNeRHq','225545eWPTYW','60OZoyGT','6355143RyVScI','53344zgGOoI','1142053XCsQQO','6kDmMPT','1046760TWalKI','132972OQeeNy','21IaqFao','78vZANik'];_0x5640=function(){return _0x59103d;};return _0x5640();}export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';function _0x482c(_0x45870e,_0x1e020d){_0x45870e=_0x45870e-0x1a4;var _0x5640dd=_0x5640();var _0x482c8a=_0x5640dd[_0x45870e];return _0x482c8a;}export{migrateProfile}from'./migrateProfile.js';
|