@ranger-testing/ranger-cli 2.1.7 → 2.1.8

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 (66) 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 -1
  25. package/build/commands/setup/opencode.js +1 -1
  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/mcpImageBase64.js +1 -1
  48. package/build/commands/utils/model.js +1 -1
  49. package/build/commands/utils/opencodeConfig.js +1 -1
  50. package/build/commands/utils/profileMessages.js +1 -1
  51. package/build/commands/utils/profileSetupBanner.js +1 -1
  52. package/build/commands/utils/rangerConfig.js +1 -1
  53. package/build/commands/utils/rangerRoot.js +1 -1
  54. package/build/commands/utils/reportGenerator.js +1 -1
  55. package/build/commands/utils/retry.js +1 -1
  56. package/build/commands/utils/sessionCache.js +1 -1
  57. package/build/commands/utils/settings.js +1 -1
  58. package/build/commands/utils/skillContent.js +1 -1
  59. package/build/commands/utils/skills.js +1 -1
  60. package/build/commands/utils/telemetry.js +1 -1
  61. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  62. package/build/commands/utils/userApi.js +1 -1
  63. package/build/commands/utils/version.js +1 -1
  64. package/build/commands/verifyFeature.js +1 -1
  65. package/build/commands/verifyInBrowser.js +1 -1
  66. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x1c55e1,_0x26dba3){const _0x49e70a=_0x31a9,_0x514d3c=_0x1c55e1();while(!![]){try{const _0x5e0df3=-parseInt(_0x49e70a(0x7b))/0x1*(parseInt(_0x49e70a(0x7a))/0x2)+parseInt(_0x49e70a(0x79))/0x3+parseInt(_0x49e70a(0x6f))/0x4+-parseInt(_0x49e70a(0x82))/0x5*(-parseInt(_0x49e70a(0x78))/0x6)+parseInt(_0x49e70a(0x69))/0x7*(-parseInt(_0x49e70a(0x6d))/0x8)+-parseInt(_0x49e70a(0x72))/0x9*(-parseInt(_0x49e70a(0x80))/0xa)+-parseInt(_0x49e70a(0x85))/0xb*(parseInt(_0x49e70a(0x84))/0xc);if(_0x5e0df3===_0x26dba3)break;else _0x514d3c['push'](_0x514d3c['shift']());}catch(_0x3173ac){_0x514d3c['push'](_0x514d3c['shift']());}}}(_0x1b16,0xd8ec8));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x31a9(_0x1de844,_0x518324){_0x1de844=_0x1de844-0x69;const _0x1b160a=_0x1b16();let _0x31a98e=_0x1b160a[_0x1de844];return _0x31a98e;}import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions','bug-bashes','reports','local','ci'];export async function getEnvNames(){const _0x19a7b4=_0x31a9,_0x57c7f9={'SMUed':function(_0x489e42,_0x59c4bd){return _0x489e42(_0x59c4bd);},'lYKdd':function(_0x5e3f26,_0x39f83c,_0x17c0c6){return _0x5e3f26(_0x39f83c,_0x17c0c6);},'YCYLA':_0x19a7b4(0x81),'vrlbp':function(_0x268e1f,_0x4f207e){return _0x268e1f(_0x4f207e);},'wrRWH':function(_0x16549c,_0x477388){return _0x16549c(_0x477388);},'YKuwY':function(_0x41d74c,_0x15d7bc){return _0x41d74c(_0x15d7bc);},'hsdCe':function(_0x3242c5,_0x2073f0){return _0x3242c5(_0x2073f0);},'hLzMB':function(_0xe88c3c,_0x1e52e6,_0x5e94d3){return _0xe88c3c(_0x1e52e6,_0x5e94d3);},'xpjRl':function(_0xa0fce2,_0x38b256){return _0xa0fce2(_0x38b256);},'Kolzi':'legacy'},_0x438059=getRangerDir();if(!_0x57c7f9[_0x19a7b4(0x70)](existsSync,_0x438059))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x557caa=await readActiveProfileName(),_0x3edf08=[],_0x16a52e={},_0x563bbc=_0x57c7f9[_0x19a7b4(0x77)](join,_0x438059,_0x57c7f9['YCYLA']);if(_0x57c7f9['SMUed'](existsSync,_0x563bbc)){const _0x576c52=await _0x57c7f9[_0x19a7b4(0x76)](readdir,_0x563bbc);for(const _0x279dd0 of _0x576c52){const _0x441d88=join(_0x563bbc,_0x279dd0),_0x534682=await stat(_0x441d88);_0x534682['isDirectory']()&&(_0x3edf08[_0x19a7b4(0x6a)](_0x279dd0),_0x16a52e[_0x279dd0]='local');}}const _0x37b146=_0x57c7f9['lYKdd'](join,_0x438059,'ci');if(existsSync(_0x37b146)){const _0x109bd5=await _0x57c7f9[_0x19a7b4(0x7d)](readdir,_0x37b146);for(const _0x45a4c9 of _0x109bd5){const _0x68827c=_0x57c7f9['lYKdd'](join,_0x37b146,_0x45a4c9),_0x3885ec=await _0x57c7f9['YKuwY'](stat,_0x68827c);_0x3885ec[_0x19a7b4(0x86)]()&&(_0x3edf08[_0x19a7b4(0x6a)](_0x45a4c9),_0x16a52e[_0x45a4c9]='ci');}}const _0x1a46db=await _0x57c7f9[_0x19a7b4(0x6e)](readdir,_0x438059);for(const _0x1c1337 of _0x1a46db){if(NON_ENV_DIRS['includes'](_0x1c1337))continue;if(_0x1c1337[_0x19a7b4(0x73)]('.'))continue;if(_0x1c1337[_0x19a7b4(0x74)]('.txt'))continue;const _0x3e971b=_0x57c7f9['hLzMB'](join,_0x438059,_0x1c1337),_0x17784b=await _0x57c7f9['xpjRl'](stat,_0x3e971b);_0x17784b[_0x19a7b4(0x86)]()&&existsSync(join(_0x3e971b,'settings.json'))&&(!_0x3edf08['includes'](_0x1c1337)&&(_0x3edf08[_0x19a7b4(0x6a)](_0x1c1337),_0x16a52e[_0x1c1337]=_0x57c7f9['Kolzi']));}return{'envNames':_0x3edf08,'activeEnv':_0x557caa,'envTypes':_0x16a52e};}export async function envList(){const _0x5e4d2c=_0x31a9,_0x543f66={'XttDF':function(_0x17c04c){return _0x17c04c();},'MWpVe':function(_0x53ee89,_0x528ec7){return _0x53ee89===_0x528ec7;},'QFWKJ':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','yyhKC':function(_0x58bae4,_0x4785d4){return _0x58bae4===_0x4785d4;},'VwleL':'local'},{envNames:_0x3a7c6e,activeEnv:_0x328dd8,envTypes:_0x3ceb9a}=await _0x543f66['XttDF'](getEnvNames);if(_0x543f66['MWpVe'](_0x3a7c6e[_0x5e4d2c(0x7c)],0x0)){console[_0x5e4d2c(0x71)]('\x0aNo\x20profiles\x20found.'),console['log'](_0x543f66[_0x5e4d2c(0x6c)]);return;}console[_0x5e4d2c(0x71)](_0x5e4d2c(0x7f));for(const _0x53a643 of _0x3a7c6e[_0x5e4d2c(0x6b)]()){const _0x1a78aa=_0x543f66['yyhKC'](_0x53a643,_0x328dd8),_0xd65834=_0x3ceb9a[_0x53a643]||_0x543f66[_0x5e4d2c(0x87)],_0x1d8b5e=await loadSettings(_0x53a643),_0x4762e9=_0xd65834==='legacy'?'':'\x20['+_0xd65834+']';console[_0x5e4d2c(0x71)]('\x20\x20'+(_0x1a78aa?'*\x20':'\x20\x20')+_0x53a643+_0x4762e9),_0x1d8b5e[_0x5e4d2c(0x83)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x1d8b5e[_0x5e4d2c(0x83)]),_0x1d8b5e[_0x5e4d2c(0x7e)]&&console['log'](_0x5e4d2c(0x75)+_0x1d8b5e['environmentDetails']);}_0x328dd8&&console[_0x5e4d2c(0x71)]('\x0a*\x20=\x20active\x20profile');}function _0x1b16(){const _0x5dea0f=['QFWKJ','136ErEtwW','hsdCe','2116192FXCjhr','SMUed','log','3177LoczSj','startsWith','endsWith','\x20\x20\x20\x20\x20\x20Details:\x20','vrlbp','lYKdd','168870veuvvq','4129638nvPITQ','3750dwPCSm','9tQlOsB','length','wrRWH','environmentDetails','\x0aProfiles:','29260Allslm','local','185IbMMdw','baseUrl','18667944sfveOJ','11XUYsde','isDirectory','VwleL','625380MEfSyA','push','sort'];_0x1b16=function(){return _0x5dea0f;};return _0x1b16();}
