@ranger-testing/ranger-cli 2.0.7 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/setup/claude.js +1 -0
  25. package/build/commands/setup/opencode.js +1 -0
  26. package/build/commands/setupCi.js +1 -1
  27. package/build/commands/skillup.js +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/status.js +1 -1
  30. package/build/commands/update.js +1 -1
  31. package/build/commands/updateEnv.js +1 -1
  32. package/build/commands/useEnv.js +1 -1
  33. package/build/commands/utils/activeProfile.js +1 -1
  34. package/build/commands/utils/browserSessionsApi.js +1 -1
  35. package/build/commands/utils/claudeConfig.js +1 -1
  36. package/build/commands/utils/claudePlugin.js +1 -1
  37. package/build/commands/utils/crypto.js +1 -1
  38. package/build/commands/utils/desirePathLog.js +1 -1
  39. package/build/commands/utils/deviceAuth.js +1 -1
  40. package/build/commands/utils/environment.js +1 -1
  41. package/build/commands/utils/featureApi.js +1 -1
  42. package/build/commands/utils/featureReportGenerator.js +1 -1
  43. package/build/commands/utils/fixWebmDuration.js +1 -1
  44. package/build/commands/utils/git.js +1 -1
  45. package/build/commands/utils/keychain.js +1 -1
  46. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  47. package/build/commands/utils/opencodeConfig.js +1 -0
  48. package/build/commands/utils/profileMessages.js +1 -1
  49. package/build/commands/utils/profileSetupBanner.js +1 -1
  50. package/build/commands/utils/rangerRoot.js +1 -1
  51. package/build/commands/utils/reportGenerator.js +1 -1
  52. package/build/commands/utils/retry.js +1 -1
  53. package/build/commands/utils/sessionCache.js +1 -1
  54. package/build/commands/utils/settings.js +1 -1
  55. package/build/commands/utils/skillContent.js +1 -1
  56. package/build/commands/utils/skills.js +1 -1
  57. package/build/commands/utils/telemetry.js +1 -1
  58. package/build/commands/utils/userApi.js +1 -1
  59. package/build/commands/utils/version.js +1 -1
  60. package/build/commands/verifyFeature.js +1 -1
  61. package/build/commands/verifyInBrowser.js +1 -1
  62. package/package.json +1 -1
