@ranger-testing/ranger-cli 3.1.4-alpha.ffeeafe-46 → 3.1.4
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 +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x19025f=_0x2bba;(function(_0x467511,_0xf52cf2){const _0x5179a2=_0x2bba,_0x335402=_0x467511();while(!![]){try{const _0x46ac77=parseInt(_0x5179a2(0x243))/0x1+-parseInt(_0x5179a2(0x220))/0x2+parseInt(_0x5179a2(0x1c7))/0x3+parseInt(_0x5179a2(0x1de))/0x4+parseInt(_0x5179a2(0x226))/0x5*(parseInt(_0x5179a2(0x224))/0x6)+-parseInt(_0x5179a2(0x28e))/0x7+-parseInt(_0x5179a2(0x290))/0x8*(parseInt(_0x5179a2(0x1f4))/0x9);if(_0x46ac77===_0xf52cf2)break;else _0x335402['push'](_0x335402['shift']());}catch(_0x5cf4c9){_0x335402['push'](_0x335402['shift']());}}}(_0x124d,0xb90a3));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';function _0x124d(){const _0x533d1f=['\x0a✅\x20Restored\x20feature\x20review:\x20','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','ExFhA','name','\x20\x20\x20Completed:\x20','lTbuP','stats','items','currentSessionId','uuVsg','\x0a✅\x20Feature\x20review\x20created:\x20','browserSessionId','\x20at\x20[','YIHdZ','740016wFShNd','LHjqj','MzvsC','\x0a\x20\x20\x20Scenarios:','241050NEDQWE','utf-8','85WsOjvH','ERRQv','\x20\x20Expected\x20flow:','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','oPbXv','join','log','timing','includeDeleted','\x20\x20\x20▶️\x20Started\x20session\x20','completed','terminalReason','incompleteItems','/artifacts/','dashboardUrl','\x20\x20\x20Repository:\x20','roRMu','YUlrl','error','.md','\x0a✅\x20Resumed\x20feature\x20review:\x20','Please\x20finish\x20your\x20review\x20first:','screenshotUrls','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','QsUBV','lzLgp','YDuJe','assetType','assets','885826TibGZY','isInteger','\x20\x20\x20\x20\x20\x20Approved','notes','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','active-feature.txt','UWJwe','\x20\x20\x20','env','\x0a⚠️\x20\x20','\x20Session\x20','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','replace','gitBranch','checklistItems','\x20\x20✅\x20No\x20feedback\x20to\x20address','CcGao','rvFsw','slice','assetUrl','...','closed','numeric','\x20>\x20','en-US','syivI','\x20\x20💬\x20','isTTY','version',':\x20\x22','exit','iteration','blocked','EMwal','KtOnj','\x0a📋\x20Feedback\x20for:\x20','LCqqm','verification_in_progress','screenshot','currentBranch','wydOM','short','content','toFixed','any','completedAt','\x20\x20\x20Branch:\x20','stdout','gitRepoUrl','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','DNGRe','ZaatN','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','.png','\x20\x20\x20Updated\x20branch\x20to:\x20','json','git\x20rev-parse\x20--abbrev-ref\x20HEAD','git\x20remote\x20get-url\x20origin','geecQ','tAgFy','UAwXx','FlrJr','status','latestReview','gJsId','find','1|5|2|3|4|0','Screenshot\x20','scenario','jwJyj','trimEnd','\x20[has\x20reviewer\x20feedback]','cCpZt','authorEmail','totalCount','10421698XAnSeJ','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','8eXFGEl','description','pop','DVINq','\x0a✅\x20Scenario\x20added','\x20\x20\x20Created:\x20','github.com/','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','hRkBS','repeat','\x20\x20\x20\x20\x20ID:\x20','VNtnH','2009529OltfFN','VCdWZ','\x20concluded.','in_progress','okkGY','qrVpS','pipe','tfPlN','\x20scenario(s).','Not\x20in\x20a\x20git\x20repository.','domRef','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','\x0a✅\x20Scenario\x20updated','nYhnZ','LacCM','split','\x20of\x20','scenarios','NfRAW','length','fiJSI','CyhwK','5177760tkPwRS','itwhs','OEFNs','wAzSr','TOcCF','BWsLM','MTFPS','has','\x20verified','createdAt','blockedItems','warn','voaKS','push','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x20(v','blockedReason','wOMmI','spatial','feedback-images','unaddressedComments','\x20—\x20no\x20comments','8247051qvHNSu','trim','arrayBuffer','kohlF','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','No\x20sessions\x20found.','filter','\x0aGenerating\x20report...','QOtZK','Unknown','hHqXi','from','toLocaleDateString','.\x20Feature\x20review\x20has\x20','comment_','ArYcw','AMgoF','\x20\x20\x20Progress:\x20','CLAUDE_SESSION_ID','map','position','incompleteReason','toLocaleString','verified','\x20blocked','):\x20\x22','\x0aConcluding\x20session...','cqRca','type','\x1b[0m'];_0x124d=function(){return _0x533d1f;};return _0x124d();}import{existsSync}from'fs';import{execSync}from'child_process';import _0x4f5e05 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=_0x19025f(0x248),bold=_0x31aeb6=>'\x1b[1m'+_0x31aeb6+_0x19025f(0x211);function getGitRepoUrl(){const _0x4cd3e0=_0x19025f,_0x2d8f7b={'MTFPS':function(_0x4415b7,_0x43b855,_0x598f7d){return _0x4415b7(_0x43b855,_0x598f7d);},'FURwL':_0x4cd3e0(0x27c),'YIHdZ':'pipe'};try{const _0x44127f=_0x2d8f7b[_0x4cd3e0(0x1e4)](execSync,_0x2d8f7b['FURwL'],{'encoding':'utf-8','stdio':[_0x2d8f7b[_0x4cd3e0(0x21f)],'pipe',_0x2d8f7b[_0x4cd3e0(0x21f)]]})[_0x4cd3e0(0x1f5)]();return _0x44127f[_0x4cd3e0(0x24f)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x4cd3e0(0x296))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0xb89fe=_0x19025f,_0x32d673={'TdlYM':_0xb89fe(0x1cd)};try{return execSync(_0xb89fe(0x27b),{'encoding':'utf-8','stdio':[_0xb89fe(0x1cd),'pipe',_0x32d673['TdlYM']]})[_0xb89fe(0x1f5)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1936f2=_0x19025f,_0x381f61={'hRkBS':function(_0x2bd5f6,_0x4d033e,_0x147f1d){return _0x2bd5f6(_0x4d033e,_0x147f1d);},'jUiGH':'utf-8'},_0x141c88=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x141c88))return null;try{const _0x4efe8f=await _0x381f61[_0x1936f2(0x298)](readFile,_0x141c88,_0x381f61['jUiGH']);return _0x4efe8f['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x15b693){const _0x3c2511=_0x19025f,_0xcf5ca3={'WojdQ':function(_0xfb5b78){return _0xfb5b78();},'DNGRe':function(_0x465eb7,_0x118798,_0x318e87){return _0x465eb7(_0x118798,_0x318e87);},'LOznp':function(_0x3b004e,_0x4730a0,_0x386d7e,_0x52620b){return _0x3b004e(_0x4730a0,_0x386d7e,_0x52620b);}},_0x506971=_0xcf5ca3['WojdQ'](getRangerDir),_0x2bf8a9=join(_0x506971,ACTIVE_FEATURE_FILE);!existsSync(_0x506971)&&await _0xcf5ca3[_0x3c2511(0x275)](mkdir,_0x506971,{'recursive':!![]}),await _0xcf5ca3['LOznp'](writeFile,_0x2bf8a9,_0x15b693,_0x3c2511(0x225));}function _0x2bba(_0x1fa2e3,_0x1d686d){_0x1fa2e3=_0x1fa2e3-0x1c6;const _0x124d62=_0x124d();let _0x2bba86=_0x124d62[_0x1fa2e3];return _0x2bba86;}function getProgressDisplay(_0x4ec922){const _0x17241e=_0x19025f,_0x5a8fb9={'sVLtf':function(_0x2b09b4,_0x4013f7){return _0x2b09b4+_0x4013f7;},'utBrB':function(_0xd48758,_0x29dcb8){return _0xd48758+_0x29dcb8;},'cCpZt':function(_0x3e473a,_0x1fe005){return _0x3e473a*_0x1fe005;},'nPocx':function(_0x1671ac,_0x48941b){return _0x1671ac>_0x48941b;}},_0x4f2ab1=_0x4ec922['verifiedItems']||0x0,_0x584ce7=_0x4ec922['verificationInProgressItems']||0x0,_0x4cfedb=_0x4ec922[_0x17241e(0x1e8)]||0x0,_0x567832=_0x4ec922[_0x17241e(0x232)]||0x0,_0x3bf2c5=_0x4ec922['pendingItems']||0x0,_0x503494=_0x5a8fb9['sVLtf'](_0x5a8fb9['utBrB'](_0x4f2ab1,_0x584ce7)+_0x4cfedb+_0x567832,_0x3bf2c5);if(_0x503494===0x0)return'-';const _0x1a4cf0=0xa,_0xe309f6=Math['round'](_0x5a8fb9[_0x17241e(0x28b)](_0x4f2ab1/_0x503494,_0x1a4cf0)),_0x4eef36='█'['repeat'](_0xe309f6)+'░'[_0x17241e(0x299)](_0x1a4cf0-_0xe309f6),_0x438994=[];if(_0x4cfedb>0x0)_0x438994[_0x17241e(0x1eb)](_0x4cfedb+_0x17241e(0x20c));if(_0x567832>0x0)_0x438994[_0x17241e(0x1eb)](_0x567832+'\x20incomplete');if(_0x5a8fb9['nPocx'](_0x584ce7,0x0))_0x438994['push'](_0x584ce7+'\x20in\x20progress');const _0x4a09c4=_0x438994[_0x17241e(0x1db)]>0x0?'\x20('+_0x438994[_0x17241e(0x22b)](',\x20')+')':'';return _0x4eef36+'\x20'+_0x4f2ab1+'/'+_0x503494+_0x17241e(0x1e6)+_0x4a09c4;}function getCurrentSessionItems(_0x4d602e,_0x18b2d2){const _0x90c7a5=_0x19025f;if(!_0x4d602e[_0x90c7a5(0x21a)])return _0x18b2d2['filter'](_0x4e4bfd=>!_0x4e4bfd['sessionId']);return _0x18b2d2[_0x90c7a5(0x1fa)](_0x5f2f00=>_0x5f2f00['sessionId']===_0x4d602e[_0x90c7a5(0x21a)]||!_0x5f2f00['sessionId']);}function displayFeature(_0x610682,_0x4fe190){const _0x46e770=_0x19025f,_0x16f045={'wOMmI':_0x46e770(0x223),'TOcCF':'approved','RQuuh':function(_0x2af78a,_0x56fe4d){return _0x2af78a===_0x56fe4d;},'LerFR':'incomplete','lzLgp':function(_0x53892c,_0x1a372e){return _0x53892c===_0x1a372e;},'ArYcw':_0x46e770(0x258),'VGXGf':'verification_in_progress','voaKS':function(_0x440f3e,_0x340441){return _0x440f3e>_0x340441;},'VWjYz':function(_0x482d0b,_0x1ad798){return _0x482d0b!==_0x1ad798;},'QntEv':_0x46e770(0x20b),'rvFsw':_0x46e770(0x28a),'CcGao':function(_0x8e0504,_0x5a2474){return _0x8e0504+_0x5a2474;},'geecQ':function(_0x3bafcf,_0x592e32){return _0x3bafcf===_0x592e32;}};console[_0x46e770(0x22c)]('\x0a'+_0x610682['name']+'\x20('+_0x610682[_0x46e770(0x234)]+')');_0x610682['stats']&&console[_0x46e770(0x22c)](_0x46e770(0x205)+getProgressDisplay(_0x610682[_0x46e770(0x218)]));_0x610682['description']&&console[_0x46e770(0x22c)]('\x20\x20\x20Description:\x20'+_0x610682['description']);_0x610682['gitRepoUrl']&&console['log'](_0x46e770(0x235)+_0x610682['gitRepoUrl']);_0x610682['gitBranch']&&console['log'](_0x46e770(0x271)+_0x610682['gitBranch']);console[_0x46e770(0x22c)]('\x20\x20\x20Created:\x20'+new Date(_0x610682[_0x46e770(0x1e7)])[_0x46e770(0x20a)]());_0x610682['completedAt']&&console['log'](_0x46e770(0x216)+new Date(_0x610682[_0x46e770(0x270)])['toLocaleString']());if(_0x4fe190&&_0x4fe190['length']>0x0){console[_0x46e770(0x22c)](_0x16f045[_0x46e770(0x1ef)]);for(let _0x401388=0x0;_0x401388<_0x4fe190[_0x46e770(0x1db)];_0x401388++){const _0x178190=_0x4fe190[_0x401388];let _0x13dc80;if(_0x178190[_0x46e770(0x281)]===_0x46e770(0x258)&&_0x178190[_0x46e770(0x231)]===_0x16f045['TOcCF'])_0x13dc80='✅';else{if(_0x16f045['RQuuh'](_0x178190[_0x46e770(0x281)],_0x46e770(0x20b)))_0x13dc80='🟢';else{if(_0x16f045['RQuuh'](_0x178190[_0x46e770(0x281)],_0x16f045['LerFR']))_0x13dc80='🟠';else{if(_0x178190[_0x46e770(0x281)]===_0x46e770(0x263))_0x13dc80='🛑';else{if(_0x16f045['lzLgp'](_0x178190['status'],_0x16f045['ArYcw']))_0x13dc80='⛔';else _0x16f045['lzLgp'](_0x178190['status'],_0x16f045['VGXGf'])?_0x13dc80='⏳':_0x13dc80='⬜';}}}}const _0x197e13=_0x178190[_0x46e770(0x25f)]>0x1?'\x20(v'+_0x178190[_0x46e770(0x25f)]+')':'',_0x2d203a=_0x16f045[_0x46e770(0x1ea)](_0x178190[_0x46e770(0x25f)],0x1)&&_0x178190['parentItemId']&&_0x16f045['VWjYz'](_0x178190['status'],_0x16f045[_0x46e770(0x203)])&&_0x178190['status']!==_0x16f045['QntEv']?_0x16f045[_0x46e770(0x254)]:'';console[_0x46e770(0x22c)](_0x46e770(0x24a)+_0x16f045[_0x46e770(0x253)](_0x401388,0x1)+'.\x20'+_0x13dc80+'\x20'+_0x178190[_0x46e770(0x291)]+_0x197e13+_0x2d203a);_0x178190[_0x46e770(0x281)]===_0x46e770(0x263)&&_0x178190[_0x46e770(0x1ee)]&&console[_0x46e770(0x22c)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x178190[_0x46e770(0x1ee)]);_0x178190[_0x46e770(0x281)]==='incomplete'&&_0x178190[_0x46e770(0x209)]&&console[_0x46e770(0x22c)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x178190[_0x46e770(0x209)]);if(_0x16f045[_0x46e770(0x23f)](_0x178190[_0x46e770(0x281)],_0x16f045[_0x46e770(0x203)])&&_0x16f045[_0x46e770(0x27d)](_0x178190[_0x46e770(0x231)],_0x16f045[_0x46e770(0x1e2)]))console[_0x46e770(0x22c)](_0x46e770(0x245));else _0x178190['status']===_0x16f045['ArYcw']&&_0x178190['canceledReason']&&console['log'](_0x46e770(0x1ec)+_0x178190['canceledReason']);}}}export async function featureCreate(_0x14d89b,_0x29b1c6){const _0x17efd8=_0x19025f,_0x377ef7={'qijxg':function(_0x4ae77d){return _0x4ae77d();},'SwbCH':function(_0x3d9a94,_0x2e958e){return _0x3d9a94===_0x2e958e;},'lTbuP':'\x0aCreating\x20feature\x20review...','mtcQi':function(_0x203254,_0x223619){return _0x203254(_0x223619);}},{envNames:_0x5c0c1c}=await _0x377ef7['qijxg'](getEnvNames);if(_0x5c0c1c[_0x17efd8(0x1db)]===0x0&&!process['env']['RANGER_TEST_USERNAME']){let _0x5982d9=0x0;try{_0x5982d9=(await listCloudProfiles())['length'];}catch{_0x5982d9=0x1;}_0x377ef7['SwbCH'](_0x5982d9,0x0)&&console[_0x17efd8(0x1e9)]('\x0a'+formatProfileRequiredMessage(_0x4d6768=>bold(_0x4d6768)));}const _0x236b80=_0x29b1c6['scenarios']?_0x29b1c6[_0x17efd8(0x1d9)]['map'](_0x266ae2=>_0x266ae2[_0x17efd8(0x1f5)]()):[],_0x4968a9=_0x377ef7['qijxg'](getGitRepoUrl),_0x248616=getGitBranch();console[_0x17efd8(0x22c)](_0x377ef7[_0x17efd8(0x217)]);const _0xa11d48=await createFeature({'name':_0x14d89b,'description':_0x29b1c6['description'],'checklist':_0x236b80,'gitRepoUrl':_0x4968a9,'gitBranch':_0x248616});await _0x377ef7['mtcQi'](setActiveFeatureId,_0xa11d48['id']),await tryStartCurrentSession(_0xa11d48['id']);const _0x406bf0=process[_0x17efd8(0x24b)]['CLAUDE_SESSION_ID'];_0x406bf0&®isterSession(_0x406bf0,_0xa11d48['id']),console['log'](_0x17efd8(0x21c)+_0xa11d48['id']),displayFeature(_0xa11d48,_0xa11d48['checklistItems']),console['log'](_0x17efd8(0x24e));}export async function featureList(_0x1a23e8){const _0x5339e2=_0x19025f,_0x2b01c0={'ogeRv':function(_0x392b42){return _0x392b42();},'grxFa':function(_0x337070,_0x389894){return _0x337070===_0x389894;},'okkGY':function(_0x7e6a9d,_0xd5274){return _0x7e6a9d>_0xd5274;},'jwFHZ':_0x5339e2(0x285),'JyCna':function(_0x21708f,_0x111135){return _0x21708f(_0x111135);},'LOgrZ':function(_0x1b402f,_0x3ca223){return _0x1b402f!==_0x3ca223;},'EOFqa':'\x20--include-deleted'},_0x30039e={'limit':_0x1a23e8['limit']??0xa,'offset':_0x1a23e8['offset']??0x0,'includeDeleted':_0x1a23e8[_0x5339e2(0x22e)]};_0x1a23e8['currentBranch']&&(_0x30039e[_0x5339e2(0x273)]=_0x2b01c0['ogeRv'](getGitRepoUrl),_0x30039e[_0x5339e2(0x250)]=getGitBranch());const _0xf6f247=await listFeatures(_0x30039e);if(_0x2b01c0['grxFa'](_0xf6f247[_0x5339e2(0x219)]['length'],0x0)){console[_0x5339e2(0x22c)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0xe5e95e=_0x2b01c0[_0x5339e2(0x1cb)](_0xf6f247['totalCount'],_0xf6f247['items']['length'])?'Showing\x20'+_0xf6f247['items'][_0x5339e2(0x1db)]+_0x5339e2(0x1d8)+_0xf6f247[_0x5339e2(0x28d)]:_0xf6f247['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x5339e2(0x22c)]('\x0a'+_0xe5e95e+':\x0a');for(const _0x5a7aec of _0xf6f247['items']){const _0x458a8c=_0x2b01c0['jwFHZ'][_0x5339e2(0x1d7)]('|');let _0x3db749=0x0;while(!![]){switch(_0x458a8c[_0x3db749++]){case'0':console['log']('');continue;case'1':console['log'](''+_0x5a7aec[_0x5339e2(0x215)]);continue;case'2':_0x5a7aec['stats']&&console[_0x5339e2(0x22c)]('\x20\x20\x20Progress:\x20'+_0x2b01c0['JyCna'](getProgressDisplay,_0x5a7aec[_0x5339e2(0x218)]));continue;case'3':_0x5a7aec[_0x5339e2(0x250)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x5a7aec[_0x5339e2(0x250)]);continue;case'4':console[_0x5339e2(0x22c)](_0x5339e2(0x295)+new Date(_0x5a7aec[_0x5339e2(0x1e7)])['toLocaleDateString']());continue;case'5':console[_0x5339e2(0x22c)]('\x20\x20\x20ID:\x20'+_0x5a7aec['id']);continue;}break;}}const _0x5a25ae=_0x30039e['limit']??0xa,_0xf31427=(_0x30039e['offset']??0x0)+_0xf6f247['items']['length'];if(_0xf31427<_0xf6f247[_0x5339e2(0x28d)]){const _0x474361=_0x2b01c0['LOgrZ'](_0x5a25ae,0xa)?'\x20--limit\x20'+_0x5a25ae:'',_0x5e11db=_0x1a23e8[_0x5339e2(0x26a)]?'\x20--current-branch':'',_0x2230d4=_0x1a23e8[_0x5339e2(0x22e)]?_0x2b01c0['EOFqa']:'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xf31427+_0x474361+_0x5e11db+_0x2230d4);}}export async function featureShow(_0x2bec5b){const _0x9f704d=_0x19025f,_0x8775fd={'nYhnZ':function(_0x259856){return _0x259856();},'ERRQv':_0x9f704d(0x247),'VTOoO':function(_0x38a34e,_0x57a2f9){return _0x38a34e(_0x57a2f9);}},_0x5ad92a=_0x2bec5b||await _0x8775fd[_0x9f704d(0x1d5)](getActiveFeatureId);if(!_0x5ad92a)throw new Error(_0x8775fd[_0x9f704d(0x227)]);const _0x375fe3=await _0x8775fd['VTOoO'](getFeature,_0x5ad92a);displayFeature(_0x375fe3,_0x375fe3['checklistItems']);}export async function featureResume(_0x4f2ee7){const _0x2f77ab=_0x19025f,_0x554871={'LHjqj':function(_0xd3534b,_0x4f9272){return _0xd3534b(_0x4f9272);},'wAzSr':function(_0x309589,_0x4631e0){return _0x309589(_0x4631e0);},'UAwXx':function(_0x42d548){return _0x42d548();},'eEaFn':function(_0x7024da,_0x7c2395){return _0x7024da!==_0x7c2395;},'tfPlN':function(_0x4e7590,_0x295c55){return _0x4e7590(_0x295c55);},'QOtZK':function(_0x57fe47){return _0x57fe47();},'pnuHb':_0x2f77ab(0x1d0),'uJPHs':_0x2f77ab(0x26f),'BWsLM':function(_0x2b069f,_0x5d78b8){return _0x2b069f||_0x5d78b8;},'WCtjL':function(_0x556e47,_0x3d0db5){return _0x556e47===_0x3d0db5;},'GRZOj':_0x2f77ab(0x213),'uNCnR':_0x2f77ab(0x28f),'xNIgC':_0x2f77ab(0x23d),'EMwal':function(_0x33d47f,_0x527e8b,_0x1215d6){return _0x33d47f(_0x527e8b,_0x1215d6);},'DziqK':function(_0x6fe116,_0x3b80ff){return _0x6fe116(_0x3b80ff);},'gJsId':function(_0xefca8b,_0x33f9cf){return _0xefca8b(_0x33f9cf);}};if(_0x4f2ee7){const _0x457e2e=await _0x554871[_0x2f77ab(0x221)](getFeature,_0x4f2ee7);await _0x554871[_0x2f77ab(0x1e1)](setActiveFeatureId,_0x457e2e['id']);const _0x20dfaf=_0x554871['UAwXx'](getGitBranch);_0x20dfaf&&_0x554871['eEaFn'](_0x20dfaf,_0x457e2e[_0x2f77ab(0x250)])&&(await updateFeature(_0x457e2e['id'],{'gitBranch':_0x20dfaf}),console[_0x2f77ab(0x22c)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x20dfaf));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x457e2e['name']+'\x20('+_0x457e2e['id']+')'),await _0x554871['LHjqj'](tryStartCurrentSession,_0x457e2e['id']);const _0x11e285=process['env']['CLAUDE_SESSION_ID'];_0x11e285&®isterSession(_0x11e285,_0x457e2e['id']);displayFeature(_0x457e2e,_0x457e2e['checklistItems']),await _0x554871[_0x2f77ab(0x1ce)](printFeedbackNudge,_0x457e2e['id']);return;}const _0x13dfb7=_0x554871[_0x2f77ab(0x27f)](getGitRepoUrl),_0x5d9a91=_0x554871[_0x2f77ab(0x1fc)](getGitBranch);if(!_0x13dfb7&&!_0x5d9a91)throw new Error(_0x554871['pnuHb']);console[_0x2f77ab(0x22c)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x13dfb7||_0x554871['uJPHs'])+'\x20/\x20'+_0x554871[_0x2f77ab(0x1e3)](_0x5d9a91,_0x554871['uJPHs'])+_0x2f77ab(0x257));const _0x24b136=await listFeatures({'gitRepoUrl':_0x13dfb7,'gitBranch':_0x5d9a91}),_0x476805=_0x24b136['items']['filter'](_0x2eb934=>_0x2eb934[_0x2f77ab(0x281)]?_0x2eb934[_0x2f77ab(0x281)]!=='verified':!_0x2eb934[_0x2f77ab(0x270)]);if(_0x554871['WCtjL'](_0x476805[_0x2f77ab(0x1db)],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x2f77ab(0x22c)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0xbce35;if(_0x476805['length']===0x1)_0xbce35=_0x476805[0x0];else{const _0x349d19=process['stdin']['isTTY']&&process['stdout'][_0x2f77ab(0x25e)];if(!_0x349d19){console[_0x2f77ab(0x22c)](_0x554871['GRZOj']);for(const _0xa294df of _0x476805){console['log']('\x20\x20'+_0xa294df[_0x2f77ab(0x215)]),console[_0x2f77ab(0x22c)](_0x2f77ab(0x29a)+_0xa294df['id']),_0xa294df[_0x2f77ab(0x218)]&&console[_0x2f77ab(0x22c)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0xa294df['stats'])),_0xa294df['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xa294df[_0x2f77ab(0x250)]);}throw new Error(_0x554871['uNCnR']);}const {selected:_0x31aeb7}=await _0x4f5e05['prompt']([{'type':'list','name':'selected','message':_0x554871['xNIgC'],'choices':_0x476805[_0x2f77ab(0x207)](_0x596e88=>({'name':_0x596e88[_0x2f77ab(0x215)]+'\x20('+_0x596e88['id']+')','value':_0x596e88['id']}))}]);_0xbce35=_0x476805['find'](_0x3b8e00=>_0x3b8e00['id']===_0x31aeb7);}await setActiveFeatureId(_0xbce35['id']);_0x5d9a91&&_0x5d9a91!==_0xbce35['gitBranch']&&(await _0x554871[_0x2f77ab(0x264)](updateFeature,_0xbce35['id'],{'gitBranch':_0x5d9a91}),console[_0x2f77ab(0x22c)](_0x2f77ab(0x279)+_0x5d9a91));console['log'](_0x2f77ab(0x23a)+_0xbce35[_0x2f77ab(0x215)]+'\x20('+_0xbce35['id']+')'),await tryStartCurrentSession(_0xbce35['id']);const _0x32ca94=await _0x554871['DziqK'](getFeature,_0xbce35['id']),_0x5205d7=process[_0x2f77ab(0x24b)][_0x2f77ab(0x206)];_0x5205d7&®isterSession(_0x5205d7,_0x32ca94['id']),displayFeature(_0x32ca94,_0x32ca94[_0x2f77ab(0x251)]),await _0x554871[_0x2f77ab(0x283)](printFeedbackNudge,_0x32ca94['id']);}async function printFeedbackNudge(_0x39fd00){const _0x462252=_0x19025f,_0x35f880={'afBGE':function(_0x3e4563,_0x20179d){return _0x3e4563(_0x20179d);}};try{const {items:_0x51f346}=await _0x35f880['afBGE'](getActionItems,_0x39fd00);let _0x5a1daa=0x0,_0xbf0c5f=0x0;for(const _0x3a3846 of _0x51f346){const _0x20e0d0=await getItemFeedback(_0x39fd00,_0x3a3846['id']);_0x20e0d0['unaddressedComments']['length']>0x0&&(_0x5a1daa+=_0x20e0d0['unaddressedComments'][_0x462252(0x1db)],_0xbf0c5f++);}_0x5a1daa>0x0&&(console['log'](_0x462252(0x24c)+_0x5a1daa+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0xbf0c5f+_0x462252(0x1cf)),console[_0x462252(0x22c)]('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x501a8e){const _0x303a1c=_0x19025f,_0x48f30f={'UWJwe':function(_0x783ca1,_0x4f98bd,_0x6ff199){return _0x783ca1(_0x4f98bd,_0x6ff199);}};try{const {sessions:_0x5c7d3f}=await listFeatureSessions(_0x501a8e),_0x3e366e=_0x5c7d3f['find'](_0x4c915d=>_0x4c915d['status']==='ready');_0x3e366e&&(await _0x48f30f[_0x303a1c(0x249)](startSession,_0x501a8e,_0x3e366e['id']),console[_0x303a1c(0x22c)](_0x303a1c(0x22f)+_0x3e366e[_0x303a1c(0x262)]));}catch{}}export async function featureReport(_0x35f01d,_0x2da9cd){const _0x4fb4e3=_0x19025f,_0x2c58c7={'eTHix':_0x4fb4e3(0x277),'tEuYB':function(_0x2db7aa,_0x48cae7,_0x21729c){return _0x2db7aa(_0x48cae7,_0x21729c);},'EXjAl':function(_0x513c43,_0x2c74bc){return _0x513c43(_0x2c74bc);}},_0xd7d272=_0x35f01d||await getActiveFeatureId();if(!_0xd7d272)throw new Error(_0x2c58c7['eTHix']);console[_0x4fb4e3(0x22c)](_0x4fb4e3(0x1fb));const _0x56f039=await _0x2c58c7['tEuYB'](getFeatureReportMarkdown,_0xd7d272,{'style':_0x2da9cd['style']}),_0x8fbeaf=_0x2da9cd['output']||join(getRangerDir(),'reports',_0xd7d272+_0x4fb4e3(0x239)),_0x5ad6a5=join(_0x8fbeaf,'..');!_0x2c58c7['EXjAl'](existsSync,_0x5ad6a5)&&await mkdir(_0x5ad6a5,{'recursive':!![]}),await writeFile(_0x8fbeaf,_0x56f039,_0x4fb4e3(0x225)),console[_0x4fb4e3(0x22c)]('\x0a✅\x20Report\x20generated:\x20'+_0x8fbeaf);}function getScenarioResult(_0x151308){const _0x84f40e=_0x19025f,_0xaf0188={'QGuuo':'closed','tErZE':function(_0x21135a,_0x1fc791){return _0x21135a===_0x1fc791;},'qrVpS':_0x84f40e(0x1ca)};if(_0x151308['status']===_0xaf0188['QGuuo'])return _0x151308['terminalReason']??_0x84f40e(0x258);if(_0xaf0188['tErZE'](_0x151308[_0x84f40e(0x281)],_0x84f40e(0x268)))return _0xaf0188[_0x84f40e(0x1cc)];return _0x151308[_0x84f40e(0x281)];}function getScenarioRationale(_0x49fe28,_0x1041ae){const _0xaab9d9=_0x19025f;if(_0x1041ae)return _0x1041ae;if(_0x49fe28['blockedReason'])return _0x49fe28['blockedReason'];if(_0x49fe28['incompleteReason'])return _0x49fe28[_0xaab9d9(0x209)];if(_0x49fe28['canceledReason'])return _0x49fe28['canceledReason'];if(_0x49fe28['notes'])return _0x49fe28[_0xaab9d9(0x246)];return null;}export async function featureReportPrDescription(_0x69b940,_0x397d9a){const _0x1d1220=_0x19025f,_0x1f8ac2={'FlrJr':function(_0x70bb12){return _0x70bb12();},'hHqXi':_0x1d1220(0x277),'aoIVY':function(_0x563cfd,_0x4b46c4){return _0x563cfd(_0x4b46c4);},'DVINq':function(_0x15713e,_0x363e9d,_0x38a887){return _0x15713e(_0x363e9d,_0x38a887);},'IeRrj':function(_0x53dd08,_0x9b85c1){return _0x53dd08===_0x9b85c1;},'OENfY':function(_0x2b489f,_0x200a14){return _0x2b489f>_0x200a14;},'JtHnk':function(_0x251516,_0x4d38f9){return _0x251516<_0x4d38f9;},'oPbXv':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','itwhs':function(_0x83416e,_0x586e96,_0xe5ae60,_0x4d9109){return _0x83416e(_0x586e96,_0xe5ae60,_0x4d9109);}},_0x278447=_0x69b940||await _0x1f8ac2[_0x1d1220(0x280)](getActiveFeatureId);if(!_0x278447)throw new Error(_0x1f8ac2[_0x1d1220(0x1fe)]);const _0x11635a=await _0x1f8ac2['aoIVY'](getFeature,_0x278447),_0x4d5bcb=_0x11635a['checklistItems']||[],_0x184ddc=_0x1f8ac2[_0x1d1220(0x293)](getCurrentSessionItems,_0x11635a,_0x4d5bcb);_0x1f8ac2['IeRrj'](_0x184ddc['length'],0x0)&&(console[_0x1d1220(0x238)](_0x1d1220(0x1d2)),process['exit'](0x1));const _0x31cc03=_0x397d9a['excludeScenarios']??[],_0x1ffc67=_0x31cc03['filter'](_0x5e276c=>!Number[_0x1d1220(0x244)](_0x5e276c)||_0x5e276c<0x1||_0x5e276c>_0x184ddc['length']);if(_0x1f8ac2['OENfY'](_0x1ffc67['length'],0x0)){console[_0x1d1220(0x238)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x1ffc67['join'](',\x20')),console[_0x1d1220(0x22c)]('\x0aAvailable\x20scenarios:');for(let _0x47a3f0=0x0;_0x1f8ac2['JtHnk'](_0x47a3f0,_0x184ddc['length']);_0x47a3f0++){console[_0x1d1220(0x22c)]('\x20\x20'+(_0x47a3f0+0x1)+'.\x20'+_0x184ddc[_0x47a3f0]['description']);}process['exit'](0x1);}const _0x4d7780=new Set(_0x31cc03[_0x1d1220(0x207)](_0xdc648a=>_0xdc648a-0x1)),_0x342d21=_0x184ddc['filter']((_0x426397,_0x3e34a2)=>!_0x4d7780[_0x1d1220(0x1e5)](_0x3e34a2));_0x342d21['length']===0x0&&(console[_0x1d1220(0x238)](_0x1f8ac2[_0x1d1220(0x22a)]),process[_0x1d1220(0x261)](0x1));if(_0x397d9a[_0x1d1220(0x27a)])await _0x1f8ac2[_0x1d1220(0x1df)](outputJsonReport,_0x278447,_0x11635a,_0x342d21);else{const _0x11f2ae=await _0x1f8ac2[_0x1d1220(0x293)](getFeatureReportMarkdown,_0x278447,{'itemIds':_0x342d21[_0x1d1220(0x207)](_0xf46b1=>_0xf46b1['id'])});process[_0x1d1220(0x272)]['write'](_0x11f2ae[_0x1d1220(0x289)]()+'\x0a');}}async function outputJsonReport(_0x23fd5a,_0x4da194,_0x1cef56){const _0x90ba82=_0x19025f,_0x9e8fea={'MzvsC':function(_0x178acc,_0x428a19){return _0x178acc(_0x428a19);},'LacCM':function(_0x256743,_0x427a89){return _0x256743===_0x427a89;},'NfRAW':function(_0xf5002d,_0x33bdc5){return _0xf5002d+_0x33bdc5;}},_0x546ea2=getApiBaseUrl(),_0x22e02c=await _0x9e8fea[_0x90ba82(0x222)](getFeatureReport,_0x23fd5a),_0x404f72=new Map(_0x22e02c[_0x90ba82(0x251)]['map'](_0x48e07b=>[_0x48e07b['id'],_0x48e07b])),_0x35d2a4=await Promise['all'](_0x1cef56[_0x90ba82(0x207)](async _0x3cba6b=>{const _0x353b38=_0x90ba82,_0x48bf13=_0x404f72['get'](_0x3cba6b['id']),_0x321328=_0x48bf13?.['linkedSession']??null;let _0x42aaa3=[];if(_0x3cba6b[_0x353b38(0x21d)])try{const {steps:_0x341f92}=await _0x9e8fea[_0x353b38(0x222)](getBrowserSessionSteps,_0x3cba6b['browserSessionId']);_0x341f92['length']>0x0&&(_0x42aaa3=_0x341f92['map'](_0x32899c=>{const _0x1e6955=_0x353b38,_0x581645=_0x32899c[_0x1e6955(0x242)]['find'](_0x203f1f=>_0x203f1f['assetType']===_0x1e6955(0x269)&&_0x203f1f[_0x1e6955(0x22d)]==='after')??_0x32899c[_0x1e6955(0x242)]['find'](_0x2d969f=>_0x2d969f[_0x1e6955(0x241)]===_0x1e6955(0x269));let _0x1d4b48=null,_0x2edab2=null;if(_0x581645){const _0x1abe88=_0x581645['storage']['location']['split']('/')[_0x1e6955(0x292)]();_0x1d4b48=_0x546ea2+'/api/v1/mcp/browser-sessions/'+_0x3cba6b[_0x1e6955(0x21d)]+_0x1e6955(0x233)+_0x1abe88,_0x1abe88&&(_0x2edab2=_0x1abe88['replace'](/\.\w+$/,'')[_0x1e6955(0x24f)](/^(key_)?\d+_/,'')[_0x1e6955(0x24f)](/[-_]/g,'\x20'));}return{'description':_0x2edab2||_0x32899c[_0x1e6955(0x291)]||_0x32899c['stepName']||'Step\x20'+_0x32899c[_0x1e6955(0x208)],'screenshot':_0x1d4b48,'is_key_step':_0x32899c['isKeyStep']};}));}catch{}return _0x9e8fea[_0x353b38(0x1d6)](_0x42aaa3[_0x353b38(0x1db)],0x0)&&_0x321328?.['screenshotUrls']&&(_0x42aaa3=_0x321328[_0x353b38(0x23c)][_0x353b38(0x207)]((_0x1326ac,_0x46dc0d)=>({'description':_0x353b38(0x286)+(_0x46dc0d+0x1),'screenshot':_0x1326ac,'is_key_step':![]}))),{'description':_0x3cba6b[_0x353b38(0x291)],'result':getScenarioResult(_0x3cba6b),'rationale':getScenarioRationale(_0x3cba6b,_0x321328?.['agentResponse']),'steps':_0x42aaa3};})),_0x470471={'url':_0x4da194['dashboardUrl'],'scenarios':_0x35d2a4};process['stdout']['write'](_0x9e8fea[_0x90ba82(0x1da)](JSON['stringify'](_0x470471,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x5574fc){const _0x331482=_0x19025f,_0x1f6c36={'OEFNs':function(_0x139f25){return _0x139f25();},'yJVJC':_0x331482(0x247),'juPKE':function(_0x1ded61,_0x26bfcf){return _0x1ded61(_0x26bfcf);},'uYktC':function(_0x27847e,_0x59d6e5){return _0x27847e===_0x59d6e5;},'gcHQZ':'in_progress','nUfub':_0x331482(0x20e),'kohlF':function(_0x186b0b,_0x47b57e,_0x46ff07){return _0x186b0b(_0x47b57e,_0x46ff07);}},_0x546549=_0x5574fc||await _0x1f6c36[_0x331482(0x1e0)](getActiveFeatureId);if(!_0x546549)throw new Error(_0x1f6c36['yJVJC']);const _0x1cc7f9=await _0x1f6c36['juPKE'](getFeature,_0x546549);if(!_0x1cc7f9['currentSessionId'])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x5896a5}=await _0x1f6c36['juPKE'](listFeatureSessions,_0x546549),_0x4b8714=_0x5896a5[_0x331482(0x284)](_0x16e397=>_0x16e397['id']===_0x1cc7f9['currentSessionId']);if(!_0x4b8714)throw new Error('Current\x20session\x20not\x20found.');if(_0x1f6c36['uYktC'](_0x4b8714['status'],'completed')){console[_0x331482(0x22c)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x4b8714[_0x331482(0x281)]!==_0x1f6c36['gcHQZ'])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x4b8714['status']);console[_0x331482(0x22c)](_0x1f6c36['nUfub']),await _0x1f6c36[_0x331482(0x1f7)](concludeSession,_0x546549,_0x1cc7f9[_0x331482(0x21a)]),console['log']('\x0a✅\x20Session\x20'+_0x4b8714['iteration']+_0x331482(0x1c9)),console[_0x331482(0x22c)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x1e5c02){const _0x35dee4=_0x19025f,_0x8a9bea={'uTBBQ':function(_0x5e03ff,_0x56854c){return _0x5e03ff(_0x56854c);},'fiJSI':function(_0x2c18d1,_0x95ec85){return _0x2c18d1===_0x95ec85;},'lVnFE':_0x35dee4(0x230),'VNtnH':function(_0x2d59c2,_0x287c73){return _0x2d59c2===_0x287c73;}},_0x461a50=_0x1e5c02||await getActiveFeatureId();if(!_0x461a50)throw new Error(_0x35dee4(0x277));const _0x12088d=await _0x8a9bea['uTBBQ'](getFeature,_0x461a50);console[_0x35dee4(0x22c)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x12088d[_0x35dee4(0x215)]+'\x0a');const {sessions:_0x688aea}=await listFeatureSessions(_0x461a50);if(_0x688aea['length']===0x0){console[_0x35dee4(0x22c)](_0x35dee4(0x1f9));return;}for(const _0x507064 of _0x688aea){const _0x44a7c5=_0x8a9bea[_0x35dee4(0x1dc)](_0x507064['status'],_0x8a9bea['lVnFE'])?'✅':_0x8a9bea[_0x35dee4(0x1c6)](_0x507064[_0x35dee4(0x281)],_0x35dee4(0x1ca))?'🔄':'▶️';console['log'](_0x44a7c5+_0x35dee4(0x24d)+_0x507064['iteration']+'\x20('+_0x507064['id']+')'),console[_0x35dee4(0x22c)]('\x20\x20\x20Status:\x20'+_0x507064[_0x35dee4(0x281)]),console[_0x35dee4(0x22c)]('\x20\x20\x20Created:\x20'+new Date(_0x507064['createdAt'])['toLocaleString']()),_0x507064['completedAt']&&console[_0x35dee4(0x22c)](_0x35dee4(0x216)+new Date(_0x507064['completedAt'])[_0x35dee4(0x20a)]()),console['log']('');}}export async function featureAddScenario(_0x24041c,_0x456178){const _0x2b2d77=_0x19025f,_0x586941={'jwJyj':function(_0x1b90e6){return _0x1b90e6();},'ZaatN':function(_0x7c7b6f,_0x37013f){return _0x7c7b6f(_0x37013f);}},_0x380fe5=_0x456178||await _0x586941[_0x2b2d77(0x288)](getActiveFeatureId);if(!_0x380fe5)throw new Error(_0x2b2d77(0x247));const _0x2fab09=await _0x586941[_0x2b2d77(0x276)](getFeature,_0x380fe5);if(_0x2fab09['latestReview']&&!_0x2fab09[_0x2b2d77(0x282)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x2fab09[_0x2b2d77(0x234)]);await createChecklistItem(_0x380fe5,_0x24041c);const _0x200f04=await getFeature(_0x380fe5);console['log'](_0x2b2d77(0x294)),displayFeature(_0x200f04,_0x200f04['checklistItems']);}export async function featureEditScenario(_0x7162f5,_0x3ac9c2){const _0x2630e9=_0x19025f,_0x104e00={'czTrV':function(_0x483f9e){return _0x483f9e();},'roRMu':_0x2630e9(0x274),'KtOnj':function(_0x170f33,_0x53c56e){return _0x170f33(_0x53c56e);},'cqRca':_0x2630e9(0x297),'fCppw':function(_0x2dc701,_0x36dc3e){return _0x2dc701===_0x36dc3e;},'koGMb':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','Vbame':'\x0aAvailable\x20scenarios:','syivI':function(_0x3e6232,_0x5168c4){return _0x3e6232<_0x5168c4;},'uuVsg':function(_0x5602ed,_0x2c52ca){return _0x5602ed>=_0x2c52ca;},'LCqqm':function(_0x104c9f,_0x480d63){return _0x104c9f<_0x480d63;}},_0x1401ec=_0x3ac9c2['id']||await _0x104e00['czTrV'](getActiveFeatureId);!_0x1401ec&&(console[_0x2630e9(0x238)](_0x104e00[_0x2630e9(0x236)]),console[_0x2630e9(0x238)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process['exit'](0x1));const _0x7f3045=await _0x104e00[_0x2630e9(0x265)](getFeature,_0x1401ec);_0x7f3045['latestReview']&&!_0x7f3045['latestReview']['submittedAt']&&(console[_0x2630e9(0x238)](_0x104e00[_0x2630e9(0x20f)]),console['error'](_0x2630e9(0x23b)),console['error']('\x20\x20'+_0x7f3045['dashboardUrl']),process[_0x2630e9(0x261)](0x1));const _0x441ca5=_0x7f3045[_0x2630e9(0x251)]||[];_0x441ca5['length']===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x104e00['fCppw'](_0x3ac9c2['scenario'],undefined)){console['error'](_0x104e00['koGMb']),console['log'](_0x104e00['Vbame']);for(let _0x5355fb=0x0;_0x104e00[_0x2630e9(0x25c)](_0x5355fb,_0x441ca5[_0x2630e9(0x1db)]);_0x5355fb++){console['log']('\x20\x20'+(_0x5355fb+0x1)+'.\x20'+_0x441ca5[_0x5355fb]['description']);}process['exit'](0x1);}const _0x3fdf1e=_0x3ac9c2['scenario']-0x1;if(_0x3fdf1e<0x0||_0x104e00[_0x2630e9(0x21b)](_0x3fdf1e,_0x441ca5[_0x2630e9(0x1db)])){console[_0x2630e9(0x238)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x3ac9c2[_0x2630e9(0x287)]+_0x2630e9(0x201)+_0x441ca5[_0x2630e9(0x1db)]+'\x20scenarios.'),console['log'](_0x104e00['Vbame']);for(let _0x1b5706=0x0;_0x104e00[_0x2630e9(0x267)](_0x1b5706,_0x441ca5['length']);_0x1b5706++){console['log']('\x20\x20'+(_0x1b5706+0x1)+'.\x20'+_0x441ca5[_0x1b5706]['description']);}process['exit'](0x1);}const _0x14060f=_0x441ca5[_0x3fdf1e];await updateChecklistItem(_0x1401ec,_0x14060f['id'],{'description':_0x7162f5});const _0x283115=await getFeature(_0x1401ec);console['log'](_0x2630e9(0x1d4)),displayFeature(_0x283115,_0x283115['checklistItems']);}async function downloadFeedbackImage(_0x4460ce,_0x2d5d19){const _0x59fb29=_0x19025f,_0x2b008f={'YUlrl':function(_0x26c766){return _0x26c766();},'ExFhA':_0x59fb29(0x1f1),'mVqOI':function(_0x52fd01,_0x4070c9,_0x4a1c25){return _0x52fd01(_0x4070c9,_0x4a1c25);},'VRwSw':function(_0x45e949,_0x4f982d,_0x487f83){return _0x45e949(_0x4f982d,_0x487f83);}};try{const _0x4981d2=join(_0x2b008f[_0x59fb29(0x237)](getRangerDir),_0x2b008f[_0x59fb29(0x214)]);await mkdir(_0x4981d2,{'recursive':!![]});const _0x19b447=_0x2b008f['mVqOI'](join,_0x4981d2,_0x59fb29(0x202)+_0x2d5d19+_0x59fb29(0x278)),_0xf81cff=await fetch(_0x4460ce);if(!_0xf81cff['ok'])return null;const _0x3686bb=Buffer[_0x59fb29(0x1ff)](await _0xf81cff[_0x59fb29(0x1f6)]());return await _0x2b008f['VRwSw'](writeFile,_0x19b447,_0x3686bb),_0x19b447;}catch{return null;}}export async function featureGetReview(_0x28318e){const _0xb8336d=_0x19025f,_0x1775f2={'WbPYN':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','wydOM':function(_0x52d343,_0x3a9370){return _0x52d343(_0x3a9370);},'VCdWZ':'No\x20scenarios\x20found.','tAgFy':function(_0x4c9581,_0x2130ec){return _0x4c9581>_0x2130ec;},'QsUBV':function(_0x3a8dbf,_0x7438c0,_0x33817a){return _0x3a8dbf(_0x7438c0,_0x33817a);},'aWFJN':_0xb8336d(0x259),'CyhwK':function(_0x547a0f,_0x17ebc5,_0x457db7){return _0x547a0f(_0x17ebc5,_0x457db7);},'Fciio':'point','bLLLi':function(_0x447eb2,_0x2e24ca){return _0x447eb2>=_0x2e24ca;}},_0x446ed8=_0x28318e||await getActiveFeatureId();if(!_0x446ed8)throw new Error(_0x1775f2['WbPYN']);const _0x57758e=await getFeature(_0x446ed8),{items:_0x1ceb5d}=await _0x1775f2[_0xb8336d(0x26b)](getActionItems,_0x446ed8);console['log'](_0xb8336d(0x266)+_0x57758e[_0xb8336d(0x215)]+'\x20('+_0x57758e['id']+')\x0a');if(_0x1ceb5d[_0xb8336d(0x1db)]===0x0){console[_0xb8336d(0x22c)](_0x1775f2[_0xb8336d(0x1c8)]);return;}for(let _0x8e5f64=0x0;_0x8e5f64<_0x1ceb5d[_0xb8336d(0x1db)];_0x8e5f64++){const _0x46a5b4=_0x1ceb5d[_0x8e5f64],_0x2a935b=_0x1775f2[_0xb8336d(0x27e)](_0x46a5b4[_0xb8336d(0x25f)],0x1)?_0xb8336d(0x1ed)+_0x46a5b4[_0xb8336d(0x25f)]+')':'',_0x210057=await _0x1775f2[_0xb8336d(0x23e)](getItemFeedback,_0x446ed8,_0x46a5b4['id']);if(_0x210057[_0xb8336d(0x1f2)]['length']>0x0){console[_0xb8336d(0x22c)]('Scenario\x20'+(_0x8e5f64+0x1)+':\x20\x22'+_0x46a5b4['description']+'\x22'+_0x2a935b+'\x20—\x20'+_0x210057['unaddressedComments'][_0xb8336d(0x1db)]+'\x20unaddressed\x20comment(s)');for(const _0x3c8b21 of _0x210057[_0xb8336d(0x1f2)]){const _0x4376e2=new Date(_0x3c8b21['createdAt'])[_0xb8336d(0x200)](_0xb8336d(0x25b),{'month':_0xb8336d(0x26c),'day':_0x1775f2['aWFJN']}),_0x2cd1a7=_0x3c8b21['authorName']||_0x3c8b21[_0xb8336d(0x28c)]||_0xb8336d(0x1fd);console[_0xb8336d(0x22c)](_0xb8336d(0x25d)+_0x2cd1a7+'\x20('+_0x4376e2+_0xb8336d(0x20d)+_0x3c8b21[_0xb8336d(0x26d)]+'\x22');if(_0x3c8b21[_0xb8336d(0x256)]){const _0x313f50=await _0x1775f2[_0xb8336d(0x1dd)](downloadFeedbackImage,_0x3c8b21[_0xb8336d(0x256)],_0x3c8b21['id']);_0x313f50&&console['log'](_0xb8336d(0x1f8)+_0x313f50);}if(_0x3c8b21[_0xb8336d(0x1d1)]){const _0x303e51=_0x3c8b21[_0xb8336d(0x1d1)]['selector'][_0xb8336d(0x1d7)](_0xb8336d(0x25a))[_0xb8336d(0x292)]()?.['split'](':')[0x0]||'element',_0x5a9542=_0x3c8b21[_0xb8336d(0x1d1)]['textContent']?'\x20\x22'+_0x3c8b21[_0xb8336d(0x1d1)]['textContent'][_0xb8336d(0x255)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x303e51+'>'+_0x5a9542),console[_0xb8336d(0x22c)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x3c8b21[_0xb8336d(0x1d1)]['selector']);}else{if(_0x3c8b21['spatial']){const _0x27369d=_0x3c8b21[_0xb8336d(0x1f0)]['coordinates'];_0x3c8b21['spatial'][_0xb8336d(0x210)]===_0x1775f2['Fciio']&&_0x1775f2['bLLLi'](_0x27369d[_0xb8336d(0x1db)],0x2)?console[_0xb8336d(0x22c)](_0xb8336d(0x229)+_0x27369d[0x0][_0xb8336d(0x26e)](0x2)+',\x20'+_0x27369d[0x1]['toFixed'](0x2)+')'):console[_0xb8336d(0x22c)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x3c8b21['spatial']['type']+_0xb8336d(0x21e)+_0x27369d[_0xb8336d(0x207)](_0x4b2efd=>_0x4b2efd[_0xb8336d(0x26e)](0x2))['join'](',\x20')+']');}}}if(_0x210057['canonicalFlow']){console['log'](_0xb8336d(0x228));for(const _0x17a3fe of _0x210057['canonicalFlow'][_0xb8336d(0x1d7)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x17a3fe);}}}else console['log']('Scenario\x20'+(_0x8e5f64+0x1)+_0xb8336d(0x260)+_0x46a5b4[_0xb8336d(0x291)]+'\x22'+_0x2a935b+_0xb8336d(0x1f3)),console[_0xb8336d(0x22c)](_0xb8336d(0x252));console['log']('');}}export async function featureDelete(_0xacbe95){const _0x4177fd=_0x19025f,_0x2e3183={'hmHVc':function(_0x381bc4){return _0x381bc4();},'setNa':_0x4177fd(0x247),'dFQCE':function(_0x225d8a,_0x5c4779){return _0x225d8a(_0x5c4779);},'YDuJe':function(_0x2157f9,_0x454ce3){return _0x2157f9(_0x454ce3);},'AMgoF':_0x4177fd(0x1d3)},_0x57f1cc=_0xacbe95||await _0x2e3183['hmHVc'](getActiveFeatureId);if(!_0x57f1cc)throw new Error(_0x2e3183['setNa']);const _0xc6df89=await _0x2e3183['dFQCE'](getFeature,_0x57f1cc);await _0x2e3183[_0x4177fd(0x240)](softDeleteFeature,_0x57f1cc),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0xc6df89[_0x4177fd(0x215)]+'\x20('+_0x57f1cc+')'),console['log'](_0x2e3183[_0x4177fd(0x204)]+_0x57f1cc);}export async function featureRestore(_0x308552){const _0x4e3d5c=_0x19025f;await restoreFeature(_0x308552);const _0x4423dd=await getFeature(_0x308552);console['log'](_0x4e3d5c(0x212)+_0x4423dd['name']+'\x20('+_0x308552+')'),displayFeature(_0x4423dd,_0x4423dd['checklistItems']);}
|
|
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)]);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5de460,_0x385d62){const _0x1c85a8=_0x2cf7,_0x5c5180=_0x5de460();while(!![]){try{const _0x392bdd=parseInt(_0x1c85a8(0x13a))/0x1*(-parseInt(_0x1c85a8(0x13b))/0x2)+-parseInt(_0x1c85a8(0x144))/0x3+parseInt(_0x1c85a8(0x13f))/0x4+-parseInt(_0x1c85a8(0x142))/0x5+parseInt(_0x1c85a8(0x139))/0x6*(-parseInt(_0x1c85a8(0x143))/0x7)+-parseInt(_0x1c85a8(0x13e))/0x8+parseInt(_0x1c85a8(0x136))/0x9;if(_0x392bdd===_0x385d62)break;else _0x5c5180['push'](_0x5c5180['shift']());}catch(_0x6e9d74){_0x5c5180['push'](_0x5c5180['shift']());}}}(_0x27e4,0x7e197));function _0x2cf7(_0x3b68fc,_0x31eda1){_0x3b68fc=_0x3b68fc-0x136;const _0x27e4d3=_0x27e4();let _0x2cf7af=_0x27e4d3[_0x3b68fc];return _0x2cf7af;}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 _0x27e4(){const _0x2984bc=['error','SIGTERM','112310XEIqFT','7WDdKoQ','2147607joNzfx','keys','22283640SyMIMY','bAuHG','once','597090nkwqJx','21521pcmLSv','64xLFFaM','SGNtS','Valid\x20hooks:\x20','7529952oztghu','2033220tYrZon'];_0x27e4=function(){return _0x2984bc;};return _0x27e4();}function installCancellationHandlers(){const _0x3487ae=_0x2cf7,_0x10d7ca={'XbRsh':'SIGINT','SGNtS':_0x3487ae(0x141),'zRcpe':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x3baf03=()=>{process['exit'](0x0);};process['once'](_0x10d7ca['XbRsh'],_0x3baf03),process[_0x3487ae(0x138)](_0x10d7ca[_0x3487ae(0x13c)],_0x3baf03),process['once'](_0x10d7ca['zRcpe'],_0x3baf03),cancellationHandlersInstalled=!![];}export async function hook(_0x4e12a5,_0x25a0f5){const _0x263747=_0x2cf7,_0x3b37bf={'ofVNj':function(_0x1ffb9a){return _0x1ffb9a();},'bAuHG':function(_0x3ff200,_0x1d30c9){return _0x3ff200(_0x1d30c9);}};_0x3b37bf['ofVNj'](installCancellationHandlers);const _0x686a7d=HOOKS[_0x4e12a5];if(!_0x686a7d){const _0x81a11a=Object[_0x263747(0x145)](HOOKS)['join'](',\x20');console[_0x263747(0x140)]('Unknown\x20hook:\x20'+_0x4e12a5),console['error'](_0x263747(0x13d)+_0x81a11a),process['exit'](0x1);}await _0x3b37bf[_0x263747(0x137)](_0x686a7d,_0x25a0f5);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x418453,_0x4e966c){const _0x1d817f=_0x4a79,_0x42e797=_0x418453();while(!![]){try{const _0x56abd5=-parseInt(_0x1d817f(0x187))/0x1*(-parseInt(_0x1d817f(0x186))/0x2)+parseInt(_0x1d817f(0x191))/0x3*(-parseInt(_0x1d817f(0x18f))/0x4)+-parseInt(_0x1d817f(0x18a))/0x5*(parseInt(_0x1d817f(0x18c))/0x6)+-parseInt(_0x1d817f(0x193))/0x7*(parseInt(_0x1d817f(0x192))/0x8)+-parseInt(_0x1d817f(0x189))/0x9+parseInt(_0x1d817f(0x18b))/0xa+parseInt(_0x1d817f(0x18d))/0xb;if(_0x56abd5===_0x4e966c)break;else _0x42e797['push'](_0x42e797['shift']());}catch(_0x1341e2){_0x42e797['push'](_0x42e797['shift']());}}}(_0x2df0,0x584c9));function _0x4a79(_0x13bbd0,_0x53f3c6){_0x13bbd0=_0x13bbd0-0x186;const _0x2df07d=_0x2df0();let _0x4a7990=_0x2df07d[_0x13bbd0];return _0x4a7990;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x2df0(){const _0x5bec4d=['12RMyHIo','23673397nFdFhb','PoFQJ','1094092tgHsDT','session_id','6aLyMoA','122152kIUtzh','161vfrQpV','2Uurrsi','221783fwVXhE','cNFPH','5988906czUUqG','1152155DOrGeX','122920EzzfEv'];_0x2df0=function(){return _0x5bec4d;};return _0x2df0();}import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT='\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.';export async function autoPrompt(){const _0xef6660=_0x4a79,_0xd69f12={'PoFQJ':function(_0x300ef4,_0x8e636b){return _0x300ef4===_0x8e636b;},'cNFPH':function(_0x433d68){return _0x433d68();},'YtGRa':function(_0x461733,_0x8c04c2){return _0x461733(_0x8c04c2);},'PSjJt':function(_0x1fca5c,_0xd16958){return _0x1fca5c(_0xd16958);}};if(_0xd69f12[_0xef6660(0x18e)](_0xd69f12[_0xef6660(0x188)](resolveHookMode),'off'))return;const _0x2d29da=await _0xd69f12['cNFPH'](readHookInput),_0x222e4b=_0x2d29da?.[_0xef6660(0x190)];if(!_0x222e4b)return;if(_0xd69f12['YtGRa'](isSessionEnabled,_0x222e4b)||_0xd69f12['PSjJt'](hasSessionBeenPrompted,_0x222e4b))return;markSessionPrompted(_0x222e4b),console['log'](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x317162,_0x1fed38){const _0x247e89=_0x31a6,_0x162b70=_0x317162();while(!![]){try{const _0x2eda03=-parseInt(_0x247e89(0x1c7))/0x1+-parseInt(_0x247e89(0x1c4))/0x2*(-parseInt(_0x247e89(0x1bd))/0x3)+-parseInt(_0x247e89(0x1bf))/0x4+parseInt(_0x247e89(0x1c0))/0x5+parseInt(_0x247e89(0x1b9))/0x6+parseInt(_0x247e89(0x1c3))/0x7*(parseInt(_0x247e89(0x1c2))/0x8)+parseInt(_0x247e89(0x1bc))/0x9*(parseInt(_0x247e89(0x1ba))/0xa);if(_0x2eda03===_0x1fed38)break;else _0x162b70['push'](_0x162b70['shift']());}catch(_0xc230a5){_0x162b70['push'](_0x162b70['shift']());}}}(_0x4b59,0x2136e));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x31a6(_0x2dab11,_0x4ed34a){_0x2dab11=_0x2dab11-0x1b9;const _0x4b599a=_0x4b59();let _0x31a62f=_0x4b599a[_0x2dab11];return _0x31a62f;}export async function disable(_0x16ce5d){const _0x279cab=_0x31a6,_0x380c3d={'Wcicq':function(_0x36c0c8,_0x4e74a6){return _0x36c0c8!==_0x4e74a6;},'QTVsT':_0x279cab(0x1c8),'BKSoy':function(_0x239cc8,_0x2e924b){return _0x239cc8!==_0x2e924b;},'OybVS':'master'},_0x29ed57=_0x16ce5d||process[_0x279cab(0x1be)]['CLAUDE_SESSION_ID']||'';_0x29ed57&&disableSession(_0x29ed57);const _0x2623cd=getCurrentBranch();_0x2623cd&&_0x380c3d[_0x279cab(0x1bb)](_0x2623cd,_0x380c3d['QTVsT'])&&_0x2623cd!=='master'&&disableBranch(_0x2623cd),printBlock(_0x279cab(0x1c6)+(_0x2623cd&&_0x380c3d['BKSoy'](_0x2623cd,_0x279cab(0x1c8))&&_0x2623cd!==_0x380c3d[_0x279cab(0x1c1)]?_0x279cab(0x1c5)+_0x2623cd+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x4b59(){const _0x43c2e0=['OybVS','32wMlrPE','31969LhhvTg','74618RuWOcV','\x20and\x20branch\x20\x27','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','17206wSCrDA','main','1069884sZdYey','10zbIzzJ','Wcicq','383517IwMWac','3kWbvOT','env','628664wDIZHW','169570eCInOh'];_0x4b59=function(){return _0x43c2e0;};return _0x4b59();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5bfd13,_0x4c2c3b){const _0x1e08bc=_0x1b3f,_0x51c1f8=_0x5bfd13();while(!![]){try{const _0x2303e6=-parseInt(_0x1e08bc(0x129))/0x1*(parseInt(_0x1e08bc(0x127))/0x2)+parseInt(_0x1e08bc(0x123))/0x3*(parseInt(_0x1e08bc(0x120))/0x4)+parseInt(_0x1e08bc(0x12a))/0x5+parseInt(_0x1e08bc(0x121))/0x6+-parseInt(_0x1e08bc(0x12c))/0x7+-parseInt(_0x1e08bc(0x12e))/0x8*(parseInt(_0x1e08bc(0x12f))/0x9)+parseInt(_0x1e08bc(0x12b))/0xa*(-parseInt(_0x1e08bc(0x132))/0xb);if(_0x2303e6===_0x4c2c3b)break;else _0x51c1f8['push'](_0x51c1f8['shift']());}catch(_0x2526b2){_0x51c1f8['push'](_0x51c1f8['shift']());}}}(_0x3e85,0x38f3a));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0x3e85(){const _0x518659=['245169kbgvXe','CLAUDE_SESSION_ID','\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`.','7403nxdkDN','#\x20RANGER\x20ENABLED','14440ZxJhDE','1678284ouvJOU','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','315uuKTkS','master','DPSQE','env','690KRRzuj','FqLAd','1109tgTKzW','1815965GKdKSx','510tGXUCN','2411598MTYWWk','OscnZ','8LSOgNS'];_0x3e85=function(){return _0x518659;};return _0x3e85();}import{update}from'../update.js';function _0x1b3f(_0x2b19b0,_0x1d1a8b){_0x2b19b0=_0x2b19b0-0x11f;const _0x3e85b5=_0x3e85();let _0x1b3f37=_0x3e85b5[_0x2b19b0];return _0x1b3f37;}export async function enable(_0x3f7de1){const _0x4ed08f=_0x1b3f,_0x316c98={'OscnZ':function(_0x5b7b37,_0x5e8443){return _0x5b7b37(_0x5e8443);},'DPSQE':function(_0x490ef4){return _0x490ef4();},'FqLAd':'ranger\x20setup\x20--opencode','qVqzX':function(_0x18d2c8,_0x26b168){return _0x18d2c8!==_0x26b168;},'oLOgZ':'main'},_0x19b07a=_0x3f7de1||process[_0x4ed08f(0x126)][_0x4ed08f(0x130)]||'',_0x2c1c72=_0x316c98[_0x4ed08f(0x12d)](Boolean,_0x3f7de1),_0x2c06ba=await _0x316c98[_0x4ed08f(0x125)](getToken);if(!_0x2c06ba){const _0x213868=_0x2c1c72?_0x316c98[_0x4ed08f(0x128)]:'ranger\x20setup',_0x380bc3=_0x2c1c72?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x4ed08f(0x122);_0x316c98['OscnZ'](printBlock,'#\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`'+_0x213868+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x380bc3);return;}try{await update();}catch{}_0x19b07a&&enableSession(_0x19b07a);const _0x23a863=_0x316c98['DPSQE'](getCurrentBranch),_0xa3a5cf=_0x23a863&&_0x316c98['qVqzX'](_0x23a863,_0x316c98['oLOgZ'])&&_0x23a863!==_0x4ed08f(0x124)?'\x0a\x0a**Branch\x20\x27'+_0x23a863+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x5e288e=_0x316c98[_0x4ed08f(0x125)](getRangerSkillContent);printBlock(_0x4ed08f(0x11f)+_0xa3a5cf+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x5e288e+_0x4ed08f(0x131));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x4355(_0x1727ed,_0xa30ae1){_0x1727ed=_0x1727ed-0x7a;const _0x556f67=_0x556f();let _0x4355b4=_0x556f67[_0x1727ed];return _0x4355b4;}(function(_0x5f225e,_0xae3649){const _0x565ac5=_0x4355,_0xa3e7a8=_0x5f225e();while(!![]){try{const _0x43f36e=parseInt(_0x565ac5(0x7d))/0x1+parseInt(_0x565ac5(0x85))/0x2*(-parseInt(_0x565ac5(0x80))/0x3)+-parseInt(_0x565ac5(0x7e))/0x4+-parseInt(_0x565ac5(0x83))/0x5*(-parseInt(_0x565ac5(0x82))/0x6)+-parseInt(_0x565ac5(0x84))/0x7*(parseInt(_0x565ac5(0x7c))/0x8)+parseInt(_0x565ac5(0x86))/0x9+parseInt(_0x565ac5(0x81))/0xa*(parseInt(_0x565ac5(0x7b))/0xb);if(_0x43f36e===_0xae3649)break;else _0xa3e7a8['push'](_0xa3e7a8['shift']());}catch(_0x103a34){_0xa3e7a8['push'](_0xa3e7a8['shift']());}}}(_0x556f,0xd273b));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x2194a6){const _0x225cbe=_0x4355,_0x3928a3={'dFaNg':function(_0x4f0ddc,_0x3cda99){return _0x4f0ddc(_0x3cda99);}},_0x2a3364=await _0x3928a3[_0x225cbe(0x7a)](getEnabledSessionId,_0x2194a6);if(!_0x2a3364)return;printBlock(_0x225cbe(0x7f));}function _0x556f(){const _0x511461=['3661842QJVvoP','10hNlfKw','7RbyLQd','2yHNxBj','955557CvgNhd','dFaNg','11vkxQus','8328328FGpRPi','218675BEQTXc','4473476LexGrZ','===\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===','1257906mkVhhs','18952610oxeoIl'];_0x556f=function(){return _0x511461;};return _0x556f();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2d952c,_0x550fba){var _0x4e97dc=_0x3dca,_0x383510=_0x2d952c();while(!![]){try{var _0x17f31d=-parseInt(_0x4e97dc(0x131))/0x1+parseInt(_0x4e97dc(0x130))/0x2*(-parseInt(_0x4e97dc(0x12d))/0x3)+parseInt(_0x4e97dc(0x12b))/0x4*(-parseInt(_0x4e97dc(0x12c))/0x5)+parseInt(_0x4e97dc(0x135))/0x6+-parseInt(_0x4e97dc(0x133))/0x7*(-parseInt(_0x4e97dc(0x134))/0x8)+parseInt(_0x4e97dc(0x12f))/0x9*(parseInt(_0x4e97dc(0x132))/0xa)+parseInt(_0x4e97dc(0x12e))/0xb;if(_0x17f31d===_0x550fba)break;else _0x383510['push'](_0x383510['shift']());}catch(_0x3ee753){_0x383510['push'](_0x383510['shift']());}}}(_0x33c7,0xd8d72));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';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';function _0x3dca(_0x3ef9b0,_0x40440b){_0x3ef9b0=_0x3ef9b0-0x12b;var _0x33c72a=_0x33c7();var _0x3dca8b=_0x33c72a[_0x3ef9b0];return _0x3dca8b;}function _0x33c7(){var _0x5d80d5=['21217328ucUILp','4041unpWWd','2DNjiHS','972871WAKgmJ','36050slNkFH','140YWmefZ','122872FVVfXW','517464lWyrbz','90492oylXql','225fXFTTx','3185499CZGXOV'];_0x33c7=function(){return _0x5d80d5;};return _0x33c7();}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x155bbc,_0x5f4b41){const _0x2a4bcb=_0x3180,_0x1e625e=_0x155bbc();while(!![]){try{const _0x326ded=-parseInt(_0x2a4bcb(0xbb))/0x1*(parseInt(_0x2a4bcb(0xb9))/0x2)+-parseInt(_0x2a4bcb(0xbe))/0x3+-parseInt(_0x2a4bcb(0xba))/0x4+-parseInt(_0x2a4bcb(0xbf))/0x5+-parseInt(_0x2a4bcb(0xb6))/0x6*(-parseInt(_0x2a4bcb(0xc0))/0x7)+-parseInt(_0x2a4bcb(0xb5))/0x8*(parseInt(_0x2a4bcb(0xc1))/0x9)+-parseInt(_0x2a4bcb(0xbc))/0xa*(-parseInt(_0x2a4bcb(0xb3))/0xb);if(_0x326ded===_0x5f4b41)break;else _0x1e625e['push'](_0x1e625e['shift']());}catch(_0x10aea8){_0x1e625e['push'](_0x1e625e['shift']());}}}(_0x48da,0x93cd0));function _0x3180(_0x2e0642,_0x205f1b){_0x2e0642=_0x2e0642-0xb3;const _0x48dad9=_0x48da();let _0x3180b9=_0x48dad9[_0x2e0642];return _0x3180b9;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x158df9){const _0x18f086=_0x3180;console[_0x18f086(0xb7)](_0x158df9);}export async function readHookInput(){const _0x5763cc=_0x3180;let _0x1f1899='';try{for await(const _0x518fef of process[_0x5763cc(0xb8)]){_0x1f1899+=_0x518fef;}}catch{return null;}if(!_0x1f1899[_0x5763cc(0xbd)]())return null;try{return JSON[_0x5763cc(0xc3)](_0x1f1899);}catch{return null;}}export async function getEnabledSessionId(_0x5492e1){const _0x3e80e1=_0x3180,_0x1586fc={'fuPqL':function(_0x6c89a5,_0x22888b){return _0x6c89a5(_0x22888b);}};if(_0x5492e1)return _0x1586fc[_0x3e80e1(0xb4)](isSessionEnabled,_0x5492e1)?_0x5492e1:null;const _0xbca1e7=await readHookInput(),_0x56eca8=_0xbca1e7?.[_0x3e80e1(0xc2)];if(!_0x56eca8||!isSessionEnabled(_0x56eca8))return null;return _0x56eca8;}export async function getEnabledHookContext(_0x473d93){const _0x183c78={'sZrsY':function(_0x4d2570,_0x5655d3){return _0x4d2570(_0x5655d3);}};if(_0x473d93){if(!isSessionEnabled(_0x473d93))return null;return{'sessionId':_0x473d93,'input':{'session_id':_0x473d93}};}const _0x3b423b=await readHookInput(),_0x25939e=_0x3b423b?.['session_id'];if(!_0x25939e||!_0x183c78['sZrsY'](isSessionEnabled,_0x25939e))return null;return{'sessionId':_0x25939e,'input':_0x3b423b};}function _0x48da(){const _0x203eda=['198APAldg','session_id','parse','340087WzEfRp','fuPqL','37976kTDuFU','18kjrxEB','log','stdin','9642CcaksV','1070224CPqbOt','39ZeoBuX','530uMFObq','trim','1482279QbkgLu','999805zUYGQN','515326jxKRwE'];_0x48da=function(){return _0x203eda;};return _0x48da();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2487bc,_0x34d488){const _0xb49f7a=_0x39c3,_0x42e0a1=_0x2487bc();while(!![]){try{const _0x47c029=-parseInt(_0xb49f7a(0xa1))/0x1+parseInt(_0xb49f7a(0xa2))/0x2+-parseInt(_0xb49f7a(0x9b))/0x3*(-parseInt(_0xb49f7a(0x9d))/0x4)+parseInt(_0xb49f7a(0xa4))/0x5+-parseInt(_0xb49f7a(0x9c))/0x6*(-parseInt(_0xb49f7a(0x9e))/0x7)+parseInt(_0xb49f7a(0xa3))/0x8*(-parseInt(_0xb49f7a(0x99))/0x9)+-parseInt(_0xb49f7a(0xa0))/0xa;if(_0x47c029===_0x34d488)break;else _0x42e0a1['push'](_0x42e0a1['shift']());}catch(_0x37f658){_0x42e0a1['push'](_0x42e0a1['shift']());}}}(_0xa16c,0x2a458));import{printBlock,getEnabledHookContext}from'./output.js';function _0x39c3(_0x4de954,_0x15bcad){_0x4de954=_0x4de954-0x98;const _0xa16ca5=_0xa16c();let _0x39c326=_0xa16ca5[_0x4de954];return _0x39c326;}function _0xa16c(){const _0x5cdba3=['Yzjpt','762970aWHuEM','305855jebAWp','312672iyFPnP','8peWShx','824885zXwaxP','input','1636803awfYWk','===\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===','3SYFqNR','342kNqJMy','762116quLRgq','27671SntXMk'];_0xa16c=function(){return _0x5cdba3;};return _0xa16c();}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x3307b3){const _0x384499=_0x39c3,_0x35f93d={'Yzjpt':function(_0x1e68a2,_0x384e88){return _0x1e68a2(_0x384e88);}},_0x40b2ac=await _0x35f93d['Yzjpt'](getEnabledHookContext,_0x3307b3);if(!_0x40b2ac)return;if(_0x40b2ac[_0x384499(0x98)]['permission_mode']!=='plan')return;if(!shouldShowPlanReminder(_0x40b2ac['sessionId']))return;_0x35f93d[_0x384499(0x9f)](printBlock,_0x384499(0x9a));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4ac002,_0x4abf50){const _0x5545b1=_0x24bf,_0x333b20=_0x4ac002();while(!![]){try{const _0x4c2bc9=parseInt(_0x5545b1(0xf9))/0x1+-parseInt(_0x5545b1(0xf8))/0x2+-parseInt(_0x5545b1(0xfb))/0x3+parseInt(_0x5545b1(0xf6))/0x4*(parseInt(_0x5545b1(0xf5))/0x5)+parseInt(_0x5545b1(0xfa))/0x6*(parseInt(_0x5545b1(0xf3))/0x7)+parseInt(_0x5545b1(0xf4))/0x8*(-parseInt(_0x5545b1(0xfd))/0x9)+parseInt(_0x5545b1(0xfe))/0xa*(-parseInt(_0x5545b1(0xf2))/0xb);if(_0x4c2bc9===_0x4abf50)break;else _0x333b20['push'](_0x333b20['shift']());}catch(_0x3ef1e7){_0x333b20['push'](_0x333b20['shift']());}}}(_0x167b,0x683ea));function _0x24bf(_0x162150,_0x382149){_0x162150=_0x162150-0xf2;const _0x167b33=_0x167b();let _0x24bf7c=_0x167b33[_0x162150];return _0x24bf7c;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x167b(){const _0xc53b0b=['===\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===','9pZDeJs','47230uhYlEK','1562dNsGsg','5380340BiLjOC','2511896tzFTke','1354345iOOnxM','12BnaeKZ','uGmSg','317560jFwDBR','712409gEktoy','6rLvuug','2169651HZuRPS'];_0x167b=function(){return _0xc53b0b;};return _0x167b();}export async function planStart(_0x2c7ffd){const _0xe7ee5=_0x24bf,_0x4c70e1={'uGmSg':function(_0x22dc59,_0x441a65){return _0x22dc59(_0x441a65);}},_0x4f2c0d=await getEnabledSessionId(_0x2c7ffd);if(!_0x4f2c0d)return;_0x4c70e1[_0xe7ee5(0xf7)](printBlock,_0xe7ee5(0xfc));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3c8286,_0x207b2a){const _0x10a222=_0x1e31,_0x159da5=_0x3c8286();while(!![]){try{const _0x420c01=-parseInt(_0x10a222(0x191))/0x1+parseInt(_0x10a222(0x189))/0x2+parseInt(_0x10a222(0x182))/0x3*(-parseInt(_0x10a222(0x190))/0x4)+-parseInt(_0x10a222(0x18f))/0x5*(-parseInt(_0x10a222(0x18b))/0x6)+-parseInt(_0x10a222(0x18a))/0x7+-parseInt(_0x10a222(0x18e))/0x8*(-parseInt(_0x10a222(0x184))/0x9)+parseInt(_0x10a222(0x183))/0xa;if(_0x420c01===_0x207b2a)break;else _0x159da5['push'](_0x159da5['shift']());}catch(_0x37970a){_0x159da5['push'](_0x159da5['shift']());}}}(_0x53b3,0x1adbf));function _0x1e31(_0x57a359,_0x12ea29){_0x57a359=_0x57a359-0x182;const _0x53b3c8=_0x53b3();let _0x1e3164=_0x53b3c8[_0x57a359];return _0x1e3164;}function _0x53b3(){const _0x48971d=['368565zzvmCI','57812TCcoxW','111039aoxtfi','9HxBEef','727330iFsZaj','4599TWhzRo','NSMVD','jXtdX','qyger','stringify','287394iBrvEi','226611FBfPJh','6pwNVus','PostToolUse','log','104mKBcve'];_0x53b3=function(){return _0x48971d;};return _0x53b3();}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x41aa17){const _0x339a79=_0x1e31,_0x5a3c91={'jXtdX':function(_0x5af06d,_0x167e26){return _0x5af06d(_0x167e26);},'qyger':function(_0x4222ee){return _0x4222ee();},'NSMVD':_0x339a79(0x18c)},_0x3e139f=await _0x5a3c91[_0x339a79(0x186)](getEnabledSessionId,_0x41aa17);if(!_0x3e139f)return;updateBranchTracking(_0x3e139f);const _0x57bfad=await _0x5a3c91[_0x339a79(0x187)](getToken);if(!_0x57bfad)return;const _0x127961=getSessionEntry(_0x3e139f);if(_0x127961){const _0x1beec9={'hookSpecificOutput':{'hookEventName':_0x5a3c91['NSMVD'],'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[_0x339a79(0x18d)](JSON[_0x339a79(0x188)](_0x1beec9));return;}const _0x272c07={'hookSpecificOutput':{'hookEventName':_0x5a3c91[_0x339a79(0x185)],'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console[_0x339a79(0x18d)](JSON[_0x339a79(0x188)](_0x272c07));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x27bb(_0x2d5de6,_0x2556d2){_0x2d5de6=_0x2d5de6-0x19d;const _0x3b27b2=_0x3b27();let _0x27bbf7=_0x3b27b2[_0x2d5de6];return _0x27bbf7;}(function(_0x1fff7d,_0x1e86bc){const _0x1cbd86=_0x27bb,_0xa483b9=_0x1fff7d();while(!![]){try{const _0x41d576=-parseInt(_0x1cbd86(0x1a3))/0x1*(parseInt(_0x1cbd86(0x1a9))/0x2)+-parseInt(_0x1cbd86(0x1a6))/0x3*(-parseInt(_0x1cbd86(0x1a8))/0x4)+parseInt(_0x1cbd86(0x1a7))/0x5+parseInt(_0x1cbd86(0x1a4))/0x6+-parseInt(_0x1cbd86(0x1a1))/0x7*(-parseInt(_0x1cbd86(0x19f))/0x8)+-parseInt(_0x1cbd86(0x19d))/0x9*(-parseInt(_0x1cbd86(0x1a2))/0xa)+parseInt(_0x1cbd86(0x1a5))/0xb*(-parseInt(_0x1cbd86(0x19e))/0xc);if(_0x41d576===_0x1e86bc)break;else _0xa483b9['push'](_0xa483b9['shift']());}catch(_0x2a35d5){_0xa483b9['push'](_0xa483b9['shift']());}}}(_0x3b27,0x8b3e6));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x3b27(){const _0x22dd3a=['1194skkGBk','4625675bhuwPH','8028ZsdeFd','66dJZcAG','2157183pTtupM','12KJOptH','80cENZZB','===\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`.','437311bntoqo','40LHFaaa','16163kmmbQl','5827362BpEDUb','34923955lluhzq'];_0x3b27=function(){return _0x22dd3a;};return _0x3b27();}export async function preCompact(_0x20bd04){const _0x294f48=_0x27bb,_0x1c6266=await getEnabledSessionId(_0x20bd04);if(!_0x1c6266)return;try{const _0x25e712=await getToken();if(!_0x25e712)return;printBlock(_0x294f48(0x1a0));}catch{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2df253,_0xf508a8){const _0x401f8d=_0x4e0c,_0xfd36ae=_0x2df253();while(!![]){try{const _0x3876bc=parseInt(_0x401f8d(0x1f0))/0x1*(parseInt(_0x401f8d(0x1f5))/0x2)+-parseInt(_0x401f8d(0x1ed))/0x3*(parseInt(_0x401f8d(0x1ef))/0x4)+-parseInt(_0x401f8d(0x1ea))/0x5*(parseInt(_0x401f8d(0x1e8))/0x6)+parseInt(_0x401f8d(0x1ee))/0x7*(parseInt(_0x401f8d(0x1eb))/0x8)+-parseInt(_0x401f8d(0x1ec))/0x9+parseInt(_0x401f8d(0x1f2))/0xa+parseInt(_0x401f8d(0x1f1))/0xb;if(_0x3876bc===_0xf508a8)break;else _0xfd36ae['push'](_0xfd36ae['shift']());}catch(_0x270819){_0xfd36ae['push'](_0xfd36ae['shift']());}}}(_0x3585,0x56933));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x4e0c(_0x337792,_0xe518a5){_0x337792=_0x337792-0x1e8;const _0x3585c6=_0x3585();let _0x4e0c7d=_0x3585c6[_0x337792];return _0x4e0c7d;}import{readHookInput}from'./output.js';function _0x3585(){const _0x397eea=['5526ZVzYAq','CLAUDE_SESSION_ID','1470OuTEPb','520952dwbypE','4246461qPTHXt','12969ymNQHK','21ZmOpPH','116EkRdfZ','79274nnoKah','9284649xsRKka','246170jPJdxy','WnYrD','clear','4jdBsio'];_0x3585=function(){return _0x397eea;};return _0x3585();}export async function sessionEnd(_0x3b6c1b){const _0x44cdc8=_0x4e0c,_0x200c97={'WnYrD':function(_0x36cf88,_0xfd7a2f){return _0x36cf88(_0xfd7a2f);}},_0xd6ebea=process['env'][_0x44cdc8(0x1e9)];let _0x3356d3=_0x3b6c1b,_0x5cadc3;if(!_0x3b6c1b){if(_0xd6ebea&&!isSessionEnabled(_0xd6ebea))return;const _0x4e397b=await readHookInput();_0x3356d3=_0x4e397b?.['session_id']||_0xd6ebea,_0x5cadc3=_0x4e397b?.['reason'];}if(!_0x3356d3)return;_0x5cadc3===_0x44cdc8(0x1f4)&&_0x200c97[_0x44cdc8(0x1f3)](recordEnabledSessionCleared,_0x3356d3);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4a4c17=_0x1d02;function _0x27f3(){const _0x90e40=['eAZwg','20FijJrU','SessionStart','OBdpQ','4320396AYSOON','parse','export\x20CLAUDE_SESSION_ID=\x22','JSAZl','trackCommandStart','session_id','source','NJMKf','167434hJnYso','stringify','HzLeY','5EKepFX','TSOub','663618EIPCQY','=================================================================\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=================================================================','563511EFkeFC','11dSxLst','2208900vePrIq','101451eShMch','264rDEBkJ','15446170eUrgfM'];_0x27f3=function(){return _0x90e40;};return _0x27f3();}(function(_0x58457f,_0x4c21df){const _0x476ab2=_0x1d02,_0x3a1e44=_0x58457f();while(!![]){try{const _0x327688=parseInt(_0x476ab2(0x102))/0x1*(-parseInt(_0x476ab2(0xff))/0x2)+parseInt(_0x476ab2(0xed))/0x3+-parseInt(_0x476ab2(0xef))/0x4+parseInt(_0x476ab2(0xf4))/0x5*(-parseInt(_0x476ab2(0xeb))/0x6)+parseInt(_0x476ab2(0xf0))/0x7*(parseInt(_0x476ab2(0xf1))/0x8)+-parseInt(_0x476ab2(0xf7))/0x9+-parseInt(_0x476ab2(0xf2))/0xa*(-parseInt(_0x476ab2(0xee))/0xb);if(_0x327688===_0x4c21df)break;else _0x3a1e44['push'](_0x3a1e44['shift']());}catch(_0x4eae01){_0x3a1e44['push'](_0x3a1e44['shift']());}}}(_0x27f3,0x4d811));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';function _0x1d02(_0x4b4325,_0x3d3e91){_0x4b4325=_0x4b4325-0xeb;const _0x27f34e=_0x27f3();let _0x1d0234=_0x27f34e[_0x4b4325];return _0x1d0234;}import{getToken}from'../utils/keychain.js';import{resolveHookMode}from'../utils/environment.js';const RANGER_AUTO_ENABLED_PROMPT=_0x4a4c17(0xec);export async function sessionStart(_0x9b0cb6){const _0x44f4e8=_0x4a4c17,_0x2a641f={'HzLeY':function(_0x50ec24,_0x460afb){return _0x50ec24||_0x460afb;},'zKvld':_0x44f4e8(0xfd),'OBdpQ':function(_0x240dd8,_0x33b2e9){return _0x240dd8&&_0x33b2e9;},'xCuIK':function(_0x4c8dc7,_0x3bd592,_0x4b70c2){return _0x4c8dc7(_0x3bd592,_0x4b70c2);},'NJMKf':function(_0x510e98,_0x1a28d9){return _0x510e98(_0x1a28d9);},'eAZwg':function(_0x2029d9,_0x4795d4){return _0x2029d9(_0x4795d4);},'JSAZl':function(_0x16f4dd,_0x51141b){return _0x16f4dd(_0x51141b);},'TSOub':function(_0x2f9db7,_0x31b6de){return _0x2f9db7!==_0x31b6de;}};let _0xc682c3=_0x2a641f[_0x44f4e8(0x101)](_0x9b0cb6,''),_0xc0001c;if(!_0x9b0cb6){let _0x1d6623='';for await(const _0xaf0291 of process['stdin']){_0x1d6623+=_0xaf0291;}try{const _0x311432=JSON[_0x44f4e8(0xf8)](_0x1d6623);_0xc682c3=_0x311432[_0x44f4e8(0xfc)]||'',_0xc0001c=_0x311432[_0x2a641f['zKvld']];}catch{}const _0x347574=process['env']['CLAUDE_ENV_FILE'];if(_0x2a641f[_0x44f4e8(0xf6)](_0x347574,_0xc682c3))try{await _0x2a641f['xCuIK'](appendFile,_0x347574,_0x44f4e8(0xf9)+_0xc682c3+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0xc682c3){_0x2a641f[_0x44f4e8(0xfe)](shouldAutoEnableAfterClear,_0xc0001c)&&autoEnableAfterClear(_0xc682c3);initBranchTracking(_0xc682c3);resolveHookMode()==='on'&&_0x2a641f[_0x44f4e8(0xf3)](enableSession,_0xc682c3);const _0x4ff84b=isSessionEnabled(_0xc682c3);try{const _0x3f4bb8=_0x2a641f[_0x44f4e8(0xfa)](createTelemetryCollector,'hook:session-start');await _0x3f4bb8[_0x44f4e8(0xfb)]({'sessionId':_0xc682c3,'hooksEnabled':_0x4ff84b}),await _0x3f4bb8['trackCommandEnd']('success');}catch{}if(_0x4ff84b){const _0x414e51=getCurrentBranch(),_0x348bbc=_0x414e51&&_0x2a641f[_0x44f4e8(0x103)](_0x414e51,'main')&&_0x414e51!=='master'?'\x20(Branch:\x20'+_0x414e51+')':'',_0x228e7c={'hookSpecificOutput':{'hookEventName':_0x44f4e8(0xf5),'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x348bbc}};console['log'](JSON[_0x44f4e8(0x100)](_0x228e7c));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x574775,_0x3ee7d6){const _0xd59e31=_0xa3fb,_0x1afa29=_0x574775();while(!![]){try{const _0x1274d4=parseInt(_0xd59e31(0xa5))/0x1*(-parseInt(_0xd59e31(0xa4))/0x2)+parseInt(_0xd59e31(0xa9))/0x3*(-parseInt(_0xd59e31(0xaf))/0x4)+-parseInt(_0xd59e31(0xba))/0x5*(parseInt(_0xd59e31(0xab))/0x6)+parseInt(_0xd59e31(0xbb))/0x7*(parseInt(_0xd59e31(0xb1))/0x8)+parseInt(_0xd59e31(0xa6))/0x9*(-parseInt(_0xd59e31(0xb7))/0xa)+-parseInt(_0xd59e31(0xa7))/0xb+parseInt(_0xd59e31(0xbc))/0xc;if(_0x1274d4===_0x3ee7d6)break;else _0x1afa29['push'](_0x1afa29['shift']());}catch(_0x107e36){_0x1afa29['push'](_0x1afa29['shift']());}}}(_0x1b68,0x51724));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(_0x2bea5a){const _0x532460=_0xa3fb,_0x5806b9={'LHUAc':function(_0x2f2df3,_0x221dac){return _0x2f2df3(_0x221dac);},'pFQcj':function(_0x4479e6,_0x1a2d47){return _0x4479e6(_0x1a2d47);},'HZavu':function(_0x4a2fe7,_0x1a5078){return _0x4a2fe7&&_0x1a5078;},'iErqM':_0x532460(0xb5),'kckHZ':function(_0x23c219,_0x243691,_0x42f00c){return _0x23c219(_0x243691,_0x42f00c);},'tDKcB':function(_0x2ac78d,_0x5a44fd,_0x45166c,_0x202b4d){return _0x2ac78d(_0x5a44fd,_0x45166c,_0x202b4d);}},_0x360991=await _0x5806b9['LHUAc'](getEnabledHookContext,_0x2bea5a),_0x580dff=_0x360991?.['sessionId']??null;let _0x516ddf=!![];if(!_0x580dff){await trackStop(_0x580dff,![],_0x516ddf);return;}try{const _0x28f0e8=getSessionEntry(_0x580dff);if(!_0x28f0e8){await trackStop(_0x580dff,!![],_0x516ddf);return;}const _0x3f4051=await getToken(),_0x159fbf=_0x532460(0xa8)+_0x28f0e8['featureId'];let _0x38edb2=null,_0x35556b=![],_0x1a22dd=![];if(_0x3f4051)try{const _0x2d35f9=await _0x5806b9['pFQcj'](getFeature,_0x28f0e8[_0x532460(0xb8)]);_0x38edb2=_0x2d35f9['currentSessionId']??null;const _0x1fd971=_0x2d35f9[_0x532460(0xae)]['filter'](_0x757212=>_0x757212[_0x532460(0xb2)]===_0x38edb2);_0x35556b=_0x1fd971['some'](_0x48bb2b=>_0x48bb2b['status']!=='verified'&&_0x48bb2b['status']!=='blocked'&&_0x48bb2b['status']!=='closed'&&_0x48bb2b[_0x532460(0xaa)]!==_0x532460(0xbd)),_0x1a22dd=_0x1fd971[_0x532460(0xb9)](_0x4fcc4b=>_0x4fcc4b['status']==='verification_in_progress');}catch{}if(_0x5806b9['HZavu'](_0x3f4051,_0x38edb2)&&_0x35556b){if(!_0x1a22dd&&shouldShowStopReminder(_0x580dff)){const _0x87e283={'hookSpecificOutput':{'hookEventName':_0x5806b9[_0x532460(0xb4)],'additionalContext':_0x532460(0xac)+_0x159fbf}};console[_0x532460(0xad)](JSON['stringify'](_0x87e283));}}if(_0x3f4051&&_0x38edb2&&!_0x35556b)try{await _0x5806b9[_0x532460(0xb0)](concludeSession,_0x28f0e8[_0x532460(0xb8)],_0x38edb2);}catch{}await trackStop(_0x580dff,!![],_0x516ddf);return;}catch{await _0x5806b9['tDKcB'](trackStop,_0x580dff,!![],_0x516ddf);return;}}function _0xa3fb(_0x3f005c,_0x4572ca){_0x3f005c=_0x3f005c-0xa4;const _0x1b6888=_0x1b68();let _0xa3fb57=_0x1b6888[_0x3f005c];return _0xa3fb57;}function _0x1b68(){const _0x25750c=['546REDAoj','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','log','checklistItems','1081852aeWQLj','kckHZ','445048zYTeBo','sessionId','hook:stop','iErqM','Stop','trackCommandStart','10cqHaje','featureId','some','18835xxQEoE','35MJYNYV','17509044gjHpGV','incomplete','14hoLkKK','7835deEvHc','2874087orCbtf','4578090pRoIwA','https://dashboard.ranger.net/features/','3WmzCLo','status'];_0x1b68=function(){return _0x25750c;};return _0x1b68();}async function trackStop(_0x2cfb55,_0x5ab2ba,_0x3cd2a4){const _0x472ad0=_0xa3fb,_0x5ad0a1={'fJHAY':_0x472ad0(0xb3),'kCcfa':function(_0x254d4d,_0xd30adc){return _0x254d4d??_0xd30adc;}};try{const _0x2a1f4b=createTelemetryCollector(_0x5ad0a1['fJHAY']);await _0x2a1f4b[_0x472ad0(0xb6)]({'sessionId':_0x5ad0a1['kCcfa'](_0x2cfb55,undefined),'hooksEnabled':_0x5ab2ba,'stopAllowed':_0x3cd2a4}),await _0x2a1f4b['trackCommandEnd']('success');}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5417d4,_0x1e4c8a){var _0x432cb3=_0x3eb2,_0x288ea9=_0x5417d4();while(!![]){try{var _0x1bfdea=-parseInt(_0x432cb3(0x92))/0x1+parseInt(_0x432cb3(0x98))/0x2+-parseInt(_0x432cb3(0x94))/0x3+-parseInt(_0x432cb3(0x96))/0x4+parseInt(_0x432cb3(0x9a))/0x5+-parseInt(_0x432cb3(0x99))/0x6*(parseInt(_0x432cb3(0x97))/0x7)+-parseInt(_0x432cb3(0x95))/0x8*(-parseInt(_0x432cb3(0x93))/0x9);if(_0x1bfdea===_0x1e4c8a)break;else _0x288ea9['push'](_0x288ea9['shift']());}catch(_0x4e5fad){_0x288ea9['push'](_0x288ea9['shift']());}}}(_0x5f3d,0x5d562));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 _0x3eb2(_0x3c32b4,_0xf9da5b){_0x3c32b4=_0x3c32b4-0x92;var _0x5f3d7f=_0x5f3d();var _0x3eb2db=_0x5f3d7f[_0x3c32b4];return _0x3eb2db;}export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';function _0x5f3d(){var _0x4ff5f5=['8LsjkCt','229476QRQniS','749XfelZX','56674OguKyY','14610vvDiFr','3654600cPxXzB','284517rxtFoM','7359381NlCkPN','1776687AnXMUE'];_0x5f3d=function(){return _0x4ff5f5;};return _0x5f3d();}export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
|