@ranger-testing/ranger-cli 2.5.4-alpha.0e8b82c-9 → 2.5.4-alpha.36a12ca-10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/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/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/opencodeConfig.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/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x17148e,_0xb1c35c){const _0x4e5652=_0x3e12,_0x45134b=_0x17148e();while(!![]){try{const _0x4b4ca0=-parseInt(_0x4e5652(0x27a))/0x1*(-parseInt(_0x4e5652(0x26d))/0x2)+parseInt(_0x4e5652(0x26f))/0x3+parseInt(_0x4e5652(0x250))/0x4+parseInt(_0x4e5652(0x1f7))/0x5*(parseInt(_0x4e5652(0x202))/0x6)+parseInt(_0x4e5652(0x244))/0x7*(parseInt(_0x4e5652(0x20e))/0x8)+-parseInt(_0x4e5652(0x24e))/0x9+parseInt(_0x4e5652(0x249))/0xa*(-parseInt(_0x4e5652(0x24a))/0xb);if(_0x4b4ca0===_0xb1c35c)break;else _0x45134b['push'](_0x45134b['shift']());}catch(_0x1adc57){_0x45134b['push'](_0x45134b['shift']());}}}(_0x234a,0xe79a0));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x2dd850 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';function _0x3e12(_0x28964a,_0x11cd85){_0x28964a=_0x28964a-0x1ae;const _0x234a09=_0x234a();let _0x3e12e7=_0x234a09[_0x28964a];return _0x3e12e7;}import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x570b35=>'\x1b[1m'+_0x570b35+'\x1b[0m';function getGitRepoUrl(){const _0x77d073=_0x3e12,_0x3c980f={'Xvstz':function(_0x3fc4e0,_0x53f965,_0x3f7e27){return _0x3fc4e0(_0x53f965,_0x3f7e27);},'NxMmL':'git\x20remote\x20get-url\x20origin','vlvjc':_0x77d073(0x280)};try{const _0x3bbe8e=_0x3c980f[_0x77d073(0x1d5)](execSync,_0x3c980f[_0x77d073(0x24d)],{'encoding':_0x77d073(0x1dd),'stdio':[_0x3c980f[_0x77d073(0x287)],_0x3c980f[_0x77d073(0x287)],_0x3c980f['vlvjc']]})[_0x77d073(0x262)]();return _0x3bbe8e['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x77d073(0x24b))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x596914=_0x3e12,_0x53efd8={'WqabW':function(_0xc276b9,_0x3567af,_0x3a9948){return _0xc276b9(_0x3567af,_0x3a9948);},'NcpZn':_0x596914(0x1dd),'LQelt':_0x596914(0x280)};try{return _0x53efd8['WqabW'](execSync,_0x596914(0x21c),{'encoding':_0x53efd8['NcpZn'],'stdio':[_0x53efd8[_0x596914(0x1b3)],_0x596914(0x280),'pipe']})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x42102d=_0x3e12,_0x58fc5c={'nZVSO':function(_0x550245,_0x162c4b,_0x3864e0){return _0x550245(_0x162c4b,_0x3864e0);},'iSySu':function(_0x57b6ac){return _0x57b6ac();},'AoIdi':function(_0xae3e84,_0x371689){return _0xae3e84(_0x371689);}},_0x272b9c=_0x58fc5c['nZVSO'](join,_0x58fc5c['iSySu'](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x58fc5c[_0x42102d(0x1b0)](existsSync,_0x272b9c))return null;try{const _0x2574e4=await _0x58fc5c['nZVSO'](readFile,_0x272b9c,'utf-8');return _0x2574e4[_0x42102d(0x262)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x481549){const _0x181ce3=_0x3e12,_0x3615a0={'gdmKf':function(_0xf4f0d9){return _0xf4f0d9();},'bNMQM':function(_0x36fcc4,_0x17c251,_0xe9bb68){return _0x36fcc4(_0x17c251,_0xe9bb68);},'EkdAz':function(_0x20d044,_0x5b4c58,_0x131d51,_0x70c762){return _0x20d044(_0x5b4c58,_0x131d51,_0x70c762);}},_0x470923=_0x3615a0['gdmKf'](getRangerDir),_0x1da3ea=join(_0x470923,ACTIVE_FEATURE_FILE);!existsSync(_0x470923)&&await _0x3615a0['bNMQM'](mkdir,_0x470923,{'recursive':!![]}),await _0x3615a0[_0x181ce3(0x258)](writeFile,_0x1da3ea,_0x481549,_0x181ce3(0x1dd));}function getProgressDisplay(_0x12f79f){const _0x18bafe=_0x3e12,_0xd61c1a={'wfjSa':function(_0x48eb0c,_0x4d7411){return _0x48eb0c+_0x4d7411;},'ifLFB':function(_0x3f3a10,_0xcf532b){return _0x3f3a10===_0xcf532b;},'hlxFA':function(_0xa2adbf,_0x58627c){return _0xa2adbf*_0x58627c;},'NWLSg':function(_0x36b0bf,_0x27e3fa){return _0x36b0bf/_0x27e3fa;},'nfiGI':function(_0x3daffe,_0x54287c){return _0x3daffe-_0x54287c;},'XKUdZ':function(_0x3a2f14,_0x19dc8a){return _0x3a2f14>_0x19dc8a;},'OQGkk':function(_0x35e485,_0x4572d1){return _0x35e485>_0x4572d1;}},_0x2b245c=_0x12f79f[_0x18bafe(0x1fe)]||0x0,_0x5429c5=_0x12f79f['verificationInProgressItems']||0x0,_0x160924=_0x12f79f[_0x18bafe(0x1bc)]||0x0,_0x1c1eee=_0x12f79f['incompleteItems']||0x0,_0xe7c52=_0x12f79f[_0x18bafe(0x23d)]||0x0,_0x55c4b1=_0xd61c1a['wfjSa'](_0x2b245c+_0x5429c5+_0x160924,_0x1c1eee)+_0xe7c52;if(_0xd61c1a['ifLFB'](_0x55c4b1,0x0))return'-';const _0x1d2b2e=0xa,_0x58e311=Math['round'](_0xd61c1a[_0x18bafe(0x1c7)](_0xd61c1a[_0x18bafe(0x1f6)](_0x2b245c,_0x55c4b1),_0x1d2b2e)),_0x14e331='█'[_0x18bafe(0x22d)](_0x58e311)+'░'['repeat'](_0xd61c1a['nfiGI'](_0x1d2b2e,_0x58e311)),_0x51575c=[];if(_0x160924>0x0)_0x51575c[_0x18bafe(0x1af)](_0x160924+_0x18bafe(0x209));if(_0xd61c1a['XKUdZ'](_0x1c1eee,0x0))_0x51575c[_0x18bafe(0x1af)](_0x1c1eee+'\x20incomplete');if(_0x5429c5>0x0)_0x51575c['push'](_0x5429c5+_0x18bafe(0x253));const _0x584f93=_0xd61c1a[_0x18bafe(0x1df)](_0x51575c[_0x18bafe(0x236)],0x0)?'\x20('+_0x51575c['join'](',\x20')+')':'';return _0x14e331+'\x20'+_0x2b245c+'/'+_0x55c4b1+'\x20verified'+_0x584f93;}function getCurrentSessionItems(_0x4d80ad,_0x2c2f22){const _0x3f0b94=_0x3e12;if(!_0x4d80ad[_0x3f0b94(0x205)])return _0x2c2f22[_0x3f0b94(0x234)](_0x3fa947=>!_0x3fa947[_0x3f0b94(0x1f9)]);return _0x2c2f22[_0x3f0b94(0x234)](_0x4699e6=>_0x4699e6['sessionId']===_0x4d80ad[_0x3f0b94(0x205)]||!_0x4699e6[_0x3f0b94(0x1f9)]);}function displayFeature(_0x536ad1,_0x2541b7){const _0x41f6cd=_0x3e12,_0xdb3889={'FBlpg':function(_0x3a25d8,_0x2502be){return _0x3a25d8(_0x2502be);},'vJFWO':function(_0x32f200,_0x3b524f){return _0x32f200>_0x3b524f;},'dYcfb':'\x0a\x20\x20\x20Scenarios:','MVBIA':function(_0x4f4b1f,_0x43f9ec){return _0x4f4b1f===_0x43f9ec;},'gQTEq':_0x41f6cd(0x286),'yABjF':_0x41f6cd(0x22c),'ZrvPq':_0x41f6cd(0x25a),'zNMdr':function(_0x1789ef,_0x4f9fe6){return _0x1789ef===_0x4f9fe6;},'NJTqe':'incomplete','DFnDl':function(_0x3de50f,_0x3469ad){return _0x3de50f===_0x3469ad;},'uiUrI':function(_0x5112ac,_0x35ca1e){return _0x5112ac===_0x35ca1e;},'guIPJ':_0x41f6cd(0x21a),'VmWRW':function(_0x3451f7,_0x4d677e){return _0x3451f7>_0x4d677e;},'Tzgog':function(_0x4a1e80,_0x34223b){return _0x4a1e80!==_0x34223b;},'WnSvs':function(_0x293450,_0x3ddbfe){return _0x293450+_0x3ddbfe;},'Bijhb':_0x41f6cd(0x1cf)};console[_0x41f6cd(0x23f)]('\x0a'+_0x536ad1['name']+'\x20('+_0x536ad1[_0x41f6cd(0x240)]+')');_0x536ad1[_0x41f6cd(0x24c)]&&console['log'](_0x41f6cd(0x1c2)+_0xdb3889[_0x41f6cd(0x1ec)](getProgressDisplay,_0x536ad1['stats']));_0x536ad1[_0x41f6cd(0x1bf)]&&console[_0x41f6cd(0x23f)](_0x41f6cd(0x207)+_0x536ad1[_0x41f6cd(0x1bf)]);_0x536ad1['gitRepoUrl']&&console['log']('\x20\x20\x20Repository:\x20'+_0x536ad1[_0x41f6cd(0x272)]);_0x536ad1['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x536ad1[_0x41f6cd(0x227)]);console[_0x41f6cd(0x23f)](_0x41f6cd(0x1e1)+new Date(_0x536ad1[_0x41f6cd(0x25e)])[_0x41f6cd(0x1ce)]());_0x536ad1['completedAt']&&console[_0x41f6cd(0x23f)](_0x41f6cd(0x239)+new Date(_0x536ad1['completedAt'])['toLocaleString']());if(_0x2541b7&&_0xdb3889[_0x41f6cd(0x225)](_0x2541b7[_0x41f6cd(0x236)],0x0)){console[_0x41f6cd(0x23f)](_0xdb3889['dYcfb']);for(let _0x41ff65=0x0;_0x41ff65<_0x2541b7[_0x41f6cd(0x236)];_0x41ff65++){const _0x5e1c20=_0x2541b7[_0x41ff65];let _0x1bc5d5;if(_0xdb3889[_0x41f6cd(0x26c)](_0x5e1c20['status'],_0xdb3889[_0x41f6cd(0x248)])&&_0x5e1c20['terminalReason']===_0xdb3889['yABjF'])_0x1bc5d5='✅';else{if(_0x5e1c20[_0x41f6cd(0x229)]===_0xdb3889['ZrvPq'])_0x1bc5d5='🟢';else{if(_0xdb3889[_0x41f6cd(0x27e)](_0x5e1c20['status'],_0xdb3889['NJTqe']))_0x1bc5d5='🟠';else{if(_0xdb3889['DFnDl'](_0x5e1c20[_0x41f6cd(0x229)],_0x41f6cd(0x1cf)))_0x1bc5d5='🛑';else{if(_0x5e1c20[_0x41f6cd(0x229)]===_0x41f6cd(0x286))_0x1bc5d5='⛔';else _0xdb3889['uiUrI'](_0x5e1c20['status'],_0xdb3889[_0x41f6cd(0x218)])?_0x1bc5d5='⏳':_0x1bc5d5='⬜';}}}}const _0x18bde7=_0xdb3889[_0x41f6cd(0x24f)](_0x5e1c20['version'],0x1)?'\x20(v'+_0x5e1c20[_0x41f6cd(0x27d)]+')':'',_0x45c2d3=_0x5e1c20['version']>0x1&&_0x5e1c20['parentItemId']&&_0x5e1c20[_0x41f6cd(0x229)]!=='closed'&&_0xdb3889['Tzgog'](_0x5e1c20['status'],_0xdb3889['ZrvPq'])?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+_0xdb3889['WnSvs'](_0x41ff65,0x1)+'.\x20'+_0x1bc5d5+'\x20'+_0x5e1c20[_0x41f6cd(0x1bf)]+_0x18bde7+_0x45c2d3);_0x5e1c20[_0x41f6cd(0x229)]===_0xdb3889['Bijhb']&&_0x5e1c20[_0x41f6cd(0x222)]&&console[_0x41f6cd(0x23f)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x5e1c20[_0x41f6cd(0x222)]);_0x5e1c20['status']===_0xdb3889[_0x41f6cd(0x211)]&&_0x5e1c20['incompleteReason']&&console[_0x41f6cd(0x23f)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x5e1c20[_0x41f6cd(0x1cc)]);if(_0x5e1c20[_0x41f6cd(0x229)]===_0x41f6cd(0x286)&&_0x5e1c20[_0x41f6cd(0x204)]==='approved')console[_0x41f6cd(0x23f)]('\x20\x20\x20\x20\x20\x20Approved');else _0x5e1c20['status']===_0xdb3889['gQTEq']&&_0x5e1c20[_0x41f6cd(0x265)]&&console['log'](_0x41f6cd(0x23b)+_0x5e1c20[_0x41f6cd(0x265)]);}}}export async function featureCreate(_0xcd867a,_0x214ff5){const _0x1658e9=_0x3e12,_0xc8da51={'URxCh':function(_0x591562,_0x14e834){return _0x591562===_0x14e834;},'DOnhG':function(_0x43f897){return _0x43f897();},'qYuXt':function(_0x3b5113,_0x1e3299){return _0x3b5113(_0x1e3299);},'AyRry':function(_0x1ba674){return _0x1ba674();},'HqnBm':_0x1658e9(0x233),'YSNMJ':function(_0x21391c,_0x1f545c){return _0x21391c(_0x1f545c);},'JMQNc':function(_0xb0fc73,_0x3a58c0,_0x42383d){return _0xb0fc73(_0x3a58c0,_0x42383d);}},{envNames:_0x233473}=await getEnvNames();if(_0xc8da51[_0x1658e9(0x1ff)](_0x233473['length'],0x0)&&!process['env']['RANGER_TEST_USERNAME']){let _0x3d0af0=0x0;try{_0x3d0af0=(await _0xc8da51[_0x1658e9(0x1eb)](listCloudProfiles))['length'];}catch{_0x3d0af0=0x1;}_0x3d0af0===0x0&&console['warn']('\x0a'+_0xc8da51['qYuXt'](formatProfileRequiredMessage,_0x262290=>bold(_0x262290)));}const _0x1b83c2=_0x214ff5[_0x1658e9(0x223)]?_0x214ff5[_0x1658e9(0x223)]['map'](_0x3b48ee=>_0x3b48ee[_0x1658e9(0x262)]()):[],_0x5d73b9=_0xc8da51['DOnhG'](getGitRepoUrl),_0x2e691d=_0xc8da51['AyRry'](getGitBranch);console['log'](_0xc8da51['HqnBm']);const _0x23011c=await createFeature({'name':_0xcd867a,'description':_0x214ff5[_0x1658e9(0x1bf)],'checklist':_0x1b83c2,'gitRepoUrl':_0x5d73b9,'gitBranch':_0x2e691d});await _0xc8da51['qYuXt'](setActiveFeatureId,_0x23011c['id']),await _0xc8da51['YSNMJ'](tryStartCurrentSession,_0x23011c['id']);const _0x2e91ce=process[_0x1658e9(0x255)]['CLAUDE_SESSION_ID'];_0x2e91ce&®isterSession(_0x2e91ce,_0x23011c['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x23011c['id']),_0xc8da51['JMQNc'](displayFeature,_0x23011c,_0x23011c['checklistItems']),console[_0x1658e9(0x23f)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x19a78b){const _0x14141f=_0x3e12,_0x5281e3={'npbyI':function(_0xa5c4a1,_0x2ddcbb){return _0xa5c4a1===_0x2ddcbb;},'EeSvY':function(_0x5d39f0,_0x46fa19){return _0x5d39f0>_0x46fa19;},'dWSDr':function(_0x372e28,_0x429513){return _0x372e28(_0x429513);},'siZWS':function(_0x1b5aac,_0x2102db){return _0x1b5aac+_0x2102db;},'lAYxf':function(_0x4ea04c,_0x556171){return _0x4ea04c!==_0x556171;},'tNXXG':_0x14141f(0x252),'DVmzv':_0x14141f(0x1bb)},_0x115a23={'limit':_0x19a78b[_0x14141f(0x26e)]??0xa,'offset':_0x19a78b['offset']??0x0,'includeDeleted':_0x19a78b['includeDeleted']};_0x19a78b['currentBranch']&&(_0x115a23['gitRepoUrl']=getGitRepoUrl(),_0x115a23['gitBranch']=getGitBranch());const _0x2ec44b=await listFeatures(_0x115a23);if(_0x5281e3['npbyI'](_0x2ec44b['items'][_0x14141f(0x236)],0x0)){console[_0x14141f(0x23f)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x2318c3=_0x5281e3['EeSvY'](_0x2ec44b[_0x14141f(0x1ea)],_0x2ec44b[_0x14141f(0x1f8)][_0x14141f(0x236)])?_0x14141f(0x212)+_0x2ec44b[_0x14141f(0x1f8)][_0x14141f(0x236)]+'\x20of\x20'+_0x2ec44b['totalCount']:_0x2ec44b['totalCount']+_0x14141f(0x1e7);console[_0x14141f(0x23f)]('\x0a'+_0x2318c3+':\x0a');for(const _0x824a1c of _0x2ec44b[_0x14141f(0x1f8)]){console[_0x14141f(0x23f)](''+_0x824a1c[_0x14141f(0x27c)]),console[_0x14141f(0x23f)](_0x14141f(0x27f)+_0x824a1c['id']),_0x824a1c['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x5281e3[_0x14141f(0x1e4)](getProgressDisplay,_0x824a1c['stats'])),_0x824a1c['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x824a1c['gitBranch']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x824a1c[_0x14141f(0x25e)])[_0x14141f(0x246)]()),console['log']('');}const _0x1f01af=_0x115a23['limit']??0xa,_0xb59de8=_0x5281e3['siZWS'](_0x115a23[_0x14141f(0x20d)]??0x0,_0x2ec44b[_0x14141f(0x1f8)][_0x14141f(0x236)]);if(_0xb59de8<_0x2ec44b['totalCount']){const _0x542c38=_0x5281e3[_0x14141f(0x23a)](_0x1f01af,0xa)?_0x14141f(0x1cb)+_0x1f01af:'',_0x44a8ee=_0x19a78b[_0x14141f(0x1b5)]?_0x5281e3[_0x14141f(0x254)]:'',_0x5e69d6=_0x19a78b['includeDeleted']?_0x5281e3['DVmzv']:'';console[_0x14141f(0x23f)](_0x14141f(0x1f3)+_0xb59de8+_0x542c38+_0x44a8ee+_0x5e69d6);}}export async function featureShow(_0x219cc2){const _0x137b94=_0x3e12,_0xa47016={'mdkol':function(_0x1ce0cd){return _0x1ce0cd();},'hQxIo':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','hFaKj':function(_0x4cbe95,_0x5ee771){return _0x4cbe95(_0x5ee771);}},_0x526d69=_0x219cc2||await _0xa47016['mdkol'](getActiveFeatureId);if(!_0x526d69)throw new Error(_0xa47016['hQxIo']);const _0x5ab295=await _0xa47016[_0x137b94(0x1b2)](getFeature,_0x526d69);displayFeature(_0x5ab295,_0x5ab295['checklistItems']);}export async function featureResume(_0x3901dc){const _0x2492a7=_0x3e12,_0x5439e0={'cHROF':function(_0x4ef289,_0x5a9a34){return _0x4ef289(_0x5a9a34);},'xgpsp':function(_0x3caac8,_0x4428f9){return _0x3caac8(_0x4428f9);},'KOLlu':function(_0x199184){return _0x199184();},'VKSGj':function(_0x55553e,_0x4d7b36){return _0x55553e(_0x4d7b36);},'flgvr':function(_0x57dbeb){return _0x57dbeb();},'TstaH':_0x2492a7(0x232),'qfTVm':_0x2492a7(0x235),'pubtf':function(_0xecfb4d,_0x5a7343){return _0xecfb4d(_0x5a7343);},'SIeoR':_0x2492a7(0x1e8),'qVdiQ':_0x2492a7(0x22f),'CdWPI':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','YSPGD':function(_0xe11a2d,_0x2ffd60){return _0xe11a2d!==_0x2ffd60;},'IVddE':function(_0x33c52d,_0x14a48c,_0x1e714c){return _0x33c52d(_0x14a48c,_0x1e714c);}};if(_0x3901dc){const _0x414a7c=await _0x5439e0[_0x2492a7(0x1b6)](getFeature,_0x3901dc);await _0x5439e0[_0x2492a7(0x21e)](setActiveFeatureId,_0x414a7c['id']);const _0x3f8dfd=_0x5439e0['KOLlu'](getGitBranch);_0x3f8dfd&&_0x3f8dfd!==_0x414a7c[_0x2492a7(0x227)]&&(await updateFeature(_0x414a7c['id'],{'gitBranch':_0x3f8dfd}),console[_0x2492a7(0x23f)](_0x2492a7(0x1b9)+_0x3f8dfd));console[_0x2492a7(0x23f)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x414a7c['name']+'\x20('+_0x414a7c['id']+')'),await _0x5439e0[_0x2492a7(0x21e)](tryStartCurrentSession,_0x414a7c['id']);const _0xdea15d=process[_0x2492a7(0x255)]['CLAUDE_SESSION_ID'];_0xdea15d&®isterSession(_0xdea15d,_0x414a7c['id']);displayFeature(_0x414a7c,_0x414a7c[_0x2492a7(0x22a)]),await _0x5439e0[_0x2492a7(0x241)](printFeedbackNudge,_0x414a7c['id']);return;}const _0xbfc6df=getGitRepoUrl(),_0x4d06c9=_0x5439e0['flgvr'](getGitBranch);if(!_0xbfc6df&&!_0x4d06c9)throw new Error(_0x2492a7(0x1fa));console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0xbfc6df||_0x5439e0[_0x2492a7(0x1b4)])+'\x20/\x20'+(_0x4d06c9||'any')+_0x2492a7(0x260));const _0x4d210f=await _0x5439e0[_0x2492a7(0x1b6)](listFeatures,{'gitRepoUrl':_0xbfc6df,'gitBranch':_0x4d06c9}),_0x3bca1a=_0x4d210f[_0x2492a7(0x1f8)][_0x2492a7(0x234)](_0xa24239=>_0xa24239[_0x2492a7(0x229)]?_0xa24239[_0x2492a7(0x229)]!=='verified':!_0xa24239[_0x2492a7(0x274)]);if(_0x3bca1a['length']===0x0){console['log'](_0x2492a7(0x1e9)),console[_0x2492a7(0x23f)](_0x5439e0[_0x2492a7(0x26a)]);return;}let _0x220c7c;if(_0x3bca1a['length']===0x1)_0x220c7c=_0x3bca1a[0x0];else{const _0x378e58=process[_0x2492a7(0x25d)]['isTTY']&&process['stdout'][_0x2492a7(0x273)];if(!_0x378e58){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0xd1cb66 of _0x3bca1a){console[_0x2492a7(0x23f)]('\x20\x20'+_0xd1cb66[_0x2492a7(0x27c)]),console['log'](_0x2492a7(0x21f)+_0xd1cb66['id']),_0xd1cb66['stats']&&console['log'](_0x2492a7(0x268)+_0x5439e0['pubtf'](getProgressDisplay,_0xd1cb66[_0x2492a7(0x24c)])),_0xd1cb66['gitBranch']&&console[_0x2492a7(0x23f)](_0x2492a7(0x1b1)+_0xd1cb66['gitBranch']);}throw new Error(_0x2492a7(0x25b));}const {selected:_0x437819}=await _0x2dd850['prompt']([{'type':_0x5439e0['SIeoR'],'name':_0x5439e0['qVdiQ'],'message':_0x5439e0[_0x2492a7(0x206)],'choices':_0x3bca1a[_0x2492a7(0x1de)](_0x3f932a=>({'name':_0x3f932a[_0x2492a7(0x27c)]+'\x20('+_0x3f932a['id']+')','value':_0x3f932a['id']}))}]);_0x220c7c=_0x3bca1a['find'](_0x4305d9=>_0x4305d9['id']===_0x437819);}await setActiveFeatureId(_0x220c7c['id']);_0x4d06c9&&_0x5439e0['YSPGD'](_0x4d06c9,_0x220c7c['gitBranch'])&&(await updateFeature(_0x220c7c['id'],{'gitBranch':_0x4d06c9}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x4d06c9));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x220c7c['name']+'\x20('+_0x220c7c['id']+')'),await tryStartCurrentSession(_0x220c7c['id']);const _0x145244=await _0x5439e0['pubtf'](getFeature,_0x220c7c['id']),_0x3de6d8=process['env']['CLAUDE_SESSION_ID'];_0x3de6d8&&_0x5439e0['IVddE'](registerSession,_0x3de6d8,_0x145244['id']),displayFeature(_0x145244,_0x145244[_0x2492a7(0x22a)]),await printFeedbackNudge(_0x145244['id']);}async function printFeedbackNudge(_0x38d075){const _0x1dfed4=_0x3e12,_0x315ceb={'OopRt':function(_0x270dd3,_0x4d03a9){return _0x270dd3>_0x4d03a9;}};try{const {items:_0x2c2636}=await getActionItems(_0x38d075);let _0x475717=0x0,_0x148513=0x0;for(const _0x2cfffc of _0x2c2636){const _0x3f87c3=await getItemFeedback(_0x38d075,_0x2cfffc['id']);_0x315ceb[_0x1dfed4(0x257)](_0x3f87c3['unaddressedComments']['length'],0x0)&&(_0x475717+=_0x3f87c3['unaddressedComments'][_0x1dfed4(0x236)],_0x148513++);}_0x315ceb['OopRt'](_0x475717,0x0)&&(console['log'](_0x1dfed4(0x1c3)+_0x475717+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x148513+_0x1dfed4(0x216)),console['log'](_0x1dfed4(0x281)));}catch{}}async function tryStartCurrentSession(_0x528962){const _0x36de0b=_0x3e12,_0x484a8d={'IRSQg':function(_0x32bcc5,_0x3d0cd9){return _0x32bcc5(_0x3d0cd9);}};try{const {sessions:_0x4029ca}=await _0x484a8d['IRSQg'](listFeatureSessions,_0x528962),_0x129143=_0x4029ca[_0x36de0b(0x1d2)](_0x28d8a3=>_0x28d8a3[_0x36de0b(0x229)]==='ready');_0x129143&&(await startSession(_0x528962,_0x129143['id']),console[_0x36de0b(0x23f)](_0x36de0b(0x228)+_0x129143[_0x36de0b(0x22e)]));}catch{}}export async function featureReport(_0x474c33,_0x456f08){const _0x134b60=_0x3e12,_0x4b8530={'wzERG':_0x134b60(0x1ef),'eSRSS':function(_0x58f270,_0x2f07ba,_0x57b489){return _0x58f270(_0x2f07ba,_0x57b489);},'pncNQ':function(_0x12150e){return _0x12150e();},'TaapT':function(_0x3960ae,_0x4aa587){return _0x3960ae(_0x4aa587);},'mWAAn':function(_0x345de2,_0x1c62f7,_0x2ca570,_0x406586){return _0x345de2(_0x1c62f7,_0x2ca570,_0x406586);},'PehiT':_0x134b60(0x1dd)},_0x401aaf=_0x474c33||await getActiveFeatureId();if(!_0x401aaf)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x134b60(0x23f)](_0x4b8530['wzERG']);const _0x34472d=await _0x4b8530[_0x134b60(0x1b8)](getFeatureReportMarkdown,_0x401aaf,{'style':_0x456f08[_0x134b60(0x270)]}),_0x24e761=_0x456f08['output']||join(_0x4b8530[_0x134b60(0x210)](getRangerDir),'reports',_0x401aaf+'.md'),_0x27701e=join(_0x24e761,'..');!_0x4b8530['TaapT'](existsSync,_0x27701e)&&await mkdir(_0x27701e,{'recursive':!![]}),await _0x4b8530['mWAAn'](writeFile,_0x24e761,_0x34472d,_0x4b8530['PehiT']),console['log'](_0x134b60(0x256)+_0x24e761);}function getScenarioResult(_0x3c49ca){const _0x5f1b96=_0x3e12,_0x3c7235={'odNuR':'closed','QcZsM':'verification_in_progress','njgUY':_0x5f1b96(0x1e2)};if(_0x3c49ca['status']===_0x3c7235[_0x5f1b96(0x1d6)])return _0x3c49ca['terminalReason']??_0x3c7235['odNuR'];if(_0x3c49ca[_0x5f1b96(0x229)]===_0x3c7235['QcZsM'])return _0x3c7235[_0x5f1b96(0x1da)];return _0x3c49ca['status'];}function getScenarioRationale(_0x2c5bdb,_0x5ee42d){const _0x5e1457=_0x3e12;if(_0x5ee42d)return _0x5ee42d;if(_0x2c5bdb['blockedReason'])return _0x2c5bdb['blockedReason'];if(_0x2c5bdb[_0x5e1457(0x1cc)])return _0x2c5bdb['incompleteReason'];if(_0x2c5bdb[_0x5e1457(0x265)])return _0x2c5bdb['canceledReason'];if(_0x2c5bdb['notes'])return _0x2c5bdb[_0x5e1457(0x271)];return null;}export async function featureReportPrDescription(_0x49b438,_0x37f7ba){const _0x39d4cc=_0x3e12,_0x40f454={'DYuNb':_0x39d4cc(0x238),'Jvrtf':function(_0x1226b0,_0x3e456a,_0x5a4e01){return _0x1226b0(_0x3e456a,_0x5a4e01);},'LXxUI':function(_0x46298f,_0x55185e){return _0x46298f===_0x55185e;},'vrXvA':'\x0aAvailable\x20scenarios:','WVSPr':function(_0x17c08e,_0x30d557){return _0x17c08e<_0x30d557;},'YPRuQ':function(_0x3530bb,_0x582a5d,_0x6a8746,_0x165273){return _0x3530bb(_0x582a5d,_0x6a8746,_0x165273);}},_0x161615=_0x49b438||await getActiveFeatureId();if(!_0x161615)throw new Error(_0x40f454['DYuNb']);const _0x52ab49=await getFeature(_0x161615),_0x2efa0b=_0x52ab49['checklistItems']||[],_0x5d8e00=_0x40f454['Jvrtf'](getCurrentSessionItems,_0x52ab49,_0x2efa0b);_0x40f454['LXxUI'](_0x5d8e00['length'],0x0)&&(console[_0x39d4cc(0x21d)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x3eb2bc=_0x37f7ba[_0x39d4cc(0x226)]??[],_0x2b2058=_0x3eb2bc[_0x39d4cc(0x234)](_0x232497=>!Number['isInteger'](_0x232497)||_0x232497<0x1||_0x232497>_0x5d8e00[_0x39d4cc(0x236)]);if(_0x2b2058[_0x39d4cc(0x236)]>0x0){console[_0x39d4cc(0x21d)](_0x39d4cc(0x245)+_0x2b2058['join'](',\x20')),console['log'](_0x40f454[_0x39d4cc(0x278)]);for(let _0x23e44b=0x0;_0x40f454['WVSPr'](_0x23e44b,_0x5d8e00['length']);_0x23e44b++){console['log']('\x20\x20'+(_0x23e44b+0x1)+'.\x20'+_0x5d8e00[_0x23e44b]['description']);}process['exit'](0x1);}const _0x17ce00=new Set(_0x3eb2bc['map'](_0x428f38=>_0x428f38-0x1)),_0x35aaa7=_0x5d8e00[_0x39d4cc(0x234)]((_0x112b4e,_0x171288)=>!_0x17ce00['has'](_0x171288));_0x35aaa7[_0x39d4cc(0x236)]===0x0&&(console[_0x39d4cc(0x21d)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process['exit'](0x1));if(_0x37f7ba[_0x39d4cc(0x267)])await _0x40f454['YPRuQ'](outputJsonReport,_0x161615,_0x52ab49,_0x35aaa7);else{const _0x1f310e=await getFeatureReportMarkdown(_0x161615,{'itemIds':_0x35aaa7['map'](_0x2c4710=>_0x2c4710['id'])});process[_0x39d4cc(0x264)]['write'](_0x1f310e['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x153dc2,_0x3177fd,_0x23e9aa){const _0x1fd612=_0x3e12,_0x42d540={'TeLND':function(_0x3186b6,_0x21d8b0){return _0x3186b6(_0x21d8b0);},'KQLzy':function(_0x2e89c0,_0x5a9330){return _0x2e89c0===_0x5a9330;},'YrFCR':function(_0x5071d5,_0x2527a2){return _0x5071d5(_0x2527a2);},'NbKXx':function(_0x1b6c3f,_0xec6228){return _0x1b6c3f+_0xec6228;}},_0x54898d=getApiBaseUrl(),_0x3f3e88=await getFeatureReport(_0x153dc2),_0xef0637=new Map(_0x3f3e88[_0x1fd612(0x22a)]['map'](_0xd8c58e=>[_0xd8c58e['id'],_0xd8c58e])),_0x188fa6=await Promise['all'](_0x23e9aa['map'](async _0x1c03ff=>{const _0x5a3a13=_0x1fd612,_0x29bfef=_0xef0637[_0x5a3a13(0x20f)](_0x1c03ff['id']),_0x5e122a=_0x29bfef?.['linkedSession']??null;let _0x5e8e45=[];if(_0x1c03ff[_0x5a3a13(0x27b)])try{const {steps:_0x22ff4e}=await _0x42d540['TeLND'](getBrowserSessionSteps,_0x1c03ff[_0x5a3a13(0x27b)]);_0x22ff4e[_0x5a3a13(0x236)]>0x0&&(_0x5e8e45=_0x22ff4e[_0x5a3a13(0x1de)](_0x11a9d5=>{const _0x1b1761=_0x5a3a13,_0x1e9ab0=_0x11a9d5[_0x1b1761(0x237)][_0x1b1761(0x1d2)](_0x5b5db6=>_0x5b5db6[_0x1b1761(0x263)]==='screenshot'&&_0x5b5db6['timing']==='after')??_0x11a9d5['assets']['find'](_0x385ebe=>_0x385ebe[_0x1b1761(0x263)]===_0x1b1761(0x266));let _0x411a90=null,_0x5be7ff=null;if(_0x1e9ab0){const _0x3363cb=_0x1e9ab0[_0x1b1761(0x1d4)]['location']['split']('/')['pop']();_0x411a90=_0x54898d+'/api/v1/mcp/browser-sessions/'+_0x1c03ff[_0x1b1761(0x27b)]+'/artifacts/'+_0x3363cb,_0x3363cb&&(_0x5be7ff=_0x3363cb[_0x1b1761(0x1fc)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x1b1761(0x1fc)](/[-_]/g,'\x20'));}return{'description':_0x5be7ff||_0x11a9d5[_0x1b1761(0x1bf)]||_0x11a9d5['stepName']||'Step\x20'+_0x11a9d5[_0x1b1761(0x261)],'screenshot':_0x411a90,'is_key_step':_0x11a9d5[_0x1b1761(0x1c4)]};}));}catch{}return _0x42d540['KQLzy'](_0x5e8e45[_0x5a3a13(0x236)],0x0)&&_0x5e122a?.['screenshotUrls']&&(_0x5e8e45=_0x5e122a[_0x5a3a13(0x231)][_0x5a3a13(0x1de)]((_0x85436f,_0x57136b)=>({'description':'Screenshot\x20'+(_0x57136b+0x1),'screenshot':_0x85436f,'is_key_step':![]}))),{'description':_0x1c03ff['description'],'result':_0x42d540['YrFCR'](getScenarioResult,_0x1c03ff),'rationale':getScenarioRationale(_0x1c03ff,_0x5e122a?.[_0x5a3a13(0x1f5)]),'steps':_0x5e8e45};})),_0x67f435={'url':_0x3177fd[_0x1fd612(0x240)],'scenarios':_0x188fa6};process['stdout']['write'](_0x42d540['NbKXx'](JSON['stringify'](_0x67f435,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x312628){const _0x34eccb=_0x3e12,_0x3f1e2e={'bRJdJ':function(_0x58ec34){return _0x58ec34();},'dTRkP':function(_0x1d8bca,_0x1c5392){return _0x1d8bca(_0x1c5392);},'Xmxgr':_0x34eccb(0x215),'JhozF':'in_progress'},_0x264858=_0x312628||await _0x3f1e2e['bRJdJ'](getActiveFeatureId);if(!_0x264858)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 _0x41a24a=await _0x3f1e2e['dTRkP'](getFeature,_0x264858);if(!_0x41a24a['currentSessionId'])throw new Error(_0x3f1e2e[_0x34eccb(0x230)]);const {sessions:_0x89e64d}=await listFeatureSessions(_0x264858),_0x6033a3=_0x89e64d['find'](_0x409dc4=>_0x409dc4['id']===_0x41a24a['currentSessionId']);if(!_0x6033a3)throw new Error('Current\x20session\x20not\x20found.');if(_0x6033a3[_0x34eccb(0x229)]==='completed'){console['log'](_0x34eccb(0x1bd));return;}if(_0x6033a3['status']!==_0x3f1e2e['JhozF'])throw new Error(_0x34eccb(0x200)+_0x6033a3['status']);console[_0x34eccb(0x23f)](_0x34eccb(0x217)),await concludeSession(_0x264858,_0x41a24a[_0x34eccb(0x205)]),console[_0x34eccb(0x23f)]('\x0a✅\x20Session\x20'+_0x6033a3[_0x34eccb(0x22e)]+'\x20concluded.'),console[_0x34eccb(0x23f)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}function _0x234a(){const _0x575e07=['Showing\x20','submittedAt','yMaGh','No\x20active\x20session\x20for\x20this\x20feature\x20review.','\x20scenario(s).','\x0aConcluding\x20session...','guIPJ','\x20\x20✅\x20No\x20feedback\x20to\x20address','verification_in_progress','Unknown','git\x20rev-parse\x20--abbrev-ref\x20HEAD','error','xgpsp','\x20\x20\x20\x20\x20ID:\x20','pxGDE','LzHIs','blockedReason','scenarios','join','vJFWO','excludeScenarios','gitBranch','\x20\x20\x20▶️\x20Started\x20session\x20','status','checklistItems','spatial','approved','repeat','iteration','selected','Xmxgr','screenshotUrls','any','\x0aCreating\x20feature\x20review...','filter','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','length','assets','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20\x20Completed:\x20','lAYxf','\x20\x20\x20\x20\x20\x20Cancelled:\x20','split','pendingItems','authorEmail','log','dashboardUrl','VKSGj','feedback-images','zaEhn','7vqjqDH','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','toLocaleDateString','\x0a✅\x20Scenario\x20added','gQTEq','10gIhttG','24247586QRawDG','github.com/','stats','NxMmL','12942819CQYBHH','VmWRW','7291252ZOKkhe','vdkVr','\x20--current-branch','\x20in\x20progress','tNXXG','env','\x0a✅\x20Report\x20generated:\x20','OopRt','EkdAz','domRef','verified','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','BRzQJ','stdin','createdAt','NcxAh','...','position','trim','assetType','stdout','canceledReason','screenshot','json','\x20\x20\x20\x20\x20Progress:\x20','en-US','qfTVm','YGVjN','MVBIA','863524ZGbZJc','limit','580374UGQnWP','style','notes','gitRepoUrl','isTTY','completedAt','point','vjLGI','coordinates','vrXvA','\x20\x20Expected\x20flow:','1FUpXVg','browserSessionId','name','version','zNMdr','\x20\x20\x20ID:\x20','pipe','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','No\x20sessions\x20found.','type','ofirE','RCjEC','closed','vlvjc','element','scenario','push','AoIdi','\x20\x20\x20\x20\x20Branch:\x20','hFaKj','LQelt','TstaH','currentBranch','cHROF','textContent','eSRSS','\x20\x20\x20Updated\x20branch\x20to:\x20','\x20>\x20','\x20--include-deleted','blockedItems','\x0a✅\x20Session\x20is\x20already\x20completed.','.\x20Feature\x20review\x20has\x20','description','RnVEr','dCBbP','\x20\x20\x20Progress:\x20','\x0a⚠️\x20\x20','isKeyStep','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','unaddressedComments','hlxFA','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','short','\x0aAvailable\x20scenarios:','\x20--limit\x20','incompleteReason','toFixed','toLocaleString','blocked','\x20\x20💬\x20','hxlHX','find','oTJIG','storage','Xvstz','odNuR','exit','canonicalFlow','pxqLH','njgUY','LGtNC','wvAYh','utf-8','map','OQGkk','TLWho','\x20\x20\x20Created:\x20','in_progress','numeric','dWSDr','\x0a✅\x20Restored\x20feature\x20review:\x20','cCROA','\x20feature\x20review(s)\x20found','list','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','totalCount','DOnhG','FBlpg','selector','\x20unaddressed\x20comment(s)','\x0aGenerating\x20report...','):\x20\x22','Scenario\x20','\x20at\x20[','Next\x20page:\x20ranger\x20list\x20--offset\x20','gzclu','agentResponse','NWLSg','4799365SXAdVh','items','sessionId','Not\x20in\x20a\x20git\x20repository.','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','replace','XdheT','verifiedItems','URxCh','Cannot\x20conclude\x20session\x20with\x20status:\x20','xyRcD','6HBHtBj','bLrlF','terminalReason','currentSessionId','CdWPI','\x20\x20\x20Description:\x20','Please\x20finish\x20your\x20review\x20first:','\x20blocked','latestReview','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','offset','9465208fdZsnR','get','pncNQ','NJTqe'];_0x234a=function(){return _0x575e07;};return _0x234a();}export async function featureSessions(_0x4370ac){const _0x41960e=_0x3e12,_0x4235a6={'TLWho':function(_0x2ff9fd){return _0x2ff9fd();},'pxGDE':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','xyRcD':function(_0x506f99,_0x177453){return _0x506f99(_0x177453);},'oTJIG':function(_0xd0331c,_0x55efa3){return _0xd0331c===_0x55efa3;},'BRzQJ':_0x41960e(0x1e2)},_0x40e26b=_0x4370ac||await _0x4235a6[_0x41960e(0x1e0)](getActiveFeatureId);if(!_0x40e26b)throw new Error(_0x4235a6[_0x41960e(0x220)]);const _0x566804=await _0x4235a6[_0x41960e(0x201)](getFeature,_0x40e26b);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x566804[_0x41960e(0x27c)]+'\x0a');const {sessions:_0x115cfc}=await listFeatureSessions(_0x40e26b);if(_0x115cfc[_0x41960e(0x236)]===0x0){console[_0x41960e(0x23f)](_0x41960e(0x282));return;}for(const _0x5d3831 of _0x115cfc){const _0x1aadb5=_0x4235a6[_0x41960e(0x1d3)](_0x5d3831[_0x41960e(0x229)],'completed')?'✅':_0x4235a6[_0x41960e(0x1d3)](_0x5d3831['status'],_0x4235a6[_0x41960e(0x25c)])?'🔄':'▶️';console['log'](_0x1aadb5+'\x20Session\x20'+_0x5d3831[_0x41960e(0x22e)]+'\x20('+_0x5d3831['id']+')'),console[_0x41960e(0x23f)]('\x20\x20\x20Status:\x20'+_0x5d3831[_0x41960e(0x229)]),console['log'](_0x41960e(0x1e1)+new Date(_0x5d3831[_0x41960e(0x25e)])[_0x41960e(0x1ce)]()),_0x5d3831['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x5d3831[_0x41960e(0x274)])[_0x41960e(0x1ce)]()),console['log']('');}}export async function featureAddScenario(_0x5f3c46,_0x2f3f67){const _0x5954fd=_0x3e12,_0x369297={'XMCqg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ZCbtv':function(_0x4dc4f3,_0x306f2c){return _0x4dc4f3(_0x306f2c);},'QKDlY':function(_0x56815c,_0x6eadde,_0x4708a3){return _0x56815c(_0x6eadde,_0x4708a3);}},_0x33b806=_0x2f3f67||await getActiveFeatureId();if(!_0x33b806)throw new Error(_0x369297['XMCqg']);const _0x256505=await _0x369297['ZCbtv'](getFeature,_0x33b806);if(_0x256505[_0x5954fd(0x20a)]&&!_0x256505['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x256505['dashboardUrl']);await _0x369297['QKDlY'](createChecklistItem,_0x33b806,_0x5f3c46);const _0x139ca9=await getFeature(_0x33b806);console['log'](_0x5954fd(0x247)),displayFeature(_0x139ca9,_0x139ca9[_0x5954fd(0x22a)]);}export async function featureEditScenario(_0x3c4e19,_0x30238f){const _0x539b90=_0x3e12,_0x1ce82b={'YGVjN':_0x539b90(0x1c5),'ofirE':_0x539b90(0x1c8),'XJjIN':_0x539b90(0x1fb),'dCBbP':_0x539b90(0x208),'vjLGI':function(_0x381225,_0x43cca2){return _0x381225===_0x43cca2;},'VIhNL':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','GeKLp':function(_0x8b850,_0x5b76bb){return _0x8b850===_0x5b76bb;},'wvAYh':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','CgKnB':function(_0x3bce36,_0x54e371){return _0x3bce36+_0x54e371;},'riJdX':function(_0x3ab196,_0x1cf913){return _0x3ab196-_0x1cf913;},'pxqLH':function(_0x9d7266,_0xca421c){return _0x9d7266>=_0xca421c;},'hxlHX':_0x539b90(0x1ca),'JHrFm':function(_0x440a4a,_0x3ec067){return _0x440a4a<_0x3ec067;},'riuOY':function(_0x533bca,_0x2df339){return _0x533bca(_0x2df339);}},_0x434e0a=_0x30238f['id']||await getActiveFeatureId();!_0x434e0a&&(console[_0x539b90(0x21d)](_0x1ce82b[_0x539b90(0x26b)]),console[_0x539b90(0x21d)](_0x1ce82b[_0x539b90(0x284)]),process['exit'](0x1));const _0x131671=await getFeature(_0x434e0a);_0x131671['latestReview']&&!_0x131671[_0x539b90(0x20a)][_0x539b90(0x213)]&&(console['error'](_0x1ce82b['XJjIN']),console['error'](_0x1ce82b[_0x539b90(0x1c1)]),console['error']('\x20\x20'+_0x131671['dashboardUrl']),process['exit'](0x1));const _0x53dc5f=_0x131671['checklistItems']||[];_0x1ce82b[_0x539b90(0x276)](_0x53dc5f[_0x539b90(0x236)],0x0)&&(console['error'](_0x1ce82b['VIhNL']),process[_0x539b90(0x1d7)](0x1));if(_0x1ce82b['GeKLp'](_0x30238f[_0x539b90(0x1ae)],undefined)){console[_0x539b90(0x21d)](_0x1ce82b[_0x539b90(0x1dc)]),console[_0x539b90(0x23f)](_0x539b90(0x1ca));for(let _0x1189cc=0x0;_0x1189cc<_0x53dc5f['length'];_0x1189cc++){console['log']('\x20\x20'+_0x1ce82b['CgKnB'](_0x1189cc,0x1)+'.\x20'+_0x53dc5f[_0x1189cc][_0x539b90(0x1bf)]);}process[_0x539b90(0x1d7)](0x1);}const _0x57f8da=_0x1ce82b['riJdX'](_0x30238f[_0x539b90(0x1ae)],0x1);if(_0x57f8da<0x0||_0x1ce82b[_0x539b90(0x1d9)](_0x57f8da,_0x53dc5f[_0x539b90(0x236)])){console[_0x539b90(0x21d)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x30238f['scenario']+_0x539b90(0x1be)+_0x53dc5f[_0x539b90(0x236)]+'\x20scenarios.'),console[_0x539b90(0x23f)](_0x1ce82b[_0x539b90(0x1d1)]);for(let _0xbffa2b=0x0;_0x1ce82b['JHrFm'](_0xbffa2b,_0x53dc5f[_0x539b90(0x236)]);_0xbffa2b++){console['log']('\x20\x20'+(_0xbffa2b+0x1)+'.\x20'+_0x53dc5f[_0xbffa2b]['description']);}process['exit'](0x1);}const _0x57a6f3=_0x53dc5f[_0x57f8da];await updateChecklistItem(_0x434e0a,_0x57a6f3['id'],{'description':_0x3c4e19});const _0x235a89=await _0x1ce82b['riuOY'](getFeature,_0x434e0a);console[_0x539b90(0x23f)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x235a89,_0x235a89[_0x539b90(0x22a)]);}async function downloadFeedbackImage(_0x320164,_0x43cd1e){const _0x29cfd7=_0x3e12,_0x369565={'wOYGR':function(_0x4987f4,_0x2d7d41,_0x9413b2){return _0x4987f4(_0x2d7d41,_0x9413b2);},'hMPwR':function(_0x4355ac){return _0x4355ac();},'njCeo':function(_0x1717da,_0x2530e2){return _0x1717da(_0x2530e2);}};try{const _0xef5eb=_0x369565['wOYGR'](join,_0x369565['hMPwR'](getRangerDir),_0x29cfd7(0x242));await mkdir(_0xef5eb,{'recursive':!![]});const _0x207973=join(_0xef5eb,'comment_'+_0x43cd1e+'.png'),_0x5d14c7=await _0x369565['njCeo'](fetch,_0x320164);if(!_0x5d14c7['ok'])return null;const _0x403911=Buffer['from'](await _0x5d14c7['arrayBuffer']());return await writeFile(_0x207973,_0x403911),_0x207973;}catch{return null;}}export async function featureGetReview(_0x5ea537){const _0x2205ce=_0x3e12,_0x6ad734={'LGtNC':function(_0x13ce47,_0x1155d0){return _0x13ce47===_0x1155d0;},'XdheT':'No\x20scenarios\x20found.','RnVEr':function(_0x1579be,_0x391001){return _0x1579be<_0x391001;},'ceVyf':function(_0x2f6868,_0x26d310){return _0x2f6868>_0x26d310;},'RCjEC':function(_0x304017,_0x5932f7,_0xa195a9){return _0x304017(_0x5932f7,_0xa195a9);},'jzhwC':function(_0x16c482,_0x353de0){return _0x16c482+_0x353de0;},'zaEhn':_0x2205ce(0x269),'IJSHm':function(_0x31dfc2,_0x3a21c9){return _0x31dfc2>=_0x3a21c9;},'yMaGh':function(_0x5c08c5,_0x429ed8){return _0x5c08c5+_0x429ed8;}},_0x54c14e=_0x5ea537||await getActiveFeatureId();if(!_0x54c14e)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 _0x4c78e8=await getFeature(_0x54c14e),{items:_0x282236}=await getActionItems(_0x54c14e);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x4c78e8[_0x2205ce(0x27c)]+'\x20('+_0x4c78e8['id']+')\x0a');if(_0x6ad734['LGtNC'](_0x282236['length'],0x0)){console['log'](_0x6ad734[_0x2205ce(0x1fd)]);return;}for(let _0x5c3233=0x0;_0x6ad734[_0x2205ce(0x1c0)](_0x5c3233,_0x282236[_0x2205ce(0x236)]);_0x5c3233++){const _0x2280ae=_0x282236[_0x5c3233],_0x56ea1b=_0x6ad734['ceVyf'](_0x2280ae['version'],0x1)?'\x20(v'+_0x2280ae['version']+')':'',_0x4375cc=await _0x6ad734[_0x2205ce(0x285)](getItemFeedback,_0x54c14e,_0x2280ae['id']);if(_0x4375cc['unaddressedComments']['length']>0x0){console[_0x2205ce(0x23f)]('Scenario\x20'+_0x6ad734['jzhwC'](_0x5c3233,0x1)+':\x20\x22'+_0x2280ae['description']+'\x22'+_0x56ea1b+'\x20—\x20'+_0x4375cc['unaddressedComments']['length']+_0x2205ce(0x1ee));for(const _0x4c0cc3 of _0x4375cc[_0x2205ce(0x1c6)]){const _0x185e9d=new Date(_0x4c0cc3[_0x2205ce(0x25e)])['toLocaleDateString'](_0x6ad734[_0x2205ce(0x243)],{'month':_0x2205ce(0x1c9),'day':_0x2205ce(0x1e3)}),_0x12b334=_0x4c0cc3['authorName']||_0x4c0cc3[_0x2205ce(0x23e)]||_0x2205ce(0x21b);console[_0x2205ce(0x23f)](_0x2205ce(0x1d0)+_0x12b334+'\x20('+_0x185e9d+_0x2205ce(0x1f0)+_0x4c0cc3['content']+'\x22');if(_0x4c0cc3['assetUrl']){const _0x190135=await downloadFeedbackImage(_0x4c0cc3['assetUrl'],_0x4c0cc3['id']);_0x190135&&console[_0x2205ce(0x23f)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x190135);}if(_0x4c0cc3['domRef']){const _0x3a9f89=_0x4c0cc3['domRef'][_0x2205ce(0x1ed)]['split'](_0x2205ce(0x1ba))['pop']()?.[_0x2205ce(0x23c)](':')[0x0]||_0x2205ce(0x288),_0x4ce174=_0x4c0cc3['domRef'][_0x2205ce(0x1b7)]?'\x20\x22'+_0x4c0cc3['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x2205ce(0x23f)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x3a9f89+'>'+_0x4ce174),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x4c0cc3[_0x2205ce(0x259)]['selector']);}else{if(_0x4c0cc3['spatial']){const _0x54a719=_0x4c0cc3[_0x2205ce(0x22b)][_0x2205ce(0x277)];_0x6ad734[_0x2205ce(0x1db)](_0x4c0cc3[_0x2205ce(0x22b)]['type'],_0x2205ce(0x275))&&_0x6ad734['IJSHm'](_0x54a719[_0x2205ce(0x236)],0x2)?console[_0x2205ce(0x23f)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x54a719[0x0][_0x2205ce(0x1cd)](0x2)+',\x20'+_0x54a719[0x1][_0x2205ce(0x1cd)](0x2)+')'):console['log'](_0x2205ce(0x20b)+_0x4c0cc3['spatial'][_0x2205ce(0x283)]+_0x2205ce(0x1f2)+_0x54a719['map'](_0x14f613=>_0x14f613[_0x2205ce(0x1cd)](0x2))[_0x2205ce(0x224)](',\x20')+']');}}}if(_0x4375cc[_0x2205ce(0x1d8)]){console[_0x2205ce(0x23f)](_0x2205ce(0x279));for(const _0x1c96f4 of _0x4375cc[_0x2205ce(0x1d8)]['split']('\x0a')){console[_0x2205ce(0x23f)]('\x20\x20\x20\x20'+_0x1c96f4);}}}else console['log'](_0x2205ce(0x1f1)+_0x6ad734[_0x2205ce(0x214)](_0x5c3233,0x1)+':\x20\x22'+_0x2280ae['description']+'\x22'+_0x56ea1b+'\x20—\x20no\x20comments'),console['log'](_0x2205ce(0x219));console['log']('');}}export async function featureDelete(_0x4106f0){const _0x4f91bf=_0x3e12,_0x259406={'vIaCX':function(_0x105e99){return _0x105e99();},'vdkVr':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','cCROA':function(_0x341d0e,_0x518d03){return _0x341d0e(_0x518d03);},'NcxAh':function(_0x1d6325,_0x27e977){return _0x1d6325+_0x27e977;},'bLrlF':_0x4f91bf(0x20c)},_0x5b89c8=_0x4106f0||await _0x259406['vIaCX'](getActiveFeatureId);if(!_0x5b89c8)throw new Error(_0x259406[_0x4f91bf(0x251)]);const _0x16a929=await _0x259406[_0x4f91bf(0x1e6)](getFeature,_0x5b89c8);await softDeleteFeature(_0x5b89c8),console[_0x4f91bf(0x23f)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x16a929[_0x4f91bf(0x27c)]+'\x20('+_0x5b89c8+')'),console[_0x4f91bf(0x23f)](_0x259406[_0x4f91bf(0x25f)](_0x259406[_0x4f91bf(0x203)],_0x5b89c8));}export async function featureRestore(_0xf5ceb){const _0x2eb2e7=_0x3e12,_0x2f887e={'LzHIs':function(_0x1e4a9e,_0x4d38d2){return _0x1e4a9e(_0x4d38d2);},'gzclu':function(_0x4a8763,_0x508727,_0x3d0899){return _0x4a8763(_0x508727,_0x3d0899);}};await _0x2f887e[_0x2eb2e7(0x221)](restoreFeature,_0xf5ceb);const _0x3df9fd=await _0x2f887e['LzHIs'](getFeature,_0xf5ceb);console[_0x2eb2e7(0x23f)](_0x2eb2e7(0x1e5)+_0x3df9fd['name']+'\x20('+_0xf5ceb+')'),_0x2f887e[_0x2eb2e7(0x1f4)](displayFeature,_0x3df9fd,_0x3df9fd['checklistItems']);}
|
|
1
|
+
const _0x48552e=_0x94bc;(function(_0x499508,_0x1e5a2b){const _0x3d9048=_0x94bc,_0x516fa7=_0x499508();while(!![]){try{const _0x2250de=parseInt(_0x3d9048(0x150))/0x1+-parseInt(_0x3d9048(0x19d))/0x2*(-parseInt(_0x3d9048(0x113))/0x3)+-parseInt(_0x3d9048(0x126))/0x4*(parseInt(_0x3d9048(0x187))/0x5)+parseInt(_0x3d9048(0x101))/0x6*(parseInt(_0x3d9048(0xe5))/0x7)+-parseInt(_0x3d9048(0x142))/0x8*(parseInt(_0x3d9048(0x13a))/0x9)+parseInt(_0x3d9048(0xcf))/0xa*(parseInt(_0x3d9048(0xd7))/0xb)+-parseInt(_0x3d9048(0xf5))/0xc;if(_0x2250de===_0x1e5a2b)break;else _0x516fa7['push'](_0x516fa7['shift']());}catch(_0x5e8ff3){_0x516fa7['push'](_0x516fa7['shift']());}}}(_0x1bb3,0xbb244));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x8c3609 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=_0x48552e(0x16f),bold=_0x32db3a=>_0x48552e(0xf8)+_0x32db3a+'\x1b[0m';function getGitRepoUrl(){const _0x20183a=_0x48552e,_0x5cb2c5={'YfNkv':function(_0xe8e4ec,_0x5d8d70,_0x8da28c){return _0xe8e4ec(_0x5d8d70,_0x8da28c);},'aIiEh':'git\x20remote\x20get-url\x20origin','QKkyi':'pipe'};try{const _0x45c6d1=_0x5cb2c5[_0x20183a(0x186)](execSync,_0x5cb2c5[_0x20183a(0x11b)],{'encoding':'utf-8','stdio':['pipe',_0x5cb2c5['QKkyi'],_0x20183a(0xf6)]})[_0x20183a(0x10e)]();return _0x45c6d1[_0x20183a(0x122)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x20183a(0x102))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x109bb2=_0x48552e,_0x50f301={'wlvno':function(_0x196acb,_0x33f7b5,_0x127641){return _0x196acb(_0x33f7b5,_0x127641);},'VBSMv':'utf-8'};try{return _0x50f301['wlvno'](execSync,_0x109bb2(0xc9),{'encoding':_0x50f301[_0x109bb2(0x137)],'stdio':['pipe',_0x109bb2(0xf6),_0x109bb2(0xf6)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1c4603=_0x48552e,_0x50dbd9={'gsQsA':function(_0x3f4cfb){return _0x3f4cfb();},'kxRfi':_0x1c4603(0xfa)},_0x55df1e=join(_0x50dbd9[_0x1c4603(0x1a5)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x55df1e))return null;try{const _0x101682=await readFile(_0x55df1e,_0x50dbd9['kxRfi']);return _0x101682[_0x1c4603(0x10e)]()||null;}catch{return null;}}function _0x94bc(_0x17baea,_0x1c4fae){_0x17baea=_0x17baea-0xc3;const _0x1bb3a9=_0x1bb3();let _0x94bc7f=_0x1bb3a9[_0x17baea];return _0x94bc7f;}async function setActiveFeatureId(_0x1a2da1){const _0x2520d2=_0x48552e,_0x2726a0={'loiWD':function(_0x2b87b5){return _0x2b87b5();},'sqMPq':function(_0x8b550c,_0x528eb0){return _0x8b550c(_0x528eb0);},'QdvgH':function(_0x57a93a,_0x408521,_0x5c5618){return _0x57a93a(_0x408521,_0x5c5618);},'rulIh':_0x2520d2(0xfa)},_0xaf371b=_0x2726a0['loiWD'](getRangerDir),_0x2c192b=join(_0xaf371b,ACTIVE_FEATURE_FILE);!_0x2726a0['sqMPq'](existsSync,_0xaf371b)&&await _0x2726a0['QdvgH'](mkdir,_0xaf371b,{'recursive':!![]}),await writeFile(_0x2c192b,_0x1a2da1,_0x2726a0[_0x2520d2(0x18c)]);}function getProgressDisplay(_0x1a0c13){const _0xf5e535=_0x48552e,_0x404ac8={'bMWJb':function(_0xc49e3f,_0x1e3d93){return _0xc49e3f+_0x1e3d93;},'JkKlE':function(_0x2271e0,_0x31b77f){return _0x2271e0/_0x31b77f;},'kQRpx':function(_0x2026c2,_0x1b10cf){return _0x2026c2>_0x1b10cf;}},_0x4d2101=_0x1a0c13['verifiedItems']||0x0,_0x552fa7=_0x1a0c13['verificationInProgressItems']||0x0,_0x4aeb15=_0x1a0c13[_0xf5e535(0xec)]||0x0,_0x2a77f9=_0x1a0c13[_0xf5e535(0x193)]||0x0,_0x1b43a0=_0x1a0c13[_0xf5e535(0x11a)]||0x0,_0x3ee44c=_0x404ac8['bMWJb'](_0x404ac8[_0xf5e535(0x183)](_0x4d2101+_0x552fa7,_0x4aeb15)+_0x2a77f9,_0x1b43a0);if(_0x3ee44c===0x0)return'-';const _0x2c90df=0xa,_0x186e98=Math[_0xf5e535(0x123)](_0x404ac8[_0xf5e535(0x19b)](_0x4d2101,_0x3ee44c)*_0x2c90df),_0x13fcdd=_0x404ac8['bMWJb']('█'['repeat'](_0x186e98),'░'['repeat'](_0x2c90df-_0x186e98)),_0x7ac38f=[];if(_0x404ac8['kQRpx'](_0x4aeb15,0x0))_0x7ac38f['push'](_0x4aeb15+_0xf5e535(0x130));if(_0x404ac8[_0xf5e535(0xdd)](_0x2a77f9,0x0))_0x7ac38f['push'](_0x2a77f9+_0xf5e535(0x121));if(_0x404ac8[_0xf5e535(0xdd)](_0x552fa7,0x0))_0x7ac38f[_0xf5e535(0xe9)](_0x552fa7+_0xf5e535(0x19e));const _0x51fbec=_0x7ac38f[_0xf5e535(0x188)]>0x0?'\x20('+_0x7ac38f['join'](',\x20')+')':'';return _0x13fcdd+'\x20'+_0x4d2101+'/'+_0x3ee44c+'\x20verified'+_0x51fbec;}function getCurrentSessionItems(_0x29c170,_0xdc078b){const _0x4b29c2=_0x48552e;if(!_0x29c170['currentSessionId'])return _0xdc078b['filter'](_0x58cb9f=>!_0x58cb9f['sessionId']);return _0xdc078b['filter'](_0x3f8f99=>_0x3f8f99[_0x4b29c2(0x181)]===_0x29c170['currentSessionId']||!_0x3f8f99[_0x4b29c2(0x181)]);}function displayFeature(_0x446f0c,_0x15a04a){const _0x34fdb4=_0x48552e,_0x17a1b1={'wbcOy':'\x0a\x20\x20\x20Scenarios:','jCvTb':function(_0x22478b,_0xde2f4e){return _0x22478b<_0xde2f4e;},'LrGHH':_0x34fdb4(0x192),'OSTmj':function(_0x49e4df,_0x1d4146){return _0x49e4df===_0x1d4146;},'fdqgb':function(_0x1900bb,_0x128197){return _0x1900bb===_0x128197;},'fjUaj':'verified','pwefr':function(_0x484988,_0x2628b8){return _0x484988===_0x2628b8;},'pfypM':'incomplete','PULiq':_0x34fdb4(0xe8),'fwGls':function(_0x19f785,_0x33fba2){return _0x19f785>_0x33fba2;},'EVhZY':function(_0x216bcb,_0x385b9b){return _0x216bcb!==_0x385b9b;},'tWkGg':'\x20[has\x20reviewer\x20feedback]','SBZRG':function(_0x1d8aec,_0x1887cd){return _0x1d8aec===_0x1887cd;},'DudCu':_0x34fdb4(0x160),'bZAEY':function(_0x4fbd14,_0x2b8f2a){return _0x4fbd14===_0x2b8f2a;},'ORNBU':function(_0x2a71da,_0x58cda3){return _0x2a71da===_0x58cda3;},'IjVbJ':'approved','rchcY':function(_0x466416,_0x51376d){return _0x466416===_0x51376d;}};console[_0x34fdb4(0xff)]('\x0a'+_0x446f0c[_0x34fdb4(0x11e)]+'\x20('+_0x446f0c[_0x34fdb4(0x195)]+')');_0x446f0c['stats']&&console[_0x34fdb4(0xff)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x446f0c[_0x34fdb4(0xfb)]));_0x446f0c[_0x34fdb4(0xe3)]&&console['log']('\x20\x20\x20Description:\x20'+_0x446f0c[_0x34fdb4(0xe3)]);_0x446f0c[_0x34fdb4(0xef)]&&console['log'](_0x34fdb4(0x133)+_0x446f0c[_0x34fdb4(0xef)]);_0x446f0c[_0x34fdb4(0x176)]&&console['log'](_0x34fdb4(0x109)+_0x446f0c['gitBranch']);console[_0x34fdb4(0xff)](_0x34fdb4(0xf7)+new Date(_0x446f0c['createdAt'])[_0x34fdb4(0xe1)]());_0x446f0c[_0x34fdb4(0x19c)]&&console[_0x34fdb4(0xff)](_0x34fdb4(0x170)+new Date(_0x446f0c['completedAt'])[_0x34fdb4(0xe1)]());if(_0x15a04a&&_0x15a04a['length']>0x0){console['log'](_0x17a1b1['wbcOy']);for(let _0x252186=0x0;_0x17a1b1['jCvTb'](_0x252186,_0x15a04a['length']);_0x252186++){const _0x19c758=_0x15a04a[_0x252186];let _0x20c06d;if(_0x19c758['status']===_0x17a1b1[_0x34fdb4(0x107)]&&_0x17a1b1['OSTmj'](_0x19c758['terminalReason'],'approved'))_0x20c06d='✅';else{if(_0x17a1b1[_0x34fdb4(0x14c)](_0x19c758['status'],_0x17a1b1['fjUaj']))_0x20c06d='🟢';else{if(_0x17a1b1[_0x34fdb4(0xeb)](_0x19c758[_0x34fdb4(0xcc)],_0x17a1b1['pfypM']))_0x20c06d='🟠';else{if(_0x19c758[_0x34fdb4(0xcc)]==='blocked')_0x20c06d='🛑';else{if(_0x19c758['status']===_0x17a1b1['LrGHH'])_0x20c06d='⛔';else _0x19c758['status']===_0x17a1b1['PULiq']?_0x20c06d='⏳':_0x20c06d='⬜';}}}}const _0x3af39f=_0x19c758[_0x34fdb4(0xc3)]>0x1?_0x34fdb4(0xf3)+_0x19c758['version']+')':'',_0x2ddeb1=_0x17a1b1[_0x34fdb4(0xd9)](_0x19c758[_0x34fdb4(0xc3)],0x1)&&_0x19c758[_0x34fdb4(0x16c)]&&_0x17a1b1[_0x34fdb4(0xea)](_0x19c758[_0x34fdb4(0xcc)],_0x34fdb4(0x192))&&_0x17a1b1[_0x34fdb4(0xea)](_0x19c758[_0x34fdb4(0xcc)],'verified')?_0x17a1b1[_0x34fdb4(0x108)]:'';console['log'](_0x34fdb4(0xf0)+(_0x252186+0x1)+'.\x20'+_0x20c06d+'\x20'+_0x19c758[_0x34fdb4(0xe3)]+_0x3af39f+_0x2ddeb1);_0x17a1b1['SBZRG'](_0x19c758[_0x34fdb4(0xcc)],_0x17a1b1[_0x34fdb4(0xe6)])&&_0x19c758[_0x34fdb4(0x196)]&&console['log'](_0x34fdb4(0x18e)+_0x19c758['blockedReason']);_0x19c758[_0x34fdb4(0xcc)]===_0x34fdb4(0x13b)&&_0x19c758['incompleteReason']&&console['log'](_0x34fdb4(0x171)+_0x19c758[_0x34fdb4(0xca)]);if(_0x17a1b1[_0x34fdb4(0x103)](_0x19c758['status'],_0x17a1b1[_0x34fdb4(0x107)])&&_0x17a1b1[_0x34fdb4(0x15c)](_0x19c758[_0x34fdb4(0x191)],_0x17a1b1[_0x34fdb4(0x10c)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x17a1b1[_0x34fdb4(0x18a)](_0x19c758['status'],_0x17a1b1[_0x34fdb4(0x107)])&&_0x19c758[_0x34fdb4(0x17e)]&&console[_0x34fdb4(0xff)](_0x34fdb4(0x10b)+_0x19c758[_0x34fdb4(0x17e)]);}}}export async function featureCreate(_0x55449c,_0x4c7a04){const _0x85715f=_0x48552e,_0x541c2a={'GaOur':function(_0x8f349f){return _0x8f349f();},'YLfCu':function(_0x1c57f5,_0x2cf434){return _0x1c57f5===_0x2cf434;},'MvhqS':function(_0x322841,_0x257fb1){return _0x322841(_0x257fb1);},'duvdR':function(_0x2e2266){return _0x2e2266();}},{envNames:_0x354db9}=await getEnvNames();if(_0x354db9['length']===0x0&&!process[_0x85715f(0x1a7)]['RANGER_TEST_USERNAME']){let _0x1217c8=0x0;try{_0x1217c8=(await _0x541c2a[_0x85715f(0x120)](listCloudProfiles))[_0x85715f(0x188)];}catch{_0x1217c8=0x1;}_0x541c2a[_0x85715f(0x173)](_0x1217c8,0x0)&&console[_0x85715f(0x168)]('\x0a'+_0x541c2a['MvhqS'](formatProfileRequiredMessage,_0x6dbdb0=>bold(_0x6dbdb0)));}const _0x4855bb=_0x4c7a04[_0x85715f(0x194)]?_0x4c7a04[_0x85715f(0x194)]['map'](_0x5cadaf=>_0x5cadaf['trim']()):[],_0x3a7231=_0x541c2a['duvdR'](getGitRepoUrl),_0x2fe4ba=_0x541c2a['GaOur'](getGitBranch);console[_0x85715f(0xff)](_0x85715f(0xc6));const _0x2142d8=await createFeature({'name':_0x55449c,'description':_0x4c7a04['description'],'checklist':_0x4855bb,'gitRepoUrl':_0x3a7231,'gitBranch':_0x2fe4ba});await setActiveFeatureId(_0x2142d8['id']),await tryStartCurrentSession(_0x2142d8['id']);const _0x5cd665=process[_0x85715f(0x1a7)]['CLAUDE_SESSION_ID'];_0x5cd665&®isterSession(_0x5cd665,_0x2142d8['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x2142d8['id']),displayFeature(_0x2142d8,_0x2142d8[_0x85715f(0x156)]),console[_0x85715f(0xff)](_0x85715f(0x12c));}export async function featureList(_0x228064){const _0x2ab1fc=_0x48552e,_0x37b134={'bsQET':function(_0x340518){return _0x340518();},'xYOPD':function(_0x21b6dd,_0x137264){return _0x21b6dd(_0x137264);},'NZXDs':'\x0aNo\x20feature\x20reviews\x20found.','Xenqx':function(_0x57b0aa,_0x9afd81){return _0x57b0aa>_0x9afd81;},'HMeJo':_0x2ab1fc(0xc5),'qSIiG':function(_0xd59613,_0x53c553){return _0xd59613(_0x53c553);},'InEYT':function(_0x44fa9a,_0x5cc8d4){return _0x44fa9a<_0x5cc8d4;},'HznDy':function(_0x330447,_0xb7d8af){return _0x330447!==_0xb7d8af;},'noJuJ':'\x20--current-branch','EphBC':_0x2ab1fc(0x174)},_0x1760e8={'limit':_0x228064[_0x2ab1fc(0x179)]??0xa,'offset':_0x228064['offset']??0x0,'includeDeleted':_0x228064['includeDeleted']};_0x228064[_0x2ab1fc(0x12f)]&&(_0x1760e8[_0x2ab1fc(0xef)]=_0x37b134[_0x2ab1fc(0x13e)](getGitRepoUrl),_0x1760e8[_0x2ab1fc(0x176)]=getGitBranch());const _0x2c7e64=await _0x37b134['xYOPD'](listFeatures,_0x1760e8);if(_0x2c7e64[_0x2ab1fc(0x105)][_0x2ab1fc(0x188)]===0x0){console['log'](_0x37b134['NZXDs']);return;}const _0x23cc1e=_0x37b134[_0x2ab1fc(0xdb)](_0x2c7e64[_0x2ab1fc(0x116)],_0x2c7e64['items']['length'])?'Showing\x20'+_0x2c7e64['items']['length']+_0x2ab1fc(0x14f)+_0x2c7e64[_0x2ab1fc(0x116)]:_0x2c7e64['totalCount']+_0x2ab1fc(0xd8);console[_0x2ab1fc(0xff)]('\x0a'+_0x23cc1e+':\x0a');for(const _0x56204c of _0x2c7e64[_0x2ab1fc(0x105)]){const _0xae4066=_0x37b134['HMeJo']['split']('|');let _0x4a0b72=0x0;while(!![]){switch(_0xae4066[_0x4a0b72++]){case'0':console[_0x2ab1fc(0xff)]('\x20\x20\x20Created:\x20'+new Date(_0x56204c[_0x2ab1fc(0x148)])[_0x2ab1fc(0x165)]());continue;case'1':console['log'](''+_0x56204c['name']);continue;case'2':console[_0x2ab1fc(0xff)]('');continue;case'3':console['log'](_0x2ab1fc(0xfe)+_0x56204c['id']);continue;case'4':_0x56204c[_0x2ab1fc(0x176)]&&console[_0x2ab1fc(0xff)]('\x20\x20\x20Branch:\x20'+_0x56204c['gitBranch']);continue;case'5':_0x56204c[_0x2ab1fc(0xfb)]&&console[_0x2ab1fc(0xff)]('\x20\x20\x20Progress:\x20'+_0x37b134[_0x2ab1fc(0x10a)](getProgressDisplay,_0x56204c[_0x2ab1fc(0xfb)]));continue;}break;}}const _0x46d353=_0x1760e8['limit']??0xa,_0x419695=(_0x1760e8[_0x2ab1fc(0x139)]??0x0)+_0x2c7e64['items'][_0x2ab1fc(0x188)];if(_0x37b134[_0x2ab1fc(0x177)](_0x419695,_0x2c7e64[_0x2ab1fc(0x116)])){const _0x11e817=_0x37b134['HznDy'](_0x46d353,0xa)?_0x2ab1fc(0x166)+_0x46d353:'',_0x1f2fa9=_0x228064[_0x2ab1fc(0x12f)]?_0x37b134['noJuJ']:'',_0x19142c=_0x228064[_0x2ab1fc(0x182)]?_0x37b134[_0x2ab1fc(0x198)]:'';console[_0x2ab1fc(0xff)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x419695+_0x11e817+_0x1f2fa9+_0x19142c);}}export async function featureShow(_0x3381ae){const _0x421219=_0x48552e,_0xaf30ad={'GlEKC':_0x421219(0xd4),'VKzSr':function(_0x4d6585,_0x292e9c){return _0x4d6585(_0x292e9c);},'CsjRy':function(_0x411eac,_0x43eb33,_0x26d1b7){return _0x411eac(_0x43eb33,_0x26d1b7);}},_0x4dcbbc=_0x3381ae||await getActiveFeatureId();if(!_0x4dcbbc)throw new Error(_0xaf30ad[_0x421219(0xe4)]);const _0x4db2cd=await _0xaf30ad['VKzSr'](getFeature,_0x4dcbbc);_0xaf30ad[_0x421219(0xf4)](displayFeature,_0x4db2cd,_0x4db2cd[_0x421219(0x156)]);}export async function featureResume(_0x3f35e0){const _0x551edd=_0x48552e,_0x206bb5={'TMoZz':function(_0xf9aa8a,_0x477159){return _0xf9aa8a(_0x477159);},'tflCZ':function(_0x2f68b5,_0x2b0d64,_0x20ae26){return _0x2f68b5(_0x2b0d64,_0x20ae26);},'ELUyK':function(_0x4ecf0c){return _0x4ecf0c();},'TfgNf':'any','XqKLa':function(_0x321a81,_0x1bffa9){return _0x321a81===_0x1bffa9;},'ucJCW':_0x551edd(0x19a),'satnn':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','EakHB':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','mkPRu':_0x551edd(0xe7),'TQgdx':_0x551edd(0x17b)};if(_0x3f35e0){const _0x35711e=await _0x206bb5['TMoZz'](getFeature,_0x3f35e0);await setActiveFeatureId(_0x35711e['id']);const _0x46747f=getGitBranch();_0x46747f&&_0x46747f!==_0x35711e['gitBranch']&&(await _0x206bb5[_0x551edd(0x1a8)](updateFeature,_0x35711e['id'],{'gitBranch':_0x46747f}),console['log'](_0x551edd(0x131)+_0x46747f));console[_0x551edd(0xff)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x35711e[_0x551edd(0x11e)]+'\x20('+_0x35711e['id']+')'),await tryStartCurrentSession(_0x35711e['id']);const _0x4be47e=process[_0x551edd(0x1a7)]['CLAUDE_SESSION_ID'];_0x4be47e&&_0x206bb5[_0x551edd(0x1a8)](registerSession,_0x4be47e,_0x35711e['id']);displayFeature(_0x35711e,_0x35711e['checklistItems']),await _0x206bb5[_0x551edd(0x180)](printFeedbackNudge,_0x35711e['id']);return;}const _0x21e39f=_0x206bb5['ELUyK'](getGitRepoUrl),_0x5b6858=getGitBranch();if(!_0x21e39f&&!_0x5b6858)throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x21e39f||_0x551edd(0x152))+'\x20/\x20'+(_0x5b6858||_0x206bb5[_0x551edd(0xfc)])+'...');const _0x367dfd=await listFeatures({'gitRepoUrl':_0x21e39f,'gitBranch':_0x5b6858}),_0xc50b6c=_0x367dfd[_0x551edd(0x105)]['filter'](_0x3b47ab=>_0x3b47ab[_0x551edd(0xcc)]?_0x3b47ab['status']!=='verified':!_0x3b47ab[_0x551edd(0x19c)]);if(_0x206bb5['XqKLa'](_0xc50b6c['length'],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x551edd(0xff)](_0x206bb5[_0x551edd(0x157)]);return;}let _0x3a89cc;if(_0xc50b6c['length']===0x1)_0x3a89cc=_0xc50b6c[0x0];else{const _0x3e8552=process[_0x551edd(0x12b)]['isTTY']&&process['stdout']['isTTY'];if(!_0x3e8552){console['log'](_0x206bb5['satnn']);for(const _0xea23e6 of _0xc50b6c){console['log']('\x20\x20'+_0xea23e6[_0x551edd(0x11e)]),console[_0x551edd(0xff)]('\x20\x20\x20\x20\x20ID:\x20'+_0xea23e6['id']),_0xea23e6['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0xea23e6[_0x551edd(0xfb)])),_0xea23e6[_0x551edd(0x176)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xea23e6['gitBranch']);}throw new Error(_0x206bb5['EakHB']);}const {selected:_0x92477b}=await _0x8c3609[_0x551edd(0xf9)]([{'type':_0x206bb5[_0x551edd(0xe0)],'name':_0x551edd(0xfd),'message':_0x206bb5['TQgdx'],'choices':_0xc50b6c[_0x551edd(0x124)](_0x57788f=>({'name':_0x57788f[_0x551edd(0x11e)]+'\x20('+_0x57788f['id']+')','value':_0x57788f['id']}))}]);_0x3a89cc=_0xc50b6c[_0x551edd(0x16d)](_0x51d05b=>_0x51d05b['id']===_0x92477b);}await setActiveFeatureId(_0x3a89cc['id']);_0x5b6858&&_0x5b6858!==_0x3a89cc[_0x551edd(0x176)]&&(await updateFeature(_0x3a89cc['id'],{'gitBranch':_0x5b6858}),console['log'](_0x551edd(0x131)+_0x5b6858));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3a89cc['name']+'\x20('+_0x3a89cc['id']+')'),await _0x206bb5[_0x551edd(0x180)](tryStartCurrentSession,_0x3a89cc['id']);const _0x137396=await getFeature(_0x3a89cc['id']),_0xe51ab9=process['env']['CLAUDE_SESSION_ID'];_0xe51ab9&®isterSession(_0xe51ab9,_0x137396['id']),displayFeature(_0x137396,_0x137396['checklistItems']),await _0x206bb5['TMoZz'](printFeedbackNudge,_0x137396['id']);}async function printFeedbackNudge(_0x3f5a9b){const _0x16220c=_0x48552e,_0x22177b={'EkdcM':function(_0x3b6b62,_0x5989f0,_0x3c06d7){return _0x3b6b62(_0x5989f0,_0x3c06d7);},'rRIFw':function(_0x386c5b,_0x35d3e5){return _0x386c5b>_0x35d3e5;},'dMydk':_0x16220c(0x153)};try{const {items:_0x2f024c}=await getActionItems(_0x3f5a9b);let _0x475fb8=0x0,_0x78892b=0x0;for(const _0x18ac4e of _0x2f024c){const _0x2d61ef=await _0x22177b['EkdcM'](getItemFeedback,_0x3f5a9b,_0x18ac4e['id']);_0x2d61ef[_0x16220c(0x114)]['length']>0x0&&(_0x475fb8+=_0x2d61ef[_0x16220c(0x114)]['length'],_0x78892b++);}_0x22177b[_0x16220c(0x12e)](_0x475fb8,0x0)&&(console['log']('\x0a⚠️\x20\x20'+_0x475fb8+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x78892b+_0x16220c(0xd5)),console['log'](_0x22177b[_0x16220c(0x149)]));}catch{}}async function tryStartCurrentSession(_0x47f0c1){const _0x54ed18=_0x48552e,_0x341618={'Qhley':function(_0x3c8acd,_0xa24ec1){return _0x3c8acd(_0xa24ec1);}};try{const {sessions:_0x576f0f}=await _0x341618['Qhley'](listFeatureSessions,_0x47f0c1),_0x127af0=_0x576f0f['find'](_0x4967e8=>_0x4967e8['status']===_0x54ed18(0x1a4));_0x127af0&&(await startSession(_0x47f0c1,_0x127af0['id']),console['log'](_0x54ed18(0x127)+_0x127af0['iteration']));}catch{}}export async function featureReport(_0x3119d9,_0x1a9980){const _0x1f39bb=_0x48552e,_0x4604e3={'IKeOf':function(_0x241c2d){return _0x241c2d();},'OGDrP':_0x1f39bb(0x115),'iBYDE':function(_0x473cba,_0x3189b3,_0x759f7,_0x4c594c){return _0x473cba(_0x3189b3,_0x759f7,_0x4c594c);},'DXFHn':function(_0x5f4856){return _0x5f4856();},'oVdUp':function(_0x511e89,_0x11f0d5,_0x2d94bc){return _0x511e89(_0x11f0d5,_0x2d94bc);},'qARiO':_0x1f39bb(0xfa)},_0x2515dc=_0x3119d9||await _0x4604e3['IKeOf'](getActiveFeatureId);if(!_0x2515dc)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x1f39bb(0xff)](_0x4604e3[_0x1f39bb(0xf2)]);const _0x2f6a0f=await getFeatureReportMarkdown(_0x2515dc,{'style':_0x1a9980[_0x1f39bb(0x110)]}),_0x29201d=_0x1a9980[_0x1f39bb(0x19f)]||_0x4604e3[_0x1f39bb(0x118)](join,_0x4604e3[_0x1f39bb(0x10f)](getRangerDir),_0x1f39bb(0x18f),_0x2515dc+_0x1f39bb(0x159)),_0x1bc85e=join(_0x29201d,'..');!existsSync(_0x1bc85e)&&await _0x4604e3['oVdUp'](mkdir,_0x1bc85e,{'recursive':!![]}),await writeFile(_0x29201d,_0x2f6a0f,_0x4604e3[_0x1f39bb(0x1a3)]),console[_0x1f39bb(0xff)]('\x0a✅\x20Report\x20generated:\x20'+_0x29201d);}function getScenarioResult(_0xffbe8a){const _0x2f7f0d=_0x48552e,_0x81a4d5={'lXpQI':'closed','EzNOI':function(_0x4a075e,_0x366ab2){return _0x4a075e===_0x366ab2;},'ZBvkH':'verification_in_progress','ROoit':'in_progress'};if(_0xffbe8a[_0x2f7f0d(0xcc)]===_0x2f7f0d(0x192))return _0xffbe8a[_0x2f7f0d(0x191)]??_0x81a4d5[_0x2f7f0d(0xd1)];if(_0x81a4d5[_0x2f7f0d(0x190)](_0xffbe8a[_0x2f7f0d(0xcc)],_0x81a4d5[_0x2f7f0d(0x155)]))return _0x81a4d5['ROoit'];return _0xffbe8a[_0x2f7f0d(0xcc)];}function getScenarioRationale(_0x5d2624,_0x478ed9){const _0x13ac13=_0x48552e;if(_0x478ed9)return _0x478ed9;if(_0x5d2624[_0x13ac13(0x196)])return _0x5d2624[_0x13ac13(0x196)];if(_0x5d2624[_0x13ac13(0xca)])return _0x5d2624[_0x13ac13(0xca)];if(_0x5d2624['canceledReason'])return _0x5d2624['canceledReason'];if(_0x5d2624[_0x13ac13(0xc4)])return _0x5d2624[_0x13ac13(0xc4)];return null;}export async function featureReportPrDescription(_0x3baf03,_0x5ae788){const _0x27e890=_0x48552e,_0x532b5d={'eSZzV':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','OjAoU':function(_0x47d0f2,_0x26f09f){return _0x47d0f2(_0x26f09f);},'ORVly':_0x27e890(0x1a6),'hCjGL':function(_0x4cef7e,_0x118242){return _0x4cef7e>_0x118242;},'QCKxZ':_0x27e890(0x14b),'orIrO':function(_0x58b9f8,_0x104e82){return _0x58b9f8<_0x104e82;},'bEAQv':function(_0x21190e,_0x11df28){return _0x21190e===_0x11df28;},'QEpDi':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x4d2ea1=_0x3baf03||await getActiveFeatureId();if(!_0x4d2ea1)throw new Error(_0x532b5d[_0x27e890(0xd6)]);const _0x2ba4cd=await _0x532b5d[_0x27e890(0x18b)](getFeature,_0x4d2ea1),_0x145c72=_0x2ba4cd[_0x27e890(0x156)]||[],_0x54363e=getCurrentSessionItems(_0x2ba4cd,_0x145c72);_0x54363e['length']===0x0&&(console[_0x27e890(0xe2)](_0x532b5d[_0x27e890(0x10d)]),process[_0x27e890(0x136)](0x1));const _0x2606b7=_0x5ae788[_0x27e890(0x138)]??[],_0x5dadff=_0x2606b7['filter'](_0x509915=>!Number['isInteger'](_0x509915)||_0x509915<0x1||_0x509915>_0x54363e['length']);if(_0x532b5d[_0x27e890(0x16b)](_0x5dadff[_0x27e890(0x188)],0x0)){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x5dadff[_0x27e890(0x172)](',\x20')),console['log'](_0x532b5d['QCKxZ']);for(let _0x59845a=0x0;_0x532b5d['orIrO'](_0x59845a,_0x54363e['length']);_0x59845a++){console[_0x27e890(0xff)]('\x20\x20'+(_0x59845a+0x1)+'.\x20'+_0x54363e[_0x59845a]['description']);}process['exit'](0x1);}const _0xe8d0df=new Set(_0x2606b7['map'](_0x1c09ae=>_0x1c09ae-0x1)),_0x515732=_0x54363e[_0x27e890(0xd3)]((_0x554e1e,_0x5d698c)=>!_0xe8d0df[_0x27e890(0x151)](_0x5d698c));_0x532b5d['bEAQv'](_0x515732['length'],0x0)&&(console[_0x27e890(0xe2)](_0x532b5d['QEpDi']),process['exit'](0x1));if(_0x5ae788['json'])await outputJsonReport(_0x4d2ea1,_0x2ba4cd,_0x515732);else{const _0x63d83f=await getFeatureReportMarkdown(_0x4d2ea1,{'itemIds':_0x515732['map'](_0x41703f=>_0x41703f['id'])});process['stdout']['write'](_0x63d83f[_0x27e890(0x1a1)]()+'\x0a');}}async function outputJsonReport(_0x374fa2,_0x28d09f,_0xac2d1){const _0xc2a81f=_0x48552e,_0x449032={'pABjf':function(_0x154cd5,_0x1c0a6){return _0x154cd5>_0x1c0a6;},'GqVMO':function(_0x4f51b5,_0x22096a){return _0x4f51b5(_0x22096a);}},_0x2f9660=getApiBaseUrl(),_0x5d049e=await _0x449032['GqVMO'](getFeatureReport,_0x374fa2),_0x49bd56=new Map(_0x5d049e['checklistItems'][_0xc2a81f(0x124)](_0x2cf423=>[_0x2cf423['id'],_0x2cf423])),_0x295bd3=await Promise['all'](_0xac2d1[_0xc2a81f(0x124)](async _0x4a210e=>{const _0x4b02d2=_0xc2a81f,_0x3e5fa3=_0x49bd56['get'](_0x4a210e['id']),_0x6242ea=_0x3e5fa3?.['linkedSession']??null;let _0x569ea3=[];if(_0x4a210e['browserSessionId'])try{const {steps:_0x3414a7}=await getBrowserSessionSteps(_0x4a210e[_0x4b02d2(0x117)]);_0x449032['pABjf'](_0x3414a7[_0x4b02d2(0x188)],0x0)&&(_0x569ea3=_0x3414a7['map'](_0x21b717=>{const _0x185369=_0x4b02d2,_0x4885e0=_0x21b717['assets']['find'](_0x11faf6=>_0x11faf6['assetType']===_0x185369(0x100)&&_0x11faf6['timing']==='after')??_0x21b717[_0x185369(0x17c)]['find'](_0x128ebe=>_0x128ebe['assetType']==='screenshot');let _0x137355=null,_0x47ef07=null;if(_0x4885e0){const _0x2eeff2=_0x4885e0[_0x185369(0x15a)][_0x185369(0x154)][_0x185369(0x167)]('/')['pop']();_0x137355=_0x2f9660+_0x185369(0x162)+_0x4a210e['browserSessionId']+'/artifacts/'+_0x2eeff2,_0x2eeff2&&(_0x47ef07=_0x2eeff2['replace'](/\.\w+$/,'')[_0x185369(0x122)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x47ef07||_0x21b717['description']||_0x21b717['stepName']||_0x185369(0xce)+_0x21b717[_0x185369(0x132)],'screenshot':_0x137355,'is_key_step':_0x21b717['isKeyStep']};}));}catch{}return _0x569ea3[_0x4b02d2(0x188)]===0x0&&_0x6242ea?.['screenshotUrls']&&(_0x569ea3=_0x6242ea['screenshotUrls']['map']((_0x38828b,_0x5a3fdc)=>({'description':'Screenshot\x20'+(_0x5a3fdc+0x1),'screenshot':_0x38828b,'is_key_step':![]}))),{'description':_0x4a210e['description'],'result':getScenarioResult(_0x4a210e),'rationale':getScenarioRationale(_0x4a210e,_0x6242ea?.[_0x4b02d2(0x197)]),'steps':_0x569ea3};})),_0x565961={'url':_0x28d09f['dashboardUrl'],'scenarios':_0x295bd3};process[_0xc2a81f(0x112)][_0xc2a81f(0x189)](JSON['stringify'](_0x565961,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x28bc96){const _0x50eac1=_0x48552e,_0x1db7b3={'AsorW':function(_0x2dcf16){return _0x2dcf16();},'GQqUY':function(_0x26d9b7,_0x958e69){return _0x26d9b7(_0x958e69);},'wfYEi':function(_0x196920,_0x1fba79){return _0x196920===_0x1fba79;},'PpOsO':_0x50eac1(0x17a),'BIoJX':function(_0x236e0b,_0x1ec0a6){return _0x236e0b!==_0x1ec0a6;},'BLeAP':_0x50eac1(0x1a0),'GoGqf':'\x0aConcluding\x20session...'},_0x228a2=_0x28bc96||await _0x1db7b3['AsorW'](getActiveFeatureId);if(!_0x228a2)throw new Error(_0x50eac1(0xd4));const _0x169f4a=await getFeature(_0x228a2);if(!_0x169f4a['currentSessionId'])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x24ea6}=await _0x1db7b3['GQqUY'](listFeatureSessions,_0x228a2),_0x3bdd91=_0x24ea6[_0x50eac1(0x16d)](_0x54d3ee=>_0x54d3ee['id']===_0x169f4a['currentSessionId']);if(!_0x3bdd91)throw new Error('Current\x20session\x20not\x20found.');if(_0x1db7b3[_0x50eac1(0x119)](_0x3bdd91[_0x50eac1(0xcc)],'completed')){console['log'](_0x1db7b3['PpOsO']);return;}if(_0x1db7b3[_0x50eac1(0x13f)](_0x3bdd91[_0x50eac1(0xcc)],_0x1db7b3['BLeAP']))throw new Error(_0x50eac1(0x125)+_0x3bdd91['status']);console['log'](_0x1db7b3['GoGqf']),await concludeSession(_0x228a2,_0x169f4a[_0x50eac1(0xdf)]),console['log']('\x0a✅\x20Session\x20'+_0x3bdd91['iteration']+_0x50eac1(0xcb)),console['log'](_0x50eac1(0x13d));}export async function featureSessions(_0x5ba7ae){const _0x4b2127=_0x48552e,_0x1a4501={'ChYkZ':function(_0x5a8907,_0x10324c){return _0x5a8907(_0x10324c);},'FzTqz':'completed'},_0x2f26fa=_0x5ba7ae||await getActiveFeatureId();if(!_0x2f26fa)throw new Error(_0x4b2127(0x15d));const _0x254fcc=await getFeature(_0x2f26fa);console['log'](_0x4b2127(0x17d)+_0x254fcc['name']+'\x0a');const {sessions:_0x181586}=await _0x1a4501[_0x4b2127(0x175)](listFeatureSessions,_0x2f26fa);if(_0x181586['length']===0x0){console['log'](_0x4b2127(0x1a2));return;}for(const _0x48ca02 of _0x181586){const _0x8ce256=_0x48ca02[_0x4b2127(0xcc)]===_0x1a4501['FzTqz']?'✅':_0x48ca02[_0x4b2127(0xcc)]==='in_progress'?'🔄':'▶️';console[_0x4b2127(0xff)](_0x8ce256+'\x20Session\x20'+_0x48ca02[_0x4b2127(0x147)]+'\x20('+_0x48ca02['id']+')'),console[_0x4b2127(0xff)](_0x4b2127(0x12d)+_0x48ca02[_0x4b2127(0xcc)]),console['log'](_0x4b2127(0xf7)+new Date(_0x48ca02[_0x4b2127(0x148)])['toLocaleString']()),_0x48ca02[_0x4b2127(0x19c)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x48ca02['completedAt'])[_0x4b2127(0xe1)]()),console[_0x4b2127(0xff)]('');}}export async function featureAddScenario(_0x365860,_0x27fce7){const _0x13a381=_0x48552e,_0x229828={'hANBS':function(_0x31412c,_0x10121d,_0x3f6e29){return _0x31412c(_0x10121d,_0x3f6e29);},'CMxJk':function(_0x7dceaa,_0x3df64f){return _0x7dceaa(_0x3df64f);}},_0xe05fd3=_0x27fce7||await getActiveFeatureId();if(!_0xe05fd3)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 _0x587dea=await getFeature(_0xe05fd3);if(_0x587dea['latestReview']&&!_0x587dea[_0x13a381(0x14d)][_0x13a381(0x128)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x587dea[_0x13a381(0x195)]);await _0x229828['hANBS'](createChecklistItem,_0xe05fd3,_0x365860);const _0x236b33=await _0x229828[_0x13a381(0x143)](getFeature,_0xe05fd3);console[_0x13a381(0xff)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x236b33,_0x236b33['checklistItems']);}export async function featureEditScenario(_0x9039b,_0x53549f){const _0xedc241=_0x48552e,_0x3bb430={'tDyet':_0xedc241(0x15e),'Aqles':function(_0x169bad,_0x5820e4){return _0x169bad(_0x5820e4);},'nkzja':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','bKlip':_0xedc241(0x18d),'uwfGZ':_0xedc241(0xee),'FJYuu':function(_0x268403,_0x7c171e){return _0x268403<_0x7c171e;},'umzwt':function(_0x4bd814,_0x261008){return _0x4bd814-_0x261008;},'qcQVA':function(_0x187c4b,_0x4b0c26){return _0x187c4b>=_0x4b0c26;},'ByhOG':function(_0x31b8e2,_0x3a093d){return _0x31b8e2+_0x3a093d;},'dSxZB':function(_0x160b62,_0x39e62a,_0x3c942a){return _0x160b62(_0x39e62a,_0x3c942a);}},_0x5f0fab=_0x53549f['id']||await getActiveFeatureId();!_0x5f0fab&&(console[_0xedc241(0xe2)](_0xedc241(0x15b)),console[_0xedc241(0xe2)](_0x3bb430['tDyet']),process[_0xedc241(0x136)](0x1));const _0xfc5693=await _0x3bb430['Aqles'](getFeature,_0x5f0fab);_0xfc5693[_0xedc241(0x14d)]&&!_0xfc5693[_0xedc241(0x14d)]['submittedAt']&&(console['error'](_0x3bb430[_0xedc241(0x144)]),console[_0xedc241(0xe2)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0xfc5693['dashboardUrl']),process[_0xedc241(0x136)](0x1));const _0x1cc31d=_0xfc5693[_0xedc241(0x156)]||[];_0x1cc31d[_0xedc241(0x188)]===0x0&&(console['error'](_0x3bb430['bKlip']),process[_0xedc241(0x136)](0x1));if(_0x53549f[_0xedc241(0x134)]===undefined){console[_0xedc241(0xe2)](_0x3bb430[_0xedc241(0x145)]),console[_0xedc241(0xff)]('\x0aAvailable\x20scenarios:');for(let _0x79ba26=0x0;_0x3bb430['FJYuu'](_0x79ba26,_0x1cc31d[_0xedc241(0x188)]);_0x79ba26++){console[_0xedc241(0xff)]('\x20\x20'+(_0x79ba26+0x1)+'.\x20'+_0x1cc31d[_0x79ba26][_0xedc241(0xe3)]);}process[_0xedc241(0x136)](0x1);}const _0x27fb25=_0x3bb430[_0xedc241(0xc8)](_0x53549f[_0xedc241(0x134)],0x1);if(_0x3bb430['FJYuu'](_0x27fb25,0x0)||_0x3bb430[_0xedc241(0x16a)](_0x27fb25,_0x1cc31d[_0xedc241(0x188)])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x53549f['scenario']+_0xedc241(0xde)+_0x1cc31d['length']+_0xedc241(0x164)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x4888b5=0x0;_0x3bb430[_0xedc241(0xd2)](_0x4888b5,_0x1cc31d['length']);_0x4888b5++){console['log']('\x20\x20'+_0x3bb430[_0xedc241(0xc7)](_0x4888b5,0x1)+'.\x20'+_0x1cc31d[_0x4888b5]['description']);}process[_0xedc241(0x136)](0x1);}const _0x3368d8=_0x1cc31d[_0x27fb25];await updateChecklistItem(_0x5f0fab,_0x3368d8['id'],{'description':_0x9039b});const _0x569e21=await getFeature(_0x5f0fab);console['log'](_0xedc241(0x184)),_0x3bb430[_0xedc241(0x158)](displayFeature,_0x569e21,_0x569e21[_0xedc241(0x156)]);}async function downloadFeedbackImage(_0x4c6414,_0x551731){const _0x4401fa=_0x48552e,_0x1909c0={'NozQw':function(_0x465a30){return _0x465a30();},'JZicb':_0x4401fa(0x15f),'dGxaH':function(_0x1bcefb,_0x57afd3,_0x1bee3a){return _0x1bcefb(_0x57afd3,_0x1bee3a);}};try{const _0x3e5949=join(_0x1909c0[_0x4401fa(0x11c)](getRangerDir),_0x1909c0['JZicb']);await mkdir(_0x3e5949,{'recursive':!![]});const _0x78eed3=_0x1909c0[_0x4401fa(0x16e)](join,_0x3e5949,_0x4401fa(0x106)+_0x551731+'.png'),_0x2e300f=await fetch(_0x4c6414);if(!_0x2e300f['ok'])return null;const _0x388cec=Buffer['from'](await _0x2e300f['arrayBuffer']());return await writeFile(_0x78eed3,_0x388cec),_0x78eed3;}catch{return null;}}export async function featureGetReview(_0x1ae7b2){const _0x12332b=_0x48552e,_0x4f484a={'GQYVK':function(_0x4d77ad,_0x5d5701){return _0x4d77ad(_0x5d5701);},'QCQoc':function(_0x43bbf6,_0x1d6e75){return _0x43bbf6(_0x1d6e75);},'npelk':function(_0x5f4338,_0x492bac){return _0x5f4338<_0x492bac;},'tpaTq':function(_0x759352,_0x39f6c2,_0x281046){return _0x759352(_0x39f6c2,_0x281046);},'yyVjM':function(_0x371a50,_0x1b2b1f){return _0x371a50+_0x1b2b1f;},'bnpmL':_0x12332b(0x141),'XbQML':_0x12332b(0x163)},_0x4ef99e=_0x1ae7b2||await getActiveFeatureId();if(!_0x4ef99e)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 _0x4ac40e=await _0x4f484a['GQYVK'](getFeature,_0x4ef99e),{items:_0xd7cdc5}=await _0x4f484a['QCQoc'](getActionItems,_0x4ef99e);console['log'](_0x12332b(0x199)+_0x4ac40e[_0x12332b(0x11e)]+'\x20('+_0x4ac40e['id']+')\x0a');if(_0xd7cdc5['length']===0x0){console[_0x12332b(0xff)](_0x12332b(0x169));return;}for(let _0x2b1964=0x0;_0x4f484a['npelk'](_0x2b1964,_0xd7cdc5[_0x12332b(0x188)]);_0x2b1964++){const _0x5a195d=_0xd7cdc5[_0x2b1964],_0x2dabe3=_0x5a195d['version']>0x1?_0x12332b(0xf3)+_0x5a195d['version']+')':'',_0x47e1e9=await _0x4f484a['tpaTq'](getItemFeedback,_0x4ef99e,_0x5a195d['id']);if(_0x47e1e9['unaddressedComments']['length']>0x0){console[_0x12332b(0xff)]('Scenario\x20'+_0x4f484a[_0x12332b(0x14e)](_0x2b1964,0x1)+_0x12332b(0xcd)+_0x5a195d['description']+'\x22'+_0x2dabe3+'\x20—\x20'+_0x47e1e9['unaddressedComments'][_0x12332b(0x188)]+_0x12332b(0x146));for(const _0x476172 of _0x47e1e9[_0x12332b(0x114)]){const _0x33906f=new Date(_0x476172['createdAt'])[_0x12332b(0x165)](_0x4f484a[_0x12332b(0x178)],{'month':'short','day':'numeric'}),_0x2e245c=_0x476172['authorName']||_0x476172['authorEmail']||_0x4f484a[_0x12332b(0x13c)];console['log']('\x20\x20💬\x20'+_0x2e245c+'\x20('+_0x33906f+_0x12332b(0xf1)+_0x476172['content']+'\x22');if(_0x476172[_0x12332b(0xda)]){const _0x145bd8=await downloadFeedbackImage(_0x476172[_0x12332b(0xda)],_0x476172['id']);_0x145bd8&&console[_0x12332b(0xff)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x145bd8);}if(_0x476172['domRef']){const _0x3e0c33=_0x476172['domRef']['selector'][_0x12332b(0x167)]('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x12332b(0x14a),_0x580e6e=_0x476172['domRef']['textContent']?'\x20\x22'+_0x476172[_0x12332b(0x11d)]['textContent'][_0x12332b(0x111)](0x0,0x3c)+'\x22':'';console[_0x12332b(0xff)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x3e0c33+'>'+_0x580e6e),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x476172['domRef'][_0x12332b(0x17f)]);}else{if(_0x476172['spatial']){const _0x3947be=_0x476172['spatial']['coordinates'];_0x476172[_0x12332b(0x11f)][_0x12332b(0x185)]===_0x12332b(0x12a)&&_0x3947be['length']>=0x2?console['log'](_0x12332b(0xdc)+_0x3947be[0x0]['toFixed'](0x2)+',\x20'+_0x3947be[0x1][_0x12332b(0x129)](0x2)+')'):console[_0x12332b(0xff)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x476172['spatial'][_0x12332b(0x185)]+_0x12332b(0x161)+_0x3947be[_0x12332b(0x124)](_0x14e697=>_0x14e697['toFixed'](0x2))[_0x12332b(0x172)](',\x20')+']');}}}if(_0x47e1e9['canonicalFlow']){console[_0x12332b(0xff)](_0x12332b(0xd0));for(const _0x3909f9 of _0x47e1e9[_0x12332b(0x135)][_0x12332b(0x167)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x3909f9);}}}else console['log']('Scenario\x20'+(_0x2b1964+0x1)+_0x12332b(0xcd)+_0x5a195d[_0x12332b(0xe3)]+'\x22'+_0x2dabe3+'\x20—\x20no\x20comments'),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x5bbb58){const _0x37bc61=_0x48552e,_0x399b94={'gwILx':function(_0x389e90){return _0x389e90();},'mXLeL':_0x37bc61(0xd4),'ZKRnc':_0x37bc61(0x140)},_0x4a43de=_0x5bbb58||await _0x399b94['gwILx'](getActiveFeatureId);if(!_0x4a43de)throw new Error(_0x399b94['mXLeL']);const _0x642097=await getFeature(_0x4a43de);await softDeleteFeature(_0x4a43de),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x642097[_0x37bc61(0x11e)]+'\x20('+_0x4a43de+')'),console[_0x37bc61(0xff)](_0x399b94['ZKRnc']+_0x4a43de);}function _0x1bb3(){const _0x3359fb=['Step\x20','178850GUWVgm','\x20\x20Expected\x20flow:','lXpQI','FJYuu','filter','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20scenario(s).','eSZzV','770BtRLKa','\x20feature\x20review(s)\x20found','fwGls','assetUrl','Xenqx','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','kQRpx','.\x20Feature\x20review\x20has\x20','currentSessionId','mkPRu','toLocaleString','error','description','GlEKC','119189GnikRJ','DudCu','list','verification_in_progress','push','EVhZY','pwefr','blockedItems','WvESO','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','gitRepoUrl','\x20\x20\x20','):\x20\x22','OGDrP','\x20(v','CsjRy','33991620ZltRyW','pipe','\x20\x20\x20Created:\x20','\x1b[1m','prompt','utf-8','stats','TfgNf','selected','\x20\x20\x20ID:\x20','log','screenshot','186pMklPE','github.com/','bZAEY','\x0a✅\x20Restored\x20feature\x20review:\x20','items','comment_','LrGHH','tWkGg','\x20\x20\x20Branch:\x20','qSIiG','\x20\x20\x20\x20\x20\x20Cancelled:\x20','IjVbJ','ORVly','trim','DXFHn','style','slice','stdout','320523UHHxUU','unaddressedComments','\x0aGenerating\x20report...','totalCount','browserSessionId','iBYDE','wfYEi','pendingItems','aIiEh','NozQw','domRef','name','spatial','GaOur','\x20incomplete','replace','round','map','Cannot\x20conclude\x20session\x20with\x20status:\x20','5096cdBiYI','\x20\x20\x20▶️\x20Started\x20session\x20','submittedAt','toFixed','point','stdin','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20\x20Status:\x20','rRIFw','currentBranch','\x20blocked','\x20\x20\x20Updated\x20branch\x20to:\x20','position','\x20\x20\x20Repository:\x20','scenario','canonicalFlow','exit','VBSMv','excludeScenarios','offset','7539165uawIaP','incomplete','XbQML','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','bsQET','BIoJX','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','en-US','8dogHHP','CMxJk','nkzja','uwfGZ','\x20unaddressed\x20comment(s)','iteration','createdAt','dMydk','element','\x0aAvailable\x20scenarios:','fdqgb','latestReview','yyVjM','\x20of\x20','1285968HxbKhk','has','any','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','location','ZBvkH','checklistItems','ucJCW','dSxZB','.md','storage','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ORNBU','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','feedback-images','blocked','\x20at\x20[','/api/v1/mcp/browser-sessions/','Unknown','\x20scenarios.','toLocaleDateString','\x20--limit\x20','split','warn','No\x20scenarios\x20found.','qcQVA','hCjGL','parentItemId','find','dGxaH','active-feature.txt','\x20\x20\x20Completed:\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','join','YLfCu','\x20--include-deleted','ChYkZ','gitBranch','InEYT','bnpmL','limit','\x0a✅\x20Session\x20is\x20already\x20completed.','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','assets','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','canceledReason','selector','TMoZz','sessionId','includeDeleted','bMWJb','\x0a✅\x20Scenario\x20updated','type','YfNkv','70tbOCfo','length','write','rchcY','OjAoU','rulIh','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','\x20\x20\x20\x20\x20\x20Blocked:\x20','reports','EzNOI','terminalReason','closed','incompleteItems','scenarios','dashboardUrl','blockedReason','agentResponse','EphBC','\x0a📋\x20Feedback\x20for:\x20','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','JkKlE','completedAt','26HGjOUb','\x20in\x20progress','output','in_progress','trimEnd','No\x20sessions\x20found.','qARiO','ready','gsQsA','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','env','tflCZ','version','notes','1|3|5|4|0|2','\x0aCreating\x20feature\x20review...','ByhOG','umzwt','git\x20rev-parse\x20--abbrev-ref\x20HEAD','incompleteReason','\x20concluded.','status',':\x20\x22'];_0x1bb3=function(){return _0x3359fb;};return _0x1bb3();}export async function featureRestore(_0x2011fb){const _0x3613c7=_0x48552e,_0x1649de={'WvESO':function(_0x4bc2eb,_0x2df1f0,_0x4623fa){return _0x4bc2eb(_0x2df1f0,_0x4623fa);}};await restoreFeature(_0x2011fb);const _0x1f4117=await getFeature(_0x2011fb);console['log'](_0x3613c7(0x104)+_0x1f4117[_0x3613c7(0x11e)]+'\x20('+_0x2011fb+')'),_0x1649de[_0x3613c7(0xed)](displayFeature,_0x1f4117,_0x1f4117['checklistItems']);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x14ad71,_0x3a1b17){const _0x2c15f9=_0x4bd6,_0x12d9b2=_0x14ad71();while(!![]){try{const _0x18fbfa=parseInt(_0x2c15f9(0x10f))/0x1*(parseInt(_0x2c15f9(0x112))/0x2)+parseInt(_0x2c15f9(0x10b))/0x3+parseInt(_0x2c15f9(0x11e))/0x4*(-parseInt(_0x2c15f9(0x117))/0x5)+-parseInt(_0x2c15f9(0x115))/0x6+-parseInt(_0x2c15f9(0x119))/0x7*(parseInt(_0x2c15f9(0x111))/0x8)+parseInt(_0x2c15f9(0x110))/0x9+-parseInt(_0x2c15f9(0x10a))/0xa*(-parseInt(_0x2c15f9(0x10c))/0xb);if(_0x18fbfa===_0x3a1b17)break;else _0x12d9b2['push'](_0x12d9b2['shift']());}catch(_0x1bcca8){_0x12d9b2['push'](_0x12d9b2['shift']());}}}(_0x35a4,0xe42b1));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x4bd6(_0xcf114e,_0x2caf7e){_0xcf114e=_0xcf114e-0x10a;const _0x35a419=_0x35a4();let _0x4bd6aa=_0x35a419[_0xcf114e];return _0x4bd6aa;}function _0x35a4(){const _0x93f53a=['3238NyFrYX','5168592qJGzCJ','88qeclAy','964GvKGYz','exit','oJbZg','9753114RNgkpf','Unknown\x20hook:\x20','174855qYKrFG','Valid\x20hooks:\x20','1037757uLvGnD','SIGHUP','wBQhF','wqdtF','error','44mGeqUo','20ExlZxJ','103200RbVfOz','13233737rPccOa','once','SIGTERM'];_0x35a4=function(){return _0x93f53a;};return _0x35a4();}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x2f1b55=_0x4bd6,_0x146d62={'wqdtF':'SIGINT','wBQhF':_0x2f1b55(0x10e)};if(cancellationHandlersInstalled)return;const _0x15496e=()=>{const _0x8c9875=_0x2f1b55;process[_0x8c9875(0x113)](0x0);};process['once'](_0x146d62[_0x2f1b55(0x11c)],_0x15496e),process[_0x2f1b55(0x10d)](_0x146d62[_0x2f1b55(0x11b)],_0x15496e),process[_0x2f1b55(0x10d)](_0x2f1b55(0x11a),_0x15496e),cancellationHandlersInstalled=!![];}export async function hook(_0x13630e,_0x54552d){const _0x4848df=_0x4bd6,_0x785774={'oJbZg':function(_0x58bc85,_0x4b1b99){return _0x58bc85(_0x4b1b99);}};installCancellationHandlers();const _0x441510=HOOKS[_0x13630e];if(!_0x441510){const _0x62a41a=Object['keys'](HOOKS)['join'](',\x20');console[_0x4848df(0x11d)](_0x4848df(0x116)+_0x13630e),console[_0x4848df(0x11d)](_0x4848df(0x118)+_0x62a41a),process[_0x4848df(0x113)](0x1);}await _0x785774[_0x4848df(0x114)](_0x441510,_0x54552d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x48fab5,_0x1dc38c){const _0xeee61b=_0x244b,_0x438ea3=_0x48fab5();while(!![]){try{const _0x4f3a9e=-parseInt(_0xeee61b(0x154))/0x1+parseInt(_0xeee61b(0x15b))/0x2+-parseInt(_0xeee61b(0x158))/0x3*(parseInt(_0xeee61b(0x153))/0x4)+-parseInt(_0xeee61b(0x156))/0x5+-parseInt(_0xeee61b(0x15a))/0x6+-parseInt(_0xeee61b(0x15c))/0x7+parseInt(_0xeee61b(0x157))/0x8;if(_0x4f3a9e===_0x1dc38c)break;else _0x438ea3['push'](_0x438ea3['shift']());}catch(_0x3e8118){_0x438ea3['push'](_0x438ea3['shift']());}}}(_0x18f1,0xeab4c));function _0x244b(_0x5b748b,_0x18b72b){_0x5b748b=_0x5b748b-0x153;const _0x18f1e1=_0x18f1();let _0x244bd8=_0x18f1e1[_0x5b748b];return _0x244bd8;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x18f1(){const _0x55fdc1=['oZODm','4500642xxVntj','2129756yelmoP','7344113VinKjI','2341516KkRYwy','707433dwhkOd','log','6170890EEmoBP','33781872nXpkkC','3AYIKIg'];_0x18f1=function(){return _0x55fdc1;};return _0x18f1();}const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0x202ebd=_0x244b,_0x1cd248={'oZODm':function(_0x4eb9dc,_0x188a30){return _0x4eb9dc(_0x188a30);}},_0x21d2d5=await readHookInput(),_0xade9c2=_0x21d2d5?.['session_id'];if(!_0xade9c2)return;if(isSessionEnabled(_0xade9c2)||_0x1cd248[_0x202ebd(0x159)](hasSessionBeenPrompted,_0xade9c2))return;_0x1cd248['oZODm'](markSessionPrompted,_0xade9c2),console[_0x202ebd(0x155)](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3aaf0a,_0x36d8f7){const _0x2bd149=_0x74da,_0x40b898=_0x3aaf0a();while(!![]){try{const _0x513c1c=parseInt(_0x2bd149(0xe2))/0x1+parseInt(_0x2bd149(0xe0))/0x2*(parseInt(_0x2bd149(0xd8))/0x3)+-parseInt(_0x2bd149(0xda))/0x4*(parseInt(_0x2bd149(0xdd))/0x5)+-parseInt(_0x2bd149(0xe4))/0x6+parseInt(_0x2bd149(0xd9))/0x7+-parseInt(_0x2bd149(0xdb))/0x8*(parseInt(_0x2bd149(0xe8))/0x9)+-parseInt(_0x2bd149(0xdf))/0xa;if(_0x513c1c===_0x36d8f7)break;else _0x40b898['push'](_0x40b898['shift']());}catch(_0x3dbd38){_0x40b898['push'](_0x40b898['shift']());}}}(_0x5dc3,0x31a50));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x74da(_0x39ded9,_0x5b4fff){_0x39ded9=_0x39ded9-0xd7;const _0x5dc326=_0x5dc3();let _0x74dad1=_0x5dc326[_0x39ded9];return _0x74dad1;}export async function disable(_0x38d201){const _0x393031=_0x74da,_0x3d8397={'YBeHY':function(_0x32046d,_0x3bf70b){return _0x32046d(_0x3bf70b);},'pXRdR':function(_0x1ef71d,_0x2cddc3){return _0x1ef71d!==_0x2cddc3;},'gpZuo':_0x393031(0xdc),'VyBlg':_0x393031(0xe5),'UqVbm':function(_0x30a362,_0x3389e4){return _0x30a362!==_0x3389e4;}},_0x9358b6=_0x38d201||process['env'][_0x393031(0xe1)]||'';_0x9358b6&&_0x3d8397['YBeHY'](disableSession,_0x9358b6);const _0xdd8c=getCurrentBranch();_0xdd8c&&_0xdd8c!==_0x393031(0xe5)&&_0x3d8397[_0x393031(0xe6)](_0xdd8c,_0x3d8397['gpZuo'])&&disableBranch(_0xdd8c),printBlock(_0x393031(0xd7)+(_0xdd8c&&_0xdd8c!==_0x3d8397[_0x393031(0xe7)]&&_0x3d8397['UqVbm'](_0xdd8c,_0x3d8397['gpZuo'])?_0x393031(0xde)+_0xdd8c+'\x27':'')+_0x393031(0xe3));}function _0x5dc3(){const _0x46f06b=['#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','6PoNKWi','1370033QClPhs','29688anZvSn','72Buvowz','master','10mSYzjI','\x20and\x20branch\x20\x27','248510ewSQiM','288394PYQlaX','CLAUDE_SESSION_ID','385459eaJMbs','.\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`.','1967586LNqzie','main','pXRdR','VyBlg','298602PAEccQ'];_0x5dc3=function(){return _0x46f06b;};return _0x5dc3();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x497e18,_0x4f6b82){const _0x22ac72=_0x5977,_0x1e13ce=_0x497e18();while(!![]){try{const _0x4600f4=parseInt(_0x22ac72(0xc7))/0x1+parseInt(_0x22ac72(0xc8))/0x2+parseInt(_0x22ac72(0xc2))/0x3+parseInt(_0x22ac72(0xc1))/0x4+parseInt(_0x22ac72(0xc9))/0x5+parseInt(_0x22ac72(0xc3))/0x6+-parseInt(_0x22ac72(0xc4))/0x7;if(_0x4600f4===_0x4f6b82)break;else _0x1e13ce['push'](_0x1e13ce['shift']());}catch(_0x57c6b1){_0x1e13ce['push'](_0x1e13ce['shift']());}}}(_0x3e35,0xaa523));function _0x3e35(){const _0x775a6=['985144foZFWt','3934848ZAKpdB','6419058qIPyFU','28074151vqkVxD','\x0a\x0a**Branch\x20\x27','ranger\x20setup','946809rOvBBh','2251288tYObSr','40150akPSUg','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','#\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`','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','bvCPs','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','env','BTOLF'];_0x3e35=function(){return _0x775a6;};return _0x3e35();}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x5977(_0x667935,_0x2c4ab7){_0x667935=_0x667935-0xbf;const _0x3e35f0=_0x3e35();let _0x5977c6=_0x3e35f0[_0x667935];return _0x5977c6;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x4e492c){const _0x58417e=_0x5977,_0xc45ca9={'DRLwy':_0x58417e(0xc6),'uinXP':_0x58417e(0xcc),'NQVqO':_0x58417e(0xcf),'BTOLF':function(_0x158f1b,_0x3f657c){return _0x158f1b(_0x3f657c);},'oHsee':'main','bvCPs':function(_0x5c60e8,_0x5bc8db){return _0x5c60e8!==_0x5bc8db;}},_0x169dde=_0x4e492c||process[_0x58417e(0xbf)]['CLAUDE_SESSION_ID']||'',_0x2cbc69=Boolean(_0x4e492c),_0x3f988d=await getToken();if(!_0x3f988d){const _0x586837=_0x2cbc69?'ranger\x20setup\x20--opencode':_0xc45ca9['DRLwy'],_0x3a0122=_0x2cbc69?_0xc45ca9['uinXP']:_0xc45ca9['NQVqO'];_0xc45ca9[_0x58417e(0xc0)](printBlock,_0x58417e(0xcb)+_0x586837+_0x58417e(0xca)+_0x3a0122);return;}try{await update();}catch{}_0x169dde&&_0xc45ca9['BTOLF'](enableSession,_0x169dde);const _0x5f5cde=getCurrentBranch(),_0x26f10f=_0x5f5cde&&_0x5f5cde!==_0xc45ca9['oHsee']&&_0xc45ca9[_0x58417e(0xcd)](_0x5f5cde,'master')?_0x58417e(0xc5)+_0x5f5cde+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x20a4b1=getRangerSkillContent();printBlock('#\x20RANGER\x20ENABLED'+_0x26f10f+_0x58417e(0xce)+_0x20a4b1+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x2cfb(){const _0x4312ea=['622392fShnbe','127vqZSZh','1523490EQNanL','1155123pKiBJe','1641227fiJavx','1613854sMlDLJ','tqwPZ','436863SJZvWM','928heQvUs','5JWRukL','6VfLZRy','8kajifL'];_0x2cfb=function(){return _0x4312ea;};return _0x2cfb();}function _0x1ddf(_0xbb7a11,_0x4f9bb3){_0xbb7a11=_0xbb7a11-0x192;const _0x2cfbba=_0x2cfb();let _0x1ddf68=_0x2cfbba[_0xbb7a11];return _0x1ddf68;}(function(_0x5c5d65,_0xdda6e2){const _0xcc30a7=_0x1ddf,_0x1eb0e1=_0x5c5d65();while(!![]){try{const _0x4a6a12=-parseInt(_0xcc30a7(0x19b))/0x1*(parseInt(_0xcc30a7(0x196))/0x2)+parseInt(_0xcc30a7(0x195))/0x3+-parseInt(_0xcc30a7(0x19a))/0x4*(-parseInt(_0xcc30a7(0x197))/0x5)+-parseInt(_0xcc30a7(0x198))/0x6*(parseInt(_0xcc30a7(0x192))/0x7)+parseInt(_0xcc30a7(0x199))/0x8*(parseInt(_0xcc30a7(0x19d))/0x9)+parseInt(_0xcc30a7(0x19c))/0xa+-parseInt(_0xcc30a7(0x193))/0xb;if(_0x4a6a12===_0xdda6e2)break;else _0x1eb0e1['push'](_0x1eb0e1['shift']());}catch(_0xc54a78){_0x1eb0e1['push'](_0x1eb0e1['shift']());}}}(_0x2cfb,0x229f4));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x1c1c74){const _0x1e1c2f=_0x1ddf,_0x39f900={'tqwPZ':function(_0x2df482,_0x1e40a0){return _0x2df482(_0x1e40a0);}},_0x5a18d7=await _0x39f900[_0x1e1c2f(0x194)](getEnabledSessionId,_0x1c1c74);if(!_0x5a18d7)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2736c3,_0x3aa1d7){var _0x993aba=_0x23b9,_0x34162a=_0x2736c3();while(!![]){try{var _0x9c642=parseInt(_0x993aba(0x1b0))/0x1+parseInt(_0x993aba(0x1a8))/0x2+-parseInt(_0x993aba(0x1ad))/0x3*(parseInt(_0x993aba(0x1ac))/0x4)+parseInt(_0x993aba(0x1a9))/0x5+parseInt(_0x993aba(0x1ae))/0x6+parseInt(_0x993aba(0x1ab))/0x7*(parseInt(_0x993aba(0x1aa))/0x8)+parseInt(_0x993aba(0x1af))/0x9*(-parseInt(_0x993aba(0x1a7))/0xa);if(_0x9c642===_0x3aa1d7)break;else _0x34162a['push'](_0x34162a['shift']());}catch(_0x4dda52){_0x34162a['push'](_0x34162a['shift']());}}}(_0x5469,0xa82ea));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';function _0x23b9(_0x4054ed,_0x3632c3){_0x4054ed=_0x4054ed-0x1a7;var _0x5469d5=_0x5469();var _0x23b9ee=_0x5469d5[_0x4054ed];return _0x23b9ee;}function _0x5469(){var _0x5404b9=['95819aNkCFJ','10ltySvw','2376248yntsuN','5338780NuMlYy','8929456KpvnHR','7OklXsy','4DjvIwc','2226081CvUEmf','6598068UnmEjW','28229922lcuiBe'];_0x5469=function(){return _0x5404b9;};return _0x5469();}export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x1e4e(_0x336f80,_0x25b314){_0x336f80=_0x336f80-0x1ce;const _0x356b3d=_0x356b();let _0x1e4e02=_0x356b3d[_0x336f80];return _0x1e4e02;}(function(_0x13ca5d,_0x545320){const _0x5add18=_0x1e4e,_0x554702=_0x13ca5d();while(!![]){try{const _0x74a88c=parseInt(_0x5add18(0x1d6))/0x1+parseInt(_0x5add18(0x1d1))/0x2+-parseInt(_0x5add18(0x1d3))/0x3*(-parseInt(_0x5add18(0x1d0))/0x4)+-parseInt(_0x5add18(0x1ce))/0x5+parseInt(_0x5add18(0x1d4))/0x6+-parseInt(_0x5add18(0x1db))/0x7+parseInt(_0x5add18(0x1cf))/0x8*(-parseInt(_0x5add18(0x1da))/0x9);if(_0x74a88c===_0x545320)break;else _0x554702['push'](_0x554702['shift']());}catch(_0xeb6541){_0x554702['push'](_0x554702['shift']());}}}(_0x356b,0xe84bb));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x226c8e){console['log'](_0x226c8e);}export async function readHookInput(){const _0x55dadb=_0x1e4e;let _0x1e5d50='';try{for await(const _0xb9dd2a of process['stdin']){_0x1e5d50+=_0xb9dd2a;}}catch{return null;}if(!_0x1e5d50[_0x55dadb(0x1d7)]())return null;try{return JSON[_0x55dadb(0x1d5)](_0x1e5d50);}catch{return null;}}export async function getEnabledSessionId(_0x28dfc7){const _0x39f755=_0x1e4e,_0x24a734={'xjQrl':function(_0x971550){return _0x971550();},'oDeyg':function(_0x540d68,_0x3559dc){return _0x540d68(_0x3559dc);}};if(_0x28dfc7)return isSessionEnabled(_0x28dfc7)?_0x28dfc7:null;const _0x33f906=await _0x24a734['xjQrl'](readHookInput),_0x1d9e41=_0x33f906?.['session_id'];if(!_0x1d9e41||!_0x24a734[_0x39f755(0x1d9)](isSessionEnabled,_0x1d9e41))return null;return _0x1d9e41;}function _0x356b(){const _0x105739=['8895544LeiNSe','1133270dCqzss','40wiNnYS','1176956aeNAmE','663078cUHWea','pbSXc','9KcbWsW','4394460nQhzKR','parse','1301318imyAti','trim','WsKCE','oDeyg','1438299tXzUbo'];_0x356b=function(){return _0x105739;};return _0x356b();}export async function getEnabledHookContext(_0x3b3800){const _0x17b259=_0x1e4e,_0x3fa271={'WsKCE':function(_0x2afdca,_0x55361f){return _0x2afdca(_0x55361f);},'pbSXc':function(_0x1fcab1){return _0x1fcab1();}};if(_0x3b3800){if(!_0x3fa271[_0x17b259(0x1d8)](isSessionEnabled,_0x3b3800))return null;return{'sessionId':_0x3b3800,'input':{'session_id':_0x3b3800}};}const _0x20eff9=await _0x3fa271[_0x17b259(0x1d2)](readHookInput),_0x311bc8=_0x20eff9?.['session_id'];if(!_0x311bc8||!isSessionEnabled(_0x311bc8))return null;return{'sessionId':_0x311bc8,'input':_0x20eff9};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
(function(_0x17281b,_0x44136b){const _0x474788=_0x419c,_0x1deae8=_0x17281b();while(!![]){try{const _0x57b920=parseInt(_0x474788(0x169))/0x1+parseInt(_0x474788(0x168))/0x2+parseInt(_0x474788(0x171))/0x3+parseInt(_0x474788(0x16b))/0x4*(parseInt(_0x474788(0x16f))/0x5)+parseInt(_0x474788(0x167))/0x6*(parseInt(_0x474788(0x170))/0x7)+parseInt(_0x474788(0x16a))/0x8+-parseInt(_0x474788(0x165))/0x9*(parseInt(_0x474788(0x16c))/0xa);if(_0x57b920===_0x44136b)break;else _0x1deae8['push'](_0x1deae8['shift']());}catch(_0x13fa2d){_0x1deae8['push'](_0x1deae8['shift']());}}}(_0x5834,0x68ecf));import{printBlock,getEnabledHookContext}from'./output.js';function _0x419c(_0x21bc77,_0x45499c){_0x21bc77=_0x21bc77-0x165;const _0x5834df=_0x5834();let _0x419c19=_0x5834df[_0x21bc77];return _0x419c19;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x5834(){const _0x3c6b2b=['2376tWeSPc','170PNkmjH','plan','sessionId','185KLYbAO','7Sjmjta','1445352PWjwNk','1004373nmsPBY','===\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===','807654jGllaM','1530548mUdHCi','304458KHGQbm','4950568NSJXwx'];_0x5834=function(){return _0x3c6b2b;};return _0x5834();}export async function planReminder(_0x542893){const _0x296dfa=_0x419c,_0x16296b={'CvWpP':function(_0xb7f1bf,_0x54c5b5){return _0xb7f1bf(_0x54c5b5);}},_0x28a261=await _0x16296b['CvWpP'](getEnabledHookContext,_0x542893);if(!_0x28a261)return;if(_0x28a261['input']['permission_mode']!==_0x296dfa(0x16d))return;if(!shouldShowPlanReminder(_0x28a261[_0x296dfa(0x16e)]))return;printBlock(_0x296dfa(0x166));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x350e(_0x1fa10b,_0x5bf3e8){_0x1fa10b=_0x1fa10b-0xbc;const _0x4343f5=_0x4343();let _0x350e8a=_0x4343f5[_0x1fa10b];return _0x350e8a;}(function(_0x400e76,_0x3eff04){const _0x2bb5df=_0x350e,_0x2e76d9=_0x400e76();while(!![]){try{const _0x1a2981=-parseInt(_0x2bb5df(0xc6))/0x1+parseInt(_0x2bb5df(0xbe))/0x2*(-parseInt(_0x2bb5df(0xc2))/0x3)+parseInt(_0x2bb5df(0xc3))/0x4+-parseInt(_0x2bb5df(0xc1))/0x5*(-parseInt(_0x2bb5df(0xc0))/0x6)+-parseInt(_0x2bb5df(0xc5))/0x7+parseInt(_0x2bb5df(0xbf))/0x8+-parseInt(_0x2bb5df(0xc4))/0x9*(-parseInt(_0x2bb5df(0xbc))/0xa);if(_0x1a2981===_0x3eff04)break;else _0x2e76d9['push'](_0x2e76d9['shift']());}catch(_0x510ba4){_0x2e76d9['push'](_0x2e76d9['shift']());}}}(_0x4343,0x76929));function _0x4343(){const _0x258dfe=['351306bPfMOf','knIam','12862730vTDmoz','YoJMv','2lbWhUG','1555096DcXCnT','1578HSqJjT','4105tXKdOr','1446186AcjWfE','798864kgWoow','9hUQPNl','4040806zYKbqt'];_0x4343=function(){return _0x258dfe;};return _0x4343();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x5c51f9){const _0x36130d=_0x350e,_0x58d7cc={'knIam':function(_0x6ff211,_0x26ad3c){return _0x6ff211(_0x26ad3c);},'YoJMv':function(_0x10d7b3,_0x246ff0){return _0x10d7b3(_0x246ff0);}},_0x5087aa=await _0x58d7cc[_0x36130d(0xc7)](getEnabledSessionId,_0x5c51f9);if(!_0x5087aa)return;_0x58d7cc[_0x36130d(0xbd)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x1438(_0x407677,_0x25f3d3){_0x407677=_0x407677-0x194;const _0x319b71=_0x319b();let _0x143859=_0x319b71[_0x407677];return _0x143859;}(function(_0x2bb063,_0x337daf){const _0x3fe622=_0x1438,_0x35a183=_0x2bb063();while(!![]){try{const _0x4e5e16=parseInt(_0x3fe622(0x196))/0x1+parseInt(_0x3fe622(0x19d))/0x2+parseInt(_0x3fe622(0x19f))/0x3*(parseInt(_0x3fe622(0x19a))/0x4)+parseInt(_0x3fe622(0x198))/0x5+parseInt(_0x3fe622(0x195))/0x6*(parseInt(_0x3fe622(0x19c))/0x7)+parseInt(_0x3fe622(0x199))/0x8+parseInt(_0x3fe622(0x19b))/0x9*(-parseInt(_0x3fe622(0x194))/0xa);if(_0x4e5e16===_0x337daf)break;else _0x35a183['push'](_0x35a183['shift']());}catch(_0x2436e9){_0x35a183['push'](_0x35a183['shift']());}}}(_0x319b,0x44957));function _0x319b(){const _0x593478=['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.','1881340fsFPvC','1795496XaXkeL','244YrDSpQ','5514417LrHaKA','7xRArnx','986948WJpBRo','stringify','22476tLBmyW','PostToolUse','30JuFhZj','3129348jfsEXa','46309RtFNQy'];_0x319b=function(){return _0x593478;};return _0x319b();}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x155535){const _0x22c939=_0x1438,_0x46895b={'ERrpZ':function(_0x36dc1e){return _0x36dc1e();},'RrBwL':_0x22c939(0x1a0)},_0x2d03de=await getEnabledSessionId(_0x155535);if(!_0x2d03de)return;updateBranchTracking(_0x2d03de);const _0x244d4a=await _0x46895b['ERrpZ'](getToken);if(!_0x244d4a)return;const _0x2243ad=getSessionEntry(_0x2d03de);if(_0x2243ad){const _0x14a01f={'hookSpecificOutput':{'hookEventName':_0x22c939(0x1a0),'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON['stringify'](_0x14a01f));return;}const _0x54b5d2={'hookSpecificOutput':{'hookEventName':_0x46895b['RrBwL'],'additionalContext':_0x22c939(0x197)}};console['log'](JSON[_0x22c939(0x19e)](_0x54b5d2));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x1e2a(){const _0x13f0e8=['3625152fLzFal','557268DeniYJ','7WiRxXL','===\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`.','7105505stqrVq','2047213TLkwxY','6409352CCROTT','144636bDVGNY','131126ciEajX'];_0x1e2a=function(){return _0x13f0e8;};return _0x1e2a();}function _0x3b46(_0x507b97,_0x3aa787){_0x507b97=_0x507b97-0x151;const _0x1e2aa0=_0x1e2a();let _0x3b46a0=_0x1e2aa0[_0x507b97];return _0x3b46a0;}(function(_0x407dcc,_0x333f18){const _0x141308=_0x3b46,_0x526baf=_0x407dcc();while(!![]){try{const _0x405c05=parseInt(_0x141308(0x155))/0x1*(-parseInt(_0x141308(0x152))/0x2)+parseInt(_0x141308(0x153))/0x3+-parseInt(_0x141308(0x154))/0x4+parseInt(_0x141308(0x157))/0x5+-parseInt(_0x141308(0x151))/0x6+-parseInt(_0x141308(0x158))/0x7+-parseInt(_0x141308(0x159))/0x8;if(_0x405c05===_0x333f18)break;else _0x526baf['push'](_0x526baf['shift']());}catch(_0x4da5eb){_0x526baf['push'](_0x526baf['shift']());}}}(_0x1e2a,0xdf055));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x4ac8a1){const _0x5d5da3=_0x3b46,_0x2204e0={'Xdccm':function(_0x3ac514,_0x2c6452){return _0x3ac514(_0x2c6452);}},_0x3cd629=await getEnabledSessionId(_0x4ac8a1);if(!_0x3cd629)return;try{const _0x525f1f=await getToken();if(!_0x525f1f)return;_0x2204e0['Xdccm'](printBlock,_0x5d5da3(0x156));}catch{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x115185,_0x3252e9){const _0x94d44=_0x403f,_0x3a1e71=_0x115185();while(!![]){try{const _0x4312d6=parseInt(_0x94d44(0x1b8))/0x1*(parseInt(_0x94d44(0x1be))/0x2)+parseInt(_0x94d44(0x1bd))/0x3+-parseInt(_0x94d44(0x1bb))/0x4+parseInt(_0x94d44(0x1b6))/0x5*(parseInt(_0x94d44(0x1bc))/0x6)+parseInt(_0x94d44(0x1b5))/0x7*(parseInt(_0x94d44(0x1b9))/0x8)+parseInt(_0x94d44(0x1b3))/0x9+parseInt(_0x94d44(0x1b4))/0xa*(-parseInt(_0x94d44(0x1ba))/0xb);if(_0x4312d6===_0x3252e9)break;else _0x3a1e71['push'](_0x3a1e71['shift']());}catch(_0x449423){_0x3a1e71['push'](_0x3a1e71['shift']());}}}(_0x2432,0x3e302));function _0x403f(_0x12a101,_0x5d2cbc){_0x12a101=_0x12a101-0x1b3;const _0x24322f=_0x2432();let _0x403fcf=_0x24322f[_0x12a101];return _0x403fcf;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x34b942){const _0x21371c=_0x403f,_0x5c0991={'MsJWc':function(_0x2bf542,_0x5e96da){return _0x2bf542===_0x5e96da;}},_0x5b5f94=process['env']['CLAUDE_SESSION_ID'];let _0x586d01=_0x34b942,_0x5177d6;if(!_0x34b942){if(_0x5b5f94&&!isSessionEnabled(_0x5b5f94))return;const _0x3321fe=await readHookInput();_0x586d01=_0x3321fe?.[_0x21371c(0x1bf)]||_0x5b5f94,_0x5177d6=_0x3321fe?.['reason'];}if(!_0x586d01)return;_0x5c0991['MsJWc'](_0x5177d6,_0x21371c(0x1b7))&&recordEnabledSessionCleared(_0x586d01);}function _0x2432(){const _0x1a255f=['120728jaCxUH','6JJpfss','295638DKgnkD','164tdYKGX','session_id','3357585STYeKK','285130PDpBft','287wpbYyT','2509735kHogDZ','clear','241qNyjsL','95440mLLGcI','462aHCNGZ'];_0x2432=function(){return _0x1a255f;};return _0x2432();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x374c(_0x19977e,_0x395994){_0x19977e=_0x19977e-0x191;const _0x26b6c5=_0x26b6();let _0x374cc5=_0x26b6c5[_0x19977e];return _0x374cc5;}(function(_0x47c68a,_0x14dd0e){const _0x593726=_0x374c,_0x31a220=_0x47c68a();while(!![]){try{const _0x5c6002=-parseInt(_0x593726(0x19c))/0x1*(parseInt(_0x593726(0x198))/0x2)+parseInt(_0x593726(0x194))/0x3+parseInt(_0x593726(0x197))/0x4*(parseInt(_0x593726(0x1a7))/0x5)+parseInt(_0x593726(0x19f))/0x6*(-parseInt(_0x593726(0x1a8))/0x7)+parseInt(_0x593726(0x1a9))/0x8+-parseInt(_0x593726(0x199))/0x9*(parseInt(_0x593726(0x196))/0xa)+parseInt(_0x593726(0x1a1))/0xb;if(_0x5c6002===_0x14dd0e)break;else _0x31a220['push'](_0x31a220['shift']());}catch(_0x33d75d){_0x31a220['push'](_0x31a220['shift']());}}}(_0x26b6,0x379ac));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';function _0x26b6(){const _0x3a33f0=['431379GFtrko','source','10sWyBIN','529468pZrgqI','49558GBEQgd','1787391fkxhGV','master','success','7BqyAFt','hook:session-start','JtavM','12fiHOre','log','4243294tMTtqg','main','export\x20CLAUDE_SESSION_ID=\x22','trackCommandEnd','stringify','eRcak','5xHiTuy','234871MLLLkD','40000hQaJwE','\x20(Branch:\x20','env','FXXcq','cvLlj','JOSPH'];_0x26b6=function(){return _0x3a33f0;};return _0x26b6();}import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';export async function sessionStart(_0x5e6be1){const _0x40c653=_0x374c,_0x579947={'xzNwI':function(_0x2a83a6,_0x57078f){return _0x2a83a6||_0x57078f;},'eRcak':'session_id','cvLlj':_0x40c653(0x195),'BZoqv':function(_0xf5bd60,_0x13ea3f,_0xd887d0){return _0xf5bd60(_0x13ea3f,_0xd887d0);},'JOSPH':function(_0x355df3,_0x255ac3){return _0x355df3(_0x255ac3);},'JtavM':function(_0x48bad9,_0x10805c){return _0x48bad9(_0x10805c);},'ldNqS':_0x40c653(0x1a2),'FXXcq':_0x40c653(0x19a)};let _0x254345=_0x579947['xzNwI'](_0x5e6be1,''),_0x4c2d41;if(!_0x5e6be1){let _0x16a934='';for await(const _0x493978 of process['stdin']){_0x16a934+=_0x493978;}try{const _0x56ee2a=JSON['parse'](_0x16a934);_0x254345=_0x56ee2a[_0x579947[_0x40c653(0x1a6)]]||'',_0x4c2d41=_0x56ee2a[_0x579947[_0x40c653(0x192)]];}catch{}const _0x34af66=process[_0x40c653(0x1ab)]['CLAUDE_ENV_FILE'];if(_0x34af66&&_0x254345)try{await _0x579947['BZoqv'](appendFile,_0x34af66,_0x40c653(0x1a3)+_0x254345+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x254345){shouldAutoEnableAfterClear(_0x4c2d41)&&autoEnableAfterClear(_0x254345);_0x579947['JOSPH'](initBranchTracking,_0x254345);const _0x1352be=_0x579947[_0x40c653(0x19e)](isSessionEnabled,_0x254345);try{const _0x2fe50d=_0x579947[_0x40c653(0x193)](createTelemetryCollector,_0x40c653(0x19d));await _0x2fe50d['trackCommandStart']({'sessionId':_0x254345,'hooksEnabled':_0x1352be}),await _0x2fe50d[_0x40c653(0x1a4)](_0x40c653(0x19b));}catch{}if(_0x1352be){const _0x42ce69=getCurrentBranch(),_0x1420de=_0x42ce69&&_0x42ce69!==_0x579947['ldNqS']&&_0x42ce69!==_0x579947[_0x40c653(0x191)]?_0x40c653(0x1aa)+_0x42ce69+')':'',_0x58226f={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x1420de}};console[_0x40c653(0x1a0)](JSON[_0x40c653(0x1a5)](_0x58226f));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x597111,_0x499301){const _0xab2920=_0x43be,_0x140bbe=_0x597111();while(!![]){try{const _0x5b34a5=parseInt(_0xab2920(0x11c))/0x1*(-parseInt(_0xab2920(0x12e))/0x2)+-parseInt(_0xab2920(0x119))/0x3*(parseInt(_0xab2920(0x10d))/0x4)+parseInt(_0xab2920(0x125))/0x5*(-parseInt(_0xab2920(0x112))/0x6)+-parseInt(_0xab2920(0x117))/0x7+parseInt(_0xab2920(0x12c))/0x8*(parseInt(_0xab2920(0x11d))/0x9)+parseInt(_0xab2920(0x12a))/0xa*(parseInt(_0xab2920(0x123))/0xb)+parseInt(_0xab2920(0x12b))/0xc*(parseInt(_0xab2920(0x115))/0xd);if(_0x5b34a5===_0x499301)break;else _0x140bbe['push'](_0x140bbe['shift']());}catch(_0x3757bf){_0x140bbe['push'](_0x140bbe['shift']());}}}(_0x42df,0x51537));function _0x43be(_0xf89a52,_0x3a4168){_0xf89a52=_0xf89a52-0x10d;const _0x42dfe7=_0x42df();let _0x43be44=_0x42dfe7[_0xf89a52];return _0x43be44;}import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';function _0x42df(){const _0x226f0f=['NejNE','679461YQiFzc','Stop','incomplete','3ULksXL','9yBvoAI','YRoLW','trackCommandStart','sDUHS','geQTs','some','396UFJAtv','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','5CPOypz','OshPi','checklistItems','hook:stop','closed','116810NQOqBu','144WFCclS','2112008yErdPt','blocked','30586kJzMYY','4tRlVpb','sessionId','verified','OTBkx','featureId','3097818etHJYQ','currentSessionId','stringify','499642fSKxNY','status','167615KXSzyk'];_0x42df=function(){return _0x226f0f;};return _0x42df();}import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x1e58c3){const _0x226aa3=_0x43be,_0x48370d={'OshPi':function(_0x2475c7,_0x5aad8e){return _0x2475c7(_0x5aad8e);},'NejNE':function(_0x160a3f,_0x41ebfd,_0x101844,_0xd8da2a){return _0x160a3f(_0x41ebfd,_0x101844,_0xd8da2a);},'sDUHS':function(_0x7ccda2){return _0x7ccda2();},'geQTs':function(_0x3702b7,_0xadb8d9){return _0x3702b7&&_0xadb8d9;},'tBYNQ':function(_0x55834e,_0x1f52ec){return _0x55834e(_0x1f52ec);},'OTBkx':_0x226aa3(0x11a),'YRoLW':function(_0x45874b,_0x28ca02,_0x25defd,_0x154c87){return _0x45874b(_0x28ca02,_0x25defd,_0x154c87);}},_0x1d131f=await _0x48370d[_0x226aa3(0x126)](getEnabledHookContext,_0x1e58c3),_0x5d09d4=_0x1d131f?.[_0x226aa3(0x10e)]??null;let _0x2040b2=!![];if(!_0x5d09d4){await _0x48370d[_0x226aa3(0x118)](trackStop,_0x5d09d4,![],_0x2040b2);return;}try{const _0xedd3cd=getSessionEntry(_0x5d09d4);if(!_0xedd3cd){await trackStop(_0x5d09d4,!![],_0x2040b2);return;}const _0x22651f=await _0x48370d[_0x226aa3(0x120)](getToken),_0x4b075e='https://dashboard.ranger.net/features/'+_0xedd3cd[_0x226aa3(0x111)];let _0x536cd2=null,_0x5012e2=![],_0x33c96d=![];if(_0x22651f)try{const _0x4d166d=await getFeature(_0xedd3cd[_0x226aa3(0x111)]);_0x536cd2=_0x4d166d[_0x226aa3(0x113)]??null;const _0x411d75=_0x4d166d[_0x226aa3(0x127)]['filter'](_0x1cf0fd=>_0x1cf0fd[_0x226aa3(0x10e)]===_0x536cd2);_0x5012e2=_0x411d75[_0x226aa3(0x122)](_0x5f2ffc=>_0x5f2ffc[_0x226aa3(0x116)]!==_0x226aa3(0x10f)&&_0x5f2ffc['status']!==_0x226aa3(0x12d)&&_0x5f2ffc['status']!==_0x226aa3(0x129)&&_0x5f2ffc[_0x226aa3(0x116)]!==_0x226aa3(0x11b)),_0x33c96d=_0x411d75[_0x226aa3(0x122)](_0x2293a7=>_0x2293a7[_0x226aa3(0x116)]==='verification_in_progress');}catch{}if(_0x48370d[_0x226aa3(0x121)](_0x22651f,_0x536cd2)&&_0x5012e2){if(!_0x33c96d&&_0x48370d['tBYNQ'](shouldShowStopReminder,_0x5d09d4)){const _0x31fa81={'hookSpecificOutput':{'hookEventName':_0x48370d[_0x226aa3(0x110)],'additionalContext':_0x226aa3(0x124)+_0x4b075e}};console['log'](JSON[_0x226aa3(0x114)](_0x31fa81));}}if(_0x48370d['geQTs'](_0x22651f,_0x536cd2)&&!_0x5012e2)try{await concludeSession(_0xedd3cd['featureId'],_0x536cd2);}catch{}await _0x48370d[_0x226aa3(0x11e)](trackStop,_0x5d09d4,!![],_0x2040b2);return;}catch{await trackStop(_0x5d09d4,!![],_0x2040b2);return;}}async function trackStop(_0x11c640,_0x461543,_0x5efb9a){const _0x10aaf0=_0x43be;try{const _0x4f0981=createTelemetryCollector(_0x10aaf0(0x128));await _0x4f0981[_0x10aaf0(0x11f)]({'sessionId':_0x11c640??undefined,'hooksEnabled':_0x461543,'stopAllowed':_0x5efb9a}),await _0x4f0981['trackCommandEnd']('success');}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x19fdc0,_0x5345c8){var _0x27a7a8=_0x4941,_0x36d6e5=_0x19fdc0();while(!![]){try{var _0x649560=-parseInt(_0x27a7a8(0xf1))/0x1+parseInt(_0x27a7a8(0xf0))/0x2+-parseInt(_0x27a7a8(0xf6))/0x3+parseInt(_0x27a7a8(0xee))/0x4*(-parseInt(_0x27a7a8(0xef))/0x5)+-parseInt(_0x27a7a8(0xf4))/0x6+parseInt(_0x27a7a8(0xf2))/0x7+parseInt(_0x27a7a8(0xf5))/0x8*(parseInt(_0x27a7a8(0xf3))/0x9);if(_0x649560===_0x5345c8)break;else _0x36d6e5['push'](_0x36d6e5['shift']());}catch(_0x56c0d8){_0x36d6e5['push'](_0x36d6e5['shift']());}}}(_0x4696,0xbcd5c));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';function _0x4696(){var _0x39b3ea=['172360KxLCYz','1072176ThrKSC','2844108TvpkKe','3314934WaDomm','56QzoEKc','3900825pCLXdc','567620KnRNhP','5AdOuCI','1150490AKwRkL'];_0x4696=function(){return _0x39b3ea;};return _0x4696();}export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';function _0x4941(_0x415a08,_0x480d57){_0x415a08=_0x415a08-0xee;var _0x46960e=_0x4696();var _0x494122=_0x46960e[_0x415a08];return _0x494122;}export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
|