1
+ const _0x13d14d=_0x3919;(function(_0x4a1da1,_0x138e60){const _0x543cca=_0x3919,_0x2e9dc6=_0x4a1da1();while(!![]){try{const _0x2b1e42=parseInt(_0x543cca(0x154))/0x1*(-parseInt(_0x543cca(0x141))/0x2)+-parseInt(_0x543cca(0x13a))/0x3*(-parseInt(_0x543cca(0x13b))/0x4)+-parseInt(_0x543cca(0x145))/0x5*(-parseInt(_0x543cca(0x155))/0x6)+parseInt(_0x543cca(0x147))/0x7+parseInt(_0x543cca(0x140))/0x8+parseInt(_0x543cca(0x156))/0x9*(parseInt(_0x543cca(0x157))/0xa)+-parseInt(_0x543cca(0x146))/0xb;if(_0x2b1e42===_0x138e60)break;else _0x2e9dc6['push'](_0x2e9dc6['shift']());}catch(_0x53e814){_0x2e9dc6['push'](_0x2e9dc6['shift']());}}}(_0x5da2,0x779ba));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';function _0x5da2(){const _0x37f803=['push','settings.json','smDnL','gOQSy','bug-bashes','1kXBFzM','123312kjewOL','504kSBKuw','52960eFrSCD','includes','endsWith','GleiN','1292613ExjsTh','4kpgNYc','bxfQC','WBEjI','\x0aNo\x20profiles\x20found.','length','4746944shpoDJ','1540774DZCHTJ','isDirectory','baseUrl','log','145SXPeOU','11944416WYdqTT','3005338hhGUWU','legacy','environmentDetails','EZuOt','sessions','sort','Cedwk','local'];_0x5da2=function(){return _0x37f803;};return _0x5da2();}const NON_ENV_DIRS=[_0x13d14d(0x14b),_0x13d14d(0x153),'reports',_0x13d14d(0x14e),'ci'];export async function getEnvNames(){const _0x115b3e=_0x13d14d,_0x4fd9={'ZpQYm':function(_0x57f291){return _0x57f291();},'bxfQC':function(_0x2cb852,_0x3468fa){return _0x2cb852(_0x3468fa);},'EZuOt':function(_0x42d86e,_0x184e03,_0x40af17){return _0x42d86e(_0x184e03,_0x40af17);},'WBEjI':function(_0x3f596c,_0x5c18a4){return _0x3f596c(_0x5c18a4);},'FKYyw':function(_0x2d11c4,_0x191fb0){return _0x2d11c4(_0x191fb0);},'xXLmP':'.txt','smDnL':function(_0x54af8d,_0x279fe0){return _0x54af8d(_0x279fe0);}},_0xfa9324=getRangerDir();if(!existsSync(_0xfa9324))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x7e285d=await _0x4fd9['ZpQYm'](readActiveProfileName),_0x3e9d1e=[],_0x2f0b18={},_0x2df6d2=join(_0xfa9324,'local');if(existsSync(_0x2df6d2)){const _0x176fa9=await readdir(_0x2df6d2);for(const _0x441c7e of _0x176fa9){const _0x3886bf=join(_0x2df6d2,_0x441c7e),_0x40e3b6=await stat(_0x3886bf);_0x40e3b6['isDirectory']()&&(_0x3e9d1e[_0x115b3e(0x14f)](_0x441c7e),_0x2f0b18[_0x441c7e]='local');}}const _0x9b35e0=join(_0xfa9324,'ci');if(_0x4fd9[_0x115b3e(0x13c)](existsSync,_0x9b35e0)){const _0x1ae918=await _0x4fd9[_0x115b3e(0x13c)](readdir,_0x9b35e0);for(const _0x259577 of _0x1ae918){const _0x25e7bf=_0x4fd9['EZuOt'](join,_0x9b35e0,_0x259577),_0x1d652b=await _0x4fd9[_0x115b3e(0x13d)](stat,_0x25e7bf);_0x1d652b[_0x115b3e(0x142)]()&&(_0x3e9d1e['push'](_0x259577),_0x2f0b18[_0x259577]='ci');}}const _0x1cf121=await _0x4fd9['FKYyw'](readdir,_0xfa9324);for(const _0x184128 of _0x1cf121){if(NON_ENV_DIRS['includes'](_0x184128))continue;if(_0x184128['startsWith']('.'))continue;if(_0x184128[_0x115b3e(0x138)](_0x4fd9['xXLmP']))continue;const _0x8dab59=_0x4fd9[_0x115b3e(0x14a)](join,_0xfa9324,_0x184128),_0x4c76ec=await stat(_0x8dab59);_0x4c76ec[_0x115b3e(0x142)]()&&_0x4fd9[_0x115b3e(0x151)](existsSync,join(_0x8dab59,_0x115b3e(0x150)))&&(!_0x3e9d1e[_0x115b3e(0x137)](_0x184128)&&(_0x3e9d1e['push'](_0x184128),_0x2f0b18[_0x184128]=_0x115b3e(0x148)));}return{'envNames':_0x3e9d1e,'activeEnv':_0x7e285d,'envTypes':_0x2f0b18};}function _0x3919(_0x62822b,_0x2465e7){_0x62822b=_0x62822b-0x137;const _0x5da24c=_0x5da2();let _0x3919e4=_0x5da24c[_0x62822b];return _0x3919e4;}export async function envList(){const _0x3663e2=_0x13d14d,_0x1feb46={'gOQSy':function(_0x292092){return _0x292092();},'djnoc':function(_0x597225,_0x27d3ab){return _0x597225===_0x27d3ab;},'ckZfY':_0x3663e2(0x13e),'GleiN':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','Cedwk':'\x0aProfiles:','UOapU':function(_0x3b485c,_0xdcc9d5){return _0x3b485c(_0xdcc9d5);}},{envNames:_0x22bb87,activeEnv:_0x48e614,envTypes:_0x1e4502}=await _0x1feb46[_0x3663e2(0x152)](getEnvNames);if(_0x1feb46['djnoc'](_0x22bb87[_0x3663e2(0x13f)],0x0)){console[_0x3663e2(0x144)](_0x1feb46['ckZfY']),console[_0x3663e2(0x144)](_0x1feb46[_0x3663e2(0x139)]);return;}console['log'](_0x1feb46[_0x3663e2(0x14d)]);for(const _0x533f34 of _0x22bb87[_0x3663e2(0x14c)]()){const _0x5152ab=_0x533f34===_0x48e614,_0x24f36e=_0x1e4502[_0x533f34]||_0x3663e2(0x14e),_0x53933e=await _0x1feb46['UOapU'](loadSettings,_0x533f34),_0x5f2d23=_0x24f36e==='legacy'?'':'\x20['+_0x24f36e+']';console['log']('\x20\x20'+(_0x5152ab?'*\x20':'\x20\x20')+_0x533f34+_0x5f2d23),_0x53933e[_0x3663e2(0x143)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x53933e['baseUrl']),_0x53933e['environmentDetails']&&console[_0x3663e2(0x144)]('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x53933e[_0x3663e2(0x149)]);}_0x48e614&&console['log']('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
1
- const _0x1f6b22=_0x5c43;(function(_0x15e649,_0x293d32){const _0x32f4cc=_0x5c43,_0x2b878f=_0x15e649();while(!![]){try{const _0x57dd58=-parseInt(_0x32f4cc(0x121))/0x1+parseInt(_0x32f4cc(0x158))/0x2*(-parseInt(_0x32f4cc(0xb1))/0x3)+-parseInt(_0x32f4cc(0x16a))/0x4*(-parseInt(_0x32f4cc(0x138))/0x5)+-parseInt(_0x32f4cc(0x170))/0x6+-parseInt(_0x32f4cc(0x156))/0x7+-parseInt(_0x32f4cc(0x10e))/0x8+parseInt(_0x32f4cc(0x17c))/0x9*(parseInt(_0x32f4cc(0x150))/0xa);if(_0x57dd58===_0x293d32)break;else _0x2b878f['push'](_0x2b878f['shift']());}catch(_0xb6670b){_0x2b878f['push'](_0x2b878f['shift']());}}}(_0x5992,0xbc580));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x1cd6f0 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=_0x1f6b22(0x155),bold=_0x5244cb=>'\x1b[1m'+_0x5244cb+'\x1b[0m';function getGitRepoUrl(){const _0x523c20=_0x1f6b22,_0x4e5803={'LywCi':'pipe','UAHSP':_0x523c20(0xbf)};try{const _0x315d1b=execSync(_0x523c20(0x15d),{'encoding':'utf-8','stdio':['pipe',_0x4e5803['LywCi'],_0x4e5803[_0x523c20(0x100)]]})['trim']();return _0x315d1b[_0x523c20(0x16e)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x4e5803['UAHSP'])[_0x523c20(0x16e)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x316aa8=_0x1f6b22,_0x4cd0eb={'klQzS':function(_0x2ba982,_0x2c2799,_0x1668f1){return _0x2ba982(_0x2c2799,_0x1668f1);},'DRmFW':'utf-8','VihIu':'pipe'};try{return _0x4cd0eb['klQzS'](execSync,'git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x4cd0eb['DRmFW'],'stdio':['pipe','pipe',_0x4cd0eb[_0x316aa8(0x169)]]})[_0x316aa8(0xc0)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x285f1d=_0x1f6b22,_0xee913d={'ZXdHK':function(_0x5aa92b,_0x48e513,_0xeca20e){return _0x5aa92b(_0x48e513,_0xeca20e);},'YigEX':function(_0xb32c37){return _0xb32c37();},'WtPqU':function(_0x505bfd,_0x28c4f0){return _0x505bfd(_0x28c4f0);},'lTWQA':_0x285f1d(0x119)},_0x3eeab6=_0xee913d[_0x285f1d(0x10d)](join,_0xee913d[_0x285f1d(0xd9)](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0xee913d['WtPqU'](existsSync,_0x3eeab6))return null;try{const _0x457f8a=await _0xee913d['ZXdHK'](readFile,_0x3eeab6,_0xee913d['lTWQA']);return _0x457f8a['trim']()||null;}catch{return null;}}function _0x5992(){const _0x3a8a20=['completedAt','\x20\x20\x20Updated\x20branch\x20to:\x20','AfHsK','name','\x20at\x20[','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','error','currentSessionId','jnMbJ','VihIu','12352LdNPNr','QCjCJ','aTcGN','kRcHQ','replace','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','7083114wacqsI','length','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','stdout','\x20\x20Expected\x20flow:','tsiqY','completed','latestReview','MEjLc','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','HWitd','qfCHL','965286tPmIzw','\x0aAvailable\x20scenarios:','\x20—\x20','CcwZC','incomplete','LZPpx','No\x20sessions\x20found.','bdrdQ','\x20\x20\x20\x20\x20\x20Cancelled:\x20','blocked','321EkaNrW','\x20\x20\x20\x20','\x0a✅\x20Restored\x20feature\x20review:\x20','mTMzA','\x20\x20\x20Branch:\x20','mzTzB','ready','status','\x0aConcluding\x20session...','lPNVy','\x20[has\x20reviewer\x20feedback]','dashboardUrl','vvguz','gitRepoUrl','github.com/','trim','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','WzXJr','selector','output','\x20blocked','Zmews','\x0aNo\x20feature\x20reviews\x20found.','YFhxh','iteration','blockedItems','from','\x20\x20\x20Created:\x20','offset','\x0a✅\x20Session\x20','jCeWk','domRef','incompleteItems','map','authorName','uNAUR','reports','\x20>\x20','Scenario\x20','version','YigEX','\x0a✅\x20Scenario\x20updated','igqid','toLocaleString','repeat','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','vGEIi','CLAUDE_SESSION_ID','KtdVB','FqlIe','\x0aCreating\x20feature\x20review...','\x20of\x20','bOpnO','position','\x0a✅\x20Report\x20generated:\x20','TOWkm','nwDsg','approved','\x20\x20\x20\x20\x20ID:\x20','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','VebUu','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','\x20\x20\x20\x20\x20\x20Blocked:\x20','cpZIE','toFixed','UyVKm','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','verifiedItems','ErsIE','filter','nrbrE','egbFc','QNXjD','LBQfd','content','CusBm','find','\x20\x20✅\x20No\x20feedback\x20to\x20address','exit','LywCi','SweMQ','spatial','lmjzJ','createdAt','qCzSI','join','qNsOI','dqluZ','prompt','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','Current\x20session\x20not\x20found.','KBeXy','ZXdHK','5691152LecNZf','dFUiV','includeDeleted','gcFxC','zCEFN','Cannot\x20conclude\x20session\x20with\x20status:\x20','iJztd','canonicalFlow','items','description','.\x20Feature\x20review\x20has\x20','utf-8','\x20\x20\x20\x20\x20📋\x20Selector:\x20','xJqBY','\x20\x20\x20','list','SCLQX','\x20scenario(s).','totalCount','1190581ekZVmD','short','...','unaddressedComments','textContent','push','Unknown','gitBranch','sFqOY','scenarios','HoYBQ','\x20scenarios.','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','NnPyt','OUyys','log','limit','checklistItems','verified','verification_in_progress','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20incomplete','2260JKLmcM','point','isTTY','\x20unaddressed\x20comment(s)','write','scenario','feedback-images','EAILy','terminalReason','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','slice','cSrBk','rknPJ','env','BsiKE','CqJAW','stats','\x20in\x20progress','zTsID','sessionId','parentItemId','incompleteReason','sort','Mlrbn','500udOxXN','cqRqy','AXPyn','in_progress','hNbSP','active-feature.txt','10246397sALoYh','type','26930FScRAs','ZoaZD','toLocaleDateString','XBkpD',':\x20\x22','git\x20remote\x20get-url\x20origin','\x20—\x20no\x20comments','\x0a✅\x20Resumed\x20feature\x20review:\x20'];_0x5992=function(){return _0x3a8a20;};return _0x5992();}async function setActiveFeatureId(_0x3d0ce3){const _0x4a7e8c=_0x1f6b22,_0x1ea4d4={'QCjCJ':function(_0x2114eb,_0x251c1a,_0x25309b){return _0x2114eb(_0x251c1a,_0x25309b);},'ahXKg':function(_0x56c9fa,_0x457cd0,_0x4df124){return _0x56c9fa(_0x457cd0,_0x4df124);},'egbFc':function(_0x30bdde,_0x58c4e6,_0x276cca,_0x5b27d8){return _0x30bdde(_0x58c4e6,_0x276cca,_0x5b27d8);}},_0x8063fc=getRangerDir(),_0x41677c=_0x1ea4d4[_0x4a7e8c(0x16b)](join,_0x8063fc,ACTIVE_FEATURE_FILE);!existsSync(_0x8063fc)&&await _0x1ea4d4['ahXKg'](mkdir,_0x8063fc,{'recursive':!![]}),await _0x1ea4d4[_0x4a7e8c(0xf8)](writeFile,_0x41677c,_0x3d0ce3,'utf-8');}function getProgressDisplay(_0x1ded96){const _0x247f9d=_0x1f6b22,_0x4e92cc={'EPUST':function(_0x11ceb7,_0x21bf28){return _0x11ceb7+_0x21bf28;},'JAaij':function(_0x1b0e6c,_0x4cbde8){return _0x1b0e6c-_0x4cbde8;},'bOpnO':function(_0x28366e,_0x8d0e9b){return _0x28366e>_0x8d0e9b;},'EAILy':function(_0xc55633,_0x32f05e){return _0xc55633>_0x32f05e;}},_0x4bd2ea=_0x1ded96[_0x247f9d(0xf4)]||0x0,_0x1cfdbf=_0x1ded96['verificationInProgressItems']||0x0,_0x20ec90=_0x1ded96[_0x247f9d(0xca)]||0x0,_0x9d4b4a=_0x1ded96[_0x247f9d(0xd1)]||0x0,_0xe8192=_0x1ded96['pendingItems']||0x0,_0x2c79fe=_0x4e92cc['EPUST'](_0x4bd2ea,_0x1cfdbf)+_0x20ec90+_0x9d4b4a+_0xe8192;if(_0x2c79fe===0x0)return'-';const _0x2279cc=0xa,_0x16f58e=Math['round'](_0x4bd2ea/_0x2c79fe*_0x2279cc),_0x4dd37c='█'[_0x247f9d(0xdd)](_0x16f58e)+'░'['repeat'](_0x4e92cc['JAaij'](_0x2279cc,_0x16f58e)),_0x5d7b8f=[];if(_0x4e92cc[_0x247f9d(0xe5)](_0x20ec90,0x0))_0x5d7b8f[_0x247f9d(0x126)](_0x20ec90+_0x247f9d(0xc5));if(_0x4e92cc[_0x247f9d(0x13f)](_0x9d4b4a,0x0))_0x5d7b8f[_0x247f9d(0x126)](_0x9d4b4a+_0x247f9d(0x137));if(_0x1cfdbf>0x0)_0x5d7b8f[_0x247f9d(0x126)](_0x1cfdbf+_0x247f9d(0x149));const _0x2d2b73=_0x4e92cc['EAILy'](_0x5d7b8f[_0x247f9d(0x171)],0x0)?'\x20('+_0x5d7b8f['join'](',\x20')+')':'';return _0x4dd37c+'\x20'+_0x4bd2ea+'/'+_0x2c79fe+'\x20verified'+_0x2d2b73;}function getCurrentSessionItems(_0x4a6de7,_0x24dda0){const _0x4c264a=_0x1f6b22;if(!_0x4a6de7['currentSessionId'])return _0x24dda0[_0x4c264a(0xf6)](_0x4c7019=>!_0x4c7019[_0x4c264a(0x14b)])[_0x4c264a(0x14e)]((_0x5b61cc,_0x2c2f08)=>_0x5b61cc[_0x4c264a(0xe6)]-_0x2c2f08['position']);return _0x24dda0['filter'](_0x1afb59=>_0x1afb59[_0x4c264a(0x14b)]===_0x4a6de7[_0x4c264a(0x167)]||!_0x1afb59['sessionId'])['sort']((_0x298e0b,_0x5b2b07)=>_0x298e0b[_0x4c264a(0xe6)]-_0x5b2b07[_0x4c264a(0xe6)]);}function displayFeature(_0x24ad6d,_0x114b43){const _0x31dcbe=_0x1f6b22,_0x4b8269={'MEjLc':function(_0x305272,_0x36730e){return _0x305272(_0x36730e);},'HWitd':function(_0x41b40c,_0x2d3db9){return _0x41b40c>_0x2d3db9;},'LBByh':'\x0a\x20\x20\x20Scenarios:','nrbrE':function(_0x561c88,_0x2b777b){return _0x561c88<_0x2b777b;},'kRcHQ':'closed','QNXjD':_0x31dcbe(0x133),'vGEIi':function(_0x5e2add,_0x2dbaf8){return _0x5e2add===_0x2dbaf8;},'hNbSP':_0x31dcbe(0xab),'clxxb':'blocked','AfHsK':function(_0x1b4e3e,_0x5c9922){return _0x1b4e3e===_0x5c9922;},'ZegEh':function(_0x46ee68,_0x23afb5){return _0x46ee68===_0x23afb5;},'Pwxgo':_0x31dcbe(0x134),'CcwZC':function(_0x592eca,_0x14be95){return _0x592eca!==_0x14be95;},'CqJAW':_0x31dcbe(0xbb)};console['log']('\x0a'+_0x24ad6d[_0x31dcbe(0x163)]+'\x20('+_0x24ad6d[_0x31dcbe(0xbc)]+')');_0x24ad6d['stats']&&console[_0x31dcbe(0x130)]('\x20\x20\x20Progress:\x20'+_0x4b8269[_0x31dcbe(0x178)](getProgressDisplay,_0x24ad6d['stats']));_0x24ad6d['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x24ad6d[_0x31dcbe(0x117)]);_0x24ad6d[_0x31dcbe(0xbe)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x24ad6d[_0x31dcbe(0xbe)]);_0x24ad6d[_0x31dcbe(0x128)]&&console[_0x31dcbe(0x130)](_0x31dcbe(0xb5)+_0x24ad6d['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x24ad6d[_0x31dcbe(0x104)])[_0x31dcbe(0xdc)]());_0x24ad6d[_0x31dcbe(0x160)]&&console[_0x31dcbe(0x130)]('\x20\x20\x20Completed:\x20'+new Date(_0x24ad6d['completedAt'])['toLocaleString']());if(_0x114b43&&_0x4b8269['HWitd'](_0x114b43[_0x31dcbe(0x171)],0x0)){console['log'](_0x4b8269['LBByh']);for(let _0x34bca5=0x0;_0x4b8269[_0x31dcbe(0xf7)](_0x34bca5,_0x114b43['length']);_0x34bca5++){const _0x4eebb2=_0x114b43[_0x34bca5];let _0x5920ea;if(_0x4eebb2['status']===_0x4b8269['kRcHQ']&&_0x4eebb2['terminalReason']===_0x31dcbe(0xea))_0x5920ea='✅';else{if(_0x4eebb2['status']===_0x4b8269[_0x31dcbe(0xf9)])_0x5920ea='🟢';else{if(_0x4b8269['vGEIi'](_0x4eebb2['status'],_0x4b8269[_0x31dcbe(0x154)]))_0x5920ea='🟠';else{if(_0x4eebb2[_0x31dcbe(0xb8)]===_0x4b8269['clxxb'])_0x5920ea='🛑';else{if(_0x4b8269[_0x31dcbe(0x162)](_0x4eebb2['status'],_0x4b8269[_0x31dcbe(0x16d)]))_0x5920ea='⛔';else _0x4b8269['ZegEh'](_0x4eebb2[_0x31dcbe(0xb8)],_0x4b8269['Pwxgo'])?_0x5920ea='⏳':_0x5920ea='⬜';}}}}const _0x5b51e4=_0x4b8269[_0x31dcbe(0x17a)](_0x4eebb2[_0x31dcbe(0xd8)],0x1)?'\x20(v'+_0x4eebb2[_0x31dcbe(0xd8)]+')':'',_0xa3d56e=_0x4eebb2[_0x31dcbe(0xd8)]>0x1&&_0x4eebb2[_0x31dcbe(0x14c)]&&_0x4b8269[_0x31dcbe(0xaa)](_0x4eebb2['status'],'closed')&&_0x4b8269['CcwZC'](_0x4eebb2['status'],_0x31dcbe(0x133))?_0x4b8269[_0x31dcbe(0x147)]:'';console[_0x31dcbe(0x130)](_0x31dcbe(0x11c)+(_0x34bca5+0x1)+'.\x20'+_0x5920ea+'\x20'+_0x4eebb2[_0x31dcbe(0x117)]+_0x5b51e4+_0xa3d56e);_0x4eebb2['status']===_0x31dcbe(0xb0)&&_0x4eebb2['blockedReason']&&console[_0x31dcbe(0x130)](_0x31dcbe(0xef)+_0x4eebb2['blockedReason']);_0x4eebb2['status']===_0x4b8269['hNbSP']&&_0x4eebb2['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x4eebb2[_0x31dcbe(0x14d)]);if(_0x4eebb2[_0x31dcbe(0xb8)]===_0x4b8269['kRcHQ']&&_0x4b8269[_0x31dcbe(0xdf)](_0x4eebb2[_0x31dcbe(0x140)],'approved'))console[_0x31dcbe(0x130)]('\x20\x20\x20\x20\x20\x20Approved');else _0x4eebb2[_0x31dcbe(0xb8)]===_0x4b8269['kRcHQ']&&_0x4eebb2['canceledReason']&&console['log'](_0x31dcbe(0xaf)+_0x4eebb2['canceledReason']);}}}export async function featureCreate(_0xccafae,_0x12bb50){const _0x26fd99=_0x1f6b22,_0x20eead={'OEKuP':function(_0x32787c){return _0x32787c();},'cSrBk':_0x26fd99(0xe3),'DwNbo':function(_0x45cad7,_0x389431,_0x357641){return _0x45cad7(_0x389431,_0x357641);},'JSBAv':function(_0x4912e2,_0x3a075d,_0x1c730b){return _0x4912e2(_0x3a075d,_0x1c730b);}},{envNames:_0x7aca62}=await getEnvNames();_0x7aca62[_0x26fd99(0x171)]===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x50c1a7=>bold(_0x50c1a7)));const _0x50d044=_0x12bb50[_0x26fd99(0x12a)]?_0x12bb50['scenarios'][_0x26fd99(0xd2)](_0x4d89f7=>_0x4d89f7[_0x26fd99(0xc0)]()):[],_0x34f0d2=_0x20eead['OEKuP'](getGitRepoUrl),_0x57a24e=getGitBranch();console[_0x26fd99(0x130)](_0x20eead[_0x26fd99(0x143)]);const _0x4c37da=await createFeature({'name':_0xccafae,'description':_0x12bb50[_0x26fd99(0x117)],'checklist':_0x50d044,'gitRepoUrl':_0x34f0d2,'gitBranch':_0x57a24e});await setActiveFeatureId(_0x4c37da['id']),await tryStartCurrentSession(_0x4c37da['id']);const _0x47a938=process['env'][_0x26fd99(0xe0)];_0x47a938&&_0x20eead['DwNbo'](registerSession,_0x47a938,_0x4c37da['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x4c37da['id']),_0x20eead['JSBAv'](displayFeature,_0x4c37da,_0x4c37da[_0x26fd99(0x132)]),console[_0x26fd99(0x130)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x162365){const _0x19661a=_0x1f6b22,_0x102257={'HKfPs':function(_0x28c989){return _0x28c989();},'UIPNZ':_0x19661a(0xc7),'Mlrbn':function(_0x3e8320,_0x2871e7){return _0x3e8320<_0x2871e7;},'sFqOY':function(_0x47cc59,_0x490fdd){return _0x47cc59!==_0x490fdd;},'OffAY':'\x20--current-branch','IwasM':'\x20--include-deleted'},_0x2eec48={'limit':_0x162365[_0x19661a(0x131)]??0xa,'offset':_0x162365['offset']??0x0,'includeDeleted':_0x162365[_0x19661a(0x110)]};_0x162365['currentBranch']&&(_0x2eec48['gitRepoUrl']=_0x102257['HKfPs'](getGitRepoUrl),_0x2eec48['gitBranch']=getGitBranch());const _0x1d8838=await listFeatures(_0x2eec48);if(_0x1d8838['items']['length']===0x0){console['log'](_0x102257['UIPNZ']);return;}const _0x2841ac=_0x1d8838['totalCount']>_0x1d8838[_0x19661a(0x116)][_0x19661a(0x171)]?'Showing\x20'+_0x1d8838['items']['length']+_0x19661a(0xe4)+_0x1d8838[_0x19661a(0x120)]:_0x1d8838['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x2841ac+':\x0a');for(const _0x3a9b97 of _0x1d8838[_0x19661a(0x116)]){console['log'](''+_0x3a9b97[_0x19661a(0x163)]),console['log']('\x20\x20\x20ID:\x20'+_0x3a9b97['id']),_0x3a9b97['stats']&&console[_0x19661a(0x130)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x3a9b97[_0x19661a(0x148)])),_0x3a9b97['gitBranch']&&console['log'](_0x19661a(0xb5)+_0x3a9b97['gitBranch']),console['log'](_0x19661a(0xcc)+new Date(_0x3a9b97['createdAt'])[_0x19661a(0x15a)]()),console[_0x19661a(0x130)]('');}const _0x64137d=_0x2eec48[_0x19661a(0x131)]??0xa,_0x3b2530=(_0x2eec48[_0x19661a(0xcd)]??0x0)+_0x1d8838[_0x19661a(0x116)][_0x19661a(0x171)];if(_0x102257[_0x19661a(0x14f)](_0x3b2530,_0x1d8838[_0x19661a(0x120)])){const _0x38871f=_0x102257[_0x19661a(0x129)](_0x64137d,0xa)?'\x20--limit\x20'+_0x64137d:'',_0x5b83af=_0x162365['currentBranch']?_0x102257['OffAY']:'',_0x25c615=_0x162365[_0x19661a(0x110)]?_0x102257['IwasM']:'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x3b2530+_0x38871f+_0x5b83af+_0x25c615);}}export async function featureShow(_0x2f972c){const _0xf6fddd=_0x1f6b22,_0x3ea33c={'mQnKW':function(_0x40754b,_0x24775a){return _0x40754b(_0x24775a);},'AXWhj':function(_0x3aabaa,_0x566a91,_0x18dc95){return _0x3aabaa(_0x566a91,_0x18dc95);}},_0x42ba53=_0x2f972c||await getActiveFeatureId();if(!_0x42ba53)throw new Error(_0xf6fddd(0x136));const _0x4cb52c=await _0x3ea33c['mQnKW'](getFeature,_0x42ba53);_0x3ea33c['AXWhj'](displayFeature,_0x4cb52c,_0x4cb52c[_0xf6fddd(0x132)]);}function _0x5c43(_0xeff7fc,_0x4414ad){_0xeff7fc=_0xeff7fc-0xa9;const _0x5992c3=_0x5992();let _0x5c431b=_0x5992c3[_0xeff7fc];return _0x5c431b;}export async function featureResume(_0x55cc21){const _0x3eb9ff=_0x1f6b22,_0x45facd={'SCLQX':function(_0x35e1b8,_0xc2fd93){return _0x35e1b8(_0xc2fd93);},'FqlIe':function(_0x3aa0b0){return _0x3aa0b0();},'NnPyt':function(_0x1988e2,_0x24f76a,_0x50b51e){return _0x1988e2(_0x24f76a,_0x50b51e);},'xENVj':function(_0x572d8d,_0x29fcaa,_0x5b10a3){return _0x572d8d(_0x29fcaa,_0x5b10a3);},'AtxHz':function(_0x504d98,_0x957a33){return _0x504d98||_0x957a33;},'oVewa':'any','CusBm':function(_0xf71044,_0x26e5fa){return _0xf71044===_0x26e5fa;},'IBoJw':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','qfCHL':_0x3eb9ff(0x11d),'Lmmrb':'selected','vvguz':function(_0x3f57a7,_0x135333){return _0x3f57a7!==_0x135333;},'ezIyD':function(_0x2b73ae,_0x1204b4){return _0x2b73ae(_0x1204b4);}};if(_0x55cc21){const _0x3c2f93=await getFeature(_0x55cc21);await _0x45facd[_0x3eb9ff(0x11e)](setActiveFeatureId,_0x3c2f93['id']);const _0x58870d=_0x45facd[_0x3eb9ff(0xe2)](getGitBranch);_0x58870d&&_0x58870d!==_0x3c2f93['gitBranch']&&(await _0x45facd['NnPyt'](updateFeature,_0x3c2f93['id'],{'gitBranch':_0x58870d}),console[_0x3eb9ff(0x130)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x58870d));console['log'](_0x3eb9ff(0x15f)+_0x3c2f93['name']+'\x20('+_0x3c2f93['id']+')'),await _0x45facd[_0x3eb9ff(0x11e)](tryStartCurrentSession,_0x3c2f93['id']);const _0x4eeffe=process[_0x3eb9ff(0x145)][_0x3eb9ff(0xe0)];_0x4eeffe&&registerSession(_0x4eeffe,_0x3c2f93['id']);_0x45facd['xENVj'](displayFeature,_0x3c2f93,_0x3c2f93['checklistItems']),await _0x45facd[_0x3eb9ff(0x11e)](printFeedbackNudge,_0x3c2f93['id']);return;}const _0x58da29=getGitRepoUrl(),_0xb9a654=_0x45facd['FqlIe'](getGitBranch);if(!_0x58da29&&!_0xb9a654)throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x45facd['AtxHz'](_0x58da29,'any')+'\x20/\x20'+(_0xb9a654||_0x45facd['oVewa'])+_0x3eb9ff(0x123));const _0x39b4e6=await listFeatures({'gitRepoUrl':_0x58da29,'gitBranch':_0xb9a654}),_0x3a2bdc=_0x39b4e6['items']['filter'](_0x7547f0=>!_0x7547f0['completedAt']);if(_0x45facd[_0x3eb9ff(0xfc)](_0x3a2bdc['length'],0x0)){console[_0x3eb9ff(0x130)](_0x3eb9ff(0x141)),console[_0x3eb9ff(0x130)](_0x3eb9ff(0xc1));return;}let _0x12952b;if(_0x3a2bdc[_0x3eb9ff(0x171)]===0x1)_0x12952b=_0x3a2bdc[0x0];else{const _0x1f1fa0=process['stdin'][_0x3eb9ff(0x13a)]&&process['stdout']['isTTY'];if(!_0x1f1fa0){console[_0x3eb9ff(0x130)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x2896d5 of _0x3a2bdc){console['log']('\x20\x20'+_0x2896d5['name']),console['log'](_0x3eb9ff(0xeb)+_0x2896d5['id']),_0x2896d5['stats']&&console[_0x3eb9ff(0x130)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x2896d5['stats'])),_0x2896d5[_0x3eb9ff(0x128)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x2896d5[_0x3eb9ff(0x128)]);}throw new Error(_0x45facd['IBoJw']);}const {selected:_0x161e7c}=await _0x1cd6f0[_0x3eb9ff(0x109)]([{'type':_0x45facd[_0x3eb9ff(0x17b)],'name':_0x45facd['Lmmrb'],'message':_0x3eb9ff(0x135),'choices':_0x3a2bdc[_0x3eb9ff(0xd2)](_0x3481a6=>({'name':_0x3481a6[_0x3eb9ff(0x163)]+'\x20('+_0x3481a6['id']+')','value':_0x3481a6['id']}))}]);_0x12952b=_0x3a2bdc['find'](_0x2b011f=>_0x2b011f['id']===_0x161e7c);}await setActiveFeatureId(_0x12952b['id']);_0xb9a654&&_0x45facd[_0x3eb9ff(0xbd)](_0xb9a654,_0x12952b[_0x3eb9ff(0x128)])&&(await _0x45facd[_0x3eb9ff(0x12e)](updateFeature,_0x12952b['id'],{'gitBranch':_0xb9a654}),console['log'](_0x3eb9ff(0x161)+_0xb9a654));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x12952b['name']+'\x20('+_0x12952b['id']+')'),await tryStartCurrentSession(_0x12952b['id']);const _0x1e6647=await _0x45facd['ezIyD'](getFeature,_0x12952b['id']),_0x144180=process[_0x3eb9ff(0x145)]['CLAUDE_SESSION_ID'];_0x144180&&registerSession(_0x144180,_0x1e6647['id']),displayFeature(_0x1e6647,_0x1e6647['checklistItems']),await printFeedbackNudge(_0x1e6647['id']);}async function printFeedbackNudge(_0x503c3c){const _0x4969c6=_0x1f6b22,_0x45ac54={'lmjzJ':function(_0x57d9d4,_0x313965){return _0x57d9d4(_0x313965);},'QQHwC':function(_0xdae601,_0x4cd143,_0x10a92a){return _0xdae601(_0x4cd143,_0x10a92a);},'iJztd':_0x4969c6(0x12d)};try{const {items:_0x354c67}=await _0x45ac54[_0x4969c6(0x103)](getActionItems,_0x503c3c);let _0x3dac74=0x0,_0xa111a0=0x0;for(const _0x5e624a of _0x354c67){const _0x55902a=await _0x45ac54['QQHwC'](getItemFeedback,_0x503c3c,_0x5e624a['id']);_0x55902a[_0x4969c6(0x124)][_0x4969c6(0x171)]>0x0&&(_0x3dac74+=_0x55902a[_0x4969c6(0x124)]['length'],_0xa111a0++);}_0x3dac74>0x0&&(console[_0x4969c6(0x130)]('\x0a⚠️\x20\x20'+_0x3dac74+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0xa111a0+_0x4969c6(0x11f)),console[_0x4969c6(0x130)](_0x45ac54[_0x4969c6(0x114)]));}catch{}}async function tryStartCurrentSession(_0x5bac9e){const _0x21b54f=_0x1f6b22,_0x5e15f8={'OuVny':function(_0x5113c3,_0x5a3cf0){return _0x5113c3(_0x5a3cf0);},'dqluZ':function(_0x1e422f,_0x1ba170,_0x572ad8){return _0x1e422f(_0x1ba170,_0x572ad8);}};try{const {sessions:_0x92c38c}=await _0x5e15f8['OuVny'](listFeatureSessions,_0x5bac9e),_0x355954=_0x92c38c[_0x21b54f(0xfd)](_0xa26d2b=>_0xa26d2b['status']===_0x21b54f(0xb7));_0x355954&&(await _0x5e15f8[_0x21b54f(0x108)](startSession,_0x5bac9e,_0x355954['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x355954[_0x21b54f(0xc9)]));}catch{}}export async function featureReport(_0x27e9e3,_0x540e25){const _0x2a23a4=_0x1f6b22,_0x356fb3={'pgGWK':function(_0x1366da){return _0x1366da();},'WzXJr':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','igqid':'\x0aGenerating\x20report...','tsiqY':function(_0x492e8a,_0x1d6d7b,_0x7d66f1){return _0x492e8a(_0x1d6d7b,_0x7d66f1);},'ZoaZD':function(_0x4e1f28,_0x328a57,_0x25ab58){return _0x4e1f28(_0x328a57,_0x25ab58);},'gcFxC':function(_0xcffeab,_0x51f4cb,_0x53dfaa,_0x27bff6){return _0xcffeab(_0x51f4cb,_0x53dfaa,_0x27bff6);}},_0x480d43=_0x27e9e3||await _0x356fb3['pgGWK'](getActiveFeatureId);if(!_0x480d43)throw new Error(_0x356fb3[_0x2a23a4(0xc2)]);console[_0x2a23a4(0x130)](_0x356fb3[_0x2a23a4(0xdb)]);const _0x59b18f=await _0x356fb3[_0x2a23a4(0x175)](getFeatureReportMarkdown,_0x480d43,{'style':_0x540e25['style']}),_0x3cfefd=_0x540e25[_0x2a23a4(0xc4)]||join(getRangerDir(),_0x2a23a4(0xd5),_0x480d43+'.md'),_0x20d882=join(_0x3cfefd,'..');!existsSync(_0x20d882)&&await _0x356fb3[_0x2a23a4(0x159)](mkdir,_0x20d882,{'recursive':!![]}),await _0x356fb3[_0x2a23a4(0x111)](writeFile,_0x3cfefd,_0x59b18f,_0x2a23a4(0x119)),console[_0x2a23a4(0x130)](_0x2a23a4(0xe7)+_0x3cfefd);}export async function featureReportPrDescription(_0x2b45e5,_0x2ada75){const _0x120353=_0x1f6b22,_0xe812b6={'LZPpx':function(_0x1ff0ec){return _0x1ff0ec();},'rknPJ':function(_0x5c22ca,_0x1e76bf){return _0x5c22ca(_0x1e76bf);},'wSwvv':function(_0x356f65,_0xa200d7){return _0x356f65===_0xa200d7;},'KtdVB':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','YFhxh':function(_0x5dd6d2,_0x1c7f1a){return _0x5dd6d2>_0x1c7f1a;},'SweMQ':_0x120353(0x17d),'vyrLQ':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x53d7fc=_0x2b45e5||await _0xe812b6[_0x120353(0xac)](getActiveFeatureId);if(!_0x53d7fc)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x195ab8=await _0xe812b6[_0x120353(0x144)](getFeature,_0x53d7fc),_0x3d687a=_0x195ab8[_0x120353(0x132)]||[],_0x4511b2=getCurrentSessionItems(_0x195ab8,_0x3d687a);_0xe812b6['wSwvv'](_0x4511b2['length'],0x0)&&(console['error'](_0xe812b6[_0x120353(0xe1)]),process[_0x120353(0xff)](0x1));const _0x33b992=_0x2ada75['excludeScenarios']??[],_0x2d700a=_0x33b992[_0x120353(0xf6)](_0x1ecca1=>!Number['isInteger'](_0x1ecca1)||_0x1ecca1<0x1||_0x1ecca1>_0x4511b2['length']);if(_0xe812b6[_0x120353(0xc8)](_0x2d700a['length'],0x0)){console[_0x120353(0x166)](_0x120353(0xec)+_0x2d700a[_0x120353(0x106)](',\x20')),console['log'](_0xe812b6[_0x120353(0x101)]);for(let _0x2b3aa4=0x0;_0x2b3aa4<_0x4511b2[_0x120353(0x171)];_0x2b3aa4++){console[_0x120353(0x130)]('\x20\x20'+(_0x2b3aa4+0x1)+'.\x20'+_0x4511b2[_0x2b3aa4][_0x120353(0x117)]);}process['exit'](0x1);}const _0x1c468b=new Set(_0x33b992['map'](_0x2abcf0=>_0x2abcf0-0x1)),_0x19439a=_0x4511b2[_0x120353(0xf6)]((_0x4d6bd9,_0x4b0081)=>!_0x1c468b['has'](_0x4b0081));_0x19439a[_0x120353(0x171)]===0x0&&(console['error'](_0xe812b6['vyrLQ']),process[_0x120353(0xff)](0x1));const _0x89dcb1=await getFeatureReportMarkdown(_0x53d7fc,{'itemIds':_0x19439a['map'](_0x31db72=>_0x31db72['id'])});process[_0x120353(0x173)][_0x120353(0x13c)](_0x89dcb1['trimEnd']()+'\x0a');}export async function featureConcludeSession(_0xb1235f){const _0x469d67=_0x1f6b22,_0x12c0e3={'CtgpR':function(_0x45e2bf){return _0x45e2bf();},'mTMzA':function(_0x1d7ff0,_0x217fd9){return _0x1d7ff0(_0x217fd9);},'SXsSk':_0x469d67(0x176),'dFUiV':'\x0a✅\x20Session\x20is\x20already\x20completed.','UyVKm':function(_0x289009,_0x844697){return _0x289009!==_0x844697;},'cpZIE':_0x469d67(0x153),'lkakx':function(_0x3c81ff,_0x48a5ba,_0x181bc7){return _0x3c81ff(_0x48a5ba,_0x181bc7);}},_0x56d88b=_0xb1235f||await _0x12c0e3['CtgpR'](getActiveFeatureId);if(!_0x56d88b)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x8fb3c7=await _0x12c0e3['mTMzA'](getFeature,_0x56d88b);if(!_0x8fb3c7[_0x469d67(0x167)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x49ea0c}=await _0x12c0e3[_0x469d67(0xb4)](listFeatureSessions,_0x56d88b),_0x4b0985=_0x49ea0c[_0x469d67(0xfd)](_0x4a0442=>_0x4a0442['id']===_0x8fb3c7[_0x469d67(0x167)]);if(!_0x4b0985)throw new Error(_0x469d67(0x10b));if(_0x4b0985['status']===_0x12c0e3['SXsSk']){console['log'](_0x12c0e3[_0x469d67(0x10f)]);return;}if(_0x12c0e3[_0x469d67(0xf2)](_0x4b0985['status'],_0x12c0e3[_0x469d67(0xf0)]))throw new Error(_0x469d67(0x113)+_0x4b0985['status']);console[_0x469d67(0x130)](_0x469d67(0xb9)),await _0x12c0e3['lkakx'](concludeSession,_0x56d88b,_0x8fb3c7['currentSessionId']),console['log'](_0x469d67(0xce)+_0x4b0985['iteration']+'\x20concluded.'),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x1d715a){const _0x2c0d38=_0x1f6b22,_0x468762={'VebUu':function(_0xead2e){return _0xead2e();},'Zmews':function(_0x586a10,_0x531a4b){return _0x586a10(_0x531a4b);},'qCzSI':_0x2c0d38(0xad),'dZzFp':'completed','ErsIE':_0x2c0d38(0x153)},_0x2303c6=_0x1d715a||await _0x468762[_0x2c0d38(0xed)](getActiveFeatureId);if(!_0x2303c6)throw new Error(_0x2c0d38(0x16f));const _0x2608b9=await getFeature(_0x2303c6);console['log'](_0x2c0d38(0x179)+_0x2608b9['name']+'\x0a');const {sessions:_0x3e4982}=await _0x468762[_0x2c0d38(0xc6)](listFeatureSessions,_0x2303c6);if(_0x3e4982[_0x2c0d38(0x171)]===0x0){console[_0x2c0d38(0x130)](_0x468762[_0x2c0d38(0x105)]);return;}for(const _0x1053dc of _0x3e4982){const _0x4cf534=_0x1053dc[_0x2c0d38(0xb8)]===_0x468762['dZzFp']?'✅':_0x1053dc[_0x2c0d38(0xb8)]===_0x468762[_0x2c0d38(0xf5)]?'🔄':'▶️';console[_0x2c0d38(0x130)](_0x4cf534+'\x20Session\x20'+_0x1053dc[_0x2c0d38(0xc9)]+'\x20('+_0x1053dc['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x1053dc['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x1053dc[_0x2c0d38(0x104)])[_0x2c0d38(0xdc)]()),_0x1053dc['completedAt']&&console[_0x2c0d38(0x130)]('\x20\x20\x20Completed:\x20'+new Date(_0x1053dc[_0x2c0d38(0x160)])[_0x2c0d38(0xdc)]()),console[_0x2c0d38(0x130)]('');}}export async function featureAddScenario(_0x104ee7,_0x7ef693){const _0x1d861b=_0x1f6b22,_0x4186e4={'zCEFN':_0x1d861b(0x136),'AXPyn':function(_0x37d837,_0x30a790){return _0x37d837(_0x30a790);}},_0x6bc9f9=_0x7ef693||await getActiveFeatureId();if(!_0x6bc9f9)throw new Error(_0x4186e4[_0x1d861b(0x112)]);const _0x1d408f=await getFeature(_0x6bc9f9);if(_0x1d408f['latestReview']&&!_0x1d408f['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x1d408f[_0x1d861b(0xbc)]);await createChecklistItem(_0x6bc9f9,_0x104ee7);const _0x1a8674=await _0x4186e4[_0x1d861b(0x152)](getFeature,_0x6bc9f9);console['log']('\x0a✅\x20Scenario\x20added'),displayFeature(_0x1a8674,_0x1a8674[_0x1d861b(0x132)]);}export async function featureEditScenario(_0x5390bb,_0x50bb33){const _0x29f29d=_0x1f6b22,_0x42651d={'jnMbJ':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','OUyys':function(_0x5efb9a,_0x3f6a19){return _0x5efb9a(_0x3f6a19);},'TOWkm':'Please\x20finish\x20your\x20review\x20first:','nwDsg':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','ZQkUh':_0x29f29d(0xee),'fMMlY':function(_0x4a79dc,_0x405a15){return _0x4a79dc<_0x405a15;},'qNsOI':function(_0x393960,_0x5632fc){return _0x393960-_0x5632fc;},'LRpwe':_0x29f29d(0x17d),'BsiKE':function(_0x3189cf,_0x514003){return _0x3189cf<_0x514003;},'aTcGN':function(_0x256e4c,_0x36223e){return _0x256e4c+_0x36223e;},'jCeWk':function(_0x5619a9,_0x4cb909,_0x15536a){return _0x5619a9(_0x4cb909,_0x15536a);}},_0x57d21b=_0x50bb33['id']||await getActiveFeatureId();!_0x57d21b&&(console[_0x29f29d(0x166)](_0x29f29d(0x172)),console['error'](_0x42651d[_0x29f29d(0x168)]),process['exit'](0x1));const _0x4587fd=await _0x42651d[_0x29f29d(0x12f)](getFeature,_0x57d21b);_0x4587fd[_0x29f29d(0x177)]&&!_0x4587fd[_0x29f29d(0x177)]['submittedAt']&&(console[_0x29f29d(0x166)](_0x29f29d(0xde)),console['error'](_0x42651d[_0x29f29d(0xe8)]),console['error']('\x20\x20'+_0x4587fd[_0x29f29d(0xbc)]),process[_0x29f29d(0xff)](0x1));const _0x5ef810=_0x4587fd['checklistItems']||[];_0x5ef810['length']===0x0&&(console['error'](_0x42651d[_0x29f29d(0xe9)]),process[_0x29f29d(0xff)](0x1));if(_0x50bb33[_0x29f29d(0x13d)]===undefined){console['error'](_0x42651d['ZQkUh']),console[_0x29f29d(0x130)](_0x29f29d(0x17d));for(let _0x265f26=0x0;_0x42651d['fMMlY'](_0x265f26,_0x5ef810['length']);_0x265f26++){console[_0x29f29d(0x130)]('\x20\x20'+(_0x265f26+0x1)+'.\x20'+_0x5ef810[_0x265f26][_0x29f29d(0x117)]);}process['exit'](0x1);}const _0x5a1f1a=_0x42651d[_0x29f29d(0x107)](_0x50bb33['scenario'],0x1);if(_0x42651d['fMMlY'](_0x5a1f1a,0x0)||_0x5a1f1a>=_0x5ef810[_0x29f29d(0x171)]){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x50bb33['scenario']+_0x29f29d(0x118)+_0x5ef810[_0x29f29d(0x171)]+_0x29f29d(0x12c)),console[_0x29f29d(0x130)](_0x42651d['LRpwe']);for(let _0x5a98bc=0x0;_0x42651d[_0x29f29d(0x146)](_0x5a98bc,_0x5ef810['length']);_0x5a98bc++){console['log']('\x20\x20'+_0x42651d[_0x29f29d(0x16c)](_0x5a98bc,0x1)+'.\x20'+_0x5ef810[_0x5a98bc][_0x29f29d(0x117)]);}process['exit'](0x1);}const _0x359c3e=_0x5ef810[_0x5a1f1a];await updateChecklistItem(_0x57d21b,_0x359c3e['id'],{'description':_0x5390bb});const _0x40509c=await getFeature(_0x57d21b);console['log'](_0x29f29d(0xda)),_0x42651d[_0x29f29d(0xcf)](displayFeature,_0x40509c,_0x40509c['checklistItems']);}async function downloadFeedbackImage(_0x4b987c,_0xee485b){const _0x19b7ff=_0x1f6b22,_0x462539={'etnAT':function(_0x262ce6,_0x334e3f,_0x291b0b){return _0x262ce6(_0x334e3f,_0x291b0b);},'xJqBY':function(_0xecc98e){return _0xecc98e();},'CGVSz':_0x19b7ff(0x13e),'mzTzB':function(_0x5a42f7,_0x3438b8){return _0x5a42f7(_0x3438b8);}};try{const _0x3f972c=_0x462539['etnAT'](join,_0x462539[_0x19b7ff(0x11b)](getRangerDir),_0x462539['CGVSz']);await mkdir(_0x3f972c,{'recursive':!![]});const _0x4be652=join(_0x3f972c,'comment_'+_0xee485b+'.png'),_0x27a5f0=await _0x462539[_0x19b7ff(0xb6)](fetch,_0x4b987c);if(!_0x27a5f0['ok'])return null;const _0x9a0756=Buffer[_0x19b7ff(0xcb)](await _0x27a5f0['arrayBuffer']());return await _0x462539['etnAT'](writeFile,_0x4be652,_0x9a0756),_0x4be652;}catch{return null;}}export async function featureGetReview(_0x5e9a63){const _0x3e8f2b=_0x1f6b22,_0x1dd475={'KBeXy':function(_0x423e72){return _0x423e72();},'aZmfp':function(_0x21420c,_0x29268e){return _0x21420c(_0x29268e);},'LBQfd':function(_0x1378db,_0x471da2){return _0x1378db(_0x471da2);},'zTsID':function(_0x2a66c9,_0xc4845b){return _0x2a66c9>_0xc4845b;},'GuMyt':function(_0x3861d9,_0x2a19e4,_0x486652){return _0x3861d9(_0x2a19e4,_0x486652);},'cqRqy':function(_0x44f8c3,_0x588213){return _0x44f8c3>_0x588213;},'TCbfa':function(_0x16ac7e,_0x2198ea){return _0x16ac7e+_0x2198ea;},'bdrdQ':_0x3e8f2b(0x122),'XBkpD':_0x3e8f2b(0xd6),'lPNVy':function(_0x2d2238,_0x43358f){return _0x2d2238>=_0x43358f;}},_0x5c5c8c=_0x5e9a63||await _0x1dd475[_0x3e8f2b(0x10c)](getActiveFeatureId);if(!_0x5c5c8c)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x293112=await _0x1dd475['aZmfp'](getFeature,_0x5c5c8c),{items:_0x4828f5}=await _0x1dd475[_0x3e8f2b(0xfa)](getActionItems,_0x5c5c8c);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x293112['name']+'\x20('+_0x293112['id']+')\x0a');if(_0x4828f5[_0x3e8f2b(0x171)]===0x0){console['log']('No\x20scenarios\x20found.');return;}for(let _0x4b5a9f=0x0;_0x4b5a9f<_0x4828f5[_0x3e8f2b(0x171)];_0x4b5a9f++){const _0x196c4f=_0x4828f5[_0x4b5a9f],_0xf005c2=_0x1dd475[_0x3e8f2b(0x14a)](_0x196c4f['version'],0x1)?'\x20(v'+_0x196c4f[_0x3e8f2b(0xd8)]+')':'',_0x59cf01=await _0x1dd475['GuMyt'](getItemFeedback,_0x5c5c8c,_0x196c4f['id']);if(_0x1dd475[_0x3e8f2b(0x151)](_0x59cf01['unaddressedComments'][_0x3e8f2b(0x171)],0x0)){console['log']('Scenario\x20'+_0x1dd475['TCbfa'](_0x4b5a9f,0x1)+':\x20\x22'+_0x196c4f['description']+'\x22'+_0xf005c2+_0x3e8f2b(0xa9)+_0x59cf01[_0x3e8f2b(0x124)][_0x3e8f2b(0x171)]+_0x3e8f2b(0x13b));for(const _0x1052eb of _0x59cf01[_0x3e8f2b(0x124)]){const _0x18ad6b=new Date(_0x1052eb[_0x3e8f2b(0x104)])['toLocaleDateString']('en-US',{'month':_0x1dd475[_0x3e8f2b(0xae)],'day':'numeric'}),_0x8c6c2d=_0x1052eb[_0x3e8f2b(0xd3)]||_0x1052eb['authorEmail']||_0x3e8f2b(0x127);console[_0x3e8f2b(0x130)]('\x20\x20💬\x20'+_0x8c6c2d+'\x20('+_0x18ad6b+'):\x20\x22'+_0x1052eb[_0x3e8f2b(0xfb)]+'\x22');if(_0x1052eb['assetUrl']){const _0x15920e=await downloadFeedbackImage(_0x1052eb['assetUrl'],_0x1052eb['id']);_0x15920e&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x15920e);}if(_0x1052eb[_0x3e8f2b(0xd0)]){const _0x85f913=_0x1052eb['domRef']['selector']['split'](_0x1dd475[_0x3e8f2b(0x15b)])['pop']()?.['split'](':')[0x0]||'element',_0xec7ea2=_0x1052eb['domRef'][_0x3e8f2b(0x125)]?'\x20\x22'+_0x1052eb[_0x3e8f2b(0xd0)]['textContent'][_0x3e8f2b(0x142)](0x0,0x3c)+'\x22':'';console[_0x3e8f2b(0x130)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x85f913+'>'+_0xec7ea2),console[_0x3e8f2b(0x130)](_0x3e8f2b(0x11a)+_0x1052eb[_0x3e8f2b(0xd0)][_0x3e8f2b(0xc3)]);}else{if(_0x1052eb['spatial']){const _0x347a9b=_0x1052eb['spatial']['coordinates'];_0x1052eb['spatial'][_0x3e8f2b(0x157)]===_0x3e8f2b(0x139)&&_0x1dd475[_0x3e8f2b(0xba)](_0x347a9b['length'],0x2)?console['log'](_0x3e8f2b(0x165)+_0x347a9b[0x0]['toFixed'](0x2)+',\x20'+_0x347a9b[0x1][_0x3e8f2b(0xf1)](0x2)+')'):console[_0x3e8f2b(0x130)](_0x3e8f2b(0xf3)+_0x1052eb[_0x3e8f2b(0x102)][_0x3e8f2b(0x157)]+_0x3e8f2b(0x164)+_0x347a9b['map'](_0x45c5c6=>_0x45c5c6['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x59cf01[_0x3e8f2b(0x115)]){console[_0x3e8f2b(0x130)](_0x3e8f2b(0x174));for(const _0x4d0c4f of _0x59cf01['canonicalFlow']['split']('\x0a')){console['log'](_0x3e8f2b(0xb2)+_0x4d0c4f);}}}else console['log'](_0x3e8f2b(0xd7)+(_0x4b5a9f+0x1)+_0x3e8f2b(0x15c)+_0x196c4f['description']+'\x22'+_0xf005c2+_0x3e8f2b(0x15e)),console[_0x3e8f2b(0x130)](_0x3e8f2b(0xfe));console[_0x3e8f2b(0x130)]('');}}export async function featureDelete(_0x20594e){const _0x13a523=_0x1f6b22,_0xcd26b4={'uNAUR':function(_0x206e10){return _0x206e10();},'HoYBQ':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x26311e=_0x20594e||await _0xcd26b4[_0x13a523(0xd4)](getActiveFeatureId);if(!_0x26311e)throw new Error(_0x13a523(0x136));const _0x199d6c=await getFeature(_0x26311e);await softDeleteFeature(_0x26311e),console[_0x13a523(0x130)](_0x13a523(0x10a)+_0x199d6c[_0x13a523(0x163)]+'\x20('+_0x26311e+')'),console['log'](_0xcd26b4[_0x13a523(0x12b)]+_0x26311e);}export async function featureRestore(_0x37b638){const _0x316a98=_0x1f6b22,_0x22457e={'ACCnU':function(_0x473cd4,_0x28ca84){return _0x473cd4(_0x28ca84);}};await _0x22457e['ACCnU'](restoreFeature,_0x37b638);const _0x1460be=await getFeature(_0x37b638);console[_0x316a98(0x130)](_0x316a98(0xb3)+_0x1460be[_0x316a98(0x163)]+'\x20('+_0x37b638+')'),displayFeature(_0x1460be,_0x1460be['checklistItems']);}
1
+ const _0x2c0418=_0x4321;(function(_0x2d6654,_0x288619){const _0x3f5d31=_0x4321,_0x2d0001=_0x2d6654();while(!![]){try{const _0x28367e=parseInt(_0x3f5d31(0x119))/0x1*(-parseInt(_0x3f5d31(0x14a))/0x2)+parseInt(_0x3f5d31(0x13d))/0x3+parseInt(_0x3f5d31(0x10e))/0x4*(-parseInt(_0x3f5d31(0x133))/0x5)+-parseInt(_0x3f5d31(0x16f))/0x6*(parseInt(_0x3f5d31(0xd4))/0x7)+parseInt(_0x3f5d31(0xe7))/0x8*(parseInt(_0x3f5d31(0x12f))/0x9)+-parseInt(_0x3f5d31(0x17b))/0xa+parseInt(_0x3f5d31(0x134))/0xb;if(_0x28367e===_0x288619)break;else _0x2d0001['push'](_0x2d0001['shift']());}catch(_0x56dbbb){_0x2d0001['push'](_0x2d0001['shift']());}}}(_0x2c30,0x859ac));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x34319d 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';function _0x4321(_0x39044c,_0x2b3afa){_0x39044c=_0x39044c-0xcd;const _0x2c30a1=_0x2c30();let _0x4321ab=_0x2c30a1[_0x39044c];return _0x4321ab;}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=_0x31606f=>_0x2c0418(0x11d)+_0x31606f+_0x2c0418(0x173);function getGitRepoUrl(){const _0x25453c=_0x2c0418,_0x126328={'bYgKS':function(_0x5412a6,_0x4a0687,_0x1db043){return _0x5412a6(_0x4a0687,_0x1db043);},'zgUEV':'utf-8','BFHUT':'pipe'};try{const _0x186691=_0x126328[_0x25453c(0xdf)](execSync,_0x25453c(0x150),{'encoding':_0x126328[_0x25453c(0xde)],'stdio':[_0x126328[_0x25453c(0x124)],_0x126328['BFHUT'],_0x25453c(0x163)]})['trim']();return _0x186691[_0x25453c(0xe6)](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')[_0x25453c(0xe6)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x7e9ae1=_0x2c0418,_0x30d058={'vHapu':function(_0x375dad,_0x4e791d,_0x25820a){return _0x375dad(_0x4e791d,_0x25820a);},'QRtQv':_0x7e9ae1(0xfd),'KzwVq':'pipe'};try{return _0x30d058[_0x7e9ae1(0x171)](execSync,_0x30d058[_0x7e9ae1(0x147)],{'encoding':_0x7e9ae1(0x18a),'stdio':[_0x7e9ae1(0x163),_0x7e9ae1(0x163),_0x30d058['KzwVq']]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1c6e61=_0x2c0418,_0x5613ee={'wCFUj':function(_0x376459){return _0x376459();},'CKWSa':function(_0x2c4030,_0x55cc7c){return _0x2c4030(_0x55cc7c);},'Iivrq':function(_0x477b66,_0x3ee9d1,_0x4b64c0){return _0x477b66(_0x3ee9d1,_0x4b64c0);}},_0x36e179=join(_0x5613ee[_0x1c6e61(0xf6)](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x5613ee[_0x1c6e61(0xf3)](existsSync,_0x36e179))return null;try{const _0x53a02f=await _0x5613ee['Iivrq'](readFile,_0x36e179,_0x1c6e61(0x18a));return _0x53a02f['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x52d7a8){const _0x5adcff=_0x2c0418,_0x285a1e={'NXiFZ':function(_0x32fd3e){return _0x32fd3e();},'QJXpN':function(_0x256bac,_0x21d36d,_0x363285){return _0x256bac(_0x21d36d,_0x363285);},'pMosW':function(_0x1fa8fa,_0x20c654){return _0x1fa8fa(_0x20c654);}},_0x4d89ac=_0x285a1e['NXiFZ'](getRangerDir),_0x542624=_0x285a1e['QJXpN'](join,_0x4d89ac,ACTIVE_FEATURE_FILE);!_0x285a1e[_0x5adcff(0x105)](existsSync,_0x4d89ac)&&await mkdir(_0x4d89ac,{'recursive':!![]}),await writeFile(_0x542624,_0x52d7a8,'utf-8');}function getProgressDisplay(_0x35172b){const _0x103cfc=_0x2c0418,_0xebce64={'oScpl':function(_0x3c081b,_0x4a3b85){return _0x3c081b+_0x4a3b85;},'iHykS':function(_0x5c6ff1,_0x5ac280){return _0x5c6ff1+_0x5ac280;},'nRTLC':function(_0x531c54,_0x73bd54){return _0x531c54+_0x73bd54;},'flVqI':function(_0x33a121,_0x2cdae6){return _0x33a121-_0x2cdae6;},'bDaXe':function(_0xcd1ac9,_0x49861b){return _0xcd1ac9>_0x49861b;},'sIDkP':function(_0x1f8eba,_0x2a64df){return _0x1f8eba>_0x2a64df;},'IsRWy':function(_0x530272,_0x159126){return _0x530272>_0x159126;}},_0x119fea=_0x35172b[_0x103cfc(0x125)]||0x0,_0x1c79c7=_0x35172b[_0x103cfc(0xcd)]||0x0,_0x51ecb0=_0x35172b[_0x103cfc(0xdc)]||0x0,_0x3a1ff7=_0x35172b['incompleteItems']||0x0,_0x4bcb7f=_0x35172b[_0x103cfc(0x10a)]||0x0,_0x230feb=_0xebce64[_0x103cfc(0x152)](_0xebce64['iHykS'](_0xebce64[_0x103cfc(0x13e)](_0x119fea,_0x1c79c7),_0x51ecb0),_0x3a1ff7)+_0x4bcb7f;if(_0x230feb===0x0)return'-';const _0x1fe2a6=0xa,_0x16b6c7=Math['round'](_0x119fea/_0x230feb*_0x1fe2a6),_0x29db55=_0xebce64[_0x103cfc(0x13e)]('█'[_0x103cfc(0x121)](_0x16b6c7),'░'['repeat'](_0xebce64[_0x103cfc(0xd7)](_0x1fe2a6,_0x16b6c7))),_0x1d25fc=[];if(_0xebce64['bDaXe'](_0x51ecb0,0x0))_0x1d25fc['push'](_0x51ecb0+_0x103cfc(0x18f));if(_0xebce64[_0x103cfc(0x176)](_0x3a1ff7,0x0))_0x1d25fc[_0x103cfc(0x185)](_0x3a1ff7+_0x103cfc(0xf0));if(_0xebce64[_0x103cfc(0x15e)](_0x1c79c7,0x0))_0x1d25fc['push'](_0x1c79c7+_0x103cfc(0xe5));const _0x46b355=_0xebce64[_0x103cfc(0x12b)](_0x1d25fc['length'],0x0)?'\x20('+_0x1d25fc[_0x103cfc(0x108)](',\x20')+')':'';return _0x29db55+'\x20'+_0x119fea+'/'+_0x230feb+_0x103cfc(0x113)+_0x46b355;}function getCurrentSessionItems(_0x76c821,_0x22de81){const _0x70ca3a=_0x2c0418;if(!_0x76c821['currentSessionId'])return _0x22de81['filter'](_0x520115=>!_0x520115['sessionId'])['sort']((_0xa84d3e,_0x3880b4)=>_0xa84d3e[_0x70ca3a(0x166)]-_0x3880b4['position']);return _0x22de81['filter'](_0x1247d8=>_0x1247d8[_0x70ca3a(0x153)]===_0x76c821['currentSessionId']||!_0x1247d8['sessionId'])[_0x70ca3a(0xd3)]((_0x210cde,_0x5252e3)=>_0x210cde[_0x70ca3a(0x166)]-_0x5252e3['position']);}function displayFeature(_0x123734,_0x4655fa){const _0x36dfca=_0x2c0418,_0x573db3={'yVtDf':function(_0x1b4dc6,_0x98f794){return _0x1b4dc6===_0x98f794;},'CEHFP':_0x36dfca(0x167),'pqaxB':function(_0x3e76af,_0x2194c9){return _0x3e76af===_0x2194c9;},'TZtJf':function(_0x1705c4,_0x176c80){return _0x1705c4===_0x176c80;},'aAsWq':'closed','LKVff':_0x36dfca(0xfc),'ialBG':function(_0x33e6f2,_0x3cb079){return _0x33e6f2>_0x3cb079;},'BLHhK':function(_0x1e4db9,_0x4d07c4){return _0x1e4db9!==_0x4d07c4;},'KwEBJ':'verified','lEUTi':'blocked','IXhnk':function(_0x4ac4e9,_0x2d36cb){return _0x4ac4e9===_0x2d36cb;},'dHqQU':function(_0x222758,_0x254e47){return _0x222758===_0x254e47;}};console['log']('\x0a'+_0x123734['name']+'\x20('+_0x123734['dashboardUrl']+')');_0x123734['stats']&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x123734['stats']));_0x123734['description']&&console[_0x36dfca(0x103)]('\x20\x20\x20Description:\x20'+_0x123734[_0x36dfca(0x13b)]);_0x123734[_0x36dfca(0x16e)]&&console['log'](_0x36dfca(0x14e)+_0x123734[_0x36dfca(0x16e)]);_0x123734[_0x36dfca(0x12e)]&&console[_0x36dfca(0x103)](_0x36dfca(0x102)+_0x123734[_0x36dfca(0x12e)]);console[_0x36dfca(0x103)](_0x36dfca(0xf5)+new Date(_0x123734[_0x36dfca(0x16c)])['toLocaleString']());_0x123734[_0x36dfca(0x178)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x123734['completedAt'])['toLocaleString']());if(_0x4655fa&&_0x4655fa['length']>0x0){console['log'](_0x36dfca(0x180));for(let _0x1c8848=0x0;_0x1c8848<_0x4655fa[_0x36dfca(0x198)];_0x1c8848++){const _0xf33a8d=_0x4655fa[_0x1c8848];let _0x59b2ec;if(_0xf33a8d['status']===_0x36dfca(0x11f)&&_0x573db3[_0x36dfca(0xf9)](_0xf33a8d[_0x36dfca(0x10c)],_0x36dfca(0x17f)))_0x59b2ec='✅';else{if(_0xf33a8d['status']==='verified')_0x59b2ec='🟢';else{if(_0x573db3['yVtDf'](_0xf33a8d['status'],_0x573db3[_0x36dfca(0x15c)]))_0x59b2ec='🟠';else{if(_0x573db3['pqaxB'](_0xf33a8d['status'],_0x36dfca(0x141)))_0x59b2ec='🛑';else{if(_0x573db3[_0x36dfca(0x149)](_0xf33a8d[_0x36dfca(0x114)],_0x573db3['aAsWq']))_0x59b2ec='⛔';else _0x573db3[_0x36dfca(0x149)](_0xf33a8d['status'],_0x573db3['LKVff'])?_0x59b2ec='⏳':_0x59b2ec='⬜';}}}}const _0x45ffce=_0x573db3[_0x36dfca(0x199)](_0xf33a8d[_0x36dfca(0x135)],0x1)?_0x36dfca(0x154)+_0xf33a8d['version']+')':'',_0x3a24da=_0xf33a8d[_0x36dfca(0x135)]>0x1&&_0xf33a8d['parentItemId']&&_0x573db3[_0x36dfca(0x169)](_0xf33a8d['status'],'closed')&&_0xf33a8d[_0x36dfca(0x114)]!==_0x573db3[_0x36dfca(0x111)]?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+(_0x1c8848+0x1)+'.\x20'+_0x59b2ec+'\x20'+_0xf33a8d[_0x36dfca(0x13b)]+_0x45ffce+_0x3a24da);_0xf33a8d[_0x36dfca(0x114)]===_0x573db3['lEUTi']&&_0xf33a8d['blockedReason']&&console[_0x36dfca(0x103)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0xf33a8d[_0x36dfca(0x14c)]);_0x573db3[_0x36dfca(0xf9)](_0xf33a8d['status'],_0x36dfca(0x167))&&_0xf33a8d['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0xf33a8d['incompleteReason']);if(_0x573db3[_0x36dfca(0x17c)](_0xf33a8d['status'],'closed')&&_0x573db3[_0x36dfca(0x118)](_0xf33a8d['terminalReason'],_0x36dfca(0x17f)))console[_0x36dfca(0x103)](_0x36dfca(0x192));else _0x573db3[_0x36dfca(0xf9)](_0xf33a8d[_0x36dfca(0x114)],_0x36dfca(0x11f))&&_0xf33a8d['canceledReason']&&console[_0x36dfca(0x103)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0xf33a8d['canceledReason']);}}}export async function featureCreate(_0x13643b,_0x5c15f9){const _0x8e5fd=_0x2c0418,_0xaf71e2={'aiaNi':function(_0x17fb9f,_0x3d826b){return _0x17fb9f(_0x3d826b);},'wdtzj':function(_0x19f32c){return _0x19f32c();},'MRpuH':function(_0xd5e4ac,_0x52986c,_0x20ecf4){return _0xd5e4ac(_0x52986c,_0x20ecf4);}},{envNames:_0x156e04}=await getEnvNames();_0x156e04[_0x8e5fd(0x198)]===0x0&&console[_0x8e5fd(0xff)]('\x0a'+_0xaf71e2['aiaNi'](formatProfileRequiredMessage,_0x43f945=>bold(_0x43f945)));const _0x831e36=_0x5c15f9[_0x8e5fd(0x104)]?_0x5c15f9['scenarios'][_0x8e5fd(0x13f)](_0x1e079e=>_0x1e079e[_0x8e5fd(0x106)]()):[],_0xfe28f=_0xaf71e2[_0x8e5fd(0xe2)](getGitRepoUrl),_0x5e277e=getGitBranch();console[_0x8e5fd(0x103)](_0x8e5fd(0x146));const _0x3a88d1=await createFeature({'name':_0x13643b,'description':_0x5c15f9[_0x8e5fd(0x13b)],'checklist':_0x831e36,'gitRepoUrl':_0xfe28f,'gitBranch':_0x5e277e});await setActiveFeatureId(_0x3a88d1['id']),await tryStartCurrentSession(_0x3a88d1['id']);const _0x4f70e5=process[_0x8e5fd(0x110)][_0x8e5fd(0xef)];_0x4f70e5&&registerSession(_0x4f70e5,_0x3a88d1['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x3a88d1['id']),_0xaf71e2[_0x8e5fd(0x17e)](displayFeature,_0x3a88d1,_0x3a88d1['checklistItems']),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0xdfd01b){const _0x139bfa=_0x2c0418,_0x3fd3c0={'KZQei':function(_0x5c3de7){return _0x5c3de7();},'HetSE':function(_0x4d5d7d,_0x5a4455){return _0x4d5d7d(_0x5a4455);},'hdwhm':function(_0x1c6c58,_0x48bc9d){return _0x1c6c58+_0x48bc9d;},'fvUze':function(_0x52dd6a,_0x165912){return _0x52dd6a<_0x165912;},'eAymx':_0x139bfa(0x177)},_0x37a320={'limit':_0xdfd01b[_0x139bfa(0x159)]??0xa,'offset':_0xdfd01b[_0x139bfa(0xd2)]??0x0,'includeDeleted':_0xdfd01b['includeDeleted']};_0xdfd01b[_0x139bfa(0x196)]&&(_0x37a320[_0x139bfa(0x16e)]=_0x3fd3c0['KZQei'](getGitRepoUrl),_0x37a320[_0x139bfa(0x12e)]=_0x3fd3c0['KZQei'](getGitBranch));const _0x1bb5fd=await _0x3fd3c0['HetSE'](listFeatures,_0x37a320);if(_0x1bb5fd[_0x139bfa(0x142)]['length']===0x0){console['log'](_0x139bfa(0xf2));return;}const _0x5bd1f6=_0x1bb5fd[_0x139bfa(0x138)]>_0x1bb5fd['items'][_0x139bfa(0x198)]?_0x139bfa(0xf7)+_0x1bb5fd[_0x139bfa(0x142)]['length']+_0x139bfa(0x13c)+_0x1bb5fd[_0x139bfa(0x138)]:_0x1bb5fd['totalCount']+_0x139bfa(0x137);console['log']('\x0a'+_0x5bd1f6+':\x0a');for(const _0x1fa9d9 of _0x1bb5fd['items']){console['log'](''+_0x1fa9d9['name']),console['log'](_0x139bfa(0x14f)+_0x1fa9d9['id']),_0x1fa9d9['stats']&&console['log'](_0x139bfa(0x16d)+_0x3fd3c0[_0x139bfa(0x14d)](getProgressDisplay,_0x1fa9d9[_0x139bfa(0xf1)])),_0x1fa9d9[_0x139bfa(0x12e)]&&console[_0x139bfa(0x103)](_0x139bfa(0x102)+_0x1fa9d9['gitBranch']),console[_0x139bfa(0x103)](_0x139bfa(0xf5)+new Date(_0x1fa9d9[_0x139bfa(0x16c)])['toLocaleDateString']()),console[_0x139bfa(0x103)]('');}const _0x33ac8d=_0x37a320['limit']??0xa,_0x2d1161=_0x3fd3c0[_0x139bfa(0x129)](_0x37a320[_0x139bfa(0xd2)]??0x0,_0x1bb5fd['items'][_0x139bfa(0x198)]);if(_0x3fd3c0['fvUze'](_0x2d1161,_0x1bb5fd['totalCount'])){const _0x1b8ad6=_0x33ac8d!==0xa?_0x139bfa(0xe0)+_0x33ac8d:'',_0x3c1981=_0xdfd01b['currentBranch']?_0x3fd3c0[_0x139bfa(0x188)]:'',_0x3b4062=_0xdfd01b['includeDeleted']?_0x139bfa(0xfe):'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x2d1161+_0x1b8ad6+_0x3c1981+_0x3b4062);}}export async function featureShow(_0x39fbd0){const _0x50841d={'FAdDj':function(_0x415557){return _0x415557();},'JAnsg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','FBQCy':function(_0xccf0d6,_0x37af8a){return _0xccf0d6(_0x37af8a);}},_0x3a59fc=_0x39fbd0||await _0x50841d['FAdDj'](getActiveFeatureId);if(!_0x3a59fc)throw new Error(_0x50841d['JAnsg']);const _0x67c30a=await _0x50841d['FBQCy'](getFeature,_0x3a59fc);displayFeature(_0x67c30a,_0x67c30a['checklistItems']);}export async function featureResume(_0x3cae6a){const _0x3f227f=_0x2c0418,_0x49d75f={'nmZaG':function(_0x5a33e4,_0xbb673a){return _0x5a33e4(_0xbb673a);},'mzGXN':function(_0x5aa2b4){return _0x5aa2b4();},'CLWos':'Not\x20in\x20a\x20git\x20repository.','KNmhO':function(_0x2a1fc0,_0x530d87){return _0x2a1fc0||_0x530d87;},'NbSQN':_0x3f227f(0x148),'PIimC':function(_0x31aad7,_0x343006){return _0x31aad7===_0x343006;},'gNDjh':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','adotK':_0x3f227f(0x115),'hIEmM':function(_0x540b1e,_0x47bb14){return _0x540b1e!==_0x47bb14;},'Nsorf':function(_0xcb62a5,_0x4276d2){return _0xcb62a5(_0x4276d2);},'pzUGG':function(_0x8b41ef,_0x79b89d,_0x5280f6){return _0x8b41ef(_0x79b89d,_0x5280f6);}};if(_0x3cae6a){const _0x214a48=await getFeature(_0x3cae6a);await _0x49d75f[_0x3f227f(0x101)](setActiveFeatureId,_0x214a48['id']);const _0x410555=_0x49d75f['mzGXN'](getGitBranch);_0x410555&&_0x410555!==_0x214a48['gitBranch']&&(await updateFeature(_0x214a48['id'],{'gitBranch':_0x410555}),console['log'](_0x3f227f(0x191)+_0x410555));console[_0x3f227f(0x103)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x214a48['name']+'\x20('+_0x214a48['id']+')'),await tryStartCurrentSession(_0x214a48['id']);const _0x24dd22=process['env']['CLAUDE_SESSION_ID'];_0x24dd22&&registerSession(_0x24dd22,_0x214a48['id']);displayFeature(_0x214a48,_0x214a48[_0x3f227f(0xfb)]),await _0x49d75f[_0x3f227f(0x101)](printFeedbackNudge,_0x214a48['id']);return;}const _0x2fe660=getGitRepoUrl(),_0x41fcf=getGitBranch();if(!_0x2fe660&&!_0x41fcf)throw new Error(_0x49d75f['CLWos']);console['log'](_0x3f227f(0x122)+_0x49d75f['KNmhO'](_0x2fe660,_0x49d75f['NbSQN'])+'\x20/\x20'+(_0x41fcf||_0x3f227f(0x148))+_0x3f227f(0xf8));const _0x3f5aee=await listFeatures({'gitRepoUrl':_0x2fe660,'gitBranch':_0x41fcf}),_0x15deff=_0x3f5aee['items'][_0x3f227f(0xdd)](_0x2bbc35=>!_0x2bbc35[_0x3f227f(0x178)]);if(_0x49d75f['PIimC'](_0x15deff[_0x3f227f(0x198)],0x0)){console['log'](_0x49d75f[_0x3f227f(0x12d)]),console['log'](_0x3f227f(0x182));return;}let _0x239c2b;if(_0x15deff[_0x3f227f(0x198)]===0x1)_0x239c2b=_0x15deff[0x0];else{const _0x41548a=process['stdin']['isTTY']&&process['stdout']['isTTY'];if(!_0x41548a){console[_0x3f227f(0x103)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x584e08 of _0x15deff){console['log']('\x20\x20'+_0x584e08[_0x3f227f(0xce)]),console[_0x3f227f(0x103)]('\x20\x20\x20\x20\x20ID:\x20'+_0x584e08['id']),_0x584e08['stats']&&console[_0x3f227f(0x103)](_0x3f227f(0xda)+_0x49d75f[_0x3f227f(0x101)](getProgressDisplay,_0x584e08[_0x3f227f(0xf1)])),_0x584e08['gitBranch']&&console['log'](_0x3f227f(0xea)+_0x584e08[_0x3f227f(0x12e)]);}throw new Error(_0x3f227f(0xd5));}const {selected:_0x3141fe}=await _0x34319d['prompt']([{'type':'list','name':_0x49d75f[_0x3f227f(0x156)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x15deff['map'](_0x1d04de=>({'name':_0x1d04de['name']+'\x20('+_0x1d04de['id']+')','value':_0x1d04de['id']}))}]);_0x239c2b=_0x15deff['find'](_0x412a3d=>_0x412a3d['id']===_0x3141fe);}await setActiveFeatureId(_0x239c2b['id']);_0x41fcf&&_0x49d75f['hIEmM'](_0x41fcf,_0x239c2b[_0x3f227f(0x12e)])&&(await updateFeature(_0x239c2b['id'],{'gitBranch':_0x41fcf}),console[_0x3f227f(0x103)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x41fcf));console['log'](_0x3f227f(0x175)+_0x239c2b['name']+'\x20('+_0x239c2b['id']+')'),await _0x49d75f[_0x3f227f(0x101)](tryStartCurrentSession,_0x239c2b['id']);const _0x1c4429=await _0x49d75f['Nsorf'](getFeature,_0x239c2b['id']),_0x3bcca6=process['env']['CLAUDE_SESSION_ID'];_0x3bcca6&&registerSession(_0x3bcca6,_0x1c4429['id']),_0x49d75f[_0x3f227f(0x120)](displayFeature,_0x1c4429,_0x1c4429[_0x3f227f(0xfb)]),await printFeedbackNudge(_0x1c4429['id']);}async function printFeedbackNudge(_0x51fa6b){const _0x5d7f5e=_0x2c0418,_0x2375e4={'LcxOj':function(_0x330eb7,_0x5b71af){return _0x330eb7>_0x5b71af;},'JTWrJ':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x2c78c7}=await getActionItems(_0x51fa6b);let _0x2307e0=0x0,_0x526ec1=0x0;for(const _0x2f8d09 of _0x2c78c7){const _0x77b1f5=await getItemFeedback(_0x51fa6b,_0x2f8d09['id']);_0x77b1f5['unaddressedComments']['length']>0x0&&(_0x2307e0+=_0x77b1f5[_0x5d7f5e(0x128)][_0x5d7f5e(0x198)],_0x526ec1++);}_0x2375e4['LcxOj'](_0x2307e0,0x0)&&(console['log'](_0x5d7f5e(0xe3)+_0x2307e0+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x526ec1+_0x5d7f5e(0x162)),console['log'](_0x2375e4[_0x5d7f5e(0x15b)]));}catch{}}async function tryStartCurrentSession(_0x1ebff9){const _0x569298=_0x2c0418,_0x480668={'amNwh':function(_0x5f1cc8,_0x5eed26){return _0x5f1cc8(_0x5eed26);},'LaVWf':function(_0x84e1a8,_0x45308e,_0x3be099){return _0x84e1a8(_0x45308e,_0x3be099);}};try{const {sessions:_0x44b77e}=await _0x480668[_0x569298(0x116)](listFeatureSessions,_0x1ebff9),_0x43b404=_0x44b77e['find'](_0x348668=>_0x348668[_0x569298(0x114)]===_0x569298(0xd1));_0x43b404&&(await _0x480668[_0x569298(0x183)](startSession,_0x1ebff9,_0x43b404['id']),console[_0x569298(0x103)](_0x569298(0x10f)+_0x43b404[_0x569298(0x127)]));}catch{}}export async function featureReport(_0x16d2a7,_0x469298){const _0x4d3a8b=_0x2c0418,_0x56f0fa={'jFsNK':_0x4d3a8b(0x13a),'cPXGA':function(_0x2247b5,_0x54b121,_0x33cf43,_0x367c37){return _0x2247b5(_0x54b121,_0x33cf43,_0x367c37);},'euKjK':function(_0x2d0024){return _0x2d0024();},'RfzuZ':function(_0x1db58d,_0x2801e3,_0x48f649){return _0x1db58d(_0x2801e3,_0x48f649);},'QOPYQ':function(_0x26b53a,_0x591a82){return _0x26b53a(_0x591a82);},'qCROZ':'utf-8'},_0x2a3790=_0x16d2a7||await getActiveFeatureId();if(!_0x2a3790)throw new Error(_0x56f0fa[_0x4d3a8b(0x145)]);console[_0x4d3a8b(0x103)]('\x0aGenerating\x20report...');const _0x2b03f7=await getFeatureReportMarkdown(_0x2a3790,{'style':_0x469298['style']}),_0x136c69=_0x469298['output']||_0x56f0fa[_0x4d3a8b(0x179)](join,_0x56f0fa[_0x4d3a8b(0x187)](getRangerDir),_0x4d3a8b(0xd9),_0x2a3790+'.md'),_0x3fc7d3=_0x56f0fa['RfzuZ'](join,_0x136c69,'..');!_0x56f0fa[_0x4d3a8b(0x10b)](existsSync,_0x3fc7d3)&&await mkdir(_0x3fc7d3,{'recursive':!![]}),await writeFile(_0x136c69,_0x2b03f7,_0x56f0fa['qCROZ']),console[_0x4d3a8b(0x103)]('\x0a✅\x20Report\x20generated:\x20'+_0x136c69);}export async function featureReportPrDescription(_0x1e6b77,_0x1d548d){const _0x276bdb=_0x2c0418,_0x240839={'NDxjk':function(_0x370b2a,_0xbda8a9){return _0x370b2a(_0xbda8a9);},'GtKfX':_0x276bdb(0x109),'zmdBD':function(_0x212723,_0x29babb){return _0x212723>_0x29babb;},'HkrZw':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x153bf0=_0x1e6b77||await getActiveFeatureId();if(!_0x153bf0)throw new Error(_0x276bdb(0x13a));const _0x2ddbd7=await _0x240839['NDxjk'](getFeature,_0x153bf0),_0x4ee375=_0x2ddbd7[_0x276bdb(0xfb)]||[],_0xc9d1c9=getCurrentSessionItems(_0x2ddbd7,_0x4ee375);_0xc9d1c9[_0x276bdb(0x198)]===0x0&&(console[_0x276bdb(0x112)](_0x240839[_0x276bdb(0x197)]),process['exit'](0x1));const _0x49174e=_0x1d548d['excludeScenarios']??[],_0x4f386e=_0x49174e['filter'](_0x4d4fcd=>!Number['isInteger'](_0x4d4fcd)||_0x4d4fcd<0x1||_0x4d4fcd>_0xc9d1c9['length']);if(_0x240839[_0x276bdb(0x18e)](_0x4f386e[_0x276bdb(0x198)],0x0)){console['error'](_0x276bdb(0x155)+_0x4f386e[_0x276bdb(0x108)](',\x20')),console[_0x276bdb(0x103)]('\x0aAvailable\x20scenarios:');for(let _0x4aa0c0=0x0;_0x4aa0c0<_0xc9d1c9[_0x276bdb(0x198)];_0x4aa0c0++){console['log']('\x20\x20'+(_0x4aa0c0+0x1)+'.\x20'+_0xc9d1c9[_0x4aa0c0][_0x276bdb(0x13b)]);}process['exit'](0x1);}const _0x322e0e=new Set(_0x49174e['map'](_0x562bc0=>_0x562bc0-0x1)),_0x26193f=_0xc9d1c9['filter']((_0x3eaf67,_0x4b8c15)=>!_0x322e0e['has'](_0x4b8c15));_0x26193f['length']===0x0&&(console[_0x276bdb(0x112)](_0x240839['HkrZw']),process['exit'](0x1));const _0x17d45d=await getFeatureReportMarkdown(_0x153bf0,{'itemIds':_0x26193f['map'](_0x1af980=>_0x1af980['id'])});process[_0x276bdb(0x164)][_0x276bdb(0x172)](_0x17d45d[_0x276bdb(0x158)]()+'\x0a');}export async function featureConcludeSession(_0x398451){const _0x5a416a=_0x2c0418,_0x31af71={'totTN':function(_0x557e29){return _0x557e29();},'tubGo':_0x5a416a(0x140),'aGQZG':function(_0x1df0c6,_0x28fbfe){return _0x1df0c6(_0x28fbfe);},'CSliF':_0x5a416a(0x11e),'teiTG':function(_0x50e283,_0x29ba40){return _0x50e283!==_0x29ba40;},'WDdwY':_0x5a416a(0x194),'dVBDh':function(_0x446282,_0x173739,_0x5424de){return _0x446282(_0x173739,_0x5424de);}},_0xbef03=_0x398451||await _0x31af71[_0x5a416a(0x161)](getActiveFeatureId);if(!_0xbef03)throw new Error(_0x31af71[_0x5a416a(0x168)]);const _0x1eb644=await getFeature(_0xbef03);if(!_0x1eb644[_0x5a416a(0x144)])throw new Error(_0x5a416a(0x123));const {sessions:_0x4d815e}=await _0x31af71['aGQZG'](listFeatureSessions,_0xbef03),_0x31439e=_0x4d815e[_0x5a416a(0xeb)](_0x49c4ee=>_0x49c4ee['id']===_0x1eb644[_0x5a416a(0x144)]);if(!_0x31439e)throw new Error(_0x31af71['CSliF']);if(_0x31439e['status']==='completed'){console[_0x5a416a(0x103)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x31af71['teiTG'](_0x31439e['status'],_0x31af71[_0x5a416a(0x12a)]))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x31439e[_0x5a416a(0x114)]);console['log'](_0x5a416a(0x165)),await _0x31af71[_0x5a416a(0x11b)](concludeSession,_0xbef03,_0x1eb644[_0x5a416a(0x144)]),console[_0x5a416a(0x103)](_0x5a416a(0xd8)+_0x31439e['iteration']+_0x5a416a(0x18d)),console['log'](_0x5a416a(0x131));}export async function featureSessions(_0x14c53e){const _0xc264a5=_0x2c0418,_0xc6500a={'BjSOV':function(_0x203625){return _0x203625();},'XSuJW':function(_0x33a14d,_0x2a1117){return _0x33a14d(_0x2a1117);},'CUGEN':function(_0xa45107,_0xd84d19){return _0xa45107===_0xd84d19;},'puoOe':'No\x20sessions\x20found.','ZNtCM':'completed','aOgHZ':'in_progress'},_0xeb5050=_0x14c53e||await _0xc6500a['BjSOV'](getActiveFeatureId);if(!_0xeb5050)throw new Error(_0xc264a5(0x13a));const _0x3e5e59=await _0xc6500a[_0xc264a5(0xe8)](getFeature,_0xeb5050);console[_0xc264a5(0x103)](_0xc264a5(0xe1)+_0x3e5e59[_0xc264a5(0xce)]+'\x0a');const {sessions:_0x2600e5}=await listFeatureSessions(_0xeb5050);if(_0xc6500a['CUGEN'](_0x2600e5['length'],0x0)){console[_0xc264a5(0x103)](_0xc6500a['puoOe']);return;}for(const _0x4859b4 of _0x2600e5){const _0x236d93=_0x4859b4['status']===_0xc6500a['ZNtCM']?'✅':_0x4859b4['status']===_0xc6500a['aOgHZ']?'🔄':'▶️';console['log'](_0x236d93+_0xc264a5(0x186)+_0x4859b4['iteration']+'\x20('+_0x4859b4['id']+')'),console['log'](_0xc264a5(0x170)+_0x4859b4['status']),console['log'](_0xc264a5(0xf5)+new Date(_0x4859b4['createdAt'])['toLocaleString']()),_0x4859b4[_0xc264a5(0x178)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x4859b4['completedAt'])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x322fde,_0x50ddc2){const _0x33ace0=_0x2c0418,_0x1e46a7={'NPiXf':function(_0x2c6697,_0x28b74d){return _0x2c6697(_0x28b74d);}},_0x5a4bdd=_0x50ddc2||await getActiveFeatureId();if(!_0x5a4bdd)throw new Error(_0x33ace0(0x140));const _0x48f9b4=await getFeature(_0x5a4bdd);if(_0x48f9b4[_0x33ace0(0x143)]&&!_0x48f9b4[_0x33ace0(0x143)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x48f9b4[_0x33ace0(0xcf)]);await createChecklistItem(_0x5a4bdd,_0x322fde);const _0x2dc803=await _0x1e46a7['NPiXf'](getFeature,_0x5a4bdd);console['log']('\x0a✅\x20Scenario\x20added'),displayFeature(_0x2dc803,_0x2dc803[_0x33ace0(0xfb)]);}export async function featureEditScenario(_0x30671e,_0x4a0d0b){const _0x5c38a3=_0x2c0418,_0x92e7f3={'VykDJ':function(_0x2a51fa){return _0x2a51fa();},'ONvNL':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','YQzyb':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','sBgVS':'Please\x20finish\x20your\x20review\x20first:','qSpYR':_0x5c38a3(0x12c),'ioHnb':function(_0xdb2aab,_0xda60a2){return _0xdb2aab<_0xda60a2;},'QIRwW':function(_0x5d7be8,_0x14d553){return _0x5d7be8+_0x14d553;},'poDHx':function(_0x108603,_0x16e8c6){return _0x108603-_0x16e8c6;},'OKrgg':function(_0x5a45ed,_0x2efba0){return _0x5a45ed>=_0x2efba0;},'SnvzO':function(_0x273077,_0x2b5036,_0x3fd4e9,_0x343861){return _0x273077(_0x2b5036,_0x3fd4e9,_0x343861);}},_0x296ed3=_0x4a0d0b['id']||await _0x92e7f3['VykDJ'](getActiveFeatureId);!_0x296ed3&&(console['error'](_0x92e7f3[_0x5c38a3(0x136)]),console[_0x5c38a3(0x112)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process['exit'](0x1));const _0x46b08c=await getFeature(_0x296ed3);_0x46b08c[_0x5c38a3(0x143)]&&!_0x46b08c[_0x5c38a3(0x143)]['submittedAt']&&(console['error'](_0x92e7f3['YQzyb']),console['error'](_0x92e7f3['sBgVS']),console[_0x5c38a3(0x112)]('\x20\x20'+_0x46b08c['dashboardUrl']),process[_0x5c38a3(0x195)](0x1));const _0x249041=_0x46b08c['checklistItems']||[];_0x249041[_0x5c38a3(0x198)]===0x0&&(console['error'](_0x5c38a3(0x16a)),process[_0x5c38a3(0x195)](0x1));if(_0x4a0d0b['scenario']===undefined){console[_0x5c38a3(0x112)](_0x92e7f3[_0x5c38a3(0x181)]),console[_0x5c38a3(0x103)](_0x5c38a3(0xd6));for(let _0x2a1cda=0x0;_0x92e7f3['ioHnb'](_0x2a1cda,_0x249041[_0x5c38a3(0x198)]);_0x2a1cda++){console[_0x5c38a3(0x103)]('\x20\x20'+_0x92e7f3['QIRwW'](_0x2a1cda,0x1)+'.\x20'+_0x249041[_0x2a1cda]['description']);}process['exit'](0x1);}const _0x5a17b4=_0x92e7f3[_0x5c38a3(0x107)](_0x4a0d0b[_0x5c38a3(0x190)],0x1);if(_0x5a17b4<0x0||_0x92e7f3[_0x5c38a3(0x160)](_0x5a17b4,_0x249041[_0x5c38a3(0x198)])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x4a0d0b['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x249041[_0x5c38a3(0x198)]+_0x5c38a3(0x151)),console['log'](_0x5c38a3(0xd6));for(let _0x5ea0ad=0x0;_0x5ea0ad<_0x249041['length'];_0x5ea0ad++){console['log']('\x20\x20'+_0x92e7f3['QIRwW'](_0x5ea0ad,0x1)+'.\x20'+_0x249041[_0x5ea0ad][_0x5c38a3(0x13b)]);}process['exit'](0x1);}const _0x2dca99=_0x249041[_0x5a17b4];await _0x92e7f3['SnvzO'](updateChecklistItem,_0x296ed3,_0x2dca99['id'],{'description':_0x30671e});const _0x3ca8e3=await getFeature(_0x296ed3);console[_0x5c38a3(0x103)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x3ca8e3,_0x3ca8e3['checklistItems']);}function _0x2c30(){const _0x167424=['textContent','\x20in\x20progress','replace','79504KyRSNe','XSuJW','):\x20\x22','\x20\x20\x20\x20\x20Branch:\x20','find','\x20\x20💬\x20','type','pop','CLAUDE_SESSION_ID','\x20incomplete','stats','\x0aNo\x20feature\x20reviews\x20found.','CKWSa','No\x20scenarios\x20found.','\x20\x20\x20Created:\x20','wCFUj','Showing\x20','...','yVtDf','qYpva','checklistItems','verification_in_progress','git\x20rev-parse\x20--abbrev-ref\x20HEAD','\x20--include-deleted','warn','eJBCB','nmZaG','\x20\x20\x20Branch:\x20','log','scenarios','pMosW','trim','poDHx','join','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','pendingItems','QOPYQ','terminalReason','short','12rLHbPX','\x20\x20\x20▶️\x20Started\x20session\x20','env','KwEBJ','error','\x20verified','status','selected','amNwh','from','dHqQU','1NPFrgx','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','dVBDh','split','\x1b[1m','Current\x20session\x20not\x20found.','closed','pzUGG','repeat','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','No\x20active\x20session\x20for\x20this\x20feature\x20review.','BFHUT','verifiedItems','\x20\x20✅\x20No\x20feedback\x20to\x20address','iteration','unaddressedComments','hdwhm','WDdwY','bDaXe','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','gNDjh','gitBranch','315JFomcG','domRef','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','toFixed','677085QyehsL','20387092ynbOru','version','ONvNL','\x20feature\x20review(s)\x20found','totalCount','Unknown','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','description','\x20of\x20','3071898QMnlrH','nRTLC','map','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','blocked','items','latestReview','currentSessionId','jFsNK','\x0aCreating\x20feature\x20review...','QRtQv','any','TZtJf','1266718lqqpnf','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','blockedReason','HetSE','\x20\x20\x20Repository:\x20','\x20\x20\x20ID:\x20','git\x20remote\x20get-url\x20origin','\x20scenarios.','oScpl','sessionId','\x20(v','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','adotK','\x0a✅\x20Restored\x20feature\x20review:\x20','trimEnd','limit','dhrWb','JTWrJ','CEHFP','\x20\x20\x20\x20\x20📋\x20Selector:\x20','IsRWy','feedback-images','OKrgg','totTN','\x20scenario(s).','pipe','stdout','\x0aConcluding\x20session...','position','incomplete','tubGo','BLHhK','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','\x20>\x20','createdAt','\x20\x20\x20Progress:\x20','gitRepoUrl','12lmxdNr','\x20\x20\x20Status:\x20','vHapu','write','\x1b[0m','.png','\x0a✅\x20Resumed\x20feature\x20review:\x20','sIDkP','\x20--current-branch','completedAt','cPXGA','KESiA','8504520TyYNew','IXhnk','BxLzi','MRpuH','approved','\x0a\x20\x20\x20Scenarios:','qSpYR','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','LaVWf','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','push','\x20Session\x20','euKjK','eAymx','en-US','utf-8','\x20unaddressed\x20comment(s)','OOCaB','\x20concluded.','zmdBD','\x20blocked','scenario','\x20\x20\x20Updated\x20branch\x20to:\x20','\x20\x20\x20\x20\x20\x20Approved','selector','in_progress','exit','currentBranch','GtKfX','length','ialBG','verificationInProgressItems','name','dashboardUrl','numeric','ready','offset','sort','2757517StisUk','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x0aAvailable\x20scenarios:','flVqI','\x0a✅\x20Session\x20','reports','\x20\x20\x20\x20\x20Progress:\x20','Scenario\x20','blockedItems','filter','zgUEV','bYgKS','\x20--limit\x20','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','wdtzj','\x0a⚠️\x20\x20'];_0x2c30=function(){return _0x167424;};return _0x2c30();}async function downloadFeedbackImage(_0x32a2cb,_0x390593){const _0x2a1683=_0x2c0418,_0x1860ae={'vSowg':function(_0x375580,_0x47eb2b,_0x5af17f){return _0x375580(_0x47eb2b,_0x5af17f);},'OOCaB':function(_0x9d0c22){return _0x9d0c22();},'BxLzi':_0x2a1683(0x15f),'KESiA':function(_0x161228,_0x699926){return _0x161228(_0x699926);}};try{const _0x4761d7=_0x1860ae['vSowg'](join,_0x1860ae[_0x2a1683(0x18c)](getRangerDir),_0x1860ae[_0x2a1683(0x17d)]);await _0x1860ae['vSowg'](mkdir,_0x4761d7,{'recursive':!![]});const _0x1b3591=join(_0x4761d7,'comment_'+_0x390593+_0x2a1683(0x174)),_0x26afd8=await _0x1860ae[_0x2a1683(0x17a)](fetch,_0x32a2cb);if(!_0x26afd8['ok'])return null;const _0x6b7d6c=Buffer[_0x2a1683(0x117)](await _0x26afd8['arrayBuffer']());return await writeFile(_0x1b3591,_0x6b7d6c),_0x1b3591;}catch{return null;}}export async function featureGetReview(_0x43bb5f){const _0x2c52df=_0x2c0418,_0x4b2b69={'eJBCB':function(_0x4c979c){return _0x4c979c();},'rdGhE':function(_0x59b6f6,_0x2a3c2f){return _0x59b6f6(_0x2a3c2f);},'cGghH':function(_0x404244,_0x3f2a06){return _0x404244===_0x3f2a06;},'UeruT':function(_0x464ece,_0x281979){return _0x464ece<_0x281979;},'XJhdM':function(_0x39c812,_0x282e6d){return _0x39c812>_0x282e6d;},'qYpva':function(_0x446024,_0x31bd6e,_0x272b51){return _0x446024(_0x31bd6e,_0x272b51);},'rwBfQ':function(_0x5593d5,_0x3dfa19){return _0x5593d5>_0x3dfa19;},'dhrWb':function(_0x387d83,_0x40c53b,_0x35800d){return _0x387d83(_0x40c53b,_0x35800d);},'Oypdc':function(_0x306425,_0x4a38a5){return _0x306425===_0x4a38a5;}},_0x177e19=_0x43bb5f||await _0x4b2b69[_0x2c52df(0x100)](getActiveFeatureId);if(!_0x177e19)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x5ab50b=await getFeature(_0x177e19),{items:_0x1ca20f}=await _0x4b2b69['rdGhE'](getActionItems,_0x177e19);console[_0x2c52df(0x103)]('\x0a📋\x20Feedback\x20for:\x20'+_0x5ab50b['name']+'\x20('+_0x5ab50b['id']+')\x0a');if(_0x4b2b69['cGghH'](_0x1ca20f[_0x2c52df(0x198)],0x0)){console[_0x2c52df(0x103)](_0x2c52df(0xf4));return;}for(let _0x4b0a17=0x0;_0x4b2b69['UeruT'](_0x4b0a17,_0x1ca20f['length']);_0x4b0a17++){const _0x5b9184=_0x1ca20f[_0x4b0a17],_0x2bc608=_0x4b2b69['XJhdM'](_0x5b9184['version'],0x1)?_0x2c52df(0x154)+_0x5b9184['version']+')':'',_0x2c19dd=await _0x4b2b69[_0x2c52df(0xfa)](getItemFeedback,_0x177e19,_0x5b9184['id']);if(_0x4b2b69['rwBfQ'](_0x2c19dd[_0x2c52df(0x128)][_0x2c52df(0x198)],0x0)){console[_0x2c52df(0x103)](_0x2c52df(0xdb)+(_0x4b0a17+0x1)+':\x20\x22'+_0x5b9184[_0x2c52df(0x13b)]+'\x22'+_0x2bc608+'\x20—\x20'+_0x2c19dd[_0x2c52df(0x128)][_0x2c52df(0x198)]+_0x2c52df(0x18b));for(const _0xe1518c of _0x2c19dd['unaddressedComments']){const _0x46f403=new Date(_0xe1518c['createdAt'])['toLocaleDateString'](_0x2c52df(0x189),{'month':_0x2c52df(0x10d),'day':_0x2c52df(0xd0)}),_0x18642c=_0xe1518c['authorName']||_0xe1518c['authorEmail']||_0x2c52df(0x139);console[_0x2c52df(0x103)](_0x2c52df(0xec)+_0x18642c+'\x20('+_0x46f403+_0x2c52df(0xe9)+_0xe1518c['content']+'\x22');if(_0xe1518c['assetUrl']){const _0x3aa070=await _0x4b2b69[_0x2c52df(0x15a)](downloadFeedbackImage,_0xe1518c['assetUrl'],_0xe1518c['id']);_0x3aa070&&console['log'](_0x2c52df(0x14b)+_0x3aa070);}if(_0xe1518c['domRef']){const _0x3c073d=_0xe1518c[_0x2c52df(0x130)][_0x2c52df(0x193)][_0x2c52df(0x11c)](_0x2c52df(0x16b))[_0x2c52df(0xee)]()?.[_0x2c52df(0x11c)](':')[0x0]||'element',_0x4dece7=_0xe1518c[_0x2c52df(0x130)]['textContent']?'\x20\x22'+_0xe1518c[_0x2c52df(0x130)][_0x2c52df(0xe4)]['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x2c52df(0x184)+_0x3c073d+'>'+_0x4dece7),console[_0x2c52df(0x103)](_0x2c52df(0x15d)+_0xe1518c['domRef'][_0x2c52df(0x193)]);}else{if(_0xe1518c['spatial']){const _0x2cdae8=_0xe1518c['spatial']['coordinates'];_0x4b2b69['Oypdc'](_0xe1518c['spatial'][_0x2c52df(0xed)],'point')&&_0x2cdae8[_0x2c52df(0x198)]>=0x2?console[_0x2c52df(0x103)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x2cdae8[0x0][_0x2c52df(0x132)](0x2)+',\x20'+_0x2cdae8[0x1]['toFixed'](0x2)+')'):console[_0x2c52df(0x103)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0xe1518c['spatial'][_0x2c52df(0xed)]+'\x20at\x20['+_0x2cdae8[_0x2c52df(0x13f)](_0x5cae34=>_0x5cae34['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x2c19dd['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x26b5e9 of _0x2c19dd['canonicalFlow']['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x26b5e9);}}}else console[_0x2c52df(0x103)]('Scenario\x20'+(_0x4b0a17+0x1)+':\x20\x22'+_0x5b9184['description']+'\x22'+_0x2bc608+'\x20—\x20no\x20comments'),console[_0x2c52df(0x103)](_0x2c52df(0x126));console['log']('');}}export async function featureDelete(_0x35e9d7){const _0x63d651=_0x2c0418,_0x15b8c0={'MVeEG':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','gEXmJ':function(_0x902a3f,_0x51f7cd){return _0x902a3f+_0x51f7cd;}},_0x1aeba1=_0x35e9d7||await getActiveFeatureId();if(!_0x1aeba1)throw new Error(_0x15b8c0['MVeEG']);const _0x1d39e3=await getFeature(_0x1aeba1);await softDeleteFeature(_0x1aeba1),console['log'](_0x63d651(0x11a)+_0x1d39e3['name']+'\x20('+_0x1aeba1+')'),console['log'](_0x15b8c0['gEXmJ']('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20',_0x1aeba1));}export async function featureRestore(_0x2b16d1){const _0x40739f=_0x2c0418,_0x19427a={'ZcAtT':function(_0x27b0a8,_0x4af5ff,_0x2bee06){return _0x27b0a8(_0x4af5ff,_0x2bee06);}};await restoreFeature(_0x2b16d1);const _0x36e76d=await getFeature(_0x2b16d1);console[_0x40739f(0x103)](_0x40739f(0x157)+_0x36e76d['name']+'\x20('+_0x2b16d1+')'),_0x19427a['ZcAtT'](displayFeature,_0x36e76d,_0x36e76d['checklistItems']);}
@@ -1 +1 @@
1
- function _0x2665(_0x3cc1fe,_0xd25186){_0x3cc1fe=_0x3cc1fe-0x1ef;const _0x391b61=_0x391b();let _0x26658b=_0x391b61[_0x3cc1fe];return _0x26658b;}(function(_0x68dbc6,_0x4985e2){const _0x108470=_0x2665,_0x1d4e6d=_0x68dbc6();while(!![]){try{const _0x3a520a=-parseInt(_0x108470(0x1f4))/0x1+parseInt(_0x108470(0x1f1))/0x2+-parseInt(_0x108470(0x1ef))/0x3+-parseInt(_0x108470(0x1f2))/0x4+parseInt(_0x108470(0x1f5))/0x5+-parseInt(_0x108470(0x1f6))/0x6*(-parseInt(_0x108470(0x1f8))/0x7)+parseInt(_0x108470(0x1f7))/0x8;if(_0x3a520a===_0x4985e2)break;else _0x1d4e6d['push'](_0x1d4e6d['shift']());}catch(_0x5e049e){_0x1d4e6d['push'](_0x1d4e6d['shift']());}}}(_0x391b,0x32761));function _0x391b(){const _0x306a72=['7Fidxdx','706149GrtcdZ','error','766022LJnqFC','840956UDRfqu','Unknown\x20hook:\x20','385992IsLeaO','445355RzYdol','582834UJYiIe','3752656HbhgAq'];_0x391b=function(){return _0x306a72;};return _0x391b();}import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};export async function hook(_0x395350,_0x1c5c65){const _0xd529a4=_0x2665,_0x42cc2e={'CvwOJ':function(_0x418ac7,_0x666de8){return _0x418ac7(_0x666de8);}},_0x42da4c=HOOKS[_0x395350];if(!_0x42da4c){const _0x22d0d9=Object['keys'](HOOKS)['join'](',\x20');console[_0xd529a4(0x1f0)](_0xd529a4(0x1f3)+_0x395350),console['error']('Valid\x20hooks:\x20'+_0x22d0d9),process['exit'](0x1);}await _0x42cc2e['CvwOJ'](_0x42da4c,_0x1c5c65);}
1
+ function _0xaa90(_0x780c26,_0x3ff09e){_0x780c26=_0x780c26-0x1d5;const _0x2c18ff=_0x2c18();let _0xaa9028=_0x2c18ff[_0x780c26];return _0xaa9028;}(function(_0x5d1bfb,_0x5a9279){const _0x3170e2=_0xaa90,_0x2528b5=_0x5d1bfb();while(!![]){try{const _0x3091de=-parseInt(_0x3170e2(0x1d7))/0x1*(parseInt(_0x3170e2(0x1e1))/0x2)+parseInt(_0x3170e2(0x1d5))/0x3*(parseInt(_0x3170e2(0x1d8))/0x4)+parseInt(_0x3170e2(0x1e2))/0x5*(-parseInt(_0x3170e2(0x1de))/0x6)+parseInt(_0x3170e2(0x1da))/0x7+-parseInt(_0x3170e2(0x1df))/0x8*(parseInt(_0x3170e2(0x1d6))/0x9)+-parseInt(_0x3170e2(0x1db))/0xa+parseInt(_0x3170e2(0x1dc))/0xb;if(_0x3091de===_0x5a9279)break;else _0x2528b5['push'](_0x2528b5['shift']());}catch(_0x386ff7){_0x2528b5['push'](_0x2528b5['shift']());}}}(_0x2c18,0x6c7da));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x2c18(){const _0x10f09c=['6578280QfTNVJ','29884272UmzHPk','Valid\x20hooks:\x20','14964yKkvht','8JmpKMR','error','1101806IcpuMo','1735plVRsF','160665wlHetq','2395314MtiNVO','1mISsWr','4dfdchz','exit','100562spfPiu'];_0x2c18=function(){return _0x10f09c;};return _0x2c18();}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(_0x300072,_0x2f9e16){const _0x3ee06e=_0xaa90,_0x23d64f={'nshJJ':function(_0x480ac7,_0x193c84){return _0x480ac7(_0x193c84);}},_0x4b9f3a=HOOKS[_0x300072];if(!_0x4b9f3a){const _0x4e4489=Object['keys'](HOOKS)['join'](',\x20');console[_0x3ee06e(0x1e0)]('Unknown\x20hook:\x20'+_0x300072),console[_0x3ee06e(0x1e0)](_0x3ee06e(0x1dd)+_0x4e4489),process[_0x3ee06e(0x1d9)](0x1);}await _0x23d64f['nshJJ'](_0x4b9f3a,_0x2f9e16);}
@@ -1 +1 @@
1
- const _0x5b1f1a=_0x18a5;function _0x18a5(_0x550100,_0xfbd260){_0x550100=_0x550100-0x1ed;const _0x5e253b=_0x5e25();let _0x18a5be=_0x5e253b[_0x550100];return _0x18a5be;}(function(_0x3ebd49,_0x3f65e5){const _0x53d35f=_0x18a5,_0x48ccb6=_0x3ebd49();while(!![]){try{const _0x38878c=-parseInt(_0x53d35f(0x1fb))/0x1+-parseInt(_0x53d35f(0x1f7))/0x2*(parseInt(_0x53d35f(0x1f5))/0x3)+parseInt(_0x53d35f(0x1ed))/0x4*(parseInt(_0x53d35f(0x1f0))/0x5)+-parseInt(_0x53d35f(0x1f4))/0x6*(-parseInt(_0x53d35f(0x1f3))/0x7)+parseInt(_0x53d35f(0x1ef))/0x8*(-parseInt(_0x53d35f(0x1fa))/0x9)+-parseInt(_0x53d35f(0x1ee))/0xa+-parseInt(_0x53d35f(0x1f6))/0xb*(-parseInt(_0x53d35f(0x1f9))/0xc);if(_0x38878c===_0x3f65e5)break;else _0x48ccb6['push'](_0x48ccb6['shift']());}catch(_0xb93d96){_0x48ccb6['push'](_0x48ccb6['shift']());}}}(_0x5e25,0x57e76));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x5b1f1a(0x1f1);export async function autoPrompt(){const _0x3b8beb=_0x5b1f1a,_0x3880f4={'XqhYY':function(_0x4e40c8,_0x326f79){return _0x4e40c8(_0x326f79);}},_0xf97b0=await readHookInput(),_0x3c5205=_0xf97b0?.[_0x3b8beb(0x1f8)];if(!_0x3c5205)return;if(_0x3880f4['XqhYY'](isSessionEnabled,_0x3c5205)||hasSessionBeenPrompted(_0x3c5205))return;markSessionPrompted(_0x3c5205),console[_0x3b8beb(0x1f2)](AUTO_PROMPT_TEXT);}function _0x5e25(){const _0x3322b7=['259nZrrQg','54996OLGRij','124293FNNoOx','11383537xwuUDD','12KEdXIj','session_id','12szrJMS','567yAKVFJ','210056RSXYES','4kTtJaV','6015670MGypSW','6272NFEQhJ','478230znnbjG','\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.','log'];_0x5e25=function(){return _0x3322b7;};return _0x5e25();}
1
+ const _0x57323e=_0x4523;(function(_0x1d2ba4,_0x3969bd){const _0x338c31=_0x4523,_0x3d6875=_0x1d2ba4();while(!![]){try{const _0x5c80d1=parseInt(_0x338c31(0x14c))/0x1+-parseInt(_0x338c31(0x151))/0x2+-parseInt(_0x338c31(0x159))/0x3*(-parseInt(_0x338c31(0x156))/0x4)+-parseInt(_0x338c31(0x153))/0x5*(parseInt(_0x338c31(0x14d))/0x6)+-parseInt(_0x338c31(0x150))/0x7+-parseInt(_0x338c31(0x14f))/0x8+parseInt(_0x338c31(0x154))/0x9*(parseInt(_0x338c31(0x157))/0xa);if(_0x5c80d1===_0x3969bd)break;else _0x3d6875['push'](_0x3d6875['shift']());}catch(_0x5dd7a5){_0x3d6875['push'](_0x3d6875['shift']());}}}(_0x1f91,0xd1b25));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x57323e(0x155);function _0x4523(_0x3cc5aa,_0x4b1f17){_0x3cc5aa=_0x3cc5aa-0x14b;const _0x1f9140=_0x1f91();let _0x4523da=_0x1f9140[_0x3cc5aa];return _0x4523da;}export async function autoPrompt(){const _0x254d20=_0x57323e,_0x522f97={'nSEjQ':function(_0xd346ec){return _0xd346ec();},'bMktD':function(_0x306569,_0x81d71c){return _0x306569(_0x81d71c);}},_0x37badb=await _0x522f97[_0x254d20(0x152)](readHookInput),_0x5293ec=_0x37badb?.[_0x254d20(0x14b)];if(!_0x5293ec)return;if(_0x522f97[_0x254d20(0x14e)](isSessionEnabled,_0x5293ec)||hasSessionBeenPrompted(_0x5293ec))return;markSessionPrompted(_0x5293ec),console[_0x254d20(0x158)](AUTO_PROMPT_TEXT);}function _0x1f91(){const _0x41e16b=['\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.','238332uAIbJk','526270JQGoOv','log','9YGXtsh','session_id','905824pSvtYI','3529194RAvXhU','bMktD','5516104dLotns','465374JdhEUP','59908IalsEw','nSEjQ','10YiCCIW','297ahFpBz'];_0x1f91=function(){return _0x41e16b;};return _0x1f91();}
@@ -1 +1 @@
1
- (function(_0x1bac54,_0x7ea054){const _0x5ab40b=_0x1db5,_0x288935=_0x1bac54();while(!![]){try{const _0x1a80a1=parseInt(_0x5ab40b(0x1c5))/0x1+parseInt(_0x5ab40b(0x1b8))/0x2+parseInt(_0x5ab40b(0x1c4))/0x3+parseInt(_0x5ab40b(0x1bd))/0x4*(-parseInt(_0x5ab40b(0x1bc))/0x5)+-parseInt(_0x5ab40b(0x1c8))/0x6*(parseInt(_0x5ab40b(0x1c6))/0x7)+parseInt(_0x5ab40b(0x1c3))/0x8+parseInt(_0x5ab40b(0x1bb))/0x9;if(_0x1a80a1===_0x7ea054)break;else _0x288935['push'](_0x288935['shift']());}catch(_0x5eb63e){_0x288935['push'](_0x288935['shift']());}}}(_0x1d96,0xcd3fe));function _0x1db5(_0x1cd02c,_0x98e8f3){_0x1cd02c=_0x1cd02c-0x1b6;const _0x1d966e=_0x1d96();let _0x1db54f=_0x1d966e[_0x1cd02c];return _0x1db54f;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x33bd4f){const _0x4582c9=_0x1db5,_0x40448d={'daqGE':_0x4582c9(0x1c9),'brsuc':function(_0x3b8820,_0x287c5c){return _0x3b8820(_0x287c5c);},'bRvbj':function(_0x38ca21){return _0x38ca21();},'KRAvr':function(_0xba8ef6,_0x3cd3b9){return _0xba8ef6!==_0x3cd3b9;},'yNqxK':'main','gxOhr':function(_0x50b0cc,_0x139440){return _0x50b0cc!==_0x139440;},'malKh':'master','Giubi':function(_0x441edd,_0x1a8a28){return _0x441edd(_0x1a8a28);}},_0x67d15=_0x33bd4f||process['env']['CLAUDE_SESSION_ID']||'';!_0x67d15&&(console[_0x4582c9(0x1b7)](_0x4582c9(0x1ba)),console[_0x4582c9(0x1b7)](_0x40448d[_0x4582c9(0x1bf)]),process['exit'](0x1));_0x40448d['brsuc'](disableSession,_0x67d15);const _0xc45688=_0x40448d['bRvbj'](getCurrentBranch);_0xc45688&&_0x40448d[_0x4582c9(0x1c7)](_0xc45688,_0x40448d[_0x4582c9(0x1c0)])&&_0x40448d[_0x4582c9(0x1c2)](_0xc45688,_0x40448d[_0x4582c9(0x1b6)])&&_0x40448d[_0x4582c9(0x1b9)](disableBranch,_0xc45688),_0x40448d['brsuc'](printBlock,_0x4582c9(0x1c1)+(_0xc45688&&_0x40448d['KRAvr'](_0xc45688,'main')&&_0xc45688!==_0x40448d['malKh']?_0x4582c9(0x1be)+_0xc45688+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x1d96(){const _0x463edd=['5507880nJHoHJ','1645407ckGuMG','367134sBWCBO','7VvgvzA','KRAvr','9368124CnRDyX','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','malKh','error','1883722cRZmXF','Giubi','Error:\x20No\x20session\x20ID\x20available.','11919456cltiPD','7341385golRhN','4MjcqhW','\x20and\x20branch\x20\x27','daqGE','yNqxK','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','gxOhr'];_0x1d96=function(){return _0x463edd;};return _0x1d96();}
1
+ function _0x2611(){const _0x37d635=['nGtIp','1018297TWofsr','14RLgtpS','18SpsBVH','232TKUYVj','master','72285HRhtrP','RgMzJ','59982BttgTn','2533812rFVPNZ','irMzq','1273660WAbyas','562914cZYZuW','24uqOEjV','49785pCqzJE'];_0x2611=function(){return _0x37d635;};return _0x2611();}(function(_0x1621cf,_0x1879ea){const _0x405fa8=_0x19c0,_0x497f86=_0x1621cf();while(!![]){try{const _0x4d081d=parseInt(_0x405fa8(0x1a8))/0x1+parseInt(_0x405fa8(0x1a2))/0x2*(parseInt(_0x405fa8(0x19f))/0x3)+parseInt(_0x405fa8(0x1a4))/0x4*(parseInt(_0x405fa8(0x1a6))/0x5)+parseInt(_0x405fa8(0x1a9))/0x6+-parseInt(_0x405fa8(0x1a1))/0x7*(parseInt(_0x405fa8(0x19e))/0x8)+-parseInt(_0x405fa8(0x1a3))/0x9*(parseInt(_0x405fa8(0x19c))/0xa)+parseInt(_0x405fa8(0x19d))/0xb;if(_0x4d081d===_0x1879ea)break;else _0x497f86['push'](_0x497f86['shift']());}catch(_0x37c126){_0x497f86['push'](_0x497f86['shift']());}}}(_0x2611,0xc2938));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x19c0(_0x1249f0,_0x3c47c9){_0x1249f0=_0x1249f0-0x19b;const _0x26116e=_0x2611();let _0x19c018=_0x26116e[_0x1249f0];return _0x19c018;}export async function disable(_0x59040a){const _0x524fcf=_0x19c0,_0x2b1021={'irMzq':function(_0x17cbee,_0x3dbe84){return _0x17cbee(_0x3dbe84);},'jNmJB':function(_0x296e0e){return _0x296e0e();},'rJTtp':'main','RgMzJ':function(_0x5df2a8,_0xd1c4a0){return _0x5df2a8!==_0xd1c4a0;},'nGtIp':_0x524fcf(0x1a5)},_0x37f4a0=_0x59040a||process['env']['CLAUDE_SESSION_ID']||'';!_0x37f4a0&&(console['error']('Error:\x20No\x20session\x20ID\x20available.'),console['error']('Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.'),process['exit'](0x1));_0x2b1021[_0x524fcf(0x19b)](disableSession,_0x37f4a0);const _0x4640e7=_0x2b1021['jNmJB'](getCurrentBranch);_0x4640e7&&_0x4640e7!==_0x2b1021['rJTtp']&&_0x2b1021['RgMzJ'](_0x4640e7,_0x2b1021[_0x524fcf(0x1a0)])&&disableBranch(_0x4640e7),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x4640e7&&_0x4640e7!==_0x2b1021['rJTtp']&&_0x2b1021[_0x524fcf(0x1a7)](_0x4640e7,'master')?'\x20and\x20branch\x20\x27'+_0x4640e7+'\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 +1 @@
1
- (function(_0xfbd7fa,_0x391a05){const _0x23a8c2=_0x24ba,_0x5db507=_0xfbd7fa();while(!![]){try{const _0x36f595=-parseInt(_0x23a8c2(0x192))/0x1+parseInt(_0x23a8c2(0x188))/0x2*(-parseInt(_0x23a8c2(0x193))/0x3)+parseInt(_0x23a8c2(0x18e))/0x4+parseInt(_0x23a8c2(0x1a0))/0x5*(parseInt(_0x23a8c2(0x18b))/0x6)+-parseInt(_0x23a8c2(0x18d))/0x7+parseInt(_0x23a8c2(0x19e))/0x8*(-parseInt(_0x23a8c2(0x191))/0x9)+parseInt(_0x23a8c2(0x195))/0xa;if(_0x36f595===_0x391a05)break;else _0x5db507['push'](_0x5db507['shift']());}catch(_0x5e4dbb){_0x5db507['push'](_0x5db507['shift']());}}}(_0x29d8,0x58d09));function _0x29d8(){const _0x4d8c8f=['ranger\x20setup\x20--opencode','YWdTr','423204bXAteU','noCMj','4164825WjXHLA','2418048dmLgns','#\x20RANGER\x20ENABLED','error','3005523SOWcIs','630917qOcaLy','215394rRgtSu','ranger\x20setup','7561040vwjCIW','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','exit','master','gDWhY','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','fcGTp','env','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','8kHODFo','tLvGx','45ZUhyZT','AfIPp','#\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`','2EZIFuk'];_0x29d8=function(){return _0x4d8c8f;};return _0x29d8();}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x24ba(_0x585ab6,_0x4bd0a6){_0x585ab6=_0x585ab6-0x188;const _0x29d872=_0x29d8();let _0x24ba00=_0x29d872[_0x585ab6];return _0x24ba00;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x2c86f5){const _0xffcb8a=_0x24ba,_0x4e12a5={'AfIPp':function(_0x3f28af,_0x260124){return _0x3f28af(_0x260124);},'tLvGx':function(_0xc3059a){return _0xc3059a();},'noCMj':_0xffcb8a(0x19a),'fcGTp':function(_0x1bca40,_0x1ad2b4){return _0x1bca40!==_0x1ad2b4;},'gDWhY':_0xffcb8a(0x198),'YWdTr':function(_0x7cfe66){return _0x7cfe66();},'jMLRb':function(_0x2e3cab,_0x1dbfc5){return _0x2e3cab(_0x1dbfc5);}},_0x217a28=_0x2c86f5||process[_0xffcb8a(0x19c)]['CLAUDE_SESSION_ID']||'';!_0x217a28&&(console['error']('Error:\x20No\x20session\x20ID\x20available.'),console[_0xffcb8a(0x190)]('Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.'),process[_0xffcb8a(0x197)](0x1));const _0x26cd65=_0x4e12a5['AfIPp'](Boolean,_0x2c86f5),_0x29fecf=await _0x4e12a5[_0xffcb8a(0x19f)](getToken);if(!_0x29fecf){const _0x3cb5c5=_0x26cd65?_0xffcb8a(0x189):_0xffcb8a(0x194),_0x40c42d=_0x26cd65?_0x4e12a5[_0xffcb8a(0x18c)]:'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x4e12a5[_0xffcb8a(0x1a1)](printBlock,_0xffcb8a(0x1a2)+_0x3cb5c5+_0xffcb8a(0x196)+_0x40c42d);return;}try{await update();}catch{}enableSession(_0x217a28);const _0x309081=_0x4e12a5['tLvGx'](getCurrentBranch),_0x3e7e91=_0x309081&&_0x4e12a5['fcGTp'](_0x309081,'main')&&_0x4e12a5[_0xffcb8a(0x19b)](_0x309081,_0x4e12a5[_0xffcb8a(0x199)])?'\x0a\x0a**Branch\x20\x27'+_0x309081+_0xffcb8a(0x19d):'',_0x5264a5=_0x4e12a5[_0xffcb8a(0x18a)](getRangerSkillContent);_0x4e12a5['jMLRb'](printBlock,_0xffcb8a(0x18f)+_0x3e7e91+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x5264a5+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
1
+ (function(_0x52e330,_0x47266f){const _0xb451ba=_0x1bd5,_0x57567c=_0x52e330();while(!![]){try{const _0x100984=parseInt(_0xb451ba(0x145))/0x1*(parseInt(_0xb451ba(0x159))/0x2)+parseInt(_0xb451ba(0x14f))/0x3*(parseInt(_0xb451ba(0x155))/0x4)+-parseInt(_0xb451ba(0x15e))/0x5*(-parseInt(_0xb451ba(0x15b))/0x6)+-parseInt(_0xb451ba(0x150))/0x7*(-parseInt(_0xb451ba(0x14b))/0x8)+-parseInt(_0xb451ba(0x147))/0x9*(parseInt(_0xb451ba(0x154))/0xa)+-parseInt(_0xb451ba(0x149))/0xb*(-parseInt(_0xb451ba(0x14d))/0xc)+-parseInt(_0xb451ba(0x14e))/0xd;if(_0x100984===_0x47266f)break;else _0x57567c['push'](_0x57567c['shift']());}catch(_0x48f1a9){_0x57567c['push'](_0x57567c['shift']());}}}(_0x5950,0x8dedd));function _0x1bd5(_0x12dc15,_0x21979f){_0x12dc15=_0x12dc15-0x144;const _0x5950a4=_0x5950();let _0x1bd5ee=_0x5950a4[_0x12dc15];return _0x1bd5ee;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0xd93b21){const _0x535659=_0x1bd5,_0x4b27b8={'rCMHw':function(_0x46cc9e,_0x4c1c0d){return _0x46cc9e(_0x4c1c0d);},'qucrL':_0x535659(0x144),'WebjF':_0x535659(0x153),'hPrgB':function(_0x5666e7,_0x5e67b8){return _0x5666e7(_0x5e67b8);},'JbJmc':function(_0x47fb0c,_0x32164b){return _0x47fb0c(_0x32164b);},'VEKWN':function(_0x55a81c,_0x1db8c0){return _0x55a81c!==_0x1db8c0;},'IkTGv':'master'},_0x264c5e=_0xd93b21||process[_0x535659(0x156)][_0x535659(0x15a)]||'';!_0x264c5e&&(console['error']('Error:\x20No\x20session\x20ID\x20available.'),console['error']('Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.'),process[_0x535659(0x157)](0x1));const _0x311c61=_0x4b27b8['rCMHw'](Boolean,_0xd93b21),_0x22ea9e=await getToken();if(!_0x22ea9e){const _0x379adf=_0x311c61?_0x4b27b8[_0x535659(0x148)]:_0x4b27b8['WebjF'],_0xd804f=_0x311c61?_0x535659(0x15c):'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x4b27b8[_0x535659(0x151)](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`'+_0x379adf+_0x535659(0x158)+_0xd804f);return;}try{await update();}catch{}_0x4b27b8[_0x535659(0x14c)](enableSession,_0x264c5e);const _0x55d645=getCurrentBranch(),_0x62fb31=_0x55d645&&_0x55d645!=='main'&&_0x4b27b8[_0x535659(0x152)](_0x55d645,_0x4b27b8[_0x535659(0x14a)])?'\x0a\x0a**Branch\x20\x27'+_0x55d645+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x15ba82=getRangerSkillContent();printBlock(_0x535659(0x15d)+_0x62fb31+_0x535659(0x146)+_0x15ba82+'\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`.');}function _0x5950(){const _0x269509=['Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','#\x20RANGER\x20ENABLED','1099145KkFeVQ','ranger\x20setup\x20--opencode','677aXzMvF','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','11835YhDIkB','qucrL','1085513NpSuTZ','IkTGv','1928keJTyI','JbJmc','12VjmQmk','24512462OzRvCt','339219HPZVmV','378ZFUbUM','hPrgB','VEKWN','ranger\x20setup','510Ycpdpm','24AYMldb','env','exit','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','2554ZQefWJ','CLAUDE_SESSION_ID','24lxNvrW'];_0x5950=function(){return _0x269509;};return _0x5950();}
@@ -1 +1 @@
1
- function _0x5874(){const _0x501399=['4UHUrWQ','1076373kNGILo','===\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===','480764XGtucr','104iRCVqm','441927nPeWnx','1123301lTksGF','4809180uLxRkH','5081020RHNLxC','5052754mXNyIq'];_0x5874=function(){return _0x501399;};return _0x5874();}function _0x3733(_0x453318,_0x1cab04){_0x453318=_0x453318-0x1c7;const _0x5874a9=_0x5874();let _0x373382=_0x5874a9[_0x453318];return _0x373382;}(function(_0x4ea9f1,_0x22bb14){const _0x2a9d4c=_0x3733,_0x1a294b=_0x4ea9f1();while(!![]){try{const _0x3cfff6=-parseInt(_0x2a9d4c(0x1cc))/0x1+-parseInt(_0x2a9d4c(0x1c9))/0x2+parseInt(_0x2a9d4c(0x1c7))/0x3+-parseInt(_0x2a9d4c(0x1d0))/0x4*(-parseInt(_0x2a9d4c(0x1ce))/0x5)+-parseInt(_0x2a9d4c(0x1cd))/0x6+parseInt(_0x2a9d4c(0x1cf))/0x7+-parseInt(_0x2a9d4c(0x1ca))/0x8*(-parseInt(_0x2a9d4c(0x1cb))/0x9);if(_0x3cfff6===_0x22bb14)break;else _0x1a294b['push'](_0x1a294b['shift']());}catch(_0xc46237){_0x1a294b['push'](_0x1a294b['shift']());}}}(_0x5874,0x8b257));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x2e8d0a){const _0x4cdd2e=_0x3733,_0x20aa4b={'lQuoT':function(_0x39c958,_0xa0bac7){return _0x39c958(_0xa0bac7);}},_0x424e3d=await getEnabledSessionId(_0x2e8d0a);if(!_0x424e3d)return;_0x20aa4b['lQuoT'](printBlock,_0x4cdd2e(0x1c8));}
1
+ (function(_0x4a6817,_0x44ddec){const _0x52e2da=_0x2780,_0x3eecae=_0x4a6817();while(!![]){try{const _0x466448=-parseInt(_0x52e2da(0x1ea))/0x1*(-parseInt(_0x52e2da(0x1e7))/0x2)+parseInt(_0x52e2da(0x1ec))/0x3*(-parseInt(_0x52e2da(0x1e6))/0x4)+-parseInt(_0x52e2da(0x1e3))/0x5+-parseInt(_0x52e2da(0x1ef))/0x6*(parseInt(_0x52e2da(0x1ee))/0x7)+parseInt(_0x52e2da(0x1e5))/0x8+parseInt(_0x52e2da(0x1e9))/0x9*(-parseInt(_0x52e2da(0x1e4))/0xa)+-parseInt(_0x52e2da(0x1eb))/0xb*(-parseInt(_0x52e2da(0x1ed))/0xc);if(_0x466448===_0x44ddec)break;else _0x3eecae['push'](_0x3eecae['shift']());}catch(_0xad9b96){_0x3eecae['push'](_0x3eecae['shift']());}}}(_0x411c,0xf1d6d));import{printBlock,getEnabledSessionId}from'./output.js';function _0x2780(_0x3deab4,_0x283244){_0x3deab4=_0x3deab4-0x1e3;const _0x411cbb=_0x411c();let _0x278058=_0x411cbb[_0x3deab4];return _0x278058;}function _0x411c(){const _0x3a2200=['15CtsDLm','4740pPRxNl','8939WXRBaW','4344cNNZSe','37775RONgjQ','7767790WqcBQP','2736792OYmEmi','213000wONbhw','4XlhvNc','===\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===','18xPSQTC','540275ZTDPpK','64603AwiuxM'];_0x411c=function(){return _0x3a2200;};return _0x411c();}export async function exitPlanMode(_0x2d6393){const _0x10c4a8=_0x2780,_0x22d1b1=await getEnabledSessionId(_0x2d6393);if(!_0x22d1b1)return;printBlock(_0x10c4a8(0x1e8));}
@@ -1 +1 @@
1
- (function(_0x1c58c4,_0xdf97cf){var _0x47fd69=_0x4dac,_0x2987b6=_0x1c58c4();while(!![]){try{var _0x40cfc8=parseInt(_0x47fd69(0xb7))/0x1+parseInt(_0x47fd69(0xb6))/0x2+-parseInt(_0x47fd69(0xba))/0x3*(-parseInt(_0x47fd69(0xbb))/0x4)+-parseInt(_0x47fd69(0xb0))/0x5*(parseInt(_0x47fd69(0xb9))/0x6)+parseInt(_0x47fd69(0xb2))/0x7*(-parseInt(_0x47fd69(0xb8))/0x8)+parseInt(_0x47fd69(0xb3))/0x9*(-parseInt(_0x47fd69(0xb1))/0xa)+-parseInt(_0x47fd69(0xb5))/0xb*(-parseInt(_0x47fd69(0xb4))/0xc);if(_0x40cfc8===_0xdf97cf)break;else _0x2987b6['push'](_0x2987b6['shift']());}catch(_0x2c03b1){_0x2987b6['push'](_0x2987b6['shift']());}}}(_0x2a43,0x368b1));function _0x4dac(_0x478107,_0x57600d){_0x478107=_0x478107-0xb0;var _0x2a4346=_0x2a43();var _0x4daca0=_0x2a4346[_0x478107];return _0x4daca0;}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';function _0x2a43(){var _0x4f888b=['301SEtRmR','9CYtTqW','2694468BHlFAX','22qZfxNS','153302KXXINs','80700rvtjyo','4424GrfDOZ','1058616UqDCrO','264876YXAAdl','4bgoMpF','5ZODTnl','2710970UVwzvL'];_0x2a43=function(){return _0x4f888b;};return _0x2a43();}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 _0x5ed2(_0x5aefd2,_0x391633){_0x5aefd2=_0x5aefd2-0xd9;var _0x1a732a=_0x1a73();var _0x5ed2d0=_0x1a732a[_0x5aefd2];return _0x5ed2d0;}(function(_0x3825f3,_0x398f89){var _0x3ab6f5=_0x5ed2,_0x4af70b=_0x3825f3();while(!![]){try{var _0x4f0fec=-parseInt(_0x3ab6f5(0xe1))/0x1*(parseInt(_0x3ab6f5(0xe2))/0x2)+parseInt(_0x3ab6f5(0xe3))/0x3*(-parseInt(_0x3ab6f5(0xe0))/0x4)+-parseInt(_0x3ab6f5(0xd9))/0x5+parseInt(_0x3ab6f5(0xda))/0x6*(-parseInt(_0x3ab6f5(0xdf))/0x7)+parseInt(_0x3ab6f5(0xde))/0x8*(parseInt(_0x3ab6f5(0xdc))/0x9)+-parseInt(_0x3ab6f5(0xdb))/0xa+parseInt(_0x3ab6f5(0xdd))/0xb;if(_0x4f0fec===_0x398f89)break;else _0x4af70b['push'](_0x4af70b['shift']());}catch(_0x1b21b3){_0x4af70b['push'](_0x4af70b['shift']());}}}(_0x1a73,0x6b58f));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x1a73(){var _0x8ed58b=['17150320kMMBij','64JOMEJV','30261DAgwyH','610748KxTbln','214693imrqZa','2nEljeI','15lbhYGi','319015lcEYHi','216PHWfCf','6289700xPgusc','795492mAhmlj'];_0x1a73=function(){return _0x8ed58b;};return _0x1a73();}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 +1 @@
1
- (function(_0xd08c03,_0xf4fdce){const _0x10bcd7=_0x42c6,_0x535a76=_0xd08c03();while(!![]){try{const _0x3b53b0=-parseInt(_0x10bcd7(0x79))/0x1*(parseInt(_0x10bcd7(0x78))/0x2)+parseInt(_0x10bcd7(0x75))/0x3+-parseInt(_0x10bcd7(0x76))/0x4*(-parseInt(_0x10bcd7(0x74))/0x5)+-parseInt(_0x10bcd7(0x77))/0x6+parseInt(_0x10bcd7(0x7f))/0x7+parseInt(_0x10bcd7(0x7b))/0x8*(-parseInt(_0x10bcd7(0x7c))/0x9)+parseInt(_0x10bcd7(0x7e))/0xa;if(_0x3b53b0===_0xf4fdce)break;else _0x535a76['push'](_0x535a76['shift']());}catch(_0xbb813d){_0x535a76['push'](_0x535a76['shift']());}}}(_0x5214,0xb7012));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x1b7282){const _0x4118bf=_0x42c6;console[_0x4118bf(0x7d)](_0x1b7282);}export async function readHookInput(){const _0x1e0672=_0x42c6;let _0x4166e8='';for await(const _0x13f202 of process[_0x1e0672(0x81)]){_0x4166e8+=_0x13f202;}try{return JSON['parse'](_0x4166e8);}catch{return null;}}function _0x42c6(_0x1f00b4,_0x146156){_0x1f00b4=_0x1f00b4-0x74;const _0x5214af=_0x5214();let _0x42c672=_0x5214af[_0x1f00b4];return _0x42c672;}function _0x5214(){const _0x2023f2=['1860LAcykC','session_id','24ZWQolC','3375279AdnmLm','log','11364890IpBvkq','1149183mRJCde','rZUHy','stdin','200455OvWNEG','197271XAQjBg','104kLhUyx','2066292jNAFKr','204qVuymg'];_0x5214=function(){return _0x2023f2;};return _0x5214();}export async function getEnabledSessionId(_0x23a3da){const _0x1f604f=_0x42c6,_0x56786e={'rZUHy':function(_0x50f254,_0x175bd9){return _0x50f254(_0x175bd9);},'REjZC':function(_0x5a365b){return _0x5a365b();}};if(_0x23a3da)return _0x56786e['rZUHy'](isSessionEnabled,_0x23a3da)?_0x23a3da:null;const _0x15e84b=await _0x56786e['REjZC'](readHookInput),_0x4fb9c9=_0x15e84b?.[_0x1f604f(0x7a)];if(!_0x4fb9c9||!_0x56786e[_0x1f604f(0x80)](isSessionEnabled,_0x4fb9c9))return null;return _0x4fb9c9;}export async function getEnabledHookContext(_0x25f8b0){const _0x2072b3={'BKeiY':function(_0x603e7e,_0x4cbd69){return _0x603e7e(_0x4cbd69);}};if(_0x25f8b0){if(!_0x2072b3['BKeiY'](isSessionEnabled,_0x25f8b0))return null;return{'sessionId':_0x25f8b0,'input':{'session_id':_0x25f8b0}};}const _0x546347=await readHookInput(),_0x554bb5=_0x546347?.['session_id'];if(!_0x554bb5||!isSessionEnabled(_0x554bb5))return null;return{'sessionId':_0x554bb5,'input':_0x546347};}
1
+ (function(_0x142a9a,_0x47263c){const _0x49dcd3=_0x1612,_0x3c86ac=_0x142a9a();while(!![]){try{const _0x4388c2=-parseInt(_0x49dcd3(0x199))/0x1*(-parseInt(_0x49dcd3(0x190))/0x2)+-parseInt(_0x49dcd3(0x191))/0x3+parseInt(_0x49dcd3(0x18c))/0x4*(parseInt(_0x49dcd3(0x198))/0x5)+-parseInt(_0x49dcd3(0x196))/0x6*(parseInt(_0x49dcd3(0x193))/0x7)+-parseInt(_0x49dcd3(0x18f))/0x8+-parseInt(_0x49dcd3(0x194))/0x9+parseInt(_0x49dcd3(0x195))/0xa*(parseInt(_0x49dcd3(0x192))/0xb);if(_0x4388c2===_0x47263c)break;else _0x3c86ac['push'](_0x3c86ac['shift']());}catch(_0x3c48d1){_0x3c86ac['push'](_0x3c86ac['shift']());}}}(_0x2e1d,0x363a2));function _0x2e1d(){const _0x4c5cc5=['log','4NYKzpU','session_id','stdin','1393640fQvxsG','6QIMcKL','1263219PYcoLb','19283guIgKH','4291qxjLUl','3386538lfNdZu','5530xCgLXy','2100rxBExT','KrDJb','1763890NknIyf','28679LRKmVq'];_0x2e1d=function(){return _0x4c5cc5;};return _0x2e1d();}function _0x1612(_0x3d8583,_0x207642){_0x3d8583=_0x3d8583-0x18b;const _0x2e1d60=_0x2e1d();let _0x1612dd=_0x2e1d60[_0x3d8583];return _0x1612dd;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x38e904){const _0x418fee=_0x1612;console[_0x418fee(0x18b)](_0x38e904);}export async function readHookInput(){const _0x239879=_0x1612;let _0x16279b='';for await(const _0x5043f4 of process[_0x239879(0x18e)]){_0x16279b+=_0x5043f4;}try{return JSON['parse'](_0x16279b);}catch{return null;}}export async function getEnabledSessionId(_0x16e77d){const _0x447b09=_0x1612,_0x583dea={'GoBsQ':function(_0x48f00f,_0x2b13cb){return _0x48f00f(_0x2b13cb);},'eidGo':function(_0xac0729,_0x2134ce){return _0xac0729(_0x2134ce);}};if(_0x16e77d)return _0x583dea['GoBsQ'](isSessionEnabled,_0x16e77d)?_0x16e77d:null;const _0x11c27f=await readHookInput(),_0x1bbf72=_0x11c27f?.[_0x447b09(0x18d)];if(!_0x1bbf72||!_0x583dea['eidGo'](isSessionEnabled,_0x1bbf72))return null;return _0x1bbf72;}export async function getEnabledHookContext(_0x3dbbb){const _0x26d417=_0x1612,_0x1da6a6={'KrDJb':function(_0xbe7143,_0x24f6b1){return _0xbe7143(_0x24f6b1);}};if(_0x3dbbb){if(!_0x1da6a6[_0x26d417(0x197)](isSessionEnabled,_0x3dbbb))return null;return{'sessionId':_0x3dbbb,'input':{'session_id':_0x3dbbb}};}const _0x41ed82=await readHookInput(),_0x3638d3=_0x41ed82?.[_0x26d417(0x18d)];if(!_0x3638d3||!_0x1da6a6['KrDJb'](isSessionEnabled,_0x3638d3))return null;return{'sessionId':_0x3638d3,'input':_0x41ed82};}
@@ -1 +1 @@
1
- (function(_0x31e7f2,_0x44f77e){const _0x12d16e=_0x4f49,_0x2ddcb1=_0x31e7f2();while(!![]){try{const _0x34bce0=-parseInt(_0x12d16e(0x11f))/0x1+parseInt(_0x12d16e(0x121))/0x2+parseInt(_0x12d16e(0x11c))/0x3*(parseInt(_0x12d16e(0x11d))/0x4)+-parseInt(_0x12d16e(0x119))/0x5+parseInt(_0x12d16e(0x11a))/0x6*(parseInt(_0x12d16e(0x120))/0x7)+parseInt(_0x12d16e(0x11b))/0x8+-parseInt(_0x12d16e(0x11e))/0x9;if(_0x34bce0===_0x44f77e)break;else _0x2ddcb1['push'](_0x2ddcb1['shift']());}catch(_0x8240c4){_0x2ddcb1['push'](_0x2ddcb1['shift']());}}}(_0x31b0,0x98a6f));import{printBlock,getEnabledHookContext}from'./output.js';function _0x31b0(){const _0x456f1a=['504866pktcTn','permission_mode','1607730TBxZfT','1246698BOfFRK','2800272eOZSZS','3lkqjhi','2238664RgjJFd','1610856IlSyml','244123SpeCeh','7wRZbgL'];_0x31b0=function(){return _0x456f1a;};return _0x31b0();}function _0x4f49(_0x5f5323,_0x18ced2){_0x5f5323=_0x5f5323-0x119;const _0x31b0fd=_0x31b0();let _0x4f4922=_0x31b0fd[_0x5f5323];return _0x4f4922;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x41082e){const _0x2e4eb6=_0x4f49,_0x202f3c={'PXpMA':function(_0x1750e3,_0x240d70){return _0x1750e3(_0x240d70);}},_0x5183ac=await _0x202f3c['PXpMA'](getEnabledHookContext,_0x41082e);if(!_0x5183ac)return;if(_0x5183ac['input'][_0x2e4eb6(0x122)]!=='plan')return;if(!shouldShowPlanReminder(_0x5183ac['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===');}
1
+ (function(_0x3d7aa1,_0x2ff458){const _0x5b6074=_0x5ba8,_0x2e76b8=_0x3d7aa1();while(!![]){try{const _0x523ca8=-parseInt(_0x5b6074(0xcc))/0x1*(parseInt(_0x5b6074(0xca))/0x2)+-parseInt(_0x5b6074(0xcd))/0x3+parseInt(_0x5b6074(0xd3))/0x4*(parseInt(_0x5b6074(0xd1))/0x5)+-parseInt(_0x5b6074(0xc9))/0x6+parseInt(_0x5b6074(0xd2))/0x7+-parseInt(_0x5b6074(0xc8))/0x8+parseInt(_0x5b6074(0xd4))/0x9*(parseInt(_0x5b6074(0xd0))/0xa);if(_0x523ca8===_0x2ff458)break;else _0x2e76b8['push'](_0x2e76b8['shift']());}catch(_0x4d6f13){_0x2e76b8['push'](_0x2e76b8['shift']());}}}(_0x49d1,0x9bd88));function _0x5ba8(_0x1f9009,_0x42e9ce){_0x1f9009=_0x1f9009-0xc7;const _0x49d14e=_0x49d1();let _0x5ba8a0=_0x49d14e[_0x1f9009];return _0x5ba8a0;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x49d1(){const _0x24d7f8=['2402148mIBlKh','27iTuWKK','sessionId','4409872IYHekl','4616382WhxBQr','6hgLOns','qfheA','68097qAsacB','3051495mYhvty','===\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===','plan','2991460EsfAsp','10mZpyiq','7573433vBzllU'];_0x49d1=function(){return _0x24d7f8;};return _0x49d1();}export async function planReminder(_0x20e893){const _0x35cf31=_0x5ba8,_0x181ca7={'qfheA':_0x35cf31(0xcf)},_0x43644d=await getEnabledHookContext(_0x20e893);if(!_0x43644d)return;if(_0x43644d['input']['permission_mode']!==_0x181ca7[_0x35cf31(0xcb)])return;if(!shouldShowPlanReminder(_0x43644d[_0x35cf31(0xc7)]))return;printBlock(_0x35cf31(0xce));}
@@ -1 +1 @@
1
- function _0x5386(_0xbec180,_0x2be8c9){_0xbec180=_0xbec180-0xff;const _0x26ea2d=_0x26ea();let _0x53864c=_0x26ea2d[_0xbec180];return _0x53864c;}(function(_0x37e400,_0x345388){const _0x51a22f=_0x5386,_0x5729c4=_0x37e400();while(!![]){try{const _0x337252=parseInt(_0x51a22f(0x106))/0x1+parseInt(_0x51a22f(0x101))/0x2+-parseInt(_0x51a22f(0x107))/0x3*(-parseInt(_0x51a22f(0x100))/0x4)+-parseInt(_0x51a22f(0x103))/0x5+-parseInt(_0x51a22f(0xff))/0x6+-parseInt(_0x51a22f(0x104))/0x7+parseInt(_0x51a22f(0x105))/0x8*(parseInt(_0x51a22f(0x102))/0x9);if(_0x337252===_0x345388)break;else _0x5729c4['push'](_0x5729c4['shift']());}catch(_0x4e1d69){_0x5729c4['push'](_0x5729c4['shift']());}}}(_0x26ea,0x1e607));import{printBlock,getEnabledSessionId}from'./output.js';function _0x26ea(){const _0x5900e2=['1094702FfjJRl','990064RFNiEV','168319rKfbGt','6hOrKNP','1177278bSYTUa','17212JGsSey','68966jEmrEk','27ySDlNR','528300ixkuyf'];_0x26ea=function(){return _0x5900e2;};return _0x26ea();}export async function planStart(_0x3ea887){const _0x1008e9={'VFdJM':function(_0x2c1db0,_0xb906dc){return _0x2c1db0(_0xb906dc);}},_0x3a50ef=await getEnabledSessionId(_0x3ea887);if(!_0x3a50ef)return;_0x1008e9['VFdJM'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
1
+ (function(_0xbbbcdf,_0x9f5679){const _0x1ee152=_0x51dd,_0xdfe7b9=_0xbbbcdf();while(!![]){try{const _0x3e7f27=parseInt(_0x1ee152(0x193))/0x1*(parseInt(_0x1ee152(0x192))/0x2)+-parseInt(_0x1ee152(0x194))/0x3+parseInt(_0x1ee152(0x198))/0x4*(parseInt(_0x1ee152(0x195))/0x5)+-parseInt(_0x1ee152(0x196))/0x6+-parseInt(_0x1ee152(0x18e))/0x7*(-parseInt(_0x1ee152(0x190))/0x8)+parseInt(_0x1ee152(0x191))/0x9+parseInt(_0x1ee152(0x18f))/0xa;if(_0x3e7f27===_0x9f5679)break;else _0xdfe7b9['push'](_0xdfe7b9['shift']());}catch(_0x5b8a9e){_0xdfe7b9['push'](_0xdfe7b9['shift']());}}}(_0x4ac4,0x7472c));import{printBlock,getEnabledSessionId}from'./output.js';function _0x51dd(_0x346841,_0x549b52){_0x346841=_0x346841-0x18e;const _0x4ac467=_0x4ac4();let _0x51dd1c=_0x4ac467[_0x346841];return _0x51dd1c;}function _0x4ac4(){const _0x4c352f=['819161pkwCdV','4999970zwbjTt','16qZoIRs','4650669RymKtL','2sGbfeO','212961QjimWA','2284878BwdCNT','465StWgAa','4053834yXEQgz','===\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===','19376QJjyqj'];_0x4ac4=function(){return _0x4c352f;};return _0x4ac4();}export async function planStart(_0x1277ad){const _0x1246c6=_0x51dd,_0x57de7e={'GJSfX':function(_0x104976,_0x32347c){return _0x104976(_0x32347c);}},_0xd9338a=await getEnabledSessionId(_0x1277ad);if(!_0xd9338a)return;_0x57de7e['GJSfX'](printBlock,_0x1246c6(0x197));}
@@ -1 +1 @@
1
- (function(_0x46034a,_0xe2769c){const _0x5600ef=_0x90df,_0x5271f5=_0x46034a();while(!![]){try{const _0x37b439=parseInt(_0x5600ef(0xc2))/0x1+-parseInt(_0x5600ef(0xc4))/0x2+-parseInt(_0x5600ef(0xc1))/0x3*(parseInt(_0x5600ef(0xcb))/0x4)+parseInt(_0x5600ef(0xc8))/0x5*(-parseInt(_0x5600ef(0xc7))/0x6)+parseInt(_0x5600ef(0xcc))/0x7+parseInt(_0x5600ef(0xc5))/0x8*(parseInt(_0x5600ef(0xc0))/0x9)+-parseInt(_0x5600ef(0xca))/0xa*(-parseInt(_0x5600ef(0xc3))/0xb);if(_0x37b439===_0xe2769c)break;else _0x5271f5['push'](_0x5271f5['shift']());}catch(_0x5b2f17){_0x5271f5['push'](_0x5271f5['shift']());}}}(_0x11fc,0x403fe));function _0x11fc(){const _0x213e66=['217089LxoNYs','3JKaTNs','50111YsgyIe','15136PlXlem','948288SFIZuS','40FnnJjT','stringify','1560012iGDgfJ','5mVzBDi','log','7420ZacoIA','965384GbJRQd','328650bBXnPT'];_0x11fc=function(){return _0x213e66;};return _0x11fc();}function _0x90df(_0x4b7a11,_0x1a2058){_0x4b7a11=_0x4b7a11-0xc0;const _0x11fc20=_0x11fc();let _0x90df2a=_0x11fc20[_0x4b7a11];return _0x90df2a;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x52d0e1){const _0x446519=_0x90df,_0x21b484={'bCiSe':function(_0x391fc1,_0xc4173c){return _0x391fc1(_0xc4173c);},'Gbtrt':function(_0x31b094){return _0x31b094();}},_0x258f86=await _0x21b484['bCiSe'](getEnabledSessionId,_0x52d0e1);if(!_0x258f86)return;updateBranchTracking(_0x258f86);const _0x34fff5=await _0x21b484['Gbtrt'](getToken);if(!_0x34fff5)return;const _0x8121ce=getSessionEntry(_0x258f86);if(_0x8121ce){const _0x2ac2d8={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console[_0x446519(0xc9)](JSON[_0x446519(0xc6)](_0x2ac2d8));return;}const _0x2ceed4={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console[_0x446519(0xc9)](JSON['stringify'](_0x2ceed4));}
1
+ (function(_0x431363,_0x584f0a){const _0x460b3f=_0x4b3b,_0x65373=_0x431363();while(!![]){try{const _0x5861a0=parseInt(_0x460b3f(0x161))/0x1+parseInt(_0x460b3f(0x15e))/0x2*(-parseInt(_0x460b3f(0x15c))/0x3)+parseInt(_0x460b3f(0x159))/0x4+parseInt(_0x460b3f(0x162))/0x5*(parseInt(_0x460b3f(0x15a))/0x6)+parseInt(_0x460b3f(0x166))/0x7+parseInt(_0x460b3f(0x163))/0x8+parseInt(_0x460b3f(0x164))/0x9*(-parseInt(_0x460b3f(0x160))/0xa);if(_0x5861a0===_0x584f0a)break;else _0x65373['push'](_0x65373['shift']());}catch(_0x19f326){_0x65373['push'](_0x65373['shift']());}}}(_0x14a8,0x76191));function _0x14a8(){const _0x170742=['5VcfVlc','3055576VApuvi','225pWhbrj','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).','1727271zaEAhy','PostToolUse','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.','3499964tHZPPy','5528118ACZSii','SESeH','3nHmtlw','stringify','566378zKBxqR','log','818060hhDxDC','387024JcwohC'];_0x14a8=function(){return _0x170742;};return _0x14a8();}function _0x4b3b(_0x1a683c,_0x420490){_0x1a683c=_0x1a683c-0x159;const _0x14a8ea=_0x14a8();let _0x4b3b14=_0x14a8ea[_0x1a683c];return _0x4b3b14;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x2e0c2c){const _0x4cf77d=_0x4b3b,_0x7c90a6={'SESeH':function(_0x1f8d45,_0x1ac347){return _0x1f8d45(_0x1ac347);},'kXPTa':_0x4cf77d(0x167)},_0x3bc1bf=await getEnabledSessionId(_0x2e0c2c);if(!_0x3bc1bf)return;updateBranchTracking(_0x3bc1bf);const _0x1e08f6=await getToken();if(!_0x1e08f6)return;const _0x45bfd8=_0x7c90a6[_0x4cf77d(0x15b)](getSessionEntry,_0x3bc1bf);if(_0x45bfd8){const _0x223297={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x4cf77d(0x165)}};console[_0x4cf77d(0x15f)](JSON[_0x4cf77d(0x15d)](_0x223297));return;}const _0x45634b={'hookSpecificOutput':{'hookEventName':_0x7c90a6['kXPTa'],'additionalContext':_0x4cf77d(0x168)}};console['log'](JSON['stringify'](_0x45634b));}
@@ -1 +1 @@
1
- function _0x5caf(_0x10f720,_0x3d821b){_0x10f720=_0x10f720-0x9e;const _0x54487a=_0x5448();let _0x5cafad=_0x54487a[_0x10f720];return _0x5cafad;}(function(_0x3c4784,_0x12f498){const _0x203a6c=_0x5caf,_0xcda491=_0x3c4784();while(!![]){try{const _0x5c50e5=-parseInt(_0x203a6c(0xa2))/0x1*(parseInt(_0x203a6c(0xa8))/0x2)+parseInt(_0x203a6c(0xa3))/0x3+parseInt(_0x203a6c(0xa7))/0x4*(parseInt(_0x203a6c(0xa5))/0x5)+-parseInt(_0x203a6c(0xa9))/0x6+parseInt(_0x203a6c(0x9e))/0x7*(-parseInt(_0x203a6c(0xa6))/0x8)+parseInt(_0x203a6c(0xa4))/0x9+parseInt(_0x203a6c(0x9f))/0xa*(parseInt(_0x203a6c(0xa1))/0xb);if(_0x5c50e5===_0x12f498)break;else _0xcda491['push'](_0xcda491['shift']());}catch(_0x171c1f){_0xcda491['push'](_0xcda491['shift']());}}}(_0x5448,0x21c26));function _0x5448(){const _0x1e3654=['2177FgGOIE','20SnZjTQ','===\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`.','970750eAcoDp','219787prKcPu','547806ZrwUej','999531EDCAQe','5jHUygO','304VOURns','121484bBCJbS','2kIGfsG','783894zSzlEA'];_0x5448=function(){return _0x1e3654;};return _0x5448();}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x410e01){const _0x2679bc=_0x5caf,_0x275d65={'CeIKi':function(_0x2b312d,_0x51ee26){return _0x2b312d(_0x51ee26);},'KdxXo':function(_0x491715){return _0x491715();}},_0xa7d0c3=await _0x275d65['CeIKi'](getEnabledSessionId,_0x410e01);if(!_0xa7d0c3)return;try{const _0x4223bb=await _0x275d65['KdxXo'](getToken);if(!_0x4223bb)return;printBlock(_0x2679bc(0xa0));}catch{}}
1
+ function _0x5c56(_0x43d33f,_0x69d771){_0x43d33f=_0x43d33f-0x1b4;const _0xebe7c5=_0xebe7();let _0x5c5656=_0xebe7c5[_0x43d33f];return _0x5c5656;}(function(_0x48c0e6,_0x3196a2){const _0x131394=_0x5c56,_0x318c95=_0x48c0e6();while(!![]){try{const _0x9bd009=-parseInt(_0x131394(0x1b9))/0x1+-parseInt(_0x131394(0x1b4))/0x2+parseInt(_0x131394(0x1b6))/0x3*(-parseInt(_0x131394(0x1ba))/0x4)+parseInt(_0x131394(0x1bb))/0x5+parseInt(_0x131394(0x1bc))/0x6+parseInt(_0x131394(0x1b8))/0x7*(parseInt(_0x131394(0x1b7))/0x8)+-parseInt(_0x131394(0x1b5))/0x9;if(_0x9bd009===_0x3196a2)break;else _0x318c95['push'](_0x318c95['shift']());}catch(_0x5496d){_0x318c95['push'](_0x318c95['shift']());}}}(_0xebe7,0x5c0cc));function _0xebe7(){const _0x5d5dc7=['24JbgaMw','3555735WvQyYO','753312CkVkpk','259454VXyTIw','2520612ysBcYa','160761dQGPKr','235632pwdYnL','77kAbVrV','52340LwQXvi'];_0xebe7=function(){return _0x5d5dc7;};return _0xebe7();}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x11d4b8){const _0x2db4f6={'GEVFE':function(_0x56fd85){return _0x56fd85();}},_0x156d83=await getEnabledSessionId(_0x11d4b8);if(!_0x156d83)return;try{const _0x6c2d06=await _0x2db4f6['GEVFE'](getToken);if(!_0x6c2d06)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 _0x1071(){const _0x42ee64=['wUNEB','4273rWFExX','470viwOqC','256974nfkqYU','10PNqOVn','29316MgLQpS','BfBIU','session_id','225995oruHbs','7839pXZOZf','1279656XZWlto','3TTGotV','500416LYSpTc','38GJyfGP'];_0x1071=function(){return _0x42ee64;};return _0x1071();}(function(_0x275982,_0x336554){const _0x2fbf46=_0x1c94,_0x5de8c3=_0x275982();while(!![]){try{const _0x30625b=parseInt(_0x2fbf46(0x160))/0x1*(parseInt(_0x2fbf46(0x15e))/0x2)+parseInt(_0x2fbf46(0x15c))/0x3*(parseInt(_0x2fbf46(0x164))/0x4)+-parseInt(_0x2fbf46(0x163))/0x5*(-parseInt(_0x2fbf46(0x162))/0x6)+parseInt(_0x2fbf46(0x15d))/0x7+-parseInt(_0x2fbf46(0x15b))/0x8+parseInt(_0x2fbf46(0x15a))/0x9*(parseInt(_0x2fbf46(0x161))/0xa)+-parseInt(_0x2fbf46(0x159))/0xb;if(_0x30625b===_0x336554)break;else _0x5de8c3['push'](_0x5de8c3['shift']());}catch(_0x454a0c){_0x5de8c3['push'](_0x5de8c3['shift']());}}}(_0x1071,0x19e71));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x1c94(_0x3ea10c,_0x58a352){_0x3ea10c=_0x3ea10c-0x157;const _0x1071a9=_0x1071();let _0x1c947e=_0x1071a9[_0x3ea10c];return _0x1c947e;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x1cd23a){const _0x49e3a0=_0x1c94,_0x2bf305={'rUize':function(_0x388b87){return _0x388b87();},'BfBIU':function(_0x17ecf6,_0x2b3700){return _0x17ecf6===_0x2b3700;},'wUNEB':'clear'};let _0x2bb141=_0x1cd23a,_0x1666f4;if(!_0x1cd23a){const _0x50ad6c=await _0x2bf305['rUize'](readHookInput);_0x2bb141=_0x50ad6c?.[_0x49e3a0(0x158)],_0x1666f4=_0x50ad6c?.['reason'];}if(!_0x2bb141)return;_0x2bf305[_0x49e3a0(0x157)](_0x1666f4,_0x2bf305[_0x49e3a0(0x15f)])&&recordEnabledSessionCleared(_0x2bb141);}
1
+ (function(_0x1f0c09,_0x525eba){const _0x440cab=_0x3a1b,_0xaa78c7=_0x1f0c09();while(!![]){try{const _0x140271=-parseInt(_0x440cab(0x175))/0x1+-parseInt(_0x440cab(0x16f))/0x2+-parseInt(_0x440cab(0x171))/0x3+parseInt(_0x440cab(0x176))/0x4+-parseInt(_0x440cab(0x174))/0x5+-parseInt(_0x440cab(0x170))/0x6*(-parseInt(_0x440cab(0x172))/0x7)+parseInt(_0x440cab(0x178))/0x8;if(_0x140271===_0x525eba)break;else _0xaa78c7['push'](_0xaa78c7['shift']());}catch(_0x41adf1){_0xaa78c7['push'](_0xaa78c7['shift']());}}}(_0x39db,0xaa1a4));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x3a1b(_0x3ad0b5,_0x56330e){_0x3ad0b5=_0x3ad0b5-0x16e;const _0x39dbde=_0x39db();let _0x3a1beb=_0x39dbde[_0x3ad0b5];return _0x3a1beb;}export async function sessionEnd(_0x3f5609){const _0x929769=_0x3a1b,_0x3b8da0={'hPduU':function(_0x12ce4c){return _0x12ce4c();}};let _0x10fa84=_0x3f5609,_0x151ac9;if(!_0x3f5609){const _0x520e43=await _0x3b8da0[_0x929769(0x16e)](readHookInput);_0x10fa84=_0x520e43?.[_0x929769(0x177)],_0x151ac9=_0x520e43?.['reason'];}if(!_0x10fa84)return;_0x151ac9===_0x929769(0x173)&&recordEnabledSessionCleared(_0x10fa84);}function _0x39db(){const _0x1742ed=['30hKrWJh','2045592CUwKDW','1755075fLFhwP','clear','6859535fzWEHD','1053492ykRWOf','3498900unJymF','session_id','15191440braCXs','hPduU','446554eaMidc'];_0x39db=function(){return _0x1742ed;};return _0x39db();}
@@ -1 +1 @@
1
- function _0x2a30(){const _0xf49158=['env','jFVVa','export\x20CLAUDE_SESSION_ID=\x22','SessionStart','428082paVwrl','CLAUDE_ENV_FILE','3870hALtrR','source','2485895wZhsjb','log','2030292MUpRXK','JTEWg','trackCommandEnd','71096pXCSSf','3353700TMJUJw','70164ckOwMQ','main','4GBqLhv','21nqeHeK','XMiZC','zOnCP','3096102JDoErw'];_0x2a30=function(){return _0xf49158;};return _0x2a30();}(function(_0x10a039,_0xbf1fca){const _0x43b1af=_0x5904,_0x25cd8c=_0x10a039();while(!![]){try{const _0x220f3f=parseInt(_0x43b1af(0x118))/0x1*(-parseInt(_0x43b1af(0x10b))/0x2)+-parseInt(_0x43b1af(0x11c))/0x3+-parseInt(_0x43b1af(0x111))/0x4+parseInt(_0x43b1af(0x10f))/0x5+-parseInt(_0x43b1af(0x115))/0x6+parseInt(_0x43b1af(0x119))/0x7*(-parseInt(_0x43b1af(0x114))/0x8)+-parseInt(_0x43b1af(0x116))/0x9*(-parseInt(_0x43b1af(0x10d))/0xa);if(_0x220f3f===_0xbf1fca)break;else _0x25cd8c['push'](_0x25cd8c['shift']());}catch(_0x1a0855){_0x25cd8c['push'](_0x25cd8c['shift']());}}}(_0x2a30,0x82171));import{appendFile}from'fs/promises';function _0x5904(_0x30b1f2,_0xad9cac){_0x30b1f2=_0x30b1f2-0x109;const _0x2a30b6=_0x2a30();let _0x5904df=_0x2a30b6[_0x30b1f2];return _0x5904df;}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';export async function sessionStart(_0x199ddc){const _0x400c81=_0x5904,_0x179e68={'VtXKX':'session_id','zOnCP':function(_0x528625,_0x17c3ae,_0x3ac87c){return _0x528625(_0x17c3ae,_0x3ac87c);},'lsTUH':function(_0x4556c6,_0xd5b7a0){return _0x4556c6(_0xd5b7a0);},'UKiNs':'hook:session-start','aegMM':function(_0x13bf55,_0x5844e6){return _0x13bf55!==_0x5844e6;},'JTEWg':function(_0x2f78b0,_0x24e2e8){return _0x2f78b0!==_0x24e2e8;},'jFVVa':'master','XMiZC':_0x400c81(0x10a)};let _0x5b72a4=_0x199ddc||'',_0xd4b486;if(!_0x199ddc){let _0x45471f='';for await(const _0x5d3ccb of process['stdin']){_0x45471f+=_0x5d3ccb;}try{const _0x3e182f=JSON['parse'](_0x45471f);_0x5b72a4=_0x3e182f[_0x179e68['VtXKX']]||'',_0xd4b486=_0x3e182f[_0x400c81(0x10e)];}catch{}const _0x4449b0=process[_0x400c81(0x11d)][_0x400c81(0x10c)];if(_0x4449b0&&_0x5b72a4)try{await _0x179e68[_0x400c81(0x11b)](appendFile,_0x4449b0,_0x400c81(0x109)+_0x5b72a4+'\x22\x0a');}catch{}}if(_0x5b72a4){shouldAutoEnableAfterClear(_0xd4b486)&&autoEnableAfterClear(_0x5b72a4);initBranchTracking(_0x5b72a4);const _0x333ad0=_0x179e68['lsTUH'](isSessionEnabled,_0x5b72a4);try{const _0x4ae639=createTelemetryCollector(_0x179e68['UKiNs']);await _0x4ae639['trackCommandStart']({'sessionId':_0x5b72a4,'hooksEnabled':_0x333ad0}),await _0x4ae639[_0x400c81(0x113)]('success');}catch{}if(_0x333ad0){const _0x2cbeed=getCurrentBranch(),_0x24a265=_0x2cbeed&&_0x179e68['aegMM'](_0x2cbeed,_0x400c81(0x117))&&_0x179e68[_0x400c81(0x112)](_0x2cbeed,_0x179e68[_0x400c81(0x11e)])?'\x20(Branch:\x20'+_0x2cbeed+')':'',_0x1b8cf4={'hookSpecificOutput':{'hookEventName':_0x179e68[_0x400c81(0x11a)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x24a265}};console[_0x400c81(0x110)](JSON['stringify'](_0x1b8cf4));}}}
1
+ function _0x2223(_0x9ff40a,_0x4e63e0){_0x9ff40a=_0x9ff40a-0x172;const _0x55ecff=_0x55ec();let _0x222344=_0x55ecff[_0x9ff40a];return _0x222344;}const _0x50eb6b=_0x2223;(function(_0x1002ec,_0x5dee0){const _0x1175c9=_0x2223,_0x4b5c68=_0x1002ec();while(!![]){try{const _0x655a32=parseInt(_0x1175c9(0x18a))/0x1*(-parseInt(_0x1175c9(0x17b))/0x2)+parseInt(_0x1175c9(0x18b))/0x3*(-parseInt(_0x1175c9(0x182))/0x4)+-parseInt(_0x1175c9(0x176))/0x5+-parseInt(_0x1175c9(0x178))/0x6*(-parseInt(_0x1175c9(0x172))/0x7)+-parseInt(_0x1175c9(0x185))/0x8+-parseInt(_0x1175c9(0x17f))/0x9*(parseInt(_0x1175c9(0x179))/0xa)+parseInt(_0x1175c9(0x173))/0xb*(parseInt(_0x1175c9(0x181))/0xc);if(_0x655a32===_0x5dee0)break;else _0x4b5c68['push'](_0x4b5c68['shift']());}catch(_0x4ff105){_0x4b5c68['push'](_0x4b5c68['shift']());}}}(_0x55ec,0xcd2fc));import{appendFile}from'fs/promises';function _0x55ec(){const _0x3360f4=['env','31835712vnPEYN','40kKxOLT','master','log','625160BDQpKT','yfnWc','export\x20CLAUDE_SESSION_ID=\x22','trackCommandStart','kgIGF','260527dCzsLI','312999AWZiNJ','stdin','27853EfOBjD','11tnKFbj','=================================================================\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=================================================================','ipSLw','6240855SxHOSB','\x20(Branch:\x20','1524OrfSks','1930250EtepUD','SessionStart','2oqDEyb','xwrIs','Xmqul','hook:session-start','9UajiaV'];_0x55ec=function(){return _0x3360f4;};return _0x55ec();}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT=_0x50eb6b(0x174);export async function sessionStart(_0x4ae0be){const _0x4b495d=_0x50eb6b,_0x1b414b={'Vbuoo':'source','xwrIs':function(_0x4ddc36,_0x50a40d){return _0x4ddc36(_0x50a40d);},'alNZC':function(_0x24e6e8,_0x4b5d95){return _0x24e6e8(_0x4b5d95);},'DwXPl':'success','kgIGF':function(_0x4edda4,_0x503d36){return _0x4edda4!==_0x503d36;},'yfnWc':_0x4b495d(0x183),'Xmqul':_0x4b495d(0x17a),'ipSLw':function(_0x57365b,_0x3cad84){return _0x57365b+_0x3cad84;}};let _0x333f31=_0x4ae0be||'',_0x3b5394;if(!_0x4ae0be){let _0x482049='';for await(const _0x545ac5 of process[_0x4b495d(0x18c)]){_0x482049+=_0x545ac5;}try{const _0x164114=JSON['parse'](_0x482049);_0x333f31=_0x164114['session_id']||'',_0x3b5394=_0x164114[_0x1b414b['Vbuoo']];}catch{}const _0x440c7a=process[_0x4b495d(0x180)]['CLAUDE_ENV_FILE'];if(_0x440c7a&&_0x333f31)try{await appendFile(_0x440c7a,_0x4b495d(0x187)+_0x333f31+'\x22\x0a');}catch{}}if(_0x333f31){_0x1b414b['xwrIs'](shouldAutoEnableAfterClear,_0x3b5394)&&autoEnableAfterClear(_0x333f31);_0x1b414b[_0x4b495d(0x17c)](initBranchTracking,_0x333f31);const _0x3f6ff8=isSessionEnabled(_0x333f31);try{const _0x303f5b=_0x1b414b['alNZC'](createTelemetryCollector,_0x4b495d(0x17e));await _0x303f5b[_0x4b495d(0x188)]({'sessionId':_0x333f31,'hooksEnabled':_0x3f6ff8}),await _0x303f5b['trackCommandEnd'](_0x1b414b['DwXPl']);}catch{}if(_0x3f6ff8){const _0x574764=getCurrentBranch(),_0x441c7c=_0x574764&&_0x1b414b[_0x4b495d(0x189)](_0x574764,'main')&&_0x574764!==_0x1b414b[_0x4b495d(0x186)]?_0x4b495d(0x177)+_0x574764+')':'',_0x3f2190={'hookSpecificOutput':{'hookEventName':_0x1b414b[_0x4b495d(0x17d)],'additionalContext':_0x1b414b[_0x4b495d(0x175)](RANGER_AUTO_ENABLED_PROMPT,_0x441c7c)}};console[_0x4b495d(0x184)](JSON['stringify'](_0x3f2190));}}}