@ranger-testing/ranger-cli 3.1.4 → 3.1.5-alpha.0c090c6-50
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/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 +6 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x8ab750=_0x465d;(function(_0x48897e,_0x2653b6){const _0x367b41=_0x465d,_0x3fa4dc=_0x48897e();while(!![]){try{const _0x3881da=-parseInt(_0x367b41(0x1f6))/0x1*(-parseInt(_0x367b41(0x201))/0x2)+-parseInt(_0x367b41(0x256))/0x3+-parseInt(_0x367b41(0x26c))/0x4*(-parseInt(_0x367b41(0x25d))/0x5)+parseInt(_0x367b41(0x1ef))/0x6*(parseInt(_0x367b41(0x244))/0x7)+-parseInt(_0x367b41(0x278))/0x8+parseInt(_0x367b41(0x270))/0x9*(parseInt(_0x367b41(0x27d))/0xa)+parseInt(_0x367b41(0x22b))/0xb*(-parseInt(_0x367b41(0x2a9))/0xc);if(_0x3881da===_0x2653b6)break;else _0x3fa4dc['push'](_0x3fa4dc['shift']());}catch(_0x505d80){_0x3fa4dc['push'](_0x3fa4dc['shift']());}}}(_0x229a,0xa78cf));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x4615f1 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=_0x1e26dd=>_0x8ab750(0x22c)+_0x1e26dd+'\x1b[0m';function getGitRepoUrl(){const _0x2e5d32=_0x8ab750,_0xe3f904={'ymHFO':'git\x20remote\x20get-url\x20origin','mBwLJ':_0x2e5d32(0x208),'inWGo':_0x2e5d32(0x261)};try{const _0x254fd8=execSync(_0xe3f904['ymHFO'],{'encoding':_0x2e5d32(0x222),'stdio':[_0xe3f904['mBwLJ'],_0xe3f904[_0x2e5d32(0x2b2)],'pipe']})[_0x2e5d32(0x2a6)]();return _0x254fd8['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0xe3f904['inWGo'])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x35310b=_0x8ab750;try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':'utf-8','stdio':[_0x35310b(0x208),_0x35310b(0x208),'pipe']})[_0x35310b(0x2a6)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x54adcb=_0x8ab750,_0x5a8b56={'oAsNQ':function(_0x50d917,_0x571aad,_0x2174ca){return _0x50d917(_0x571aad,_0x2174ca);},'AHkxZ':'utf-8'},_0x478bb6=_0x5a8b56[_0x54adcb(0x2a2)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x478bb6))return null;try{const _0x895cfc=await readFile(_0x478bb6,_0x5a8b56['AHkxZ']);return _0x895cfc['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x349f27){const _0x4e61fc=_0x8ab750,_0x5cdb3b={'mSZkN':function(_0x54f894){return _0x54f894();},'Hgofi':function(_0x1a59eb,_0x416118){return _0x1a59eb(_0x416118);},'xBaKd':function(_0x52a3bd,_0x44a1a2,_0x586fe2){return _0x52a3bd(_0x44a1a2,_0x586fe2);},'Shygm':function(_0x301012,_0x2fa3c6,_0x2f369e,_0x7dbc37){return _0x301012(_0x2fa3c6,_0x2f369e,_0x7dbc37);}},_0x1a1ea0=_0x5cdb3b['mSZkN'](getRangerDir),_0xa2c0bf=join(_0x1a1ea0,ACTIVE_FEATURE_FILE);!_0x5cdb3b[_0x4e61fc(0x25a)](existsSync,_0x1a1ea0)&&await _0x5cdb3b['xBaKd'](mkdir,_0x1a1ea0,{'recursive':!![]}),await _0x5cdb3b[_0x4e61fc(0x1f5)](writeFile,_0xa2c0bf,_0x349f27,_0x4e61fc(0x222));}function getProgressDisplay(_0x5f4313){const _0x354971=_0x8ab750,_0x215867={'GezJi':function(_0x2a4cf1,_0x543a50){return _0x2a4cf1+_0x543a50;},'GiGyz':function(_0x30f63c,_0x562ffb){return _0x30f63c/_0x562ffb;},'ovMyR':function(_0x1724f3,_0x1a5267){return _0x1724f3-_0x1a5267;},'yPuUe':function(_0x2185ec,_0x553b2d){return _0x2185ec>_0x553b2d;},'WNTRM':function(_0x2c651e,_0x1d8455){return _0x2c651e>_0x1d8455;}},_0x49d6c0=_0x5f4313[_0x354971(0x1ea)]||0x0,_0x5619ff=_0x5f4313['verificationInProgressItems']||0x0,_0x2b63f0=_0x5f4313['blockedItems']||0x0,_0x217105=_0x5f4313['incompleteItems']||0x0,_0x5575fb=_0x5f4313[_0x354971(0x266)]||0x0,_0x356a14=_0x215867[_0x354971(0x26d)](_0x215867['GezJi'](_0x49d6c0,_0x5619ff),_0x2b63f0)+_0x217105+_0x5575fb;if(_0x356a14===0x0)return'-';const _0x2fa79e=0xa,_0x6e34de=Math[_0x354971(0x259)](_0x215867['GiGyz'](_0x49d6c0,_0x356a14)*_0x2fa79e),_0x2eb02e='█'[_0x354971(0x277)](_0x6e34de)+'░'['repeat'](_0x215867[_0x354971(0x291)](_0x2fa79e,_0x6e34de)),_0x20b8e5=[];if(_0x215867['yPuUe'](_0x2b63f0,0x0))_0x20b8e5['push'](_0x2b63f0+_0x354971(0x254));if(_0x215867[_0x354971(0x1e7)](_0x217105,0x0))_0x20b8e5[_0x354971(0x238)](_0x217105+'\x20incomplete');if(_0x5619ff>0x0)_0x20b8e5[_0x354971(0x238)](_0x5619ff+'\x20in\x20progress');const _0x369a86=_0x215867[_0x354971(0x231)](_0x20b8e5['length'],0x0)?'\x20('+_0x20b8e5[_0x354971(0x23a)](',\x20')+')':'';return _0x2eb02e+'\x20'+_0x49d6c0+'/'+_0x356a14+'\x20verified'+_0x369a86;}function getCurrentSessionItems(_0x218462,_0xa6e51){const _0x156a27=_0x8ab750;if(!_0x218462[_0x156a27(0x299)])return _0xa6e51['filter'](_0x5d2225=>!_0x5d2225['sessionId']);return _0xa6e51['filter'](_0x4e2ee6=>_0x4e2ee6['sessionId']===_0x218462[_0x156a27(0x299)]||!_0x4e2ee6['sessionId']);}function displayFeature(_0x37881a,_0xfa183a){const _0x4cc51d=_0x8ab750,_0x19b617={'WpbqM':function(_0xecc16d,_0x40e176){return _0xecc16d(_0x40e176);},'vtaDE':function(_0x1162a0,_0x833e68){return _0x1162a0===_0x833e68;},'ZnTJO':'approved','EOVPJ':function(_0x575efc,_0x196052){return _0x575efc===_0x196052;},'DAjHA':function(_0x4f9126,_0x36374d){return _0x4f9126===_0x36374d;},'fIova':'closed','LHXHZ':'verification_in_progress','vCLAH':function(_0x5a45a8,_0x3fb8b5){return _0x5a45a8!==_0x3fb8b5;},'CuVDw':'verified','xAoZv':function(_0x4537f9,_0x384a8d){return _0x4537f9+_0x384a8d;},'ZjxLG':function(_0x541345,_0x272506){return _0x541345===_0x272506;},'LnfxV':'blocked','aBWIf':_0x4cc51d(0x26b)};console[_0x4cc51d(0x20e)]('\x0a'+_0x37881a[_0x4cc51d(0x232)]+'\x20('+_0x37881a[_0x4cc51d(0x265)]+')');_0x37881a[_0x4cc51d(0x298)]&&console['log']('\x20\x20\x20Progress:\x20'+_0x19b617[_0x4cc51d(0x24c)](getProgressDisplay,_0x37881a['stats']));_0x37881a['description']&&console['log'](_0x4cc51d(0x2ac)+_0x37881a['description']);_0x37881a['gitRepoUrl']&&console['log']('\x20\x20\x20Repository:\x20'+_0x37881a[_0x4cc51d(0x292)]);_0x37881a[_0x4cc51d(0x29f)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x37881a['gitBranch']);console[_0x4cc51d(0x20e)](_0x4cc51d(0x1fe)+new Date(_0x37881a[_0x4cc51d(0x239)])['toLocaleString']());_0x37881a[_0x4cc51d(0x1e9)]&&console[_0x4cc51d(0x20e)]('\x20\x20\x20Completed:\x20'+new Date(_0x37881a[_0x4cc51d(0x1e9)])[_0x4cc51d(0x234)]());if(_0xfa183a&&_0xfa183a['length']>0x0){console[_0x4cc51d(0x20e)]('\x0a\x20\x20\x20Scenarios:');for(let _0x14c9d6=0x0;_0x14c9d6<_0xfa183a['length'];_0x14c9d6++){const _0x4d2a18=_0xfa183a[_0x14c9d6];let _0x4b3d4f;if(_0x4d2a18['status']==='closed'&&_0x19b617[_0x4cc51d(0x206)](_0x4d2a18['terminalReason'],_0x19b617['ZnTJO']))_0x4b3d4f='✅';else{if(_0x19b617['vtaDE'](_0x4d2a18['status'],'verified'))_0x4b3d4f='🟢';else{if(_0x19b617['EOVPJ'](_0x4d2a18[_0x4cc51d(0x1f1)],'incomplete'))_0x4b3d4f='🟠';else{if(_0x19b617[_0x4cc51d(0x237)](_0x4d2a18[_0x4cc51d(0x1f1)],_0x4cc51d(0x233)))_0x4b3d4f='🛑';else{if(_0x19b617[_0x4cc51d(0x2aa)](_0x4d2a18['status'],_0x19b617['fIova']))_0x4b3d4f='⛔';else _0x4d2a18['status']===_0x19b617[_0x4cc51d(0x283)]?_0x4b3d4f='⏳':_0x4b3d4f='⬜';}}}}const _0x5f3537=_0x4d2a18[_0x4cc51d(0x253)]>0x1?'\x20(v'+_0x4d2a18[_0x4cc51d(0x253)]+')':'',_0x3aecf0=_0x4d2a18['version']>0x1&&_0x4d2a18[_0x4cc51d(0x23d)]&&_0x19b617[_0x4cc51d(0x20c)](_0x4d2a18[_0x4cc51d(0x1f1)],_0x19b617[_0x4cc51d(0x219)])&&_0x4d2a18[_0x4cc51d(0x1f1)]!==_0x19b617[_0x4cc51d(0x1f9)]?'\x20[has\x20reviewer\x20feedback]':'';console[_0x4cc51d(0x20e)](_0x4cc51d(0x20d)+_0x19b617['xAoZv'](_0x14c9d6,0x1)+'.\x20'+_0x4b3d4f+'\x20'+_0x4d2a18[_0x4cc51d(0x23b)]+_0x5f3537+_0x3aecf0);_0x19b617['ZjxLG'](_0x4d2a18[_0x4cc51d(0x1f1)],_0x19b617[_0x4cc51d(0x293)])&&_0x4d2a18[_0x4cc51d(0x20f)]&&console[_0x4cc51d(0x20e)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x4d2a18[_0x4cc51d(0x20f)]);_0x19b617['ZjxLG'](_0x4d2a18[_0x4cc51d(0x1f1)],_0x19b617['aBWIf'])&&_0x4d2a18[_0x4cc51d(0x25e)]&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x4d2a18[_0x4cc51d(0x25e)]);if(_0x4d2a18[_0x4cc51d(0x1f1)]===_0x19b617['fIova']&&_0x4d2a18['terminalReason']==='approved')console['log'](_0x4cc51d(0x272));else _0x19b617['ZjxLG'](_0x4d2a18['status'],_0x19b617['fIova'])&&_0x4d2a18['canceledReason']&&console['log'](_0x4cc51d(0x245)+_0x4d2a18['canceledReason']);}}}export async function featureCreate(_0x40305d,_0x241be6){const _0x3ebdb8=_0x8ab750,_0x13b5d0={'tPExS':function(_0x5bbbd3,_0x696459){return _0x5bbbd3===_0x696459;},'LENSe':function(_0x32a2b1){return _0x32a2b1();},'BeVbP':function(_0x4d3d56,_0x2e0f26){return _0x4d3d56(_0x2e0f26);},'jWViX':_0x3ebdb8(0x280),'YErVD':function(_0x46261c,_0x5c4034){return _0x46261c(_0x5c4034);},'ilkgC':function(_0x5c79dd,_0x17972){return _0x5c79dd(_0x17972);},'Dgeht':function(_0x591059,_0xb75ded,_0x52a0dc){return _0x591059(_0xb75ded,_0x52a0dc);}},{envNames:_0xc3fef7}=await getEnvNames();if(_0x13b5d0['tPExS'](_0xc3fef7[_0x3ebdb8(0x207)],0x0)&&!process[_0x3ebdb8(0x268)]['RANGER_TEST_USERNAME']){let _0x3da41f=0x0;try{_0x3da41f=(await _0x13b5d0[_0x3ebdb8(0x2ad)](listCloudProfiles))[_0x3ebdb8(0x207)];}catch{_0x3da41f=0x1;}_0x13b5d0['tPExS'](_0x3da41f,0x0)&&console['warn']('\x0a'+_0x13b5d0[_0x3ebdb8(0x2a3)](formatProfileRequiredMessage,_0x37eabd=>bold(_0x37eabd)));}const _0x41912d=_0x241be6['scenarios']?_0x241be6['scenarios']['map'](_0x50324e=>_0x50324e['trim']()):[],_0x714c6b=_0x13b5d0['LENSe'](getGitRepoUrl),_0x4e5e77=getGitBranch();console[_0x3ebdb8(0x20e)](_0x13b5d0['jWViX']);const _0x1bae43=await _0x13b5d0['YErVD'](createFeature,{'name':_0x40305d,'description':_0x241be6[_0x3ebdb8(0x23b)],'checklist':_0x41912d,'gitRepoUrl':_0x714c6b,'gitBranch':_0x4e5e77});await setActiveFeatureId(_0x1bae43['id']),await _0x13b5d0['ilkgC'](tryStartCurrentSession,_0x1bae43['id']);const _0x1a57a9=process['env'][_0x3ebdb8(0x1ec)];_0x1a57a9&&_0x13b5d0[_0x3ebdb8(0x1fb)](registerSession,_0x1a57a9,_0x1bae43['id']),console[_0x3ebdb8(0x20e)](_0x3ebdb8(0x1eb)+_0x1bae43['id']),displayFeature(_0x1bae43,_0x1bae43[_0x3ebdb8(0x209)]),console[_0x3ebdb8(0x20e)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x40580e){const _0x2774b8=_0x8ab750,_0x19be75={'wnQcw':function(_0x56247b,_0x39fec0){return _0x56247b(_0x39fec0);},'gTRbc':'\x0aNo\x20feature\x20reviews\x20found.','uGNRn':function(_0x3a8463,_0xd5ee4f){return _0x3a8463>_0xd5ee4f;},'whbxx':function(_0x6f1aec,_0x254486){return _0x6f1aec(_0x254486);},'jDKHJ':function(_0x3b0edf,_0x5e17e1){return _0x3b0edf+_0x5e17e1;},'cAcXw':'\x20--current-branch'},_0x24d1d6={'limit':_0x40580e['limit']??0xa,'offset':_0x40580e[_0x2774b8(0x212)]??0x0,'includeDeleted':_0x40580e['includeDeleted']};_0x40580e[_0x2774b8(0x1ff)]&&(_0x24d1d6[_0x2774b8(0x292)]=getGitRepoUrl(),_0x24d1d6['gitBranch']=getGitBranch());const _0x18c9e0=await _0x19be75['wnQcw'](listFeatures,_0x24d1d6);if(_0x18c9e0[_0x2774b8(0x203)]['length']===0x0){console[_0x2774b8(0x20e)](_0x19be75['gTRbc']);return;}const _0x22f5d7=_0x19be75['uGNRn'](_0x18c9e0[_0x2774b8(0x224)],_0x18c9e0[_0x2774b8(0x203)][_0x2774b8(0x207)])?'Showing\x20'+_0x18c9e0['items']['length']+'\x20of\x20'+_0x18c9e0[_0x2774b8(0x224)]:_0x18c9e0['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x22f5d7+':\x0a');for(const _0x2d6dad of _0x18c9e0[_0x2774b8(0x203)]){console['log'](''+_0x2d6dad['name']),console[_0x2774b8(0x20e)]('\x20\x20\x20ID:\x20'+_0x2d6dad['id']),_0x2d6dad[_0x2774b8(0x298)]&&console[_0x2774b8(0x20e)]('\x20\x20\x20Progress:\x20'+_0x19be75['whbxx'](getProgressDisplay,_0x2d6dad[_0x2774b8(0x298)])),_0x2d6dad[_0x2774b8(0x29f)]&&console['log'](_0x2774b8(0x27e)+_0x2d6dad[_0x2774b8(0x29f)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x2d6dad[_0x2774b8(0x239)])['toLocaleDateString']()),console['log']('');}const _0x20bdf5=_0x24d1d6[_0x2774b8(0x29e)]??0xa,_0x33a91d=_0x19be75[_0x2774b8(0x2a5)](_0x24d1d6['offset']??0x0,_0x18c9e0[_0x2774b8(0x203)][_0x2774b8(0x207)]);if(_0x33a91d<_0x18c9e0['totalCount']){const _0x10e7c4=_0x20bdf5!==0xa?'\x20--limit\x20'+_0x20bdf5:'',_0x3e8924=_0x40580e['currentBranch']?_0x19be75[_0x2774b8(0x242)]:'',_0x5ee0ca=_0x40580e[_0x2774b8(0x1e6)]?'\x20--include-deleted':'';console[_0x2774b8(0x20e)](_0x2774b8(0x1f2)+_0x33a91d+_0x10e7c4+_0x3e8924+_0x5ee0ca);}}export async function featureShow(_0x8518c1){const _0x2b07bc=_0x8ab750,_0x4a3e4e={'vdTGG':function(_0x366d97,_0xdf8953){return _0x366d97(_0xdf8953);}},_0x5436d4=_0x8518c1||await getActiveFeatureId();if(!_0x5436d4)throw new Error(_0x2b07bc(0x202));const _0x448525=await _0x4a3e4e['vdTGG'](getFeature,_0x5436d4);displayFeature(_0x448525,_0x448525[_0x2b07bc(0x209)]);}export async function featureResume(_0x43a15a){const _0x2c3a9e=_0x8ab750,_0x426a95={'crbgJ':function(_0x38175c,_0x30f290){return _0x38175c(_0x30f290);},'aLVkg':function(_0x5e6536,_0x20e270,_0x7636ce){return _0x5e6536(_0x20e270,_0x7636ce);},'KBRJz':function(_0x223eff,_0x4cab10){return _0x223eff(_0x4cab10);},'kSLad':function(_0x75637b,_0x1b8955,_0x45bff0){return _0x75637b(_0x1b8955,_0x45bff0);},'bWafj':function(_0x2fbb0e,_0x22f085){return _0x2fbb0e&&_0x22f085;},'DlAEF':_0x2c3a9e(0x21c),'povQz':function(_0x520bda,_0x215124){return _0x520bda(_0x215124);},'cOUHn':_0x2c3a9e(0x26f),'RTRtX':'selected','boUTA':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','xgiZg':function(_0x85d548,_0x5ce14d){return _0x85d548(_0x5ce14d);}};if(_0x43a15a){const _0x5023c2=await _0x426a95[_0x2c3a9e(0x274)](getFeature,_0x43a15a);await setActiveFeatureId(_0x5023c2['id']);const _0x3c8cd1=getGitBranch();_0x3c8cd1&&_0x3c8cd1!==_0x5023c2['gitBranch']&&(await _0x426a95[_0x2c3a9e(0x26e)](updateFeature,_0x5023c2['id'],{'gitBranch':_0x3c8cd1}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3c8cd1));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x5023c2[_0x2c3a9e(0x232)]+'\x20('+_0x5023c2['id']+')'),await _0x426a95[_0x2c3a9e(0x1fc)](tryStartCurrentSession,_0x5023c2['id']);const _0x55d618=process[_0x2c3a9e(0x268)][_0x2c3a9e(0x1ec)];_0x55d618&&_0x426a95[_0x2c3a9e(0x235)](registerSession,_0x55d618,_0x5023c2['id']);displayFeature(_0x5023c2,_0x5023c2[_0x2c3a9e(0x209)]),await printFeedbackNudge(_0x5023c2['id']);return;}const _0x14688e=getGitRepoUrl(),_0x1d1a23=getGitBranch();if(_0x426a95[_0x2c3a9e(0x223)](!_0x14688e,!_0x1d1a23))throw new Error(_0x2c3a9e(0x2af));console['log'](_0x2c3a9e(0x240)+(_0x14688e||_0x426a95['DlAEF'])+_0x2c3a9e(0x22a)+(_0x1d1a23||_0x426a95[_0x2c3a9e(0x275)])+'...');const _0xc845b=await _0x426a95['povQz'](listFeatures,{'gitRepoUrl':_0x14688e,'gitBranch':_0x1d1a23}),_0x4eca6d=_0xc845b['items']['filter'](_0x36c1c1=>_0x36c1c1['status']?_0x36c1c1[_0x2c3a9e(0x1f1)]!==_0x2c3a9e(0x20b):!_0x36c1c1['completedAt']);if(_0x4eca6d['length']===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x2c3a9e(0x20e)](_0x2c3a9e(0x27c));return;}let _0x2ab368;if(_0x4eca6d[_0x2c3a9e(0x207)]===0x1)_0x2ab368=_0x4eca6d[0x0];else{const _0xd42459=process[_0x2c3a9e(0x27b)]['isTTY']&&process['stdout'][_0x2c3a9e(0x217)];if(!_0xd42459){console['log'](_0x2c3a9e(0x285));for(const _0x41d5de of _0x4eca6d){console[_0x2c3a9e(0x20e)]('\x20\x20'+_0x41d5de['name']),console['log'](_0x2c3a9e(0x279)+_0x41d5de['id']),_0x41d5de['stats']&&console[_0x2c3a9e(0x20e)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x41d5de['stats'])),_0x41d5de['gitBranch']&&console[_0x2c3a9e(0x20e)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x41d5de[_0x2c3a9e(0x29f)]);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x223bc1}=await _0x4615f1[_0x2c3a9e(0x284)]([{'type':_0x426a95['cOUHn'],'name':_0x426a95['RTRtX'],'message':_0x426a95[_0x2c3a9e(0x1f8)],'choices':_0x4eca6d[_0x2c3a9e(0x294)](_0x5af4d1=>({'name':_0x5af4d1[_0x2c3a9e(0x232)]+'\x20('+_0x5af4d1['id']+')','value':_0x5af4d1['id']}))}]);_0x2ab368=_0x4eca6d[_0x2c3a9e(0x2a8)](_0x3ba8cb=>_0x3ba8cb['id']===_0x223bc1);}await _0x426a95['povQz'](setActiveFeatureId,_0x2ab368['id']);_0x1d1a23&&_0x1d1a23!==_0x2ab368[_0x2c3a9e(0x29f)]&&(await updateFeature(_0x2ab368['id'],{'gitBranch':_0x1d1a23}),console[_0x2c3a9e(0x20e)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x1d1a23));console[_0x2c3a9e(0x20e)](_0x2c3a9e(0x273)+_0x2ab368['name']+'\x20('+_0x2ab368['id']+')'),await _0x426a95[_0x2c3a9e(0x1fc)](tryStartCurrentSession,_0x2ab368['id']);const _0x217fdc=await _0x426a95[_0x2c3a9e(0x257)](getFeature,_0x2ab368['id']),_0x3cad36=process[_0x2c3a9e(0x268)][_0x2c3a9e(0x1ec)];_0x3cad36&®isterSession(_0x3cad36,_0x217fdc['id']),displayFeature(_0x217fdc,_0x217fdc[_0x2c3a9e(0x209)]),await _0x426a95[_0x2c3a9e(0x1fc)](printFeedbackNudge,_0x217fdc['id']);}function _0x465d(_0x544676,_0x4e6a20){_0x544676=_0x544676-0x1e6;const _0x229a0a=_0x229a();let _0x465d1a=_0x229a0a[_0x544676];return _0x465d1a;}async function printFeedbackNudge(_0x31d512){const _0x53e783=_0x8ab750,_0x4b77ac={'PzlGi':function(_0x70a563,_0x4d7cda){return _0x70a563(_0x4d7cda);},'ldmCZ':function(_0x3e5bf7,_0x5c133e,_0x10768f){return _0x3e5bf7(_0x5c133e,_0x10768f);},'BFSIW':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x8fce1d}=await _0x4b77ac[_0x53e783(0x28b)](getActionItems,_0x31d512);let _0x370f42=0x0,_0x4a4213=0x0;for(const _0x31d5ef of _0x8fce1d){const _0x1ccc67=await _0x4b77ac['ldmCZ'](getItemFeedback,_0x31d512,_0x31d5ef['id']);_0x1ccc67[_0x53e783(0x27a)][_0x53e783(0x207)]>0x0&&(_0x370f42+=_0x1ccc67['unaddressedComments']['length'],_0x4a4213++);}_0x370f42>0x0&&(console[_0x53e783(0x20e)]('\x0a⚠️\x20\x20'+_0x370f42+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x4a4213+'\x20scenario(s).'),console['log'](_0x4b77ac['BFSIW']));}catch{}}async function tryStartCurrentSession(_0xf8440c){const _0x85598b=_0x8ab750,_0x3b9794={'AXGJc':function(_0x57e7b0,_0x320124){return _0x57e7b0(_0x320124);},'XHgBz':function(_0x6f18ff,_0x37d0c5,_0x68c70c){return _0x6f18ff(_0x37d0c5,_0x68c70c);}};try{const {sessions:_0x4c3385}=await _0x3b9794[_0x85598b(0x251)](listFeatureSessions,_0xf8440c),_0x163b32=_0x4c3385[_0x85598b(0x2a8)](_0x2ec8b6=>_0x2ec8b6['status']===_0x85598b(0x25b));_0x163b32&&(await _0x3b9794[_0x85598b(0x29d)](startSession,_0xf8440c,_0x163b32['id']),console[_0x85598b(0x20e)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x163b32['iteration']));}catch{}}export async function featureReport(_0x27d424,_0x56ea3a){const _0x2c2ff5=_0x8ab750,_0x5c41b5={'pIXcy':function(_0x21965a){return _0x21965a();},'obTkt':'\x0aGenerating\x20report...','aBMJG':function(_0xedaf13,_0x5cf3a9,_0x4683e9){return _0xedaf13(_0x5cf3a9,_0x4683e9);},'VNtfs':function(_0x30da7e,_0x5b5d90,_0x48ea07,_0x561a31){return _0x30da7e(_0x5b5d90,_0x48ea07,_0x561a31);},'KiQrs':function(_0x1d9d05,_0x3507e0,_0x592133){return _0x1d9d05(_0x3507e0,_0x592133);}},_0x45b791=_0x27d424||await _0x5c41b5[_0x2c2ff5(0x250)](getActiveFeatureId);if(!_0x45b791)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x2c2ff5(0x20e)](_0x5c41b5['obTkt']);const _0x3b6456=await _0x5c41b5['aBMJG'](getFeatureReportMarkdown,_0x45b791,{'style':_0x56ea3a['style']}),_0x684ce0=_0x56ea3a[_0x2c2ff5(0x260)]||_0x5c41b5[_0x2c2ff5(0x28e)](join,getRangerDir(),'reports',_0x45b791+_0x2c2ff5(0x282)),_0x24bc28=_0x5c41b5['KiQrs'](join,_0x684ce0,'..');!existsSync(_0x24bc28)&&await _0x5c41b5[_0x2c2ff5(0x23f)](mkdir,_0x24bc28,{'recursive':!![]}),await writeFile(_0x684ce0,_0x3b6456,_0x2c2ff5(0x222)),console[_0x2c2ff5(0x20e)]('\x0a✅\x20Report\x20generated:\x20'+_0x684ce0);}function getScenarioResult(_0xe0c203){const _0x79033f=_0x8ab750,_0x112812={'Vgblq':function(_0x24fd96,_0x485aa6){return _0x24fd96===_0x485aa6;},'GefYR':_0x79033f(0x29c)};if(_0x112812['Vgblq'](_0xe0c203['status'],_0x79033f(0x29c)))return _0xe0c203[_0x79033f(0x230)]??_0x112812[_0x79033f(0x290)];if(_0xe0c203[_0x79033f(0x1f1)]==='verification_in_progress')return'in_progress';return _0xe0c203['status'];}function getScenarioRationale(_0x1148df,_0x54ec78){const _0x48d13f=_0x8ab750;if(_0x54ec78)return _0x54ec78;if(_0x1148df[_0x48d13f(0x20f)])return _0x1148df['blockedReason'];if(_0x1148df['incompleteReason'])return _0x1148df['incompleteReason'];if(_0x1148df['canceledReason'])return _0x1148df['canceledReason'];if(_0x1148df['notes'])return _0x1148df[_0x48d13f(0x258)];return null;}export async function featureReportPrDescription(_0x56ef87,_0x2caa0f){const _0x86a209=_0x8ab750,_0x4d7864={'CyvJT':function(_0x16238f){return _0x16238f();},'DdQVk':function(_0x232b65,_0x481e6f){return _0x232b65(_0x481e6f);},'IwVPg':function(_0x51c284,_0x20c2f4){return _0x51c284===_0x20c2f4;},'gSKrk':function(_0x40f424,_0x11fba9){return _0x40f424<_0x11fba9;},'FmDzk':_0x86a209(0x23c),'JdytI':function(_0x143ce0,_0x1280eb,_0x18813a,_0x5e6f62){return _0x143ce0(_0x1280eb,_0x18813a,_0x5e6f62);},'SYrDZ':function(_0xe654c0,_0x245df9,_0x5ccad9){return _0xe654c0(_0x245df9,_0x5ccad9);}},_0x45d6d4=_0x56ef87||await _0x4d7864['CyvJT'](getActiveFeatureId);if(!_0x45d6d4)throw new Error(_0x86a209(0x288));const _0x5ceacf=await _0x4d7864['DdQVk'](getFeature,_0x45d6d4),_0x243c98=_0x5ceacf['checklistItems']||[],_0x14b4d0=getCurrentSessionItems(_0x5ceacf,_0x243c98);_0x4d7864[_0x86a209(0x267)](_0x14b4d0['length'],0x0)&&(console[_0x86a209(0x248)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x2e0998=_0x2caa0f[_0x86a209(0x1f7)]??[],_0x5eadab=_0x2e0998[_0x86a209(0x236)](_0x267cc5=>!Number['isInteger'](_0x267cc5)||_0x267cc5<0x1||_0x267cc5>_0x14b4d0['length']);if(_0x5eadab[_0x86a209(0x207)]>0x0){console['error'](_0x86a209(0x296)+_0x5eadab[_0x86a209(0x23a)](',\x20')),console[_0x86a209(0x20e)](_0x86a209(0x21e));for(let _0x48e301=0x0;_0x4d7864['gSKrk'](_0x48e301,_0x14b4d0['length']);_0x48e301++){console['log']('\x20\x20'+(_0x48e301+0x1)+'.\x20'+_0x14b4d0[_0x48e301][_0x86a209(0x23b)]);}process['exit'](0x1);}const _0x2b87de=new Set(_0x2e0998['map'](_0x45ca77=>_0x45ca77-0x1)),_0x55790b=_0x14b4d0[_0x86a209(0x236)]((_0x72bd9b,_0x281faa)=>!_0x2b87de['has'](_0x281faa));_0x55790b['length']===0x0&&(console[_0x86a209(0x248)](_0x4d7864[_0x86a209(0x216)]),process['exit'](0x1));if(_0x2caa0f[_0x86a209(0x205)])await _0x4d7864[_0x86a209(0x28c)](outputJsonReport,_0x45d6d4,_0x5ceacf,_0x55790b);else{const _0x10574a=await _0x4d7864['SYrDZ'](getFeatureReportMarkdown,_0x45d6d4,{'itemIds':_0x55790b[_0x86a209(0x294)](_0x226a79=>_0x226a79['id'])});process['stdout']['write'](_0x10574a[_0x86a209(0x2a1)]()+'\x0a');}}async function outputJsonReport(_0x4e5cf0,_0x1967fc,_0x4ace95){const _0x3ceea0=_0x8ab750,_0x568b4a={'WSMCi':function(_0x512c06,_0x433a51){return _0x512c06(_0x433a51);},'BdpvO':function(_0x596f22,_0x2fde68){return _0x596f22>_0x2fde68;},'sPvIQ':function(_0x4a76d3,_0x462968){return _0x4a76d3===_0x462968;},'giJPS':function(_0xe68c05,_0x291553,_0x5e7c38){return _0xe68c05(_0x291553,_0x5e7c38);}},_0x4f17a6=getApiBaseUrl(),_0x2f8122=await getFeatureReport(_0x4e5cf0),_0x1658d9=new Map(_0x2f8122[_0x3ceea0(0x209)]['map'](_0x22203e=>[_0x22203e['id'],_0x22203e])),_0x49476e=await Promise['all'](_0x4ace95[_0x3ceea0(0x294)](async _0x1ac244=>{const _0x1689b2=_0x3ceea0,_0x583bea=_0x1658d9[_0x1689b2(0x29b)](_0x1ac244['id']),_0x50238b=_0x583bea?.['linkedSession']??null;let _0x1ea4a5=[];if(_0x1ac244[_0x1689b2(0x228)])try{const {steps:_0x3e773b}=await _0x568b4a[_0x1689b2(0x229)](getBrowserSessionSteps,_0x1ac244[_0x1689b2(0x228)]);_0x568b4a['BdpvO'](_0x3e773b['length'],0x0)&&(_0x1ea4a5=_0x3e773b[_0x1689b2(0x294)](_0xe47cf=>{const _0x142ca7=_0x1689b2,_0x3cf051=_0xe47cf['assets'][_0x142ca7(0x2a8)](_0x3a6b5a=>_0x3a6b5a[_0x142ca7(0x2b0)]==='screenshot'&&_0x3a6b5a['timing']===_0x142ca7(0x246))??_0xe47cf['assets']['find'](_0x5c2264=>_0x5c2264['assetType']===_0x142ca7(0x2a0));let _0x550327=null,_0x5eccea=null;if(_0x3cf051){const _0x1c6417=_0x3cf051[_0x142ca7(0x27f)]['location'][_0x142ca7(0x281)]('/')[_0x142ca7(0x241)]();_0x550327=_0x4f17a6+'/api/v1/mcp/browser-sessions/'+_0x1ac244['browserSessionId']+'/artifacts/'+_0x1c6417,_0x1c6417&&(_0x5eccea=_0x1c6417[_0x142ca7(0x210)](/\.\w+$/,'')[_0x142ca7(0x210)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x5eccea||_0xe47cf['description']||_0xe47cf['stepName']||'Step\x20'+_0xe47cf['position'],'screenshot':_0x550327,'is_key_step':_0xe47cf['isKeyStep']};}));}catch{}return _0x568b4a['sPvIQ'](_0x1ea4a5[_0x1689b2(0x207)],0x0)&&_0x50238b?.['screenshotUrls']&&(_0x1ea4a5=_0x50238b['screenshotUrls']['map']((_0x284b6c,_0x27cf52)=>({'description':_0x1689b2(0x2ae)+(_0x27cf52+0x1),'screenshot':_0x284b6c,'is_key_step':![]}))),{'description':_0x1ac244[_0x1689b2(0x23b)],'result':getScenarioResult(_0x1ac244),'rationale':_0x568b4a['giJPS'](getScenarioRationale,_0x1ac244,_0x50238b?.[_0x1689b2(0x271)]),'steps':_0x1ea4a5};})),_0x706da6={'url':_0x1967fc['dashboardUrl'],'scenarios':_0x49476e};process['stdout']['write'](JSON['stringify'](_0x706da6,null,0x2)+'\x0a');}function _0x229a(){const _0xbae704=['iteration','QtSYs','802998oEaOKP','.png','status','Next\x20page:\x20ranger\x20list\x20--offset\x20','WeYwc','mVZXY','Shygm','366178iscNZe','excludeScenarios','boUTA','CuVDw','completed','Dgeht','KBRJz','Current\x20session\x20not\x20found.','\x20\x20\x20Created:\x20','currentBranch','OZVxH','2XOpatt','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','items','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','json','vtaDE','length','pipe','checklistItems','domRef','verified','vCLAH','\x20\x20\x20','log','blockedReason','replace','Cannot\x20conclude\x20session\x20with\x20status:\x20','offset','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','\x20\x20\x20Status:\x20','type','FmDzk','isTTY','element','fIova','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','Please\x20finish\x20your\x20review\x20first:','any','VSAuj','\x0aAvailable\x20scenarios:','latestReview','\x20\x20💬\x20','):\x20\x22','utf-8','bWafj','totalCount','LWoiS','Unknown','\x20\x20✅\x20No\x20feedback\x20to\x20address','browserSessionId','WSMCi','\x20/\x20','99JpOesu','\x1b[1m','cKfwf','submittedAt','fXYin','terminalReason','WNTRM','name','blocked','toLocaleString','kSLad','filter','DAjHA','push','createdAt','join','description','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','parentItemId','toLocaleDateString','KiQrs','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','pop','cAcXw','qNfnn','21mlAnFB','\x20\x20\x20\x20\x20\x20Cancelled:\x20','after','\x0a📋\x20Feedback\x20for:\x20','error','from','\x20concluded.','selector','WpbqM','HeqpF','assetUrl','scenario','pIXcy','AXGJc','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','version','\x20blocked','slice','774876qQwVIB','xgiZg','notes','round','Hgofi','ready','\x20unaddressed\x20comment(s)','5Yblxxw','incompleteReason','\x20Session\x20','output','github.com/','vmfmK','tEnYh','qnBFu','dashboardUrl','pendingItems','IwVPg','env','exit','in_progress','incomplete','2868288DtiVMa','GezJi','aLVkg','list','72DtfhNh','agentResponse','\x20\x20\x20\x20\x20\x20Approved','\x0a✅\x20Resumed\x20feature\x20review:\x20','crbgJ','DlAEF','coordinates','repeat','5136288cTAkvq','\x20\x20\x20\x20\x20ID:\x20','unaddressedComments','stdin','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','1045850iRXAII','\x20\x20\x20Branch:\x20','storage','\x0aCreating\x20feature\x20review...','split','.md','LHXHZ','prompt','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','\x20(v','\x20\x20Expected\x20flow:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','bHdup','\x20scenarios.','PzlGi','JdytI','spatial','VNtfs','NJKqs','GefYR','ovMyR','gitRepoUrl','LnfxV','map','XKGLB','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','\x20\x20\x20Completed:\x20','stats','currentSessionId','\x20at\x20[','get','closed','XHgBz','limit','gitBranch','screenshot','trimEnd','oAsNQ','BeVbP','toFixed','jDKHJ','trim','numeric','find','979752ubysUu','EOVPJ','bXtwv','\x20\x20\x20Description:\x20','LENSe','Screenshot\x20','Not\x20in\x20a\x20git\x20repository.','assetType',':\x20\x22','mBwLJ','includeDeleted','yPuUe','qjujW','completedAt','verifiedItems','\x0a✅\x20Feature\x20review\x20created:\x20','CLAUDE_SESSION_ID'];_0x229a=function(){return _0xbae704;};return _0x229a();}export async function featureConcludeSession(_0x206699){const _0x5096e8=_0x8ab750,_0x1dc33c={'SiONY':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','bXtwv':_0x5096e8(0x1fd),'qGQSE':function(_0x576d14,_0x56c04b){return _0x576d14===_0x56c04b;},'qjujW':'\x0a✅\x20Session\x20is\x20already\x20completed.','dLClV':_0x5096e8(0x26a),'qNfnn':'\x0aConcluding\x20session...'},_0x19996b=_0x206699||await getActiveFeatureId();if(!_0x19996b)throw new Error(_0x1dc33c['SiONY']);const _0x5b4920=await getFeature(_0x19996b);if(!_0x5b4920[_0x5096e8(0x299)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x384e77}=await listFeatureSessions(_0x19996b),_0x1b6891=_0x384e77[_0x5096e8(0x2a8)](_0x1a954c=>_0x1a954c['id']===_0x5b4920[_0x5096e8(0x299)]);if(!_0x1b6891)throw new Error(_0x1dc33c[_0x5096e8(0x2ab)]);if(_0x1dc33c['qGQSE'](_0x1b6891['status'],'completed')){console[_0x5096e8(0x20e)](_0x1dc33c[_0x5096e8(0x1e8)]);return;}if(_0x1b6891['status']!==_0x1dc33c['dLClV'])throw new Error(_0x5096e8(0x211)+_0x1b6891[_0x5096e8(0x1f1)]);console[_0x5096e8(0x20e)](_0x1dc33c[_0x5096e8(0x243)]),await concludeSession(_0x19996b,_0x5b4920[_0x5096e8(0x299)]),console[_0x5096e8(0x20e)]('\x0a✅\x20Session\x20'+_0x1b6891[_0x5096e8(0x1ed)]+_0x5096e8(0x24a)),console['log'](_0x5096e8(0x213));}export async function featureSessions(_0x5d3a17){const _0x5ca9da=_0x8ab750,_0x225241={'JEyJg':function(_0x4103c7){return _0x4103c7();},'twDmb':function(_0x532fe8,_0x4d7edb){return _0x532fe8(_0x4d7edb);}},_0x229b54=_0x5d3a17||await _0x225241['JEyJg'](getActiveFeatureId);if(!_0x229b54)throw new Error(_0x5ca9da(0x288));const _0x4df233=await _0x225241['twDmb'](getFeature,_0x229b54);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x4df233[_0x5ca9da(0x232)]+'\x0a');const {sessions:_0x15765d}=await listFeatureSessions(_0x229b54);if(_0x15765d['length']===0x0){console[_0x5ca9da(0x20e)]('No\x20sessions\x20found.');return;}for(const _0x1e423b of _0x15765d){const _0x35378e=_0x1e423b['status']===_0x5ca9da(0x1fa)?'✅':_0x1e423b['status']==='in_progress'?'🔄':'▶️';console[_0x5ca9da(0x20e)](_0x35378e+_0x5ca9da(0x25f)+_0x1e423b['iteration']+'\x20('+_0x1e423b['id']+')'),console['log'](_0x5ca9da(0x214)+_0x1e423b['status']),console[_0x5ca9da(0x20e)](_0x5ca9da(0x1fe)+new Date(_0x1e423b['createdAt'])['toLocaleString']()),_0x1e423b['completedAt']&&console[_0x5ca9da(0x20e)](_0x5ca9da(0x297)+new Date(_0x1e423b[_0x5ca9da(0x1e9)])[_0x5ca9da(0x234)]()),console['log']('');}}export async function featureAddScenario(_0x5d8d69,_0x59d0c3){const _0x48623d=_0x8ab750,_0x5381d8={'tEnYh':function(_0x42a399,_0x3f6597){return _0x42a399(_0x3f6597);}},_0x2d0321=_0x59d0c3||await getActiveFeatureId();if(!_0x2d0321)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 _0x4211ac=await getFeature(_0x2d0321);if(_0x4211ac[_0x48623d(0x21f)]&&!_0x4211ac[_0x48623d(0x21f)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x4211ac[_0x48623d(0x265)]);await createChecklistItem(_0x2d0321,_0x5d8d69);const _0x156a6f=await _0x5381d8[_0x48623d(0x263)](getFeature,_0x2d0321);console['log']('\x0a✅\x20Scenario\x20added'),displayFeature(_0x156a6f,_0x156a6f['checklistItems']);}export async function featureEditScenario(_0x4ae09f,_0x4d43f2){const _0x4ead76=_0x8ab750,_0x563a20={'qnBFu':function(_0x57b673){return _0x57b673();},'WeYwc':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','uEyEd':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','xkJJx':function(_0x43cdf4,_0x22334b){return _0x43cdf4(_0x22334b);},'XKGLB':_0x4ead76(0x21b),'HhxKw':function(_0x279ad3,_0x3f8484){return _0x279ad3===_0x3f8484;},'fXYin':_0x4ead76(0x252),'HeqpF':_0x4ead76(0x21e),'cKfwf':function(_0x415c10,_0x2d87d9){return _0x415c10<_0x2d87d9;},'rgunK':function(_0x3dabfd,_0xa44aa9){return _0x3dabfd-_0xa44aa9;},'sUfqK':function(_0x5343ed,_0x1aad7d){return _0x5343ed<_0x1aad7d;},'zeemc':function(_0x5b16ee,_0x1c81b4){return _0x5b16ee>=_0x1c81b4;},'ZjYNH':function(_0x5baab9,_0x12f133){return _0x5baab9<_0x12f133;},'ANWfh':function(_0x3ddff2,_0x3d16ce){return _0x3ddff2+_0x3d16ce;},'AksUt':function(_0x10cfe4,_0x573140){return _0x10cfe4(_0x573140);},'WGNbU':function(_0x25f38b,_0x38ba11,_0x2fdee5){return _0x25f38b(_0x38ba11,_0x2fdee5);}},_0x10204c=_0x4d43f2['id']||await _0x563a20[_0x4ead76(0x264)](getActiveFeatureId);!_0x10204c&&(console[_0x4ead76(0x248)](_0x563a20[_0x4ead76(0x1f3)]),console['error'](_0x563a20['uEyEd']),process[_0x4ead76(0x269)](0x1));const _0x2e13cd=await _0x563a20['xkJJx'](getFeature,_0x10204c);_0x2e13cd['latestReview']&&!_0x2e13cd[_0x4ead76(0x21f)][_0x4ead76(0x22e)]&&(console[_0x4ead76(0x248)]('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console['error'](_0x563a20[_0x4ead76(0x295)]),console[_0x4ead76(0x248)]('\x20\x20'+_0x2e13cd['dashboardUrl']),process['exit'](0x1));const _0x5efa4b=_0x2e13cd['checklistItems']||[];_0x563a20['HhxKw'](_0x5efa4b[_0x4ead76(0x207)],0x0)&&(console[_0x4ead76(0x248)](_0x563a20[_0x4ead76(0x22f)]),process['exit'](0x1));if(_0x4d43f2['scenario']===undefined){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x563a20[_0x4ead76(0x24d)]);for(let _0x4d67e5=0x0;_0x563a20[_0x4ead76(0x22d)](_0x4d67e5,_0x5efa4b['length']);_0x4d67e5++){console['log']('\x20\x20'+(_0x4d67e5+0x1)+'.\x20'+_0x5efa4b[_0x4d67e5][_0x4ead76(0x23b)]);}process['exit'](0x1);}const _0x45a39a=_0x563a20['rgunK'](_0x4d43f2['scenario'],0x1);if(_0x563a20['sUfqK'](_0x45a39a,0x0)||_0x563a20['zeemc'](_0x45a39a,_0x5efa4b['length'])){console[_0x4ead76(0x248)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x4d43f2[_0x4ead76(0x24f)]+'.\x20Feature\x20review\x20has\x20'+_0x5efa4b[_0x4ead76(0x207)]+_0x4ead76(0x28a)),console[_0x4ead76(0x20e)](_0x563a20[_0x4ead76(0x24d)]);for(let _0x15db9b=0x0;_0x563a20['ZjYNH'](_0x15db9b,_0x5efa4b[_0x4ead76(0x207)]);_0x15db9b++){console[_0x4ead76(0x20e)]('\x20\x20'+_0x563a20['ANWfh'](_0x15db9b,0x1)+'.\x20'+_0x5efa4b[_0x15db9b]['description']);}process[_0x4ead76(0x269)](0x1);}const _0x242ebd=_0x5efa4b[_0x45a39a];await updateChecklistItem(_0x10204c,_0x242ebd['id'],{'description':_0x4ae09f});const _0xf81773=await _0x563a20['AksUt'](getFeature,_0x10204c);console[_0x4ead76(0x20e)]('\x0a✅\x20Scenario\x20updated'),_0x563a20['WGNbU'](displayFeature,_0xf81773,_0xf81773['checklistItems']);}async function downloadFeedbackImage(_0x136484,_0x1aa48c){const _0x5a3847=_0x8ab750,_0x4850b0={'xTANq':'feedback-images','pMOCa':function(_0x3ef981,_0x1002e7,_0x2f231e){return _0x3ef981(_0x1002e7,_0x2f231e);},'OUlZI':function(_0x1b51eb,_0x38e806){return _0x1b51eb(_0x38e806);},'VSAuj':function(_0x30fd4f,_0x4b0dbe,_0x1d2c91){return _0x30fd4f(_0x4b0dbe,_0x1d2c91);}};try{const _0x517e1d=join(getRangerDir(),_0x4850b0['xTANq']);await _0x4850b0['pMOCa'](mkdir,_0x517e1d,{'recursive':!![]});const _0x4ebc49=join(_0x517e1d,'comment_'+_0x1aa48c+_0x5a3847(0x1f0)),_0x3d7742=await _0x4850b0['OUlZI'](fetch,_0x136484);if(!_0x3d7742['ok'])return null;const _0x34d63f=Buffer[_0x5a3847(0x249)](await _0x3d7742['arrayBuffer']());return await _0x4850b0[_0x5a3847(0x21d)](writeFile,_0x4ebc49,_0x34d63f),_0x4ebc49;}catch{return null;}}export async function featureGetReview(_0x43a714){const _0x46913f=_0x8ab750,_0x1e9315={'LWoiS':function(_0x560a63){return _0x560a63();},'UxTmo':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','soDtM':function(_0x59df78,_0x519583){return _0x59df78(_0x519583);},'yWNCu':function(_0x38f433,_0x25a989){return _0x38f433<_0x25a989;},'qODwj':function(_0x204c84,_0x53aff2){return _0x204c84>_0x53aff2;},'WrzFU':function(_0x183b8d,_0x934b37){return _0x183b8d>_0x934b37;},'QtSYs':_0x46913f(0x2a7),'vmfmK':function(_0x2be11a,_0x4c4152,_0x2ee4cb){return _0x2be11a(_0x4c4152,_0x2ee4cb);},'mVZXY':_0x46913f(0x218),'bHdup':'point'},_0x38b6c2=_0x43a714||await _0x1e9315[_0x46913f(0x225)](getActiveFeatureId);if(!_0x38b6c2)throw new Error(_0x1e9315['UxTmo']);const _0x17e5a4=await _0x1e9315['soDtM'](getFeature,_0x38b6c2),{items:_0xb46c49}=await getActionItems(_0x38b6c2);console[_0x46913f(0x20e)](_0x46913f(0x247)+_0x17e5a4[_0x46913f(0x232)]+'\x20('+_0x17e5a4['id']+')\x0a');if(_0xb46c49[_0x46913f(0x207)]===0x0){console[_0x46913f(0x20e)]('No\x20scenarios\x20found.');return;}for(let _0x328dfb=0x0;_0x1e9315['yWNCu'](_0x328dfb,_0xb46c49[_0x46913f(0x207)]);_0x328dfb++){const _0x42e436=_0xb46c49[_0x328dfb],_0xafec62=_0x1e9315['qODwj'](_0x42e436[_0x46913f(0x253)],0x1)?_0x46913f(0x286)+_0x42e436['version']+')':'',_0x306620=await getItemFeedback(_0x38b6c2,_0x42e436['id']);if(_0x1e9315['WrzFU'](_0x306620[_0x46913f(0x27a)]['length'],0x0)){console[_0x46913f(0x20e)]('Scenario\x20'+(_0x328dfb+0x1)+_0x46913f(0x2b1)+_0x42e436[_0x46913f(0x23b)]+'\x22'+_0xafec62+'\x20—\x20'+_0x306620[_0x46913f(0x27a)]['length']+_0x46913f(0x25c));for(const _0x498774 of _0x306620[_0x46913f(0x27a)]){const _0x424010=new Date(_0x498774[_0x46913f(0x239)])[_0x46913f(0x23e)]('en-US',{'month':'short','day':_0x1e9315[_0x46913f(0x1ee)]}),_0x55c868=_0x498774['authorName']||_0x498774['authorEmail']||_0x46913f(0x226);console[_0x46913f(0x20e)](_0x46913f(0x220)+_0x55c868+'\x20('+_0x424010+_0x46913f(0x221)+_0x498774['content']+'\x22');if(_0x498774['assetUrl']){const _0x39739c=await _0x1e9315[_0x46913f(0x262)](downloadFeedbackImage,_0x498774[_0x46913f(0x24e)],_0x498774['id']);_0x39739c&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x39739c);}if(_0x498774['domRef']){const _0x448d5d=_0x498774[_0x46913f(0x20a)][_0x46913f(0x24b)][_0x46913f(0x281)]('\x20>\x20')['pop']()?.[_0x46913f(0x281)](':')[0x0]||_0x1e9315[_0x46913f(0x1f4)],_0x34fcd1=_0x498774[_0x46913f(0x20a)]['textContent']?'\x20\x22'+_0x498774[_0x46913f(0x20a)]['textContent'][_0x46913f(0x255)](0x0,0x3c)+'\x22':'';console[_0x46913f(0x20e)](_0x46913f(0x204)+_0x448d5d+'>'+_0x34fcd1),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x498774['domRef'][_0x46913f(0x24b)]);}else{if(_0x498774['spatial']){const _0x3982dc=_0x498774['spatial'][_0x46913f(0x276)];_0x498774[_0x46913f(0x28d)][_0x46913f(0x215)]===_0x1e9315[_0x46913f(0x289)]&&_0x3982dc['length']>=0x2?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x3982dc[0x0][_0x46913f(0x2a4)](0x2)+',\x20'+_0x3982dc[0x1][_0x46913f(0x2a4)](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x498774['spatial'][_0x46913f(0x215)]+_0x46913f(0x29a)+_0x3982dc[_0x46913f(0x294)](_0x4490af=>_0x4490af[_0x46913f(0x2a4)](0x2))[_0x46913f(0x23a)](',\x20')+']');}}}if(_0x306620['canonicalFlow']){console[_0x46913f(0x20e)](_0x46913f(0x287));for(const _0x5d77ab of _0x306620['canonicalFlow']['split']('\x0a')){console[_0x46913f(0x20e)]('\x20\x20\x20\x20'+_0x5d77ab);}}}else console[_0x46913f(0x20e)]('Scenario\x20'+(_0x328dfb+0x1)+':\x20\x22'+_0x42e436['description']+'\x22'+_0xafec62+'\x20—\x20no\x20comments'),console['log'](_0x46913f(0x227));console['log']('');}}export async function featureDelete(_0x360d6c){const _0x11d201=_0x8ab750,_0x3fac0b={'nUzSQ':function(_0x270362,_0x29c1f0){return _0x270362(_0x29c1f0);},'OZVxH':function(_0x582040,_0x75a2e4){return _0x582040+_0x75a2e4;}},_0x2833d1=_0x360d6c||await getActiveFeatureId();if(!_0x2833d1)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 _0x4be771=await getFeature(_0x2833d1);await _0x3fac0b['nUzSQ'](softDeleteFeature,_0x2833d1),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x4be771[_0x11d201(0x232)]+'\x20('+_0x2833d1+')'),console[_0x11d201(0x20e)](_0x3fac0b[_0x11d201(0x200)](_0x11d201(0x21a),_0x2833d1));}export async function featureRestore(_0x8b096b){const _0x3b3612=_0x8ab750,_0xf39d6d={'XZpro':function(_0x3be8a8,_0x3a31be){return _0x3be8a8(_0x3a31be);},'NJKqs':function(_0x43c355,_0x916ca5,_0x2612ee){return _0x43c355(_0x916ca5,_0x2612ee);}};await restoreFeature(_0x8b096b);const _0x29f4fa=await _0xf39d6d['XZpro'](getFeature,_0x8b096b);console[_0x3b3612(0x20e)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x29f4fa[_0x3b3612(0x232)]+'\x20('+_0x8b096b+')'),_0xf39d6d[_0x3b3612(0x28f)](displayFeature,_0x29f4fa,_0x29f4fa[_0x3b3612(0x209)]);}
|
|
1
|
+
const _0x143671=_0x4b3f;(function(_0x15f2a6,_0xde16e1){const _0x19a898=_0x4b3f,_0x37df34=_0x15f2a6();while(!![]){try{const _0x488251=parseInt(_0x19a898(0x18d))/0x1+parseInt(_0x19a898(0x11c))/0x2+-parseInt(_0x19a898(0x133))/0x3*(-parseInt(_0x19a898(0x16d))/0x4)+parseInt(_0x19a898(0xe9))/0x5*(parseInt(_0x19a898(0x11d))/0x6)+-parseInt(_0x19a898(0xdd))/0x7*(parseInt(_0x19a898(0x16a))/0x8)+parseInt(_0x19a898(0xbf))/0x9+-parseInt(_0x19a898(0xfc))/0xa*(parseInt(_0x19a898(0x179))/0xb);if(_0x488251===_0xde16e1)break;else _0x37df34['push'](_0x37df34['shift']());}catch(_0x213c0e){_0x37df34['push'](_0x37df34['shift']());}}}(_0x2240,0x5a46a));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x46502f 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=_0x143671(0x14b),bold=_0x1831eb=>_0x143671(0x127)+_0x1831eb+'\x1b[0m';function getGitRepoUrl(){const _0x3b7cd5=_0x143671,_0x17be3d={'IgtlK':function(_0x3ff783,_0xda21a1,_0x536a0b){return _0x3ff783(_0xda21a1,_0x536a0b);},'aMTfk':_0x3b7cd5(0xe3),'WaQwk':_0x3b7cd5(0xc2)};try{const _0x1bdcfe=_0x17be3d['IgtlK'](execSync,_0x3b7cd5(0xf6),{'encoding':_0x17be3d['aMTfk'],'stdio':[_0x17be3d['WaQwk'],'pipe',_0x17be3d['WaQwk']]})[_0x3b7cd5(0x126)]();return _0x1bdcfe[_0x3b7cd5(0xee)](/\.git$/,'')[_0x3b7cd5(0xee)](/^git@github\.com:/,'github.com/')[_0x3b7cd5(0xee)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x5b96ae=_0x143671,_0x9e978e={'arZqU':_0x5b96ae(0xc2)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':'utf-8','stdio':[_0x9e978e['arZqU'],_0x9e978e[_0x5b96ae(0xe4)],_0x9e978e[_0x5b96ae(0xe4)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5409e2=_0x143671,_0x188882={'lBzmD':function(_0x49d61c,_0x9a4730,_0x50ecdc){return _0x49d61c(_0x9a4730,_0x50ecdc);},'oMxLd':function(_0xec7b78){return _0xec7b78();},'bYfwl':function(_0xaceaa2,_0x3103ce,_0x589f5d){return _0xaceaa2(_0x3103ce,_0x589f5d);},'WlSdB':'utf-8'},_0x2e0484=_0x188882[_0x5409e2(0x114)](join,_0x188882['oMxLd'](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x2e0484))return null;try{const _0xd7212f=await _0x188882[_0x5409e2(0x192)](readFile,_0x2e0484,_0x188882['WlSdB']);return _0xd7212f[_0x5409e2(0x126)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x594644){const _0x279a2f=_0x143671,_0x1d05b6={'hDcUl':function(_0x344f2d,_0x26ae1f,_0x3a4558){return _0x344f2d(_0x26ae1f,_0x3a4558);}},_0x50ca72=getRangerDir(),_0x20abe2=_0x1d05b6[_0x279a2f(0x16b)](join,_0x50ca72,ACTIVE_FEATURE_FILE);!existsSync(_0x50ca72)&&await _0x1d05b6['hDcUl'](mkdir,_0x50ca72,{'recursive':!![]}),await writeFile(_0x20abe2,_0x594644,'utf-8');}function getProgressDisplay(_0x3ca4ed){const _0x63220b=_0x143671,_0x212b6d={'rzpei':function(_0x9486f4,_0x48e62a){return _0x9486f4+_0x48e62a;},'BxOHm':function(_0xe76e9d,_0x2baa1a){return _0xe76e9d+_0x2baa1a;},'CfJoQ':function(_0xf057d4,_0x1ba612){return _0xf057d4+_0x1ba612;},'sMuOR':function(_0x471d4a,_0x2dc455){return _0x471d4a===_0x2dc455;},'RUKlH':function(_0x27a97b,_0xa58e83){return _0x27a97b*_0xa58e83;},'DMpzK':function(_0x3d026f,_0x46e957){return _0x3d026f-_0x46e957;},'bixjV':function(_0x5e5a0c,_0x35ef1c){return _0x5e5a0c>_0x35ef1c;}},_0x5d2d9f=_0x3ca4ed[_0x63220b(0xf5)]||0x0,_0x5237bc=_0x3ca4ed['verificationInProgressItems']||0x0,_0x53031d=_0x3ca4ed[_0x63220b(0x122)]||0x0,_0x4ad462=_0x3ca4ed[_0x63220b(0x180)]||0x0,_0x5a68d7=_0x3ca4ed[_0x63220b(0xfa)]||0x0,_0x15ca29=_0x212b6d['rzpei'](_0x212b6d['BxOHm'](_0x212b6d[_0x63220b(0x116)](_0x5d2d9f,_0x5237bc),_0x53031d)+_0x4ad462,_0x5a68d7);if(_0x212b6d['sMuOR'](_0x15ca29,0x0))return'-';const _0x55ed66=0xa,_0x49d2ab=Math['round'](_0x212b6d['RUKlH'](_0x5d2d9f/_0x15ca29,_0x55ed66)),_0x444d97=_0x212b6d['rzpei']('█'[_0x63220b(0x139)](_0x49d2ab),'░'[_0x63220b(0x139)](_0x212b6d['DMpzK'](_0x55ed66,_0x49d2ab))),_0x4250eb=[];if(_0x53031d>0x0)_0x4250eb['push'](_0x53031d+_0x63220b(0x104));if(_0x212b6d[_0x63220b(0x175)](_0x4ad462,0x0))_0x4250eb[_0x63220b(0x135)](_0x4ad462+'\x20incomplete');if(_0x5237bc>0x0)_0x4250eb['push'](_0x5237bc+'\x20in\x20progress');const _0x49e3b1=_0x4250eb[_0x63220b(0x148)]>0x0?'\x20('+_0x4250eb[_0x63220b(0x167)](',\x20')+')':'';return _0x444d97+'\x20'+_0x5d2d9f+'/'+_0x15ca29+_0x63220b(0x123)+_0x49e3b1;}function getCurrentSessionItems(_0x5b2e4b,_0x395f5f){const _0x5981d5=_0x143671;if(!_0x5b2e4b[_0x5981d5(0x145)])return _0x395f5f[_0x5981d5(0x106)](_0xc91f98=>!_0xc91f98[_0x5981d5(0x16e)]);return _0x395f5f[_0x5981d5(0x106)](_0x38537d=>_0x38537d['sessionId']===_0x5b2e4b['currentSessionId']||!_0x38537d[_0x5981d5(0x16e)]);}function _0x2240(){const _0x365bc9=['\x0aAvailable\x20scenarios:','\x20\x20\x20\x20','canceledReason','DWJeg','rYiRq','\x20\x20\x20Branch:\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','.png','parentItemId','approved','linkedSession','bUIIM','unaddressedComments','lBzmD','kbXCo','CfJoQ','Cewdi','exit','\x0aNo\x20feature\x20reviews\x20found.','from','domRef','1468648LStyOT','186sKLcOk','zDuLr','find','aqkwl','LRuHh','blockedItems','\x20verified','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','Next\x20page:\x20ranger\x20list\x20--offset\x20','trim','\x1b[1m','error','gitBranch','\x20\x20\x20\x20\x20\x20Cancelled:\x20','verified','list','content','checklistItems','TPyZZ','CLAUDE_SESSION_ID','naObE','ready','57pxQEax','\x20--limit\x20','push','scenario','split','GvPAB','repeat','agentResponse','Current\x20session\x20not\x20found.','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','gpWoP','MSqnc','\x20\x20\x20ID:\x20','isInteger','XSpbr','assets','GiEsc','\x20feature\x20review(s)\x20found','currentSessionId','all','\x0a\x20\x20\x20Scenarios:','length','items','IfHLn','active-feature.txt','zSGhM','YQUKv','\x20\x20\x20▶️\x20Started\x20session\x20','\x20/\x20','/artifacts/','assetType','\x20>\x20','name','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','isKeyStep','QxVkP','\x20\x20\x20Created:\x20','type','HIyQz','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','gitRepoUrl','AoKQT','TGcij','completedAt','gbiDD','NXzZE','OuxEI','limit','Rbjyw','hPudu','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','storage','join','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','72ZTpCLJ','hDcUl','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','71284LiYYxu','sessionId','\x20\x20\x20Progress:\x20','FJBko','stdout','jcDNa','qJtCy','TmKRV','bixjV','No\x20scenarios\x20found.','\x20--current-branch','point','11JkJFUX','hctJc','stdin','totalCount','SPDhP','MxdIa','\x20—\x20no\x20comments','incompleteItems','bdyvL','Showing\x20','\x20\x20\x20\x20\x20\x20Approved','):\x20\x22','blockedReason','incompleteReason','feedback-images','get',':\x20\x22','toLocaleDateString','\x20at\x20[','JZoqn','529157XEGidq','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','dashboardUrl','screenshotUrls','latestReview','bYfwl','nqAsh','\x0a✅\x20Restored\x20feature\x20review:\x20','UwIJY','\x20\x20\x20','\x20[has\x20reviewer\x20feedback]','FZerE','XrcDL','IjLgv','GDUdC','Please\x20finish\x20your\x20review\x20first:','Unknown','kSUjD','position','incomplete','currentBranch','No\x20active\x20session\x20for\x20this\x20feature\x20review.','Hxigr','\x20\x20\x20\x20\x20ID:\x20','3334014EIARpK','0|1|5|3|2|4','description','pipe','closed','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','Cannot\x20conclude\x20session\x20with\x20status:\x20','stats','CHjba','wBlae','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','blocked','status','pYGNL','isTTY','terminalReason','verification_in_progress','in_progress','\x0a✅\x20Report\x20generated:\x20','arrayBuffer','any','createdAt','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20\x20Completed:\x20','iteration','toLocaleString','browserSessionId','DdlXY','Screenshot\x20','1435IFAqQL','YqGCX','\x0a✅\x20Session\x20is\x20already\x20completed.','env','eHgBp','element','utf-8','arZqU','\x0aCreating\x20feature\x20review...','selector','plepJ','SAmFq','14990YlopsA','\x20(v','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','dLSpb','axjle','replace','\x20\x20\x20\x20\x20Progress:\x20','log','slice','toFixed','spatial','\x20Session\x20','verifiedItems','git\x20remote\x20get-url\x20origin','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','qYApp','\x20unaddressed\x20comment(s)','pendingItems','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','16938490jHSQWi','\x0aGenerating\x20report...','Step\x20','AmdwN','FeXIp','\x0a✅\x20Session\x20','version','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','\x20blocked','map','filter'];_0x2240=function(){return _0x365bc9;};return _0x2240();}function displayFeature(_0x18139b,_0x2d85e0){const _0x13d8b5=_0x143671,_0x8e4230={'jiHrf':_0x13d8b5(0x147),'MxdIa':function(_0x5f5e0c,_0xdf718d){return _0x5f5e0c<_0xdf718d;},'lOoMS':function(_0x36d078,_0x507c07){return _0x36d078===_0x507c07;},'eHgBp':'closed','GiEsc':'approved','OuxEI':_0x13d8b5(0xca),'aIrfr':function(_0xdffe04,_0x534412){return _0xdffe04===_0x534412;},'yugny':function(_0x170324,_0x1414d8){return _0x170324>_0x1414d8;},'jcDNa':'verified','wuRHb':function(_0x300c3f,_0x3948e7){return _0x300c3f===_0x3948e7;},'AoKQT':function(_0x7c61cd,_0x4a3667){return _0x7c61cd===_0x4a3667;}};console['log']('\x0a'+_0x18139b[_0x13d8b5(0x153)]+'\x20('+_0x18139b[_0x13d8b5(0x18f)]+')');_0x18139b['stats']&&console['log'](_0x13d8b5(0x16f)+getProgressDisplay(_0x18139b['stats']));_0x18139b['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x18139b[_0x13d8b5(0xc1)]);_0x18139b['gitRepoUrl']&&console[_0x13d8b5(0xf0)]('\x20\x20\x20Repository:\x20'+_0x18139b[_0x13d8b5(0x15b)]);_0x18139b['gitBranch']&&console['log'](_0x13d8b5(0x10c)+_0x18139b['gitBranch']);console['log'](_0x13d8b5(0x157)+new Date(_0x18139b['createdAt'])['toLocaleString']());_0x18139b[_0x13d8b5(0x15e)]&&console['log'](_0x13d8b5(0xd7)+new Date(_0x18139b[_0x13d8b5(0x15e)])[_0x13d8b5(0xd9)]());if(_0x2d85e0&&_0x2d85e0['length']>0x0){console[_0x13d8b5(0xf0)](_0x8e4230['jiHrf']);for(let _0x6d2e37=0x0;_0x8e4230[_0x13d8b5(0x17e)](_0x6d2e37,_0x2d85e0[_0x13d8b5(0x148)]);_0x6d2e37++){const _0x4366a6=_0x2d85e0[_0x6d2e37];let _0x2c0a4a;if(_0x8e4230['lOoMS'](_0x4366a6[_0x13d8b5(0xcb)],_0x8e4230['eHgBp'])&&_0x4366a6['terminalReason']===_0x8e4230[_0x13d8b5(0x143)])_0x2c0a4a='✅';else{if(_0x4366a6[_0x13d8b5(0xcb)]===_0x13d8b5(0x12b))_0x2c0a4a='🟢';else{if(_0x8e4230['lOoMS'](_0x4366a6[_0x13d8b5(0xcb)],_0x13d8b5(0xba)))_0x2c0a4a='🟠';else{if(_0x4366a6['status']===_0x8e4230[_0x13d8b5(0x161)])_0x2c0a4a='🛑';else{if(_0x4366a6['status']==='closed')_0x2c0a4a='⛔';else _0x8e4230['aIrfr'](_0x4366a6['status'],'verification_in_progress')?_0x2c0a4a='⏳':_0x2c0a4a='⬜';}}}}const _0x539647=_0x4366a6['version']>0x1?_0x13d8b5(0xea)+_0x4366a6['version']+')':'',_0x571bb7=_0x8e4230['yugny'](_0x4366a6[_0x13d8b5(0x102)],0x1)&&_0x4366a6[_0x13d8b5(0x10f)]&&_0x4366a6[_0x13d8b5(0xcb)]!==_0x8e4230[_0x13d8b5(0xe1)]&&_0x4366a6[_0x13d8b5(0xcb)]!==_0x8e4230[_0x13d8b5(0x172)]?_0x13d8b5(0xb1):'';console['log'](_0x13d8b5(0x196)+(_0x6d2e37+0x1)+'.\x20'+_0x2c0a4a+'\x20'+_0x4366a6[_0x13d8b5(0xc1)]+_0x539647+_0x571bb7);_0x4366a6['status']===_0x8e4230[_0x13d8b5(0x161)]&&_0x4366a6[_0x13d8b5(0x185)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x4366a6[_0x13d8b5(0x185)]);_0x8e4230['wuRHb'](_0x4366a6['status'],_0x13d8b5(0xba))&&_0x4366a6['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x4366a6[_0x13d8b5(0x186)]);if(_0x8e4230['AoKQT'](_0x4366a6['status'],'closed')&&_0x8e4230[_0x13d8b5(0x15c)](_0x4366a6[_0x13d8b5(0xce)],_0x13d8b5(0x110)))console[_0x13d8b5(0xf0)](_0x13d8b5(0x183));else _0x8e4230['aIrfr'](_0x4366a6['status'],_0x8e4230['eHgBp'])&&_0x4366a6[_0x13d8b5(0x109)]&&console[_0x13d8b5(0xf0)](_0x13d8b5(0x12a)+_0x4366a6[_0x13d8b5(0x109)]);}}}export async function featureCreate(_0x22b3a5,_0x3e1dcb){const _0x51da1=_0x143671,_0x4d2ac1={'SPDhP':function(_0x4ede73){return _0x4ede73();},'GPwav':function(_0x14a38d,_0x52bd0c){return _0x14a38d===_0x52bd0c;},'tjiwU':function(_0x5f420f){return _0x5f420f();},'nTuwB':_0x51da1(0xe5),'bUIIM':function(_0xecf1c2,_0x2e7b99){return _0xecf1c2(_0x2e7b99);},'bAneb':function(_0x3bdff5,_0x253390,_0x31e0a2){return _0x3bdff5(_0x253390,_0x31e0a2);}},{envNames:_0x1a2f14}=await _0x4d2ac1['SPDhP'](getEnvNames);if(_0x1a2f14[_0x51da1(0x148)]===0x0&&!process[_0x51da1(0xe0)]['RANGER_TEST_USERNAME']){let _0x4ee9ca=0x0;try{_0x4ee9ca=(await _0x4d2ac1[_0x51da1(0x17d)](listCloudProfiles))['length'];}catch{_0x4ee9ca=0x1;}_0x4d2ac1['GPwav'](_0x4ee9ca,0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x4b592c=>bold(_0x4b592c)));}const _0xf8be9a=_0x3e1dcb['scenarios']?_0x3e1dcb['scenarios']['map'](_0x3bb44a=>_0x3bb44a['trim']()):[],_0x41d9a8=getGitRepoUrl(),_0x2a3b37=_0x4d2ac1['tjiwU'](getGitBranch);console['log'](_0x4d2ac1['nTuwB']);const _0x148275=await createFeature({'name':_0x22b3a5,'description':_0x3e1dcb['description'],'checklist':_0xf8be9a,'gitRepoUrl':_0x41d9a8,'gitBranch':_0x2a3b37});await _0x4d2ac1[_0x51da1(0x112)](setActiveFeatureId,_0x148275['id']),await tryStartCurrentSession(_0x148275['id']);const _0x45245f=process[_0x51da1(0xe0)][_0x51da1(0x130)];_0x45245f&®isterSession(_0x45245f,_0x148275['id']),console[_0x51da1(0xf0)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x148275['id']),_0x4d2ac1['bAneb'](displayFeature,_0x148275,_0x148275['checklistItems']),console[_0x51da1(0xf0)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x15c388){const _0x4efb3e=_0x143671,_0x42e2bb={'ECRLL':function(_0xa311a,_0x56b2aa){return _0xa311a(_0x56b2aa);},'GvPAB':function(_0x1d8de5,_0x111376){return _0x1d8de5===_0x111376;},'Cewdi':function(_0x266712,_0x28be63){return _0x266712!==_0x28be63;}},_0x1a3457={'limit':_0x15c388[_0x4efb3e(0x162)]??0xa,'offset':_0x15c388['offset']??0x0,'includeDeleted':_0x15c388['includeDeleted']};_0x15c388['currentBranch']&&(_0x1a3457[_0x4efb3e(0x15b)]=getGitRepoUrl(),_0x1a3457[_0x4efb3e(0x129)]=getGitBranch());const _0x2de70b=await _0x42e2bb['ECRLL'](listFeatures,_0x1a3457);if(_0x42e2bb[_0x4efb3e(0x138)](_0x2de70b[_0x4efb3e(0x149)]['length'],0x0)){console['log'](_0x4efb3e(0x119));return;}const _0xd44ae2=_0x2de70b[_0x4efb3e(0x17c)]>_0x2de70b[_0x4efb3e(0x149)]['length']?_0x4efb3e(0x182)+_0x2de70b['items'][_0x4efb3e(0x148)]+'\x20of\x20'+_0x2de70b['totalCount']:_0x2de70b[_0x4efb3e(0x17c)]+_0x4efb3e(0x144);console[_0x4efb3e(0xf0)]('\x0a'+_0xd44ae2+':\x0a');for(const _0x340747 of _0x2de70b['items']){const _0x12eeaf=_0x4efb3e(0xc0)[_0x4efb3e(0x137)]('|');let _0x4cadc6=0x0;while(!![]){switch(_0x12eeaf[_0x4cadc6++]){case'0':console[_0x4efb3e(0xf0)](''+_0x340747['name']);continue;case'1':console['log'](_0x4efb3e(0x13f)+_0x340747['id']);continue;case'2':console['log'](_0x4efb3e(0x157)+new Date(_0x340747['createdAt'])[_0x4efb3e(0x18a)]());continue;case'3':_0x340747[_0x4efb3e(0x129)]&&console[_0x4efb3e(0xf0)]('\x20\x20\x20Branch:\x20'+_0x340747[_0x4efb3e(0x129)]);continue;case'4':console[_0x4efb3e(0xf0)]('');continue;case'5':_0x340747['stats']&&console[_0x4efb3e(0xf0)](_0x4efb3e(0x16f)+getProgressDisplay(_0x340747[_0x4efb3e(0xc6)]));continue;}break;}}const _0x5042c8=_0x1a3457[_0x4efb3e(0x162)]??0xa,_0x4fd469=(_0x1a3457['offset']??0x0)+_0x2de70b['items']['length'];if(_0x4fd469<_0x2de70b[_0x4efb3e(0x17c)]){const _0x3761ed=_0x42e2bb[_0x4efb3e(0x117)](_0x5042c8,0xa)?_0x4efb3e(0x134)+_0x5042c8:'',_0x21a60c=_0x15c388[_0x4efb3e(0xbb)]?_0x4efb3e(0x177):'',_0x28cae9=_0x15c388['includeDeleted']?'\x20--include-deleted':'';console[_0x4efb3e(0xf0)](_0x4efb3e(0x125)+_0x4fd469+_0x3761ed+_0x21a60c+_0x28cae9);}}export async function featureShow(_0x35ad49){const _0x1eda97=_0x143671,_0x587aaf={'plepJ':function(_0x379f3f){return _0x379f3f();},'VSvmr':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','jNByc':function(_0x5d4af5,_0x2383da){return _0x5d4af5(_0x2383da);},'mGsxr':function(_0x58d1be,_0x286044,_0x3e6810){return _0x58d1be(_0x286044,_0x3e6810);}},_0x194e71=_0x35ad49||await _0x587aaf[_0x1eda97(0xe7)](getActiveFeatureId);if(!_0x194e71)throw new Error(_0x587aaf['VSvmr']);const _0xac182d=await _0x587aaf['jNByc'](getFeature,_0x194e71);_0x587aaf['mGsxr'](displayFeature,_0xac182d,_0xac182d['checklistItems']);}export async function featureResume(_0x5a9d05){const _0x402ada=_0x143671,_0x3c6d31={'TxsrF':function(_0x26a5e1,_0x14882d){return _0x26a5e1!==_0x14882d;},'GDUdC':function(_0x60db6,_0x31ec3f,_0x2d5478){return _0x60db6(_0x31ec3f,_0x2d5478);},'qJtCy':function(_0x39de49,_0x57ba71){return _0x39de49(_0x57ba71);},'MSqnc':function(_0x5c2e5d){return _0x5c2e5d();},'nqAsh':function(_0xaeed2c,_0x2077f5){return _0xaeed2c&&_0x2077f5;},'qZfMI':_0x402ada(0xd3),'JcvHq':function(_0xfa2893,_0x4547c7){return _0xfa2893||_0x4547c7;},'qHNzV':function(_0x277610,_0x58abc8){return _0x277610(_0x58abc8);},'FJBko':function(_0x474d84,_0x45f554){return _0x474d84===_0x45f554;},'hPudu':function(_0x2f401b,_0x54cc57){return _0x2f401b===_0x54cc57;},'giQaz':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','hctJc':_0x402ada(0x15a),'NXzZE':_0x402ada(0x12c),'XSpbr':function(_0xfc0c91,_0x302ada){return _0xfc0c91(_0x302ada);}};if(_0x5a9d05){const _0x4d809c=await getFeature(_0x5a9d05);await setActiveFeatureId(_0x4d809c['id']);const _0x3e076c=getGitBranch();_0x3e076c&&_0x3c6d31['TxsrF'](_0x3e076c,_0x4d809c['gitBranch'])&&(await _0x3c6d31[_0x402ada(0xb5)](updateFeature,_0x4d809c['id'],{'gitBranch':_0x3e076c}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3e076c));console[_0x402ada(0xf0)](_0x402ada(0x10d)+_0x4d809c[_0x402ada(0x153)]+'\x20('+_0x4d809c['id']+')'),await _0x3c6d31[_0x402ada(0x173)](tryStartCurrentSession,_0x4d809c['id']);const _0x62a8f=process['env'][_0x402ada(0x130)];_0x62a8f&&_0x3c6d31[_0x402ada(0xb5)](registerSession,_0x62a8f,_0x4d809c['id']);displayFeature(_0x4d809c,_0x4d809c[_0x402ada(0x12e)]),await _0x3c6d31[_0x402ada(0x173)](printFeedbackNudge,_0x4d809c['id']);return;}const _0x4eff61=_0x3c6d31[_0x402ada(0x13e)](getGitRepoUrl),_0x2f977a=getGitBranch();if(_0x3c6d31[_0x402ada(0x193)](!_0x4eff61,!_0x2f977a))throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x402ada(0xf0)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x4eff61||_0x3c6d31['qZfMI'])+_0x402ada(0x14f)+_0x3c6d31['JcvHq'](_0x2f977a,'any')+'...');const _0x5bfec2=await _0x3c6d31['qHNzV'](listFeatures,{'gitRepoUrl':_0x4eff61,'gitBranch':_0x2f977a}),_0x5f0a5f=_0x5bfec2[_0x402ada(0x149)]['filter'](_0x199905=>_0x199905['status']?_0x199905[_0x402ada(0xcb)]!==_0x402ada(0x12b):!_0x199905[_0x402ada(0x15e)]);if(_0x3c6d31[_0x402ada(0x170)](_0x5f0a5f['length'],0x0)){console[_0x402ada(0xf0)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x402ada(0xeb));return;}let _0x3b0854;if(_0x3c6d31[_0x402ada(0x164)](_0x5f0a5f[_0x402ada(0x148)],0x1))_0x3b0854=_0x5f0a5f[0x0];else{const _0x9d3163=process[_0x402ada(0x17b)][_0x402ada(0xcd)]&&process['stdout'][_0x402ada(0xcd)];if(!_0x9d3163){console['log'](_0x3c6d31['giQaz']);for(const _0xf17509 of _0x5f0a5f){console[_0x402ada(0xf0)]('\x20\x20'+_0xf17509[_0x402ada(0x153)]),console['log'](_0x402ada(0xbe)+_0xf17509['id']),_0xf17509[_0x402ada(0xc6)]&&console[_0x402ada(0xf0)](_0x402ada(0xef)+_0x3c6d31[_0x402ada(0x173)](getProgressDisplay,_0xf17509[_0x402ada(0xc6)])),_0xf17509[_0x402ada(0x129)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xf17509[_0x402ada(0x129)]);}throw new Error(_0x3c6d31[_0x402ada(0x17a)]);}const {selected:_0x1f9f2e}=await _0x46502f['prompt']([{'type':_0x3c6d31[_0x402ada(0x160)],'name':'selected','message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x5f0a5f['map'](_0x1dda61=>({'name':_0x1dda61['name']+'\x20('+_0x1dda61['id']+')','value':_0x1dda61['id']}))}]);_0x3b0854=_0x5f0a5f['find'](_0x2e77f1=>_0x2e77f1['id']===_0x1f9f2e);}await setActiveFeatureId(_0x3b0854['id']);_0x2f977a&&_0x2f977a!==_0x3b0854[_0x402ada(0x129)]&&(await _0x3c6d31['GDUdC'](updateFeature,_0x3b0854['id'],{'gitBranch':_0x2f977a}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x2f977a));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3b0854[_0x402ada(0x153)]+'\x20('+_0x3b0854['id']+')'),await _0x3c6d31[_0x402ada(0x141)](tryStartCurrentSession,_0x3b0854['id']);const _0x146004=await getFeature(_0x3b0854['id']),_0x22c115=process['env'][_0x402ada(0x130)];_0x22c115&®isterSession(_0x22c115,_0x146004['id']),_0x3c6d31[_0x402ada(0xb5)](displayFeature,_0x146004,_0x146004['checklistItems']),await printFeedbackNudge(_0x146004['id']);}async function printFeedbackNudge(_0x1d1d77){const _0x384a1c=_0x143671,_0x1e8a4f={'zSGhM':function(_0xf315c0,_0x121fa6){return _0xf315c0>_0x121fa6;},'pYGNL':_0x384a1c(0x154)};try{const {items:_0x4e6a15}=await getActionItems(_0x1d1d77);let _0x1807b2=0x0,_0x5d953e=0x0;for(const _0x5f020a of _0x4e6a15){const _0x217c09=await getItemFeedback(_0x1d1d77,_0x5f020a['id']);_0x1e8a4f[_0x384a1c(0x14c)](_0x217c09[_0x384a1c(0x113)][_0x384a1c(0x148)],0x0)&&(_0x1807b2+=_0x217c09['unaddressedComments']['length'],_0x5d953e++);}_0x1e8a4f['zSGhM'](_0x1807b2,0x0)&&(console[_0x384a1c(0xf0)]('\x0a⚠️\x20\x20'+_0x1807b2+_0x384a1c(0x103)+_0x5d953e+'\x20scenario(s).'),console['log'](_0x1e8a4f[_0x384a1c(0xcc)]));}catch{}}async function tryStartCurrentSession(_0x1167c9){const _0x1dcfa7=_0x143671,_0x15f226={'Hxigr':function(_0x324245,_0x24bdc5){return _0x324245(_0x24bdc5);},'DdlXY':function(_0x2be353,_0x34c66d,_0xe6a82b){return _0x2be353(_0x34c66d,_0xe6a82b);}};try{const {sessions:_0x3d2482}=await _0x15f226[_0x1dcfa7(0xbd)](listFeatureSessions,_0x1167c9),_0x161085=_0x3d2482[_0x1dcfa7(0x11f)](_0x370249=>_0x370249[_0x1dcfa7(0xcb)]===_0x1dcfa7(0x132));_0x161085&&(await _0x15f226[_0x1dcfa7(0xdb)](startSession,_0x1167c9,_0x161085['id']),console[_0x1dcfa7(0xf0)](_0x1dcfa7(0x14e)+_0x161085[_0x1dcfa7(0xd8)]));}catch{}}export async function featureReport(_0x388fd5,_0x128885){const _0x3385e7=_0x143671,_0x545a46={'nacDU':_0x3385e7(0xfd),'ckcjO':function(_0x2f1990,_0x3eb26d,_0x5e3149){return _0x2f1990(_0x3eb26d,_0x5e3149);},'aMZcl':function(_0x2dac6a,_0x3f2511,_0x2275da,_0x5308e3){return _0x2dac6a(_0x3f2511,_0x2275da,_0x5308e3);},'bdyvL':function(_0x267159,_0x581d30){return _0x267159(_0x581d30);}},_0x4a30ed=_0x388fd5||await getActiveFeatureId();if(!_0x4a30ed)throw new Error(_0x3385e7(0xd6));console['log'](_0x545a46['nacDU']);const _0x34fe2d=await _0x545a46['ckcjO'](getFeatureReportMarkdown,_0x4a30ed,{'style':_0x128885['style']}),_0x2c5a5c=_0x128885['output']||_0x545a46['aMZcl'](join,getRangerDir(),'reports',_0x4a30ed+'.md'),_0x1a3331=_0x545a46['ckcjO'](join,_0x2c5a5c,'..');!_0x545a46[_0x3385e7(0x181)](existsSync,_0x1a3331)&&await mkdir(_0x1a3331,{'recursive':!![]}),await writeFile(_0x2c5a5c,_0x34fe2d,_0x3385e7(0xe3)),console[_0x3385e7(0xf0)](_0x3385e7(0xd1)+_0x2c5a5c);}function getScenarioResult(_0x284127){const _0xb63925=_0x143671,_0x4b75ed={'YQUKv':'closed','fMiRN':_0xb63925(0xd0)};if(_0x284127[_0xb63925(0xcb)]===_0xb63925(0xc3))return _0x284127['terminalReason']??_0x4b75ed[_0xb63925(0x14d)];if(_0x284127['status']===_0xb63925(0xcf))return _0x4b75ed['fMiRN'];return _0x284127[_0xb63925(0xcb)];}function getScenarioRationale(_0xdff161,_0x346080){const _0x5c7567=_0x143671;if(_0x346080)return _0x346080;if(_0xdff161[_0x5c7567(0x185)])return _0xdff161['blockedReason'];if(_0xdff161[_0x5c7567(0x186)])return _0xdff161['incompleteReason'];if(_0xdff161['canceledReason'])return _0xdff161['canceledReason'];if(_0xdff161['notes'])return _0xdff161['notes'];return null;}export async function featureReportPrDescription(_0x1a42f4,_0x11bd43){const _0x1b5804=_0x143671,_0xfa42a4={'YqGCX':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','DHeBP':function(_0x3ea8af,_0x5cf7fb){return _0x3ea8af(_0x5cf7fb);},'kEqvP':function(_0x181715,_0x1e4356,_0x575e93){return _0x181715(_0x1e4356,_0x575e93);},'ukvTB':function(_0x333b6b,_0x50a435){return _0x333b6b===_0x50a435;},'KVXfD':_0x1b5804(0xc9),'TPyZZ':function(_0x468ef5,_0x219583){return _0x468ef5>_0x219583;},'HIyQz':'\x0aAvailable\x20scenarios:','kSUjD':function(_0x5486a5,_0x8a3ba2){return _0x5486a5<_0x8a3ba2;},'GDTzx':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x428374=_0x1a42f4||await getActiveFeatureId();if(!_0x428374)throw new Error(_0xfa42a4[_0x1b5804(0xde)]);const _0x52f6ad=await _0xfa42a4['DHeBP'](getFeature,_0x428374),_0x4a4e67=_0x52f6ad['checklistItems']||[],_0x4fd78e=_0xfa42a4['kEqvP'](getCurrentSessionItems,_0x52f6ad,_0x4a4e67);_0xfa42a4['ukvTB'](_0x4fd78e['length'],0x0)&&(console[_0x1b5804(0x128)](_0xfa42a4['KVXfD']),process[_0x1b5804(0x118)](0x1));const _0x2ca259=_0x11bd43['excludeScenarios']??[],_0x284875=_0x2ca259['filter'](_0x462b35=>!Number[_0x1b5804(0x140)](_0x462b35)||_0x462b35<0x1||_0x462b35>_0x4fd78e['length']);if(_0xfa42a4[_0x1b5804(0x12f)](_0x284875[_0x1b5804(0x148)],0x0)){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x284875['join'](',\x20')),console['log'](_0xfa42a4[_0x1b5804(0x159)]);for(let _0x197444=0x0;_0xfa42a4[_0x1b5804(0xb8)](_0x197444,_0x4fd78e[_0x1b5804(0x148)]);_0x197444++){console['log']('\x20\x20'+(_0x197444+0x1)+'.\x20'+_0x4fd78e[_0x197444]['description']);}process['exit'](0x1);}const _0x4ad68c=new Set(_0x2ca259[_0x1b5804(0x105)](_0x542937=>_0x542937-0x1)),_0x16eba3=_0x4fd78e['filter']((_0x32019e,_0x18319e)=>!_0x4ad68c['has'](_0x18319e));_0x16eba3['length']===0x0&&(console[_0x1b5804(0x128)](_0xfa42a4['GDTzx']),process[_0x1b5804(0x118)](0x1));if(_0x11bd43['json'])await outputJsonReport(_0x428374,_0x52f6ad,_0x16eba3);else{const _0x2bdb10=await getFeatureReportMarkdown(_0x428374,{'itemIds':_0x16eba3[_0x1b5804(0x105)](_0x19cc92=>_0x19cc92['id'])});process[_0x1b5804(0x171)]['write'](_0x2bdb10['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x189981,_0xa60b80,_0x12058e){const _0x2c6454=_0x143671,_0x2c7859={'TmKRV':function(_0x1788bc,_0xb403a6){return _0x1788bc(_0xb403a6);},'HPghv':function(_0x3d387d,_0x1d06df){return _0x3d387d===_0x1d06df;},'zDCbf':function(_0x32f534,_0x356033,_0x8be21f){return _0x32f534(_0x356033,_0x8be21f);},'gpWoP':function(_0x2a76ad){return _0x2a76ad();}},_0x95c672=_0x2c7859[_0x2c6454(0x13d)](getApiBaseUrl),_0x172d37=await _0x2c7859['TmKRV'](getFeatureReport,_0x189981),_0x4c09c5=new Map(_0x172d37['checklistItems']['map'](_0x11de66=>[_0x11de66['id'],_0x11de66])),_0x44771d=await Promise[_0x2c6454(0x146)](_0x12058e['map'](async _0x4ee6ae=>{const _0x324a91=_0x2c6454,_0x4eb622=_0x4c09c5[_0x324a91(0x188)](_0x4ee6ae['id']),_0x811ca8=_0x4eb622?.[_0x324a91(0x111)]??null;let _0x2117e4=[];if(_0x4ee6ae['browserSessionId'])try{const {steps:_0x2de12a}=await _0x2c7859[_0x324a91(0x174)](getBrowserSessionSteps,_0x4ee6ae[_0x324a91(0xda)]);_0x2de12a[_0x324a91(0x148)]>0x0&&(_0x2117e4=_0x2de12a[_0x324a91(0x105)](_0x3a98e1=>{const _0x528f52=_0x324a91,_0x17f3e4=_0x3a98e1[_0x528f52(0x142)][_0x528f52(0x11f)](_0x39ebb2=>_0x39ebb2[_0x528f52(0x151)]==='screenshot'&&_0x39ebb2['timing']==='after')??_0x3a98e1[_0x528f52(0x142)]['find'](_0x4fcbab=>_0x4fcbab['assetType']==='screenshot');let _0x117019=null,_0x78eab0=null;if(_0x17f3e4){const _0x549dbf=_0x17f3e4[_0x528f52(0x166)]['location']['split']('/')['pop']();_0x117019=_0x95c672+'/api/v1/mcp/browser-sessions/'+_0x4ee6ae['browserSessionId']+_0x528f52(0x150)+_0x549dbf,_0x549dbf&&(_0x78eab0=_0x549dbf['replace'](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x528f52(0xee)](/[-_]/g,'\x20'));}return{'description':_0x78eab0||_0x3a98e1[_0x528f52(0xc1)]||_0x3a98e1['stepName']||_0x528f52(0xfe)+_0x3a98e1[_0x528f52(0xb9)],'screenshot':_0x117019,'is_key_step':_0x3a98e1[_0x528f52(0x155)]};}));}catch{}return _0x2c7859['HPghv'](_0x2117e4['length'],0x0)&&_0x811ca8?.[_0x324a91(0x190)]&&(_0x2117e4=_0x811ca8[_0x324a91(0x190)][_0x324a91(0x105)]((_0x1b1678,_0x412f05)=>({'description':_0x324a91(0xdc)+(_0x412f05+0x1),'screenshot':_0x1b1678,'is_key_step':![]}))),{'description':_0x4ee6ae['description'],'result':getScenarioResult(_0x4ee6ae),'rationale':_0x2c7859['zDCbf'](getScenarioRationale,_0x4ee6ae,_0x811ca8?.[_0x324a91(0x13a)]),'steps':_0x2117e4};})),_0x4ac808={'url':_0xa60b80[_0x2c6454(0x18f)],'scenarios':_0x44771d};process[_0x2c6454(0x171)]['write'](JSON['stringify'](_0x4ac808,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x11cfab){const _0x4d28d9=_0x143671,_0x5cdbd9={'Rbjyw':function(_0x3ddcd9){return _0x3ddcd9();},'XrcDL':_0x4d28d9(0xc4),'RDVxp':function(_0x1fd2a8,_0x2813b9){return _0x1fd2a8(_0x2813b9);},'FZerE':_0x4d28d9(0xbc),'ziFCo':function(_0x4379ef,_0x492684){return _0x4379ef(_0x492684);},'njMGg':function(_0x38b725,_0xdd5125){return _0x38b725===_0xdd5125;},'AmdwN':'completed','JZoqn':function(_0x2b3cc5,_0x5c5fc4,_0x51e167){return _0x2b3cc5(_0x5c5fc4,_0x51e167);}},_0x20f1da=_0x11cfab||await _0x5cdbd9[_0x4d28d9(0x163)](getActiveFeatureId);if(!_0x20f1da)throw new Error(_0x5cdbd9[_0x4d28d9(0xb3)]);const _0x360988=await _0x5cdbd9['RDVxp'](getFeature,_0x20f1da);if(!_0x360988['currentSessionId'])throw new Error(_0x5cdbd9[_0x4d28d9(0xb2)]);const {sessions:_0x3c1d7e}=await _0x5cdbd9['ziFCo'](listFeatureSessions,_0x20f1da),_0x5e2974=_0x3c1d7e['find'](_0x4d6e53=>_0x4d6e53['id']===_0x360988['currentSessionId']);if(!_0x5e2974)throw new Error(_0x4d28d9(0x13b));if(_0x5cdbd9['njMGg'](_0x5e2974['status'],_0x5cdbd9[_0x4d28d9(0xff)])){console['log'](_0x4d28d9(0xdf));return;}if(_0x5e2974['status']!==_0x4d28d9(0xd0))throw new Error(_0x4d28d9(0xc5)+_0x5e2974['status']);console[_0x4d28d9(0xf0)]('\x0aConcluding\x20session...'),await _0x5cdbd9[_0x4d28d9(0x18c)](concludeSession,_0x20f1da,_0x360988['currentSessionId']),console['log'](_0x4d28d9(0x101)+_0x5e2974['iteration']+'\x20concluded.'),console['log'](_0x4d28d9(0xf7));}function _0x4b3f(_0x480af9,_0x59f287){_0x480af9=_0x480af9-0xb1;const _0x22403f=_0x2240();let _0x4b3f82=_0x22403f[_0x480af9];return _0x4b3f82;}export async function featureSessions(_0x1fcf1c){const _0x546a46=_0x143671,_0x1f81ee={'FasRZ':function(_0x1bd3c4,_0x3fd1fa){return _0x1bd3c4(_0x3fd1fa);},'FvqqV':'No\x20sessions\x20found.','wBlae':function(_0x51d8b2,_0x10d1d7){return _0x51d8b2===_0x10d1d7;},'CHjba':'completed'},_0x39794b=_0x1fcf1c||await getActiveFeatureId();if(!_0x39794b)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x4d6d5f=await getFeature(_0x39794b);console['log'](_0x546a46(0x18e)+_0x4d6d5f[_0x546a46(0x153)]+'\x0a');const {sessions:_0x13ac15}=await _0x1f81ee['FasRZ'](listFeatureSessions,_0x39794b);if(_0x13ac15['length']===0x0){console[_0x546a46(0xf0)](_0x1f81ee['FvqqV']);return;}for(const _0x55abf3 of _0x13ac15){const _0x1c5521=_0x1f81ee['wBlae'](_0x55abf3['status'],_0x1f81ee[_0x546a46(0xc7)])?'✅':_0x1f81ee[_0x546a46(0xc8)](_0x55abf3['status'],'in_progress')?'🔄':'▶️';console[_0x546a46(0xf0)](_0x1c5521+_0x546a46(0xf4)+_0x55abf3['iteration']+'\x20('+_0x55abf3['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x55abf3[_0x546a46(0xcb)]),console['log'](_0x546a46(0x157)+new Date(_0x55abf3[_0x546a46(0xd4)])['toLocaleString']()),_0x55abf3[_0x546a46(0x15e)]&&console[_0x546a46(0xf0)]('\x20\x20\x20Completed:\x20'+new Date(_0x55abf3[_0x546a46(0x15e)])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x143e5e,_0x16c38f){const _0x5c8b5a=_0x143671,_0x4971f5={'hHjFF':function(_0x1fd3be){return _0x1fd3be();}},_0x2bddc3=_0x16c38f||await _0x4971f5['hHjFF'](getActiveFeatureId);if(!_0x2bddc3)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 _0x1c51f1=await getFeature(_0x2bddc3);if(_0x1c51f1[_0x5c8b5a(0x191)]&&!_0x1c51f1['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x1c51f1[_0x5c8b5a(0x18f)]);await createChecklistItem(_0x2bddc3,_0x143e5e);const _0x6b492=await getFeature(_0x2bddc3);console[_0x5c8b5a(0xf0)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x6b492,_0x6b492[_0x5c8b5a(0x12e)]);}export async function featureEditScenario(_0x32d7f0,_0x3601c1){const _0x1a1507=_0x143671,_0x25eaa1={'LRuHh':function(_0x5e094b){return _0x5e094b();},'kbXCo':_0x1a1507(0xd5),'DWJeg':function(_0x37f4e5,_0x130a03){return _0x37f4e5(_0x130a03);},'TGcij':_0x1a1507(0x16c),'UyAQa':_0x1a1507(0xb6),'dLSpb':_0x1a1507(0x165),'aqkwl':_0x1a1507(0x107),'OLABI':function(_0x2dc7fd,_0xf2643b){return _0x2dc7fd<_0xf2643b;},'NnIhL':function(_0x16840e,_0x7338e3){return _0x16840e>=_0x7338e3;},'naObE':function(_0x21558c,_0x45b60b,_0x3c6d5f,_0xcf2e48){return _0x21558c(_0x45b60b,_0x3c6d5f,_0xcf2e48);},'RsfOk':function(_0x4c07e1,_0x382990){return _0x4c07e1(_0x382990);}},_0x90123b=_0x3601c1['id']||await _0x25eaa1[_0x1a1507(0x121)](getActiveFeatureId);!_0x90123b&&(console[_0x1a1507(0x128)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x1a1507(0x128)](_0x25eaa1[_0x1a1507(0x115)]),process['exit'](0x1));const _0x15f5d3=await _0x25eaa1[_0x1a1507(0x10a)](getFeature,_0x90123b);_0x15f5d3[_0x1a1507(0x191)]&&!_0x15f5d3[_0x1a1507(0x191)]['submittedAt']&&(console['error'](_0x25eaa1[_0x1a1507(0x15d)]),console[_0x1a1507(0x128)](_0x25eaa1['UyAQa']),console['error']('\x20\x20'+_0x15f5d3['dashboardUrl']),process['exit'](0x1));const _0x490f0d=_0x15f5d3[_0x1a1507(0x12e)]||[];_0x490f0d[_0x1a1507(0x148)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x3601c1['scenario']===undefined){console['error'](_0x25eaa1[_0x1a1507(0xec)]),console[_0x1a1507(0xf0)](_0x25eaa1[_0x1a1507(0x120)]);for(let _0x3c8c46=0x0;_0x25eaa1['OLABI'](_0x3c8c46,_0x490f0d['length']);_0x3c8c46++){console[_0x1a1507(0xf0)]('\x20\x20'+(_0x3c8c46+0x1)+'.\x20'+_0x490f0d[_0x3c8c46][_0x1a1507(0xc1)]);}process[_0x1a1507(0x118)](0x1);}const _0x15fa36=_0x3601c1[_0x1a1507(0x136)]-0x1;if(_0x25eaa1['OLABI'](_0x15fa36,0x0)||_0x25eaa1['NnIhL'](_0x15fa36,_0x490f0d['length'])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x3601c1[_0x1a1507(0x136)]+'.\x20Feature\x20review\x20has\x20'+_0x490f0d[_0x1a1507(0x148)]+'\x20scenarios.'),console[_0x1a1507(0xf0)](_0x25eaa1[_0x1a1507(0x120)]);for(let _0x3e597c=0x0;_0x3e597c<_0x490f0d[_0x1a1507(0x148)];_0x3e597c++){console['log']('\x20\x20'+(_0x3e597c+0x1)+'.\x20'+_0x490f0d[_0x3e597c]['description']);}process[_0x1a1507(0x118)](0x1);}const _0x48d135=_0x490f0d[_0x15fa36];await _0x25eaa1[_0x1a1507(0x131)](updateChecklistItem,_0x90123b,_0x48d135['id'],{'description':_0x32d7f0});const _0x352743=await _0x25eaa1['RsfOk'](getFeature,_0x90123b);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x352743,_0x352743['checklistItems']);}async function downloadFeedbackImage(_0x25f51b,_0x28e216){const _0x1b4156=_0x143671,_0x59d12c={'DrxdT':function(_0x29e15e){return _0x29e15e();},'qYApp':function(_0x4ee8c1,_0x491c26,_0x4dc079){return _0x4ee8c1(_0x491c26,_0x4dc079);},'rYiRq':function(_0x6a600d,_0x3cc5f8,_0x4c5a9c){return _0x6a600d(_0x3cc5f8,_0x4c5a9c);},'IjLgv':function(_0x5cc590,_0x4ec834){return _0x5cc590(_0x4ec834);}};try{const _0x75d51a=join(_0x59d12c['DrxdT'](getRangerDir),_0x1b4156(0x187));await _0x59d12c[_0x1b4156(0xf8)](mkdir,_0x75d51a,{'recursive':!![]});const _0x28f90d=_0x59d12c[_0x1b4156(0x10b)](join,_0x75d51a,'comment_'+_0x28e216+_0x1b4156(0x10e)),_0x50aba7=await _0x59d12c[_0x1b4156(0xb4)](fetch,_0x25f51b);if(!_0x50aba7['ok'])return null;const _0x399510=Buffer[_0x1b4156(0x11a)](await _0x50aba7[_0x1b4156(0xd2)]());return await _0x59d12c['qYApp'](writeFile,_0x28f90d,_0x399510),_0x28f90d;}catch{return null;}}export async function featureGetReview(_0x4f96ab){const _0x3d8123=_0x143671,_0x3d2fb1={'fYlPi':function(_0x1b0f80){return _0x1b0f80();},'QxVkP':function(_0x276430,_0xec573a){return _0x276430(_0xec573a);},'MImQL':function(_0x30a128,_0x4bb69d){return _0x30a128===_0x4bb69d;},'FeXIp':function(_0x365f01,_0x5ac13e){return _0x365f01>_0x5ac13e;},'UwIJY':'numeric','OfnKG':_0x3d8123(0xb7),'ArUAW':_0x3d8123(0x152),'gbiDD':function(_0x18af61,_0x3fd21b){return _0x18af61>=_0x3fd21b;},'IfHLn':function(_0x540c2f,_0x23a205){return _0x540c2f+_0x23a205;}},_0x512eec=_0x4f96ab||await _0x3d2fb1['fYlPi'](getActiveFeatureId);if(!_0x512eec)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 _0x32a458=await getFeature(_0x512eec),{items:_0x2e11df}=await _0x3d2fb1[_0x3d8123(0x156)](getActionItems,_0x512eec);console[_0x3d8123(0xf0)]('\x0a📋\x20Feedback\x20for:\x20'+_0x32a458[_0x3d8123(0x153)]+'\x20('+_0x32a458['id']+')\x0a');if(_0x3d2fb1['MImQL'](_0x2e11df['length'],0x0)){console['log'](_0x3d8123(0x176));return;}for(let _0x2ee74c=0x0;_0x2ee74c<_0x2e11df['length'];_0x2ee74c++){const _0x10f04f=_0x2e11df[_0x2ee74c],_0x501215=_0x3d2fb1[_0x3d8123(0x100)](_0x10f04f[_0x3d8123(0x102)],0x1)?_0x3d8123(0xea)+_0x10f04f['version']+')':'',_0x14274d=await getItemFeedback(_0x512eec,_0x10f04f['id']);if(_0x14274d['unaddressedComments'][_0x3d8123(0x148)]>0x0){console['log']('Scenario\x20'+(_0x2ee74c+0x1)+_0x3d8123(0x189)+_0x10f04f['description']+'\x22'+_0x501215+'\x20—\x20'+_0x14274d['unaddressedComments']['length']+_0x3d8123(0xf9));for(const _0x17f4f6 of _0x14274d['unaddressedComments']){const _0x52fc0f=new Date(_0x17f4f6[_0x3d8123(0xd4)])['toLocaleDateString']('en-US',{'month':'short','day':_0x3d2fb1[_0x3d8123(0x195)]}),_0x144f74=_0x17f4f6['authorName']||_0x17f4f6['authorEmail']||_0x3d2fb1['OfnKG'];console['log']('\x20\x20💬\x20'+_0x144f74+'\x20('+_0x52fc0f+_0x3d8123(0x184)+_0x17f4f6[_0x3d8123(0x12d)]+'\x22');if(_0x17f4f6['assetUrl']){const _0x51d3ef=await downloadFeedbackImage(_0x17f4f6['assetUrl'],_0x17f4f6['id']);_0x51d3ef&&console[_0x3d8123(0xf0)](_0x3d8123(0x13c)+_0x51d3ef);}if(_0x17f4f6['domRef']){const _0x4eb15b=_0x17f4f6['domRef'][_0x3d8123(0xe6)][_0x3d8123(0x137)](_0x3d2fb1['ArUAW'])['pop']()?.['split'](':')[0x0]||_0x3d8123(0xe2),_0x5913b3=_0x17f4f6['domRef']['textContent']?'\x20\x22'+_0x17f4f6['domRef']['textContent'][_0x3d8123(0xf1)](0x0,0x3c)+'\x22':'';console['log'](_0x3d8123(0x168)+_0x4eb15b+'>'+_0x5913b3),console[_0x3d8123(0xf0)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x17f4f6[_0x3d8123(0x11b)][_0x3d8123(0xe6)]);}else{if(_0x17f4f6[_0x3d8123(0xf3)]){const _0x2f03c9=_0x17f4f6['spatial']['coordinates'];_0x3d2fb1['MImQL'](_0x17f4f6['spatial']['type'],_0x3d8123(0x178))&&_0x3d2fb1[_0x3d8123(0x15f)](_0x2f03c9[_0x3d8123(0x148)],0x2)?console[_0x3d8123(0xf0)](_0x3d8123(0xfb)+_0x2f03c9[0x0]['toFixed'](0x2)+',\x20'+_0x2f03c9[0x1][_0x3d8123(0xf2)](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x17f4f6['spatial'][_0x3d8123(0x158)]+_0x3d8123(0x18b)+_0x2f03c9['map'](_0x450b72=>_0x450b72['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x14274d['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x46b9c2 of _0x14274d['canonicalFlow'][_0x3d8123(0x137)]('\x0a')){console['log'](_0x3d8123(0x108)+_0x46b9c2);}}}else console['log']('Scenario\x20'+_0x3d2fb1[_0x3d8123(0x14a)](_0x2ee74c,0x1)+_0x3d8123(0x189)+_0x10f04f['description']+'\x22'+_0x501215+_0x3d8123(0x17f)),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x3d8123(0xf0)]('');}}export async function featureDelete(_0x5c5141){const _0x2fa18d=_0x143671,_0x2e5a1b={'zDuLr':function(_0x1ae3fc){return _0x1ae3fc();},'ZmjlS':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','SAmFq':function(_0x192b14,_0x3e4545){return _0x192b14(_0x3e4545);},'axjle':function(_0x351657,_0x412946){return _0x351657(_0x412946);}},_0x2ef0f7=_0x5c5141||await _0x2e5a1b[_0x2fa18d(0x11e)](getActiveFeatureId);if(!_0x2ef0f7)throw new Error(_0x2e5a1b['ZmjlS']);const _0x4d9c28=await _0x2e5a1b[_0x2fa18d(0xe8)](getFeature,_0x2ef0f7);await _0x2e5a1b[_0x2fa18d(0xed)](softDeleteFeature,_0x2ef0f7),console[_0x2fa18d(0xf0)](_0x2fa18d(0x169)+_0x4d9c28[_0x2fa18d(0x153)]+'\x20('+_0x2ef0f7+')'),console[_0x2fa18d(0xf0)](_0x2fa18d(0x124)+_0x2ef0f7);}export async function featureRestore(_0x273124){const _0xf648de=_0x143671,_0x5eb407={'uGxCM':function(_0x54b760,_0x3397fc){return _0x54b760(_0x3397fc);}};await _0x5eb407['uGxCM'](restoreFeature,_0x273124);const _0x390955=await getFeature(_0x273124);console[_0xf648de(0xf0)](_0xf648de(0x194)+_0x390955['name']+'\x20('+_0x273124+')'),displayFeature(_0x390955,_0x390955['checklistItems']);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x1d5b(){const _0x36f6b8=['error','10FVBUtl','AZAYF','493588XMzBHT','88630slyXRX','505883zalSxL','81036tJQxsb','keys','once','join','exit','5acGPbK','187PwtIQO','597462ymyLOm','24mxILHj','11329yBmqQY','1283706Gzbodb'];_0x1d5b=function(){return _0x36f6b8;};return _0x1d5b();}(function(_0xd5e207,_0x21242d){const _0x3462e1=_0x4ee7,_0x5bd76e=_0xd5e207();while(!![]){try{const _0x2227a9=-parseInt(_0x3462e1(0xd4))/0x1*(parseInt(_0x3462e1(0xd7))/0x2)+-parseInt(_0x3462e1(0xd2))/0x3+parseInt(_0x3462e1(0xd9))/0x4*(-parseInt(_0x3462e1(0xd0))/0x5)+-parseInt(_0x3462e1(0xdc))/0x6+-parseInt(_0x3462e1(0xdb))/0x7*(-parseInt(_0x3462e1(0xd3))/0x8)+parseInt(_0x3462e1(0xd5))/0x9+parseInt(_0x3462e1(0xda))/0xa*(parseInt(_0x3462e1(0xd1))/0xb);if(_0x2227a9===_0x21242d)break;else _0x5bd76e['push'](_0x5bd76e['shift']());}catch(_0x131224){_0x5bd76e['push'](_0x5bd76e['shift']());}}}(_0x1d5b,0x1caa2));function _0x4ee7(_0x1a61a4,_0x284011){_0x1a61a4=_0x1a61a4-0xce;const _0x1d5b69=_0x1d5b();let _0x4ee776=_0x1d5b69[_0x1a61a4];return _0x4ee776;}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 _0x481fb4=_0x4ee7,_0x5ca5bc={'imDqm':'SIGTERM','HZmdB':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x434610=()=>{process['exit'](0x0);};process[_0x481fb4(0xde)]('SIGINT',_0x434610),process['once'](_0x5ca5bc['imDqm'],_0x434610),process['once'](_0x5ca5bc['HZmdB'],_0x434610),cancellationHandlersInstalled=!![];}export async function hook(_0x31f665,_0x554e2b){const _0x52202e=_0x4ee7,_0x5447ea={'AZAYF':function(_0x29ac5b,_0x2dff1a){return _0x29ac5b(_0x2dff1a);}};installCancellationHandlers();const _0x28c429=HOOKS[_0x31f665];if(!_0x28c429){const _0x1303df=Object[_0x52202e(0xdd)](HOOKS)[_0x52202e(0xce)](',\x20');console[_0x52202e(0xd6)]('Unknown\x20hook:\x20'+_0x31f665),console['error']('Valid\x20hooks:\x20'+_0x1303df),process[_0x52202e(0xcf)](0x1);}await _0x5447ea[_0x52202e(0xd8)](_0x28c429,_0x554e2b);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const _0x37d15a=_0xd005;(function(_0x5d594d,_0xce0550){const _0x24adfa=_0xd005,_0x3d9a99=_0x5d594d();while(!![]){try{const _0xd38dc=-parseInt(_0x24adfa(0xe8))/0x1*(parseInt(_0x24adfa(0xe2))/0x2)+parseInt(_0x24adfa(0xeb))/0x3*(-parseInt(_0x24adfa(0xe3))/0x4)+parseInt(_0x24adfa(0xea))/0x5*(parseInt(_0x24adfa(0xe4))/0x6)+parseInt(_0x24adfa(0xe1))/0x7+-parseInt(_0x24adfa(0xe6))/0x8+-parseInt(_0x24adfa(0xe7))/0x9+parseInt(_0x24adfa(0xe9))/0xa;if(_0xd38dc===_0xce0550)break;else _0x3d9a99['push'](_0x3d9a99['shift']());}catch(_0x4cc6ce){_0x3d9a99['push'](_0x3d9a99['shift']());}}}(_0x1469,0x7201f));import{readHookInput}from'./output.js';function _0xd005(_0x550a97,_0x2b9a23){_0x550a97=_0x550a97-0xe0;const _0x146911=_0x1469();let _0xd005b6=_0x146911[_0x550a97];return _0xd005b6;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT=_0x37d15a(0xe5);export async function autoPrompt(){const _0x3bcd7f=_0x37d15a,_0x580cfa={'JYfbe':function(_0x1d5882,_0x542b42){return _0x1d5882===_0x542b42;},'KQNGr':function(_0x527d7b){return _0x527d7b();},'qabII':function(_0x1041a3,_0x1e7e02){return _0x1041a3(_0x1e7e02);}};if(_0x580cfa['JYfbe'](resolveHookMode(),'off'))return;const _0x45a0a6=await _0x580cfa['KQNGr'](readHookInput),_0x503c73=_0x45a0a6?.['session_id'];if(!_0x503c73)return;if(_0x580cfa[_0x3bcd7f(0xe0)](isSessionEnabled,_0x503c73)||hasSessionBeenPrompted(_0x503c73))return;markSessionPrompted(_0x503c73),console['log'](AUTO_PROMPT_TEXT);}function _0x1469(){const _0x102649=['9lNVhYW','11777700sMZTsc','8390ZnnxXL','268899BOgVtv','qabII','2281132lOTDHY','8642CiaadB','16wygUqs','1080CzbQvC','\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.','3239968SgaVMy','4826646PwLQPJ'];_0x1469=function(){return _0x102649;};return _0x1469();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x39f5(){const _0x470882=['env','CLAUDE_SESSION_ID','1394217kBrCeu','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','7068306kNtszv','1794278VHSFqF','2641992gJNqwI','eTSyY','8EBjVVN','48ozZGON','107815lcAuOR','master','65212jIiwWD','uoSui','2745798PfqqsT','.\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`.'];_0x39f5=function(){return _0x470882;};return _0x39f5();}function _0x14d8(_0x461a91,_0x563b94){_0x461a91=_0x461a91-0x12e;const _0x39f59d=_0x39f5();let _0x14d864=_0x39f59d[_0x461a91];return _0x14d864;}(function(_0xe69340,_0x3949ce){const _0x5cf486=_0x14d8,_0x8858df=_0xe69340();while(!![]){try{const _0x11359b=-parseInt(_0x5cf486(0x134))/0x1+-parseInt(_0x5cf486(0x13d))/0x2+-parseInt(_0x5cf486(0x12e))/0x3+parseInt(_0x5cf486(0x130))/0x4*(-parseInt(_0x5cf486(0x132))/0x5)+parseInt(_0x5cf486(0x136))/0x6+parseInt(_0x5cf486(0x13c))/0x7+-parseInt(_0x5cf486(0x131))/0x8*(-parseInt(_0x5cf486(0x13a))/0x9);if(_0x11359b===_0x3949ce)break;else _0x8858df['push'](_0x8858df['shift']());}catch(_0x35cee3){_0x8858df['push'](_0x8858df['shift']());}}}(_0x39f5,0x7cb08));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x3fb346){const _0x1fcf3e=_0x14d8,_0x443bea={'NWFNt':function(_0x1dad4e,_0x4c52a3){return _0x1dad4e(_0x4c52a3);},'eTSyY':'main','uoSui':function(_0x49709e,_0x4c0d1d){return _0x49709e!==_0x4c0d1d;},'fuKsy':function(_0x4fb242,_0xcc059c){return _0x4fb242!==_0xcc059c;},'IxvlR':_0x1fcf3e(0x133)},_0x1d80da=_0x3fb346||process[_0x1fcf3e(0x138)][_0x1fcf3e(0x139)]||'';_0x1d80da&&_0x443bea['NWFNt'](disableSession,_0x1d80da);const _0xd56036=getCurrentBranch();_0xd56036&&_0xd56036!==_0x443bea[_0x1fcf3e(0x12f)]&&_0x443bea['uoSui'](_0xd56036,_0x1fcf3e(0x133))&&_0x443bea['NWFNt'](disableBranch,_0xd56036),printBlock(_0x1fcf3e(0x13b)+(_0xd56036&&_0x443bea[_0x1fcf3e(0x135)](_0xd56036,_0x443bea['eTSyY'])&&_0x443bea['fuKsy'](_0xd56036,_0x443bea['IxvlR'])?'\x20and\x20branch\x20\x27'+_0xd56036+'\x27':'')+_0x1fcf3e(0x137));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x48567c,_0x18b02c){const _0x3fa1d8=_0x5295,_0x54d4f8=_0x48567c();while(!![]){try{const _0x4c373b=-parseInt(_0x3fa1d8(0xbf))/0x1*(parseInt(_0x3fa1d8(0xc3))/0x2)+-parseInt(_0x3fa1d8(0xc0))/0x3+parseInt(_0x3fa1d8(0xc9))/0x4+-parseInt(_0x3fa1d8(0xc1))/0x5+-parseInt(_0x3fa1d8(0xcb))/0x6+-parseInt(_0x3fa1d8(0xbd))/0x7*(-parseInt(_0x3fa1d8(0xbe))/0x8)+parseInt(_0x3fa1d8(0xba))/0x9*(parseInt(_0x3fa1d8(0xc8))/0xa);if(_0x4c373b===_0x18b02c)break;else _0x54d4f8['push'](_0x54d4f8['shift']());}catch(_0x32d2c0){_0x54d4f8['push'](_0x54d4f8['shift']());}}}(_0x4b12,0x6e054));function _0x5295(_0x4a94db,_0x39a898){_0x4a94db=_0x4a94db-0xba;const _0x4b126e=_0x4b12();let _0x5295d5=_0x4b126e[_0x4a94db];return _0x5295d5;}function _0x4b12(){const _0x2a860d=['72470PZvZQA','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','2062oDKlco','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','#\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`','\x0a\x0a**Branch\x20\x27','23360MGqMsa','140640lcJXsG','env','2337462EJxJKX','\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`.','2718ZQMQsS','ranger\x20setup\x20--opencode','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','7eTxCQP','6985928QkcGfL','644vSIQjA','285582fHNruf'];_0x4b12=function(){return _0x2a860d;};return _0x4b12();}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x3d3b67){const _0x5c8c1b=_0x5295,_0x3c2d97={'jbVAg':function(_0xba8fc5,_0x112462){return _0xba8fc5(_0x112462);},'QkbZu':_0x5c8c1b(0xbb),'CkUNz':'ranger\x20setup','yLvla':function(_0x18fa81,_0x2d638a){return _0x18fa81(_0x2d638a);},'olOfl':function(_0x4338c1){return _0x4338c1();},'IZjWx':function(_0x305553,_0x6ba8b6){return _0x305553!==_0x6ba8b6;}},_0x1e930f=_0x3d3b67||process[_0x5c8c1b(0xca)]['CLAUDE_SESSION_ID']||'',_0xad08b0=_0x3c2d97['jbVAg'](Boolean,_0x3d3b67),_0x395db0=await getToken();if(!_0x395db0){const _0x2460f9=_0xad08b0?_0x3c2d97['QkbZu']:_0x3c2d97['CkUNz'],_0x1bc2e3=_0xad08b0?_0x5c8c1b(0xc4):_0x5c8c1b(0xc5);printBlock(_0x5c8c1b(0xc6)+_0x2460f9+_0x5c8c1b(0xbc)+_0x1bc2e3);return;}try{await update();}catch{}_0x1e930f&&_0x3c2d97['yLvla'](enableSession,_0x1e930f);const _0x535c6c=_0x3c2d97['olOfl'](getCurrentBranch),_0x6f15f4=_0x535c6c&&_0x3c2d97['IZjWx'](_0x535c6c,'main')&&_0x535c6c!=='master'?_0x5c8c1b(0xc7)+_0x535c6c+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x51216a=getRangerSkillContent();printBlock('#\x20RANGER\x20ENABLED'+_0x6f15f4+_0x5c8c1b(0xc2)+_0x51216a+_0x5c8c1b(0xcc));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x34bd(){const _0x6e8969=['190524SogGjq','50087oRGlkp','===\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===','26407095fUZGgf','9WbSfDD','2020888CCNUcm','1486695abUCaG','15MAPVhu','1006004sBZyGN','1640540rBogXE','182QSeinB','8kDjAvr'];_0x34bd=function(){return _0x6e8969;};return _0x34bd();}function _0x3f1d(_0xbb3f76,_0x496570){_0xbb3f76=_0xbb3f76-0x1a5;const _0x34bde3=_0x34bd();let _0x3f1de6=_0x34bde3[_0xbb3f76];return _0x3f1de6;}(function(_0x16fc2f,_0x9aa111){const _0x13165d=_0x3f1d,_0x65c58b=_0x16fc2f();while(!![]){try{const _0x53aa9d=-parseInt(_0x13165d(0x1ac))/0x1*(parseInt(_0x13165d(0x1aa))/0x2)+-parseInt(_0x13165d(0x1a5))/0x3+-parseInt(_0x13165d(0x1a7))/0x4*(parseInt(_0x13165d(0x1a6))/0x5)+-parseInt(_0x13165d(0x1ab))/0x6*(parseInt(_0x13165d(0x1a9))/0x7)+-parseInt(_0x13165d(0x1b0))/0x8*(-parseInt(_0x13165d(0x1af))/0x9)+parseInt(_0x13165d(0x1a8))/0xa+parseInt(_0x13165d(0x1ae))/0xb;if(_0x53aa9d===_0x9aa111)break;else _0x65c58b['push'](_0x65c58b['shift']());}catch(_0x201fd0){_0x65c58b['push'](_0x65c58b['shift']());}}}(_0x34bd,0x8426a));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x1280bc){const _0x5e801f=_0x3f1d,_0x1be0cd={'jgmQl':function(_0x32b5e9,_0x164df5){return _0x32b5e9(_0x164df5);}},_0x25c3e3=await _0x1be0cd['jgmQl'](getEnabledSessionId,_0x1280bc);if(!_0x25c3e3)return;printBlock(_0x5e801f(0x1ad));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x143726,_0x37d5bd){var _0x5e8478=_0x2853,_0x180d57=_0x143726();while(!![]){try{var _0x20a1fa=parseInt(_0x5e8478(0x158))/0x1+parseInt(_0x5e8478(0x15a))/0x2+parseInt(_0x5e8478(0x15d))/0x3+-parseInt(_0x5e8478(0x157))/0x4*(parseInt(_0x5e8478(0x156))/0x5)+-parseInt(_0x5e8478(0x15c))/0x6+-parseInt(_0x5e8478(0x15f))/0x7*(-parseInt(_0x5e8478(0x15b))/0x8)+parseInt(_0x5e8478(0x15e))/0x9*(parseInt(_0x5e8478(0x159))/0xa);if(_0x20a1fa===_0x37d5bd)break;else _0x180d57['push'](_0x180d57['shift']());}catch(_0x2e61d0){_0x180d57['push'](_0x180d57['shift']());}}}(_0x5340,0x795ad));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x2853(_0x563439,_0x2f34b7){_0x563439=_0x563439-0x156;var _0x5340e9=_0x5340();var _0x285313=_0x5340e9[_0x563439];return _0x285313;}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';export{enable}from'./enable.js';export{disable}from'./disable.js';function _0x5340(){var _0xea73c9=['3787JYwafs','5QlYmpz','3930744OlbLTe','712487fPMiVu','280mNmofp','232764awiHbi','328CiIVez','4739250miHxhg','2167080KxSCkv','223785pWDLqm'];_0x5340=function(){return _0xea73c9;};return _0x5340();}export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1b14fc,_0x3a3b2e){const _0x1bee5a=_0x3dab,_0xa2e1b5=_0x1b14fc();while(!![]){try{const _0x27f1d1=parseInt(_0x1bee5a(0x1bd))/0x1+-parseInt(_0x1bee5a(0x1b9))/0x2+-parseInt(_0x1bee5a(0x1be))/0x3*(-parseInt(_0x1bee5a(0x1b7))/0x4)+parseInt(_0x1bee5a(0x1bb))/0x5+-parseInt(_0x1bee5a(0x1b8))/0x6+-parseInt(_0x1bee5a(0x1c0))/0x7*(-parseInt(_0x1bee5a(0x1bf))/0x8)+parseInt(_0x1bee5a(0x1ba))/0x9;if(_0x27f1d1===_0x3a3b2e)break;else _0xa2e1b5['push'](_0xa2e1b5['shift']());}catch(_0x2f68c8){_0xa2e1b5['push'](_0xa2e1b5['shift']());}}}(_0x46a9,0xc3fff));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x4080e6){console['log'](_0x4080e6);}function _0x3dab(_0x16ef6b,_0x468563){_0x16ef6b=_0x16ef6b-0x1b7;const _0x46a923=_0x46a9();let _0x3dab34=_0x46a923[_0x16ef6b];return _0x3dab34;}function _0x46a9(){const _0xb3228a=['stdin','736805CMTAtT','15cWOdge','656cQGOpL','43323tOArqB','158892WydjKN','5795346QFWolx','2350832xEcAOL','6912972WdckEE','3665480ZfGGbs'];_0x46a9=function(){return _0xb3228a;};return _0x46a9();}export async function readHookInput(){const _0x2d6d47=_0x3dab;let _0x3a4e77='';try{for await(const _0xb88392 of process[_0x2d6d47(0x1bc)]){_0x3a4e77+=_0xb88392;}}catch{return null;}if(!_0x3a4e77['trim']())return null;try{return JSON['parse'](_0x3a4e77);}catch{return null;}}export async function getEnabledSessionId(_0x5c4b3f){const _0x128c3e={'TCeHE':function(_0x57a648,_0x5814c6){return _0x57a648(_0x5814c6);},'oBHKF':function(_0x453621){return _0x453621();}};if(_0x5c4b3f)return _0x128c3e['TCeHE'](isSessionEnabled,_0x5c4b3f)?_0x5c4b3f:null;const _0x52d075=await _0x128c3e['oBHKF'](readHookInput),_0x79e4cb=_0x52d075?.['session_id'];if(!_0x79e4cb||!_0x128c3e['TCeHE'](isSessionEnabled,_0x79e4cb))return null;return _0x79e4cb;}export async function getEnabledHookContext(_0x162571){if(_0x162571){if(!isSessionEnabled(_0x162571))return null;return{'sessionId':_0x162571,'input':{'session_id':_0x162571}};}const _0x3fc775=await readHookInput(),_0x5dbf94=_0x3fc775?.['session_id'];if(!_0x5dbf94||!isSessionEnabled(_0x5dbf94))return null;return{'sessionId':_0x5dbf94,'input':_0x3fc775};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x14a170,_0x10e002){const _0x365dad=_0x495c,_0x217f8e=_0x14a170();while(!![]){try{const _0x3d5615=parseInt(_0x365dad(0xfd))/0x1+parseInt(_0x365dad(0xf5))/0x2*(-parseInt(_0x365dad(0xf4))/0x3)+-parseInt(_0x365dad(0xf6))/0x4*(-parseInt(_0x365dad(0xf9))/0x5)+-parseInt(_0x365dad(0xf0))/0x6+parseInt(_0x365dad(0xef))/0x7*(-parseInt(_0x365dad(0xfc))/0x8)+parseInt(_0x365dad(0xf8))/0x9*(-parseInt(_0x365dad(0xf1))/0xa)+parseInt(_0x365dad(0xfb))/0xb;if(_0x3d5615===_0x10e002)break;else _0x217f8e['push'](_0x217f8e['shift']());}catch(_0x402c0d){_0x217f8e['push'](_0x217f8e['shift']());}}}(_0x4063,0x9aaeb));function _0x495c(_0x44ff22,_0x28c0cc){_0x44ff22=_0x44ff22-0xef;const _0x4063af=_0x4063();let _0x495cb7=_0x4063af[_0x44ff22];return _0x495cb7;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x3dcd43){const _0x20adc6=_0x495c,_0x1843c0={'cOjIq':function(_0x2b9172,_0x4d5f90){return _0x2b9172(_0x4d5f90);}},_0x14578d=await getEnabledHookContext(_0x3dcd43);if(!_0x14578d)return;if(_0x14578d[_0x20adc6(0xfe)][_0x20adc6(0xf3)]!=='plan')return;if(!shouldShowPlanReminder(_0x14578d[_0x20adc6(0xf2)]))return;_0x1843c0[_0x20adc6(0xf7)](printBlock,_0x20adc6(0xfa));}function _0x4063(){const _0x8fea99=['10QHPUXx','===\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===','13723688cUSVnK','440432ubkxPC','1118567fhJgNo','input','14ijRKEJ','2027730ANeAvv','290aRwnlY','sessionId','permission_mode','78051PBOqdV','38AXMNzH','484844yfgEll','cOjIq','320472UlJXZy'];_0x4063=function(){return _0x8fea99;};return _0x4063();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x496efc,_0x1b7a0c){const _0x4c70cf=_0x297c,_0x1ddbc9=_0x496efc();while(!![]){try{const _0x54166e=parseInt(_0x4c70cf(0xd7))/0x1+-parseInt(_0x4c70cf(0xd9))/0x2+parseInt(_0x4c70cf(0xd5))/0x3+-parseInt(_0x4c70cf(0xd2))/0x4*(parseInt(_0x4c70cf(0xda))/0x5)+-parseInt(_0x4c70cf(0xd8))/0x6*(-parseInt(_0x4c70cf(0xd6))/0x7)+parseInt(_0x4c70cf(0xd4))/0x8+parseInt(_0x4c70cf(0xd3))/0x9;if(_0x54166e===_0x1b7a0c)break;else _0x1ddbc9['push'](_0x1ddbc9['shift']());}catch(_0x36521b){_0x1ddbc9['push'](_0x1ddbc9['shift']());}}}(_0x5437,0x201cb));function _0x297c(_0x2372a2,_0x562a41){_0x2372a2=_0x2372a2-0xd2;const _0x54376c=_0x5437();let _0x297cb0=_0x54376c[_0x2372a2];return _0x297cb0;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x165844){const _0x341ac2={'OnTwc':function(_0x3ac4af,_0x319ef8){return _0x3ac4af(_0x319ef8);}},_0x1b6246=await _0x341ac2['OnTwc'](getEnabledSessionId,_0x165844);if(!_0x1b6246)return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}function _0x5437(){const _0x3393f8=['2771775jghJeS','730064kTsNZf','11325ndzKaL','3486EoAgJX','155221IfdGBZ','786JrwSmm','513698pWMMQi','95NxrEdj','49492UKsSQI'];_0x5437=function(){return _0x3393f8;};return _0x5437();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3e3878,_0x3342c6){const _0x50c3b0=_0x37ce,_0x23cb2d=_0x3e3878();while(!![]){try{const _0x521b36=-parseInt(_0x50c3b0(0xf8))/0x1*(-parseInt(_0x50c3b0(0xf5))/0x2)+parseInt(_0x50c3b0(0x104))/0x3+-parseInt(_0x50c3b0(0xf9))/0x4+-parseInt(_0x50c3b0(0xfb))/0x5*(-parseInt(_0x50c3b0(0xfc))/0x6)+-parseInt(_0x50c3b0(0xfa))/0x7*(-parseInt(_0x50c3b0(0xfd))/0x8)+-parseInt(_0x50c3b0(0xf7))/0x9*(-parseInt(_0x50c3b0(0xf4))/0xa)+-parseInt(_0x50c3b0(0xfe))/0xb;if(_0x521b36===_0x3342c6)break;else _0x23cb2d['push'](_0x23cb2d['shift']());}catch(_0x391027){_0x23cb2d['push'](_0x23cb2d['shift']());}}}(_0x4995,0xc1313));function _0x37ce(_0x46e543,_0x3c30ff){_0x46e543=_0x46e543-0xf4;const _0x499518=_0x4995();let _0x37ce8f=_0x499518[_0x46e543];return _0x37ce8f;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x5c5b46){const _0x5d648d=_0x37ce,_0x2aeae3={'rADzC':function(_0x4c11f7,_0x23093d){return _0x4c11f7(_0x23093d);},'Kywgl':function(_0x165e76){return _0x165e76();},'wBpaz':'PostToolUse'},_0x58cd0f=await getEnabledSessionId(_0x5c5b46);if(!_0x58cd0f)return;_0x2aeae3[_0x5d648d(0x100)](updateBranchTracking,_0x58cd0f);const _0x4fff32=await _0x2aeae3['Kywgl'](getToken);if(!_0x4fff32)return;const _0x417e03=_0x2aeae3['rADzC'](getSessionEntry,_0x58cd0f);if(_0x417e03){const _0x1cc79a={'hookSpecificOutput':{'hookEventName':_0x2aeae3[_0x5d648d(0x101)],'additionalContext':'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).'}};console['log'](JSON[_0x5d648d(0xff)](_0x1cc79a));return;}const _0x134b97={'hookSpecificOutput':{'hookEventName':_0x5d648d(0x103),'additionalContext':_0x5d648d(0x102)}};console[_0x5d648d(0xf6)](JSON[_0x5d648d(0xff)](_0x134b97));}function _0x4995(){const _0x56957d=['7965706yEADzA','1156125LESPEL','18cznOFU','8Wcghez','14345760QqIkbR','stringify','rADzC','wBpaz','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.','PostToolUse','1513515wXTnzW','229890lYQskm','4cUpAzr','log','153xfJdnr','424928vRklMT','5925328iAmZWl'];_0x4995=function(){return _0x56957d;};return _0x4995();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x19cc0f,_0x37f8ee){const _0x34c73f=_0x2183,_0x544fd0=_0x19cc0f();while(!![]){try{const _0x357630=parseInt(_0x34c73f(0xaa))/0x1+parseInt(_0x34c73f(0xa5))/0x2*(-parseInt(_0x34c73f(0xa3))/0x3)+-parseInt(_0x34c73f(0xa8))/0x4+-parseInt(_0x34c73f(0xa4))/0x5+-parseInt(_0x34c73f(0xa7))/0x6+-parseInt(_0x34c73f(0xac))/0x7+parseInt(_0x34c73f(0xa6))/0x8;if(_0x357630===_0x37f8ee)break;else _0x544fd0['push'](_0x544fd0['shift']());}catch(_0x54d424){_0x544fd0['push'](_0x544fd0['shift']());}}}(_0x25fc,0x87d15));import{getToken}from'../utils/keychain.js';function _0x2183(_0x1de0d9,_0x216156){_0x1de0d9=_0x1de0d9-0xa3;const _0x25fcca=_0x25fc();let _0x218347=_0x25fcca[_0x1de0d9];return _0x218347;}function _0x25fc(){const _0x48806d=['2971610aiwWKM','33714YtsepL','11691760rAFtxn','3687906HtstSQ','941056FXrQuK','jkdMT','1095118UUtqep','PkLto','706321zptcMd','81nnmHra'];_0x25fc=function(){return _0x48806d;};return _0x25fc();}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x207663){const _0x29ab3a=_0x2183,_0x4b87eb={'jkdMT':function(_0x34f85e,_0x2592fa){return _0x34f85e(_0x2592fa);},'PkLto':function(_0x36e169){return _0x36e169();}},_0x4b7b21=await _0x4b87eb['jkdMT'](getEnabledSessionId,_0x207663);if(!_0x4b7b21)return;try{const _0x9c4642=await _0x4b87eb[_0x29ab3a(0xab)](getToken);if(!_0x9c4642)return;_0x4b87eb[_0x29ab3a(0xa9)](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(_0x4b841a,_0x364450){const _0x2584db=_0x4e7d,_0x478f2c=_0x4b841a();while(!![]){try{const _0x27046a=-parseInt(_0x2584db(0xfd))/0x1+parseInt(_0x2584db(0xfa))/0x2*(parseInt(_0x2584db(0xf7))/0x3)+-parseInt(_0x2584db(0xfc))/0x4+-parseInt(_0x2584db(0xfe))/0x5+parseInt(_0x2584db(0xf9))/0x6*(-parseInt(_0x2584db(0x102))/0x7)+-parseInt(_0x2584db(0xfb))/0x8*(parseInt(_0x2584db(0xf8))/0x9)+parseInt(_0x2584db(0x101))/0xa;if(_0x27046a===_0x364450)break;else _0x478f2c['push'](_0x478f2c['shift']());}catch(_0x39fde5){_0x478f2c['push'](_0x478f2c['shift']());}}}(_0xebff,0x33f55));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0xebff(){const _0x296513=['clear','3FhYJMy','72iOYMYY','42PGoZTP','127254QLmTvZ','252408okGVin','936240gmXjfz','332332TyqvXH','1555885QjhRor','reason','TdZMS','15859180rpOnUB','306747asfsUB'];_0xebff=function(){return _0x296513;};return _0xebff();}function _0x4e7d(_0x12c928,_0x281104){_0x12c928=_0x12c928-0xf6;const _0xebfff8=_0xebff();let _0x4e7d67=_0xebfff8[_0x12c928];return _0x4e7d67;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x5ab711){const _0x454b4c=_0x4e7d,_0x3f6bb0={'TdZMS':function(_0x2edc6b,_0x2e40ed){return _0x2edc6b===_0x2e40ed;},'pMHvm':function(_0x3090fd,_0x26333){return _0x3090fd(_0x26333);}},_0x4b43b4=process['env']['CLAUDE_SESSION_ID'];let _0x190357=_0x5ab711,_0x538cf5;if(!_0x5ab711){if(_0x4b43b4&&!isSessionEnabled(_0x4b43b4))return;const _0x32f990=await readHookInput();_0x190357=_0x32f990?.['session_id']||_0x4b43b4,_0x538cf5=_0x32f990?.[_0x454b4c(0xff)];}if(!_0x190357)return;_0x3f6bb0[_0x454b4c(0x100)](_0x538cf5,_0x454b4c(0xf6))&&_0x3f6bb0['pMHvm'](recordEnabledSessionCleared,_0x190357);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function _0x25ee(_0x256d6f,_0x506bc3){_0x256d6f=_0x256d6f-0xfc;const _0x372b52=_0x372b();let _0x25ee96=_0x372b52[_0x256d6f];return _0x25ee96;}const _0x109d9c=_0x25ee;(function(_0x3c23ee,_0x269f62){const _0x12ce33=_0x25ee,_0x29526c=_0x3c23ee();while(!![]){try{const _0xa388f0=parseInt(_0x12ce33(0x10a))/0x1+-parseInt(_0x12ce33(0x10f))/0x2+parseInt(_0x12ce33(0x10c))/0x3*(-parseInt(_0x12ce33(0x102))/0x4)+-parseInt(_0x12ce33(0x100))/0x5+parseInt(_0x12ce33(0x10e))/0x6+parseInt(_0x12ce33(0xfc))/0x7+parseInt(_0x12ce33(0x110))/0x8*(parseInt(_0x12ce33(0x106))/0x9);if(_0xa388f0===_0x269f62)break;else _0x29526c['push'](_0x29526c['shift']());}catch(_0x312eea){_0x29526c['push'](_0x29526c['shift']());}}}(_0x372b,0x4f353));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';const RANGER_AUTO_ENABLED_PROMPT=_0x109d9c(0x109);export async function sessionStart(_0x2afa67){const _0x32c02c=_0x109d9c,_0xdc0935={'dAtpz':_0x32c02c(0x107),'SJpOx':function(_0xf0da1f,_0x1c569f,_0x2a529c){return _0xf0da1f(_0x1c569f,_0x2a529c);},'ZwSNs':function(_0x419f90){return _0x419f90();},'UKEPz':function(_0x183ba7,_0x444a5d){return _0x183ba7(_0x444a5d);},'nOXrT':function(_0x352bc1,_0x273864){return _0x352bc1===_0x273864;},'yreyX':function(_0x3ef4c9,_0x3f096d){return _0x3ef4c9(_0x3f096d);},'Flwkm':'hook:session-start','oEXij':'main','hisuh':function(_0x103a79,_0x41ec4b){return _0x103a79!==_0x41ec4b;},'cNRGJ':'SessionStart'};let _0x586082=_0x2afa67||'',_0x27f6b9;if(!_0x2afa67){let _0x51283f='';for await(const _0x3a69da of process['stdin']){_0x51283f+=_0x3a69da;}try{const _0x3bc468=JSON[_0x32c02c(0x103)](_0x51283f);_0x586082=_0x3bc468[_0x32c02c(0x111)]||'',_0x27f6b9=_0x3bc468[_0xdc0935['dAtpz']];}catch{}const _0x265afc=process['env']['CLAUDE_ENV_FILE'];if(_0x265afc&&_0x586082)try{await _0xdc0935['SJpOx'](appendFile,_0x265afc,'export\x20CLAUDE_SESSION_ID=\x22'+_0x586082+'\x22\x0a');}catch{}}try{await _0xdc0935['ZwSNs'](getToken);}catch{}if(_0x586082){_0xdc0935[_0x32c02c(0xff)](shouldAutoEnableAfterClear,_0x27f6b9)&&autoEnableAfterClear(_0x586082);initBranchTracking(_0x586082);_0xdc0935['nOXrT'](_0xdc0935[_0x32c02c(0x10b)](resolveHookMode),'on')&&_0xdc0935[_0x32c02c(0xff)](enableSession,_0x586082);const _0x5052f2=_0xdc0935[_0x32c02c(0x104)](isSessionEnabled,_0x586082);try{const _0x46f497=_0xdc0935[_0x32c02c(0x104)](createTelemetryCollector,_0xdc0935[_0x32c02c(0x108)]);await _0x46f497['trackCommandStart']({'sessionId':_0x586082,'hooksEnabled':_0x5052f2}),await _0x46f497['trackCommandEnd']('success');}catch{}if(_0x5052f2){const _0x56e2ae=getCurrentBranch(),_0xec0507=_0x56e2ae&&_0x56e2ae!==_0xdc0935[_0x32c02c(0xfd)]&&_0xdc0935['hisuh'](_0x56e2ae,'master')?_0x32c02c(0x105)+_0x56e2ae+')':'',_0x1f49f3={'hookSpecificOutput':{'hookEventName':_0xdc0935[_0x32c02c(0xfe)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0xec0507}};console[_0x32c02c(0x101)](JSON[_0x32c02c(0x10d)](_0x1f49f3));}}}function _0x372b(){const _0x3657a3=['9528561IlYzns','source','Flwkm','=================================================================\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=================================================================','120923zqKAmj','ZwSNs','3szTkoq','stringify','634770FAPurV','707728SYHwtw','8yHHbHH','session_id','3064201YWOlPM','oEXij','cNRGJ','UKEPz','3213400LxLcGe','log','1608844WKGrjj','parse','yreyX','\x20(Branch:\x20'];_0x372b=function(){return _0x3657a3;};return _0x372b();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x12821a,_0x8612af){const _0x291800=_0x43ea,_0x389645=_0x12821a();while(!![]){try{const _0x30b3ed=-parseInt(_0x291800(0x1bf))/0x1+-parseInt(_0x291800(0x1bc))/0x2+-parseInt(_0x291800(0x1c5))/0x3+parseInt(_0x291800(0x1b7))/0x4*(parseInt(_0x291800(0x1c4))/0x5)+-parseInt(_0x291800(0x1c1))/0x6+parseInt(_0x291800(0x1bd))/0x7+parseInt(_0x291800(0x1b8))/0x8*(parseInt(_0x291800(0x1b6))/0x9);if(_0x30b3ed===_0x8612af)break;else _0x389645['push'](_0x389645['shift']());}catch(_0x5485d4){_0x389645['push'](_0x389645['shift']());}}}(_0x1df1,0x9c065));function _0x43ea(_0x298287,_0x44632c){_0x298287=_0x298287-0x1b3;const _0x1df1c7=_0x1df1();let _0x43ea9a=_0x1df1c7[_0x298287];return _0x43ea9a;}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';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x56a2ed){const _0x2a8397=_0x43ea,_0x33c4d3={'goEiX':function(_0x23a652,_0x7cd44){return _0x23a652(_0x7cd44);},'UJvqi':function(_0x2502a8,_0x361612,_0xa3452e,_0xd3cfb3){return _0x2502a8(_0x361612,_0xa3452e,_0xd3cfb3);},'lroBT':function(_0x3b9c26,_0x5bd03c){return _0x3b9c26(_0x5bd03c);},'kYjDP':function(_0x37fe78,_0xae55ca){return _0x37fe78&&_0xae55ca;}},_0x1c93cd=await _0x33c4d3[_0x2a8397(0x1c0)](getEnabledHookContext,_0x56a2ed),_0xefa880=_0x1c93cd?.[_0x2a8397(0x1c8)]??null;let _0x58e8e9=!![];if(!_0xefa880){await trackStop(_0xefa880,![],_0x58e8e9);return;}try{const _0x1eb8bc=getSessionEntry(_0xefa880);if(!_0x1eb8bc){await _0x33c4d3['UJvqi'](trackStop,_0xefa880,!![],_0x58e8e9);return;}const _0x424951=await getToken(),_0x55e926='https://dashboard.ranger.net/features/'+_0x1eb8bc['featureId'];let _0x388a03=null,_0x3a14ad=![],_0x49317b=![];if(_0x424951)try{const _0x435e2c=await _0x33c4d3['lroBT'](getFeature,_0x1eb8bc['featureId']);_0x388a03=_0x435e2c[_0x2a8397(0x1b4)]??null;const _0x233525=_0x435e2c[_0x2a8397(0x1c7)][_0x2a8397(0x1b9)](_0x21076a=>_0x21076a[_0x2a8397(0x1c8)]===_0x388a03);_0x3a14ad=_0x233525['some'](_0x1d10b5=>_0x1d10b5['status']!==_0x2a8397(0x1c9)&&_0x1d10b5[_0x2a8397(0x1bb)]!=='blocked'&&_0x1d10b5['status']!==_0x2a8397(0x1c3)&&_0x1d10b5[_0x2a8397(0x1bb)]!=='incomplete'),_0x49317b=_0x233525[_0x2a8397(0x1c6)](_0x29804e=>_0x29804e['status']===_0x2a8397(0x1b5));}catch{}if(_0x424951&&_0x388a03&&_0x3a14ad){if(!_0x49317b&&_0x33c4d3['lroBT'](shouldShowStopReminder,_0xefa880)){const _0x4a98c3={'hookSpecificOutput':{'hookEventName':'Stop','additionalContext':_0x2a8397(0x1be)+_0x55e926}};console['log'](JSON[_0x2a8397(0x1b3)](_0x4a98c3));}}if(_0x33c4d3[_0x2a8397(0x1ca)](_0x424951,_0x388a03)&&!_0x3a14ad)try{await concludeSession(_0x1eb8bc[_0x2a8397(0x1ba)],_0x388a03);}catch{}await trackStop(_0xefa880,!![],_0x58e8e9);return;}catch{await trackStop(_0xefa880,!![],_0x58e8e9);return;}}function _0x1df1(){const _0x1b5a19=['190108HvVVPB','6621867xDGsLh','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','1261200nXZkHS','goEiX','2354304wYWzrW','trackCommandEnd','closed','129255CyhdAL','2988873AdGWap','some','checklistItems','sessionId','verified','kYjDP','stringify','currentSessionId','verification_in_progress','135eHcdxU','180KnYNaw','679856APoiNY','filter','featureId','status'];_0x1df1=function(){return _0x1b5a19;};return _0x1df1();}async function trackStop(_0x10ec3d,_0x4e1018,_0x52c122){const _0x80d4f9=_0x43ea,_0x7639ca={'IKPwV':function(_0x49ccb9,_0x5c82e7){return _0x49ccb9(_0x5c82e7);}};try{const _0x75c5aa=_0x7639ca['IKPwV'](createTelemetryCollector,'hook:stop');await _0x75c5aa['trackCommandStart']({'sessionId':_0x10ec3d??undefined,'hooksEnabled':_0x4e1018,'stopAllowed':_0x52c122}),await _0x75c5aa[_0x80d4f9(0x1c2)]('success');}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x524040,_0x5b9720){var _0x329b25=_0x152c,_0x4b4b89=_0x524040();while(!![]){try{var _0x379e67=parseInt(_0x329b25(0x134))/0x1+-parseInt(_0x329b25(0x132))/0x2+-parseInt(_0x329b25(0x12f))/0x3+parseInt(_0x329b25(0x130))/0x4+parseInt(_0x329b25(0x12e))/0x5+-parseInt(_0x329b25(0x135))/0x6*(parseInt(_0x329b25(0x131))/0x7)+parseInt(_0x329b25(0x133))/0x8;if(_0x379e67===_0x5b9720)break;else _0x4b4b89['push'](_0x4b4b89['shift']());}catch(_0xe54468){_0x4b4b89['push'](_0x4b4b89['shift']());}}}(_0x1f11,0x768e6));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';function _0x152c(_0x2852e7,_0x111cc1){_0x2852e7=_0x2852e7-0x12e;var _0x1f11b4=_0x1f11();var _0x152c46=_0x1f11b4[_0x2852e7];return _0x152c46;}export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';function _0x1f11(){var _0x534983=['2237604BSQESw','484631HtCqvi','1658014RjYTpE','8986912Vlgegl','244310iMMRHs','42azWSfS','536095XqPOXB','705150GCiUkv'];_0x1f11=function(){return _0x534983;};return _0x1f11();}export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
|