@@ -1 +1 @@
1
- function _0x37eb(_0x3d39d1,_0x431246){_0x3d39d1=_0x3d39d1-0x1ad;const _0x48297b=_0x4829();let _0x37ebbd=_0x48297b[_0x3d39d1];return _0x37ebbd;}const _0x595bb2=_0x37eb;function _0x4829(){const _0x2f3bdc=['\x0aProfiles:','XOWeW','380308KJVilV','nMaeD','487784xhKiLH','479760qJqmla','dmgjM','environmentDetails','bug-bashes','.txt','pQYBA','isDirectory','push','eIvgO','local','892367WTPnTf','308195sCmFlc','940722ZFuLPe','\x20\x20\x20\x20\x20\x20Details:\x20','legacy','IhzZW','239157OMWzkQ','ywjcd','includes','cLHbY','5ImQxOU','JozlM','log','baseUrl','settings.json','88dQgPPl'];_0x4829=function(){return _0x2f3bdc;};return _0x4829();}(function(_0x43f830,_0x2ecd96){const _0x3a4873=_0x37eb,_0xcb3aa4=_0x43f830();while(!![]){try{const _0x39c8a1=-parseInt(_0x3a4873(0x1b5))/0x1+parseInt(_0x3a4873(0x1c6))/0x2+-parseInt(_0x3a4873(0x1c9))/0x3+-parseInt(_0x3a4873(0x1c8))/0x4+-parseInt(_0x3a4873(0x1be))/0x5*(-parseInt(_0x3a4873(0x1b6))/0x6)+parseInt(_0x3a4873(0x1b4))/0x7+parseInt(_0x3a4873(0x1c3))/0x8*(parseInt(_0x3a4873(0x1ba))/0x9);if(_0x39c8a1===_0x2ecd96)break;else _0xcb3aa4['push'](_0xcb3aa4['shift']());}catch(_0x56516d){_0xcb3aa4['push'](_0xcb3aa4['shift']());}}}(_0x4829,0x2b218));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions',_0x595bb2(0x1ad),'reports',_0x595bb2(0x1b3),'ci'];export async function getEnvNames(){const _0x57f034=_0x595bb2,_0x534fca={'ySLLn':function(_0x45c90f){return _0x45c90f();},'cLHbY':function(_0x22a404,_0x13f957){return _0x22a404(_0x13f957);},'YUdTz':function(_0x326620,_0x2475bf,_0xe14ee5){return _0x326620(_0x2475bf,_0xe14ee5);},'JozlM':function(_0x2e8cb3,_0x4c2388){return _0x2e8cb3(_0x4c2388);},'KwfUY':function(_0x30c7f7,_0x54e21,_0x21ebc6){return _0x30c7f7(_0x54e21,_0x21ebc6);},'nMaeD':function(_0x9f4327,_0x7ae24a){return _0x9f4327(_0x7ae24a);},'ywjcd':function(_0x24deae,_0x4c8092){return _0x24deae(_0x4c8092);},'dmgjM':function(_0x491e5e,_0x2b39d0){return _0x491e5e(_0x2b39d0);},'Leuxy':function(_0x38bb8c,_0x572dad,_0x4368a8){return _0x38bb8c(_0x572dad,_0x4368a8);},'lrEPY':_0x57f034(0x1b8)},_0x5f27db=_0x534fca['ySLLn'](getRangerDir);if(!_0x534fca[_0x57f034(0x1bd)](existsSync,_0x5f27db))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x52591d=await readActiveProfileName(),_0x12b520=[],_0x364f1c={},_0x1a7715=_0x534fca['YUdTz'](join,_0x5f27db,_0x57f034(0x1b3));if(_0x534fca[_0x57f034(0x1bf)](existsSync,_0x1a7715)){const _0x4be1b6=await readdir(_0x1a7715);for(const _0xa16d9c of _0x4be1b6){const _0x5dcc75=_0x534fca['KwfUY'](join,_0x1a7715,_0xa16d9c),_0x3d0fee=await _0x534fca[_0x57f034(0x1bd)](stat,_0x5dcc75);_0x3d0fee['isDirectory']()&&(_0x12b520['push'](_0xa16d9c),_0x364f1c[_0xa16d9c]=_0x57f034(0x1b3));}}const _0x460bc2=join(_0x5f27db,'ci');if(_0x534fca[_0x57f034(0x1c7)](existsSync,_0x460bc2)){const _0x2dc7d4=await _0x534fca[_0x57f034(0x1c7)](readdir,_0x460bc2);for(const _0x192a84 of _0x2dc7d4){const _0x3b69b8=join(_0x460bc2,_0x192a84),_0x534c16=await _0x534fca[_0x57f034(0x1bb)](stat,_0x3b69b8);_0x534c16[_0x57f034(0x1b0)]()&&(_0x12b520[_0x57f034(0x1b1)](_0x192a84),_0x364f1c[_0x192a84]='ci');}}const _0x3cd289=await _0x534fca[_0x57f034(0x1ca)](readdir,_0x5f27db);for(const _0x27fc7b of _0x3cd289){if(NON_ENV_DIRS[_0x57f034(0x1bc)](_0x27fc7b))continue;if(_0x27fc7b['startsWith']('.'))continue;if(_0x27fc7b['endsWith'](_0x57f034(0x1ae)))continue;const _0x2faf0d=_0x534fca['Leuxy'](join,_0x5f27db,_0x27fc7b),_0x35c2a3=await stat(_0x2faf0d);_0x35c2a3['isDirectory']()&&_0x534fca[_0x57f034(0x1ca)](existsSync,_0x534fca['YUdTz'](join,_0x2faf0d,_0x57f034(0x1c2)))&&(!_0x12b520[_0x57f034(0x1bc)](_0x27fc7b)&&(_0x12b520['push'](_0x27fc7b),_0x364f1c[_0x27fc7b]=_0x534fca['lrEPY']));}return{'envNames':_0x12b520,'activeEnv':_0x52591d,'envTypes':_0x364f1c};}export async function envList(){const _0x4950b4=_0x595bb2,_0x343742={'BFedi':function(_0x267dc6,_0x63a072){return _0x267dc6===_0x63a072;},'iTbqB':'\x0aNo\x20profiles\x20found.','eIvgO':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','XOWeW':_0x4950b4(0x1c4),'pQYBA':function(_0x1b31da,_0x2e5386){return _0x1b31da===_0x2e5386;},'tDWLN':_0x4950b4(0x1b3),'IhzZW':function(_0x151a4e,_0x76f2be){return _0x151a4e(_0x76f2be);}},{envNames:_0x581141,activeEnv:_0x22933e,envTypes:_0x3fa59c}=await getEnvNames();if(_0x343742['BFedi'](_0x581141['length'],0x0)){console['log'](_0x343742['iTbqB']),console[_0x4950b4(0x1c0)](_0x343742[_0x4950b4(0x1b2)]);return;}console['log'](_0x343742[_0x4950b4(0x1c5)]);for(const _0x1ea8c9 of _0x581141['sort']()){const _0x17066b=_0x343742[_0x4950b4(0x1af)](_0x1ea8c9,_0x22933e),_0x4da66c=_0x3fa59c[_0x1ea8c9]||_0x343742['tDWLN'],_0x33a713=await _0x343742[_0x4950b4(0x1b9)](loadSettings,_0x1ea8c9),_0x528abb=_0x343742[_0x4950b4(0x1af)](_0x4da66c,_0x4950b4(0x1b8))?'':'\x20['+_0x4da66c+']';console['log']('\x20\x20'+(_0x17066b?'*\x20':'\x20\x20')+_0x1ea8c9+_0x528abb),_0x33a713['baseUrl']&&console[_0x4950b4(0x1c0)]('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x33a713[_0x4950b4(0x1c1)]),_0x33a713[_0x4950b4(0x1cb)]&&console[_0x4950b4(0x1c0)](_0x4950b4(0x1b7)+_0x33a713[_0x4950b4(0x1cb)]);}_0x22933e&&console['log']('\x0a*\x20=\x20active\x20profile');}
1
+ const _0x4374f4=_0x2d5e;(function(_0x2db138,_0x537fd0){const _0x213dff=_0x2d5e,_0x5cb807=_0x2db138();while(!![]){try{const _0x1086f9=-parseInt(_0x213dff(0xed))/0x1*(parseInt(_0x213dff(0x102))/0x2)+parseInt(_0x213dff(0xfe))/0x3*(parseInt(_0x213dff(0xee))/0x4)+-parseInt(_0x213dff(0xf3))/0x5+parseInt(_0x213dff(0xfc))/0x6*(parseInt(_0x213dff(0xfb))/0x7)+parseInt(_0x213dff(0xf0))/0x8+-parseInt(_0x213dff(0xf4))/0x9*(parseInt(_0x213dff(0x103))/0xa)+parseInt(_0x213dff(0xf5))/0xb;if(_0x1086f9===_0x537fd0)break;else _0x5cb807['push'](_0x5cb807['shift']());}catch(_0x1a7124){_0x5cb807['push'](_0x5cb807['shift']());}}}(_0x4711,0xcb800));import{readdir,stat}from'fs/promises';import{join}from'path';function _0x2d5e(_0x10fc0c,_0xd6f925){_0x10fc0c=_0x10fc0c-0xec;const _0x471144=_0x4711();let _0x2d5eb7=_0x471144[_0x10fc0c];return _0x2d5eb7;}import{existsSync}from'fs';function _0x4711(){const _0xced7eb=['3108091hZfAYg','6fbtIvc','bug-bashes','90WbfdVX','log','\x0a*\x20=\x20active\x20profile','HZAtk','26lNXKaC','16130qyMVdS','gPtWH','length','sort','\x0aProfiles:','local','legacy','zJXlF','27019RSBuaO','7340mtvxSf','Run:\x20ranger\x20profile\x20add\x20<profile-name>','4156560ZwrsWw','settings.json','\x0aNo\x20profiles\x20found.','5957445REdvOZ','3366MKkSLP','21569911HJGGLI','sJlIF','baseUrl','isDirectory','GocsY','.txt'];_0x4711=function(){return _0xced7eb;};return _0x4711();}import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions',_0x4374f4(0xfd),'reports','local','ci'];export async function getEnvNames(){const _0x2f7e3c=_0x4374f4,_0xeea460={'IGdfV':function(_0x2a3fdc){return _0x2a3fdc();},'zJXlF':function(_0x5a4155,_0x429b27){return _0x5a4155(_0x429b27);},'gPtWH':function(_0x72f8e3,_0x4c26a6,_0x38f7c5){return _0x72f8e3(_0x4c26a6,_0x38f7c5);},'AQIiT':function(_0x198049,_0x268c7d,_0x548e9e){return _0x198049(_0x268c7d,_0x548e9e);},'sypbP':function(_0x594e01,_0x107e0b){return _0x594e01(_0x107e0b);},'RHtwX':function(_0x1004ad,_0x3e01f8){return _0x1004ad(_0x3e01f8);},'WSFXY':function(_0x5a71d4,_0x3fbd6d,_0x3a4100){return _0x5a71d4(_0x3fbd6d,_0x3a4100);},'SAdEx':_0x2f7e3c(0xf1),'sJlIF':_0x2f7e3c(0x109)},_0x1436c3=_0xeea460['IGdfV'](getRangerDir);if(!_0xeea460[_0x2f7e3c(0xec)](existsSync,_0x1436c3))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x1e3aa6=await readActiveProfileName(),_0x50ba7b=[],_0x24744d={},_0x2484d0=_0xeea460[_0x2f7e3c(0x104)](join,_0x1436c3,_0x2f7e3c(0x108));if(existsSync(_0x2484d0)){const _0x5bd08b=await readdir(_0x2484d0);for(const _0x2977dc of _0x5bd08b){const _0x22f425=join(_0x2484d0,_0x2977dc),_0x1019ea=await stat(_0x22f425);_0x1019ea['isDirectory']()&&(_0x50ba7b['push'](_0x2977dc),_0x24744d[_0x2977dc]=_0x2f7e3c(0x108));}}const _0x18bc7e=join(_0x1436c3,'ci');if(_0xeea460['zJXlF'](existsSync,_0x18bc7e)){const _0xe4b10=await readdir(_0x18bc7e);for(const _0x52352c of _0xe4b10){const _0x4c9fe0=join(_0x18bc7e,_0x52352c),_0xf22570=await stat(_0x4c9fe0);_0xf22570[_0x2f7e3c(0xf8)]()&&(_0x50ba7b['push'](_0x52352c),_0x24744d[_0x52352c]='ci');}}const _0x2d53a3=await _0xeea460['zJXlF'](readdir,_0x1436c3);for(const _0x44016b of _0x2d53a3){if(NON_ENV_DIRS['includes'](_0x44016b))continue;if(_0x44016b['startsWith']('.'))continue;if(_0x44016b['endsWith'](_0x2f7e3c(0xfa)))continue;const _0x4f7aca=_0xeea460['AQIiT'](join,_0x1436c3,_0x44016b),_0xacdc9f=await _0xeea460['sypbP'](stat,_0x4f7aca);_0xacdc9f[_0x2f7e3c(0xf8)]()&&_0xeea460['RHtwX'](existsSync,_0xeea460['WSFXY'](join,_0x4f7aca,_0xeea460['SAdEx']))&&(!_0x50ba7b['includes'](_0x44016b)&&(_0x50ba7b['push'](_0x44016b),_0x24744d[_0x44016b]=_0xeea460[_0x2f7e3c(0xf6)]));}return{'envNames':_0x50ba7b,'activeEnv':_0x1e3aa6,'envTypes':_0x24744d};}export async function envList(){const _0x4c5aad=_0x4374f4,_0x1507f3={'HZAtk':function(_0xee8809,_0x418a4b){return _0xee8809===_0x418a4b;},'GocsY':_0x4c5aad(0xef),'dGWmm':_0x4c5aad(0x107),'PJqvR':function(_0x4ba6be,_0x8b9a0){return _0x4ba6be(_0x8b9a0);}},{envNames:_0x8174b5,activeEnv:_0x45ad2,envTypes:_0x342165}=await getEnvNames();if(_0x1507f3[_0x4c5aad(0x101)](_0x8174b5[_0x4c5aad(0x105)],0x0)){console[_0x4c5aad(0xff)](_0x4c5aad(0xf2)),console['log'](_0x1507f3[_0x4c5aad(0xf9)]);return;}console[_0x4c5aad(0xff)](_0x1507f3['dGWmm']);for(const _0x27e198 of _0x8174b5[_0x4c5aad(0x106)]()){const _0x36e897=_0x27e198===_0x45ad2,_0x70697d=_0x342165[_0x27e198]||_0x4c5aad(0x108),_0xaed9fd=await _0x1507f3['PJqvR'](loadSettings,_0x27e198),_0x48c2a1=_0x1507f3['HZAtk'](_0x70697d,'legacy')?'':'\x20['+_0x70697d+']';console['log']('\x20\x20'+(_0x36e897?'*\x20':'\x20\x20')+_0x27e198+_0x48c2a1),_0xaed9fd[_0x4c5aad(0xf7)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0xaed9fd[_0x4c5aad(0xf7)]),_0xaed9fd['environmentDetails']&&console[_0x4c5aad(0xff)]('\x20\x20\x20\x20\x20\x20Details:\x20'+_0xaed9fd['environmentDetails']);}_0x45ad2&&console[_0x4c5aad(0xff)](_0x4c5aad(0x100));}
@@ -1 +1 @@
1
- const _0x41fdff=_0x4908;(function(_0x9ac79,_0x2e7652){const _0x41aeee=_0x4908,_0x48b040=_0x9ac79();while(!![]){try{const _0x4993db=parseInt(_0x41aeee(0x19c))/0x1*(-parseInt(_0x41aeee(0x1b0))/0x2)+parseInt(_0x41aeee(0x168))/0x3*(-parseInt(_0x41aeee(0x1a9))/0x4)+parseInt(_0x41aeee(0x10a))/0x5+parseInt(_0x41aeee(0x15d))/0x6*(-parseInt(_0x41aeee(0x16c))/0x7)+-parseInt(_0x41aeee(0x1a1))/0x8+-parseInt(_0x41aeee(0x128))/0x9+parseInt(_0x41aeee(0x113))/0xa;if(_0x4993db===_0x2e7652)break;else _0x48b040['push'](_0x48b040['shift']());}catch(_0x12307c){_0x48b040['push'](_0x48b040['shift']());}}}(_0x46a4,0x6bc0e));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5c0d7c from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE=_0x41fdff(0x157),bold=_0x4d54c4=>_0x41fdff(0x11b)+_0x4d54c4+'\x1b[0m';function getGitRepoUrl(){const _0x5acf20=_0x41fdff,_0x182533={'uDONv':_0x5acf20(0x15a),'UAmIv':_0x5acf20(0x125),'jBkmO':_0x5acf20(0x1bb)};try{const _0x2d7360=execSync(_0x182533[_0x5acf20(0x13c)],{'encoding':_0x182533[_0x5acf20(0x15b)],'stdio':['pipe',_0x182533['jBkmO'],_0x182533[_0x5acf20(0x1a6)]]})['trim']();return _0x2d7360['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function _0x46a4(){const _0x3e5365=['UAmIv','fqZMv','8238cwmnaV','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','tPPxs','IguNy','oDBgU','\x0a✅\x20Resumed\x20feature\x20review:\x20','version','dashboardUrl','zAnVG','\x20blocked','any','36cvNvIU','\x0aGenerating\x20report...','approved','QBCId','1449UbfIqm','UYnRH','No\x20sessions\x20found.','\x20\x20\x20\x20\x20ID:\x20','stdout','dtGEO','YLmII','CLAUDE_SESSION_ID','KTbgB','lPMCk','join','latestReview','\x20—\x20','IEWov','cBney','NArcM','incompleteItems','\x20--current-branch','selected','HVQAU','mHivn','authorName','split','\x20\x20\x20\x20\x20\x20Approved','stdin','completedAt','find','incompleteReason','\x0a✅\x20Feature\x20review\x20created:\x20','gitBranch','):\x20\x22','mOgag','.md','completed','stats','gitRepoUrl','USqDb','length','pxONe','Kohxc','mvFFT','TKeDK','\x0aCreating\x20feature\x20review...','error','\x20scenario(s).','ZybQW','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','\x20\x20\x20\x20\x20\x20Cancelled:\x20','1NxqovP','\x20\x20\x20\x20','\x20at\x20[','PVlOw','DfBwV','5306888miRyyD','\x20unaddressed\x20comment(s)','hMOJT','status','\x20\x20\x20Created:\x20','jBkmO','jxfTU','type','112076XcZZlh','blockedReason','xwmgZ','\x20incomplete','coordinates','content','XLTWi','1733254qGgsKu','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','\x20\x20\x20Status:\x20','push','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x20\x20\x20Branch:\x20','TZDLx','scenario','spatial','verifiedItems','isTTY','pipe','ZVWcn','name','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','currentBranch','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','GNNpD','blocked','WhrEp','hIbSh','offset','canceledReason','items','2534720OBrNux','\x20\x20\x20Description:\x20','RFZAk','NYTYb','repeat','No\x20scenarios\x20found.','\x20feature\x20review(s)\x20found','sLmvu','LyYTj','22885580gtxXFQ','eXBWi','feedback-images','UMsdC','exit','toFixed','\x0aNo\x20feature\x20reviews\x20found.','\x20(v','\x1b[1m','YUCpo','unaddressedComments','iBkEm','Scenario\x20','\x20--limit\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','mnRqy','closed','limit','utf-8','GyqCa','\x0a✅\x20Scenario\x20updated','1833453yXbsxU','wpSMF','description','trim','TIyym','\x20scenarios.','\x20\x20\x20Progress:\x20','incomplete','terminalReason','\x20\x20\x20Repository:\x20','toLocaleString','fCZKw','XpdWW','Not\x20in\x20a\x20git\x20repository.','createdAt','log','prompt','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','...','uDONv','iteration','JbHLJ','toLocaleDateString','blockedItems','warn','yiACl','ryLea','Current\x20session\x20not\x20found.','\x20\x20✅\x20No\x20feedback\x20to\x20address','map','checklistItems','gQJbg','totalCount',':\x20\x22','\x20\x20\x20\x20\x20Progress:\x20','assetUrl','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','parentItemId','round','QSqII','\x20\x20\x20\x20\x20Branch:\x20','\x20\x20\x20','verificationInProgressItems','style','qnxHV','\x0a✅\x20Session\x20','active-feature.txt','VqoTc','\x20--include-deleted','git\x20remote\x20get-url\x20origin'];_0x46a4=function(){return _0x3e5365;};return _0x46a4();}function getGitBranch(){const _0x3fef09=_0x41fdff,_0xfa3b6b={'akUwz':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','oDBgU':'pipe'};try{return execSync(_0xfa3b6b['akUwz'],{'encoding':_0x3fef09(0x125),'stdio':[_0xfa3b6b['oDBgU'],_0xfa3b6b[_0x3fef09(0x161)],_0x3fef09(0x1bb)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x311ce5=_0x41fdff,_0x47a5b2={'WhrEp':function(_0x1937d6){return _0x1937d6();},'SGqTh':function(_0x39194c,_0x47aa70){return _0x39194c(_0x47aa70);}},_0x34b5b0=join(_0x47a5b2[_0x311ce5(0x105)](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x47a5b2['SGqTh'](existsSync,_0x34b5b0))return null;try{const _0x2a8e02=await readFile(_0x34b5b0,_0x311ce5(0x125));return _0x2a8e02['trim']()||null;}catch{return null;}}function _0x4908(_0x11906b,_0xba534e){_0x11906b=_0x11906b-0x104;const _0x46a433=_0x46a4();let _0x490843=_0x46a433[_0x11906b];return _0x490843;}async function setActiveFeatureId(_0x1e3f99){const _0x16ff01=_0x41fdff,_0x212fd7={'MQTlN':function(_0x3030ff){return _0x3030ff();},'JbHLJ':function(_0x2b9ec6,_0x871307,_0x54bb75){return _0x2b9ec6(_0x871307,_0x54bb75);},'TKeDK':_0x16ff01(0x125)},_0x3717d7=_0x212fd7['MQTlN'](getRangerDir),_0x2f33c6=_0x212fd7[_0x16ff01(0x13e)](join,_0x3717d7,ACTIVE_FEATURE_FILE);!existsSync(_0x3717d7)&&await mkdir(_0x3717d7,{'recursive':!![]}),await writeFile(_0x2f33c6,_0x1e3f99,_0x212fd7[_0x16ff01(0x195)]);}function getProgressDisplay(_0x27748a){const _0x43316f=_0x41fdff,_0x4558dd={'LyYTj':function(_0x225dde,_0x2fdd87){return _0x225dde+_0x2fdd87;},'PVlOw':function(_0x4e1fee,_0x5da440){return _0x4e1fee/_0x5da440;},'mnDIP':function(_0x13725e,_0x42b491){return _0x13725e>_0x42b491;}},_0x7d3d71=_0x27748a[_0x43316f(0x1b9)]||0x0,_0x2bd4f6=_0x27748a[_0x43316f(0x153)]||0x0,_0x540e27=_0x27748a[_0x43316f(0x140)]||0x0,_0x4efefb=_0x27748a[_0x43316f(0x17c)]||0x0,_0x53062e=_0x27748a['pendingItems']||0x0,_0x12b1d5=_0x4558dd['LyYTj'](_0x7d3d71+_0x2bd4f6,_0x540e27)+_0x4efefb+_0x53062e;if(_0x12b1d5===0x0)return'-';const _0x365b34=0xa,_0x92b073=Math[_0x43316f(0x14f)](_0x4558dd[_0x43316f(0x19f)](_0x7d3d71,_0x12b1d5)*_0x365b34),_0x4a2305=_0x4558dd[_0x43316f(0x112)]('█'[_0x43316f(0x10e)](_0x92b073),'░'[_0x43316f(0x10e)](_0x365b34-_0x92b073)),_0x1af48f=[];if(_0x540e27>0x0)_0x1af48f[_0x43316f(0x1b3)](_0x540e27+_0x43316f(0x166));if(_0x4558dd['mnDIP'](_0x4efefb,0x0))_0x1af48f['push'](_0x4efefb+_0x43316f(0x1ac));if(_0x2bd4f6>0x0)_0x1af48f['push'](_0x2bd4f6+'\x20in\x20progress');const _0x1dea1b=_0x1af48f['length']>0x0?'\x20('+_0x1af48f[_0x43316f(0x176)](',\x20')+')':'';return _0x4a2305+'\x20'+_0x7d3d71+'/'+_0x12b1d5+'\x20verified'+_0x1dea1b;}function displayFeature(_0x246900,_0x4483e9){const _0x4277af=_0x41fdff,_0x1a5db3={'TZDLx':function(_0x869781,_0x934000){return _0x869781<_0x934000;},'SieSS':function(_0x152d17,_0x74224c){return _0x152d17===_0x74224c;},'NArcM':_0x4277af(0x123),'RFcOw':function(_0x55310f,_0x3dd38e){return _0x55310f===_0x3dd38e;},'SFjho':_0x4277af(0x16a),'DCQYj':'incomplete','xgbQj':function(_0x5b9573,_0x39821d){return _0x5b9573===_0x39821d;},'VqoTc':function(_0x7bc28,_0x506927){return _0x7bc28>_0x506927;},'oirMd':function(_0x465be2,_0xdd7e92){return _0x465be2!==_0xdd7e92;},'bKlyw':'verified','RFZAk':'\x20[has\x20reviewer\x20feedback]','xwmgZ':function(_0x255a1,_0x55db4a){return _0x255a1+_0x55db4a;},'IguNy':_0x4277af(0x104),'hqCqH':function(_0x1c1234,_0x306e35){return _0x1c1234===_0x306e35;}};console['log']('\x0a'+_0x246900['name']+'\x20('+_0x246900[_0x4277af(0x164)]+')');_0x246900['stats']&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x246900['stats']));_0x246900[_0x4277af(0x12a)]&&console['log'](_0x4277af(0x10b)+_0x246900['description']);_0x246900['gitRepoUrl']&&console[_0x4277af(0x137)](_0x4277af(0x131)+_0x246900[_0x4277af(0x18f)]);_0x246900['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x246900['gitBranch']);console[_0x4277af(0x137)]('\x20\x20\x20Created:\x20'+new Date(_0x246900[_0x4277af(0x136)])[_0x4277af(0x132)]());_0x246900[_0x4277af(0x185)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x246900['completedAt'])['toLocaleString']());if(_0x4483e9&&_0x4483e9[_0x4277af(0x191)]>0x0){console['log']('\x0a\x20\x20\x20Scenarios:');for(let _0x43c39f=0x0;_0x1a5db3[_0x4277af(0x1b6)](_0x43c39f,_0x4483e9['length']);_0x43c39f++){const _0x54cde7=_0x4483e9[_0x43c39f];let _0x529cfe;if(_0x1a5db3['SieSS'](_0x54cde7[_0x4277af(0x1a4)],_0x1a5db3[_0x4277af(0x17b)])&&_0x1a5db3['RFcOw'](_0x54cde7['terminalReason'],_0x1a5db3['SFjho']))_0x529cfe='✅';else{if(_0x54cde7['status']==='verified')_0x529cfe='🟢';else{if(_0x1a5db3['SieSS'](_0x54cde7[_0x4277af(0x1a4)],_0x1a5db3['DCQYj']))_0x529cfe='🟠';else{if(_0x1a5db3['xgbQj'](_0x54cde7['status'],'blocked'))_0x529cfe='🛑';else{if(_0x54cde7['status']==='closed')_0x529cfe='⛔';else _0x1a5db3['RFcOw'](_0x54cde7[_0x4277af(0x1a4)],'verification_in_progress')?_0x529cfe='⏳':_0x529cfe='⬜';}}}}const _0x32bfc7=_0x1a5db3[_0x4277af(0x158)](_0x54cde7['version'],0x1)?'\x20(v'+_0x54cde7['version']+')':'',_0x1aa889=_0x54cde7['version']>0x1&&_0x54cde7[_0x4277af(0x14e)]&&_0x54cde7['status']!==_0x1a5db3['NArcM']&&_0x1a5db3['oirMd'](_0x54cde7[_0x4277af(0x1a4)],_0x1a5db3['bKlyw'])?_0x1a5db3[_0x4277af(0x10c)]:'';console[_0x4277af(0x137)](_0x4277af(0x152)+_0x1a5db3[_0x4277af(0x1ab)](_0x43c39f,0x1)+'.\x20'+_0x529cfe+'\x20'+_0x54cde7[_0x4277af(0x12a)]+_0x32bfc7+_0x1aa889);_0x54cde7[_0x4277af(0x1a4)]===_0x1a5db3[_0x4277af(0x160)]&&_0x54cde7[_0x4277af(0x1aa)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x54cde7[_0x4277af(0x1aa)]);_0x1a5db3['hqCqH'](_0x54cde7['status'],_0x4277af(0x12f))&&_0x54cde7[_0x4277af(0x187)]&&console['log'](_0x4277af(0x121)+_0x54cde7['incompleteReason']);if(_0x1a5db3['RFcOw'](_0x54cde7['status'],_0x4277af(0x123))&&_0x54cde7[_0x4277af(0x130)]==='approved')console[_0x4277af(0x137)](_0x4277af(0x183));else _0x1a5db3['SieSS'](_0x54cde7[_0x4277af(0x1a4)],_0x4277af(0x123))&&_0x54cde7['canceledReason']&&console['log'](_0x4277af(0x19b)+_0x54cde7[_0x4277af(0x108)]);}}}export async function featureCreate(_0x463da7,_0x339d8d){const _0x2a627f=_0x41fdff,_0x147a0c={'rgSxw':function(_0x53f3b3){return _0x53f3b3();},'GNNpD':function(_0x2d8a47){return _0x2d8a47();},'iBkEm':_0x2a627f(0x196),'ZybQW':function(_0x539a10,_0x18b14e){return _0x539a10(_0x18b14e);},'GlkSr':function(_0x596d9a,_0x531188,_0x1a12d1){return _0x596d9a(_0x531188,_0x1a12d1);}},{envNames:_0x841b21}=await getEnvNames();_0x841b21['length']===0x0&&console[_0x2a627f(0x141)]('\x0a'+formatProfileRequiredMessage(_0x31bcb8=>bold(_0x31bcb8)));const _0x2a1ea6=_0x339d8d['scenarios']?_0x339d8d['scenarios'][_0x2a627f(0x146)](_0x10f0c4=>_0x10f0c4[_0x2a627f(0x12b)]()):[],_0x190d5d=_0x147a0c['rgSxw'](getGitRepoUrl),_0x293bb9=_0x147a0c[_0x2a627f(0x1c1)](getGitBranch);console[_0x2a627f(0x137)](_0x147a0c[_0x2a627f(0x11e)]);const _0x1164af=await _0x147a0c[_0x2a627f(0x199)](createFeature,{'name':_0x463da7,'description':_0x339d8d[_0x2a627f(0x12a)],'checklist':_0x2a1ea6,'gitRepoUrl':_0x190d5d,'gitBranch':_0x293bb9});await setActiveFeatureId(_0x1164af['id']),await _0x147a0c[_0x2a627f(0x199)](tryStartCurrentSession,_0x1164af['id']);const _0x20402b=process['env'][_0x2a627f(0x173)];_0x20402b&&registerSession(_0x20402b,_0x1164af['id']),console['log'](_0x2a627f(0x188)+_0x1164af['id']),_0x147a0c['GlkSr'](displayFeature,_0x1164af,_0x1164af[_0x2a627f(0x147)]),console['log'](_0x2a627f(0x1be));}export async function featureList(_0x3c5a4c){const _0x4aba6e=_0x41fdff,_0x155ede={'akUaO':function(_0x57e7c7){return _0x57e7c7();},'GyqCa':function(_0x129c3f){return _0x129c3f();},'sLmvu':function(_0xa4a27d,_0x56f053){return _0xa4a27d(_0x56f053);},'YUCpo':function(_0x54e138,_0x86110b){return _0x54e138>_0x86110b;},'ryLea':function(_0x9d4530,_0xb36c3){return _0x9d4530<_0xb36c3;}},_0x10dbdb={'limit':_0x3c5a4c[_0x4aba6e(0x124)]??0xa,'offset':_0x3c5a4c[_0x4aba6e(0x107)]??0x0,'includeDeleted':_0x3c5a4c['includeDeleted']};_0x3c5a4c[_0x4aba6e(0x1bf)]&&(_0x10dbdb['gitRepoUrl']=_0x155ede['akUaO'](getGitRepoUrl),_0x10dbdb[_0x4aba6e(0x189)]=_0x155ede[_0x4aba6e(0x126)](getGitBranch));const _0x477660=await _0x155ede['sLmvu'](listFeatures,_0x10dbdb);if(_0x477660[_0x4aba6e(0x109)]['length']===0x0){console['log'](_0x4aba6e(0x119));return;}const _0x227c11=_0x155ede[_0x4aba6e(0x11c)](_0x477660['totalCount'],_0x477660['items'][_0x4aba6e(0x191)])?'Showing\x20'+_0x477660['items'][_0x4aba6e(0x191)]+'\x20of\x20'+_0x477660['totalCount']:_0x477660[_0x4aba6e(0x149)]+_0x4aba6e(0x110);console['log']('\x0a'+_0x227c11+':\x0a');for(const _0x57975d of _0x477660['items']){const _0x3d68ba='3|0|4|5|2|1'['split']('|');let _0x4a49ac=0x0;while(!![]){switch(_0x3d68ba[_0x4a49ac++]){case'0':console[_0x4aba6e(0x137)]('\x20\x20\x20ID:\x20'+_0x57975d['id']);continue;case'1':console['log']('');continue;case'2':console['log'](_0x4aba6e(0x1a5)+new Date(_0x57975d[_0x4aba6e(0x136)])['toLocaleDateString']());continue;case'3':console['log'](''+_0x57975d['name']);continue;case'4':_0x57975d['stats']&&console['log'](_0x4aba6e(0x12e)+_0x155ede[_0x4aba6e(0x111)](getProgressDisplay,_0x57975d[_0x4aba6e(0x18e)]));continue;case'5':_0x57975d['gitBranch']&&console[_0x4aba6e(0x137)](_0x4aba6e(0x1b5)+_0x57975d[_0x4aba6e(0x189)]);continue;}break;}}const _0xd66a3=_0x10dbdb[_0x4aba6e(0x124)]??0xa,_0x4b555f=(_0x10dbdb[_0x4aba6e(0x107)]??0x0)+_0x477660['items']['length'];if(_0x155ede[_0x4aba6e(0x143)](_0x4b555f,_0x477660['totalCount'])){const _0x3926c0=_0xd66a3!==0xa?_0x4aba6e(0x120)+_0xd66a3:'',_0x3678c2=_0x3c5a4c['currentBranch']?_0x4aba6e(0x17d):'',_0x3918ec=_0x3c5a4c['includeDeleted']?_0x4aba6e(0x159):'';console[_0x4aba6e(0x137)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x4b555f+_0x3926c0+_0x3678c2+_0x3918ec);}}export async function featureShow(_0x40ae8b){const _0x4e0fb3=_0x41fdff,_0x223bb5={'fqZMv':_0x4e0fb3(0x14d),'QqObA':function(_0x4c7fd9,_0x5effaf){return _0x4c7fd9(_0x5effaf);},'bqjZf':function(_0x4d0043,_0x491c4d,_0xdc3855){return _0x4d0043(_0x491c4d,_0xdc3855);}},_0x108ce4=_0x40ae8b||await getActiveFeatureId();if(!_0x108ce4)throw new Error(_0x223bb5[_0x4e0fb3(0x15c)]);const _0x4f935b=await _0x223bb5['QqObA'](getFeature,_0x108ce4);_0x223bb5['bqjZf'](displayFeature,_0x4f935b,_0x4f935b[_0x4e0fb3(0x147)]);}export async function featureResume(_0x20dde5){const _0x2f0c4d=_0x41fdff,_0x12fd7a={'zjfci':function(_0x1ed6c9,_0x4390c0){return _0x1ed6c9!==_0x4390c0;},'dtGEO':function(_0x1455a4,_0x33d57e){return _0x1455a4(_0x33d57e);},'tPPxs':function(_0x42c00e,_0x4e94d5,_0x4c8276){return _0x42c00e(_0x4e94d5,_0x4c8276);},'npLPv':function(_0x272ef1){return _0x272ef1();},'IEWov':function(_0x1390ee,_0x2a7cdc){return _0x1390ee&&_0x2a7cdc;},'pIkID':_0x2f0c4d(0x135),'zAnVG':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','QBCId':function(_0x1822ab,_0x38901f){return _0x1822ab===_0x38901f;},'mvFFT':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','TIyym':_0x2f0c4d(0x15e),'XsYSg':'list','Kohxc':_0x2f0c4d(0x17e),'UYnRH':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','KTbgB':function(_0x2e0c4d,_0x3bf485){return _0x2e0c4d(_0x3bf485);},'BcZyd':function(_0x155e59,_0x38f293,_0x4554e2){return _0x155e59(_0x38f293,_0x4554e2);}};if(_0x20dde5){const _0x5abca5=await getFeature(_0x20dde5);await setActiveFeatureId(_0x5abca5['id']);const _0x23936d=getGitBranch();_0x23936d&&_0x12fd7a['zjfci'](_0x23936d,_0x5abca5[_0x2f0c4d(0x189)])&&(await updateFeature(_0x5abca5['id'],{'gitBranch':_0x23936d}),console[_0x2f0c4d(0x137)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x23936d));console[_0x2f0c4d(0x137)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x5abca5['name']+'\x20('+_0x5abca5['id']+')'),await _0x12fd7a[_0x2f0c4d(0x171)](tryStartCurrentSession,_0x5abca5['id']);const _0x222c7a=process['env'][_0x2f0c4d(0x173)];_0x222c7a&&_0x12fd7a[_0x2f0c4d(0x15f)](registerSession,_0x222c7a,_0x5abca5['id']);displayFeature(_0x5abca5,_0x5abca5[_0x2f0c4d(0x147)]),await printFeedbackNudge(_0x5abca5['id']);return;}const _0x173492=getGitRepoUrl(),_0x165e92=_0x12fd7a['npLPv'](getGitBranch);if(_0x12fd7a[_0x2f0c4d(0x179)](!_0x173492,!_0x165e92))throw new Error(_0x12fd7a['pIkID']);console[_0x2f0c4d(0x137)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x173492||_0x2f0c4d(0x167))+'\x20/\x20'+(_0x165e92||_0x2f0c4d(0x167))+_0x2f0c4d(0x13b));const _0x33b750=await listFeatures({'gitRepoUrl':_0x173492,'gitBranch':_0x165e92}),_0x2b2fb0=_0x33b750[_0x2f0c4d(0x109)]['filter'](_0x52acd2=>!_0x52acd2['completedAt']);if(_0x2b2fb0[_0x2f0c4d(0x191)]===0x0){console[_0x2f0c4d(0x137)](_0x12fd7a[_0x2f0c4d(0x165)]),console['log']('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x5c6c8c;if(_0x12fd7a[_0x2f0c4d(0x16b)](_0x2b2fb0['length'],0x1))_0x5c6c8c=_0x2b2fb0[0x0];else{const _0x18a674=process[_0x2f0c4d(0x184)]['isTTY']&&process[_0x2f0c4d(0x170)][_0x2f0c4d(0x1ba)];if(!_0x18a674){console['log'](_0x12fd7a[_0x2f0c4d(0x194)]);for(const _0xbe0e3b of _0x2b2fb0){console['log']('\x20\x20'+_0xbe0e3b['name']),console[_0x2f0c4d(0x137)](_0x2f0c4d(0x16f)+_0xbe0e3b['id']),_0xbe0e3b[_0x2f0c4d(0x18e)]&&console[_0x2f0c4d(0x137)](_0x2f0c4d(0x14b)+getProgressDisplay(_0xbe0e3b['stats'])),_0xbe0e3b[_0x2f0c4d(0x189)]&&console['log'](_0x2f0c4d(0x151)+_0xbe0e3b[_0x2f0c4d(0x189)]);}throw new Error(_0x12fd7a[_0x2f0c4d(0x12c)]);}const {selected:_0x496d5e}=await _0x5c0d7c[_0x2f0c4d(0x138)]([{'type':_0x12fd7a['XsYSg'],'name':_0x12fd7a[_0x2f0c4d(0x193)],'message':_0x12fd7a[_0x2f0c4d(0x16d)],'choices':_0x2b2fb0[_0x2f0c4d(0x146)](_0x2538f8=>({'name':_0x2538f8['name']+'\x20('+_0x2538f8['id']+')','value':_0x2538f8['id']}))}]);_0x5c6c8c=_0x2b2fb0['find'](_0x5b37e0=>_0x5b37e0['id']===_0x496d5e);}await setActiveFeatureId(_0x5c6c8c['id']);_0x165e92&&_0x165e92!==_0x5c6c8c[_0x2f0c4d(0x189)]&&(await _0x12fd7a['tPPxs'](updateFeature,_0x5c6c8c['id'],{'gitBranch':_0x165e92}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x165e92));console[_0x2f0c4d(0x137)](_0x2f0c4d(0x162)+_0x5c6c8c['name']+'\x20('+_0x5c6c8c['id']+')'),await tryStartCurrentSession(_0x5c6c8c['id']);const _0x5780a7=await _0x12fd7a[_0x2f0c4d(0x174)](getFeature,_0x5c6c8c['id']),_0x3ff65c=process['env']['CLAUDE_SESSION_ID'];_0x3ff65c&&registerSession(_0x3ff65c,_0x5780a7['id']),_0x12fd7a['BcZyd'](displayFeature,_0x5780a7,_0x5780a7['checklistItems']),await printFeedbackNudge(_0x5780a7['id']);}async function printFeedbackNudge(_0x35d994){const _0x540a9f=_0x41fdff,_0x3eb21b={'ZvGsz':function(_0x1f3112,_0x253ac1){return _0x1f3112(_0x253ac1);},'itvFN':function(_0x4a3f69,_0x2670cc){return _0x4a3f69>_0x2670cc;},'XLTWi':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0xe8b4ac}=await _0x3eb21b['ZvGsz'](getActionItems,_0x35d994);let _0xe96d38=0x0,_0x2184e1=0x0;for(const _0x291c79 of _0xe8b4ac){const _0x28fe08=await getItemFeedback(_0x35d994,_0x291c79['id']);_0x3eb21b['itvFN'](_0x28fe08[_0x540a9f(0x11d)][_0x540a9f(0x191)],0x0)&&(_0xe96d38+=_0x28fe08['unaddressedComments'][_0x540a9f(0x191)],_0x2184e1++);}_0xe96d38>0x0&&(console['log']('\x0a⚠️\x20\x20'+_0xe96d38+_0x540a9f(0x1b1)+_0x2184e1+_0x540a9f(0x198)),console['log'](_0x3eb21b[_0x540a9f(0x1af)]));}catch{}}async function tryStartCurrentSession(_0x3a2d27){const _0x19434b=_0x41fdff,_0x3d8848={'HsKTP':function(_0x5e404f,_0x1a0d19){return _0x5e404f(_0x1a0d19);},'qnxHV':function(_0x4b8e6a,_0x40ecc3,_0x53043f){return _0x4b8e6a(_0x40ecc3,_0x53043f);}};try{const {sessions:_0x4ee109}=await _0x3d8848['HsKTP'](listFeatureSessions,_0x3a2d27),_0x1009d8=_0x4ee109[_0x19434b(0x186)](_0x5b3c2c=>_0x5b3c2c[_0x19434b(0x1a4)]==='ready');_0x1009d8&&(await _0x3d8848[_0x19434b(0x155)](startSession,_0x3a2d27,_0x1009d8['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x1009d8[_0x19434b(0x13d)]));}catch{}}export async function featureReport(_0x1eff91,_0x2fd680){const _0x589367=_0x41fdff,_0x3fcf01={'yiACl':function(_0x4be988){return _0x4be988();},'pxONe':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','MCbJe':function(_0x36e153,_0x35114c,_0x1c8394,_0x6b1ba2){return _0x36e153(_0x35114c,_0x1c8394,_0x6b1ba2);},'USqDb':function(_0x4f1611,_0x2b9d5f,_0x1cccb0){return _0x4f1611(_0x2b9d5f,_0x1cccb0);},'snCMp':function(_0x1c1160,_0x250ac8){return _0x1c1160(_0x250ac8);},'chQHb':'utf-8'},_0x2a5914=_0x1eff91||await _0x3fcf01[_0x589367(0x142)](getActiveFeatureId);if(!_0x2a5914)throw new Error(_0x3fcf01[_0x589367(0x192)]);console['log'](_0x589367(0x169));const _0x2d8cce=await getFeatureReportMarkdown(_0x2a5914,{'style':_0x2fd680[_0x589367(0x154)]}),_0x101e1b=_0x2fd680['output']||_0x3fcf01['MCbJe'](join,getRangerDir(),'reports',_0x2a5914+_0x589367(0x18c)),_0x5ba232=_0x3fcf01[_0x589367(0x190)](join,_0x101e1b,'..');!_0x3fcf01['snCMp'](existsSync,_0x5ba232)&&await _0x3fcf01['USqDb'](mkdir,_0x5ba232,{'recursive':!![]}),await writeFile(_0x101e1b,_0x2d8cce,_0x3fcf01['chQHb']),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x101e1b);}export async function featureConcludeSession(_0x8e209c){const _0x1bf4a3=_0x41fdff,_0x24699d={'kIQLK':_0x1bf4a3(0x14d),'XClmH':function(_0x21a617,_0x93d2ed){return _0x21a617(_0x93d2ed);},'mOgag':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','dTREt':_0x1bf4a3(0x144),'RyGqV':'\x0aConcluding\x20session...','cBney':function(_0x476bc8,_0x2749cc,_0xbbb093){return _0x476bc8(_0x2749cc,_0xbbb093);}},_0x2ac3d7=_0x8e209c||await getActiveFeatureId();if(!_0x2ac3d7)throw new Error(_0x24699d['kIQLK']);const _0x2752e5=await _0x24699d['XClmH'](getFeature,_0x2ac3d7);if(!_0x2752e5['currentSessionId'])throw new Error(_0x24699d[_0x1bf4a3(0x18b)]);const {sessions:_0x383fa4}=await listFeatureSessions(_0x2ac3d7),_0x1de903=_0x383fa4['find'](_0x5b46a7=>_0x5b46a7['id']===_0x2752e5['currentSessionId']);if(!_0x1de903)throw new Error(_0x24699d['dTREt']);if(_0x1de903['status']===_0x1bf4a3(0x18d)){console['log']('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x1de903[_0x1bf4a3(0x1a4)]!=='in_progress')throw new Error(_0x1bf4a3(0x139)+_0x1de903['status']);console[_0x1bf4a3(0x137)](_0x24699d['RyGqV']),await _0x24699d[_0x1bf4a3(0x17a)](concludeSession,_0x2ac3d7,_0x2752e5['currentSessionId']),console['log'](_0x1bf4a3(0x156)+_0x1de903['iteration']+'\x20concluded.'),console[_0x1bf4a3(0x137)](_0x1bf4a3(0x13a));}export async function featureSessions(_0x4ee4b1){const _0x2ca95e=_0x41fdff,_0x3af663={'sLUMQ':function(_0x328761){return _0x328761();},'kMkyY':function(_0x4d3c08,_0x53cd66){return _0x4d3c08(_0x53cd66);},'mifur':_0x2ca95e(0x18d)},_0x25948f=_0x4ee4b1||await _0x3af663['sLUMQ'](getActiveFeatureId);if(!_0x25948f)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x7089f1=await getFeature(_0x25948f);console['log'](_0x2ca95e(0x19a)+_0x7089f1[_0x2ca95e(0x1bd)]+'\x0a');const {sessions:_0x581f6e}=await _0x3af663['kMkyY'](listFeatureSessions,_0x25948f);if(_0x581f6e['length']===0x0){console[_0x2ca95e(0x137)](_0x2ca95e(0x16e));return;}for(const _0x2be6cd of _0x581f6e){const _0x1d80a2=_0x2be6cd[_0x2ca95e(0x1a4)]===_0x3af663['mifur']?'✅':_0x2be6cd['status']==='in_progress'?'🔄':'▶️';console['log'](_0x1d80a2+'\x20Session\x20'+_0x2be6cd[_0x2ca95e(0x13d)]+'\x20('+_0x2be6cd['id']+')'),console[_0x2ca95e(0x137)](_0x2ca95e(0x1b2)+_0x2be6cd[_0x2ca95e(0x1a4)]),console[_0x2ca95e(0x137)](_0x2ca95e(0x1a5)+new Date(_0x2be6cd['createdAt'])['toLocaleString']()),_0x2be6cd[_0x2ca95e(0x185)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x2be6cd['completedAt'])[_0x2ca95e(0x132)]()),console[_0x2ca95e(0x137)]('');}}export async function featureAddScenario(_0x271f22,_0x3fa27f){const _0x590b37=_0x41fdff,_0x2b0cc1={'ZVWcn':function(_0x170338,_0x3479e5,_0x3840e8){return _0x170338(_0x3479e5,_0x3840e8);},'XpdWW':function(_0x1363ed,_0x41c415){return _0x1363ed(_0x41c415);},'YLmII':function(_0x942f66,_0xbf5655,_0x597def){return _0x942f66(_0xbf5655,_0x597def);}},_0x241cc9=_0x3fa27f||await getActiveFeatureId();if(!_0x241cc9)throw new Error(_0x590b37(0x14d));const _0x27f729=await getFeature(_0x241cc9);if(_0x27f729[_0x590b37(0x177)]&&!_0x27f729['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x27f729['dashboardUrl']);await _0x2b0cc1[_0x590b37(0x1bc)](createChecklistItem,_0x241cc9,_0x271f22);const _0x1fb556=await _0x2b0cc1[_0x590b37(0x134)](getFeature,_0x241cc9);console['log']('\x0a✅\x20Scenario\x20added'),_0x2b0cc1[_0x590b37(0x172)](displayFeature,_0x1fb556,_0x1fb556['checklistItems']);}export async function featureEditScenario(_0x5d7888,_0x92d18d){const _0x1e571a=_0x41fdff,_0x1d413d={'QSqII':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','LONsj':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','SSCDh':'Please\x20finish\x20your\x20review\x20first:','wpSMF':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','DfBwV':'\x0aAvailable\x20scenarios:','fCZKw':function(_0x43e5d3,_0x14afa6){return _0x43e5d3-_0x14afa6;},'lPMCk':function(_0x5282aa,_0x4dcc38){return _0x5282aa<_0x4dcc38;},'gQJbg':function(_0x1e4a76,_0x556ce8){return _0x1e4a76>=_0x556ce8;},'NYTYb':function(_0x273722,_0x5a5ca5,_0x8bd3f6){return _0x273722(_0x5a5ca5,_0x8bd3f6);}},_0x222398=_0x92d18d['id']||await getActiveFeatureId();!_0x222398&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x1e571a(0x197)](_0x1d413d[_0x1e571a(0x150)]),process['exit'](0x1));const _0x43374b=await getFeature(_0x222398);_0x43374b[_0x1e571a(0x177)]&&!_0x43374b[_0x1e571a(0x177)]['submittedAt']&&(console['error'](_0x1d413d['LONsj']),console[_0x1e571a(0x197)](_0x1d413d['SSCDh']),console[_0x1e571a(0x197)]('\x20\x20'+_0x43374b['dashboardUrl']),process['exit'](0x1));const _0x125b62=_0x43374b[_0x1e571a(0x147)]||[];_0x125b62['length']===0x0&&(console['error'](_0x1d413d[_0x1e571a(0x129)]),process[_0x1e571a(0x117)](0x1));if(_0x92d18d[_0x1e571a(0x1b7)]===undefined){console[_0x1e571a(0x197)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x1d413d['DfBwV']);for(let _0x151be2=0x0;_0x151be2<_0x125b62[_0x1e571a(0x191)];_0x151be2++){console[_0x1e571a(0x137)]('\x20\x20'+(_0x151be2+0x1)+'.\x20'+_0x125b62[_0x151be2][_0x1e571a(0x12a)]);}process['exit'](0x1);}const _0x3b76be=_0x1d413d[_0x1e571a(0x133)](_0x92d18d['scenario'],0x1);if(_0x1d413d['lPMCk'](_0x3b76be,0x0)||_0x1d413d[_0x1e571a(0x148)](_0x3b76be,_0x125b62[_0x1e571a(0x191)])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x92d18d[_0x1e571a(0x1b7)]+'.\x20Feature\x20review\x20has\x20'+_0x125b62[_0x1e571a(0x191)]+_0x1e571a(0x12d)),console[_0x1e571a(0x137)](_0x1d413d[_0x1e571a(0x1a0)]);for(let _0xfa4876=0x0;_0x1d413d[_0x1e571a(0x175)](_0xfa4876,_0x125b62[_0x1e571a(0x191)]);_0xfa4876++){console[_0x1e571a(0x137)]('\x20\x20'+(_0xfa4876+0x1)+'.\x20'+_0x125b62[_0xfa4876][_0x1e571a(0x12a)]);}process['exit'](0x1);}const _0x59f2c8=_0x125b62[_0x3b76be];await updateChecklistItem(_0x222398,_0x59f2c8['id'],{'description':_0x5d7888});const _0x348249=await getFeature(_0x222398);console[_0x1e571a(0x137)](_0x1e571a(0x127)),_0x1d413d[_0x1e571a(0x10d)](displayFeature,_0x348249,_0x348249[_0x1e571a(0x147)]);}async function downloadFeedbackImage(_0x69ec19,_0x320468){const _0x5d692a=_0x41fdff,_0x77f7c7={'RNdrr':function(_0x414c02,_0x3be0fb,_0x59997d){return _0x414c02(_0x3be0fb,_0x59997d);},'cLgJz':_0x5d692a(0x115),'hMOJT':function(_0x1e0d6e,_0x2773e1,_0xe542ab){return _0x1e0d6e(_0x2773e1,_0xe542ab);}};try{const _0x2347de=_0x77f7c7['RNdrr'](join,getRangerDir(),_0x77f7c7['cLgJz']);await _0x77f7c7[_0x5d692a(0x1a3)](mkdir,_0x2347de,{'recursive':!![]});const _0x200089=join(_0x2347de,'comment_'+_0x320468+'.png'),_0x17e87d=await fetch(_0x69ec19);if(!_0x17e87d['ok'])return null;const _0x344594=Buffer['from'](await _0x17e87d['arrayBuffer']());return await writeFile(_0x200089,_0x344594),_0x200089;}catch{return null;}}export async function featureGetReview(_0x249273){const _0x2a4ff0=_0x41fdff,_0x3926c4={'OFrCB':function(_0x339ecd){return _0x339ecd();},'DQWah':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','SncOq':function(_0x5a3fc7,_0x156ac7){return _0x5a3fc7(_0x156ac7);},'jxfTU':_0x2a4ff0(0x10f),'YQtgB':function(_0x411983,_0x2a5338){return _0x411983<_0x2a5338;},'UMsdC':function(_0x134aa8,_0xef37bc){return _0x134aa8>_0xef37bc;},'mQkpY':function(_0x5f0722,_0x2e5065,_0x151726){return _0x5f0722(_0x2e5065,_0x151726);},'dGMiE':function(_0x3a2da4,_0x59af47){return _0x3a2da4+_0x59af47;},'NpNkG':'en-US','IaumI':'short','HVQAU':function(_0xdca3a9,_0x5aea36,_0x4d9578){return _0xdca3a9(_0x5aea36,_0x4d9578);},'uhrey':function(_0x25176c,_0x4e6d89){return _0x25176c===_0x4e6d89;},'UImwA':'point','hIbSh':function(_0x4b69f6,_0x158e62){return _0x4b69f6+_0x158e62;}},_0x7af38f=_0x249273||await _0x3926c4['OFrCB'](getActiveFeatureId);if(!_0x7af38f)throw new Error(_0x3926c4['DQWah']);const _0x482a8b=await _0x3926c4['SncOq'](getFeature,_0x7af38f),{items:_0x4ed4d0}=await getActionItems(_0x7af38f);console[_0x2a4ff0(0x137)]('\x0a📋\x20Feedback\x20for:\x20'+_0x482a8b[_0x2a4ff0(0x1bd)]+'\x20('+_0x482a8b['id']+')\x0a');if(_0x4ed4d0['length']===0x0){console[_0x2a4ff0(0x137)](_0x3926c4[_0x2a4ff0(0x1a7)]);return;}for(let _0x5d48e6=0x0;_0x3926c4['YQtgB'](_0x5d48e6,_0x4ed4d0['length']);_0x5d48e6++){const _0x5cbe87=_0x4ed4d0[_0x5d48e6],_0x4c1741=_0x3926c4[_0x2a4ff0(0x116)](_0x5cbe87[_0x2a4ff0(0x163)],0x1)?_0x2a4ff0(0x11a)+_0x5cbe87[_0x2a4ff0(0x163)]+')':'',_0x845b4e=await _0x3926c4['mQkpY'](getItemFeedback,_0x7af38f,_0x5cbe87['id']);if(_0x3926c4['UMsdC'](_0x845b4e['unaddressedComments']['length'],0x0)){console[_0x2a4ff0(0x137)](_0x2a4ff0(0x11f)+_0x3926c4['dGMiE'](_0x5d48e6,0x1)+_0x2a4ff0(0x14a)+_0x5cbe87[_0x2a4ff0(0x12a)]+'\x22'+_0x4c1741+_0x2a4ff0(0x178)+_0x845b4e['unaddressedComments']['length']+_0x2a4ff0(0x1a2));for(const _0x3cf252 of _0x845b4e['unaddressedComments']){const _0x18fa39=new Date(_0x3cf252['createdAt'])[_0x2a4ff0(0x13f)](_0x3926c4['NpNkG'],{'month':_0x3926c4['IaumI'],'day':'numeric'}),_0x4b85df=_0x3cf252[_0x2a4ff0(0x181)]||_0x3cf252['authorEmail']||'Unknown';console['log']('\x20\x20💬\x20'+_0x4b85df+'\x20('+_0x18fa39+_0x2a4ff0(0x18a)+_0x3cf252[_0x2a4ff0(0x1ae)]+'\x22');if(_0x3cf252[_0x2a4ff0(0x14c)]){const _0x18a448=await _0x3926c4[_0x2a4ff0(0x17f)](downloadFeedbackImage,_0x3cf252['assetUrl'],_0x3cf252['id']);_0x18a448&&console[_0x2a4ff0(0x137)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x18a448);}if(_0x3cf252['spatial']){const _0x55066f=_0x3cf252[_0x2a4ff0(0x1b8)][_0x2a4ff0(0x1ad)];_0x3926c4['uhrey'](_0x3cf252[_0x2a4ff0(0x1b8)]['type'],_0x3926c4['UImwA'])&&_0x55066f['length']>=0x2?console['log'](_0x2a4ff0(0x1b4)+_0x55066f[0x0]['toFixed'](0x2)+',\x20'+_0x55066f[0x1]['toFixed'](0x2)+')'):console[_0x2a4ff0(0x137)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x3cf252[_0x2a4ff0(0x1b8)][_0x2a4ff0(0x1a8)]+_0x2a4ff0(0x19e)+_0x55066f[_0x2a4ff0(0x146)](_0x3282ea=>_0x3282ea[_0x2a4ff0(0x118)](0x2))[_0x2a4ff0(0x176)](',\x20')+']');}}if(_0x845b4e['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x2bda3a of _0x845b4e['canonicalFlow'][_0x2a4ff0(0x182)]('\x0a')){console['log'](_0x2a4ff0(0x19d)+_0x2bda3a);}}}else console[_0x2a4ff0(0x137)](_0x2a4ff0(0x11f)+_0x3926c4[_0x2a4ff0(0x106)](_0x5d48e6,0x1)+_0x2a4ff0(0x14a)+_0x5cbe87[_0x2a4ff0(0x12a)]+'\x22'+_0x4c1741+'\x20—\x20no\x20comments'),console['log'](_0x2a4ff0(0x145));console[_0x2a4ff0(0x137)]('');}}export async function featureDelete(_0x4bf0f5){const _0x528995=_0x41fdff,_0x204341={'mnRqy':function(_0x4675d6){return _0x4675d6();},'YQFyP':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','eXBWi':function(_0x59f907,_0x4d4bbd){return _0x59f907(_0x4d4bbd);},'YocTg':function(_0x5aba11,_0x1ee6ba){return _0x5aba11+_0x1ee6ba;}},_0x4abfc2=_0x4bf0f5||await _0x204341[_0x528995(0x122)](getActiveFeatureId);if(!_0x4abfc2)throw new Error(_0x204341['YQFyP']);const _0x1327f2=await getFeature(_0x4abfc2);await _0x204341[_0x528995(0x114)](softDeleteFeature,_0x4abfc2),console[_0x528995(0x137)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x1327f2['name']+'\x20('+_0x4abfc2+')'),console['log'](_0x204341['YocTg'](_0x528995(0x1c0),_0x4abfc2));}export async function featureRestore(_0x397b74){const _0x1dcfb4=_0x41fdff,_0xa25e7d={'WjQrj':function(_0x42229c,_0x4ef6c9){return _0x42229c(_0x4ef6c9);},'mHivn':function(_0x33de22,_0x201d48,_0x569e95){return _0x33de22(_0x201d48,_0x569e95);}};await _0xa25e7d['WjQrj'](restoreFeature,_0x397b74);const _0x352cc7=await getFeature(_0x397b74);console[_0x1dcfb4(0x137)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x352cc7[_0x1dcfb4(0x1bd)]+'\x20('+_0x397b74+')'),_0xa25e7d[_0x1dcfb4(0x180)](displayFeature,_0x352cc7,_0x352cc7['checklistItems']);}
1
+ (function(_0x2cba6c,_0x501c1f){const _0x343933=_0x2eb1,_0x2d2eb7=_0x2cba6c();while(!![]){try{const _0x1306c8=-parseInt(_0x343933(0x1a1))/0x1+parseInt(_0x343933(0x1d0))/0x2+-parseInt(_0x343933(0x1f2))/0x3+-parseInt(_0x343933(0x1c6))/0x4+-parseInt(_0x343933(0x19b))/0x5+parseInt(_0x343933(0x21b))/0x6+parseInt(_0x343933(0x1d8))/0x7;if(_0x1306c8===_0x501c1f)break;else _0x2d2eb7['push'](_0x2d2eb7['shift']());}catch(_0x1b62aa){_0x2d2eb7['push'](_0x2d2eb7['shift']());}}}(_0x18ee,0x79c39));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5a4a40 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x11b3d3=>'\x1b[1m'+_0x11b3d3+'\x1b[0m';function getGitRepoUrl(){const _0x5ab3e1=_0x2eb1,_0x53295a={'NPtkH':function(_0x2ff679,_0x249b43,_0x277049){return _0x2ff679(_0x249b43,_0x277049);},'fOUiZ':'pipe','LWwjE':'github.com/'};try{const _0x1ba5ad=_0x53295a[_0x5ab3e1(0x1b4)](execSync,_0x5ab3e1(0x202),{'encoding':_0x5ab3e1(0x199),'stdio':[_0x53295a[_0x5ab3e1(0x240)],_0x5ab3e1(0x1f1),_0x53295a[_0x5ab3e1(0x240)]]})[_0x5ab3e1(0x1a7)]();return _0x1ba5ad[_0x5ab3e1(0x1af)](/\.git$/,'')[_0x5ab3e1(0x1af)](/^git@github\.com:/,_0x53295a['LWwjE'])[_0x5ab3e1(0x1af)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x559721=_0x2eb1,_0x4866dc={'uHdxi':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','UxUPz':_0x559721(0x199),'VFzKk':'pipe'};try{return execSync(_0x4866dc[_0x559721(0x214)],{'encoding':_0x4866dc[_0x559721(0x1b3)],'stdio':[_0x4866dc['VFzKk'],_0x4866dc[_0x559721(0x1f0)],'pipe']})[_0x559721(0x1a7)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1b9ab0={'azNZO':function(_0x2b50d9,_0x219cd3,_0x1fa426){return _0x2b50d9(_0x219cd3,_0x1fa426);},'qFknb':function(_0x2725c7,_0x399c09){return _0x2725c7(_0x399c09);},'SROXd':function(_0x3f4356,_0x2fcebb,_0xc479bd){return _0x3f4356(_0x2fcebb,_0xc479bd);}},_0x563b57=_0x1b9ab0['azNZO'](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x1b9ab0['qFknb'](existsSync,_0x563b57))return null;try{const _0x2254f2=await _0x1b9ab0['SROXd'](readFile,_0x563b57,'utf-8');return _0x2254f2['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x966805){const _0x59b220=_0x2eb1,_0x4ff2ab={'DNxjp':function(_0x38f510){return _0x38f510();},'ePZJh':function(_0x3df582,_0x32c8b5,_0x4bd067){return _0x3df582(_0x32c8b5,_0x4bd067);},'pelOE':function(_0x17c73b,_0xd791da){return _0x17c73b(_0xd791da);},'oTrmb':function(_0x5a7901,_0x5eb8b6,_0x146b7e){return _0x5a7901(_0x5eb8b6,_0x146b7e);},'CSjgF':function(_0xd7d1a8,_0x35a316,_0x2a5ca4,_0x4eb1d4){return _0xd7d1a8(_0x35a316,_0x2a5ca4,_0x4eb1d4);}},_0x532ab5=_0x4ff2ab[_0x59b220(0x18e)](getRangerDir),_0xb4f40d=_0x4ff2ab['ePZJh'](join,_0x532ab5,ACTIVE_FEATURE_FILE);!_0x4ff2ab[_0x59b220(0x1e4)](existsSync,_0x532ab5)&&await _0x4ff2ab['oTrmb'](mkdir,_0x532ab5,{'recursive':!![]}),await _0x4ff2ab[_0x59b220(0x21e)](writeFile,_0xb4f40d,_0x966805,'utf-8');}function getProgressDisplay(_0x57a439){const _0x44126d=_0x2eb1,_0xfcd655={'GvydI':function(_0x1d7552,_0x11d6b6){return _0x1d7552+_0x11d6b6;},'rzagF':function(_0x2e8113,_0xf1150c){return _0x2e8113-_0xf1150c;},'cXvMj':function(_0x8510ce,_0x3915ea){return _0x8510ce>_0x3915ea;},'fuLLv':function(_0x55be91,_0x3578a9){return _0x55be91>_0x3578a9;}},_0x1a1d7a=_0x57a439[_0x44126d(0x1b0)]||0x0,_0x2d5401=_0x57a439['verificationInProgressItems']||0x0,_0x41bc19=_0x57a439['blockedItems']||0x0,_0x11e940=_0x57a439[_0x44126d(0x1e1)]||0x0,_0x101c9e=_0x57a439['pendingItems']||0x0,_0x16f5d1=_0xfcd655[_0x44126d(0x21d)](_0xfcd655[_0x44126d(0x21d)](_0xfcd655['GvydI'](_0x1a1d7a,_0x2d5401)+_0x41bc19,_0x11e940),_0x101c9e);if(_0x16f5d1===0x0)return'-';const _0x68481=0xa,_0x146c11=Math[_0x44126d(0x213)](_0x1a1d7a/_0x16f5d1*_0x68481),_0x2e829f='█'['repeat'](_0x146c11)+'░'['repeat'](_0xfcd655[_0x44126d(0x19e)](_0x68481,_0x146c11)),_0x4fae66=[];if(_0xfcd655['cXvMj'](_0x41bc19,0x0))_0x4fae66[_0x44126d(0x212)](_0x41bc19+_0x44126d(0x1aa));if(_0x11e940>0x0)_0x4fae66[_0x44126d(0x212)](_0x11e940+_0x44126d(0x1d9));if(_0xfcd655['fuLLv'](_0x2d5401,0x0))_0x4fae66[_0x44126d(0x212)](_0x2d5401+_0x44126d(0x21a));const _0x4c9503=_0x4fae66[_0x44126d(0x1ad)]>0x0?'\x20('+_0x4fae66[_0x44126d(0x23a)](',\x20')+')':'';return _0x2e829f+'\x20'+_0x1a1d7a+'/'+_0x16f5d1+_0x44126d(0x232)+_0x4c9503;}function displayFeature(_0x276cc5,_0x248adb){const _0x48d93d=_0x2eb1,_0x5327b2={'AuFfs':function(_0xf0f9cb,_0x43de43){return _0xf0f9cb>_0x43de43;},'xocUs':'\x0a\x20\x20\x20Scenarios:','RYLog':function(_0x363229,_0x5413d3){return _0x363229===_0x5413d3;},'gsJas':'blocked','MuxLQ':function(_0x520eb0,_0xf7628d){return _0x520eb0===_0xf7628d;},'ULOhX':'closed','oafQI':function(_0x4f7ef6,_0x25f685){return _0x4f7ef6+_0x25f685;},'QQHCr':function(_0x1cd660,_0x361110){return _0x1cd660===_0x361110;}};console[_0x48d93d(0x239)]('\x0a'+_0x276cc5[_0x48d93d(0x18c)]+'\x20('+_0x276cc5[_0x48d93d(0x22a)]+')');_0x276cc5[_0x48d93d(0x1c0)]&&console['log'](_0x48d93d(0x238)+getProgressDisplay(_0x276cc5[_0x48d93d(0x1c0)]));_0x276cc5[_0x48d93d(0x1fd)]&&console[_0x48d93d(0x239)]('\x20\x20\x20Description:\x20'+_0x276cc5['description']);_0x276cc5[_0x48d93d(0x1e3)]&&console[_0x48d93d(0x239)]('\x20\x20\x20Repository:\x20'+_0x276cc5['gitRepoUrl']);_0x276cc5['gitBranch']&&console['log'](_0x48d93d(0x235)+_0x276cc5['gitBranch']);console['log'](_0x48d93d(0x218)+new Date(_0x276cc5[_0x48d93d(0x1cb)])['toLocaleString']());_0x276cc5[_0x48d93d(0x1c2)]&&console[_0x48d93d(0x239)]('\x20\x20\x20Completed:\x20'+new Date(_0x276cc5[_0x48d93d(0x1c2)])[_0x48d93d(0x228)]());if(_0x248adb&&_0x5327b2['AuFfs'](_0x248adb[_0x48d93d(0x1ad)],0x0)){console[_0x48d93d(0x239)](_0x5327b2['xocUs']);for(let _0x41f4b4=0x0;_0x41f4b4<_0x248adb[_0x48d93d(0x1ad)];_0x41f4b4++){const _0x389874=_0x248adb[_0x41f4b4];let _0x1120e1;if(_0x389874[_0x48d93d(0x229)]==='closed'&&_0x5327b2[_0x48d93d(0x1b5)](_0x389874['terminalReason'],_0x48d93d(0x211)))_0x1120e1='✅';else{if(_0x389874['status']===_0x48d93d(0x195))_0x1120e1='🟢';else{if(_0x5327b2['RYLog'](_0x389874['status'],_0x48d93d(0x1df)))_0x1120e1='🟠';else{if(_0x5327b2[_0x48d93d(0x1b5)](_0x389874['status'],_0x5327b2[_0x48d93d(0x1c4)]))_0x1120e1='🛑';else{if(_0x5327b2['MuxLQ'](_0x389874[_0x48d93d(0x229)],_0x5327b2['ULOhX']))_0x1120e1='⛔';else _0x5327b2['RYLog'](_0x389874['status'],'verification_in_progress')?_0x1120e1='⏳':_0x1120e1='⬜';}}}}const _0x4e3017=_0x389874[_0x48d93d(0x23d)]>0x1?_0x48d93d(0x20a)+_0x389874[_0x48d93d(0x23d)]+')':'',_0x5ed0d9=_0x389874['version']>0x1&&_0x389874[_0x48d93d(0x1e2)]&&_0x389874['status']!==_0x5327b2['ULOhX']&&_0x389874['status']!=='verified'?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+_0x5327b2[_0x48d93d(0x1e5)](_0x41f4b4,0x1)+'.\x20'+_0x1120e1+'\x20'+_0x389874[_0x48d93d(0x1fd)]+_0x4e3017+_0x5ed0d9);_0x5327b2['RYLog'](_0x389874['status'],_0x5327b2[_0x48d93d(0x1c4)])&&_0x389874['blockedReason']&&console['log'](_0x48d93d(0x1f8)+_0x389874['blockedReason']);_0x389874['status']==='incomplete'&&_0x389874[_0x48d93d(0x20c)]&&console[_0x48d93d(0x239)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x389874['incompleteReason']);if(_0x5327b2[_0x48d93d(0x1d2)](_0x389874['status'],_0x5327b2[_0x48d93d(0x210)])&&_0x5327b2['RYLog'](_0x389874['terminalReason'],_0x48d93d(0x211)))console[_0x48d93d(0x239)](_0x48d93d(0x1ef));else _0x5327b2[_0x48d93d(0x1de)](_0x389874['status'],_0x5327b2['ULOhX'])&&_0x389874[_0x48d93d(0x20f)]&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x389874[_0x48d93d(0x20f)]);}}}export async function featureCreate(_0x4e876a,_0x41f29b){const _0xe618e1=_0x2eb1,_0x5df742={'arpNO':function(_0x3c7602){return _0x3c7602();},'GNXuw':function(_0x15add4,_0x2d78ca){return _0x15add4===_0x2d78ca;},'AykQP':function(_0x8aef32,_0x33d777){return _0x8aef32(_0x33d777);},'hqyFt':function(_0x50a809){return _0x50a809();}},{envNames:_0x296a7a}=await _0x5df742[_0xe618e1(0x22b)](getEnvNames);_0x5df742[_0xe618e1(0x23f)](_0x296a7a[_0xe618e1(0x1ad)],0x0)&&console['warn']('\x0a'+_0x5df742[_0xe618e1(0x231)](formatProfileRequiredMessage,_0x20be53=>bold(_0x20be53)));const _0x2221e0=_0x41f29b['scenarios']?_0x41f29b['scenarios']['map'](_0x14bb12=>_0x14bb12[_0xe618e1(0x1a7)]()):[],_0x17bf72=getGitRepoUrl(),_0x4ec035=_0x5df742[_0xe618e1(0x1a2)](getGitBranch);console['log'](_0xe618e1(0x191));const _0x3ea62d=await _0x5df742['AykQP'](createFeature,{'name':_0x4e876a,'description':_0x41f29b['description'],'checklist':_0x2221e0,'gitRepoUrl':_0x17bf72,'gitBranch':_0x4ec035});await setActiveFeatureId(_0x3ea62d['id']),await tryStartCurrentSession(_0x3ea62d['id']);const _0x1780bb=process[_0xe618e1(0x1b9)]['CLAUDE_SESSION_ID'];_0x1780bb&&registerSession(_0x1780bb,_0x3ea62d['id']),console['log'](_0xe618e1(0x20e)+_0x3ea62d['id']),displayFeature(_0x3ea62d,_0x3ea62d['checklistItems']),console[_0xe618e1(0x239)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x3ecef5){const _0x9417ef=_0x2eb1,_0x111ca7={'VcNGL':function(_0x49f517){return _0x49f517();},'gwfnt':function(_0x5e930a,_0x55b2cd){return _0x5e930a===_0x55b2cd;},'cJzSh':_0x9417ef(0x198),'gRdMr':function(_0x4156c5,_0x5cb2f1){return _0x4156c5(_0x5cb2f1);},'pwbBc':function(_0x268efd,_0x7a4690){return _0x268efd<_0x7a4690;},'plIhB':function(_0x1a833e,_0x30bfef){return _0x1a833e!==_0x30bfef;},'OcaPw':'\x20--current-branch'},_0x183052={'limit':_0x3ecef5[_0x9417ef(0x19c)]??0xa,'offset':_0x3ecef5['offset']??0x0,'includeDeleted':_0x3ecef5[_0x9417ef(0x190)]};_0x3ecef5[_0x9417ef(0x192)]&&(_0x183052[_0x9417ef(0x1e3)]=getGitRepoUrl(),_0x183052['gitBranch']=_0x111ca7[_0x9417ef(0x1ce)](getGitBranch));const _0x29a3cb=await listFeatures(_0x183052);if(_0x111ca7[_0x9417ef(0x1e7)](_0x29a3cb[_0x9417ef(0x18d)]['length'],0x0)){console[_0x9417ef(0x239)](_0x111ca7['cJzSh']);return;}const _0x4bdbfb=_0x29a3cb[_0x9417ef(0x1f4)]>_0x29a3cb[_0x9417ef(0x18d)][_0x9417ef(0x1ad)]?_0x9417ef(0x1a5)+_0x29a3cb['items']['length']+'\x20of\x20'+_0x29a3cb['totalCount']:_0x29a3cb['totalCount']+_0x9417ef(0x209);console[_0x9417ef(0x239)]('\x0a'+_0x4bdbfb+':\x0a');for(const _0x37aa92 of _0x29a3cb['items']){console['log'](''+_0x37aa92['name']),console['log']('\x20\x20\x20ID:\x20'+_0x37aa92['id']),_0x37aa92[_0x9417ef(0x1c0)]&&console[_0x9417ef(0x239)]('\x20\x20\x20Progress:\x20'+_0x111ca7[_0x9417ef(0x1f7)](getProgressDisplay,_0x37aa92['stats'])),_0x37aa92[_0x9417ef(0x1e0)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x37aa92['gitBranch']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x37aa92[_0x9417ef(0x1cb)])['toLocaleDateString']()),console['log']('');}const _0x5524e4=_0x183052[_0x9417ef(0x19c)]??0xa,_0x1d6828=(_0x183052[_0x9417ef(0x1ca)]??0x0)+_0x29a3cb['items'][_0x9417ef(0x1ad)];if(_0x111ca7[_0x9417ef(0x215)](_0x1d6828,_0x29a3cb[_0x9417ef(0x1f4)])){const _0x4ad82b=_0x111ca7[_0x9417ef(0x1d7)](_0x5524e4,0xa)?_0x9417ef(0x1d1)+_0x5524e4:'',_0x45b296=_0x3ecef5['currentBranch']?_0x111ca7[_0x9417ef(0x23c)]:'',_0xa7575e=_0x3ecef5[_0x9417ef(0x190)]?'\x20--include-deleted':'';console[_0x9417ef(0x239)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x1d6828+_0x4ad82b+_0x45b296+_0xa7575e);}}export async function featureShow(_0x1be6e7){const _0xc9d928=_0x2eb1,_0x4e3f57={'ETVQz':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x3a47bb=_0x1be6e7||await getActiveFeatureId();if(!_0x3a47bb)throw new Error(_0x4e3f57[_0xc9d928(0x1cf)]);const _0x4e0c67=await getFeature(_0x3a47bb);displayFeature(_0x4e0c67,_0x4e0c67['checklistItems']);}export async function featureResume(_0x4d837e){const _0x46ef4f=_0x2eb1,_0x448d37={'jdNtm':function(_0x6b236,_0x434b7f){return _0x6b236!==_0x434b7f;},'AfLCF':function(_0x6ac0c2,_0x337309,_0xcb9afc){return _0x6ac0c2(_0x337309,_0xcb9afc);},'hBWKP':function(_0x16bffc,_0x295c0c){return _0x16bffc(_0x295c0c);},'ryJuf':function(_0x49dd4c,_0x2ced84,_0x36bb74){return _0x49dd4c(_0x2ced84,_0x36bb74);},'qnHVL':function(_0x55b982,_0x2d1ed2){return _0x55b982(_0x2d1ed2);},'uFNfs':function(_0x3c4990){return _0x3c4990();},'SToyu':_0x46ef4f(0x1eb),'CxfoF':function(_0x377fdb,_0x120030){return _0x377fdb||_0x120030;},'HpnSc':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','LtDlG':function(_0x4c51dc,_0x2949cd){return _0x4c51dc===_0x2949cd;},'NjNsU':_0x46ef4f(0x1d6),'cnPPt':function(_0x3cf5ea,_0x397119){return _0x3cf5ea!==_0x397119;}};if(_0x4d837e){const _0x50ab58=await getFeature(_0x4d837e);await setActiveFeatureId(_0x50ab58['id']);const _0x15df24=getGitBranch();_0x15df24&&_0x448d37['jdNtm'](_0x15df24,_0x50ab58[_0x46ef4f(0x1e0)])&&(await _0x448d37['AfLCF'](updateFeature,_0x50ab58['id'],{'gitBranch':_0x15df24}),console['log'](_0x46ef4f(0x1a6)+_0x15df24));console[_0x46ef4f(0x239)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x50ab58['name']+'\x20('+_0x50ab58['id']+')'),await _0x448d37[_0x46ef4f(0x22f)](tryStartCurrentSession,_0x50ab58['id']);const _0x3dcfbe=process['env']['CLAUDE_SESSION_ID'];_0x3dcfbe&&_0x448d37['ryJuf'](registerSession,_0x3dcfbe,_0x50ab58['id']);displayFeature(_0x50ab58,_0x50ab58['checklistItems']),await _0x448d37['qnHVL'](printFeedbackNudge,_0x50ab58['id']);return;}const _0x30344d=_0x448d37[_0x46ef4f(0x1db)](getGitRepoUrl),_0x4809b5=_0x448d37[_0x46ef4f(0x1db)](getGitBranch);if(!_0x30344d&&!_0x4809b5)throw new Error(_0x46ef4f(0x22c));console[_0x46ef4f(0x239)](_0x46ef4f(0x18f)+(_0x30344d||_0x448d37[_0x46ef4f(0x1a8)])+'\x20/\x20'+_0x448d37[_0x46ef4f(0x196)](_0x4809b5,'any')+'...');const _0x2fb8d0=await _0x448d37[_0x46ef4f(0x220)](listFeatures,{'gitRepoUrl':_0x30344d,'gitBranch':_0x4809b5}),_0x37e8e5=_0x2fb8d0['items'][_0x46ef4f(0x1ea)](_0x5406b0=>!_0x5406b0[_0x46ef4f(0x1c2)]);if(_0x37e8e5['length']===0x0){console[_0x46ef4f(0x239)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x448d37['HpnSc']);return;}let _0x20288d;if(_0x448d37['LtDlG'](_0x37e8e5['length'],0x1))_0x20288d=_0x37e8e5[0x0];else{const _0x168ba8=process[_0x46ef4f(0x1ed)]['isTTY']&&process['stdout']['isTTY'];if(!_0x168ba8){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x317e57 of _0x37e8e5){console['log']('\x20\x20'+_0x317e57[_0x46ef4f(0x18c)]),console['log'](_0x46ef4f(0x1dd)+_0x317e57['id']),_0x317e57['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x317e57['stats'])),_0x317e57['gitBranch']&&console['log'](_0x46ef4f(0x1fe)+_0x317e57['gitBranch']);}throw new Error(_0x448d37[_0x46ef4f(0x1dc)]);}const {selected:_0xb16371}=await _0x5a4a40['prompt']([{'type':_0x46ef4f(0x205),'name':_0x46ef4f(0x1da),'message':_0x46ef4f(0x23b),'choices':_0x37e8e5['map'](_0x371a28=>({'name':_0x371a28['name']+'\x20('+_0x371a28['id']+')','value':_0x371a28['id']}))}]);_0x20288d=_0x37e8e5[_0x46ef4f(0x19a)](_0x2af794=>_0x2af794['id']===_0xb16371);}await _0x448d37['hBWKP'](setActiveFeatureId,_0x20288d['id']);_0x4809b5&&_0x448d37[_0x46ef4f(0x207)](_0x4809b5,_0x20288d['gitBranch'])&&(await _0x448d37[_0x46ef4f(0x1d4)](updateFeature,_0x20288d['id'],{'gitBranch':_0x4809b5}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x4809b5));console[_0x46ef4f(0x239)](_0x46ef4f(0x1a0)+_0x20288d['name']+'\x20('+_0x20288d['id']+')'),await _0x448d37['hBWKP'](tryStartCurrentSession,_0x20288d['id']);const _0x3bb322=await getFeature(_0x20288d['id']),_0x517b85=process[_0x46ef4f(0x1b9)]['CLAUDE_SESSION_ID'];_0x517b85&&_0x448d37[_0x46ef4f(0x1d4)](registerSession,_0x517b85,_0x3bb322['id']),displayFeature(_0x3bb322,_0x3bb322['checklistItems']),await _0x448d37['qnHVL'](printFeedbackNudge,_0x3bb322['id']);}async function printFeedbackNudge(_0x2dd1d3){const _0x43a07f=_0x2eb1,_0x21e846={'nhbpX':function(_0x14b548,_0x4b3b52){return _0x14b548(_0x4b3b52);},'KwysQ':function(_0x2fa407,_0x3541fd,_0x467ea1){return _0x2fa407(_0x3541fd,_0x467ea1);}};try{const {items:_0x12add5}=await _0x21e846[_0x43a07f(0x1fb)](getActionItems,_0x2dd1d3);let _0x5862d9=0x0,_0x42304a=0x0;for(const _0x34ae08 of _0x12add5){const _0x5a7db3=await _0x21e846['KwysQ'](getItemFeedback,_0x2dd1d3,_0x34ae08['id']);_0x5a7db3[_0x43a07f(0x1cc)][_0x43a07f(0x1ad)]>0x0&&(_0x5862d9+=_0x5a7db3[_0x43a07f(0x1cc)]['length'],_0x42304a++);}_0x5862d9>0x0&&(console[_0x43a07f(0x239)]('\x0a⚠️\x20\x20'+_0x5862d9+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x42304a+'\x20scenario(s).'),console['log']('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}function _0x18ee(){const _0x2416ed=['kTXYs','offset','createdAt','unaddressedComments','in_progress','VcNGL','ETVQz','929082jgqiTD','\x20--limit\x20','MuxLQ','toFixed','ryJuf','\x20—\x20','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','plIhB','9720494HXhody','\x20incomplete','selected','uFNfs','NjNsU','\x20\x20\x20\x20\x20ID:\x20','QQHCr','incomplete','gitBranch','incompleteItems','parentItemId','gitRepoUrl','pelOE','oafQI','\x0a✅\x20Restored\x20feature\x20review:\x20','gwfnt','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','\x20\x20✅\x20No\x20feedback\x20to\x20address','filter','any','\x0a✅\x20Scenario\x20added','stdin','style','\x20\x20\x20\x20\x20\x20Approved','VFzKk','pipe','2384649XTHuyf','gfUFf','totalCount','exit','eMWpu','gRdMr','\x20\x20\x20\x20\x20\x20Blocked:\x20','\x20at\x20[',':\x20\x22','nhbpX','zrIkJ','description','\x20\x20\x20\x20\x20Branch:\x20','authorName','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','LYKIH','git\x20remote\x20get-url\x20origin','latestReview','):\x20\x22','list','\x20\x20Expected\x20flow:','cnPPt','short','\x20feature\x20review(s)\x20found','\x20(v','MRHqu','incompleteReason','OZhaL','\x0a✅\x20Feature\x20review\x20created:\x20','canceledReason','ULOhX','approved','push','round','uHdxi','pwbBc','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','assetUrl','\x20\x20\x20Created:\x20','cUJFI','\x20in\x20progress','1213296EBqdIK','dauGI','GvydI','CSjgF','Scenario\x20','qnHVL','.md','\x0a✅\x20Session\x20is\x20already\x20completed.','yDHWv','\x0aAvailable\x20scenarios:','\x0a✅\x20Scenario\x20updated','\x20concluded.','lKyPO','toLocaleString','status','dashboardUrl','arpNO','Not\x20in\x20a\x20git\x20repository.','submittedAt','xCHao','hBWKP','nMbSv','AykQP','\x20verified','\x20\x20\x20Status:\x20','iteration','\x20\x20\x20Branch:\x20','pVttv','\x0a❌\x20Invalid\x20scenario\x20index:\x20','\x20\x20\x20Progress:\x20','log','join','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','OcaPw','version','\x20—\x20no\x20comments','GNXuw','fOUiZ','name','items','DNxjp','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','includeDeleted','\x0aCreating\x20feature\x20review...','currentBranch','currentSessionId','coordinates','verified','CxfoF','comment_','\x0aNo\x20feature\x20reviews\x20found.','utf-8','find','384095NEYYWM','limit','nHPSZ','rzagF','scenario','\x0a✅\x20Resumed\x20feature\x20review:\x20','179560oAjSUr','hqyFt','Unknown','No\x20scenarios\x20found.','Showing\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','trim','SToyu','canonicalFlow','\x20blocked','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','authorEmail','length','OcjoM','replace','verifiedItems','INdUZ','GzTce','UxUPz','NPtkH','RYLog','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','qqXzZ','completed','env','spatial','elfCu','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','umdKZ','error','content','stats','PqbJP','completedAt','No\x20active\x20session\x20for\x20this\x20feature\x20review.','gsJas','checklistItems','2021568YcSVnU','ejjqO','yvJbF'];_0x18ee=function(){return _0x2416ed;};return _0x18ee();}async function tryStartCurrentSession(_0x229687){const _0x142ca5=_0x2eb1,_0x49be60={'umdKZ':function(_0x4a0a9c,_0x98bbb7){return _0x4a0a9c(_0x98bbb7);},'eMWpu':function(_0x3eee86,_0x15840c,_0x41e49a){return _0x3eee86(_0x15840c,_0x41e49a);}};try{const {sessions:_0xb87dbb}=await _0x49be60[_0x142ca5(0x1bd)](listFeatureSessions,_0x229687),_0x35c3d1=_0xb87dbb[_0x142ca5(0x19a)](_0x4009d7=>_0x4009d7[_0x142ca5(0x229)]==='ready');_0x35c3d1&&(await _0x49be60[_0x142ca5(0x1f6)](startSession,_0x229687,_0x35c3d1['id']),console[_0x142ca5(0x239)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x35c3d1[_0x142ca5(0x234)]));}catch{}}export async function featureReport(_0x252954,_0x4e6943){const _0xcb86d7=_0x2eb1,_0x2c4be3={'KfmqI':function(_0xdd28bf){return _0xdd28bf();},'GmxJM':function(_0x13a70f,_0x574216,_0x5a960c){return _0x13a70f(_0x574216,_0x5a960c);},'EKpQU':function(_0x43eb4d,_0x220f80){return _0x43eb4d(_0x220f80);},'elfCu':function(_0x51f656,_0x1b0d40,_0x3704a6,_0x47ff88){return _0x51f656(_0x1b0d40,_0x3704a6,_0x47ff88);}},_0x4abaf6=_0x252954||await _0x2c4be3['KfmqI'](getActiveFeatureId);if(!_0x4abaf6)throw new Error(_0xcb86d7(0x1ab));console[_0xcb86d7(0x239)]('\x0aGenerating\x20report...');const _0x5a9bc2=await _0x2c4be3['GmxJM'](getFeatureReportMarkdown,_0x4abaf6,{'style':_0x4e6943[_0xcb86d7(0x1ee)]}),_0x2a9f4a=_0x4e6943['output']||join(getRangerDir(),'reports',_0x4abaf6+_0xcb86d7(0x221)),_0xc049e9=join(_0x2a9f4a,'..');!_0x2c4be3['EKpQU'](existsSync,_0xc049e9)&&await _0x2c4be3['GmxJM'](mkdir,_0xc049e9,{'recursive':!![]}),await _0x2c4be3[_0xcb86d7(0x1bb)](writeFile,_0x2a9f4a,_0x5a9bc2,'utf-8'),console[_0xcb86d7(0x239)]('\x0a✅\x20Report\x20generated:\x20'+_0x2a9f4a);}export async function featureConcludeSession(_0x4503eb){const _0x5a2498=_0x2eb1,_0x300248={'nHPSZ':function(_0x4761de){return _0x4761de();},'GzTce':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','yvJbF':function(_0x34a9f7,_0x10a586){return _0x34a9f7(_0x10a586);},'wEkQA':_0x5a2498(0x1c3),'zQDKs':function(_0x5cb6e5,_0x49998b){return _0x5cb6e5(_0x49998b);},'cUJFI':'Current\x20session\x20not\x20found.','mGGXN':function(_0x2e5021,_0x5463bf){return _0x2e5021===_0x5463bf;},'OUYLB':_0x5a2498(0x1b8),'LYKIH':'in_progress','knpCf':'\x0aConcluding\x20session...','pVttv':function(_0x4bfb54,_0x451e3d,_0x420bd6){return _0x4bfb54(_0x451e3d,_0x420bd6);}},_0x5a8915=_0x4503eb||await _0x300248[_0x5a2498(0x19d)](getActiveFeatureId);if(!_0x5a8915)throw new Error(_0x300248[_0x5a2498(0x1b2)]);const _0x4b6566=await _0x300248[_0x5a2498(0x1c8)](getFeature,_0x5a8915);if(!_0x4b6566[_0x5a2498(0x193)])throw new Error(_0x300248['wEkQA']);const {sessions:_0x2c2d5f}=await _0x300248['zQDKs'](listFeatureSessions,_0x5a8915),_0x2dffdb=_0x2c2d5f[_0x5a2498(0x19a)](_0x43bbd0=>_0x43bbd0['id']===_0x4b6566['currentSessionId']);if(!_0x2dffdb)throw new Error(_0x300248[_0x5a2498(0x219)]);if(_0x300248['mGGXN'](_0x2dffdb[_0x5a2498(0x229)],_0x300248['OUYLB'])){console['log'](_0x5a2498(0x222));return;}if(_0x2dffdb['status']!==_0x300248[_0x5a2498(0x201)])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x2dffdb['status']);console[_0x5a2498(0x239)](_0x300248['knpCf']),await _0x300248[_0x5a2498(0x236)](concludeSession,_0x5a8915,_0x4b6566[_0x5a2498(0x193)]),console[_0x5a2498(0x239)]('\x0a✅\x20Session\x20'+_0x2dffdb['iteration']+_0x5a2498(0x226)),console[_0x5a2498(0x239)](_0x5a2498(0x1bc));}export async function featureSessions(_0x403d05){const _0x23dea7=_0x2eb1,_0x3a85b5={'nMbSv':_0x23dea7(0x1ab),'qqXzZ':function(_0x44daef,_0xdeb52e){return _0x44daef===_0xdeb52e;},'qWlqx':_0x23dea7(0x1cd)},_0x3cb71f=_0x403d05||await getActiveFeatureId();if(!_0x3cb71f)throw new Error(_0x3a85b5[_0x23dea7(0x230)]);const _0x3d9819=await getFeature(_0x3cb71f);console['log'](_0x23dea7(0x216)+_0x3d9819[_0x23dea7(0x18c)]+'\x0a');const {sessions:_0xa6ea0c}=await listFeatureSessions(_0x3cb71f);if(_0x3a85b5[_0x23dea7(0x1b7)](_0xa6ea0c[_0x23dea7(0x1ad)],0x0)){console[_0x23dea7(0x239)]('No\x20sessions\x20found.');return;}for(const _0x4615b4 of _0xa6ea0c){const _0xdab380=_0x4615b4[_0x23dea7(0x229)]===_0x23dea7(0x1b8)?'✅':_0x4615b4['status']===_0x3a85b5['qWlqx']?'🔄':'▶️';console[_0x23dea7(0x239)](_0xdab380+'\x20Session\x20'+_0x4615b4['iteration']+'\x20('+_0x4615b4['id']+')'),console['log'](_0x23dea7(0x233)+_0x4615b4['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x4615b4['createdAt'])[_0x23dea7(0x228)]()),_0x4615b4[_0x23dea7(0x1c2)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x4615b4['completedAt'])['toLocaleString']()),console[_0x23dea7(0x239)]('');}}export async function featureAddScenario(_0x40de1f,_0xa84285){const _0xe44862=_0x2eb1,_0x567268={'CLOeW':_0xe44862(0x1b6),'pbZZh':function(_0x4ca034,_0x4a8c35,_0x4e4f26){return _0x4ca034(_0x4a8c35,_0x4e4f26);},'INdUZ':function(_0x165b27,_0x28cc3f){return _0x165b27(_0x28cc3f);}},_0x48bfdb=_0xa84285||await getActiveFeatureId();if(!_0x48bfdb)throw new Error(_0x567268['CLOeW']);const _0x483976=await getFeature(_0x48bfdb);if(_0x483976[_0xe44862(0x203)]&&!_0x483976['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x483976[_0xe44862(0x22a)]);await _0x567268['pbZZh'](createChecklistItem,_0x48bfdb,_0x40de1f);const _0xce947c=await _0x567268[_0xe44862(0x1b1)](getFeature,_0x48bfdb);console['log'](_0xe44862(0x1ec)),_0x567268['pbZZh'](displayFeature,_0xce947c,_0xce947c['checklistItems']);}export async function featureEditScenario(_0x38db63,_0x305b7e){const _0x1cfb37=_0x2eb1,_0x4a9765={'dauGI':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','gfUFf':function(_0x154267,_0x14efbc){return _0x154267===_0x14efbc;},'xCHao':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','zrIkJ':function(_0x4ddbe7,_0x29f65f){return _0x4ddbe7+_0x29f65f;},'lKyPO':_0x1cfb37(0x224),'kTXYs':function(_0x37979d,_0x5a2122){return _0x37979d<_0x5a2122;}},_0x45c986=_0x305b7e['id']||await getActiveFeatureId();!_0x45c986&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x1cfb37(0x1be)](_0x4a9765[_0x1cfb37(0x21c)]),process[_0x1cfb37(0x1f5)](0x1));const _0x4e71df=await getFeature(_0x45c986);_0x4e71df['latestReview']&&!_0x4e71df['latestReview'][_0x1cfb37(0x22d)]&&(console['error'](_0x1cfb37(0x1e8)),console[_0x1cfb37(0x1be)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1cfb37(0x1be)]('\x20\x20'+_0x4e71df['dashboardUrl']),process['exit'](0x1));const _0x364dbb=_0x4e71df['checklistItems']||[];_0x4a9765[_0x1cfb37(0x1f3)](_0x364dbb['length'],0x0)&&(console[_0x1cfb37(0x1be)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x305b7e[_0x1cfb37(0x19f)]===undefined){console['error'](_0x4a9765[_0x1cfb37(0x22e)]),console[_0x1cfb37(0x239)](_0x1cfb37(0x224));for(let _0x5a2380=0x0;_0x5a2380<_0x364dbb[_0x1cfb37(0x1ad)];_0x5a2380++){console['log']('\x20\x20'+_0x4a9765['zrIkJ'](_0x5a2380,0x1)+'.\x20'+_0x364dbb[_0x5a2380][_0x1cfb37(0x1fd)]);}process['exit'](0x1);}const _0x1f1821=_0x305b7e['scenario']-0x1;if(_0x1f1821<0x0||_0x1f1821>=_0x364dbb['length']){console[_0x1cfb37(0x1be)](_0x1cfb37(0x237)+_0x305b7e[_0x1cfb37(0x19f)]+'.\x20Feature\x20review\x20has\x20'+_0x364dbb[_0x1cfb37(0x1ad)]+'\x20scenarios.'),console['log'](_0x4a9765[_0x1cfb37(0x227)]);for(let _0x53e034=0x0;_0x4a9765[_0x1cfb37(0x1c9)](_0x53e034,_0x364dbb['length']);_0x53e034++){console['log']('\x20\x20'+_0x4a9765[_0x1cfb37(0x1fc)](_0x53e034,0x1)+'.\x20'+_0x364dbb[_0x53e034]['description']);}process[_0x1cfb37(0x1f5)](0x1);}const _0x361fa8=_0x364dbb[_0x1f1821];await updateChecklistItem(_0x45c986,_0x361fa8['id'],{'description':_0x38db63});const _0x479b00=await getFeature(_0x45c986);console['log'](_0x1cfb37(0x225)),displayFeature(_0x479b00,_0x479b00[_0x1cfb37(0x1c5)]);}async function downloadFeedbackImage(_0x210129,_0x2b2557){const _0x4c0d3f=_0x2eb1,_0x144ab3={'OcjoM':function(_0x18f7b0,_0x40e844,_0x14ed00){return _0x18f7b0(_0x40e844,_0x14ed00);},'jwnTP':function(_0x2f8da7,_0x1f1bb6){return _0x2f8da7(_0x1f1bb6);},'PqbJP':function(_0x47f7b4,_0x468bb6,_0x276077){return _0x47f7b4(_0x468bb6,_0x276077);}};try{const _0x1729dc=join(getRangerDir(),'feedback-images');await _0x144ab3[_0x4c0d3f(0x1ae)](mkdir,_0x1729dc,{'recursive':!![]});const _0x2b615e=_0x144ab3[_0x4c0d3f(0x1ae)](join,_0x1729dc,_0x4c0d3f(0x197)+_0x2b2557+'.png'),_0x663d6b=await _0x144ab3['jwnTP'](fetch,_0x210129);if(!_0x663d6b['ok'])return null;const _0x14d406=Buffer['from'](await _0x663d6b['arrayBuffer']());return await _0x144ab3[_0x4c0d3f(0x1c1)](writeFile,_0x2b615e,_0x14d406),_0x2b615e;}catch{return null;}}export async function featureGetReview(_0x525068){const _0x50507a=_0x2eb1,_0x32357c={'MRHqu':function(_0x13b17c){return _0x13b17c();},'sjNCv':_0x50507a(0x1b6),'CqkAN':function(_0x8eab1f,_0x2d67a6){return _0x8eab1f(_0x2d67a6);},'pJMHu':function(_0x4157a8,_0x3eedf0){return _0x4157a8===_0x3eedf0;},'sWHrY':_0x50507a(0x1a4),'AXLNT':function(_0x338bf0,_0x2bfe1){return _0x338bf0>_0x2bfe1;},'yDHWv':_0x50507a(0x1a3),'ejjqO':function(_0x47222a,_0x33f46a,_0x6f056e){return _0x47222a(_0x33f46a,_0x6f056e);},'OuyJV':function(_0x2b5a36,_0x2b7e88){return _0x2b5a36===_0x2b7e88;}},_0x5b6758=_0x525068||await _0x32357c[_0x50507a(0x20b)](getActiveFeatureId);if(!_0x5b6758)throw new Error(_0x32357c['sjNCv']);const _0x4d174a=await getFeature(_0x5b6758),{items:_0x47f264}=await _0x32357c['CqkAN'](getActionItems,_0x5b6758);console[_0x50507a(0x239)]('\x0a📋\x20Feedback\x20for:\x20'+_0x4d174a['name']+'\x20('+_0x4d174a['id']+')\x0a');if(_0x32357c['pJMHu'](_0x47f264['length'],0x0)){console['log'](_0x32357c['sWHrY']);return;}for(let _0x2c49cd=0x0;_0x2c49cd<_0x47f264['length'];_0x2c49cd++){const _0x12500c=_0x47f264[_0x2c49cd],_0x3fed49=_0x12500c['version']>0x1?'\x20(v'+_0x12500c[_0x50507a(0x23d)]+')':'',_0x54c8e6=await getItemFeedback(_0x5b6758,_0x12500c['id']);if(_0x32357c['AXLNT'](_0x54c8e6['unaddressedComments'][_0x50507a(0x1ad)],0x0)){console[_0x50507a(0x239)](_0x50507a(0x21f)+(_0x2c49cd+0x1)+':\x20\x22'+_0x12500c['description']+'\x22'+_0x3fed49+_0x50507a(0x1d5)+_0x54c8e6['unaddressedComments']['length']+'\x20unaddressed\x20comment(s)');for(const _0x55cad7 of _0x54c8e6[_0x50507a(0x1cc)]){const _0x29f6e1=new Date(_0x55cad7[_0x50507a(0x1cb)])['toLocaleDateString']('en-US',{'month':_0x50507a(0x208),'day':'numeric'}),_0x1427ab=_0x55cad7[_0x50507a(0x1ff)]||_0x55cad7[_0x50507a(0x1ac)]||_0x32357c[_0x50507a(0x223)];console['log']('\x20\x20💬\x20'+_0x1427ab+'\x20('+_0x29f6e1+_0x50507a(0x204)+_0x55cad7[_0x50507a(0x1bf)]+'\x22');if(_0x55cad7['assetUrl']){const _0x4dd688=await _0x32357c[_0x50507a(0x1c7)](downloadFeedbackImage,_0x55cad7[_0x50507a(0x217)],_0x55cad7['id']);_0x4dd688&&console[_0x50507a(0x239)](_0x50507a(0x200)+_0x4dd688);}if(_0x55cad7[_0x50507a(0x1ba)]){const _0x12e79a=_0x55cad7['spatial'][_0x50507a(0x194)];_0x32357c['OuyJV'](_0x55cad7['spatial']['type'],'point')&&_0x12e79a[_0x50507a(0x1ad)]>=0x2?console[_0x50507a(0x239)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x12e79a[0x0][_0x50507a(0x1d3)](0x2)+',\x20'+_0x12e79a[0x1]['toFixed'](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x55cad7[_0x50507a(0x1ba)]['type']+_0x50507a(0x1f9)+_0x12e79a['map'](_0x142d38=>_0x142d38['toFixed'](0x2))[_0x50507a(0x23a)](',\x20')+']');}}if(_0x54c8e6['canonicalFlow']){console['log'](_0x50507a(0x206));for(const _0x26d760 of _0x54c8e6[_0x50507a(0x1a9)]['split']('\x0a')){console[_0x50507a(0x239)]('\x20\x20\x20\x20'+_0x26d760);}}}else console[_0x50507a(0x239)](_0x50507a(0x21f)+(_0x2c49cd+0x1)+_0x50507a(0x1fa)+_0x12500c[_0x50507a(0x1fd)]+'\x22'+_0x3fed49+_0x50507a(0x23e)),console[_0x50507a(0x239)](_0x50507a(0x1e9));console['log']('');}}function _0x2eb1(_0x4d91db,_0x3cb316){_0x4d91db=_0x4d91db-0x18c;const _0x18ee6d=_0x18ee();let _0x2eb154=_0x18ee6d[_0x4d91db];return _0x2eb154;}export async function featureDelete(_0x4371a5){const _0xb0eb54=_0x2eb1,_0x9a73da={'RRwWh':_0xb0eb54(0x1b6),'OZhaL':function(_0x15777e,_0x1e015c){return _0x15777e(_0x1e015c);},'zonee':function(_0x1c61fe,_0x2946b9){return _0x1c61fe+_0x2946b9;}},_0x4fa91a=_0x4371a5||await getActiveFeatureId();if(!_0x4fa91a)throw new Error(_0x9a73da['RRwWh']);const _0x242895=await _0x9a73da[_0xb0eb54(0x20d)](getFeature,_0x4fa91a);await softDeleteFeature(_0x4fa91a),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x242895[_0xb0eb54(0x18c)]+'\x20('+_0x4fa91a+')'),console['log'](_0x9a73da['zonee']('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20',_0x4fa91a));}export async function featureRestore(_0x1559f1){const _0x4d601a=_0x2eb1;await restoreFeature(_0x1559f1);const _0x56027d=await getFeature(_0x1559f1);console['log'](_0x4d601a(0x1e6)+_0x56027d[_0x4d601a(0x18c)]+'\x20('+_0x1559f1+')'),displayFeature(_0x56027d,_0x56027d[_0x4d601a(0x1c5)]);}
@@ -1 +1 @@
1
- function _0x5daf(_0xa722a6,_0x4b3c1f){_0xa722a6=_0xa722a6-0x178;const _0x5e1260=_0x5e12();let _0x5daf83=_0x5e1260[_0xa722a6];return _0x5daf83;}(function(_0x3dde39,_0x5d1dbf){const _0x2034c7=_0x5daf,_0x5a137a=_0x3dde39();while(!![]){try{const _0x31e5ca=-parseInt(_0x2034c7(0x184))/0x1*(parseInt(_0x2034c7(0x178))/0x2)+parseInt(_0x2034c7(0x17e))/0x3+-parseInt(_0x2034c7(0x179))/0x4*(-parseInt(_0x2034c7(0x183))/0x5)+-parseInt(_0x2034c7(0x181))/0x6*(-parseInt(_0x2034c7(0x17f))/0x7)+parseInt(_0x2034c7(0x185))/0x8+-parseInt(_0x2034c7(0x186))/0x9*(-parseInt(_0x2034c7(0x182))/0xa)+parseInt(_0x2034c7(0x17d))/0xb*(-parseInt(_0x2034c7(0x180))/0xc);if(_0x31e5ca===_0x5d1dbf)break;else _0x5a137a['push'](_0x5a137a['shift']());}catch(_0x534f30){_0x5a137a['push'](_0x5a137a['shift']());}}}(_0x5e12,0xaa065));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x5e12(){const _0x1639fb=['675990ivDNoh','join','2242558LvvwuI','40GSJYRI','exit','keys','error','484CrWlce','2347041PZlxgb','297185ZrLYZT','346044QEknmV','42eXxcmB','100edKUoA','336290VQSVQi','1lIhMAm','4666528juYZhI'];_0x5e12=function(){return _0x1639fb;};return _0x5e12();}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};export async function hook(_0x42ec7a,_0x10e525){const _0x32e667=_0x5daf,_0x558179={'eKEkb':function(_0x30d56e,_0x2e0a6f){return _0x30d56e(_0x2e0a6f);}},_0x3049d0=HOOKS[_0x42ec7a];if(!_0x3049d0){const _0x1a7941=Object[_0x32e667(0x17b)](HOOKS)[_0x32e667(0x187)](',\x20');console['error']('Unknown\x20hook:\x20'+_0x42ec7a),console[_0x32e667(0x17c)]('Valid\x20hooks:\x20'+_0x1a7941),process[_0x32e667(0x17a)](0x1);}await _0x558179['eKEkb'](_0x3049d0,_0x10e525);}
1
+ (function(_0xa137ad,_0xbbc08c){const _0x31c40=_0x5a94,_0x1aad11=_0xa137ad();while(!![]){try{const _0x3ed842=-parseInt(_0x31c40(0x16e))/0x1+parseInt(_0x31c40(0x168))/0x2*(parseInt(_0x31c40(0x16b))/0x3)+-parseInt(_0x31c40(0x163))/0x4*(parseInt(_0x31c40(0x16d))/0x5)+parseInt(_0x31c40(0x16f))/0x6*(-parseInt(_0x31c40(0x170))/0x7)+-parseInt(_0x31c40(0x16c))/0x8*(-parseInt(_0x31c40(0x167))/0x9)+parseInt(_0x31c40(0x166))/0xa+-parseInt(_0x31c40(0x169))/0xb*(-parseInt(_0x31c40(0x171))/0xc);if(_0x3ed842===_0xbbc08c)break;else _0x1aad11['push'](_0x1aad11['shift']());}catch(_0x32204b){_0x1aad11['push'](_0x1aad11['shift']());}}}(_0xb2b3,0x64946));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0xb2b3(){const _0x28802a=['758520rRXrgX','828168PeFmFO','28LBHytz','600PmxyBo','31180hYNNzm','join','error','3629700FAeSWa','536796reRhRH','2eYiZjr','150854nNpFNA','keys','2374701AfDkqE','48IkaVjK','305YzSdCC'];_0xb2b3=function(){return _0x28802a;};return _0xb2b3();}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 _0x5a94(_0x382db8,_0x5ea865){_0x382db8=_0x382db8-0x163;const _0xb2b359=_0xb2b3();let _0x5a94ee=_0xb2b359[_0x382db8];return _0x5a94ee;}export async function hook(_0x552b1a,_0x275856){const _0x48216a=_0x5a94,_0x557f9c=HOOKS[_0x552b1a];if(!_0x557f9c){const _0x1d2a36=Object[_0x48216a(0x16a)](HOOKS)[_0x48216a(0x164)](',\x20');console[_0x48216a(0x165)]('Unknown\x20hook:\x20'+_0x552b1a),console[_0x48216a(0x165)]('Valid\x20hooks:\x20'+_0x1d2a36),process['exit'](0x1);}await _0x557f9c(_0x275856);}
@@ -1 +1 @@
1
- const _0x5e93b2=_0x610c;(function(_0x374dff,_0x5b69ac){const _0x3ffc66=_0x610c,_0x2a3a07=_0x374dff();while(!![]){try{const _0x358391=-parseInt(_0x3ffc66(0xa7))/0x1+parseInt(_0x3ffc66(0xa2))/0x2*(parseInt(_0x3ffc66(0xa8))/0x3)+-parseInt(_0x3ffc66(0x9e))/0x4*(-parseInt(_0x3ffc66(0xa1))/0x5)+-parseInt(_0x3ffc66(0xa6))/0x6+parseInt(_0x3ffc66(0xa0))/0x7*(parseInt(_0x3ffc66(0x9d))/0x8)+parseInt(_0x3ffc66(0xa5))/0x9+parseInt(_0x3ffc66(0x9f))/0xa;if(_0x358391===_0x5b69ac)break;else _0x2a3a07['push'](_0x2a3a07['shift']());}catch(_0x301353){_0x2a3a07['push'](_0x2a3a07['shift']());}}}(_0x5e1a,0xebfc5));function _0x610c(_0x47be4c,_0x3931c3){_0x47be4c=_0x47be4c-0x9d;const _0x5e1a0c=_0x5e1a();let _0x610ccc=_0x5e1a0c[_0x47be4c];return _0x610ccc;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x5e93b2(0xa4);function _0x5e1a(){const _0x2c2a11=['412615BKJcTU','14426HohQkl','log','\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.','4205259kVlWef','5835402KufWty','865138DHSBHC','111MqWrFd','7495352IsfzYn','24yeyyMz','6381130DREqbh','7OZAnsk'];_0x5e1a=function(){return _0x2c2a11;};return _0x5e1a();}export async function autoPrompt(){const _0x4b654b=_0x5e93b2,_0x1cb3a9={'ImLsr':function(_0x4fb3ce){return _0x4fb3ce();},'hkDMq':function(_0x13b1e8,_0x3d07de){return _0x13b1e8(_0x3d07de);}},_0x400915=await _0x1cb3a9['ImLsr'](readHookInput),_0x14026d=_0x400915?.['session_id'];if(!_0x14026d)return;if(isSessionEnabled(_0x14026d)||hasSessionBeenPrompted(_0x14026d))return;_0x1cb3a9['hkDMq'](markSessionPrompted,_0x14026d),console[_0x4b654b(0xa3)](AUTO_PROMPT_TEXT);}
1
+ (function(_0x8c1a05,_0x33e66f){const _0x5995e6=_0x57ac,_0x546a3a=_0x8c1a05();while(!![]){try{const _0x482cd2=-parseInt(_0x5995e6(0xe2))/0x1*(-parseInt(_0x5995e6(0xdb))/0x2)+parseInt(_0x5995e6(0xe6))/0x3+-parseInt(_0x5995e6(0xe5))/0x4*(parseInt(_0x5995e6(0xe4))/0x5)+-parseInt(_0x5995e6(0xda))/0x6+-parseInt(_0x5995e6(0xde))/0x7*(parseInt(_0x5995e6(0xdc))/0x8)+parseInt(_0x5995e6(0xdf))/0x9*(-parseInt(_0x5995e6(0xe0))/0xa)+parseInt(_0x5995e6(0xe1))/0xb;if(_0x482cd2===_0x33e66f)break;else _0x546a3a['push'](_0x546a3a['shift']());}catch(_0x57fa5a){_0x546a3a['push'](_0x546a3a['shift']());}}}(_0x32d4,0x418ab));import{readHookInput}from'./output.js';function _0x57ac(_0x2f1cf3,_0x1a3a2f){_0x2f1cf3=_0x2f1cf3-0xda;const _0x32d4d9=_0x32d4();let _0x57ac15=_0x32d4d9[_0x2f1cf3];return _0x57ac15;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0x49d792=_0x57ac,_0xe2f192={'BoyiD':function(_0x194636,_0x5828b0){return _0x194636(_0x5828b0);}},_0x1a5ee3=await readHookInput(),_0x3564db=_0x1a5ee3?.[_0x49d792(0xe3)];if(!_0x3564db)return;if(isSessionEnabled(_0x3564db)||_0xe2f192['BoyiD'](hasSessionBeenPrompted,_0x3564db))return;_0xe2f192['BoyiD'](markSessionPrompted,_0x3564db),console[_0x49d792(0xdd)](AUTO_PROMPT_TEXT);}function _0x32d4(){const _0x54c843=['1608153Rrgasc','2376192sfHyZF','3464MbucYx','8bfpqNG','log','530369lDWgQC','1692GDPAhi','9590cVeddQ','7649158VDXmXu','122mAFsNv','session_id','870305ypaQkv','12IFvUBF'];_0x32d4=function(){return _0x54c843;};return _0x32d4();}
@@ -1 +1 @@
1
- function _0x3d87(){const _0x407032=['error','master','CLAUDE_SESSION_ID','9jlzpkN','9753iZjfXd','678PLFjzc','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','50195aarQoT','mNTUg','Error:\x20No\x20session\x20ID\x20available.','192486TaaiRg','8197040iXhKrr','main','XNzgc','1674368XNrskn','1287811kFEXAG','env','148skFwqn','\x20and\x20branch\x20\x27','46772800qpvxwh'];_0x3d87=function(){return _0x407032;};return _0x3d87();}(function(_0x3bcd70,_0x4a8794){const _0x6d4eb4=_0x3a0b,_0x20a836=_0x3bcd70();while(!![]){try{const _0x4a2329=-parseInt(_0x6d4eb4(0xba))/0x1+parseInt(_0x6d4eb4(0xb6))/0x2+-parseInt(_0x6d4eb4(0xb0))/0x3*(-parseInt(_0x6d4eb4(0xa9))/0x4)+parseInt(_0x6d4eb4(0xb3))/0x5*(-parseInt(_0x6d4eb4(0xb1))/0x6)+-parseInt(_0x6d4eb4(0xa7))/0x7+-parseInt(_0x6d4eb4(0xb7))/0x8*(parseInt(_0x6d4eb4(0xaf))/0x9)+parseInt(_0x6d4eb4(0xab))/0xa;if(_0x4a2329===_0x4a8794)break;else _0x20a836['push'](_0x20a836['shift']());}catch(_0x46e811){_0x20a836['push'](_0x20a836['shift']());}}}(_0x3d87,0xd5f90));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x3a0b(_0x149c90,_0x427dab){_0x149c90=_0x149c90-0xa7;const _0x3d876d=_0x3d87();let _0x3a0bb7=_0x3d876d[_0x149c90];return _0x3a0bb7;}import{printBlock}from'./output.js';export async function disable(_0x10b168){const _0x27c4f1=_0x3a0b,_0x3706c8={'XNzgc':'Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','UDrmp':function(_0x11515c){return _0x11515c();},'mNTUg':'main','nSoMS':function(_0x5c8f71,_0x635336){return _0x5c8f71!==_0x635336;}},_0x338033=_0x10b168||process[_0x27c4f1(0xa8)][_0x27c4f1(0xae)]||'';!_0x338033&&(console[_0x27c4f1(0xac)](_0x27c4f1(0xb5)),console['error'](_0x3706c8[_0x27c4f1(0xb9)]),process['exit'](0x1));disableSession(_0x338033);const _0x37256a=_0x3706c8['UDrmp'](getCurrentBranch);_0x37256a&&_0x37256a!==_0x3706c8[_0x27c4f1(0xb4)]&&_0x37256a!=='master'&&disableBranch(_0x37256a),printBlock(_0x27c4f1(0xb2)+(_0x37256a&&_0x3706c8['nSoMS'](_0x37256a,_0x27c4f1(0xb8))&&_0x37256a!==_0x27c4f1(0xad)?_0x27c4f1(0xaa)+_0x37256a+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x21d4b8,_0x128a6b){const _0x6b6d03=_0x1808,_0x551dbf=_0x21d4b8();while(!![]){try{const _0x290569=parseInt(_0x6b6d03(0x161))/0x1*(-parseInt(_0x6b6d03(0x169))/0x2)+-parseInt(_0x6b6d03(0x166))/0x3+parseInt(_0x6b6d03(0x173))/0x4+-parseInt(_0x6b6d03(0x16a))/0x5*(-parseInt(_0x6b6d03(0x16c))/0x6)+-parseInt(_0x6b6d03(0x16e))/0x7+parseInt(_0x6b6d03(0x170))/0x8+-parseInt(_0x6b6d03(0x162))/0x9;if(_0x290569===_0x128a6b)break;else _0x551dbf['push'](_0x551dbf['shift']());}catch(_0x10d846){_0x551dbf['push'](_0x551dbf['shift']());}}}(_0x4386,0x61c5d));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x1808(_0x13967e,_0x226923){_0x13967e=_0x13967e-0x161;const _0x438693=_0x4386();let _0x18081a=_0x438693[_0x13967e];return _0x18081a;}import{printBlock}from'./output.js';function _0x4386(){const _0x3ef295=['master','178wdLxbo','1384945FtGOuY','VPuuE','6EzZgJf','oSsmO','176141hUFNdR','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','1703640YAqstJ','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','JllHs','3113500nLMQNr','3158GbOfKO','18630BugTVa','lZuAC','.\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`.','CLAUDE_SESSION_ID','1678641PmeOED','Error:\x20No\x20session\x20ID\x20available.'];_0x4386=function(){return _0x3ef295;};return _0x4386();}export async function disable(_0xcf8f1c){const _0x4ad3ea=_0x1808,_0x92b7e1={'VPuuE':_0x4ad3ea(0x167),'oSsmO':function(_0x5e6a56,_0x478558){return _0x5e6a56(_0x478558);},'JllHs':function(_0x246af6){return _0x246af6();},'lZuAC':function(_0x138569,_0x3367a1){return _0x138569!==_0x3367a1;},'KofPq':_0x4ad3ea(0x168)},_0x396dd1=_0xcf8f1c||process['env'][_0x4ad3ea(0x165)]||'';!_0x396dd1&&(console['error'](_0x92b7e1[_0x4ad3ea(0x16b)]),console['error'](_0x4ad3ea(0x171)),process['exit'](0x1));_0x92b7e1['oSsmO'](disableSession,_0x396dd1);const _0xcaa2c9=_0x92b7e1[_0x4ad3ea(0x172)](getCurrentBranch);_0xcaa2c9&&_0xcaa2c9!=='main'&&_0x92b7e1['lZuAC'](_0xcaa2c9,_0x92b7e1['KofPq'])&&disableBranch(_0xcaa2c9),_0x92b7e1[_0x4ad3ea(0x16d)](printBlock,_0x4ad3ea(0x16f)+(_0xcaa2c9&&_0x92b7e1[_0x4ad3ea(0x163)](_0xcaa2c9,'main')&&_0x92b7e1['lZuAC'](_0xcaa2c9,_0x4ad3ea(0x168))?'\x20and\x20branch\x20\x27'+_0xcaa2c9+'\x27':'')+_0x4ad3ea(0x164));}
@@ -1 +1 @@
1
- (function(_0x4b2471,_0x430db7){const _0x4199dd=_0x4cd5,_0x4256d6=_0x4b2471();while(!![]){try{const _0x375c8c=-parseInt(_0x4199dd(0x1a2))/0x1*(parseInt(_0x4199dd(0x1ad))/0x2)+-parseInt(_0x4199dd(0x1b0))/0x3+parseInt(_0x4199dd(0x1b3))/0x4+parseInt(_0x4199dd(0x1a6))/0x5*(parseInt(_0x4199dd(0x1a8))/0x6)+parseInt(_0x4199dd(0x1b1))/0x7+-parseInt(_0x4199dd(0x1aa))/0x8*(parseInt(_0x4199dd(0x1a7))/0x9)+parseInt(_0x4199dd(0x1a3))/0xa;if(_0x375c8c===_0x430db7)break;else _0x4256d6['push'](_0x4256d6['shift']());}catch(_0x3fae12){_0x4256d6['push'](_0x4256d6['shift']());}}}(_0x1834,0x997bb));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0x1834(){const _0x100e90=['SDecN','470666hmGaHI','Ouhgp','error','2255670PalptH','4527117BFtTGU','main','1025820RtEKuc','CLAUDE_SESSION_ID','\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.','2QldsmC','7394810HxlyXN','env','IpjsO','605DGwZVV','938403aPeYci','56874ZptJvF','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','72BuqSGT','#\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`ranger\x20setup`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0aRestart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.'];_0x1834=function(){return _0x100e90;};return _0x1834();}import{update}from'../update.js';function _0x4cd5(_0x37a4af,_0x20f14e){_0x37a4af=_0x37a4af-0x1a1;const _0x18342f=_0x1834();let _0x4cd561=_0x18342f[_0x37a4af];return _0x4cd561;}export async function enable(_0x31bc08){const _0x9fd898=_0x4cd5,_0x15f713={'lpPfs':'Error:\x20No\x20session\x20ID\x20available.','Ouhgp':_0x9fd898(0x1a9),'IpjsO':function(_0x4eae4c){return _0x4eae4c();},'SDecN':function(_0x499cd5){return _0x499cd5();},'tbeaH':function(_0x2e9558,_0x3dd847){return _0x2e9558!==_0x3dd847;},'GEpWf':'master','yWoxv':function(_0x633544){return _0x633544();},'esXFc':function(_0x254427,_0x5beb4b){return _0x254427(_0x5beb4b);}},_0x24d01b=_0x31bc08||process[_0x9fd898(0x1a4)][_0x9fd898(0x1b4)]||'';!_0x24d01b&&(console[_0x9fd898(0x1af)](_0x15f713['lpPfs']),console[_0x9fd898(0x1af)](_0x15f713[_0x9fd898(0x1ae)]),process['exit'](0x1));const _0x4bdc6d=await getToken();if(!_0x4bdc6d){printBlock(_0x9fd898(0x1ab));return;}try{await _0x15f713[_0x9fd898(0x1a5)](update);}catch{}enableSession(_0x24d01b);const _0x447181=_0x15f713[_0x9fd898(0x1ac)](getCurrentBranch),_0x35fa9f=_0x447181&&_0x447181!==_0x9fd898(0x1b2)&&_0x15f713['tbeaH'](_0x447181,_0x15f713['GEpWf'])?'\x0a\x0a**Branch\x20\x27'+_0x447181+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x33f11b=_0x15f713['yWoxv'](getRangerSkillContent);_0x15f713['esXFc'](printBlock,'#\x20RANGER\x20ENABLED'+_0x35fa9f+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x33f11b+_0x9fd898(0x1a1));}
1
+ (function(_0x476ec7,_0x49375f){const _0x5a1c4e=_0x1ba5,_0xed6cd1=_0x476ec7();while(!![]){try{const _0x4567f6=-parseInt(_0x5a1c4e(0x6e))/0x1*(parseInt(_0x5a1c4e(0x6f))/0x2)+-parseInt(_0x5a1c4e(0x80))/0x3+parseInt(_0x5a1c4e(0x7d))/0x4*(-parseInt(_0x5a1c4e(0x82))/0x5)+parseInt(_0x5a1c4e(0x7e))/0x6*(-parseInt(_0x5a1c4e(0x79))/0x7)+parseInt(_0x5a1c4e(0x7c))/0x8+parseInt(_0x5a1c4e(0x7b))/0x9*(-parseInt(_0x5a1c4e(0x75))/0xa)+parseInt(_0x5a1c4e(0x6d))/0xb;if(_0x4567f6===_0x49375f)break;else _0xed6cd1['push'](_0xed6cd1['shift']());}catch(_0x1c2a61){_0xed6cd1['push'](_0xed6cd1['shift']());}}}(_0x54ea,0xac911));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x1ba5(_0x4f96cd,_0x1afef5){_0x4f96cd=_0x4f96cd-0x6d;const _0x54eaa9=_0x54ea();let _0x1ba562=_0x54eaa9[_0x4f96cd];return _0x1ba562;}import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x505617){const _0x11e69e=_0x1ba5,_0x236444={'scTuX':'Error:\x20No\x20session\x20ID\x20available.','sSvxf':function(_0x3dd3c9){return _0x3dd3c9();},'mIswu':function(_0x1db992,_0x2bf828){return _0x1db992(_0x2bf828);},'SRJSv':function(_0x3bb13f,_0x49ffbd){return _0x3bb13f!==_0x49ffbd;},'fbAno':_0x11e69e(0x74),'ZcFAj':'master','BRJue':function(_0x4b005b){return _0x4b005b();}},_0x1f364c=_0x505617||process['env'][_0x11e69e(0x72)]||'';!_0x1f364c&&(console['error'](_0x236444[_0x11e69e(0x73)]),console['error']('Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.'),process['exit'](0x1));const _0x2ac2ff=Boolean(_0x505617),_0x82946a=await _0x236444[_0x11e69e(0x7f)](getToken);if(!_0x82946a){const _0x107bc9=_0x2ac2ff?'ranger\x20setup\x20--opencode':_0x11e69e(0x77),_0x4dbb9d=_0x2ac2ff?_0x11e69e(0x76):'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';printBlock('#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0x107bc9+_0x11e69e(0x81)+_0x4dbb9d);return;}try{await _0x236444['sSvxf'](update);}catch{}_0x236444[_0x11e69e(0x71)](enableSession,_0x1f364c);const _0x5bc77b=getCurrentBranch(),_0x17bb16=_0x5bc77b&&_0x236444['SRJSv'](_0x5bc77b,_0x236444['fbAno'])&&_0x5bc77b!==_0x236444[_0x11e69e(0x78)]?'\x0a\x0a**Branch\x20\x27'+_0x5bc77b+_0x11e69e(0x70):'',_0x3b3af9=_0x236444['BRJue'](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x17bb16+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x3b3af9+_0x11e69e(0x7a));}function _0x54ea(){const _0x43609c=['scTuX','main','94110AWMUDt','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','ranger\x20setup','ZcFAj','56OROzsa','\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`.','774YMnOaG','10066904snBYNS','776lnWpnb','310962yyQPfg','sSvxf','1650360lRkGdZ','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','25105LKHuXU','29452467mwyHcP','1DBweLl','961742TXgwSa','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','mIswu','CLAUDE_SESSION_ID'];_0x54ea=function(){return _0x43609c;};return _0x54ea();}
@@ -1 +1 @@
1
- (function(_0x3be490,_0x1d2a15){const _0x29735e=_0x5557,_0x58610e=_0x3be490();while(!![]){try{const _0x35400a=parseInt(_0x29735e(0x1e2))/0x1*(-parseInt(_0x29735e(0x1e5))/0x2)+parseInt(_0x29735e(0x1dd))/0x3*(parseInt(_0x29735e(0x1e1))/0x4)+parseInt(_0x29735e(0x1dc))/0x5*(parseInt(_0x29735e(0x1e3))/0x6)+parseInt(_0x29735e(0x1e0))/0x7+parseInt(_0x29735e(0x1db))/0x8+-parseInt(_0x29735e(0x1de))/0x9*(-parseInt(_0x29735e(0x1df))/0xa)+-parseInt(_0x29735e(0x1da))/0xb;if(_0x35400a===_0x1d2a15)break;else _0x58610e['push'](_0x58610e['shift']());}catch(_0x1cca75){_0x58610e['push'](_0x58610e['shift']());}}}(_0x22eb,0x1a21d));function _0x5557(_0x20f0b3,_0x315d71){_0x20f0b3=_0x20f0b3-0x1da;const _0x22eb1c=_0x22eb();let _0x555784=_0x22eb1c[_0x20f0b3];return _0x555784;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x22eb(){const _0x51e32c=['70nIWjNQ','6yPpQIG','99BqXgyg','141140isWaAN','14161TdAADi','318876mEKPma','1txORDF','85938IFPqwv','===\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===','270154POisCl','5214539fBrdlI','1591408DNBrPg'];_0x22eb=function(){return _0x51e32c;};return _0x22eb();}export async function exitPlanMode(_0x3079d1){const _0x5aebfa=_0x5557,_0x5c791c=await getEnabledSessionId(_0x3079d1);if(!_0x5c791c)return;printBlock(_0x5aebfa(0x1e4));}
1
+ function _0x322c(_0x5bed1c,_0x155cd6){_0x5bed1c=_0x5bed1c-0x9d;const _0x29392f=_0x2939();let _0x322c70=_0x29392f[_0x5bed1c];return _0x322c70;}function _0x2939(){const _0x3cd8f9=['5517iwGnPv','4639970Yatnwy','130NVtUuu','===\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===','2408kJtxYD','84yZzymM','4042412VUXxej','721944gTWIkR','12zoIRNN','544831dfVEwx','540939FEqEcX','jZcSg','162548bLoNEa','8WsKrYa'];_0x2939=function(){return _0x3cd8f9;};return _0x2939();}(function(_0x13ae4a,_0x26bee1){const _0x1a47b6=_0x322c,_0x1fbe23=_0x13ae4a();while(!![]){try{const _0x26906d=-parseInt(_0x1a47b6(0xa9))/0x1+parseInt(_0x1a47b6(0x9e))/0x2*(parseInt(_0x1a47b6(0xa6))/0x3)+parseInt(_0x1a47b6(0x9d))/0x4*(parseInt(_0x1a47b6(0xa1))/0x5)+-parseInt(_0x1a47b6(0xa4))/0x6*(parseInt(_0x1a47b6(0xa8))/0x7)+-parseInt(_0x1a47b6(0xa3))/0x8*(-parseInt(_0x1a47b6(0x9f))/0x9)+parseInt(_0x1a47b6(0xa0))/0xa+parseInt(_0x1a47b6(0xa5))/0xb*(-parseInt(_0x1a47b6(0xa7))/0xc);if(_0x26906d===_0x26bee1)break;else _0x1fbe23['push'](_0x1fbe23['shift']());}catch(_0x4be6f0){_0x1fbe23['push'](_0x1fbe23['shift']());}}}(_0x2939,0xa3783));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x518f6c){const _0x46d245=_0x322c,_0x43dce9={'jZcSg':function(_0x1cd0fa,_0x1fb763){return _0x1cd0fa(_0x1fb763);}},_0x5b2534=await _0x43dce9[_0x46d245(0xaa)](getEnabledSessionId,_0x518f6c);if(!_0x5b2534)return;printBlock(_0x46d245(0xa2));}
@@ -1 +1 @@
1
- (function(_0x3947d5,_0x4ac657){var _0x4a07d5=_0x264b,_0x33ed22=_0x3947d5();while(!![]){try{var _0x29fa2d=parseInt(_0x4a07d5(0x13b))/0x1+-parseInt(_0x4a07d5(0x140))/0x2*(parseInt(_0x4a07d5(0x141))/0x3)+-parseInt(_0x4a07d5(0x139))/0x4+parseInt(_0x4a07d5(0x13e))/0x5*(-parseInt(_0x4a07d5(0x13a))/0x6)+parseInt(_0x4a07d5(0x13c))/0x7+-parseInt(_0x4a07d5(0x137))/0x8*(-parseInt(_0x4a07d5(0x138))/0x9)+-parseInt(_0x4a07d5(0x13f))/0xa*(-parseInt(_0x4a07d5(0x13d))/0xb);if(_0x29fa2d===_0x4ac657)break;else _0x33ed22['push'](_0x33ed22['shift']());}catch(_0x2429ba){_0x33ed22['push'](_0x33ed22['shift']());}}}(_0x36ff,0xe3454));export{sessionStart}from'./sessionStart.js';function _0x264b(_0x434ff1,_0x53e6fc){_0x434ff1=_0x434ff1-0x137;var _0x36ff1a=_0x36ff();var _0x264b00=_0x36ff1a[_0x434ff1];return _0x264b00;}export{sessionEnd}from'./sessionEnd.js';function _0x36ff(){var _0x597b6d=['55DfYnfQ','10yJJLDz','2342950QpBEfA','44918qeQbGD','45zyGmSu','162392lSavIi','324HKHwqe','4727636UMVMrG','3755094WmqyZJ','77047OcvUOM','12054742qIZYrY'];_0x36ff=function(){return _0x597b6d;};return _0x36ff();}export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x318ec5,_0x4e2349){var _0x538d68=_0x1336,_0x5f2389=_0x318ec5();while(!![]){try{var _0x4b38d4=-parseInt(_0x538d68(0x136))/0x1*(-parseInt(_0x538d68(0x13e))/0x2)+-parseInt(_0x538d68(0x139))/0x3*(-parseInt(_0x538d68(0x138))/0x4)+-parseInt(_0x538d68(0x13c))/0x5+-parseInt(_0x538d68(0x137))/0x6+parseInt(_0x538d68(0x13f))/0x7+-parseInt(_0x538d68(0x13a))/0x8*(-parseInt(_0x538d68(0x13b))/0x9)+parseInt(_0x538d68(0x13d))/0xa*(-parseInt(_0x538d68(0x140))/0xb);if(_0x4b38d4===_0x4e2349)break;else _0x5f2389['push'](_0x5f2389['shift']());}catch(_0x7187e2){_0x5f2389['push'](_0x5f2389['shift']());}}}(_0x37f1,0xca415));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';function _0x1336(_0xc336df,_0x39e727){_0xc336df=_0xc336df-0x136;var _0x37f101=_0x37f1();var _0x133608=_0x37f101[_0xc336df];return _0x133608;}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';function _0x37f1(){var _0x5934d0=['443748eumelm','4tyiOmg','1752717VoqUdu','6924392MGiPCx','9JOjtRk','612150uJFiTe','10PbpnHQ','203258ndJoBS','144550BFZedn','7137581wzVWFV','2bwGDPr'];_0x37f1=function(){return _0x5934d0;};return _0x37f1();}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- function _0x17d2(_0x1eadb4,_0x50e215){_0x1eadb4=_0x1eadb4-0x15c;const _0x3170d6=_0x3170();let _0x17d2ca=_0x3170d6[_0x1eadb4];return _0x17d2ca;}(function(_0x117ccc,_0x888729){const _0x2ba49f=_0x17d2,_0xf71623=_0x117ccc();while(!![]){try{const _0x3c2a83=parseInt(_0x2ba49f(0x15e))/0x1*(-parseInt(_0x2ba49f(0x163))/0x2)+-parseInt(_0x2ba49f(0x166))/0x3*(-parseInt(_0x2ba49f(0x160))/0x4)+-parseInt(_0x2ba49f(0x168))/0x5*(-parseInt(_0x2ba49f(0x164))/0x6)+parseInt(_0x2ba49f(0x16d))/0x7*(parseInt(_0x2ba49f(0x167))/0x8)+-parseInt(_0x2ba49f(0x162))/0x9+parseInt(_0x2ba49f(0x161))/0xa*(parseInt(_0x2ba49f(0x15c))/0xb)+-parseInt(_0x2ba49f(0x15f))/0xc;if(_0x3c2a83===_0x888729)break;else _0xf71623['push'](_0xf71623['shift']());}catch(_0x16cc4e){_0xf71623['push'](_0xf71623['shift']());}}}(_0x3170,0x1aa39));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x34630a){const _0x92e303=_0x17d2;console[_0x92e303(0x16b)](_0x34630a);}export async function readHookInput(){const _0x2f83d1=_0x17d2;let _0x1a5c44='';for await(const _0x1ec3db of process[_0x2f83d1(0x16c)]){_0x1a5c44+=_0x1ec3db;}try{return JSON['parse'](_0x1a5c44);}catch{return null;}}export async function getEnabledSessionId(_0x2219d9){const _0x3ed6e2=_0x17d2,_0x44e149={'lRraj':function(_0x2be4ad,_0x51dc23){return _0x2be4ad(_0x51dc23);},'dELDA':function(_0x2f6b5f){return _0x2f6b5f();}};if(_0x2219d9)return _0x44e149['lRraj'](isSessionEnabled,_0x2219d9)?_0x2219d9:null;const _0x128b8b=await _0x44e149[_0x3ed6e2(0x165)](readHookInput),_0x4077ef=_0x128b8b?.[_0x3ed6e2(0x15d)];if(!_0x4077ef||!isSessionEnabled(_0x4077ef))return null;return _0x4077ef;}export async function getEnabledHookContext(_0x431da4){const _0x478a94=_0x17d2,_0xd2173f={'tuYxr':function(_0x23896a,_0x4e0bfe){return _0x23896a(_0x4e0bfe);},'PfTyP':function(_0x5bd318){return _0x5bd318();}};if(_0x431da4){if(!_0xd2173f[_0x478a94(0x16a)](isSessionEnabled,_0x431da4))return null;return{'sessionId':_0x431da4,'input':{'session_id':_0x431da4}};}const _0x1333ad=await _0xd2173f[_0x478a94(0x169)](readHookInput),_0x166cb5=_0x1333ad?.[_0x478a94(0x15d)];if(!_0x166cb5||!isSessionEnabled(_0x166cb5))return null;return{'sessionId':_0x166cb5,'input':_0x1333ad};}function _0x3170(){const _0x364292=['40pAPDpO','212545ZRzqmy','PfTyP','tuYxr','log','stdin','173194oORnUS','52877MzXxxS','session_id','93400nxJIaT','1512684RdGxID','762980PHGLNt','230BkAIJV','1940319HfeDyw','4OLHJfn','30kIJTkT','dELDA','3YPJVAC'];_0x3170=function(){return _0x364292;};return _0x3170();}
1
+ function _0x4e87(){const _0x200604=['3225930tolpet','PGVWX','968358BEYYdX','1341GYDFuM','6fUwInP','dewoD','parse','1999102SwZpNn','exhyK','9469306IXcEne','16392OQENyW','6169505dHuBkZ','4776128UQdziF'];_0x4e87=function(){return _0x200604;};return _0x4e87();}(function(_0x22b19f,_0xd515a3){const _0xb3df9d=_0x3426,_0x3bf00e=_0x22b19f();while(!![]){try{const _0xb41482=-parseInt(_0xb3df9d(0xb7))/0x1+-parseInt(_0xb3df9d(0xbc))/0x2+parseInt(_0xb3df9d(0xb5))/0x3+-parseInt(_0xb3df9d(0xb4))/0x4+parseInt(_0xb3df9d(0xb3))/0x5*(parseInt(_0xb3df9d(0xb9))/0x6)+parseInt(_0xb3df9d(0xbe))/0x7+-parseInt(_0xb3df9d(0xbf))/0x8*(-parseInt(_0xb3df9d(0xb8))/0x9);if(_0xb41482===_0xd515a3)break;else _0x3bf00e['push'](_0x3bf00e['shift']());}catch(_0x1e60f0){_0x3bf00e['push'](_0x3bf00e['shift']());}}}(_0x4e87,0xc49d1));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x1ba8a2){console['log'](_0x1ba8a2);}export async function readHookInput(){const _0x5220d4=_0x3426;let _0x5bcba7='';for await(const _0x21e876 of process['stdin']){_0x5bcba7+=_0x21e876;}try{return JSON[_0x5220d4(0xbb)](_0x5bcba7);}catch{return null;}}export async function getEnabledSessionId(_0x22ef4f){const _0x58f76b=_0x3426,_0x4f99ca={'RnNlV':function(_0x42194b,_0x5b821a){return _0x42194b(_0x5b821a);},'PGVWX':function(_0x124c07){return _0x124c07();},'exhyK':function(_0x50b80d,_0x22c13c){return _0x50b80d(_0x22c13c);}};if(_0x22ef4f)return _0x4f99ca['RnNlV'](isSessionEnabled,_0x22ef4f)?_0x22ef4f:null;const _0x56d84e=await _0x4f99ca[_0x58f76b(0xb6)](readHookInput),_0x4910ce=_0x56d84e?.['session_id'];if(!_0x4910ce||!_0x4f99ca[_0x58f76b(0xbd)](isSessionEnabled,_0x4910ce))return null;return _0x4910ce;}function _0x3426(_0x17e1a1,_0x588145){_0x17e1a1=_0x17e1a1-0xb3;const _0x4e8751=_0x4e87();let _0x342659=_0x4e8751[_0x17e1a1];return _0x342659;}export async function getEnabledHookContext(_0x3ab70a){const _0x300c90=_0x3426,_0xc1e514={'PHGqx':function(_0x3221b6,_0xf1257f){return _0x3221b6(_0xf1257f);},'dewoD':function(_0x1bc7a7){return _0x1bc7a7();}};if(_0x3ab70a){if(!_0xc1e514['PHGqx'](isSessionEnabled,_0x3ab70a))return null;return{'sessionId':_0x3ab70a,'input':{'session_id':_0x3ab70a}};}const _0x4cf819=await _0xc1e514[_0x300c90(0xba)](readHookInput),_0x1413f5=_0x4cf819?.['session_id'];if(!_0x1413f5||!isSessionEnabled(_0x1413f5))return null;return{'sessionId':_0x1413f5,'input':_0x4cf819};}
@@ -1 +1 @@
1
- (function(_0x3f2cfa,_0x36401c){const _0x576a9a=_0x1dc1,_0x176496=_0x3f2cfa();while(!![]){try{const _0x4dedbb=-parseInt(_0x576a9a(0x8f))/0x1+parseInt(_0x576a9a(0x84))/0x2+-parseInt(_0x576a9a(0x87))/0x3+-parseInt(_0x576a9a(0x8d))/0x4+-parseInt(_0x576a9a(0x8b))/0x5+-parseInt(_0x576a9a(0x86))/0x6*(-parseInt(_0x576a9a(0x8e))/0x7)+parseInt(_0x576a9a(0x88))/0x8;if(_0x4dedbb===_0x36401c)break;else _0x176496['push'](_0x176496['shift']());}catch(_0x134650){_0x176496['push'](_0x176496['shift']());}}}(_0x9c20,0x3e4af));import{printBlock,getEnabledHookContext}from'./output.js';function _0x1dc1(_0x24a882,_0x4e205b){_0x24a882=_0x24a882-0x84;const _0x9c2092=_0x9c20();let _0x1dc1ce=_0x9c2092[_0x24a882];return _0x1dc1ce;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x182fb5){const _0x510ae0=_0x1dc1,_0xb59c02={'iUcUp':function(_0x5b0aa6,_0x34b26a){return _0x5b0aa6(_0x34b26a);},'CfFyX':function(_0x45e840,_0x26b199){return _0x45e840!==_0x26b199;},'RyTeM':'plan','ziQhp':function(_0x51df7b,_0x591c16){return _0x51df7b(_0x591c16);}},_0x54accb=await _0xb59c02[_0x510ae0(0x8c)](getEnabledHookContext,_0x182fb5);if(!_0x54accb)return;if(_0xb59c02[_0x510ae0(0x8a)](_0x54accb[_0x510ae0(0x85)][_0x510ae0(0x89)],_0xb59c02['RyTeM']))return;if(!_0xb59c02['ziQhp'](shouldShowPlanReminder,_0x54accb['sessionId']))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}function _0x9c20(){const _0x546a5d=['iUcUp','363088jkaohK','3423931oQrUxT','298323sewrTE','152566TpCvsw','input','6Cboosd','528966WWLyqZ','3497480zSZWcf','permission_mode','CfFyX','910165JivuNc'];_0x9c20=function(){return _0x546a5d;};return _0x9c20();}
1
+ (function(_0xd5272f,_0x3888ab){const _0x34e10a=_0x39a1,_0x59706d=_0xd5272f();while(!![]){try{const _0x1e32ac=-parseInt(_0x34e10a(0x18b))/0x1+parseInt(_0x34e10a(0x18c))/0x2*(-parseInt(_0x34e10a(0x17f))/0x3)+parseInt(_0x34e10a(0x183))/0x4*(parseInt(_0x34e10a(0x18d))/0x5)+-parseInt(_0x34e10a(0x186))/0x6+parseInt(_0x34e10a(0x187))/0x7*(-parseInt(_0x34e10a(0x180))/0x8)+parseInt(_0x34e10a(0x185))/0x9+-parseInt(_0x34e10a(0x184))/0xa*(-parseInt(_0x34e10a(0x18a))/0xb);if(_0x1e32ac===_0x3888ab)break;else _0x59706d['push'](_0x59706d['shift']());}catch(_0x4de300){_0x59706d['push'](_0x59706d['shift']());}}}(_0x4bce,0xc3387));import{printBlock,getEnabledHookContext}from'./output.js';function _0x39a1(_0x11e8da,_0x3b50bf){_0x11e8da=_0x11e8da-0x17f;const _0x4bcef3=_0x4bce();let _0x39a12b=_0x4bcef3[_0x11e8da];return _0x39a12b;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x4bce(){const _0x57c6df=['1585930tNuyWN','5432305dDTtID','3hzZQuw','57992OiUbSv','plan','sessionId','4vFpeUU','1090ILzHwS','10976148dARlVW','1123764qXvKvY','56mwHZNn','permission_mode','input','107459PYJaGM','1532980FDzMNs'];_0x4bce=function(){return _0x57c6df;};return _0x4bce();}export async function planReminder(_0xec6f23){const _0x458580=_0x39a1,_0x58a45b={'vQKRT':function(_0x3366e8,_0x42273f){return _0x3366e8!==_0x42273f;}},_0x231eab=await getEnabledHookContext(_0xec6f23);if(!_0x231eab)return;if(_0x58a45b['vQKRT'](_0x231eab[_0x458580(0x189)][_0x458580(0x188)],_0x458580(0x181)))return;if(!shouldShowPlanReminder(_0x231eab[_0x458580(0x182)]))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_0x50508a,_0x2880d9){const _0x4daa9e=_0x24a8,_0x46922e=_0x50508a();while(!![]){try{const _0x1f7e68=parseInt(_0x4daa9e(0x12d))/0x1*(-parseInt(_0x4daa9e(0x12f))/0x2)+-parseInt(_0x4daa9e(0x12b))/0x3*(parseInt(_0x4daa9e(0x12c))/0x4)+parseInt(_0x4daa9e(0x12e))/0x5*(-parseInt(_0x4daa9e(0x131))/0x6)+-parseInt(_0x4daa9e(0x129))/0x7+parseInt(_0x4daa9e(0x130))/0x8+-parseInt(_0x4daa9e(0x128))/0x9+-parseInt(_0x4daa9e(0x133))/0xa*(-parseInt(_0x4daa9e(0x132))/0xb);if(_0x1f7e68===_0x2880d9)break;else _0x46922e['push'](_0x46922e['shift']());}catch(_0x58805e){_0x46922e['push'](_0x46922e['shift']());}}}(_0x4487,0xa0783));function _0x24a8(_0x33bddc,_0x4941ac){_0x33bddc=_0x33bddc-0x128;const _0x4487aa=_0x4487();let _0x24a8bb=_0x4487aa[_0x33bddc];return _0x24a8bb;}function _0x4487(){const _0x20a7bd=['===\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===','528249jzLpku','12ibgBqq','1UxPcYo','5pOsVvS','983960ECcAHx','8883128XawmsV','914232kgifUF','6032103RECgvF','30UzpFXp','2914515kAXRFg','4212537KIpxja'];_0x4487=function(){return _0x20a7bd;};return _0x4487();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x1022b2){const _0x49b073=_0x24a8,_0xf53613=await getEnabledSessionId(_0x1022b2);if(!_0xf53613)return;printBlock(_0x49b073(0x12a));}
1
+ (function(_0x5d3cb8,_0x3993d3){const _0x343aa5=_0x12ae,_0x1e49d2=_0x5d3cb8();while(!![]){try{const _0xd971e0=-parseInt(_0x343aa5(0xae))/0x1*(parseInt(_0x343aa5(0xad))/0x2)+-parseInt(_0x343aa5(0xb2))/0x3+parseInt(_0x343aa5(0xb4))/0x4*(-parseInt(_0x343aa5(0xaf))/0x5)+parseInt(_0x343aa5(0xb0))/0x6*(-parseInt(_0x343aa5(0xab))/0x7)+parseInt(_0x343aa5(0xb5))/0x8*(parseInt(_0x343aa5(0xb3))/0x9)+-parseInt(_0x343aa5(0xac))/0xa*(-parseInt(_0x343aa5(0xb6))/0xb)+parseInt(_0x343aa5(0xb1))/0xc;if(_0xd971e0===_0x3993d3)break;else _0x1e49d2['push'](_0x1e49d2['shift']());}catch(_0x364455){_0x1e49d2['push'](_0x1e49d2['shift']());}}}(_0x323a,0xd9eb5));import{printBlock,getEnabledSessionId}from'./output.js';function _0x12ae(_0x35d7d9,_0x1beaa8){_0x35d7d9=_0x35d7d9-0xab;const _0x323ab8=_0x323a();let _0x12ae0b=_0x323ab8[_0x35d7d9];return _0x12ae0b;}export async function planStart(_0x326297){const _0x9ec3be={'LxDwQ':function(_0x1c7bd3,_0x3f936b){return _0x1c7bd3(_0x3f936b);}},_0x130840=await _0x9ec3be['LxDwQ'](getEnabledSessionId,_0x326297);if(!_0x130840)return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}function _0x323a(){const _0x12ad7b=['515253BVbRUg','238705VPlHPF','113124BrXMaa','6704868KLedRx','816510ngweFI','1647ZexsHO','52fQjTBA','69224lRtLFG','4438687pLxReS','91yftQvj','10uRVuqA','2gdHOCu'];_0x323a=function(){return _0x12ad7b;};return _0x323a();}
@@ -1 +1 @@
1
- function _0x35cd(_0x4f1f3b,_0x5cb340){_0x4f1f3b=_0x4f1f3b-0xfd;const _0x253617=_0x2536();let _0x35cdb3=_0x253617[_0x4f1f3b];return _0x35cdb3;}(function(_0x57e13c,_0x21d302){const _0x45c33d=_0x35cd,_0x243e0b=_0x57e13c();while(!![]){try{const _0x2ba02f=parseInt(_0x45c33d(0x104))/0x1+parseInt(_0x45c33d(0x10c))/0x2+parseInt(_0x45c33d(0x103))/0x3*(-parseInt(_0x45c33d(0x101))/0x4)+parseInt(_0x45c33d(0xfe))/0x5*(parseInt(_0x45c33d(0xff))/0x6)+-parseInt(_0x45c33d(0x107))/0x7+-parseInt(_0x45c33d(0x108))/0x8+parseInt(_0x45c33d(0xfd))/0x9*(parseInt(_0x45c33d(0x106))/0xa);if(_0x2ba02f===_0x21d302)break;else _0x243e0b['push'](_0x243e0b['shift']());}catch(_0x36ff95){_0x243e0b['push'](_0x243e0b['shift']());}}}(_0x2536,0xafb4e));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x2536(){const _0x9a7589=['3547915NtaUCQ','8525656oOJIus','PostToolUse','myEkh','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).','642596PTIjlq','158643GknceB','18160PhZsSm','1098VLmNqP','log','4qKXplv','CYqWM','2601003AICrIc','1274316UmvJQY','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.','510VvHABG'];_0x2536=function(){return _0x9a7589;};return _0x2536();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x168410){const _0x44d8d1=_0x35cd,_0x41e7e7={'CYqWM':function(_0x74ed55){return _0x74ed55();},'myEkh':_0x44d8d1(0x109)},_0x4b9146=await getEnabledSessionId(_0x168410);if(!_0x4b9146)return;updateBranchTracking(_0x4b9146);const _0x4f37b3=await _0x41e7e7[_0x44d8d1(0x102)](getToken);if(!_0x4f37b3)return;const _0x3960e5=getSessionEntry(_0x4b9146);if(_0x3960e5){const _0x122bf6={'hookSpecificOutput':{'hookEventName':_0x41e7e7[_0x44d8d1(0x10a)],'additionalContext':_0x44d8d1(0x10b)}};console[_0x44d8d1(0x100)](JSON['stringify'](_0x122bf6));return;}const _0xb68391={'hookSpecificOutput':{'hookEventName':_0x41e7e7['myEkh'],'additionalContext':_0x44d8d1(0x105)}};console['log'](JSON['stringify'](_0xb68391));}
1
+ (function(_0x14ef17,_0x27da27){const _0x54aa91=_0x1b19,_0x1b8784=_0x14ef17();while(!![]){try{const _0x4a4414=parseInt(_0x54aa91(0x1b5))/0x1+-parseInt(_0x54aa91(0x1b9))/0x2+-parseInt(_0x54aa91(0x1b4))/0x3*(-parseInt(_0x54aa91(0x1af))/0x4)+-parseInt(_0x54aa91(0x1be))/0x5+parseInt(_0x54aa91(0x1ba))/0x6*(-parseInt(_0x54aa91(0x1b8))/0x7)+parseInt(_0x54aa91(0x1b2))/0x8*(parseInt(_0x54aa91(0x1b3))/0x9)+parseInt(_0x54aa91(0x1bc))/0xa*(parseInt(_0x54aa91(0x1b0))/0xb);if(_0x4a4414===_0x27da27)break;else _0x1b8784['push'](_0x1b8784['shift']());}catch(_0x276d6f){_0x1b8784['push'](_0x1b8784['shift']());}}}(_0x29c3,0x5efec));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x1b19(_0x5e9b54,_0x5cae29){_0x5e9b54=_0x5e9b54-0x1ae;const _0x29c3a7=_0x29c3();let _0x1b19cd=_0x29c3a7[_0x5e9b54];return _0x1b19cd;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x2cac68){const _0x34304b=_0x1b19,_0x3bfe00={'tddHp':function(_0x313ccd,_0x2bc9c7){return _0x313ccd(_0x2bc9c7);},'Mkivl':function(_0x5bf6cd,_0x49970a){return _0x5bf6cd(_0x49970a);},'LPvJk':'PostToolUse'},_0x4d236d=await _0x3bfe00['tddHp'](getEnabledSessionId,_0x2cac68);if(!_0x4d236d)return;_0x3bfe00['Mkivl'](updateBranchTracking,_0x4d236d);const _0x109c94=await getToken();if(!_0x109c94)return;const _0x343032=getSessionEntry(_0x4d236d);if(_0x343032){const _0x1582d3={'hookSpecificOutput':{'hookEventName':_0x3bfe00[_0x34304b(0x1ae)],'additionalContext':_0x34304b(0x1b1)}};console[_0x34304b(0x1bb)](JSON[_0x34304b(0x1b7)](_0x1582d3));return;}const _0x45e07a={'hookSpecificOutput':{'hookEventName':_0x34304b(0x1bd),'additionalContext':_0x34304b(0x1b6)}};console[_0x34304b(0x1bb)](JSON['stringify'](_0x45e07a));}function _0x29c3(){const _0x43a65d=['1443732RtGSmQ','777558mUtTsR','log','10800870KQyJDD','PostToolUse','1664935DDRZDt','LPvJk','522212fxyEUU','11ScQAXt','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).','81296DYDlzu','180RxxxHk','3YJjFvW','548445wtjwss','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.','stringify','28dzyNrZ'];_0x29c3=function(){return _0x43a65d;};return _0x29c3();}
@@ -1 +1 @@
1
- (function(_0x569bae,_0x1e27c3){const _0x288f75=_0x34dd,_0x3bf379=_0x569bae();while(!![]){try{const _0x21beb7=parseInt(_0x288f75(0xc3))/0x1*(-parseInt(_0x288f75(0xb9))/0x2)+-parseInt(_0x288f75(0xc2))/0x3*(-parseInt(_0x288f75(0xc1))/0x4)+parseInt(_0x288f75(0xc5))/0x5*(parseInt(_0x288f75(0xbe))/0x6)+parseInt(_0x288f75(0xbd))/0x7+parseInt(_0x288f75(0xbf))/0x8*(parseInt(_0x288f75(0xbc))/0x9)+parseInt(_0x288f75(0xba))/0xa+-parseInt(_0x288f75(0xbb))/0xb;if(_0x21beb7===_0x1e27c3)break;else _0x3bf379['push'](_0x3bf379['shift']());}catch(_0x457b38){_0x3bf379['push'](_0x3bf379['shift']());}}}(_0x4da8,0xef648));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x5313fb){const _0x5b60d8=_0x34dd,_0x50329a={'iUMen':function(_0x189ba4,_0x4361ab){return _0x189ba4(_0x4361ab);},'YnoUa':function(_0x5421a2){return _0x5421a2();}},_0x148e17=await _0x50329a[_0x5b60d8(0xc0)](getEnabledSessionId,_0x5313fb);if(!_0x148e17)return;try{const _0x2e5c51=await _0x50329a[_0x5b60d8(0xc4)](getToken);if(!_0x2e5c51)return;_0x50329a['iUMen'](printBlock,'===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}function _0x34dd(_0x183903,_0xd10dfe){_0x183903=_0x183903-0xb9;const _0x4da810=_0x4da8();let _0x34dd44=_0x4da810[_0x183903];return _0x34dd44;}function _0x4da8(){const _0x542935=['3782535cpuYyX','12jJsaoB','3013540xzbBHh','15985079RIaxlW','3174534aJtsVH','40173IbnLny','12cqLNcX','24DkPAVY','iUMen','2456EnQysU','6501jDDosg','295847eudKKN','YnoUa'];_0x4da8=function(){return _0x542935;};return _0x4da8();}
1
+ (function(_0x1056f8,_0x4517aa){const _0x4794a2=_0x7a0a,_0x3614ca=_0x1056f8();while(!![]){try{const _0x12d83a=parseInt(_0x4794a2(0xd5))/0x1*(-parseInt(_0x4794a2(0xd3))/0x2)+parseInt(_0x4794a2(0xcd))/0x3+parseInt(_0x4794a2(0xce))/0x4*(-parseInt(_0x4794a2(0xd4))/0x5)+-parseInt(_0x4794a2(0xd7))/0x6*(-parseInt(_0x4794a2(0xd6))/0x7)+-parseInt(_0x4794a2(0xd0))/0x8+parseInt(_0x4794a2(0xd8))/0x9*(parseInt(_0x4794a2(0xd2))/0xa)+parseInt(_0x4794a2(0xd1))/0xb*(parseInt(_0x4794a2(0xcf))/0xc);if(_0x12d83a===_0x4517aa)break;else _0x3614ca['push'](_0x3614ca['shift']());}catch(_0x1768f5){_0x3614ca['push'](_0x3614ca['shift']());}}}(_0xf3eb,0x7018f));function _0xf3eb(){const _0x21c422=['96sKCYQk','385546smCQyv','96jEOShy','3825CRevnJ','949884udTjCn','4UsIUEf','21612FVXzUh','3271968fQrsgt','2123zMkWyR','12130ewgZYb','14286lOyGYG','2535595LZujjN'];_0xf3eb=function(){return _0x21c422;};return _0xf3eb();}import{getToken}from'../utils/keychain.js';function _0x7a0a(_0x3a13c2,_0x402c31){_0x3a13c2=_0x3a13c2-0xcd;const _0xf3eb1f=_0xf3eb();let _0x7a0a8f=_0xf3eb1f[_0x3a13c2];return _0x7a0a8f;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x1c3baa){const _0x3a1b33=await getEnabledSessionId(_0x1c3baa);if(!_0x3a1b33)return;try{const _0xefe1f6=await getToken();if(!_0xefe1f6)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- (function(_0x1d9eaf,_0x449147){const _0x4eb3c8=_0x2e31,_0x400af9=_0x1d9eaf();while(!![]){try{const _0x22f441=-parseInt(_0x4eb3c8(0x6b))/0x1*(parseInt(_0x4eb3c8(0x6e))/0x2)+-parseInt(_0x4eb3c8(0x70))/0x3*(-parseInt(_0x4eb3c8(0x71))/0x4)+-parseInt(_0x4eb3c8(0x67))/0x5+parseInt(_0x4eb3c8(0x72))/0x6+-parseInt(_0x4eb3c8(0x6d))/0x7*(-parseInt(_0x4eb3c8(0x6c))/0x8)+-parseInt(_0x4eb3c8(0x6a))/0x9+parseInt(_0x4eb3c8(0x69))/0xa*(parseInt(_0x4eb3c8(0x6f))/0xb);if(_0x22f441===_0x449147)break;else _0x400af9['push'](_0x400af9['shift']());}catch(_0x29c558){_0x400af9['push'](_0x400af9['shift']());}}}(_0x26b3,0x2a1eb));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x26b3(){const _0x1501be=['284346vDkxQX','session_id','reason','1205965pTDRle','clear','3920600tolmMD','1974825SjkSNc','148475UUgSZV','16sZcIIn','705509rIudwO','2oZJGcA','11ZPyHvT','33KxTfTz','51124SsJKZf'];_0x26b3=function(){return _0x1501be;};return _0x26b3();}function _0x2e31(_0x411ade,_0x520693){_0x411ade=_0x411ade-0x65;const _0x26b34a=_0x26b3();let _0x2e3181=_0x26b34a[_0x411ade];return _0x2e3181;}import{readHookInput}from'./output.js';export async function sessionEnd(_0xe15b42){const _0x2cb86b=_0x2e31,_0x4ad195={'PPhKh':function(_0x327d28,_0x29373c){return _0x327d28===_0x29373c;}};let _0x46f526=_0xe15b42,_0x130063;if(!_0xe15b42){const _0x19c33=await readHookInput();_0x46f526=_0x19c33?.[_0x2cb86b(0x65)],_0x130063=_0x19c33?.[_0x2cb86b(0x66)];}if(!_0x46f526)return;_0x4ad195['PPhKh'](_0x130063,_0x2cb86b(0x68))&&recordEnabledSessionCleared(_0x46f526);}
1
+ (function(_0x51a415,_0x479574){const _0x42294b=_0x44e7,_0x32409b=_0x51a415();while(!![]){try{const _0x4b09cb=-parseInt(_0x42294b(0x16e))/0x1*(-parseInt(_0x42294b(0x175))/0x2)+-parseInt(_0x42294b(0x177))/0x3*(-parseInt(_0x42294b(0x171))/0x4)+parseInt(_0x42294b(0x170))/0x5+parseInt(_0x42294b(0x16f))/0x6+-parseInt(_0x42294b(0x173))/0x7*(parseInt(_0x42294b(0x176))/0x8)+parseInt(_0x42294b(0x16d))/0x9*(parseInt(_0x42294b(0x174))/0xa)+-parseInt(_0x42294b(0x172))/0xb;if(_0x4b09cb===_0x479574)break;else _0x32409b['push'](_0x32409b['shift']());}catch(_0x7772bf){_0x32409b['push'](_0x32409b['shift']());}}}(_0x44a4,0x86e50));function _0x44a4(){const _0x1943df=['clear','uaNDb','72423OWvUCd','137877huKVbk','5086008kJGetl','4454300jUaIWg','1076TDMyKN','37675495BsrMTV','1009799lCFxgW','620mjnxhz','16XaHzts','16MZpJft','10323Halczo'];_0x44a4=function(){return _0x1943df;};return _0x44a4();}function _0x44e7(_0x42faa2,_0x55d90e){_0x42faa2=_0x42faa2-0x16b;const _0x44a446=_0x44a4();let _0x44e790=_0x44a446[_0x42faa2];return _0x44e790;}import{recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x1bd8c4){const _0xd5a5ba=_0x44e7,_0x3b689a={'vLhMz':function(_0x5458ea){return _0x5458ea();},'uaNDb':function(_0x48865f,_0x37db66){return _0x48865f(_0x37db66);}};let _0x43d10e=_0x1bd8c4,_0x4fe34f;if(!_0x1bd8c4){const _0x3b0688=await _0x3b689a['vLhMz'](readHookInput);_0x43d10e=_0x3b0688?.['session_id'],_0x4fe34f=_0x3b0688?.['reason'];}if(!_0x43d10e)return;_0x4fe34f===_0xd5a5ba(0x16b)&&_0x3b689a[_0xd5a5ba(0x16c)](recordEnabledSessionCleared,_0x43d10e);}
@@ -1 +1 @@
1
- function _0x215f(){const _0x3f5fcc=['2543674rEKhWZ','8337456AFbYCk','success','8boyfbZ','env','trackCommandEnd','5710700ogUDGI','444036dNkdLa','uFnEI','main','AAabO','85nguzGH','stringify','trackCommandStart','CLAUDE_ENV_FILE','12363GXhUmB','source','AxAAA','314fjNEHH','55mYANtf','3234572Owtpjn','=================================================================\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=================================================================','31848ogRLHQ','master'];_0x215f=function(){return _0x3f5fcc;};return _0x215f();}const _0x441f8f=_0x4f8c;(function(_0x402f17,_0x3920a0){const _0x1f9915=_0x4f8c,_0x9e451f=_0x402f17();while(!![]){try{const _0x3c10c7=parseInt(_0x1f9915(0xf7))/0x1+-parseInt(_0x1f9915(0x102))/0x2*(parseInt(_0x1f9915(0xff))/0x3)+-parseInt(_0x1f9915(0xec))/0x4+-parseInt(_0x1f9915(0xfb))/0x5*(parseInt(_0x1f9915(0xee))/0x6)+-parseInt(_0x1f9915(0xf0))/0x7+parseInt(_0x1f9915(0xf3))/0x8*(-parseInt(_0x1f9915(0xf1))/0x9)+-parseInt(_0x1f9915(0xf6))/0xa*(-parseInt(_0x1f9915(0xeb))/0xb);if(_0x3c10c7===_0x3920a0)break;else _0x9e451f['push'](_0x9e451f['shift']());}catch(_0x3f3059){_0x9e451f['push'](_0x9e451f['shift']());}}}(_0x215f,0x71380));import{appendFile}from'fs/promises';function _0x4f8c(_0x398e14,_0x345e72){_0x398e14=_0x398e14-0xeb;const _0x215f5e=_0x215f();let _0x4f8cf1=_0x215f5e[_0x398e14];return _0x4f8cf1;}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT=_0x441f8f(0xed);export async function sessionStart(_0xc362ba){const _0x313dca=_0x441f8f,_0x13bd5c={'FpAWy':_0x313dca(0x100),'idiPa':function(_0x2b4823,_0xb135f6){return _0x2b4823(_0xb135f6);},'AxAAA':'hook:session-start','uFnEI':_0x313dca(0xf2),'AAabO':function(_0x5037a2){return _0x5037a2();},'IqGBo':function(_0x586431,_0x2653ee){return _0x586431!==_0x2653ee;},'NcxAk':_0x313dca(0xef),'HpdGJ':function(_0x291e2e,_0x6aff50){return _0x291e2e+_0x6aff50;}};let _0xc98ba5=_0xc362ba||'',_0x39605a;if(!_0xc362ba){let _0x72a642='';for await(const _0x3df052 of process['stdin']){_0x72a642+=_0x3df052;}try{const _0x2f01c6=JSON['parse'](_0x72a642);_0xc98ba5=_0x2f01c6['session_id']||'',_0x39605a=_0x2f01c6[_0x13bd5c['FpAWy']];}catch{}const _0x20f721=process[_0x313dca(0xf4)][_0x313dca(0xfe)];if(_0x20f721&&_0xc98ba5)try{await appendFile(_0x20f721,'export\x20CLAUDE_SESSION_ID=\x22'+_0xc98ba5+'\x22\x0a');}catch{}}if(_0xc98ba5){shouldAutoEnableAfterClear(_0x39605a)&&autoEnableAfterClear(_0xc98ba5);initBranchTracking(_0xc98ba5);const _0x4c8b9d=_0x13bd5c['idiPa'](isSessionEnabled,_0xc98ba5);try{const _0x16f2d3=createTelemetryCollector(_0x13bd5c[_0x313dca(0x101)]);await _0x16f2d3[_0x313dca(0xfd)]({'sessionId':_0xc98ba5,'hooksEnabled':_0x4c8b9d}),await _0x16f2d3[_0x313dca(0xf5)](_0x13bd5c[_0x313dca(0xf8)]);}catch{}if(_0x4c8b9d){const _0xae32d6=_0x13bd5c[_0x313dca(0xfa)](getCurrentBranch),_0x1d6a64=_0xae32d6&&_0xae32d6!==_0x313dca(0xf9)&&_0x13bd5c['IqGBo'](_0xae32d6,_0x13bd5c['NcxAk'])?'\x20(Branch:\x20'+_0xae32d6+')':'',_0x4c0e40={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':_0x13bd5c['HpdGJ'](RANGER_AUTO_ENABLED_PROMPT,_0x1d6a64)}};console['log'](JSON[_0x313dca(0xfc)](_0x4c0e40));}}}
1
+ const _0x3e12ba=_0x56b1;function _0x56b1(_0xea915e,_0x3a81a0){_0xea915e=_0xea915e-0x120;const _0xa5805f=_0xa580();let _0x56b108=_0xa5805f[_0xea915e];return _0x56b108;}function _0xa580(){const _0x4a2cd2=['=================================================================\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=================================================================','13212ypRoeo','env','936080ofKIau','46134aaYZWK','2947609ODfobu','trackCommandEnd','log','eHgCv','hRbPk','master','12938Btelbs','18gDkTkH','4671400KWePrX','hook:session-start','\x20(Branch:\x20','211RFyAjn','18byVypc','3chfaig','CLAUDE_ENV_FILE','2632175WNvcnj','export\x20CLAUDE_SESSION_ID=\x22','stringify','SessionStart','fCLkg','25714qyrwee','1730ciShyr'];_0xa580=function(){return _0x4a2cd2;};return _0xa580();}(function(_0x554cb2,_0x582fb4){const _0x99f7c3=_0x56b1,_0xc24b60=_0x554cb2();while(!![]){try{const _0x501107=parseInt(_0x99f7c3(0x131))/0x1*(-parseInt(_0x99f7c3(0x12c))/0x2)+parseInt(_0x99f7c3(0x133))/0x3*(-parseInt(_0x99f7c3(0x12e))/0x4)+-parseInt(_0x99f7c3(0x135))/0x5+parseInt(_0x99f7c3(0x12d))/0x6*(parseInt(_0x99f7c3(0x126))/0x7)+-parseInt(_0x99f7c3(0x124))/0x8*(parseInt(_0x99f7c3(0x132))/0x9)+parseInt(_0x99f7c3(0x120))/0xa*(parseInt(_0x99f7c3(0x125))/0xb)+parseInt(_0x99f7c3(0x122))/0xc*(parseInt(_0x99f7c3(0x13a))/0xd);if(_0x501107===_0x582fb4)break;else _0xc24b60['push'](_0xc24b60['shift']());}catch(_0x1ab25f){_0xc24b60['push'](_0xc24b60['shift']());}}}(_0xa580,0xd5379));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT=_0x3e12ba(0x121);export async function sessionStart(_0x6f7d62){const _0x26e54c=_0x3e12ba,_0x6f9a06={'uNoqG':function(_0x3c6bfa,_0x3719fc){return _0x3c6bfa||_0x3719fc;},'lpwfH':'source','hRbPk':function(_0x171311,_0x47f5bb,_0x44eaaa){return _0x171311(_0x47f5bb,_0x44eaaa);},'JgJTp':function(_0x77f4e1,_0x37a4bc){return _0x77f4e1(_0x37a4bc);},'eHgCv':function(_0x25002e,_0x44c876){return _0x25002e(_0x44c876);},'xkhyI':function(_0x5df114,_0xb0b007){return _0x5df114(_0xb0b007);},'lezxY':function(_0x5a871a,_0x228c01){return _0x5a871a(_0x228c01);},'ElYne':function(_0x245352){return _0x245352();},'fCLkg':'main','ANQUT':_0x26e54c(0x138)};let _0x4ebf75=_0x6f9a06['uNoqG'](_0x6f7d62,''),_0x1334bd;if(!_0x6f7d62){let _0xc3110='';for await(const _0x5069a6 of process['stdin']){_0xc3110+=_0x5069a6;}try{const _0xb33bab=JSON['parse'](_0xc3110);_0x4ebf75=_0xb33bab['session_id']||'',_0x1334bd=_0xb33bab[_0x6f9a06['lpwfH']];}catch{}const _0x143b51=process[_0x26e54c(0x123)][_0x26e54c(0x134)];if(_0x143b51&&_0x4ebf75)try{await _0x6f9a06[_0x26e54c(0x12a)](appendFile,_0x143b51,_0x26e54c(0x136)+_0x4ebf75+'\x22\x0a');}catch{}}if(_0x4ebf75){_0x6f9a06['JgJTp'](shouldAutoEnableAfterClear,_0x1334bd)&&_0x6f9a06[_0x26e54c(0x129)](autoEnableAfterClear,_0x4ebf75);initBranchTracking(_0x4ebf75);const _0x2f6267=_0x6f9a06['xkhyI'](isSessionEnabled,_0x4ebf75);try{const _0x56343e=_0x6f9a06['lezxY'](createTelemetryCollector,_0x26e54c(0x12f));await _0x56343e['trackCommandStart']({'sessionId':_0x4ebf75,'hooksEnabled':_0x2f6267}),await _0x56343e[_0x26e54c(0x127)]('success');}catch{}if(_0x2f6267){const _0x5518ca=_0x6f9a06['ElYne'](getCurrentBranch),_0x867db=_0x5518ca&&_0x5518ca!==_0x6f9a06[_0x26e54c(0x139)]&&_0x5518ca!==_0x26e54c(0x12b)?_0x26e54c(0x130)+_0x5518ca+')':'',_0xf31913={'hookSpecificOutput':{'hookEventName':_0x6f9a06['ANQUT'],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x867db}};console[_0x26e54c(0x128)](JSON[_0x26e54c(0x137)](_0xf31913));}}}
@@ -1 +1 @@
1
- (function(_0x3f6a23,_0x4073c5){const _0x4c16a1=_0x157a,_0x265228=_0x3f6a23();while(!![]){try{const _0x3ca867=parseInt(_0x4c16a1(0x122))/0x1*(-parseInt(_0x4c16a1(0x132))/0x2)+-parseInt(_0x4c16a1(0x120))/0x3+parseInt(_0x4c16a1(0x129))/0x4*(-parseInt(_0x4c16a1(0x131))/0x5)+parseInt(_0x4c16a1(0x130))/0x6+-parseInt(_0x4c16a1(0x126))/0x7*(-parseInt(_0x4c16a1(0x118))/0x8)+parseInt(_0x4c16a1(0x123))/0x9+parseInt(_0x4c16a1(0x11e))/0xa;if(_0x3ca867===_0x4073c5)break;else _0x265228['push'](_0x265228['shift']());}catch(_0x1388ea){_0x265228['push'](_0x265228['shift']());}}}(_0x40ee,0x73e3e));import{open}from'fs/promises';import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';function _0x157a(_0x2012da,_0x344bf3){_0x2012da=_0x2012da-0x117;const _0x40ee9a=_0x40ee();let _0x157a90=_0x40ee9a[_0x2012da];return _0x157a90;}import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x24376b){const _0x3251dc=_0x157a,_0x1dd9c7={'wgAeZ':function(_0x2b3b0a,_0x27234d){return _0x2b3b0a(_0x27234d);},'KMdIP':function(_0x5d08e4,_0x3cb32a,_0x2de31d,_0x18ec8f){return _0x5d08e4(_0x3cb32a,_0x2de31d,_0x18ec8f);},'HcyiA':function(_0x584050,_0x1834be,_0x354e5b){return _0x584050(_0x1834be,_0x354e5b);},'ePKvS':function(_0xe8bb0f,_0x54f38e){return _0xe8bb0f(_0x54f38e);},'rUZhW':'block'},_0x5c5ab8=await _0x1dd9c7['wgAeZ'](getEnabledHookContext,_0x24376b),_0x3e5498=_0x5c5ab8?.['sessionId']??null,_0x2df8ba=Boolean(_0x5c5ab8?.[_0x3251dc(0x135)]?.['stop_hook_active']),_0x23fe7b=typeof _0x5c5ab8?.[_0x3251dc(0x135)]?.['transcript_path']==='string'?_0x5c5ab8[_0x3251dc(0x135)][_0x3251dc(0x11c)]:null;let _0x3e3a77=!![];if(!_0x3e5498){await _0x1dd9c7[_0x3251dc(0x12e)](trackStop,_0x3e5498,![],_0x3e3a77);return;}try{const _0x45019f=_0x1dd9c7[_0x3251dc(0x121)](getSessionEntry,_0x3e5498);if(!_0x45019f){await _0x1dd9c7[_0x3251dc(0x12e)](trackStop,_0x3e5498,!![],_0x3e3a77);return;}const _0x24b6ca=_0x3251dc(0x117)+_0x45019f['featureId'],_0x5d5355=_0x3251dc(0x13a),_0x3536bd=await getToken(),_0x29c09c=!_0x2df8ba;let _0x3ef77e=null,_0x1968d9=null;const _0x258b65=_0x2df8ba&&await transcriptHasToken(_0x23fe7b,_0x5d5355),_0x54674f=await _0x1dd9c7[_0x3251dc(0x125)](transcriptHasToken,_0x23fe7b,_0x24b6ca);if(_0x3536bd)try{const _0x5346a5=await getFeature(_0x45019f['featureId']);_0x3ef77e=_0x5346a5['name']??null,_0x1968d9=_0x5346a5[_0x3251dc(0x133)]??null;}catch{}if(_0x3536bd&&_0x1968d9)try{await concludeSession(_0x45019f[_0x3251dc(0x11a)],_0x1968d9);}catch(_0x4d0fcb){if(_0x258b65){await trackStop(_0x3e5498,!![],_0x3e3a77);return;}_0x3e3a77=![];const _0x301b20=_0x4d0fcb instanceof Error?_0x4d0fcb['message']:_0x1dd9c7[_0x3251dc(0x137)](String,_0x4d0fcb),_0x1a4773={'decision':_0x1dd9c7['rUZhW'],'reason':'Failed\x20to\x20conclude\x20Ranger\x20feature\x20review\x20session'+(_0x3ef77e?_0x3251dc(0x138)+_0x3ef77e+'\x22':'')+_0x3251dc(0x139)+_0x301b20+'\x0a\x0aThis\x20is\x20most\x20likely\x20due\x20to\x20pending\x20scenarios\x20that\x20need\x20to\x20be\x20verified.\x20Please\x20resolve\x20the\x20issue\x20or\x20resume\x20later\x20with:\x0a\x20\x20ranger\x20resume\x0a\x0aIf\x20you\x20are\x20extremely\x20sure\x20this\x20is\x20the\x20user\x27s\x20requirement\x20and\x20want\x20to\x20skip\x20verification\x20for\x20now,\x20send\x20a\x20final\x20message\x20that\x20includes\x20the\x20feature\x20review\x20link\x20('+_0x24b6ca+_0x3251dc(0x12f)+_0x5d5355+'`,\x20then\x20run\x20/exit\x20again.'};console['log'](JSON[_0x3251dc(0x127)](_0x1a4773)),await trackStop(_0x3e5498,!![],_0x3e3a77);return;}await trackStop(_0x3e5498,!![],_0x3e3a77);return;}catch{await trackStop(_0x3e5498,!![],_0x3e3a77);return;}}function _0x40ee(){const _0x3d59b4=['stringify','alloc','3412SjRXAh','includes','SytBH','toString','trackCommandEnd','KMdIP',')\x20and\x20the\x20token\x20`','2576640JGFxqw','3475BSWwfZ','274svHPhN','currentSessionId','read','input','gxPMz','ePKvS','\x20for\x20\x22',':\x0a\x0a','RANGER_SKIP_VERIFICATION','https://dashboard.ranger.net/features/','5324992QofYoV','trackCommandStart','featureId','OfgTA','transcript_path','success','1363480idPyFb','size','172089nEfXYP','wgAeZ','3727CGElEG','3636639gywTUB','close','HcyiA','7zaBCxp'];_0x40ee=function(){return _0x3d59b4;};return _0x40ee();}async function trackStop(_0x24a04e,_0x3bff4a,_0x438664){const _0x20c7ea=_0x157a,_0x14f254={'byreI':function(_0x19c399,_0x431d43){return _0x19c399??_0x431d43;}};try{const _0xe6d7dd=createTelemetryCollector('hook:stop');await _0xe6d7dd[_0x20c7ea(0x119)]({'sessionId':_0x14f254['byreI'](_0x24a04e,undefined),'hooksEnabled':_0x3bff4a,'stopAllowed':_0x438664}),await _0xe6d7dd[_0x20c7ea(0x12d)](_0x20c7ea(0x11d));}catch{}}async function transcriptHasToken(_0x159bde,_0x5d9c43){const _0x2777bd=_0x157a,_0x31df38={'OfgTA':function(_0x130b61,_0x132182,_0xca8d16){return _0x130b61(_0x132182,_0xca8d16);}};if(!_0x159bde)return![];const _0x1a6f11=await _0x31df38[_0x2777bd(0x11b)](readTranscriptTail,_0x159bde,0x30d40);return _0x1a6f11?_0x1a6f11[_0x2777bd(0x12a)](_0x5d9c43):![];}async function readTranscriptTail(_0x4293ae,_0x166ace){const _0x168674=_0x157a,_0x5eb5fa={'SytBH':function(_0x2481a5,_0x232a5e,_0xb20a9){return _0x2481a5(_0x232a5e,_0xb20a9);},'gxPMz':function(_0x1f9e37,_0x43e3dd){return _0x1f9e37<=_0x43e3dd;}};let _0x2b1fbc=null;try{_0x2b1fbc=await _0x5eb5fa[_0x168674(0x12b)](open,_0x4293ae,'r');const _0x4ff503=await _0x2b1fbc['stat'](),_0x4d35ab=Math['min'](_0x4ff503['size'],_0x166ace);if(_0x5eb5fa[_0x168674(0x136)](_0x4d35ab,0x0))return'';const _0x441109=Buffer[_0x168674(0x128)](_0x4d35ab);return await _0x2b1fbc[_0x168674(0x134)](_0x441109,0x0,_0x4d35ab,_0x4ff503[_0x168674(0x11f)]-_0x4d35ab),_0x441109[_0x168674(0x12c)]('utf8');}catch{return null;}finally{try{await _0x2b1fbc?.[_0x168674(0x124)]();}catch{}}}
1
+ (function(_0x52256b,_0x569503){const _0x57fc42=_0x5cbd,_0x486895=_0x52256b();while(!![]){try{const _0x22ed6e=-parseInt(_0x57fc42(0x83))/0x1*(parseInt(_0x57fc42(0x8f))/0x2)+-parseInt(_0x57fc42(0x93))/0x3+parseInt(_0x57fc42(0x92))/0x4*(parseInt(_0x57fc42(0xa4))/0x5)+parseInt(_0x57fc42(0xa6))/0x6*(-parseInt(_0x57fc42(0x9c))/0x7)+-parseInt(_0x57fc42(0x8d))/0x8+parseInt(_0x57fc42(0x85))/0x9*(-parseInt(_0x57fc42(0x88))/0xa)+parseInt(_0x57fc42(0xa2))/0xb;if(_0x22ed6e===_0x569503)break;else _0x486895['push'](_0x486895['shift']());}catch(_0x5f5143){_0x486895['push'](_0x486895['shift']());}}}(_0x5e38,0xcc585));import{open}from'fs/promises';import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0xfc51fc){const _0x12b48a=_0x5cbd,_0x5e8d3d={'aWDTo':function(_0x12f1c8,_0x49eaa3){return _0x12f1c8(_0x49eaa3);},'dHLvX':function(_0x1fc2ff,_0x2975fd){return _0x1fc2ff(_0x2975fd);},'iEbDq':function(_0xcf49af,_0x3d0b76){return _0xcf49af===_0x3d0b76;},'oWLte':function(_0x419328,_0x4771e3,_0x4ac27d,_0x5f32f6){return _0x419328(_0x4771e3,_0x4ac27d,_0x5f32f6);},'YkpZJ':function(_0x217393){return _0x217393();},'dqTdb':function(_0x49d3de,_0x2cfb00,_0xaf5137){return _0x49d3de(_0x2cfb00,_0xaf5137);},'LFbzc':function(_0x564703,_0x1b278c){return _0x564703&&_0x1b278c;},'FEaSu':function(_0x428855,_0x3fb9b6,_0x3e0e5e,_0xe46f64){return _0x428855(_0x3fb9b6,_0x3e0e5e,_0xe46f64);}},_0x48d752=await _0x5e8d3d[_0x12b48a(0x87)](getEnabledHookContext,_0xfc51fc),_0x1ab5da=_0x48d752?.['sessionId']??null,_0x5cc740=_0x5e8d3d['dHLvX'](Boolean,_0x48d752?.[_0x12b48a(0xa3)]?.[_0x12b48a(0x9a)]),_0x4add56=_0x5e8d3d['iEbDq'](typeof _0x48d752?.['input']?.[_0x12b48a(0x97)],'string')?_0x48d752[_0x12b48a(0xa3)]['transcript_path']:null;let _0xc2104b=!![];if(!_0x1ab5da){await trackStop(_0x1ab5da,![],_0xc2104b);return;}try{const _0x47e16d=_0x5e8d3d[_0x12b48a(0x87)](getSessionEntry,_0x1ab5da);if(!_0x47e16d){await _0x5e8d3d[_0x12b48a(0x9e)](trackStop,_0x1ab5da,!![],_0xc2104b);return;}const _0x249700='https://dashboard.ranger.net/features/'+_0x47e16d['featureId'],_0x262acc='RANGER_SKIP_VERIFICATION',_0x1770b3=await _0x5e8d3d['YkpZJ'](getToken),_0x4563ce=!_0x5cc740;let _0x2a1279=null,_0x260754=null;const _0x46b7c9=_0x5cc740&&await _0x5e8d3d['dqTdb'](transcriptHasToken,_0x4add56,_0x262acc),_0x2ca0ff=await _0x5e8d3d['dqTdb'](transcriptHasToken,_0x4add56,_0x249700);if(_0x1770b3)try{const _0x3a6949=await getFeature(_0x47e16d['featureId']);_0x2a1279=_0x3a6949[_0x12b48a(0x8e)]??null,_0x260754=_0x3a6949['currentSessionId']??null;}catch{}if(_0x5e8d3d[_0x12b48a(0x98)](_0x1770b3,_0x260754))try{await concludeSession(_0x47e16d[_0x12b48a(0x96)],_0x260754);}catch(_0x457406){if(_0x46b7c9){await _0x5e8d3d[_0x12b48a(0x9d)](trackStop,_0x1ab5da,!![],_0xc2104b);return;}_0xc2104b=![];const _0x429dc9=_0x457406 instanceof Error?_0x457406[_0x12b48a(0x99)]:_0x5e8d3d[_0x12b48a(0x8b)](String,_0x457406),_0x2ffe07={'decision':_0x12b48a(0x94),'reason':_0x12b48a(0xa0)+(_0x2a1279?_0x12b48a(0x95)+_0x2a1279+'\x22':'')+_0x12b48a(0xa5)+_0x429dc9+'\x0a\x0aThis\x20is\x20most\x20likely\x20due\x20to\x20pending\x20scenarios\x20that\x20need\x20to\x20be\x20verified.\x20Please\x20resolve\x20the\x20issue\x20or\x20resume\x20later\x20with:\x0a\x20\x20ranger\x20resume\x0a\x0aIf\x20you\x20are\x20extremely\x20sure\x20this\x20is\x20the\x20user\x27s\x20requirement\x20and\x20want\x20to\x20skip\x20verification\x20for\x20now,\x20send\x20a\x20final\x20message\x20that\x20includes\x20the\x20feature\x20review\x20link\x20('+_0x249700+_0x12b48a(0x91)+_0x262acc+_0x12b48a(0x9f)};console['log'](JSON['stringify'](_0x2ffe07)),await trackStop(_0x1ab5da,!![],_0xc2104b);return;}await _0x5e8d3d['oWLte'](trackStop,_0x1ab5da,!![],_0xc2104b);return;}catch{await trackStop(_0x1ab5da,!![],_0xc2104b);return;}}function _0x5cbd(_0x24e2b7,_0x43b62e){_0x24e2b7=_0x24e2b7-0x83;const _0x5e3865=_0x5e38();let _0x5cbdc4=_0x5e3865[_0x24e2b7];return _0x5cbdc4;}async function trackStop(_0x477ead,_0xf060ec,_0x4b265d){const _0x3009d4=_0x5cbd,_0x2d53e7={'JhXly':_0x3009d4(0x8a),'NGLBt':function(_0xa571e0,_0x16a1c6){return _0xa571e0??_0x16a1c6;}};try{const _0x1694c8=createTelemetryCollector(_0x2d53e7['JhXly']);await _0x1694c8['trackCommandStart']({'sessionId':_0x2d53e7['NGLBt'](_0x477ead,undefined),'hooksEnabled':_0xf060ec,'stopAllowed':_0x4b265d}),await _0x1694c8['trackCommandEnd']('success');}catch{}}async function transcriptHasToken(_0x9cc51b,_0x24c1dd){const _0x48256c=_0x5cbd,_0x38b86c={'GDpKG':function(_0x34de15,_0x250384,_0x258117){return _0x34de15(_0x250384,_0x258117);}};if(!_0x9cc51b)return![];const _0x2bcbc3=await _0x38b86c['GDpKG'](readTranscriptTail,_0x9cc51b,0x30d40);return _0x2bcbc3?_0x2bcbc3[_0x48256c(0x90)](_0x24c1dd):![];}function _0x5e38(){const _0x18443a=['987464IKYCwS','3146898bZFIkj','block','\x20for\x20\x22','featureId','transcript_path','LFbzc','message','stop_hook_active','size','454951yRqZhO','FEaSu','oWLte','`,\x20then\x20run\x20/exit\x20again.','Failed\x20to\x20conclude\x20Ranger\x20feature\x20review\x20session','utf8','54684883yLpFRx','input','20UVWbJy',':\x0a\x0a','54pjNTjG','141lCGAOQ','read','9972bupdUo','min','aWDTo','9940IqkMLE','PnPqm','hook:stop','dHLvX','upYjK','13228048mQnKab','name','10398XDaELN','includes',')\x20and\x20the\x20token\x20`'];_0x5e38=function(){return _0x18443a;};return _0x5e38();}async function readTranscriptTail(_0x402ceb,_0x20c397){const _0x3cd959=_0x5cbd,_0x11632f={'upYjK':function(_0x1b48b7,_0x280ec3){return _0x1b48b7<=_0x280ec3;},'PnPqm':function(_0x799bb9,_0x519f2a){return _0x799bb9-_0x519f2a;}};let _0x4e8a32=null;try{_0x4e8a32=await open(_0x402ceb,'r');const _0x46f39b=await _0x4e8a32['stat'](),_0x1fcfbe=Math[_0x3cd959(0x86)](_0x46f39b[_0x3cd959(0x9b)],_0x20c397);if(_0x11632f[_0x3cd959(0x8c)](_0x1fcfbe,0x0))return'';const _0x5c04c3=Buffer['alloc'](_0x1fcfbe);return await _0x4e8a32[_0x3cd959(0x84)](_0x5c04c3,0x0,_0x1fcfbe,_0x11632f[_0x3cd959(0x89)](_0x46f39b['size'],_0x1fcfbe)),_0x5c04c3['toString'](_0x3cd959(0xa1));}catch{return null;}finally{try{await _0x4e8a32?.['close']();}catch{}}}
@@ -1 +1 @@
1
- (function(_0x1446e6,_0x1ef1c7){var _0x234851=_0x4d9e,_0x4784ef=_0x1446e6();while(!![]){try{var _0x268d56=-parseInt(_0x234851(0x1d6))/0x1+parseInt(_0x234851(0x1d2))/0x2+-parseInt(_0x234851(0x1d4))/0x3+-parseInt(_0x234851(0x1d5))/0x4+-parseInt(_0x234851(0x1d8))/0x5+-parseInt(_0x234851(0x1d1))/0x6*(-parseInt(_0x234851(0x1d3))/0x7)+parseInt(_0x234851(0x1d7))/0x8;if(_0x268d56===_0x1ef1c7)break;else _0x4784ef['push'](_0x4784ef['shift']());}catch(_0x4db655){_0x4784ef['push'](_0x4784ef['shift']());}}}(_0x491e,0xd6743));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start}from'./start.js';export{useEnv}from'./useEnv.js';function _0x4d9e(_0xc65bbd,_0x5c8f67){_0xc65bbd=_0xc65bbd-0x1d1;var _0x491ea1=_0x491e();var _0x4d9e7c=_0x491ea1[_0xc65bbd];return _0x4d9e7c;}export{updateEnv}from'./updateEnv.js';function _0x491e(){var _0x27b270=['26567888MSnZfK','3914050NkXuNS','94920CVMGzq','3398966KSODys','119vYJjcM','1776126esuXUm','5656584EjMCLW','1622008qZYfKb'];_0x491e=function(){return _0x27b270;};return _0x491e();}export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';
1
+ (function(_0x374887,_0x45f355){var _0x1632e4=_0x4930,_0x57f805=_0x374887();while(!![]){try{var _0x1eab0a=parseInt(_0x1632e4(0xd2))/0x1+-parseInt(_0x1632e4(0xcb))/0x2*(-parseInt(_0x1632e4(0xcc))/0x3)+parseInt(_0x1632e4(0xd1))/0x4*(-parseInt(_0x1632e4(0xce))/0x5)+parseInt(_0x1632e4(0xcd))/0x6+-parseInt(_0x1632e4(0xd3))/0x7+-parseInt(_0x1632e4(0xd0))/0x8+parseInt(_0x1632e4(0xcf))/0x9*(-parseInt(_0x1632e4(0xd4))/0xa);if(_0x1eab0a===_0x45f355)break;else _0x57f805['push'](_0x57f805['shift']());}catch(_0x32631c){_0x57f805['push'](_0x57f805['shift']());}}}(_0x4a70,0x1938c));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';function _0x4930(_0x2080fc,_0x2e36c7){_0x2080fc=_0x2080fc-0xcb;var _0x4a7090=_0x4a70();var _0x4930eb=_0x4a7090[_0x2080fc];return _0x4930eb;}export{login}from'./login.js';export{start}from'./start.js';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 _0x4a70(){var _0x406fe8=['1123578sRZfAO','129535ZESXoD','135yXWBMb','51608sUJMaS','8RJhSto','197565pRxonr','626227KghrLa','206660RNNPth','58732bzQAmj','18aTCDKt'];_0x4a70=function(){return _0x406fe8;};return _0x4a70();}export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';