@ranger-testing/ranger-cli 2.2.0 → 2.2.1

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 (67) 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/stitchWebmFiles.js +1 -1
  61. package/build/commands/utils/telemetry.js +1 -1
  62. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  63. package/build/commands/utils/userApi.js +1 -1
  64. package/build/commands/utils/version.js +1 -1
  65. package/build/commands/verifyFeature.js +1 -1
  66. package/build/commands/verifyInBrowser.js +1 -1
  67. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x38675b=_0x2e0d;(function(_0x153058,_0x58bf7c){const _0x5e1295=_0x2e0d,_0x77dcc4=_0x153058();while(!![]){try{const _0x5b1e3a=-parseInt(_0x5e1295(0x197))/0x1+parseInt(_0x5e1295(0x194))/0x2*(-parseInt(_0x5e1295(0x1a6))/0x3)+-parseInt(_0x5e1295(0x1ab))/0x4+parseInt(_0x5e1295(0x19d))/0x5+parseInt(_0x5e1295(0x199))/0x6+-parseInt(_0x5e1295(0x19c))/0x7*(parseInt(_0x5e1295(0x192))/0x8)+parseInt(_0x5e1295(0x195))/0x9*(parseInt(_0x5e1295(0x1ad))/0xa);if(_0x5b1e3a===_0x58bf7c)break;else _0x77dcc4['push'](_0x77dcc4['shift']());}catch(_0x36a734){_0x77dcc4['push'](_0x77dcc4['shift']());}}}(_0x21a8,0x44628));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 _0x21a8(){const _0x314db3=['133XqFtbO','1180935mTPoDD','sessions','environmentDetails','\x0aProfiles:','bug-bashes','reports','.txt','log','endsWith','5628sdeWrW','includes','VugDC','baseUrl','\x20\x20\x20\x20\x20\x20Details:\x20','1968620epBmKw','SFSdr','5618190PEevka','local','RdAZV','GYsRQ','push','46960gyloqs','Run:\x20ranger\x20profile\x20add\x20<profile-name>','50TyuCcd','9ohwrfj','legacy','301975PWxmRJ','\x0aNo\x20profiles\x20found.','2607948Qfsupb','hZEQm','settings.json'];_0x21a8=function(){return _0x314db3;};return _0x21a8();}function _0x2e0d(_0x339e67,_0xaff419){_0x339e67=_0x339e67-0x191;const _0x21a8f2=_0x21a8();let _0x2e0d16=_0x21a8f2[_0x339e67];return _0x2e0d16;}const NON_ENV_DIRS=[_0x38675b(0x19e),_0x38675b(0x1a1),_0x38675b(0x1a2),_0x38675b(0x1ae),'ci'];export async function getEnvNames(){const _0x332a29=_0x38675b,_0x1c8322={'DhCrN':function(_0x6a9e9f){return _0x6a9e9f();},'UlqFD':function(_0xcdcc94,_0x503a8e){return _0xcdcc94(_0x503a8e);},'SFSdr':function(_0x265939,_0x15d7bf,_0x3637bc){return _0x265939(_0x15d7bf,_0x3637bc);},'NaCpn':function(_0x2b3684,_0x330e64){return _0x2b3684(_0x330e64);},'BfvdB':function(_0x15f8dd,_0x1822db){return _0x15f8dd(_0x1822db);},'RdAZV':_0x332a29(0x19b),'hZEQm':_0x332a29(0x196)},_0x2b0eff=getRangerDir();if(!existsSync(_0x2b0eff))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x4c756=await _0x1c8322['DhCrN'](readActiveProfileName),_0x3c2fb7=[],_0x28aa5={},_0xc7eb79=join(_0x2b0eff,'local');if(_0x1c8322['UlqFD'](existsSync,_0xc7eb79)){const _0x1e7685=await readdir(_0xc7eb79);for(const _0x2f7e5d of _0x1e7685){const _0x1706b3=join(_0xc7eb79,_0x2f7e5d),_0x2d05bf=await _0x1c8322['UlqFD'](stat,_0x1706b3);_0x2d05bf['isDirectory']()&&(_0x3c2fb7['push'](_0x2f7e5d),_0x28aa5[_0x2f7e5d]=_0x332a29(0x1ae));}}const _0x22c840=_0x1c8322[_0x332a29(0x1ac)](join,_0x2b0eff,'ci');if(existsSync(_0x22c840)){const _0x21f667=await _0x1c8322['UlqFD'](readdir,_0x22c840);for(const _0x49bdd2 of _0x21f667){const _0x39ef7f=_0x1c8322['SFSdr'](join,_0x22c840,_0x49bdd2),_0x31d9db=await stat(_0x39ef7f);_0x31d9db['isDirectory']()&&(_0x3c2fb7[_0x332a29(0x191)](_0x49bdd2),_0x28aa5[_0x49bdd2]='ci');}}const _0x10de5d=await readdir(_0x2b0eff);for(const _0x7b7ac7 of _0x10de5d){if(NON_ENV_DIRS[_0x332a29(0x1a7)](_0x7b7ac7))continue;if(_0x7b7ac7['startsWith']('.'))continue;if(_0x7b7ac7[_0x332a29(0x1a5)](_0x332a29(0x1a3)))continue;const _0x54679b=join(_0x2b0eff,_0x7b7ac7),_0x15512f=await _0x1c8322['NaCpn'](stat,_0x54679b);_0x15512f['isDirectory']()&&_0x1c8322['BfvdB'](existsSync,join(_0x54679b,_0x1c8322[_0x332a29(0x1af)]))&&(!_0x3c2fb7['includes'](_0x7b7ac7)&&(_0x3c2fb7[_0x332a29(0x191)](_0x7b7ac7),_0x28aa5[_0x7b7ac7]=_0x1c8322[_0x332a29(0x19a)]));}return{'envNames':_0x3c2fb7,'activeEnv':_0x4c756,'envTypes':_0x28aa5};}export async function envList(){const _0x5a2bb6=_0x38675b,_0x50a5a2={'OFQHz':function(_0x2a8fe6){return _0x2a8fe6();},'GYsRQ':function(_0x18a504,_0x2ec2d4){return _0x18a504===_0x2ec2d4;},'hksWX':_0x5a2bb6(0x198),'xkFce':function(_0x2fdeac,_0x121020){return _0x2fdeac===_0x121020;},'VugDC':_0x5a2bb6(0x1ae)},{envNames:_0x171a17,activeEnv:_0x5ee1c4,envTypes:_0x5673bd}=await _0x50a5a2['OFQHz'](getEnvNames);if(_0x50a5a2[_0x5a2bb6(0x1b0)](_0x171a17['length'],0x0)){console['log'](_0x50a5a2['hksWX']),console[_0x5a2bb6(0x1a4)](_0x5a2bb6(0x193));return;}console['log'](_0x5a2bb6(0x1a0));for(const _0x187d48 of _0x171a17['sort']()){const _0x89ecff=_0x50a5a2['xkFce'](_0x187d48,_0x5ee1c4),_0x4e7a98=_0x5673bd[_0x187d48]||_0x50a5a2[_0x5a2bb6(0x1a8)],_0x33c95a=await loadSettings(_0x187d48),_0x1c0a08=_0x4e7a98===_0x5a2bb6(0x196)?'':'\x20['+_0x4e7a98+']';console[_0x5a2bb6(0x1a4)]('\x20\x20'+(_0x89ecff?'*\x20':'\x20\x20')+_0x187d48+_0x1c0a08),_0x33c95a[_0x5a2bb6(0x1a9)]&&console[_0x5a2bb6(0x1a4)]('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x33c95a[_0x5a2bb6(0x1a9)]),_0x33c95a[_0x5a2bb6(0x19f)]&&console[_0x5a2bb6(0x1a4)](_0x5a2bb6(0x1aa)+_0x33c95a[_0x5a2bb6(0x19f)]);}_0x5ee1c4&&console[_0x5a2bb6(0x1a4)]('\x0a*\x20=\x20active\x20profile');}
1
+ const _0x12ff75=_0x40b7;(function(_0x26f5cc,_0x586703){const _0x326737=_0x40b7,_0x45542c=_0x26f5cc();while(!![]){try{const _0x2c606c=parseInt(_0x326737(0xfb))/0x1+-parseInt(_0x326737(0xde))/0x2*(parseInt(_0x326737(0xe8))/0x3)+-parseInt(_0x326737(0xe2))/0x4*(-parseInt(_0x326737(0xdc))/0x5)+-parseInt(_0x326737(0xf1))/0x6*(-parseInt(_0x326737(0xfa))/0x7)+-parseInt(_0x326737(0xee))/0x8*(-parseInt(_0x326737(0xf5))/0x9)+-parseInt(_0x326737(0xd8))/0xa*(parseInt(_0x326737(0xe7))/0xb)+-parseInt(_0x326737(0xdf))/0xc;if(_0x2c606c===_0x586703)break;else _0x45542c['push'](_0x45542c['shift']());}catch(_0x11c5f4){_0x45542c['push'](_0x45542c['shift']());}}}(_0x5698,0xd6882));function _0x5698(){const _0xa9c3b4=['2bOWVRe','5544336fVLnSA','environmentDetails','KcppJ','228oMgysI','baseUrl','\x0aNo\x20profiles\x20found.','wNjik','settings.json','99CvGOio','4332303sYPVLG','includes','UOhGc','legacy','Falmm','length','16EMAJNz','\x20\x20\x20\x20\x20\x20URL:\x20','.txt','9816204kjkpCo','kDUhn','ylhIV','push','422199tTJFXD','sessions','log','OAATt','\x20\x20\x20\x20\x20\x20Details:\x20','7MbKfIZ','1326249yaLVJA','ZpQJi','765690jUsEOV','Run:\x20ranger\x20profile\x20add\x20<profile-name>','BqiaV','isDirectory','36655xYZymT','local'];_0x5698=function(){return _0xa9c3b4;};return _0x5698();}import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x12ff75(0xf6),'bug-bashes','reports',_0x12ff75(0xdd),'ci'];function _0x40b7(_0x1d841b,_0x258fb0){_0x1d841b=_0x1d841b-0xd8;const _0x569815=_0x5698();let _0x40b748=_0x569815[_0x1d841b];return _0x40b748;}export async function getEnvNames(){const _0x15ad52=_0x12ff75,_0x4e4f51={'ylhIV':function(_0x481607){return _0x481607();},'PQyBn':function(_0x1961de){return _0x1961de();},'Falmm':function(_0x4ee537,_0x122889,_0x253d9f){return _0x4ee537(_0x122889,_0x253d9f);},'kDUhn':_0x15ad52(0xdd),'ZpQJi':function(_0x39d3c3,_0x278a10){return _0x39d3c3(_0x278a10);},'iaefC':function(_0x4e48b0,_0x10b573,_0x3839e5){return _0x4e48b0(_0x10b573,_0x3839e5);},'DJVVn':function(_0xc16e8c,_0x2d30fe){return _0xc16e8c(_0x2d30fe);},'IROpg':_0x15ad52(0xf0),'hBlmi':function(_0x1c3dd3,_0xac8b36){return _0x1c3dd3(_0xac8b36);},'KcppJ':'legacy'},_0x54d0dd=_0x4e4f51[_0x15ad52(0xf3)](getRangerDir);if(!existsSync(_0x54d0dd))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x5ff356=await _0x4e4f51['PQyBn'](readActiveProfileName),_0x13a39d=[],_0x36c33e={},_0x5bd97f=_0x4e4f51[_0x15ad52(0xec)](join,_0x54d0dd,_0x4e4f51[_0x15ad52(0xf2)]);if(existsSync(_0x5bd97f)){const _0x2b519f=await _0x4e4f51[_0x15ad52(0xfc)](readdir,_0x5bd97f);for(const _0x3f848e of _0x2b519f){const _0x477558=join(_0x5bd97f,_0x3f848e),_0x1a7481=await stat(_0x477558);_0x1a7481[_0x15ad52(0xdb)]()&&(_0x13a39d['push'](_0x3f848e),_0x36c33e[_0x3f848e]=_0x4e4f51['kDUhn']);}}const _0x3296de=_0x4e4f51['iaefC'](join,_0x54d0dd,'ci');if(existsSync(_0x3296de)){const _0x3236b5=await readdir(_0x3296de);for(const _0x215dbb of _0x3236b5){const _0x5630cb=join(_0x3296de,_0x215dbb),_0x5966fc=await stat(_0x5630cb);_0x5966fc['isDirectory']()&&(_0x13a39d['push'](_0x215dbb),_0x36c33e[_0x215dbb]='ci');}}const _0x1cf6a2=await _0x4e4f51['DJVVn'](readdir,_0x54d0dd);for(const _0x20503b of _0x1cf6a2){if(NON_ENV_DIRS['includes'](_0x20503b))continue;if(_0x20503b['startsWith']('.'))continue;if(_0x20503b['endsWith'](_0x4e4f51['IROpg']))continue;const _0x2be357=join(_0x54d0dd,_0x20503b),_0x1b72ab=await _0x4e4f51['ZpQJi'](stat,_0x2be357);_0x1b72ab['isDirectory']()&&_0x4e4f51['hBlmi'](existsSync,join(_0x2be357,_0x15ad52(0xe6)))&&(!_0x13a39d[_0x15ad52(0xe9)](_0x20503b)&&(_0x13a39d[_0x15ad52(0xf4)](_0x20503b),_0x36c33e[_0x20503b]=_0x4e4f51[_0x15ad52(0xe1)]));}return{'envNames':_0x13a39d,'activeEnv':_0x5ff356,'envTypes':_0x36c33e};}export async function envList(){const _0x2e01ff=_0x12ff75,_0x33e90d={'LkmVt':function(_0x17ddd4,_0x3b132e){return _0x17ddd4===_0x3b132e;},'kPIuR':_0x2e01ff(0xd9),'qgZsd':'\x0aProfiles:','UOhGc':function(_0x2bd71d,_0x2e2d62){return _0x2bd71d===_0x2e2d62;},'BqiaV':'local','OAATt':function(_0x4d0057,_0x32370c){return _0x4d0057===_0x32370c;},'wNjik':_0x2e01ff(0xeb)},{envNames:_0x163904,activeEnv:_0x42cd1d,envTypes:_0x1bf4c8}=await getEnvNames();if(_0x33e90d['LkmVt'](_0x163904[_0x2e01ff(0xed)],0x0)){console['log'](_0x2e01ff(0xe4)),console['log'](_0x33e90d['kPIuR']);return;}console[_0x2e01ff(0xf7)](_0x33e90d['qgZsd']);for(const _0x36f2b2 of _0x163904['sort']()){const _0x2868c3=_0x33e90d[_0x2e01ff(0xea)](_0x36f2b2,_0x42cd1d),_0xc021fa=_0x1bf4c8[_0x36f2b2]||_0x33e90d[_0x2e01ff(0xda)],_0x565ce5=await loadSettings(_0x36f2b2),_0x3be87a=_0x33e90d[_0x2e01ff(0xf8)](_0xc021fa,_0x33e90d[_0x2e01ff(0xe5)])?'':'\x20['+_0xc021fa+']';console[_0x2e01ff(0xf7)]('\x20\x20'+(_0x2868c3?'*\x20':'\x20\x20')+_0x36f2b2+_0x3be87a),_0x565ce5[_0x2e01ff(0xe3)]&&console[_0x2e01ff(0xf7)](_0x2e01ff(0xef)+_0x565ce5[_0x2e01ff(0xe3)]),_0x565ce5['environmentDetails']&&console[_0x2e01ff(0xf7)](_0x2e01ff(0xf9)+_0x565ce5[_0x2e01ff(0xe0)]);}_0x42cd1d&&console['log']('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
1
- const _0x4f9439=_0x4fb4;(function(_0x3b8fff,_0x5bf276){const _0x466f03=_0x4fb4,_0x206872=_0x3b8fff();while(!![]){try{const _0x542b4f=parseInt(_0x466f03(0x255))/0x1+-parseInt(_0x466f03(0x20d))/0x2*(-parseInt(_0x466f03(0x1ca))/0x3)+-parseInt(_0x466f03(0x213))/0x4*(-parseInt(_0x466f03(0x267))/0x5)+-parseInt(_0x466f03(0x244))/0x6*(-parseInt(_0x466f03(0x250))/0x7)+-parseInt(_0x466f03(0x21f))/0x8+parseInt(_0x466f03(0x1d7))/0x9+parseInt(_0x466f03(0x20c))/0xa*(-parseInt(_0x466f03(0x21e))/0xb);if(_0x542b4f===_0x5bf276)break;else _0x206872['push'](_0x206872['shift']());}catch(_0x243ad5){_0x206872['push'](_0x206872['shift']());}}}(_0x39d4,0xbba9a));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x4db099 from'inquirer';function _0x39d4(){const _0x19f3ba=['qdMNd','xPwiP','toLocaleString','version','\x20[has\x20reviewer\x20feedback]','\x20\x20\x20\x20\x20ID:\x20','push','incomplete','join','QCWBQ','UiNdL','repeat','dTWOd','KhXRT','any','\x20feature\x20review(s)\x20found','RftvU','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','parentItemId','\x20\x20\x20Updated\x20branch\x20to:\x20','\x20\x20\x20\x20\x20Progress:\x20','DLjOO','\x1b[1m','\x0aAvailable\x20scenarios:','yTJLz','find','textContent','\x0aCreating\x20feature\x20review...','jNmWI','\x1b[0m','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','\x20\x20\x20Created:\x20','terminalReason','\x20\x20\x20','content','TWknS','currentSessionId','ONddS','unaddressedComments','ucjQD','status','UcAAP','iteration','\x20\x20\x20Progress:\x20','cXXvm','\x0aNo\x20feature\x20reviews\x20found.','Current\x20session\x20not\x20found.','13004650WyROty','202EThuEi','\x0a📋\x20Feedback\x20for:\x20','2|3|4|1|0|5','verificationInProgressItems','\x0a✅\x20Session\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','28hMJkjX','submittedAt','cLEeg','canceledReason','tzNpz','XQQUB','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x20concluded.','filter','\x20\x20\x20Branch:\x20','closed','11UCpEvD','7350000TNDHCu','completedAt','crloK','OIRyE','SkRaG','\x20incomplete','warn','domRef','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','utf-8','UyTha','error','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','No\x20active\x20session\x20for\x20this\x20feature\x20review.','wthpR','approved','hblKc','.md','completed','\x20verified','tARgX','selector','lfpxj','CLAUDE_SESSION_ID','\x20scenario(s).','RBlZv','gFmuG','includeDeleted','latestReview','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','JoaKE','\x20--include-deleted','isTTY','quZfa','verifiedItems','scenario','mqElM','6kmzVQM','geKiO','createdAt','vLZqt','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','\x0a⚠️\x20\x20','arrayBuffer','wcPUZ','JFNdD','\x20\x20\x20\x20','incompleteReason','point','3113579fVkoyo','OdaIg','canonicalFlow','PmDof','gitBranch','914267nBQGoy','\x0a✅\x20Report\x20generated:\x20','description','IEkak','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','totalCount','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','exit','spatial','No\x20sessions\x20found.','type','pipe','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','split','map','yJXHK','\x0a\x20\x20\x20Scenarios:','...','760065PbkHbz','iyhZq','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','github.com/','Scenario\x20','\x0a✅\x20Scenario\x20added','MqJEq',':\x20\x22','checklistItems','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x20\x20\x20\x20\x20Branch:\x20','\x20\x20\x20Description:\x20','toFixed','items','stdin','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','bbqAx','dkxHJ','dashboardUrl','\x20\x20\x20Completed:\x20','sessionId','env','verification_in_progress','SFDvp','limit','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','numeric','trim','authorName','stats','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','Please\x20finish\x20your\x20review\x20first:','pop','\x20\x20Expected\x20flow:','DIxsX','length','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','zlcvM','vamgU','verified','13470MzrwsE','PkHzs','replace','log','\x20blocked','\x20scenarios.','currentBranch','stdout','\x20\x20\x20\x20\x20\x20Incomplete:\x20','tHBTN','AFzBv','name','qjBsw','1001124WXnoiu','\x0aGenerating\x20report...','style','\x20--limit\x20','mcgUd','BnLYr'];_0x39d4=function(){return _0x19f3ba;};return _0x39d4();}import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x1b62f6=>_0x4f9439(0x1f3)+_0x1b62f6+_0x4f9439(0x1fa);function getGitRepoUrl(){const _0x5335b0=_0x4f9439,_0xcf8f1a={'FjJGv':'git\x20remote\x20get-url\x20origin','zlcvM':'utf-8','PmDof':'pipe','DlHMU':_0x5335b0(0x1a4)};try{const _0x280cb4=execSync(_0xcf8f1a['FjJGv'],{'encoding':_0xcf8f1a[_0x5335b0(0x1c7)],'stdio':[_0xcf8f1a[_0x5335b0(0x253)],_0x5335b0(0x260),_0xcf8f1a['PmDof']]})[_0x5335b0(0x1bd)]();return _0x280cb4[_0x5335b0(0x1cc)](/\.git$/,'')[_0x5335b0(0x1cc)](/^git@github\.com:/,_0xcf8f1a['DlHMU'])[_0x5335b0(0x1cc)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x3cde8b=_0x4f9439,_0x578d31={'BgaVn':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','hblKc':_0x3cde8b(0x260)};try{return execSync(_0x578d31['BgaVn'],{'encoding':_0x3cde8b(0x228),'stdio':[_0x578d31[_0x3cde8b(0x22f)],_0x3cde8b(0x260),'pipe']})[_0x3cde8b(0x1bd)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x514d5e=_0x4f9439,_0x134375={'wcPUZ':function(_0x4fcdaa){return _0x4fcdaa();}},_0x581743=join(_0x134375[_0x514d5e(0x24b)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x581743))return null;try{const _0x43a004=await readFile(_0x581743,_0x514d5e(0x228));return _0x43a004[_0x514d5e(0x1bd)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x1e669e){const _0x279102=_0x4f9439,_0x4847ce={'wthpR':function(_0x9f9d47,_0x31fc58){return _0x9f9d47(_0x31fc58);}},_0x517c67=getRangerDir(),_0x52fb23=join(_0x517c67,ACTIVE_FEATURE_FILE);!_0x4847ce[_0x279102(0x22d)](existsSync,_0x517c67)&&await mkdir(_0x517c67,{'recursive':!![]}),await writeFile(_0x52fb23,_0x1e669e,_0x279102(0x228));}function getProgressDisplay(_0x5bd683){const _0x4dcb6e=_0x4f9439,_0x2c651a={'imDqT':function(_0x36e85e,_0x2dffd7){return _0x36e85e+_0x2dffd7;},'mcgUd':function(_0x1efe78,_0x140574){return _0x1efe78+_0x140574;},'quZfa':function(_0x26cd8a,_0x28ff7a){return _0x26cd8a/_0x28ff7a;}},_0x2425a7=_0x5bd683[_0x4dcb6e(0x241)]||0x0,_0xe9d7f9=_0x5bd683[_0x4dcb6e(0x210)]||0x0,_0x34a42f=_0x5bd683['blockedItems']||0x0,_0x5577f8=_0x5bd683['incompleteItems']||0x0,_0x55fbd1=_0x5bd683['pendingItems']||0x0,_0x3d6c5b=_0x2c651a['imDqT'](_0x2c651a[_0x4dcb6e(0x1db)](_0x2425a7,_0xe9d7f9)+_0x34a42f,_0x5577f8)+_0x55fbd1;if(_0x3d6c5b===0x0)return'-';const _0x84fb9a=0xa,_0x4bc2d5=Math['round'](_0x2c651a[_0x4dcb6e(0x240)](_0x2425a7,_0x3d6c5b)*_0x84fb9a),_0x20b866='█'[_0x4dcb6e(0x1e8)](_0x4bc2d5)+'░'[_0x4dcb6e(0x1e8)](_0x84fb9a-_0x4bc2d5),_0x40a260=[];if(_0x34a42f>0x0)_0x40a260['push'](_0x34a42f+_0x4dcb6e(0x1ce));if(_0x5577f8>0x0)_0x40a260[_0x4dcb6e(0x1e3)](_0x5577f8+_0x4dcb6e(0x224));if(_0xe9d7f9>0x0)_0x40a260['push'](_0xe9d7f9+'\x20in\x20progress');const _0x2d154c=_0x40a260[_0x4dcb6e(0x1c5)]>0x0?'\x20('+_0x40a260[_0x4dcb6e(0x1e5)](',\x20')+')':'';return _0x20b866+'\x20'+_0x2425a7+'/'+_0x3d6c5b+_0x4dcb6e(0x232)+_0x2d154c;}function getCurrentSessionItems(_0x536700,_0x34ffe7){const _0x3a35c2=_0x4f9439;if(!_0x536700['currentSessionId'])return _0x34ffe7[_0x3a35c2(0x21b)](_0x5c3282=>!_0x5c3282[_0x3a35c2(0x1b5)]);return _0x34ffe7[_0x3a35c2(0x21b)](_0x492e68=>_0x492e68[_0x3a35c2(0x1b5)]===_0x536700[_0x3a35c2(0x201)]||!_0x492e68['sessionId']);}function _0x4fb4(_0x3fc1c1,_0x5f14b6){_0x3fc1c1=_0x3fc1c1-0x1a4;const _0x39d4e7=_0x39d4();let _0x4fb43e=_0x39d4e7[_0x3fc1c1];return _0x4fb43e;}function displayFeature(_0x524e9a,_0x3cd828){const _0x5e4588=_0x4f9439,_0x26eac9={'fXhwh':function(_0x14e6d6,_0x512298){return _0x14e6d6>_0x512298;},'SexcB':function(_0x58c1c6,_0x1262d1){return _0x58c1c6===_0x1262d1;},'IEkak':'closed','iyhZq':function(_0x404842,_0x4e3f72){return _0x404842===_0x4e3f72;},'UczXT':_0x5e4588(0x1e4),'BozkK':function(_0x2bda61,_0x52a6e9){return _0x2bda61===_0x52a6e9;},'UcAAP':function(_0xd2ab4f,_0x3d5e6e){return _0xd2ab4f===_0x3d5e6e;},'BnLYr':_0x5e4588(0x1b7),'dcrpO':function(_0x36d176,_0x1e8cc3){return _0x36d176>_0x1e8cc3;},'geKiO':function(_0x5c0618,_0x13bdc0){return _0x5c0618>_0x13bdc0;},'HReoL':function(_0x2d9fc5,_0xddb177){return _0x2d9fc5+_0xddb177;},'rKTDC':function(_0x206c86,_0x253fe0){return _0x206c86===_0x253fe0;},'CVVSj':'blocked','MqJEq':function(_0x1b220f,_0x5b2c9e){return _0x1b220f===_0x5b2c9e;}};console[_0x5e4588(0x1cd)]('\x0a'+_0x524e9a[_0x5e4588(0x1d5)]+'\x20('+_0x524e9a[_0x5e4588(0x1b3)]+')');_0x524e9a['stats']&&console[_0x5e4588(0x1cd)](_0x5e4588(0x208)+getProgressDisplay(_0x524e9a[_0x5e4588(0x1bf)]));_0x524e9a[_0x5e4588(0x257)]&&console['log'](_0x5e4588(0x1ac)+_0x524e9a[_0x5e4588(0x257)]);_0x524e9a['gitRepoUrl']&&console[_0x5e4588(0x1cd)]('\x20\x20\x20Repository:\x20'+_0x524e9a['gitRepoUrl']);_0x524e9a[_0x5e4588(0x254)]&&console[_0x5e4588(0x1cd)](_0x5e4588(0x21c)+_0x524e9a['gitBranch']);console[_0x5e4588(0x1cd)](_0x5e4588(0x1fc)+new Date(_0x524e9a[_0x5e4588(0x246)])['toLocaleString']());_0x524e9a['completedAt']&&console[_0x5e4588(0x1cd)](_0x5e4588(0x1b4)+new Date(_0x524e9a['completedAt'])[_0x5e4588(0x1df)]());if(_0x3cd828&&_0x26eac9['fXhwh'](_0x3cd828[_0x5e4588(0x1c5)],0x0)){console[_0x5e4588(0x1cd)](_0x5e4588(0x265));for(let _0x3b6996=0x0;_0x3b6996<_0x3cd828['length'];_0x3b6996++){const _0x547985=_0x3cd828[_0x3b6996];let _0x2e7fc4;if(_0x26eac9['SexcB'](_0x547985[_0x5e4588(0x205)],_0x26eac9['IEkak'])&&_0x26eac9[_0x5e4588(0x268)](_0x547985[_0x5e4588(0x1fd)],_0x5e4588(0x22e)))_0x2e7fc4='✅';else{if(_0x26eac9['iyhZq'](_0x547985[_0x5e4588(0x205)],'verified'))_0x2e7fc4='🟢';else{if(_0x547985['status']===_0x26eac9['UczXT'])_0x2e7fc4='🟠';else{if(_0x26eac9['BozkK'](_0x547985[_0x5e4588(0x205)],'blocked'))_0x2e7fc4='🛑';else{if(_0x26eac9[_0x5e4588(0x206)](_0x547985[_0x5e4588(0x205)],_0x5e4588(0x21d)))_0x2e7fc4='⛔';else _0x547985[_0x5e4588(0x205)]===_0x26eac9[_0x5e4588(0x1dc)]?_0x2e7fc4='⏳':_0x2e7fc4='⬜';}}}}const _0x507276=_0x26eac9['dcrpO'](_0x547985[_0x5e4588(0x1e0)],0x1)?'\x20(v'+_0x547985[_0x5e4588(0x1e0)]+')':'',_0x525ecc=_0x26eac9[_0x5e4588(0x245)](_0x547985[_0x5e4588(0x1e0)],0x1)&&_0x547985[_0x5e4588(0x1ef)]&&_0x547985[_0x5e4588(0x205)]!==_0x26eac9[_0x5e4588(0x258)]&&_0x547985[_0x5e4588(0x205)]!==_0x5e4588(0x1c9)?_0x5e4588(0x1e1):'';console['log'](_0x5e4588(0x1fe)+_0x26eac9['HReoL'](_0x3b6996,0x1)+'.\x20'+_0x2e7fc4+'\x20'+_0x547985[_0x5e4588(0x257)]+_0x507276+_0x525ecc);_0x26eac9['rKTDC'](_0x547985[_0x5e4588(0x205)],_0x26eac9['CVVSj'])&&_0x547985['blockedReason']&&console[_0x5e4588(0x1cd)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x547985['blockedReason']);_0x26eac9[_0x5e4588(0x1a7)](_0x547985[_0x5e4588(0x205)],_0x5e4588(0x1e4))&&_0x547985[_0x5e4588(0x24e)]&&console['log'](_0x5e4588(0x1d2)+_0x547985['incompleteReason']);if(_0x547985['status']===_0x26eac9[_0x5e4588(0x258)]&&_0x26eac9[_0x5e4588(0x206)](_0x547985[_0x5e4588(0x1fd)],'approved'))console[_0x5e4588(0x1cd)]('\x20\x20\x20\x20\x20\x20Approved');else _0x547985['status']===_0x5e4588(0x21d)&&_0x547985[_0x5e4588(0x216)]&&console[_0x5e4588(0x1cd)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x547985['canceledReason']);}}}export async function featureCreate(_0x3e95e9,_0x2c16dd){const _0x3adddb=_0x4f9439,_0x14e89c={'XoDlA':function(_0x12b624,_0x563172){return _0x12b624===_0x563172;},'jIXzl':function(_0x46edb7,_0x549cc9){return _0x46edb7(_0x549cc9);},'UiNdL':function(_0x36ab16){return _0x36ab16();},'yTJLz':function(_0x4a017e,_0x435a80){return _0x4a017e(_0x435a80);},'LzxNm':function(_0x521c37,_0x3f8240,_0x547c4d){return _0x521c37(_0x3f8240,_0x547c4d);}},{envNames:_0x2a4c24}=await getEnvNames();_0x14e89c['XoDlA'](_0x2a4c24['length'],0x0)&&console[_0x3adddb(0x225)]('\x0a'+_0x14e89c['jIXzl'](formatProfileRequiredMessage,_0x4e48fe=>bold(_0x4e48fe)));const _0x3aa22a=_0x2c16dd['scenarios']?_0x2c16dd['scenarios'][_0x3adddb(0x263)](_0x240949=>_0x240949['trim']()):[],_0x1f7c4d=_0x14e89c[_0x3adddb(0x1e7)](getGitRepoUrl),_0x554d7c=_0x14e89c[_0x3adddb(0x1e7)](getGitBranch);console['log'](_0x3adddb(0x1f8));const _0x18cbf5=await _0x14e89c['jIXzl'](createFeature,{'name':_0x3e95e9,'description':_0x2c16dd[_0x3adddb(0x257)],'checklist':_0x3aa22a,'gitRepoUrl':_0x1f7c4d,'gitBranch':_0x554d7c});await setActiveFeatureId(_0x18cbf5['id']),await _0x14e89c[_0x3adddb(0x1f5)](tryStartCurrentSession,_0x18cbf5['id']);const _0x5f3dc6=process[_0x3adddb(0x1b6)]['CLAUDE_SESSION_ID'];_0x5f3dc6&&registerSession(_0x5f3dc6,_0x18cbf5['id']),console[_0x3adddb(0x1cd)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x18cbf5['id']),_0x14e89c['LzxNm'](displayFeature,_0x18cbf5,_0x18cbf5['checklistItems']),console[_0x3adddb(0x1cd)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x51184a){const _0x58792a=_0x4f9439,_0x31e680={'UyTha':_0x58792a(0x20a),'gFmuG':function(_0x1d1b4c,_0xbbca56){return _0x1d1b4c>_0xbbca56;},'ASgeE':_0x58792a(0x20f),'IYMga':_0x58792a(0x23e)},_0xbfeca9={'limit':_0x51184a['limit']??0xa,'offset':_0x51184a['offset']??0x0,'includeDeleted':_0x51184a[_0x58792a(0x23a)]};_0x51184a[_0x58792a(0x1d0)]&&(_0xbfeca9['gitRepoUrl']=getGitRepoUrl(),_0xbfeca9['gitBranch']=getGitBranch());const _0x2841cd=await listFeatures(_0xbfeca9);if(_0x2841cd['items'][_0x58792a(0x1c5)]===0x0){console['log'](_0x31e680[_0x58792a(0x229)]);return;}const _0x259d55=_0x31e680[_0x58792a(0x239)](_0x2841cd['totalCount'],_0x2841cd[_0x58792a(0x1ae)]['length'])?'Showing\x20'+_0x2841cd[_0x58792a(0x1ae)][_0x58792a(0x1c5)]+'\x20of\x20'+_0x2841cd['totalCount']:_0x2841cd['totalCount']+_0x58792a(0x1ec);console[_0x58792a(0x1cd)]('\x0a'+_0x259d55+':\x0a');for(const _0x1f6906 of _0x2841cd['items']){const _0x47db9d=_0x31e680['ASgeE']['split']('|');let _0x312dc8=0x0;while(!![]){switch(_0x47db9d[_0x312dc8++]){case'0':console[_0x58792a(0x1cd)](_0x58792a(0x1fc)+new Date(_0x1f6906[_0x58792a(0x246)])['toLocaleDateString']());continue;case'1':_0x1f6906[_0x58792a(0x254)]&&console['log'](_0x58792a(0x21c)+_0x1f6906['gitBranch']);continue;case'2':console['log'](''+_0x1f6906[_0x58792a(0x1d5)]);continue;case'3':console['log']('\x20\x20\x20ID:\x20'+_0x1f6906['id']);continue;case'4':_0x1f6906[_0x58792a(0x1bf)]&&console[_0x58792a(0x1cd)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1f6906[_0x58792a(0x1bf)]));continue;case'5':console['log']('');continue;}break;}}const _0x4f1f6f=_0xbfeca9[_0x58792a(0x1b9)]??0xa,_0xa25fd5=(_0xbfeca9['offset']??0x0)+_0x2841cd['items']['length'];if(_0xa25fd5<_0x2841cd[_0x58792a(0x25a)]){const _0x3964e3=_0x4f1f6f!==0xa?_0x58792a(0x1da)+_0x4f1f6f:'',_0x5af591=_0x51184a['currentBranch']?'\x20--current-branch':'',_0x3d4ec0=_0x51184a['includeDeleted']?_0x31e680['IYMga']:'';console[_0x58792a(0x1cd)](_0x58792a(0x219)+_0xa25fd5+_0x3964e3+_0x5af591+_0x3d4ec0);}}export async function featureShow(_0xdb16b1){const _0x412073=_0x4f9439,_0x38a6c0={'dTWOd':function(_0x340531){return _0x340531();},'lfpxj':_0x412073(0x259)},_0x3d182e=_0xdb16b1||await _0x38a6c0[_0x412073(0x1e9)](getActiveFeatureId);if(!_0x3d182e)throw new Error(_0x38a6c0[_0x412073(0x235)]);const _0x1f1df6=await getFeature(_0x3d182e);displayFeature(_0x1f1df6,_0x1f1df6[_0x412073(0x1a9)]);}export async function featureResume(_0x2ad3bd){const _0x5ec08f=_0x4f9439,_0xd0bbe5={'OdaIg':function(_0x22d677,_0x349e8f){return _0x22d677!==_0x349e8f;},'IYoBQ':function(_0x3b29ec){return _0x3b29ec();},'KhXRT':function(_0x86bb45,_0x35680e){return _0x86bb45||_0x35680e;},'bbqAx':'any','SFDvp':function(_0x52b193,_0x23b577){return _0x52b193===_0x23b577;},'gMILl':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','nRvuz':_0x5ec08f(0x269),'jsINE':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','tHBTN':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','OAxcV':'list','RRsIM':'selected','JFNdD':function(_0x20ddd7,_0x50ea6b){return _0x20ddd7(_0x50ea6b);},'tZJhV':function(_0x112757,_0x4e20f9,_0x2e7e55){return _0x112757(_0x4e20f9,_0x2e7e55);},'fNCea':function(_0x2651e5,_0x4e8668,_0x3c34c7){return _0x2651e5(_0x4e8668,_0x3c34c7);}};if(_0x2ad3bd){const _0x11a339=await getFeature(_0x2ad3bd);await setActiveFeatureId(_0x11a339['id']);const _0x3bffa7=getGitBranch();_0x3bffa7&&_0xd0bbe5[_0x5ec08f(0x251)](_0x3bffa7,_0x11a339['gitBranch'])&&(await updateFeature(_0x11a339['id'],{'gitBranch':_0x3bffa7}),console[_0x5ec08f(0x1cd)](_0x5ec08f(0x1f0)+_0x3bffa7));console[_0x5ec08f(0x1cd)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x11a339[_0x5ec08f(0x1d5)]+'\x20('+_0x11a339['id']+')'),await tryStartCurrentSession(_0x11a339['id']);const _0x39e13d=process['env'][_0x5ec08f(0x236)];_0x39e13d&&registerSession(_0x39e13d,_0x11a339['id']);displayFeature(_0x11a339,_0x11a339['checklistItems']),await printFeedbackNudge(_0x11a339['id']);return;}const _0x160143=_0xd0bbe5['IYoBQ'](getGitRepoUrl),_0x398859=getGitBranch();if(!_0x160143&&!_0x398859)throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x5ec08f(0x1cd)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0xd0bbe5[_0x5ec08f(0x1ea)](_0x160143,_0x5ec08f(0x1eb))+'\x20/\x20'+_0xd0bbe5[_0x5ec08f(0x1ea)](_0x398859,_0xd0bbe5[_0x5ec08f(0x1b1)])+_0x5ec08f(0x266));const _0x311c71=await listFeatures({'gitRepoUrl':_0x160143,'gitBranch':_0x398859}),_0x36fab0=_0x311c71[_0x5ec08f(0x1ae)]['filter'](_0x450eba=>!_0x450eba[_0x5ec08f(0x220)]);if(_0xd0bbe5[_0x5ec08f(0x1b8)](_0x36fab0['length'],0x0)){console['log'](_0xd0bbe5['gMILl']),console['log'](_0xd0bbe5['nRvuz']);return;}let _0x381ac6;if(_0x36fab0['length']===0x1)_0x381ac6=_0x36fab0[0x0];else{const _0x3a2193=process[_0x5ec08f(0x1af)][_0x5ec08f(0x23f)]&&process['stdout']['isTTY'];if(!_0x3a2193){console['log'](_0xd0bbe5['jsINE']);for(const _0xa5e99d of _0x36fab0){console[_0x5ec08f(0x1cd)]('\x20\x20'+_0xa5e99d['name']),console['log'](_0x5ec08f(0x1e2)+_0xa5e99d['id']),_0xa5e99d['stats']&&console['log'](_0x5ec08f(0x1f1)+getProgressDisplay(_0xa5e99d[_0x5ec08f(0x1bf)])),_0xa5e99d['gitBranch']&&console[_0x5ec08f(0x1cd)](_0x5ec08f(0x1ab)+_0xa5e99d['gitBranch']);}throw new Error(_0xd0bbe5[_0x5ec08f(0x1d3)]);}const {selected:_0x14fcbf}=await _0x4db099['prompt']([{'type':_0xd0bbe5['OAxcV'],'name':_0xd0bbe5['RRsIM'],'message':_0x5ec08f(0x1bb),'choices':_0x36fab0['map'](_0x10d7e9=>({'name':_0x10d7e9[_0x5ec08f(0x1d5)]+'\x20('+_0x10d7e9['id']+')','value':_0x10d7e9['id']}))}]);_0x381ac6=_0x36fab0['find'](_0x4e3d89=>_0x4e3d89['id']===_0x14fcbf);}await _0xd0bbe5['JFNdD'](setActiveFeatureId,_0x381ac6['id']);_0x398859&&_0xd0bbe5['OdaIg'](_0x398859,_0x381ac6['gitBranch'])&&(await _0xd0bbe5['tZJhV'](updateFeature,_0x381ac6['id'],{'gitBranch':_0x398859}),console[_0x5ec08f(0x1cd)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x398859));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x381ac6[_0x5ec08f(0x1d5)]+'\x20('+_0x381ac6['id']+')'),await _0xd0bbe5[_0x5ec08f(0x24c)](tryStartCurrentSession,_0x381ac6['id']);const _0x5ea0e9=await getFeature(_0x381ac6['id']),_0x348252=process[_0x5ec08f(0x1b6)]['CLAUDE_SESSION_ID'];_0x348252&&registerSession(_0x348252,_0x5ea0e9['id']),_0xd0bbe5['fNCea'](displayFeature,_0x5ea0e9,_0x5ea0e9['checklistItems']),await _0xd0bbe5['JFNdD'](printFeedbackNudge,_0x5ea0e9['id']);}async function printFeedbackNudge(_0x4cc236){const _0x4faa27=_0x4f9439,_0x56f754={'GBxXf':function(_0x53c357,_0x50ea6e,_0x5e2f49){return _0x53c357(_0x50ea6e,_0x5e2f49);},'vLZqt':_0x4faa27(0x1b0)};try{const {items:_0x306022}=await getActionItems(_0x4cc236);let _0x23b426=0x0,_0x1e5e09=0x0;for(const _0x3cac4e of _0x306022){const _0x731e58=await _0x56f754['GBxXf'](getItemFeedback,_0x4cc236,_0x3cac4e['id']);_0x731e58['unaddressedComments'][_0x4faa27(0x1c5)]>0x0&&(_0x23b426+=_0x731e58[_0x4faa27(0x203)]['length'],_0x1e5e09++);}_0x23b426>0x0&&(console[_0x4faa27(0x1cd)](_0x4faa27(0x249)+_0x23b426+_0x4faa27(0x1ee)+_0x1e5e09+_0x4faa27(0x237)),console[_0x4faa27(0x1cd)](_0x56f754[_0x4faa27(0x247)]));}catch{}}async function tryStartCurrentSession(_0x4dab73){const _0x2fef5d=_0x4f9439,_0x156cae={'PkHzs':function(_0x2a4090,_0x57debd,_0x13f0cf){return _0x2a4090(_0x57debd,_0x13f0cf);}};try{const {sessions:_0x25d5f3}=await listFeatureSessions(_0x4dab73),_0x69d6ed=_0x25d5f3[_0x2fef5d(0x1f6)](_0x352bc8=>_0x352bc8['status']==='ready');_0x69d6ed&&(await _0x156cae[_0x2fef5d(0x1cb)](startSession,_0x4dab73,_0x69d6ed['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x69d6ed[_0x2fef5d(0x207)]));}catch{}}export async function featureReport(_0x21cf8e,_0x275c5f){const _0x5d506c=_0x4f9439,_0x2ae008={'GGhrM':'reports','yJXHK':function(_0x4ebb80,_0x296187,_0x51d211){return _0x4ebb80(_0x296187,_0x51d211);},'hcneu':function(_0x516df1,_0x573edc,_0x32fbba,_0x46be71){return _0x516df1(_0x573edc,_0x32fbba,_0x46be71);}},_0x36527d=_0x21cf8e||await getActiveFeatureId();if(!_0x36527d)throw new Error(_0x5d506c(0x1c6));console['log'](_0x5d506c(0x1d8));const _0x33d740=await getFeatureReportMarkdown(_0x36527d,{'style':_0x275c5f[_0x5d506c(0x1d9)]}),_0x9343d1=_0x275c5f['output']||join(getRangerDir(),_0x2ae008['GGhrM'],_0x36527d+_0x5d506c(0x230)),_0x4c501c=join(_0x9343d1,'..');!existsSync(_0x4c501c)&&await _0x2ae008[_0x5d506c(0x264)](mkdir,_0x4c501c,{'recursive':!![]}),await _0x2ae008['hcneu'](writeFile,_0x9343d1,_0x33d740,_0x5d506c(0x228)),console['log'](_0x5d506c(0x256)+_0x9343d1);}export async function featureReportPrDescription(_0xad95a3,_0x4eeeeb){const _0xba943c=_0x4f9439,_0xf2d357={'CpSiY':function(_0x131838,_0x547b6a,_0x3b8aca){return _0x131838(_0x547b6a,_0x3b8aca);},'RftvU':function(_0x975e41,_0x473c46){return _0x975e41+_0x473c46;},'cXXvm':_0xba943c(0x1ba)},_0x56a363=_0xad95a3||await getActiveFeatureId();if(!_0x56a363)throw new Error(_0xba943c(0x1c6));const _0xf47bf4=await getFeature(_0x56a363),_0x3094a8=_0xf47bf4[_0xba943c(0x1a9)]||[],_0x488f90=_0xf2d357['CpSiY'](getCurrentSessionItems,_0xf47bf4,_0x3094a8);_0x488f90['length']===0x0&&(console['error'](_0xba943c(0x261)),process[_0xba943c(0x25c)](0x1));const _0x3d52f3=_0x4eeeeb['excludeScenarios']??[],_0x5ea63d=_0x3d52f3['filter'](_0x422b69=>!Number['isInteger'](_0x422b69)||_0x422b69<0x1||_0x422b69>_0x488f90[_0xba943c(0x1c5)]);if(_0x5ea63d[_0xba943c(0x1c5)]>0x0){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x5ea63d[_0xba943c(0x1e5)](',\x20')),console[_0xba943c(0x1cd)]('\x0aAvailable\x20scenarios:');for(let _0x537c7c=0x0;_0x537c7c<_0x488f90['length'];_0x537c7c++){console['log']('\x20\x20'+_0xf2d357[_0xba943c(0x1ed)](_0x537c7c,0x1)+'.\x20'+_0x488f90[_0x537c7c][_0xba943c(0x257)]);}process['exit'](0x1);}const _0x4a81c5=new Set(_0x3d52f3[_0xba943c(0x263)](_0x1685de=>_0x1685de-0x1)),_0x45e60a=_0x488f90['filter']((_0x434384,_0x76b049)=>!_0x4a81c5['has'](_0x76b049));_0x45e60a[_0xba943c(0x1c5)]===0x0&&(console[_0xba943c(0x22a)](_0xf2d357[_0xba943c(0x209)]),process[_0xba943c(0x25c)](0x1));const _0x4fce39=await getFeatureReportMarkdown(_0x56a363,{'itemIds':_0x45e60a[_0xba943c(0x263)](_0x4a5f7e=>_0x4a5f7e['id'])});process[_0xba943c(0x1d1)]['write'](_0x4fce39['trimEnd']()+'\x0a');}export async function featureConcludeSession(_0x329188){const _0x998a8=_0x4f9439,_0x32ec6e={'MEYDr':function(_0x358678){return _0x358678();},'dkxHJ':_0x998a8(0x22c),'hGujA':function(_0x1a9505,_0x386d81){return _0x1a9505(_0x386d81);},'uyUwX':function(_0x4b71c7,_0x756b79){return _0x4b71c7===_0x756b79;},'SDwPS':'\x0a✅\x20Session\x20is\x20already\x20completed.','ucjQD':function(_0x5a2209,_0x4f3d6b){return _0x5a2209!==_0x4f3d6b;},'cLEeg':function(_0x340d18,_0x3c2e88,_0xcdb08f){return _0x340d18(_0x3c2e88,_0xcdb08f);}},_0x3fd04e=_0x329188||await _0x32ec6e['MEYDr'](getActiveFeatureId);if(!_0x3fd04e)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 _0xab5655=await getFeature(_0x3fd04e);if(!_0xab5655[_0x998a8(0x201)])throw new Error(_0x32ec6e[_0x998a8(0x1b2)]);const {sessions:_0x124627}=await _0x32ec6e['hGujA'](listFeatureSessions,_0x3fd04e),_0x21afe1=_0x124627['find'](_0xa2a497=>_0xa2a497['id']===_0xab5655[_0x998a8(0x201)]);if(!_0x21afe1)throw new Error(_0x998a8(0x20b));if(_0x32ec6e['uyUwX'](_0x21afe1[_0x998a8(0x205)],_0x998a8(0x231))){console[_0x998a8(0x1cd)](_0x32ec6e['SDwPS']);return;}if(_0x32ec6e[_0x998a8(0x204)](_0x21afe1['status'],'in_progress'))throw new Error(_0x998a8(0x1aa)+_0x21afe1[_0x998a8(0x205)]);console['log']('\x0aConcluding\x20session...'),await _0x32ec6e[_0x998a8(0x215)](concludeSession,_0x3fd04e,_0xab5655[_0x998a8(0x201)]),console['log'](_0x998a8(0x211)+_0x21afe1['iteration']+_0x998a8(0x21a)),console['log'](_0x998a8(0x23c));}export async function featureSessions(_0x582058){const _0x3827f4=_0x4f9439,_0x527d3b={'vamgU':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ngPDy':function(_0x5486b1,_0x4ca7b8){return _0x5486b1(_0x4ca7b8);},'oQKtF':function(_0x2d1a61,_0x1b2ace){return _0x2d1a61===_0x1b2ace;},'yKtwU':function(_0x37a3e3,_0x5978d1){return _0x37a3e3===_0x5978d1;},'tnwIg':function(_0x49fa8a,_0x4b2c77){return _0x49fa8a===_0x4b2c77;}},_0x50f456=_0x582058||await getActiveFeatureId();if(!_0x50f456)throw new Error(_0x527d3b[_0x3827f4(0x1c8)]);const _0x26b2e4=await _0x527d3b['ngPDy'](getFeature,_0x50f456);console['log'](_0x3827f4(0x248)+_0x26b2e4['name']+'\x0a');const {sessions:_0xde1efc}=await listFeatureSessions(_0x50f456);if(_0x527d3b['oQKtF'](_0xde1efc[_0x3827f4(0x1c5)],0x0)){console[_0x3827f4(0x1cd)](_0x3827f4(0x25e));return;}for(const _0x46367c of _0xde1efc){const _0x3c2b52=_0x527d3b['yKtwU'](_0x46367c[_0x3827f4(0x205)],_0x3827f4(0x231))?'✅':_0x527d3b['tnwIg'](_0x46367c[_0x3827f4(0x205)],'in_progress')?'🔄':'▶️';console[_0x3827f4(0x1cd)](_0x3c2b52+'\x20Session\x20'+_0x46367c[_0x3827f4(0x207)]+'\x20('+_0x46367c['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x46367c['status']),console[_0x3827f4(0x1cd)]('\x20\x20\x20Created:\x20'+new Date(_0x46367c[_0x3827f4(0x246)])['toLocaleString']()),_0x46367c['completedAt']&&console['log'](_0x3827f4(0x1b4)+new Date(_0x46367c[_0x3827f4(0x220)])[_0x3827f4(0x1df)]()),console['log']('');}}export async function featureAddScenario(_0x282b5e,_0x487ad7){const _0x27fde2=_0x4f9439,_0x1283cb={'rzGpr':_0x27fde2(0x259)},_0x51ecac=_0x487ad7||await getActiveFeatureId();if(!_0x51ecac)throw new Error(_0x1283cb['rzGpr']);const _0x22320e=await getFeature(_0x51ecac);if(_0x22320e[_0x27fde2(0x23b)]&&!_0x22320e['latestReview'][_0x27fde2(0x214)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x22320e[_0x27fde2(0x1b3)]);await createChecklistItem(_0x51ecac,_0x282b5e);const _0x3e302f=await getFeature(_0x51ecac);console['log'](_0x27fde2(0x1a6)),displayFeature(_0x3e302f,_0x3e302f[_0x27fde2(0x1a9)]);}export async function featureEditScenario(_0x492b64,_0x1de5ee){const _0x19cea9=_0x4f9439,_0x207a2e={'evQUV':_0x19cea9(0x1c1),'lWtKb':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','qdMNd':function(_0x510651,_0x5d4697){return _0x510651===_0x5d4697;},'NhfxR':_0x19cea9(0x212),'SkRaG':'\x0aAvailable\x20scenarios:','ZGcty':function(_0x1dad3b,_0x3f14be){return _0x1dad3b+_0x3f14be;},'DIxsX':function(_0x220433,_0x18ffcb){return _0x220433-_0x18ffcb;},'QCWBQ':function(_0x5096b6,_0x5e6103){return _0x5096b6<_0x5e6103;},'DLjOO':function(_0x54a80e,_0x4f52f3){return _0x54a80e<_0x4f52f3;},'crloK':function(_0x113f77,_0x41dbd3,_0x5ee074,_0x552f71){return _0x113f77(_0x41dbd3,_0x5ee074,_0x552f71);},'VvjCr':function(_0x2c0a0f,_0x20f0e5){return _0x2c0a0f(_0x20f0e5);},'QLDec':function(_0x2209ff,_0x4880a4,_0x304d6b){return _0x2209ff(_0x4880a4,_0x304d6b);}},_0x5bce7e=_0x1de5ee['id']||await getActiveFeatureId();!_0x5bce7e&&(console[_0x19cea9(0x22a)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x19cea9(0x22a)](_0x19cea9(0x1c0)),process['exit'](0x1));const _0x422244=await getFeature(_0x5bce7e);_0x422244[_0x19cea9(0x23b)]&&!_0x422244[_0x19cea9(0x23b)]['submittedAt']&&(console[_0x19cea9(0x22a)](_0x19cea9(0x227)),console['error'](_0x207a2e['evQUV']),console[_0x19cea9(0x22a)]('\x20\x20'+_0x422244[_0x19cea9(0x1b3)]),process[_0x19cea9(0x25c)](0x1));const _0x2edde8=_0x422244['checklistItems']||[];_0x2edde8['length']===0x0&&(console[_0x19cea9(0x22a)](_0x207a2e['lWtKb']),process['exit'](0x1));if(_0x207a2e[_0x19cea9(0x1dd)](_0x1de5ee[_0x19cea9(0x242)],undefined)){console[_0x19cea9(0x22a)](_0x207a2e['NhfxR']),console['log'](_0x207a2e[_0x19cea9(0x223)]);for(let _0x3233d4=0x0;_0x3233d4<_0x2edde8[_0x19cea9(0x1c5)];_0x3233d4++){console['log']('\x20\x20'+_0x207a2e['ZGcty'](_0x3233d4,0x1)+'.\x20'+_0x2edde8[_0x3233d4][_0x19cea9(0x257)]);}process['exit'](0x1);}const _0x2e93ab=_0x207a2e[_0x19cea9(0x1c4)](_0x1de5ee['scenario'],0x1);if(_0x207a2e[_0x19cea9(0x1e6)](_0x2e93ab,0x0)||_0x2e93ab>=_0x2edde8[_0x19cea9(0x1c5)]){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x1de5ee[_0x19cea9(0x242)]+'.\x20Feature\x20review\x20has\x20'+_0x2edde8[_0x19cea9(0x1c5)]+_0x19cea9(0x1cf)),console['log'](_0x19cea9(0x1f4));for(let _0x5d3eff=0x0;_0x207a2e[_0x19cea9(0x1f2)](_0x5d3eff,_0x2edde8['length']);_0x5d3eff++){console['log']('\x20\x20'+(_0x5d3eff+0x1)+'.\x20'+_0x2edde8[_0x5d3eff][_0x19cea9(0x257)]);}process[_0x19cea9(0x25c)](0x1);}const _0x271442=_0x2edde8[_0x2e93ab];await _0x207a2e[_0x19cea9(0x221)](updateChecklistItem,_0x5bce7e,_0x271442['id'],{'description':_0x492b64});const _0x2001af=await _0x207a2e['VvjCr'](getFeature,_0x5bce7e);console['log']('\x0a✅\x20Scenario\x20updated'),_0x207a2e['QLDec'](displayFeature,_0x2001af,_0x2001af[_0x19cea9(0x1a9)]);}async function downloadFeedbackImage(_0x5d9d95,_0x449181){const _0x1f0ff1=_0x4f9439,_0x16175f={'pLylh':function(_0x3dd1ee,_0x17ba81,_0x1a60d3){return _0x3dd1ee(_0x17ba81,_0x1a60d3);},'tzNpz':function(_0x26b1e1){return _0x26b1e1();},'ONddS':'feedback-images','jNmWI':function(_0x2e0131,_0x4048dc){return _0x2e0131(_0x4048dc);}};try{const _0xb14865=_0x16175f['pLylh'](join,_0x16175f[_0x1f0ff1(0x217)](getRangerDir),_0x16175f[_0x1f0ff1(0x202)]);await mkdir(_0xb14865,{'recursive':!![]});const _0x479414=join(_0xb14865,'comment_'+_0x449181+'.png'),_0x4c27d1=await _0x16175f[_0x1f0ff1(0x1f9)](fetch,_0x5d9d95);if(!_0x4c27d1['ok'])return null;const _0x36599a=Buffer['from'](await _0x4c27d1[_0x1f0ff1(0x24a)]());return await writeFile(_0x479414,_0x36599a),_0x479414;}catch{return null;}}export async function featureGetReview(_0x2949a5){const _0x559240=_0x4f9439,_0x37db35={'AFzBv':function(_0x1bf49c){return _0x1bf49c();},'mqElM':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','fzJqM':function(_0x5ba69b,_0x18dac9){return _0x5ba69b(_0x18dac9);},'lkIKu':function(_0x2c8a01,_0x47f479){return _0x2c8a01===_0x47f479;},'XQQUB':'No\x20scenarios\x20found.','VuNQU':function(_0x4b55aa,_0x538345){return _0x4b55aa<_0x538345;},'JoaKE':function(_0x201bf3,_0x1c6222){return _0x201bf3>_0x1c6222;},'pVsKN':function(_0x50d561,_0x5ae124,_0xff94ee){return _0x50d561(_0x5ae124,_0xff94ee);},'OIRyE':function(_0x46a9fd,_0x3b807f){return _0x46a9fd>_0x3b807f;},'IzIHu':function(_0x3eb6c4,_0x578732){return _0x3eb6c4+_0x578732;},'qjBsw':'short','xPwiP':'element','cpzjz':function(_0x16a60d,_0x366cd0){return _0x16a60d===_0x366cd0;},'RBlZv':_0x559240(0x24f),'tARgX':function(_0x3a8733,_0x2bb245){return _0x3a8733>=_0x2bb245;},'qcSTQ':function(_0x291e55,_0x342e1a){return _0x291e55+_0x342e1a;}},_0x419f28=_0x2949a5||await _0x37db35[_0x559240(0x1d4)](getActiveFeatureId);if(!_0x419f28)throw new Error(_0x37db35[_0x559240(0x243)]);const _0x4677e2=await _0x37db35['fzJqM'](getFeature,_0x419f28),{items:_0x1c485a}=await getActionItems(_0x419f28);console['log'](_0x559240(0x20e)+_0x4677e2[_0x559240(0x1d5)]+'\x20('+_0x4677e2['id']+')\x0a');if(_0x37db35['lkIKu'](_0x1c485a[_0x559240(0x1c5)],0x0)){console['log'](_0x37db35[_0x559240(0x218)]);return;}for(let _0x38ae52=0x0;_0x37db35['VuNQU'](_0x38ae52,_0x1c485a[_0x559240(0x1c5)]);_0x38ae52++){const _0x23d4c0=_0x1c485a[_0x38ae52],_0x2bf7ed=_0x37db35[_0x559240(0x23d)](_0x23d4c0['version'],0x1)?'\x20(v'+_0x23d4c0['version']+')':'',_0x8858f8=await _0x37db35['pVsKN'](getItemFeedback,_0x419f28,_0x23d4c0['id']);if(_0x37db35[_0x559240(0x222)](_0x8858f8[_0x559240(0x203)]['length'],0x0)){console['log']('Scenario\x20'+_0x37db35['IzIHu'](_0x38ae52,0x1)+_0x559240(0x1a8)+_0x23d4c0[_0x559240(0x257)]+'\x22'+_0x2bf7ed+'\x20—\x20'+_0x8858f8[_0x559240(0x203)][_0x559240(0x1c5)]+'\x20unaddressed\x20comment(s)');for(const _0x58f6f5 of _0x8858f8['unaddressedComments']){const _0x4576c2=new Date(_0x58f6f5[_0x559240(0x246)])['toLocaleDateString']('en-US',{'month':_0x37db35[_0x559240(0x1d6)],'day':_0x559240(0x1bc)}),_0x2f6bd5=_0x58f6f5[_0x559240(0x1be)]||_0x58f6f5['authorEmail']||'Unknown';console[_0x559240(0x1cd)]('\x20\x20💬\x20'+_0x2f6bd5+'\x20('+_0x4576c2+'):\x20\x22'+_0x58f6f5[_0x559240(0x1ff)]+'\x22');if(_0x58f6f5['assetUrl']){const _0x39a114=await downloadFeedbackImage(_0x58f6f5['assetUrl'],_0x58f6f5['id']);_0x39a114&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x39a114);}if(_0x58f6f5[_0x559240(0x226)]){const _0x558c80=_0x58f6f5[_0x559240(0x226)]['selector']['split']('\x20>\x20')[_0x559240(0x1c2)]()?.[_0x559240(0x262)](':')[0x0]||_0x37db35[_0x559240(0x1de)],_0x3ca816=_0x58f6f5['domRef'][_0x559240(0x1f7)]?'\x20\x22'+_0x58f6f5['domRef'][_0x559240(0x1f7)]['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x559240(0x1fb)+_0x558c80+'>'+_0x3ca816),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x58f6f5[_0x559240(0x226)][_0x559240(0x234)]);}else{if(_0x58f6f5['spatial']){const _0x2f1dd5=_0x58f6f5[_0x559240(0x25d)]['coordinates'];_0x37db35['cpzjz'](_0x58f6f5['spatial'][_0x559240(0x25f)],_0x37db35[_0x559240(0x238)])&&_0x37db35[_0x559240(0x233)](_0x2f1dd5[_0x559240(0x1c5)],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x2f1dd5[0x0][_0x559240(0x1ad)](0x2)+',\x20'+_0x2f1dd5[0x1][_0x559240(0x1ad)](0x2)+')'):console[_0x559240(0x1cd)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x58f6f5[_0x559240(0x25d)]['type']+'\x20at\x20['+_0x2f1dd5['map'](_0x1f12b7=>_0x1f12b7['toFixed'](0x2))[_0x559240(0x1e5)](',\x20')+']');}}}if(_0x8858f8[_0x559240(0x252)]){console['log'](_0x559240(0x1c3));for(const _0x2b64b6 of _0x8858f8['canonicalFlow'][_0x559240(0x262)]('\x0a')){console['log'](_0x559240(0x24d)+_0x2b64b6);}}}else console['log'](_0x559240(0x1a5)+_0x37db35['qcSTQ'](_0x38ae52,0x1)+':\x20\x22'+_0x23d4c0[_0x559240(0x257)]+'\x22'+_0x2bf7ed+'\x20—\x20no\x20comments'),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x559240(0x1cd)]('');}}export async function featureDelete(_0xfbb3c6){const _0x305c3a=_0x4f9439,_0x2b2b4e={'TWknS':_0x305c3a(0x259),'OZMmv':function(_0x20e1a3,_0x517989){return _0x20e1a3(_0x517989);},'iIEed':_0x305c3a(0x25b)},_0x2bc8a1=_0xfbb3c6||await getActiveFeatureId();if(!_0x2bc8a1)throw new Error(_0x2b2b4e[_0x305c3a(0x200)]);const _0x32f053=await _0x2b2b4e['OZMmv'](getFeature,_0x2bc8a1);await _0x2b2b4e['OZMmv'](softDeleteFeature,_0x2bc8a1),console['log'](_0x305c3a(0x22b)+_0x32f053[_0x305c3a(0x1d5)]+'\x20('+_0x2bc8a1+')'),console['log'](_0x2b2b4e['iIEed']+_0x2bc8a1);}export async function featureRestore(_0x277ddd){const _0x40e82d=_0x4f9439,_0x420363={'ViNNM':function(_0x5280c6,_0x4bc44d){return _0x5280c6(_0x4bc44d);}};await _0x420363['ViNNM'](restoreFeature,_0x277ddd);const _0x3a7887=await _0x420363['ViNNM'](getFeature,_0x277ddd);console[_0x40e82d(0x1cd)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x3a7887[_0x40e82d(0x1d5)]+'\x20('+_0x277ddd+')'),displayFeature(_0x3a7887,_0x3a7887['checklistItems']);}
1
+ const _0x2b49e1=_0x8f54;(function(_0x9822cb,_0x400d3f){const _0x133e67=_0x8f54,_0x5ae146=_0x9822cb();while(!![]){try{const _0x27add4=-parseInt(_0x133e67(0x1c0))/0x1+-parseInt(_0x133e67(0x1d5))/0x2*(-parseInt(_0x133e67(0x15d))/0x3)+parseInt(_0x133e67(0x112))/0x4*(parseInt(_0x133e67(0x1f3))/0x5)+-parseInt(_0x133e67(0x13e))/0x6+parseInt(_0x133e67(0x171))/0x7*(parseInt(_0x133e67(0x1d1))/0x8)+-parseInt(_0x133e67(0x193))/0x9*(parseInt(_0x133e67(0x1dd))/0xa)+parseInt(_0x133e67(0x14b))/0xb*(parseInt(_0x133e67(0x19c))/0xc);if(_0x27add4===_0x400d3f)break;else _0x5ae146['push'](_0x5ae146['shift']());}catch(_0x3ae326){_0x5ae146['push'](_0x5ae146['shift']());}}}(_0x9fb5,0xcf35a));function _0x9fb5(){const _0x1b60cd=['cUBiy','includeDeleted','OTDgX','XlEcx','tkdLd','22808ZanrbV','status','rwVAH','limit','12538oNvzOd','CpPBW','\x0a✅\x20Session\x20','name','naRbs','map','\x20\x20\x20\x20\x20Branch:\x20','\x20\x20\x20Progress:\x20','3940gHTNql','blockedItems','tLNkH','incompleteReason','split','.\x20Feature\x20review\x20has\x20','LFRpC','notes','round','zTrNe','screenshotUrls','from','lzDRq','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','gOtVy','excludeScenarios','currentSessionId','\x0a❌\x20Invalid\x20scenario\x20index:\x20','replace','Showing\x20','kDUIT','3109135KJaaGJ','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','nUyfd','mMPGL','4eRwaco','TZBrV','numeric','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','totalCount','push','assetUrl','sCkSN','\x20\x20\x20Description:\x20','approved','reports','fpsks','after','TBqyP','scenario','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20\x20▶️\x20Started\x20session\x20','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','assetType','timing','\x20of\x20','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','hCrPR','XVBSk','Jyqyh','type','authorEmail','syImV','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','\x0a✅\x20Restored\x20feature\x20review:\x20','log','BFlHT','offset','get','\x1b[1m','screenshot','coordinates','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x20—\x20no\x20comments','position','emfNM','IxhzC','\x20\x20Expected\x20flow:','8914218FKPxze','wjPav','slice','selected','iqTKZ','items','submittedAt','eaoRx','pCvWB','in_progress','\x20—\x20','any','gitBranch','22640233eeGKmK','\x20in\x20progress','stats','EhRTP','UADwk','\x0aAvailable\x20scenarios:','hsPhA','CWNaY','write','filter','warn','/api/v1/mcp/browser-sessions/','fMCVB','zVuff','KQTnm','RIKAY','\x20\x20\x20Branch:\x20','JLEUu','267ABflqt','Unknown','completedAt','nVDKS','createdAt','iDTKH','qczAb','stdin','verifiedItems','muHdU','JeRVb','OVehD','canceledReason','AKpVq','length','\x20--include-deleted','domRef','trimEnd','epvVw','latestReview','1890yhCdDh','CLAUDE_SESSION_ID','eMkgF','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','list','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','VVFpP','short','xOFmN','gUHIf','description','\x20\x20\x20ID:\x20','bukNn','wrswa','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','\x20\x20\x20\x20','pipe','find','canonicalFlow','hvWVb','location','\x20incomplete','prompt','lyJRK','isTTY','cMGVa','isInteger','utf-8','toFixed','sjoUc','toxAY','ZAKya','exQIZ','gInXv','18117BSiffb',':\x20\x22','BMBRG','\x20feature\x20review(s)\x20found','SkQXo','unaddressedComments','closed','mayWm','pop','12GnmSSl','NEKxz','toLocaleString','textContent','pRJyR','currentBranch','join','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','cnzkr','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','selector','trim','en-US','DXabf','ONDNm','dDYqa','blockedReason','exit','pendingItems','verification_in_progress','tnAnC','terminalReason','spatial','error','qQkZd','checklistItems','QKyex','completed','Scenario\x20','No\x20scenarios\x20found.','stdout','browserSessionId','GyxSv','dashboardUrl','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x0a\x20\x20\x20Scenarios:','880186BpoJbI','uCYcs','agentResponse','style','linkedSession','\x20\x20\x20Status:\x20','ZytxV','\x20\x20✅\x20No\x20feedback\x20to\x20address','version','repeat','\x20/\x20','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('];_0x9fb5=function(){return _0x1b60cd;};return _0x9fb5();}import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x189e33 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x559708=>_0x2b49e1(0x134)+_0x559708+'\x1b[0m';function getGitRepoUrl(){const _0x5086e6=_0x2b49e1,_0x1325bf={'JeRVb':function(_0x5e47ac,_0x3012a7,_0x401726){return _0x5e47ac(_0x3012a7,_0x401726);},'wrswa':'git\x20remote\x20get-url\x20origin','JLEUu':_0x5086e6(0x18c),'USpCq':_0x5086e6(0x181),'XVBSk':'github.com/'};try{const _0x10b2d4=_0x1325bf[_0x5086e6(0x167)](execSync,_0x1325bf[_0x5086e6(0x17e)],{'encoding':_0x1325bf[_0x5086e6(0x15c)],'stdio':['pipe',_0x5086e6(0x181),_0x1325bf['USpCq']]})['trim']();return _0x10b2d4['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x1325bf[_0x5086e6(0x129)])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x379260=_0x2b49e1,_0x4fb095={'exQIZ':function(_0xa621b8,_0x21fa2a,_0x2f65e7){return _0xa621b8(_0x21fa2a,_0x2f65e7);},'sCkSN':'utf-8','TBqyP':_0x379260(0x181)};try{return _0x4fb095[_0x379260(0x191)](execSync,'git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x4fb095[_0x379260(0x119)],'stdio':[_0x379260(0x181),_0x4fb095[_0x379260(0x11f)],'pipe']})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x3c939e=_0x2b49e1,_0x2eb13b={'WEgwf':function(_0x56c955,_0x1a8a18,_0x45effe){return _0x56c955(_0x1a8a18,_0x45effe);},'zVuff':function(_0x34ae60){return _0x34ae60();},'sjoUc':function(_0x3e748c,_0x357a58){return _0x3e748c(_0x357a58);},'cnzkr':'utf-8'},_0x422ab2=_0x2eb13b['WEgwf'](join,_0x2eb13b[_0x3c939e(0x158)](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x2eb13b[_0x3c939e(0x18e)](existsSync,_0x422ab2))return null;try{const _0x33bb08=await readFile(_0x422ab2,_0x2eb13b[_0x3c939e(0x1a4)]);return _0x33bb08[_0x3c939e(0x1a7)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x54aaa9){const _0x57f3c9=_0x2b49e1,_0x475811={'naRbs':function(_0x97a2fd){return _0x97a2fd();},'SkQXo':_0x57f3c9(0x18c)},_0x540507=_0x475811[_0x57f3c9(0x1d9)](getRangerDir),_0x1c8eab=join(_0x540507,ACTIVE_FEATURE_FILE);!existsSync(_0x540507)&&await mkdir(_0x540507,{'recursive':!![]}),await writeFile(_0x1c8eab,_0x54aaa9,_0x475811[_0x57f3c9(0x197)]);}function getProgressDisplay(_0x3ee6fb){const _0x12bc83=_0x2b49e1,_0x3efbfc={'OTDgX':function(_0x292685,_0x30a7df){return _0x292685+_0x30a7df;},'qQkZd':function(_0x5ac181,_0x582c3c){return _0x5ac181/_0x582c3c;},'cdrxu':function(_0x43b385,_0x1171f7){return _0x43b385-_0x1171f7;},'NEKxz':function(_0x4a5406,_0x428b0c){return _0x4a5406>_0x428b0c;},'lyJRK':function(_0x32f134,_0x4f4ee7){return _0x32f134>_0x4f4ee7;}},_0x1ef050=_0x3ee6fb[_0x12bc83(0x165)]||0x0,_0x5253eb=_0x3ee6fb['verificationInProgressItems']||0x0,_0x49458a=_0x3ee6fb[_0x12bc83(0x1de)]||0x0,_0x3624c8=_0x3ee6fb['incompleteItems']||0x0,_0x1a51eb=_0x3ee6fb[_0x12bc83(0x1ae)]||0x0,_0x1805b8=_0x3efbfc[_0x12bc83(0x1ce)](_0x1ef050+_0x5253eb+_0x49458a+_0x3624c8,_0x1a51eb);if(_0x1805b8===0x0)return'-';const _0x4f67ca=0xa,_0x420167=Math[_0x12bc83(0x1e5)](_0x3efbfc[_0x12bc83(0x1b4)](_0x1ef050,_0x1805b8)*_0x4f67ca),_0x211fc5='█'['repeat'](_0x420167)+'░'[_0x12bc83(0x1c9)](_0x3efbfc['cdrxu'](_0x4f67ca,_0x420167)),_0x33f288=[];if(_0x3efbfc[_0x12bc83(0x19d)](_0x49458a,0x0))_0x33f288['push'](_0x49458a+'\x20blocked');if(_0x3efbfc[_0x12bc83(0x188)](_0x3624c8,0x0))_0x33f288['push'](_0x3624c8+_0x12bc83(0x186));if(_0x5253eb>0x0)_0x33f288[_0x12bc83(0x117)](_0x5253eb+_0x12bc83(0x14c));const _0x224ac9=_0x33f288['length']>0x0?'\x20('+_0x33f288[_0x12bc83(0x1a2)](',\x20')+')':'';return _0x211fc5+'\x20'+_0x1ef050+'/'+_0x1805b8+'\x20verified'+_0x224ac9;}function getCurrentSessionItems(_0x13e47a,_0x28655c){const _0x61152=_0x2b49e1;if(!_0x13e47a[_0x61152(0x1ee)])return _0x28655c[_0x61152(0x154)](_0x47a961=>!_0x47a961['sessionId']);return _0x28655c[_0x61152(0x154)](_0x188eeb=>_0x188eeb['sessionId']===_0x13e47a[_0x61152(0x1ee)]||!_0x188eeb['sessionId']);}function displayFeature(_0x2aebbf,_0x374bd5){const _0x149cfe=_0x2b49e1,_0x11b376={'BMBRG':function(_0x5d4de4,_0x442e76){return _0x5d4de4>_0x442e76;},'iDTKH':function(_0x11c588,_0x478279){return _0x11c588===_0x478279;},'RIKAY':function(_0x11f7ee,_0x8fb138){return _0x11f7ee===_0x8fb138;},'sNBLg':'verified','gUHIf':'incomplete','epvVw':function(_0x383891,_0x3914af){return _0x383891===_0x3914af;},'jvCdw':'blocked','uCYcs':function(_0x3ccea9,_0x27196c){return _0x3ccea9===_0x27196c;},'qczAb':function(_0x2d43c7,_0x380e4b){return _0x2d43c7!==_0x380e4b;},'CpPBW':'\x20[has\x20reviewer\x20feedback]','tLNkH':function(_0x27dfb6,_0x214ea2){return _0x27dfb6===_0x214ea2;},'eMkgF':_0x149cfe(0x199),'Hbspt':function(_0x544eed,_0x2e636f){return _0x544eed===_0x2e636f;},'RHSDT':function(_0x123674,_0x1a16fe){return _0x123674===_0x1a16fe;}};console[_0x149cfe(0x130)]('\x0a'+_0x2aebbf[_0x149cfe(0x1d8)]+'\x20('+_0x2aebbf['dashboardUrl']+')');_0x2aebbf[_0x149cfe(0x14d)]&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x2aebbf['stats']));_0x2aebbf[_0x149cfe(0x17b)]&&console[_0x149cfe(0x130)](_0x149cfe(0x11a)+_0x2aebbf[_0x149cfe(0x17b)]);_0x2aebbf['gitRepoUrl']&&console[_0x149cfe(0x130)]('\x20\x20\x20Repository:\x20'+_0x2aebbf['gitRepoUrl']);_0x2aebbf[_0x149cfe(0x14a)]&&console['log'](_0x149cfe(0x15b)+_0x2aebbf[_0x149cfe(0x14a)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x2aebbf['createdAt'])[_0x149cfe(0x19e)]());_0x2aebbf['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x2aebbf['completedAt'])['toLocaleString']());if(_0x374bd5&&_0x11b376[_0x149cfe(0x195)](_0x374bd5[_0x149cfe(0x16b)],0x0)){console['log'](_0x149cfe(0x1bf));for(let _0x2ae7ea=0x0;_0x2ae7ea<_0x374bd5['length'];_0x2ae7ea++){const _0x80d5eb=_0x374bd5[_0x2ae7ea];let _0x11ac6a;if(_0x11b376[_0x149cfe(0x162)](_0x80d5eb[_0x149cfe(0x1d2)],_0x149cfe(0x199))&&_0x11b376[_0x149cfe(0x15a)](_0x80d5eb[_0x149cfe(0x1b1)],_0x149cfe(0x11b)))_0x11ac6a='✅';else{if(_0x80d5eb[_0x149cfe(0x1d2)]===_0x11b376['sNBLg'])_0x11ac6a='🟢';else{if(_0x80d5eb[_0x149cfe(0x1d2)]===_0x11b376['gUHIf'])_0x11ac6a='🟠';else{if(_0x11b376[_0x149cfe(0x16f)](_0x80d5eb[_0x149cfe(0x1d2)],_0x11b376['jvCdw']))_0x11ac6a='🛑';else{if(_0x11b376['RIKAY'](_0x80d5eb['status'],_0x149cfe(0x199)))_0x11ac6a='⛔';else _0x11b376[_0x149cfe(0x1c1)](_0x80d5eb['status'],_0x149cfe(0x1af))?_0x11ac6a='⏳':_0x11ac6a='⬜';}}}}const _0x3f7234=_0x11b376['BMBRG'](_0x80d5eb[_0x149cfe(0x1c8)],0x1)?'\x20(v'+_0x80d5eb['version']+')':'',_0x3f1b37=_0x80d5eb['version']>0x1&&_0x80d5eb['parentItemId']&&_0x11b376[_0x149cfe(0x163)](_0x80d5eb[_0x149cfe(0x1d2)],'closed')&&_0x80d5eb['status']!=='verified'?_0x11b376[_0x149cfe(0x1d6)]:'';console['log']('\x20\x20\x20'+(_0x2ae7ea+0x1)+'.\x20'+_0x11ac6a+'\x20'+_0x80d5eb[_0x149cfe(0x17b)]+_0x3f7234+_0x3f1b37);_0x80d5eb[_0x149cfe(0x1d2)]==='blocked'&&_0x80d5eb[_0x149cfe(0x1ac)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x80d5eb['blockedReason']);_0x11b376['iDTKH'](_0x80d5eb['status'],_0x11b376[_0x149cfe(0x17a)])&&_0x80d5eb['incompleteReason']&&console[_0x149cfe(0x130)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x80d5eb[_0x149cfe(0x1e0)]);if(_0x11b376[_0x149cfe(0x1df)](_0x80d5eb[_0x149cfe(0x1d2)],_0x11b376[_0x149cfe(0x173)])&&_0x11b376['Hbspt'](_0x80d5eb[_0x149cfe(0x1b1)],_0x149cfe(0x11b)))console[_0x149cfe(0x130)]('\x20\x20\x20\x20\x20\x20Approved');else _0x11b376['RHSDT'](_0x80d5eb['status'],_0x11b376[_0x149cfe(0x173)])&&_0x80d5eb[_0x149cfe(0x169)]&&console[_0x149cfe(0x130)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x80d5eb[_0x149cfe(0x169)]);}}}export async function featureCreate(_0x28eb49,_0x6ca3c1){const _0x30e83c=_0x2b49e1,_0x33d3d1={'VVFpP':function(_0x343830){return _0x343830();},'ONDNm':function(_0x28acfc,_0x85e3e0){return _0x28acfc(_0x85e3e0);},'yYNXp':function(_0x3ab84f){return _0x3ab84f();},'SMtmS':'\x0aCreating\x20feature\x20review...','hCrPR':function(_0x195d0e,_0x552786){return _0x195d0e(_0x552786);},'RXGWx':function(_0x501695,_0x54e88a,_0x2d6e3e){return _0x501695(_0x54e88a,_0x2d6e3e);}},{envNames:_0x19914b}=await _0x33d3d1[_0x30e83c(0x177)](getEnvNames);_0x19914b[_0x30e83c(0x16b)]===0x0&&console[_0x30e83c(0x155)]('\x0a'+_0x33d3d1[_0x30e83c(0x1aa)](formatProfileRequiredMessage,_0x5a45db=>bold(_0x5a45db)));const _0x286f92=_0x6ca3c1['scenarios']?_0x6ca3c1['scenarios']['map'](_0x136936=>_0x136936['trim']()):[],_0x23f7a1=getGitRepoUrl(),_0x518d85=_0x33d3d1['yYNXp'](getGitBranch);console['log'](_0x33d3d1['SMtmS']);const _0x562a3c=await _0x33d3d1[_0x30e83c(0x1aa)](createFeature,{'name':_0x28eb49,'description':_0x6ca3c1['description'],'checklist':_0x286f92,'gitRepoUrl':_0x23f7a1,'gitBranch':_0x518d85});await setActiveFeatureId(_0x562a3c['id']),await _0x33d3d1[_0x30e83c(0x128)](tryStartCurrentSession,_0x562a3c['id']);const _0x34c1c9=process['env']['CLAUDE_SESSION_ID'];_0x34c1c9&&_0x33d3d1['RXGWx'](registerSession,_0x34c1c9,_0x562a3c['id']),console[_0x30e83c(0x130)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x562a3c['id']),displayFeature(_0x562a3c,_0x562a3c[_0x30e83c(0x1b5)]),console[_0x30e83c(0x130)](_0x30e83c(0x1f4));}export async function featureList(_0x4dfcf3){const _0xbe7d90=_0x2b49e1,_0x315e15={'fRJsN':function(_0x4c001a){return _0x4c001a();},'lxARG':function(_0x71cf09,_0xd85298){return _0x71cf09(_0xd85298);},'bukNn':function(_0x3bcc6e,_0x3ed976){return _0x3bcc6e>_0x3ed976;},'ZIKGE':function(_0x1668cf,_0x4d0cad){return _0x1668cf+_0x4d0cad;},'OLyaU':function(_0x4e59a4,_0x284d0e){return _0x4e59a4<_0x284d0e;},'AKpVq':function(_0x199123,_0x1e9ab0){return _0x199123!==_0x1e9ab0;},'emfNM':_0xbe7d90(0x16c)},_0x51b08f={'limit':_0x4dfcf3['limit']??0xa,'offset':_0x4dfcf3['offset']??0x0,'includeDeleted':_0x4dfcf3[_0xbe7d90(0x1cd)]};_0x4dfcf3['currentBranch']&&(_0x51b08f['gitRepoUrl']=getGitRepoUrl(),_0x51b08f['gitBranch']=_0x315e15['fRJsN'](getGitBranch));const _0x2e4fe7=await _0x315e15['lxARG'](listFeatures,_0x51b08f);if(_0x2e4fe7['items']['length']===0x0){console[_0xbe7d90(0x130)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x515a96=_0x315e15[_0xbe7d90(0x17d)](_0x2e4fe7[_0xbe7d90(0x116)],_0x2e4fe7['items'][_0xbe7d90(0x16b)])?_0xbe7d90(0x1f1)+_0x2e4fe7['items'][_0xbe7d90(0x16b)]+_0xbe7d90(0x126)+_0x2e4fe7['totalCount']:_0x2e4fe7['totalCount']+_0xbe7d90(0x196);console['log']('\x0a'+_0x515a96+':\x0a');for(const _0x4bee07 of _0x2e4fe7[_0xbe7d90(0x143)]){console[_0xbe7d90(0x130)](''+_0x4bee07['name']),console['log'](_0xbe7d90(0x17c)+_0x4bee07['id']),_0x4bee07[_0xbe7d90(0x14d)]&&console[_0xbe7d90(0x130)](_0xbe7d90(0x1dc)+getProgressDisplay(_0x4bee07[_0xbe7d90(0x14d)])),_0x4bee07[_0xbe7d90(0x14a)]&&console['log'](_0xbe7d90(0x15b)+_0x4bee07[_0xbe7d90(0x14a)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x4bee07[_0xbe7d90(0x161)])['toLocaleDateString']()),console[_0xbe7d90(0x130)]('');}const _0x3ea93d=_0x51b08f[_0xbe7d90(0x1d4)]??0xa,_0xb5ba4b=_0x315e15['ZIKGE'](_0x51b08f[_0xbe7d90(0x132)]??0x0,_0x2e4fe7[_0xbe7d90(0x143)]['length']);if(_0x315e15['OLyaU'](_0xb5ba4b,_0x2e4fe7['totalCount'])){const _0x3866b9=_0x315e15[_0xbe7d90(0x16a)](_0x3ea93d,0xa)?'\x20--limit\x20'+_0x3ea93d:'',_0x45c8fe=_0x4dfcf3[_0xbe7d90(0x1a1)]?'\x20--current-branch':'',_0x38f177=_0x4dfcf3[_0xbe7d90(0x1cd)]?_0x315e15[_0xbe7d90(0x13b)]:'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xb5ba4b+_0x3866b9+_0x45c8fe+_0x38f177);}}export async function featureShow(_0x172a93){const _0x492e7d=_0x2b49e1,_0x115214={'OVehD':function(_0x57f20b){return _0x57f20b();},'JLIrz':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','CWNaY':function(_0x4c5080,_0x1ffa60){return _0x4c5080(_0x1ffa60);}},_0x3ccc34=_0x172a93||await _0x115214[_0x492e7d(0x168)](getActiveFeatureId);if(!_0x3ccc34)throw new Error(_0x115214['JLIrz']);const _0x2efd5e=await _0x115214[_0x492e7d(0x152)](getFeature,_0x3ccc34);displayFeature(_0x2efd5e,_0x2efd5e[_0x492e7d(0x1b5)]);}function _0x8f54(_0x52a3cd,_0x4c53d5){_0x52a3cd=_0x52a3cd-0x111;const _0x9fb558=_0x9fb5();let _0x8f5410=_0x9fb558[_0x52a3cd];return _0x8f5410;}export async function featureResume(_0xa74a31){const _0x4d6819=_0x2b49e1,_0x4282e6={'cMGVa':function(_0x1f9fc7,_0x27acf8){return _0x1f9fc7(_0x27acf8);},'zTrNe':function(_0x59f966){return _0x59f966();},'hsPhA':function(_0x2dd70c,_0x1b6dac){return _0x2dd70c!==_0x1b6dac;},'toxAY':function(_0x18c41c,_0x271f44,_0x2b46ae){return _0x18c41c(_0x271f44,_0x2b46ae);},'xOFmN':function(_0x235979,_0x44d43a){return _0x235979||_0x44d43a;},'syImV':'any','oTpVO':function(_0x1b97ef,_0x561a04){return _0x1b97ef(_0x561a04);},'XlEcx':function(_0x4a5c45,_0x1ea21e){return _0x4a5c45===_0x1ea21e;},'pAhoC':_0x4d6819(0x1a3),'mMPGL':_0x4d6819(0x175),'ZMkdQ':_0x4d6819(0x141),'pCvWB':_0x4d6819(0x1be),'fpsks':function(_0x49c95f,_0x376438){return _0x49c95f(_0x376438);}};if(_0xa74a31){const _0x440262=await getFeature(_0xa74a31);await _0x4282e6['cMGVa'](setActiveFeatureId,_0x440262['id']);const _0x3a2262=_0x4282e6[_0x4d6819(0x1e6)](getGitBranch);_0x3a2262&&_0x4282e6[_0x4d6819(0x151)](_0x3a2262,_0x440262['gitBranch'])&&(await updateFeature(_0x440262['id'],{'gitBranch':_0x3a2262}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3a2262));console[_0x4d6819(0x130)](_0x4d6819(0x138)+_0x440262['name']+'\x20('+_0x440262['id']+')'),await _0x4282e6[_0x4d6819(0x18a)](tryStartCurrentSession,_0x440262['id']);const _0x6e969e=process['env']['CLAUDE_SESSION_ID'];_0x6e969e&&_0x4282e6['toxAY'](registerSession,_0x6e969e,_0x440262['id']);displayFeature(_0x440262,_0x440262[_0x4d6819(0x1b5)]),await printFeedbackNudge(_0x440262['id']);return;}const _0x1e316e=getGitRepoUrl(),_0x537c12=getGitBranch();if(!_0x1e316e&&!_0x537c12)throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x4282e6[_0x4d6819(0x179)](_0x1e316e,_0x4d6819(0x149))+_0x4d6819(0x1ca)+_0x4282e6['xOFmN'](_0x537c12,_0x4282e6[_0x4d6819(0x12d)])+'...');const _0x2235fd=await _0x4282e6['oTpVO'](listFeatures,{'gitRepoUrl':_0x1e316e,'gitBranch':_0x537c12}),_0xc6d31f=_0x2235fd['items'][_0x4d6819(0x154)](_0x26be41=>!_0x26be41['completedAt']);if(_0x4282e6[_0x4d6819(0x1cf)](_0xc6d31f['length'],0x0)){console[_0x4d6819(0x130)](_0x4282e6['pAhoC']),console['log'](_0x4d6819(0x127));return;}let _0xa084f8;if(_0xc6d31f[_0x4d6819(0x16b)]===0x1)_0xa084f8=_0xc6d31f[0x0];else{const _0x3008ce=process[_0x4d6819(0x164)]['isTTY']&&process[_0x4d6819(0x1ba)][_0x4d6819(0x189)];if(!_0x3008ce){console[_0x4d6819(0x130)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x3b4908 of _0xc6d31f){console[_0x4d6819(0x130)]('\x20\x20'+_0x3b4908['name']),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x3b4908['id']),_0x3b4908['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+_0x4282e6['cMGVa'](getProgressDisplay,_0x3b4908['stats'])),_0x3b4908[_0x4d6819(0x14a)]&&console['log'](_0x4d6819(0x1db)+_0x3b4908['gitBranch']);}throw new Error(_0x4d6819(0x174));}const {selected:_0x26d1b7}=await _0x189e33[_0x4d6819(0x187)]([{'type':_0x4282e6[_0x4d6819(0x111)],'name':_0x4282e6['ZMkdQ'],'message':_0x4282e6[_0x4d6819(0x146)],'choices':_0xc6d31f[_0x4d6819(0x1da)](_0x8c1323=>({'name':_0x8c1323[_0x4d6819(0x1d8)]+'\x20('+_0x8c1323['id']+')','value':_0x8c1323['id']}))}]);_0xa084f8=_0xc6d31f['find'](_0x2abd3b=>_0x2abd3b['id']===_0x26d1b7);}await setActiveFeatureId(_0xa084f8['id']);_0x537c12&&_0x537c12!==_0xa084f8['gitBranch']&&(await updateFeature(_0xa084f8['id'],{'gitBranch':_0x537c12}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x537c12));console['log'](_0x4d6819(0x138)+_0xa084f8['name']+'\x20('+_0xa084f8['id']+')'),await _0x4282e6[_0x4d6819(0x11d)](tryStartCurrentSession,_0xa084f8['id']);const _0x5eec7a=await getFeature(_0xa084f8['id']),_0x13cecc=process['env'][_0x4d6819(0x172)];_0x13cecc&&_0x4282e6[_0x4d6819(0x18f)](registerSession,_0x13cecc,_0x5eec7a['id']),displayFeature(_0x5eec7a,_0x5eec7a[_0x4d6819(0x1b5)]),await printFeedbackNudge(_0x5eec7a['id']);}async function printFeedbackNudge(_0xc635ee){const _0x4f045c=_0x2b49e1;try{const {items:_0x43c2dd}=await getActionItems(_0xc635ee);let _0x3d7a1a=0x0,_0x42b57c=0x0;for(const _0x82fe08 of _0x43c2dd){const _0x373fad=await getItemFeedback(_0xc635ee,_0x82fe08['id']);_0x373fad['unaddressedComments']['length']>0x0&&(_0x3d7a1a+=_0x373fad[_0x4f045c(0x198)][_0x4f045c(0x16b)],_0x42b57c++);}_0x3d7a1a>0x0&&(console[_0x4f045c(0x130)]('\x0a⚠️\x20\x20'+_0x3d7a1a+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x42b57c+'\x20scenario(s).'),console[_0x4f045c(0x130)]('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x5cf338){const _0xe09828=_0x2b49e1,_0x6bc362={'LFRpC':function(_0x5bed16,_0x49c3ea,_0x422d50){return _0x5bed16(_0x49c3ea,_0x422d50);}};try{const {sessions:_0x1d1cc2}=await listFeatureSessions(_0x5cf338),_0x59c02b=_0x1d1cc2['find'](_0x1db3e9=>_0x1db3e9[_0xe09828(0x1d2)]==='ready');_0x59c02b&&(await _0x6bc362[_0xe09828(0x1e3)](startSession,_0x5cf338,_0x59c02b['id']),console[_0xe09828(0x130)](_0xe09828(0x122)+_0x59c02b['iteration']));}catch{}}export async function featureReport(_0x32b698,_0x23e9c3){const _0x27890e=_0x2b49e1,_0x35b19f={'mSVyf':'\x0aGenerating\x20report...','Jyqyh':function(_0x939ddd,_0x122bd8,_0x479626,_0x4be099){return _0x939ddd(_0x122bd8,_0x479626,_0x4be099);},'rBxsb':_0x27890e(0x11c),'sBcCb':function(_0x2187ec,_0x38ed83){return _0x2187ec(_0x38ed83);},'fMCVB':_0x27890e(0x18c)},_0x1f2886=_0x32b698||await getActiveFeatureId();if(!_0x1f2886)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console['log'](_0x35b19f['mSVyf']);const _0x4e428d=await getFeatureReportMarkdown(_0x1f2886,{'style':_0x23e9c3[_0x27890e(0x1c3)]}),_0x693d3d=_0x23e9c3['output']||_0x35b19f[_0x27890e(0x12a)](join,getRangerDir(),_0x35b19f['rBxsb'],_0x1f2886+'.md'),_0x57a8ef=join(_0x693d3d,'..');!_0x35b19f['sBcCb'](existsSync,_0x57a8ef)&&await mkdir(_0x57a8ef,{'recursive':!![]}),await _0x35b19f['Jyqyh'](writeFile,_0x693d3d,_0x4e428d,_0x35b19f[_0x27890e(0x157)]),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x693d3d);}function getScenarioResult(_0x3f0519){const _0x17ac39=_0x2b49e1,_0x1d1b32={'UADwk':'closed'};if(_0x3f0519[_0x17ac39(0x1d2)]===_0x17ac39(0x199))return _0x3f0519[_0x17ac39(0x1b1)]??_0x1d1b32[_0x17ac39(0x14f)];if(_0x3f0519[_0x17ac39(0x1d2)]===_0x17ac39(0x1af))return'in_progress';return _0x3f0519['status'];}function getScenarioRationale(_0x422372,_0x542839){const _0x3ff774=_0x2b49e1;if(_0x542839)return _0x542839;if(_0x422372[_0x3ff774(0x1ac)])return _0x422372['blockedReason'];if(_0x422372['incompleteReason'])return _0x422372[_0x3ff774(0x1e0)];if(_0x422372['canceledReason'])return _0x422372['canceledReason'];if(_0x422372[_0x3ff774(0x1e4)])return _0x422372[_0x3ff774(0x1e4)];return null;}export async function featureReportPrDescription(_0x46f8e4,_0x845838){const _0x5704cb=_0x2b49e1,_0x4d4e35={'muHdU':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','hBBqx':'\x0aAvailable\x20scenarios:','mayWm':function(_0x36e16a,_0x29e024){return _0x36e16a===_0x29e024;},'FQnyS':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','kDUIT':function(_0x5eb492,_0x52c833,_0x35fe22,_0x5572a2){return _0x5eb492(_0x52c833,_0x35fe22,_0x5572a2);},'BFlHT':function(_0x30b478,_0x1277c9,_0x4865af){return _0x30b478(_0x1277c9,_0x4865af);}},_0x13fe89=_0x46f8e4||await getActiveFeatureId();if(!_0x13fe89)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x49500c=await getFeature(_0x13fe89),_0x2708f8=_0x49500c[_0x5704cb(0x1b5)]||[],_0x9851c9=getCurrentSessionItems(_0x49500c,_0x2708f8);_0x9851c9[_0x5704cb(0x16b)]===0x0&&(console['error'](_0x4d4e35[_0x5704cb(0x166)]),process[_0x5704cb(0x1ad)](0x1));const _0x2f5045=_0x845838[_0x5704cb(0x1ed)]??[],_0x14abb1=_0x2f5045[_0x5704cb(0x154)](_0x53b065=>!Number[_0x5704cb(0x18b)](_0x53b065)||_0x53b065<0x1||_0x53b065>_0x9851c9[_0x5704cb(0x16b)]);if(_0x14abb1['length']>0x0){console[_0x5704cb(0x1b3)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x14abb1['join'](',\x20')),console['log'](_0x4d4e35['hBBqx']);for(let _0x127146=0x0;_0x127146<_0x9851c9['length'];_0x127146++){console[_0x5704cb(0x130)]('\x20\x20'+(_0x127146+0x1)+'.\x20'+_0x9851c9[_0x127146][_0x5704cb(0x17b)]);}process[_0x5704cb(0x1ad)](0x1);}const _0x3cfae7=new Set(_0x2f5045['map'](_0x45edd2=>_0x45edd2-0x1)),_0x451b80=_0x9851c9[_0x5704cb(0x154)]((_0x22957f,_0x9ac2d6)=>!_0x3cfae7['has'](_0x9ac2d6));_0x4d4e35[_0x5704cb(0x19a)](_0x451b80[_0x5704cb(0x16b)],0x0)&&(console['error'](_0x4d4e35['FQnyS']),process[_0x5704cb(0x1ad)](0x1));if(_0x845838['json'])await _0x4d4e35[_0x5704cb(0x1f2)](outputJsonReport,_0x13fe89,_0x49500c,_0x451b80);else{const _0x493669=await _0x4d4e35[_0x5704cb(0x131)](getFeatureReportMarkdown,_0x13fe89,{'itemIds':_0x451b80['map'](_0x1305ff=>_0x1305ff['id'])});process['stdout'][_0x5704cb(0x153)](_0x493669[_0x5704cb(0x16e)]()+'\x0a');}}async function outputJsonReport(_0xa95159,_0x4050c4,_0x1436ef){const _0x134d5a=_0x2b49e1,_0x345550={'nUyfd':function(_0x1e44b3,_0x5f4edf){return _0x1e44b3(_0x5f4edf);},'LQsaQ':function(_0x25fa7b,_0x85e29,_0xe8f363){return _0x25fa7b(_0x85e29,_0xe8f363);},'bKIHn':function(_0x2d1c14){return _0x2d1c14();},'xanfg':function(_0x73da8e,_0x33a842){return _0x73da8e+_0x33a842;}},_0x297102=_0x345550['bKIHn'](getApiBaseUrl),_0x58e7cf=await _0x345550[_0x134d5a(0x1f5)](getFeatureReport,_0xa95159),_0x596ff4=new Map(_0x58e7cf['checklistItems'][_0x134d5a(0x1da)](_0x9ecfd0=>[_0x9ecfd0['id'],_0x9ecfd0])),_0xc202f2=await Promise['all'](_0x1436ef['map'](async _0x5e5ad3=>{const _0x436aa5=_0x134d5a,_0x293a97=_0x596ff4[_0x436aa5(0x133)](_0x5e5ad3['id']),_0x96b57f=_0x293a97?.[_0x436aa5(0x1c4)]??null;let _0x10aef6=[];if(_0x5e5ad3['browserSessionId'])try{const {steps:_0x3efc4e}=await _0x345550[_0x436aa5(0x1f5)](getBrowserSessionSteps,_0x5e5ad3[_0x436aa5(0x1bb)]);_0x3efc4e['length']>0x0&&(_0x10aef6=_0x3efc4e[_0x436aa5(0x1da)](_0x1a5f5b=>{const _0x17e4c7=_0x436aa5,_0x57a970=_0x1a5f5b['assets'][_0x17e4c7(0x182)](_0x4291f0=>_0x4291f0['assetType']===_0x17e4c7(0x135)&&_0x4291f0[_0x17e4c7(0x125)]===_0x17e4c7(0x11e))??_0x1a5f5b['assets']['find'](_0x1d6993=>_0x1d6993[_0x17e4c7(0x124)]===_0x17e4c7(0x135));let _0x58601e=null,_0x3b17a8=null;if(_0x57a970){const _0x186254=_0x57a970['storage'][_0x17e4c7(0x185)][_0x17e4c7(0x1e1)]('/')[_0x17e4c7(0x19b)]();_0x58601e=_0x297102+_0x17e4c7(0x156)+_0x5e5ad3['browserSessionId']+'/artifacts/'+_0x186254,_0x186254&&(_0x3b17a8=_0x186254['replace'](/\.\w+$/,'')[_0x17e4c7(0x1f0)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x3b17a8||_0x1a5f5b[_0x17e4c7(0x17b)]||_0x1a5f5b['stepName']||'Step\x20'+_0x1a5f5b[_0x17e4c7(0x13a)],'screenshot':_0x58601e,'is_key_step':_0x1a5f5b['isKeyStep']};}));}catch{}return _0x10aef6[_0x436aa5(0x16b)]===0x0&&_0x96b57f?.['screenshotUrls']&&(_0x10aef6=_0x96b57f[_0x436aa5(0x1e7)][_0x436aa5(0x1da)]((_0x57198a,_0x551413)=>({'description':'Screenshot\x20'+(_0x551413+0x1),'screenshot':_0x57198a,'is_key_step':![]}))),{'description':_0x5e5ad3[_0x436aa5(0x17b)],'result':_0x345550[_0x436aa5(0x1f5)](getScenarioResult,_0x5e5ad3),'rationale':_0x345550['LQsaQ'](getScenarioRationale,_0x5e5ad3,_0x96b57f?.[_0x436aa5(0x1c2)]),'steps':_0x10aef6};})),_0x3b8d89={'url':_0x4050c4[_0x134d5a(0x1bd)],'scenarios':_0xc202f2};process['stdout']['write'](_0x345550['xanfg'](JSON['stringify'](_0x3b8d89,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x2a4aac){const _0x179565=_0x2b49e1,_0x2f8e30={'BxQUA':function(_0xf104ae){return _0xf104ae();},'ocPDx':function(_0x11e78a,_0x1a208e){return _0x11e78a(_0x1a208e);},'EcWBB':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','NvOkT':'Current\x20session\x20not\x20found.','ZAKya':_0x179565(0x1b7),'gOtVy':'\x0a✅\x20Session\x20is\x20already\x20completed.','iTmIS':'\x0aConcluding\x20session...','cUBiy':function(_0x1d1d0d,_0x3fedea,_0x26c6ea){return _0x1d1d0d(_0x3fedea,_0x26c6ea);}},_0x5ebd6a=_0x2a4aac||await _0x2f8e30['BxQUA'](getActiveFeatureId);if(!_0x5ebd6a)throw new Error(_0x179565(0x115));const _0x252e6d=await _0x2f8e30['ocPDx'](getFeature,_0x5ebd6a);if(!_0x252e6d[_0x179565(0x1ee)])throw new Error(_0x2f8e30['EcWBB']);const {sessions:_0x35bd6a}=await listFeatureSessions(_0x5ebd6a),_0x22fe11=_0x35bd6a[_0x179565(0x182)](_0x49a19b=>_0x49a19b['id']===_0x252e6d['currentSessionId']);if(!_0x22fe11)throw new Error(_0x2f8e30['NvOkT']);if(_0x22fe11['status']===_0x2f8e30[_0x179565(0x190)]){console['log'](_0x2f8e30[_0x179565(0x1ec)]);return;}if(_0x22fe11['status']!==_0x179565(0x147))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x22fe11['status']);console[_0x179565(0x130)](_0x2f8e30['iTmIS']),await _0x2f8e30[_0x179565(0x1cc)](concludeSession,_0x5ebd6a,_0x252e6d[_0x179565(0x1ee)]),console[_0x179565(0x130)](_0x179565(0x1d7)+_0x22fe11['iteration']+'\x20concluded.'),console[_0x179565(0x130)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x3fd09d){const _0x38e5ad=_0x2b49e1,_0x1b18a0={'IxhzC':function(_0x2f617e,_0x3cf42e){return _0x2f617e(_0x3cf42e);},'EGcOY':'No\x20sessions\x20found.','TZBrV':function(_0x58f762,_0x2a7a10){return _0x58f762===_0x2a7a10;},'GyxSv':_0x38e5ad(0x1b7),'DXabf':'in_progress'},_0x1a7015=_0x3fd09d||await getActiveFeatureId();if(!_0x1a7015)throw new Error(_0x38e5ad(0x121));const _0x353f4b=await _0x1b18a0['IxhzC'](getFeature,_0x1a7015);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x353f4b[_0x38e5ad(0x1d8)]+'\x0a');const {sessions:_0x66479c}=await _0x1b18a0[_0x38e5ad(0x13c)](listFeatureSessions,_0x1a7015);if(_0x66479c[_0x38e5ad(0x16b)]===0x0){console['log'](_0x1b18a0['EGcOY']);return;}for(const _0x27b970 of _0x66479c){const _0x272c57=_0x1b18a0[_0x38e5ad(0x113)](_0x27b970['status'],_0x1b18a0[_0x38e5ad(0x1bc)])?'✅':_0x27b970['status']===_0x1b18a0[_0x38e5ad(0x1a9)]?'🔄':'▶️';console[_0x38e5ad(0x130)](_0x272c57+'\x20Session\x20'+_0x27b970['iteration']+'\x20('+_0x27b970['id']+')'),console['log'](_0x38e5ad(0x1c5)+_0x27b970['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x27b970['createdAt'])['toLocaleString']()),_0x27b970[_0x38e5ad(0x15f)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x27b970['completedAt'])[_0x38e5ad(0x19e)]()),console['log']('');}}export async function featureAddScenario(_0x3784d1,_0x5d2360){const _0x3aec06=_0x2b49e1,_0x1aaac3={'tnAnC':function(_0x36177a){return _0x36177a();},'KQTnm':_0x3aec06(0x115),'eYnNq':function(_0x12bcc6,_0x579f88,_0x1917b1){return _0x12bcc6(_0x579f88,_0x1917b1);}},_0x4c213c=_0x5d2360||await _0x1aaac3[_0x3aec06(0x1b0)](getActiveFeatureId);if(!_0x4c213c)throw new Error(_0x1aaac3[_0x3aec06(0x159)]);const _0x47f25e=await getFeature(_0x4c213c);if(_0x47f25e['latestReview']&&!_0x47f25e[_0x3aec06(0x170)][_0x3aec06(0x144)])throw new Error(_0x3aec06(0x17f)+_0x47f25e[_0x3aec06(0x1bd)]);await _0x1aaac3['eYnNq'](createChecklistItem,_0x4c213c,_0x3784d1);const _0x1fdbbe=await getFeature(_0x4c213c);console[_0x3aec06(0x130)]('\x0a✅\x20Scenario\x20added'),_0x1aaac3['eYnNq'](displayFeature,_0x1fdbbe,_0x1fdbbe['checklistItems']);}export async function featureEditScenario(_0x252880,_0x48242c){const _0x4c3da1=_0x2b49e1,_0x31a416={'dDYqa':function(_0xb2db60,_0x28c2ba){return _0xb2db60(_0x28c2ba);},'LSbtf':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','QKyex':'Please\x20finish\x20your\x20review\x20first:','lElDM':_0x4c3da1(0x1eb),'dWsWh':function(_0x114d52,_0x55ad37){return _0x114d52<_0x55ad37;},'fdawK':function(_0x59880d,_0x405ce2){return _0x59880d>=_0x405ce2;},'iqTKZ':function(_0x499bde,_0x66ac69){return _0x499bde<_0x66ac69;},'cOViT':function(_0xce62ae,_0x382c85){return _0xce62ae+_0x382c85;}},_0x2af417=_0x48242c['id']||await getActiveFeatureId();!_0x2af417&&(console[_0x4c3da1(0x1b3)](_0x4c3da1(0x1a5)),console[_0x4c3da1(0x1b3)](_0x4c3da1(0x1ea)),process[_0x4c3da1(0x1ad)](0x1));const _0x12a859=await _0x31a416[_0x4c3da1(0x1ab)](getFeature,_0x2af417);_0x12a859['latestReview']&&!_0x12a859['latestReview'][_0x4c3da1(0x144)]&&(console[_0x4c3da1(0x1b3)](_0x31a416['LSbtf']),console[_0x4c3da1(0x1b3)](_0x31a416[_0x4c3da1(0x1b6)]),console[_0x4c3da1(0x1b3)]('\x20\x20'+_0x12a859[_0x4c3da1(0x1bd)]),process[_0x4c3da1(0x1ad)](0x1));const _0x3e3884=_0x12a859['checklistItems']||[];_0x3e3884['length']===0x0&&(console['error'](_0x31a416['lElDM']),process['exit'](0x1));if(_0x48242c['scenario']===undefined){console['error'](_0x4c3da1(0x12e)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x288bea=0x0;_0x31a416['dWsWh'](_0x288bea,_0x3e3884[_0x4c3da1(0x16b)]);_0x288bea++){console[_0x4c3da1(0x130)]('\x20\x20'+(_0x288bea+0x1)+'.\x20'+_0x3e3884[_0x288bea]['description']);}process[_0x4c3da1(0x1ad)](0x1);}const _0x22625e=_0x48242c['scenario']-0x1;if(_0x22625e<0x0||_0x31a416['fdawK'](_0x22625e,_0x3e3884[_0x4c3da1(0x16b)])){console[_0x4c3da1(0x1b3)](_0x4c3da1(0x1ef)+_0x48242c[_0x4c3da1(0x120)]+_0x4c3da1(0x1e2)+_0x3e3884[_0x4c3da1(0x16b)]+'\x20scenarios.'),console['log'](_0x4c3da1(0x150));for(let _0x3b3ae8=0x0;_0x31a416[_0x4c3da1(0x142)](_0x3b3ae8,_0x3e3884['length']);_0x3b3ae8++){console[_0x4c3da1(0x130)]('\x20\x20'+_0x31a416['cOViT'](_0x3b3ae8,0x1)+'.\x20'+_0x3e3884[_0x3b3ae8]['description']);}process[_0x4c3da1(0x1ad)](0x1);}const _0x104011=_0x3e3884[_0x22625e];await updateChecklistItem(_0x2af417,_0x104011['id'],{'description':_0x252880});const _0xb46ae6=await getFeature(_0x2af417);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0xb46ae6,_0xb46ae6['checklistItems']);}async function downloadFeedbackImage(_0x253834,_0x2a6d0d){const _0x1857e3=_0x2b49e1,_0x2138e0={'BSqCh':'feedback-images','rwVAH':function(_0x35412f,_0xfce2ad,_0x16b62b){return _0x35412f(_0xfce2ad,_0x16b62b);},'lTdvF':function(_0x296d0f,_0x41c219,_0x413aa4){return _0x296d0f(_0x41c219,_0x413aa4);}};try{const _0x368b52=join(getRangerDir(),_0x2138e0['BSqCh']);await _0x2138e0[_0x1857e3(0x1d3)](mkdir,_0x368b52,{'recursive':!![]});const _0x1e4fc1=join(_0x368b52,'comment_'+_0x2a6d0d+'.png'),_0x5b158f=await fetch(_0x253834);if(!_0x5b158f['ok'])return null;const _0x4f5e96=Buffer[_0x1857e3(0x1e8)](await _0x5b158f['arrayBuffer']());return await _0x2138e0['lTdvF'](writeFile,_0x1e4fc1,_0x4f5e96),_0x1e4fc1;}catch{return null;}}export async function featureGetReview(_0x4f4b2e){const _0x2233f7=_0x2b49e1,_0x56ab49={'YsdJR':function(_0x33ca50){return _0x33ca50();},'hvWVb':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ZytxV':function(_0x4cba44,_0x83e8a6){return _0x4cba44(_0x83e8a6);},'EhRTP':function(_0x110c9e,_0x4ad4){return _0x110c9e<_0x4ad4;},'nVDKS':function(_0x4e6b9f,_0x2c692d){return _0x4e6b9f+_0x2c692d;},'pRJyR':_0x2233f7(0x1a8),'wjPav':_0x2233f7(0x178),'tkdLd':_0x2233f7(0x15e),'glsDo':function(_0x4f2630,_0x859de8,_0x1042f3){return _0x4f2630(_0x859de8,_0x1042f3);},'CaqLh':function(_0x4101cd,_0x4f4021){return _0x4101cd===_0x4f4021;},'gInXv':'point','lzDRq':function(_0x38214b,_0x3b3634){return _0x38214b>=_0x3b3634;}},_0x592079=_0x4f4b2e||await _0x56ab49['YsdJR'](getActiveFeatureId);if(!_0x592079)throw new Error(_0x56ab49[_0x2233f7(0x184)]);const _0xd76151=await getFeature(_0x592079),{items:_0xba96f8}=await _0x56ab49[_0x2233f7(0x1c6)](getActionItems,_0x592079);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0xd76151[_0x2233f7(0x1d8)]+'\x20('+_0xd76151['id']+')\x0a');if(_0xba96f8[_0x2233f7(0x16b)]===0x0){console['log'](_0x2233f7(0x1b9));return;}for(let _0x80afd3=0x0;_0x56ab49[_0x2233f7(0x14e)](_0x80afd3,_0xba96f8['length']);_0x80afd3++){const _0x1de65c=_0xba96f8[_0x80afd3],_0x5e66af=_0x1de65c['version']>0x1?'\x20(v'+_0x1de65c[_0x2233f7(0x1c8)]+')':'',_0x5ba148=await getItemFeedback(_0x592079,_0x1de65c['id']);if(_0x5ba148['unaddressedComments'][_0x2233f7(0x16b)]>0x0){console[_0x2233f7(0x130)]('Scenario\x20'+_0x56ab49[_0x2233f7(0x160)](_0x80afd3,0x1)+':\x20\x22'+_0x1de65c['description']+'\x22'+_0x5e66af+_0x2233f7(0x148)+_0x5ba148[_0x2233f7(0x198)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x3aaa74 of _0x5ba148['unaddressedComments']){const _0xc6f4e8=new Date(_0x3aaa74['createdAt'])['toLocaleDateString'](_0x56ab49[_0x2233f7(0x1a0)],{'month':_0x56ab49[_0x2233f7(0x13f)],'day':_0x2233f7(0x114)}),_0x5d1003=_0x3aaa74['authorName']||_0x3aaa74[_0x2233f7(0x12c)]||_0x56ab49[_0x2233f7(0x1d0)];console['log']('\x20\x20💬\x20'+_0x5d1003+'\x20('+_0xc6f4e8+'):\x20\x22'+_0x3aaa74['content']+'\x22');if(_0x3aaa74[_0x2233f7(0x118)]){const _0x1d1ad3=await _0x56ab49['glsDo'](downloadFeedbackImage,_0x3aaa74['assetUrl'],_0x3aaa74['id']);_0x1d1ad3&&console[_0x2233f7(0x130)](_0x2233f7(0x137)+_0x1d1ad3);}if(_0x3aaa74[_0x2233f7(0x16d)]){const _0x1f30f6=_0x3aaa74['domRef'][_0x2233f7(0x1a6)]['split']('\x20>\x20')[_0x2233f7(0x19b)]()?.[_0x2233f7(0x1e1)](':')[0x0]||'element',_0x249291=_0x3aaa74['domRef']['textContent']?'\x20\x22'+_0x3aaa74['domRef'][_0x2233f7(0x19f)][_0x2233f7(0x140)](0x0,0x3c)+'\x22':'';console[_0x2233f7(0x130)](_0x2233f7(0x123)+_0x1f30f6+'>'+_0x249291),console[_0x2233f7(0x130)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x3aaa74['domRef']['selector']);}else{if(_0x3aaa74[_0x2233f7(0x1b2)]){const _0x2591da=_0x3aaa74[_0x2233f7(0x1b2)][_0x2233f7(0x136)];_0x56ab49['CaqLh'](_0x3aaa74['spatial'][_0x2233f7(0x12b)],_0x56ab49[_0x2233f7(0x192)])&&_0x56ab49[_0x2233f7(0x1e9)](_0x2591da['length'],0x2)?console[_0x2233f7(0x130)](_0x2233f7(0x1cb)+_0x2591da[0x0]['toFixed'](0x2)+',\x20'+_0x2591da[0x1]['toFixed'](0x2)+')'):console[_0x2233f7(0x130)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x3aaa74[_0x2233f7(0x1b2)]['type']+'\x20at\x20['+_0x2591da[_0x2233f7(0x1da)](_0x3bd6c5=>_0x3bd6c5[_0x2233f7(0x18d)](0x2))['join'](',\x20')+']');}}}if(_0x5ba148[_0x2233f7(0x183)]){console[_0x2233f7(0x130)](_0x2233f7(0x13d));for(const _0x55185e of _0x5ba148['canonicalFlow'][_0x2233f7(0x1e1)]('\x0a')){console['log'](_0x2233f7(0x180)+_0x55185e);}}}else console[_0x2233f7(0x130)](_0x2233f7(0x1b8)+(_0x80afd3+0x1)+_0x2233f7(0x194)+_0x1de65c['description']+'\x22'+_0x5e66af+_0x2233f7(0x139)),console['log'](_0x2233f7(0x1c7));console[_0x2233f7(0x130)]('');}}export async function featureDelete(_0x5091f0){const _0x5664b0=_0x2b49e1,_0x2ed0b2={'uHMGN':_0x5664b0(0x115),'OMYRd':function(_0x37ce03,_0x614528){return _0x37ce03(_0x614528);},'eaoRx':function(_0x599868,_0x212288){return _0x599868+_0x212288;},'PLhBg':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x50f461=_0x5091f0||await getActiveFeatureId();if(!_0x50f461)throw new Error(_0x2ed0b2['uHMGN']);const _0x3d4dfa=await _0x2ed0b2['OMYRd'](getFeature,_0x50f461);await softDeleteFeature(_0x50f461),console['log'](_0x5664b0(0x176)+_0x3d4dfa[_0x5664b0(0x1d8)]+'\x20('+_0x50f461+')'),console['log'](_0x2ed0b2[_0x5664b0(0x145)](_0x2ed0b2['PLhBg'],_0x50f461));}export async function featureRestore(_0x1b7eb5){const _0x12a7ec=_0x2b49e1;await restoreFeature(_0x1b7eb5);const _0x123ed0=await getFeature(_0x1b7eb5);console['log'](_0x12a7ec(0x12f)+_0x123ed0[_0x12a7ec(0x1d8)]+'\x20('+_0x1b7eb5+')'),displayFeature(_0x123ed0,_0x123ed0['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x858422,_0x299918){const _0x1fef73=_0x3545,_0x556f2a=_0x858422();while(!![]){try{const _0x3916c9=parseInt(_0x1fef73(0x115))/0x1+parseInt(_0x1fef73(0x112))/0x2+-parseInt(_0x1fef73(0x111))/0x3*(-parseInt(_0x1fef73(0x119))/0x4)+parseInt(_0x1fef73(0x11d))/0x5*(parseInt(_0x1fef73(0x11a))/0x6)+parseInt(_0x1fef73(0x113))/0x7*(parseInt(_0x1fef73(0x114))/0x8)+-parseInt(_0x1fef73(0x117))/0x9*(-parseInt(_0x1fef73(0x11b))/0xa)+-parseInt(_0x1fef73(0x118))/0xb;if(_0x3916c9===_0x299918)break;else _0x556f2a['push'](_0x556f2a['shift']());}catch(_0x1d1541){_0x556f2a['push'](_0x556f2a['shift']());}}}(_0x4677,0xd4c71));function _0x4677(){const _0x4432c7=['10592771knaOzp','8nqDNAm','378611AsGFKr','error','110241jOazPh','35052809AKRpGb','4ffksCf','756gJGwqM','20JrNBLg','Unknown\x20hook:\x20','55295GzhtZF','keys','1921635OjmffD','215630KyoeGy'];_0x4677=function(){return _0x4432c7;};return _0x4677();}function _0x3545(_0x574a77,_0xa7f045){_0x574a77=_0x574a77-0x111;const _0x467738=_0x4677();let _0x354585=_0x467738[_0x574a77];return _0x354585;}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(_0xd2ec6d,_0xa60320){const _0x18944c=_0x3545,_0x36c653={'bfAPR':function(_0x10859a,_0x74906a){return _0x10859a(_0x74906a);}},_0x27420e=HOOKS[_0xd2ec6d];if(!_0x27420e){const _0x45a685=Object[_0x18944c(0x11e)](HOOKS)['join'](',\x20');console[_0x18944c(0x116)](_0x18944c(0x11c)+_0xd2ec6d),console[_0x18944c(0x116)]('Valid\x20hooks:\x20'+_0x45a685),process['exit'](0x1);}await _0x36c653['bfAPR'](_0x27420e,_0xa60320);}
1
+ (function(_0x57299d,_0x2895f0){const _0x4ca42f=_0x350d,_0x4b9b6b=_0x57299d();while(!![]){try{const _0x49d113=-parseInt(_0x4ca42f(0xd0))/0x1*(-parseInt(_0x4ca42f(0xd7))/0x2)+-parseInt(_0x4ca42f(0xd8))/0x3+-parseInt(_0x4ca42f(0xd6))/0x4+-parseInt(_0x4ca42f(0xd4))/0x5+parseInt(_0x4ca42f(0xd1))/0x6+parseInt(_0x4ca42f(0xd5))/0x7*(-parseInt(_0x4ca42f(0xd9))/0x8)+-parseInt(_0x4ca42f(0xdb))/0x9*(-parseInt(_0x4ca42f(0xcf))/0xa);if(_0x49d113===_0x2895f0)break;else _0x4b9b6b['push'](_0x4b9b6b['shift']());}catch(_0x1dbebd){_0x4b9b6b['push'](_0x4b9b6b['shift']());}}}(_0xce2a,0xae72d));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x350d(_0x2fbde0,_0x2473fe){_0x2fbde0=_0x2fbde0-0xcf;const _0xce2acb=_0xce2a();let _0x350d8c=_0xce2acb[_0x2fbde0];return _0x350d8c;}export async function hook(_0x29d734,_0x170647){const _0x1899f0=_0x350d,_0x146e41={'ZQVgy':function(_0x2bf1bd,_0x5913b5){return _0x2bf1bd(_0x5913b5);}},_0x24cb66=HOOKS[_0x29d734];if(!_0x24cb66){const _0x2f22d9=Object['keys'](HOOKS)['join'](',\x20');console[_0x1899f0(0xd2)](_0x1899f0(0xd3)+_0x29d734),console['error'](_0x1899f0(0xdc)+_0x2f22d9),process[_0x1899f0(0xda)](0x1);}await _0x146e41['ZQVgy'](_0x24cb66,_0x170647);}function _0xce2a(){const _0x5f15f7=['error','Unknown\x20hook:\x20','4989310XvUtyI','357aBEGix','841288HtWRoO','2qgTfSF','1873875QELHSE','139840xrIsVK','exit','397818qSNeyf','Valid\x20hooks:\x20','600Uxfzin','199772qmVnAU','3521628AQRRty'];_0xce2a=function(){return _0x5f15f7;};return _0xce2a();}
@@ -1 +1 @@
1
- (function(_0x4ed8b6,_0x284608){const _0x5710ba=_0x509f,_0x360555=_0x4ed8b6();while(!![]){try{const _0x39f6cb=parseInt(_0x5710ba(0xc3))/0x1*(parseInt(_0x5710ba(0xbe))/0x2)+-parseInt(_0x5710ba(0xc6))/0x3*(parseInt(_0x5710ba(0xc8))/0x4)+-parseInt(_0x5710ba(0xc9))/0x5*(parseInt(_0x5710ba(0xbc))/0x6)+-parseInt(_0x5710ba(0xc0))/0x7*(parseInt(_0x5710ba(0xc4))/0x8)+parseInt(_0x5710ba(0xbd))/0x9*(-parseInt(_0x5710ba(0xc1))/0xa)+parseInt(_0x5710ba(0xc7))/0xb+-parseInt(_0x5710ba(0xbf))/0xc*(-parseInt(_0x5710ba(0xc5))/0xd);if(_0x39f6cb===_0x284608)break;else _0x360555['push'](_0x360555['shift']());}catch(_0x435cc1){_0x360555['push'](_0x360555['shift']());}}}(_0x5f0c,0xa9190));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x509f(_0x1f2fc1,_0x39cf9f){_0x1f2fc1=_0x1f2fc1-0xbc;const _0x5f0c32=_0x5f0c();let _0x509f2e=_0x5f0c32[_0x1f2fc1];return _0x509f2e;}const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0x5f0c(){const _0xaf8b61=['evLHO','1ZbXjzE','840776HfuDJu','7237165fWujYx','6IRVDAT','14249961TKqEKy','2228356qSATHr','4440sKWEod','3996YAWLKX','36wUchJN','2310800oZRuwt','24aNeljg','21kOqHMV','2126900jYMDiT'];_0x5f0c=function(){return _0xaf8b61;};return _0x5f0c();}export async function autoPrompt(){const _0x3aa994=_0x509f,_0x22cb65={'evLHO':function(_0x4246af,_0x32f2d9){return _0x4246af(_0x32f2d9);}},_0x3d75d1=await readHookInput(),_0x28535f=_0x3d75d1?.['session_id'];if(!_0x28535f)return;if(_0x22cb65['evLHO'](isSessionEnabled,_0x28535f)||_0x22cb65[_0x3aa994(0xc2)](hasSessionBeenPrompted,_0x28535f))return;markSessionPrompted(_0x28535f),console['log'](AUTO_PROMPT_TEXT);}
1
+ (function(_0x174d7d,_0x2e4f77){const _0x3fd4f9=_0x59e5,_0x476179=_0x174d7d();while(!![]){try{const _0x1c1a1c=parseInt(_0x3fd4f9(0xb7))/0x1*(parseInt(_0x3fd4f9(0xbd))/0x2)+parseInt(_0x3fd4f9(0xb9))/0x3+parseInt(_0x3fd4f9(0xb4))/0x4+parseInt(_0x3fd4f9(0xbe))/0x5*(parseInt(_0x3fd4f9(0xba))/0x6)+-parseInt(_0x3fd4f9(0xb6))/0x7+parseInt(_0x3fd4f9(0xb8))/0x8*(-parseInt(_0x3fd4f9(0xbb))/0x9)+parseInt(_0x3fd4f9(0xb5))/0xa*(-parseInt(_0x3fd4f9(0xb3))/0xb);if(_0x1c1a1c===_0x2e4f77)break;else _0x476179['push'](_0x476179['shift']());}catch(_0x5a222c){_0x476179['push'](_0x476179['shift']());}}}(_0x1eca,0x291e2));import{readHookInput}from'./output.js';function _0x1eca(){const _0x3048b7=['19064XfVjpP','260868VnbqJn','1152bRvYiu','747RIFvOR','session_id','846hzpTQM','6205hbfjvT','240592JgYdUm','345048fPWhiG','40LOIVdQ','891926oYmbvK','401vaTnhl'];_0x1eca=function(){return _0x3048b7;};return _0x1eca();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x59e5(_0x2b5a22,_0x1b7786){_0x2b5a22=_0x2b5a22-0xb3;const _0x1ecaf2=_0x1eca();let _0x59e53a=_0x1ecaf2[_0x2b5a22];return _0x59e53a;}const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0xee5af8=_0x59e5,_0x11b87c={'BVnVz':function(_0x330520,_0x3ffc32){return _0x330520(_0x3ffc32);}},_0x5874ca=await readHookInput(),_0xc517c=_0x5874ca?.[_0xee5af8(0xbc)];if(!_0xc517c)return;if(_0x11b87c['BVnVz'](isSessionEnabled,_0xc517c)||hasSessionBeenPrompted(_0xc517c))return;markSessionPrompted(_0xc517c),console['log'](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x27590b,_0x550a1f){const _0xe7bf6a=_0x1a09,_0x5c0736=_0x27590b();while(!![]){try{const _0x529537=-parseInt(_0xe7bf6a(0x1a8))/0x1+-parseInt(_0xe7bf6a(0x19e))/0x2*(-parseInt(_0xe7bf6a(0x1a4))/0x3)+parseInt(_0xe7bf6a(0x1a2))/0x4+-parseInt(_0xe7bf6a(0x1ad))/0x5*(parseInt(_0xe7bf6a(0x1a3))/0x6)+-parseInt(_0xe7bf6a(0x19f))/0x7*(-parseInt(_0xe7bf6a(0x1a5))/0x8)+parseInt(_0xe7bf6a(0x1ab))/0x9*(-parseInt(_0xe7bf6a(0x1a6))/0xa)+parseInt(_0xe7bf6a(0x1a9))/0xb;if(_0x529537===_0x550a1f)break;else _0x5c0736['push'](_0x5c0736['shift']());}catch(_0x3c6b4c){_0x5c0736['push'](_0x5c0736['shift']());}}}(_0xd507,0xb36a4));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x1a09(_0x69dba0,_0x54b85a){_0x69dba0=_0x69dba0-0x19d;const _0xd507f3=_0xd507();let _0x1a0951=_0xd507f3[_0x69dba0];return _0x1a0951;}import{printBlock}from'./output.js';function _0xd507(){const _0x1cd379=['ZgaGs','4058eneGrf','7SasoWw','NQOOu','exit','4283776mcEvBb','1296TEQGnK','1413FgLYZb','2696232lGMgkY','10UzJeal','master','657236KvZvzI','11780934NwNhjF','cFBVh','8133786ceWaRn','fhrTY','26360LEyFaI','\x20and\x20branch\x20\x27'];_0xd507=function(){return _0x1cd379;};return _0xd507();}export async function disable(_0x2cf31c){const _0x3a5942=_0x1a09,_0x1b2d40={'ZgaGs':'Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','FlqDf':function(_0xf0a305,_0x5c37f9){return _0xf0a305(_0x5c37f9);},'NQOOu':function(_0x26f721){return _0x26f721();},'fhrTY':function(_0x8568ef,_0x69208b){return _0x8568ef!==_0x69208b;},'cFBVh':'main','dQscU':function(_0xc0d55f,_0x20bf27){return _0xc0d55f(_0x20bf27);}},_0xcb2b6a=_0x2cf31c||process['env']['CLAUDE_SESSION_ID']||'';!_0xcb2b6a&&(console['error']('Error:\x20No\x20session\x20ID\x20available.'),console['error'](_0x1b2d40[_0x3a5942(0x19d)]),process[_0x3a5942(0x1a1)](0x1));_0x1b2d40['FlqDf'](disableSession,_0xcb2b6a);const _0x2a027e=_0x1b2d40[_0x3a5942(0x1a0)](getCurrentBranch);_0x2a027e&&_0x1b2d40[_0x3a5942(0x1ac)](_0x2a027e,_0x1b2d40['cFBVh'])&&_0x2a027e!==_0x3a5942(0x1a7)&&_0x1b2d40['dQscU'](disableBranch,_0x2a027e),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x2a027e&&_0x2a027e!==_0x1b2d40[_0x3a5942(0x1aa)]&&_0x2a027e!==_0x3a5942(0x1a7)?_0x3a5942(0x1ae)+_0x2a027e+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x318ab0,_0x12f955){const _0x47f412=_0x3131,_0x2e147f=_0x318ab0();while(!![]){try{const _0x5b468a=parseInt(_0x47f412(0x6c))/0x1+parseInt(_0x47f412(0x6d))/0x2*(parseInt(_0x47f412(0x72))/0x3)+parseInt(_0x47f412(0x78))/0x4*(parseInt(_0x47f412(0x7a))/0x5)+-parseInt(_0x47f412(0x79))/0x6+parseInt(_0x47f412(0x71))/0x7+-parseInt(_0x47f412(0x77))/0x8+-parseInt(_0x47f412(0x70))/0x9*(-parseInt(_0x47f412(0x76))/0xa);if(_0x5b468a===_0x12f955)break;else _0x2e147f['push'](_0x2e147f['shift']());}catch(_0x1cb464){_0x2e147f['push'](_0x2e147f['shift']());}}}(_0x3166,0x62e35));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x3131(_0x2bf40a,_0x61bc56){_0x2bf40a=_0x2bf40a-0x6b;const _0x31667a=_0x3166();let _0x3131ec=_0x31667a[_0x2bf40a];return _0x3131ec;}import{printBlock}from'./output.js';export async function disable(_0x48d016){const _0x4d0c67=_0x3131,_0x3ece96={'KpHAH':_0x4d0c67(0x6f),'hPRcj':_0x4d0c67(0x74),'HLSsj':function(_0x55eb3c){return _0x55eb3c();},'GEtDR':_0x4d0c67(0x7b),'ogrNO':function(_0x895e86,_0x1a0ef5){return _0x895e86!==_0x1a0ef5;},'jTBsI':'master','ppsGI':function(_0x29c01e,_0x5501d1){return _0x29c01e(_0x5501d1);}},_0x15092d=_0x48d016||process['env'][_0x4d0c67(0x75)]||'';!_0x15092d&&(console['error'](_0x3ece96['KpHAH']),console['error'](_0x3ece96['hPRcj']),process['exit'](0x1));disableSession(_0x15092d);const _0x1b9171=_0x3ece96['HLSsj'](getCurrentBranch);_0x1b9171&&_0x1b9171!==_0x3ece96[_0x4d0c67(0x6b)]&&_0x3ece96['ogrNO'](_0x1b9171,_0x3ece96['jTBsI'])&&_0x3ece96['ppsGI'](disableBranch,_0x1b9171),_0x3ece96['ppsGI'](printBlock,_0x4d0c67(0x73)+(_0x1b9171&&_0x1b9171!==_0x3ece96['GEtDR']&&_0x3ece96[_0x4d0c67(0x6e)](_0x1b9171,_0x3ece96['jTBsI'])?'\x20and\x20branch\x20\x27'+_0x1b9171+'\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 _0x3166(){const _0x30635a=['main','GEtDR','650730haVwdX','10WCbOZa','ogrNO','Error:\x20No\x20session\x20ID\x20available.','52317fZXQDt','491421PLhyUV','143247dVJhnK','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','CLAUDE_SESSION_ID','640syedaN','2286416xlKGtI','236wNVSOL','3962706qNmYYe','1660dSDNqv'];_0x3166=function(){return _0x30635a;};return _0x3166();}
@@ -1 +1 @@
1
- (function(_0x42cc83,_0x202fd9){const _0x33fe84=_0x4334,_0x633248=_0x42cc83();while(!![]){try{const _0x428f28=-parseInt(_0x33fe84(0x209))/0x1+parseInt(_0x33fe84(0x1fb))/0x2*(parseInt(_0x33fe84(0x1fa))/0x3)+parseInt(_0x33fe84(0x201))/0x4+parseInt(_0x33fe84(0x1f8))/0x5*(-parseInt(_0x33fe84(0x1f5))/0x6)+-parseInt(_0x33fe84(0x1fe))/0x7+parseInt(_0x33fe84(0x1fc))/0x8+parseInt(_0x33fe84(0x1f7))/0x9;if(_0x428f28===_0x202fd9)break;else _0x633248['push'](_0x633248['shift']());}catch(_0x3a8fff){_0x633248['push'](_0x633248['shift']());}}}(_0x492c,0x91ac6));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x4334(_0x4d9616,_0xd56764){_0x4d9616=_0x4d9616-0x1f3;const _0x492c0e=_0x492c();let _0x4334f2=_0x492c0e[_0x4d9616];return _0x4334f2;}function _0x492c(){const _0x2fcffd=['Cngev','7209419YhQiPu','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','4282892iaIcil','\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`.','JyRKo','Error:\x20No\x20session\x20ID\x20available.','cCPBY','main','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','exit','64579IZyVVL','qXMPy','vwnoL','5181012yByJWc','fbVUF','820575sLsBgb','5gxeFPF','ranger\x20setup','111TDmOhG','41684ijNAfQ','4972992WXJSOc'];_0x492c=function(){return _0x2fcffd;};return _0x492c();}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(_0x166744){const _0x4ebb76=_0x4334,_0x285363={'JyRKo':_0x4ebb76(0x1ff),'cCPBY':function(_0x27dfac,_0x507a4d){return _0x27dfac(_0x507a4d);},'AHaZK':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','vwnoL':function(_0x4d517e){return _0x4d517e();},'qXMPy':function(_0x27f81e){return _0x27f81e();},'tkXrU':function(_0x1f9a2c,_0x38050f){return _0x1f9a2c!==_0x38050f;},'Cngev':_0x4ebb76(0x206),'fbVUF':function(_0x42e750,_0x36114c){return _0x42e750!==_0x36114c;}},_0x18d1e4=_0x166744||process['env']['CLAUDE_SESSION_ID']||'';!_0x18d1e4&&(console['error'](_0x4ebb76(0x204)),console['error'](_0x285363[_0x4ebb76(0x203)]),process[_0x4ebb76(0x208)](0x1));const _0x31efea=_0x285363[_0x4ebb76(0x205)](Boolean,_0x166744),_0x457235=await getToken();if(!_0x457235){const _0x1fdc11=_0x31efea?'ranger\x20setup\x20--opencode':_0x4ebb76(0x1f9),_0x50523a=_0x31efea?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x285363['AHaZK'];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`'+_0x1fdc11+_0x4ebb76(0x200)+_0x50523a);return;}try{await _0x285363[_0x4ebb76(0x1f4)](update);}catch{}enableSession(_0x18d1e4);const _0x12f227=_0x285363[_0x4ebb76(0x1f3)](getCurrentBranch),_0x126d51=_0x12f227&&_0x285363['tkXrU'](_0x12f227,_0x285363[_0x4ebb76(0x1fd)])&&_0x285363[_0x4ebb76(0x1f6)](_0x12f227,'master')?'\x0a\x0a**Branch\x20\x27'+_0x12f227+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x2bc079=getRangerSkillContent();printBlock('#\x20RANGER\x20ENABLED'+_0x126d51+_0x4ebb76(0x207)+_0x2bc079+_0x4ebb76(0x202));}
1
+ (function(_0x56179f,_0x57aef2){const _0x463287=_0x2704,_0x42a43a=_0x56179f();while(!![]){try{const _0xfaa164=-parseInt(_0x463287(0xa2))/0x1*(-parseInt(_0x463287(0x9c))/0x2)+parseInt(_0x463287(0xaa))/0x3*(-parseInt(_0x463287(0x9b))/0x4)+parseInt(_0x463287(0x93))/0x5*(parseInt(_0x463287(0xab))/0x6)+parseInt(_0x463287(0xa4))/0x7*(-parseInt(_0x463287(0xa9))/0x8)+-parseInt(_0x463287(0x94))/0x9*(-parseInt(_0x463287(0xa3))/0xa)+-parseInt(_0x463287(0xa0))/0xb*(-parseInt(_0x463287(0xa8))/0xc)+-parseInt(_0x463287(0x97))/0xd*(-parseInt(_0x463287(0x9f))/0xe);if(_0xfaa164===_0x57aef2)break;else _0x42a43a['push'](_0x42a43a['shift']());}catch(_0x94fc7e){_0x42a43a['push'](_0x42a43a['shift']());}}}(_0x1c76,0xa839a));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';function _0x1c76(){const _0x383323=['2YIIbcE','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','error','28IjYfxi','11ZjlJUP','xLAyG','1284449hklrlT','20xPnWLP','917XdmPGO','DMKqk','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','5755884ipIOuc','71776zZxDNC','6582jWQZdr','660kCMJZe','9155DksfXw','1615239faCEUD','\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`.','ranger\x20setup\x20--opencode','1843985HislrW','env','main','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','1356ANlFcB'];_0x1c76=function(){return _0x383323;};return _0x1c76();}function _0x2704(_0x45a603,_0x5cfd06){_0x45a603=_0x45a603-0x93;const _0x1c7608=_0x1c76();let _0x270494=_0x1c7608[_0x45a603];return _0x270494;}export async function enable(_0x455fb5){const _0x59942c=_0x2704,_0xbd2105={'DMKqk':function(_0x531b2c,_0x50db21){return _0x531b2c(_0x50db21);},'xLAyG':function(_0x4b51bd){return _0x4b51bd();},'TSLed':function(_0x1e5b0e,_0x1dc6f1){return _0x1e5b0e!==_0x1dc6f1;}},_0x18b54a=_0x455fb5||process[_0x59942c(0x98)]['CLAUDE_SESSION_ID']||'';!_0x18b54a&&(console['error']('Error:\x20No\x20session\x20ID\x20available.'),console[_0x59942c(0x9e)](_0x59942c(0x9d)),process['exit'](0x1));const _0x315a1c=_0xbd2105['DMKqk'](Boolean,_0x455fb5),_0x4eef35=await getToken();if(!_0x4eef35){const _0x2f71fe=_0x315a1c?_0x59942c(0x96):'ranger\x20setup',_0x5d821d=_0x315a1c?_0x59942c(0xa7):_0x59942c(0xa6);_0xbd2105[_0x59942c(0xa5)](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`'+_0x2f71fe+_0x59942c(0x9a)+_0x5d821d);return;}try{await update();}catch{}enableSession(_0x18b54a);const _0x41cdad=_0xbd2105[_0x59942c(0xa1)](getCurrentBranch),_0x4c4b3f=_0x41cdad&&_0x41cdad!==_0x59942c(0x99)&&_0xbd2105['TSLed'](_0x41cdad,'master')?'\x0a\x0a**Branch\x20\x27'+_0x41cdad+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0xd219e3=getRangerSkillContent();_0xbd2105[_0x59942c(0xa5)](printBlock,'#\x20RANGER\x20ENABLED'+_0x4c4b3f+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0xd219e3+_0x59942c(0x95));}
@@ -1 +1 @@
1
- function _0x45c0(){const _0x1ba095=['28344XBHVFk','11UaTGDO','ekstN','9825GoZnbf','25265FZBSqe','26708748WIEgyJ','17372ajGGTG','1878tIQlEe','174UiYCbk','812fRqIaT','2709ADcBcl','2502650xFFAAJ','10886031AzMyjc'];_0x45c0=function(){return _0x1ba095;};return _0x45c0();}(function(_0x4fba2a,_0x4f5e52){const _0x5d8392=_0x1aa4,_0x245627=_0x4fba2a();while(!![]){try{const _0x5cd236=-parseInt(_0x5d8392(0x1df))/0x1*(parseInt(_0x5d8392(0x1e1))/0x2)+-parseInt(_0x5d8392(0x1dc))/0x3*(parseInt(_0x5d8392(0x1e2))/0x4)+parseInt(_0x5d8392(0x1dd))/0x5*(-parseInt(_0x5d8392(0x1e0))/0x6)+parseInt(_0x5d8392(0x1e3))/0x7*(parseInt(_0x5d8392(0x1d9))/0x8)+parseInt(_0x5d8392(0x1d8))/0x9+-parseInt(_0x5d8392(0x1d7))/0xa+-parseInt(_0x5d8392(0x1da))/0xb*(-parseInt(_0x5d8392(0x1de))/0xc);if(_0x5cd236===_0x4f5e52)break;else _0x245627['push'](_0x245627['shift']());}catch(_0x3cfe24){_0x245627['push'](_0x245627['shift']());}}}(_0x45c0,0xc2eb2));function _0x1aa4(_0x4ac644,_0x4bf922){_0x4ac644=_0x4ac644-0x1d7;const _0x45c07c=_0x45c0();let _0x1aa40d=_0x45c07c[_0x4ac644];return _0x1aa40d;}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x3d5f58){const _0x349117=_0x1aa4,_0xf30066={'ekstN':function(_0x3243a1,_0x981ab){return _0x3243a1(_0x981ab);}},_0x576804=await getEnabledSessionId(_0x3d5f58);if(!_0x576804)return;_0xf30066[_0x349117(0x1db)](printBlock,'===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
1
+ function _0x55f5(_0x183300,_0x131811){_0x183300=_0x183300-0x190;const _0x2ba5d0=_0x2ba5();let _0x55f56e=_0x2ba5d0[_0x183300];return _0x55f56e;}(function(_0x1f4bc8,_0x35e89f){const _0x12a5b1=_0x55f5,_0x108ccb=_0x1f4bc8();while(!![]){try{const _0x52ad05=parseInt(_0x12a5b1(0x196))/0x1*(-parseInt(_0x12a5b1(0x198))/0x2)+-parseInt(_0x12a5b1(0x190))/0x3+parseInt(_0x12a5b1(0x19a))/0x4+parseInt(_0x12a5b1(0x197))/0x5*(-parseInt(_0x12a5b1(0x191))/0x6)+-parseInt(_0x12a5b1(0x193))/0x7*(parseInt(_0x12a5b1(0x194))/0x8)+parseInt(_0x12a5b1(0x199))/0x9*(-parseInt(_0x12a5b1(0x192))/0xa)+parseInt(_0x12a5b1(0x195))/0xb;if(_0x52ad05===_0x35e89f)break;else _0x108ccb['push'](_0x108ccb['shift']());}catch(_0x5d7575){_0x108ccb['push'](_0x108ccb['shift']());}}}(_0x2ba5,0x95694));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x1ee771){const _0xf19134=_0x55f5,_0x480765=await getEnabledSessionId(_0x1ee771);if(!_0x480765)return;printBlock(_0xf19134(0x19b));}function _0x2ba5(){const _0x549a91=['27149397YwaZor','451799gemVkz','2120rsXmHe','2xrJcmg','4419hIRYBF','2538464ECxxde','===\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===','2559978KxrMne','6366tiuKjo','12530ClGFLU','843801krGCIC','8wcpRWT'];_0x2ba5=function(){return _0x549a91;};return _0x2ba5();}
@@ -1 +1 @@
1
- (function(_0x184400,_0x529633){var _0x54b911=_0x1e45,_0x33bac9=_0x184400();while(!![]){try{var _0x250aaa=-parseInt(_0x54b911(0xdb))/0x1*(parseInt(_0x54b911(0xd6))/0x2)+-parseInt(_0x54b911(0xd3))/0x3+parseInt(_0x54b911(0xd4))/0x4+parseInt(_0x54b911(0xd7))/0x5+parseInt(_0x54b911(0xd8))/0x6*(-parseInt(_0x54b911(0xda))/0x7)+-parseInt(_0x54b911(0xd5))/0x8+parseInt(_0x54b911(0xd9))/0x9;if(_0x250aaa===_0x529633)break;else _0x33bac9['push'](_0x33bac9['shift']());}catch(_0x33426d){_0x33bac9['push'](_0x33bac9['shift']());}}}(_0x46c2,0x59c5b));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';function _0x46c2(){var _0x3f676d=['1920840DtELbk','5807808cCbFnM','226LYlFfk','966575bGOrNc','6ByPZvs','10485864xdwNQp','3737489xrkhjX','1829VrNkvn','13002ZCeDXB'];_0x46c2=function(){return _0x3f676d;};return _0x46c2();}export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0x1e45(_0x2ac247,_0x3d4466){_0x2ac247=_0x2ac247-0xd3;var _0x46c2a4=_0x46c2();var _0x1e4525=_0x46c2a4[_0x2ac247];return _0x1e4525;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x5eeafd,_0x14629){var _0x141787=_0x5c32,_0x3c6d6a=_0x5eeafd();while(!![]){try{var _0x36cfcc=parseInt(_0x141787(0x9b))/0x1*(-parseInt(_0x141787(0x98))/0x2)+-parseInt(_0x141787(0x96))/0x3*(parseInt(_0x141787(0x99))/0x4)+parseInt(_0x141787(0x95))/0x5+parseInt(_0x141787(0x97))/0x6+-parseInt(_0x141787(0x9a))/0x7*(parseInt(_0x141787(0x94))/0x8)+parseInt(_0x141787(0x9c))/0x9+-parseInt(_0x141787(0x9d))/0xa;if(_0x36cfcc===_0x14629)break;else _0x3c6d6a['push'](_0x3c6d6a['shift']());}catch(_0x445f76){_0x3c6d6a['push'](_0x3c6d6a['shift']());}}}(_0x487a,0x7eb3b));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x5c32(_0x5f4d72,_0xc63361){_0x5f4d72=_0x5f4d72-0x94;var _0x487a9d=_0x487a();var _0x5c32b1=_0x487a9d[_0x5f4d72];return _0x5c32b1;}export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';function _0x487a(){var _0x2ac51c=['4312190WSOIJo','6AtqLmN','4161702wDIyJa','38diQihz','1232068ksWMLL','21TtANVQ','9176ZHUOdr','1959174thdSxl','397510JGuGvE','1132376QKhCqw'];_0x487a=function(){return _0x2ac51c;};return _0x487a();}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(_0x4b3c59,_0x53f8ab){const _0x248ceb=_0x1d4b,_0x420525=_0x4b3c59();while(!![]){try{const _0x5c9ed6=-parseInt(_0x248ceb(0x1d5))/0x1*(parseInt(_0x248ceb(0x1d3))/0x2)+parseInt(_0x248ceb(0x1d4))/0x3*(parseInt(_0x248ceb(0x1d0))/0x4)+parseInt(_0x248ceb(0x1cb))/0x5+parseInt(_0x248ceb(0x1cf))/0x6*(-parseInt(_0x248ceb(0x1ce))/0x7)+parseInt(_0x248ceb(0x1d2))/0x8*(parseInt(_0x248ceb(0x1d7))/0x9)+-parseInt(_0x248ceb(0x1cd))/0xa+-parseInt(_0x248ceb(0x1d1))/0xb*(parseInt(_0x248ceb(0x1cc))/0xc);if(_0x5c9ed6===_0x53f8ab)break;else _0x420525['push'](_0x420525['shift']());}catch(_0xdabb6e){_0x420525['push'](_0x420525['shift']());}}}(_0x4ac0,0xabca0));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x4d1118){console['log'](_0x4d1118);}function _0x1d4b(_0x25076c,_0x177536){_0x25076c=_0x25076c-0x1cb;const _0x4ac010=_0x4ac0();let _0x1d4b61=_0x4ac010[_0x25076c];return _0x1d4b61;}export async function readHookInput(){let _0xed1dfd='';for await(const _0x41e65b of process['stdin']){_0xed1dfd+=_0x41e65b;}try{return JSON['parse'](_0xed1dfd);}catch{return null;}}function _0x4ac0(){const _0x4652c9=['10939437QQNhfc','6104525UYiSlC','297444VCYhTT','6764950tVnlRw','77BmKlvu','93666hZvrMu','40PGSHKQ','858bTPVOc','8iSKshj','2gKJHzl','370509kWRhmE','186178TssNiD','session_id'];_0x4ac0=function(){return _0x4652c9;};return _0x4ac0();}export async function getEnabledSessionId(_0x5a6166){const _0x50b6db=_0x1d4b,_0x578829={'kftme':function(_0x10399a,_0x36567f){return _0x10399a(_0x36567f);},'oDXLj':function(_0x2e1fa8){return _0x2e1fa8();}};if(_0x5a6166)return _0x578829['kftme'](isSessionEnabled,_0x5a6166)?_0x5a6166:null;const _0x47abca=await _0x578829['oDXLj'](readHookInput),_0x175d4b=_0x47abca?.[_0x50b6db(0x1d6)];if(!_0x175d4b||!isSessionEnabled(_0x175d4b))return null;return _0x175d4b;}export async function getEnabledHookContext(_0x368163){if(_0x368163){if(!isSessionEnabled(_0x368163))return null;return{'sessionId':_0x368163,'input':{'session_id':_0x368163}};}const _0x441b06=await readHookInput(),_0x8d6e5a=_0x441b06?.['session_id'];if(!_0x8d6e5a||!isSessionEnabled(_0x8d6e5a))return null;return{'sessionId':_0x8d6e5a,'input':_0x441b06};}
1
+ (function(_0x4a7c86,_0x514c24){const _0x2a16e8=_0x5ade,_0x168901=_0x4a7c86();while(!![]){try{const _0x3931c4=parseInt(_0x2a16e8(0x77))/0x1+parseInt(_0x2a16e8(0x6d))/0x2*(-parseInt(_0x2a16e8(0x69))/0x3)+-parseInt(_0x2a16e8(0x68))/0x4*(-parseInt(_0x2a16e8(0x71))/0x5)+-parseInt(_0x2a16e8(0x6e))/0x6*(parseInt(_0x2a16e8(0x6b))/0x7)+-parseInt(_0x2a16e8(0x6c))/0x8+parseInt(_0x2a16e8(0x6f))/0x9*(-parseInt(_0x2a16e8(0x72))/0xa)+parseInt(_0x2a16e8(0x6a))/0xb*(parseInt(_0x2a16e8(0x75))/0xc);if(_0x3931c4===_0x514c24)break;else _0x168901['push'](_0x168901['shift']());}catch(_0x2df69c){_0x168901['push'](_0x168901['shift']());}}}(_0x257e,0xbc052));function _0x5ade(_0x1768ff,_0x41d7d4){_0x1768ff=_0x1768ff-0x67;const _0x257e65=_0x257e();let _0x5ade83=_0x257e65[_0x1768ff];return _0x5ade83;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x402a22){const _0x171569=_0x5ade;console[_0x171569(0x73)](_0x402a22);}export async function readHookInput(){const _0x275835=_0x5ade;let _0x3c85c2='';for await(const _0x2de853 of process['stdin']){_0x3c85c2+=_0x2de853;}try{return JSON[_0x275835(0x70)](_0x3c85c2);}catch{return null;}}function _0x257e(){const _0x23cac7=['kmfVi','770036xYtibh','1119IzDiXz','418HSiEZF','28511caJowY','3068712NwCeBH','214mjeYzC','198pcyfXI','243pASLql','parse','5rrRmWa','389540MpLtqS','log','aXqad','250332gbppNV','session_id','1394570yiEuCs'];_0x257e=function(){return _0x23cac7;};return _0x257e();}export async function getEnabledSessionId(_0x867ba4){const _0x284a55=_0x5ade,_0x54f1cd={'oJpvt':function(_0x1ceeb9,_0x59f466){return _0x1ceeb9(_0x59f466);},'aXqad':function(_0x420dbe){return _0x420dbe();}};if(_0x867ba4)return _0x54f1cd['oJpvt'](isSessionEnabled,_0x867ba4)?_0x867ba4:null;const _0x365bd0=await _0x54f1cd[_0x284a55(0x74)](readHookInput),_0x37e57f=_0x365bd0?.[_0x284a55(0x76)];if(!_0x37e57f||!isSessionEnabled(_0x37e57f))return null;return _0x37e57f;}export async function getEnabledHookContext(_0x1f2762){const _0x49b4aa=_0x5ade,_0x186118={'kmfVi':function(_0x4c4836,_0x3ab8fd){return _0x4c4836(_0x3ab8fd);}};if(_0x1f2762){if(!isSessionEnabled(_0x1f2762))return null;return{'sessionId':_0x1f2762,'input':{'session_id':_0x1f2762}};}const _0x3f5528=await readHookInput(),_0x10d5e5=_0x3f5528?.[_0x49b4aa(0x76)];if(!_0x10d5e5||!_0x186118[_0x49b4aa(0x67)](isSessionEnabled,_0x10d5e5))return null;return{'sessionId':_0x10d5e5,'input':_0x3f5528};}
@@ -1 +1 @@
1
- function _0x44c8(){const _0x33e225=['58617XklcKw','2129883kfZopC','722936MnemJS','1382hsrfRC','477670EEIqOg','781cEIYjV','200RELuVX','sessionId','1250575zbfaId','3sNZMYf','input','7130346YiziXF','971THrcoJ'];_0x44c8=function(){return _0x33e225;};return _0x44c8();}function _0x1b58(_0x4e1b0d,_0x46b3ca){_0x4e1b0d=_0x4e1b0d-0x102;const _0x44c8a0=_0x44c8();let _0x1b582f=_0x44c8a0[_0x4e1b0d];return _0x1b582f;}(function(_0xad4208,_0x2f4700){const _0x76c798=_0x1b58,_0x4119ac=_0xad4208();while(!![]){try{const _0x39fdad=parseInt(_0x76c798(0x10e))/0x1*(-parseInt(_0x76c798(0x105))/0x2)+-parseInt(_0x76c798(0x10b))/0x3*(parseInt(_0x76c798(0x104))/0x4)+-parseInt(_0x76c798(0x10a))/0x5+-parseInt(_0x76c798(0x10d))/0x6+-parseInt(_0x76c798(0x103))/0x7+-parseInt(_0x76c798(0x108))/0x8*(parseInt(_0x76c798(0x102))/0x9)+-parseInt(_0x76c798(0x106))/0xa*(-parseInt(_0x76c798(0x107))/0xb);if(_0x39fdad===_0x2f4700)break;else _0x4119ac['push'](_0x4119ac['shift']());}catch(_0xf483b2){_0x4119ac['push'](_0x4119ac['shift']());}}}(_0x44c8,0x9ad32));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x2369aa){const _0x23dc03=_0x1b58,_0x4351a4=await getEnabledHookContext(_0x2369aa);if(!_0x4351a4)return;if(_0x4351a4[_0x23dc03(0x10c)]['permission_mode']!=='plan')return;if(!shouldShowPlanReminder(_0x4351a4[_0x23dc03(0x109)]))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(_0x2856d0,_0x18dcb2){const _0x4b1571=_0x1244,_0x383cbc=_0x2856d0();while(!![]){try{const _0x4bed7f=-parseInt(_0x4b1571(0x10b))/0x1*(parseInt(_0x4b1571(0x109))/0x2)+-parseInt(_0x4b1571(0x116))/0x3+-parseInt(_0x4b1571(0x113))/0x4*(parseInt(_0x4b1571(0x10d))/0x5)+-parseInt(_0x4b1571(0x110))/0x6+parseInt(_0x4b1571(0x10c))/0x7+-parseInt(_0x4b1571(0x10a))/0x8*(parseInt(_0x4b1571(0x10e))/0x9)+parseInt(_0x4b1571(0x111))/0xa;if(_0x4bed7f===_0x18dcb2)break;else _0x383cbc['push'](_0x383cbc['shift']());}catch(_0x4d1b71){_0x383cbc['push'](_0x383cbc['shift']());}}}(_0x3d3b,0xc1102));function _0x1244(_0x2f3b3b,_0x32584d){_0x2f3b3b=_0x2f3b3b-0x109;const _0x3d3b77=_0x3d3b();let _0x124441=_0x3d3b77[_0x2f3b3b];return _0x124441;}function _0x3d3b(){const _0x3e88fb=['FYTlJ','4074033IhpRos','19148UVaCVa','72392ylYFHJ','54aJHfuW','2785090NLHtAT','55jDjmJy','63cHLVGa','gMTHW','9136788OUFjzJ','53242250VPFSAC','plan','534604ZzkSry','===\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==='];_0x3d3b=function(){return _0x3e88fb;};return _0x3d3b();}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x135b2a){const _0x57ce32=_0x1244,_0x3b18c8={'FYTlJ':function(_0x1a6d3d,_0x139ec8){return _0x1a6d3d(_0x139ec8);},'gMTHW':function(_0xc706a1,_0xefa7f8){return _0xc706a1!==_0xefa7f8;}},_0x5d351f=await _0x3b18c8[_0x57ce32(0x115)](getEnabledHookContext,_0x135b2a);if(!_0x5d351f)return;if(_0x3b18c8[_0x57ce32(0x10f)](_0x5d351f['input']['permission_mode'],_0x57ce32(0x112)))return;if(!_0x3b18c8[_0x57ce32(0x115)](shouldShowPlanReminder,_0x5d351f['sessionId']))return;_0x3b18c8[_0x57ce32(0x115)](printBlock,_0x57ce32(0x114));}
@@ -1 +1 @@
1
- function _0xc67c(){const _0x24fb29=['1477716fuwwqK','1951056QqVKRw','8LLuwlB','3282jDuPqL','===\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===','445kBKVzT','1493064pujHib','751594BdZDtv','287837pTIVjn','3424981idaQEC'];_0xc67c=function(){return _0x24fb29;};return _0xc67c();}(function(_0x49a4fb,_0x3921b0){const _0x472ba1=_0x2e01,_0x3db526=_0x49a4fb();while(!![]){try{const _0x211bc0=-parseInt(_0x472ba1(0x17f))/0x1+parseInt(_0x472ba1(0x17e))/0x2+parseInt(_0x472ba1(0x181))/0x3+parseInt(_0x472ba1(0x17d))/0x4+parseInt(_0x472ba1(0x17c))/0x5*(parseInt(_0x472ba1(0x17a))/0x6)+parseInt(_0x472ba1(0x180))/0x7*(-parseInt(_0x472ba1(0x179))/0x8)+-parseInt(_0x472ba1(0x178))/0x9;if(_0x211bc0===_0x3921b0)break;else _0x3db526['push'](_0x3db526['shift']());}catch(_0x1901ce){_0x3db526['push'](_0x3db526['shift']());}}}(_0xc67c,0x485de));function _0x2e01(_0x4bc75e,_0x5d4246){_0x4bc75e=_0x4bc75e-0x178;const _0xc67c94=_0xc67c();let _0x2e01ed=_0xc67c94[_0x4bc75e];return _0x2e01ed;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0xccc246){const _0x10678d=_0x2e01,_0x12880d=await getEnabledSessionId(_0xccc246);if(!_0x12880d)return;printBlock(_0x10678d(0x17b));}
1
+ (function(_0x169f10,_0x12e1c0){const _0x1969d6=_0x2541,_0x2b166c=_0x169f10();while(!![]){try{const _0x429c61=-parseInt(_0x1969d6(0x76))/0x1*(parseInt(_0x1969d6(0x71))/0x2)+-parseInt(_0x1969d6(0x73))/0x3+-parseInt(_0x1969d6(0x7a))/0x4+-parseInt(_0x1969d6(0x72))/0x5*(parseInt(_0x1969d6(0x75))/0x6)+-parseInt(_0x1969d6(0x7c))/0x7+-parseInt(_0x1969d6(0x78))/0x8*(-parseInt(_0x1969d6(0x7b))/0x9)+parseInt(_0x1969d6(0x79))/0xa;if(_0x429c61===_0x12e1c0)break;else _0x2b166c['push'](_0x2b166c['shift']());}catch(_0x1dde19){_0x2b166c['push'](_0x2b166c['shift']());}}}(_0x5779,0x67001));import{printBlock,getEnabledSessionId}from'./output.js';function _0x5779(){const _0x1fbe4f=['28pRfGbS','cqJWM','374128dwUMwZ','15358200wdhiNO','1431364czeORw','99kauqGL','4970028wYpOIg','5874lcEAVg','1651350pdEEcT','444018sNqQLv','===\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===','6qcnLpn'];_0x5779=function(){return _0x1fbe4f;};return _0x5779();}function _0x2541(_0x23c8f3,_0x184da7){_0x23c8f3=_0x23c8f3-0x71;const _0x577979=_0x5779();let _0x25412e=_0x577979[_0x23c8f3];return _0x25412e;}export async function planStart(_0x24e089){const _0x26ae1=_0x2541,_0x174a5e={'UApLf':function(_0x524573,_0x2a9d9c){return _0x524573(_0x2a9d9c);},'cqJWM':function(_0x14e334,_0x50f0c6){return _0x14e334(_0x50f0c6);}},_0x5043dc=await _0x174a5e['UApLf'](getEnabledSessionId,_0x24e089);if(!_0x5043dc)return;_0x174a5e[_0x26ae1(0x77)](printBlock,_0x26ae1(0x74));}
@@ -1 +1 @@
1
- (function(_0x3f6b6b,_0x45853e){const _0x41b756=_0x4a7f,_0x4c94b3=_0x3f6b6b();while(!![]){try{const _0xb68abe=-parseInt(_0x41b756(0x9e))/0x1+parseInt(_0x41b756(0xa2))/0x2*(-parseInt(_0x41b756(0x9d))/0x3)+parseInt(_0x41b756(0x9b))/0x4*(parseInt(_0x41b756(0xa0))/0x5)+parseInt(_0x41b756(0x99))/0x6*(parseInt(_0x41b756(0x9f))/0x7)+parseInt(_0x41b756(0x97))/0x8+parseInt(_0x41b756(0x98))/0x9+parseInt(_0x41b756(0x9c))/0xa;if(_0xb68abe===_0x45853e)break;else _0x4c94b3['push'](_0x4c94b3['shift']());}catch(_0x2b99a5){_0x4c94b3['push'](_0x4c94b3['shift']());}}}(_0x37c1,0x98be8));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x4a7f(_0x4b0129,_0x52e123){_0x4b0129=_0x4b0129-0x97;const _0x37c1f4=_0x37c1();let _0x4a7f0a=_0x37c1f4[_0x4b0129];return _0x4a7f0a;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x37c1(){const _0x308e33=['4960392EijBGi','3741552sVZhwl','306210VPlWHr','XuXHb','28qRiPIR','4835490VBUsrn','34821ioICsp','277824GBLAIH','49szkgyt','17925WJClPQ','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.','172xOItmM'];_0x37c1=function(){return _0x308e33;};return _0x37c1();}export async function postEdit(_0x2544f5){const _0x968bda=_0x4a7f,_0x2ba319={'XuXHb':function(_0x44c5d6){return _0x44c5d6();},'falOL':function(_0x5ada8b,_0x1ac1f8){return _0x5ada8b(_0x1ac1f8);},'usrsF':'PostToolUse'},_0x29172e=await getEnabledSessionId(_0x2544f5);if(!_0x29172e)return;updateBranchTracking(_0x29172e);const _0x15cb0d=await _0x2ba319[_0x968bda(0x9a)](getToken);if(!_0x15cb0d)return;const _0x29077f=_0x2ba319['falOL'](getSessionEntry,_0x29172e);if(_0x29077f){const _0x2ac86e={'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['log'](JSON['stringify'](_0x2ac86e));return;}const _0x584c67={'hookSpecificOutput':{'hookEventName':_0x2ba319['usrsF'],'additionalContext':_0x968bda(0xa1)}};console['log'](JSON['stringify'](_0x584c67));}
1
+ function _0x2625(){const _0x5cb3c3=['14UITNyr','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.','1996915RdUNfI','6sTHQRF','261564ijbVMX','HAmIC','1276360ZvccER','stringify','309184pxoGoF','269890gPMCBb','PDJkH','806626fVIBhz','log','63mBPeEf','3gVTWqh','211007fbBkke','PostToolUse','429GdMpGm'];_0x2625=function(){return _0x5cb3c3;};return _0x2625();}function _0x5ef8(_0x151e66,_0x2039a1){_0x151e66=_0x151e66-0x69;const _0x2625a5=_0x2625();let _0x5ef83a=_0x2625a5[_0x151e66];return _0x5ef83a;}(function(_0x5a3d6b,_0x3e7cc8){const _0x32956f=_0x5ef8,_0xcb1bb=_0x5a3d6b();while(!![]){try{const _0x48f462=-parseInt(_0x32956f(0x77))/0x1+-parseInt(_0x32956f(0x73))/0x2+-parseInt(_0x32956f(0x76))/0x3*(-parseInt(_0x32956f(0x70))/0x4)+parseInt(_0x32956f(0x6a))/0x5*(parseInt(_0x32956f(0x6b))/0x6)+-parseInt(_0x32956f(0x7a))/0x7*(parseInt(_0x32956f(0x6e))/0x8)+-parseInt(_0x32956f(0x75))/0x9*(parseInt(_0x32956f(0x71))/0xa)+parseInt(_0x32956f(0x79))/0xb*(parseInt(_0x32956f(0x6c))/0xc);if(_0x48f462===_0x3e7cc8)break;else _0xcb1bb['push'](_0xcb1bb['shift']());}catch(_0x535fc6){_0xcb1bb['push'](_0xcb1bb['shift']());}}}(_0x2625,0x31e8d));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x59a898){const _0x192eb0=_0x5ef8,_0x420a23={'HAmIC':function(_0x5441c6,_0x8865ec){return _0x5441c6(_0x8865ec);},'fKVlB':function(_0x22fe8e,_0x2efa01){return _0x22fe8e(_0x2efa01);},'PDJkH':_0x192eb0(0x78)},_0x4c94ef=await getEnabledSessionId(_0x59a898);if(!_0x4c94ef)return;_0x420a23[_0x192eb0(0x6d)](updateBranchTracking,_0x4c94ef);const _0x1d401f=await getToken();if(!_0x1d401f)return;const _0xe41bb5=_0x420a23['fKVlB'](getSessionEntry,_0x4c94ef);if(_0xe41bb5){const _0x3da4c5={'hookSpecificOutput':{'hookEventName':_0x192eb0(0x78),'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON[_0x192eb0(0x6f)](_0x3da4c5));return;}const _0x569f92={'hookSpecificOutput':{'hookEventName':_0x420a23[_0x192eb0(0x72)],'additionalContext':_0x192eb0(0x69)}};console[_0x192eb0(0x74)](JSON[_0x192eb0(0x6f)](_0x569f92));}
@@ -1 +1 @@
1
- function _0x1057(_0x132ee1,_0x45aa03){_0x132ee1=_0x132ee1-0x177;const _0x534a7e=_0x534a();let _0x105747=_0x534a7e[_0x132ee1];return _0x105747;}(function(_0x26fbcd,_0x50d0d3){const _0x5c5554=_0x1057,_0x105284=_0x26fbcd();while(!![]){try{const _0x96e835=parseInt(_0x5c5554(0x17a))/0x1+-parseInt(_0x5c5554(0x17b))/0x2*(parseInt(_0x5c5554(0x180))/0x3)+-parseInt(_0x5c5554(0x177))/0x4*(-parseInt(_0x5c5554(0x17d))/0x5)+parseInt(_0x5c5554(0x181))/0x6+-parseInt(_0x5c5554(0x17c))/0x7*(-parseInt(_0x5c5554(0x17f))/0x8)+-parseInt(_0x5c5554(0x179))/0x9*(parseInt(_0x5c5554(0x17e))/0xa)+-parseInt(_0x5c5554(0x178))/0xb*(parseInt(_0x5c5554(0x182))/0xc);if(_0x96e835===_0x50d0d3)break;else _0x105284['push'](_0x105284['shift']());}catch(_0x10182d){_0x105284['push'](_0x105284['shift']());}}}(_0x534a,0xd6d4e));import{getToken}from'../utils/keychain.js';function _0x534a(){const _0x276eda=['283497kQSdGV','7820964PwNrQZ','12AfBNrl','===\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`.','4396TBEvuu','5981305mmxAPQ','99ZQoEec','576281SaeSEz','22kECRUc','7LRIZgs','1245qdGXMQ','518650GeJzRM','7042264VRwLjX'];_0x534a=function(){return _0x276eda;};return _0x534a();}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x2a8a68){const _0x3703e1=_0x1057,_0x2f4f53=await getEnabledSessionId(_0x2a8a68);if(!_0x2f4f53)return;try{const _0x4ad725=await getToken();if(!_0x4ad725)return;printBlock(_0x3703e1(0x183));}catch{}}
1
+ function _0x11af(){const _0x23c6e3=['533228hxMmvf','376420RLTVsA','534EYKsjM','37256bfASbP','110CljjYD','1555baaTRH','285578TgorgY','2208501RNeJlY','413eqLVkE','3APTZZo','5453XKgVLO','dqwBK'];_0x11af=function(){return _0x23c6e3;};return _0x11af();}(function(_0x13166a,_0x138240){const _0x482688=_0x2317,_0x28c0e4=_0x13166a();while(!![]){try{const _0x5c978f=-parseInt(_0x482688(0x1be))/0x1+-parseInt(_0x482688(0x1c6))/0x2+-parseInt(_0x482688(0x1bd))/0x3*(parseInt(_0x482688(0x1c0))/0x4)+-parseInt(_0x482688(0x1c5))/0x5*(-parseInt(_0x482688(0x1c2))/0x6)+parseInt(_0x482688(0x1bc))/0x7*(parseInt(_0x482688(0x1c3))/0x8)+-parseInt(_0x482688(0x1bb))/0x9+-parseInt(_0x482688(0x1c1))/0xa*(-parseInt(_0x482688(0x1c4))/0xb);if(_0x5c978f===_0x138240)break;else _0x28c0e4['push'](_0x28c0e4['shift']());}catch(_0x951e5c){_0x28c0e4['push'](_0x28c0e4['shift']());}}}(_0x11af,0x25174));import{getToken}from'../utils/keychain.js';function _0x2317(_0x4eab3c,_0x8ac1eb){_0x4eab3c=_0x4eab3c-0x1bb;const _0x11afed=_0x11af();let _0x231763=_0x11afed[_0x4eab3c];return _0x231763;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x2148f0){const _0x1787b1=_0x2317,_0x136b52={'dqwBK':function(_0x549c95,_0x4b3b66){return _0x549c95(_0x4b3b66);}},_0x4862f6=await _0x136b52[_0x1787b1(0x1bf)](getEnabledSessionId,_0x2148f0);if(!_0x4862f6)return;try{const _0xbfa91e=await getToken();if(!_0xbfa91e)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(_0x791de7,_0x270416){const _0x31cf82=_0x35a7,_0x52fa38=_0x791de7();while(!![]){try{const _0x48f736=-parseInt(_0x31cf82(0x1c6))/0x1*(-parseInt(_0x31cf82(0x1ce))/0x2)+-parseInt(_0x31cf82(0x1cc))/0x3+-parseInt(_0x31cf82(0x1c7))/0x4+-parseInt(_0x31cf82(0x1c3))/0x5+parseInt(_0x31cf82(0x1c4))/0x6*(-parseInt(_0x31cf82(0x1cb))/0x7)+-parseInt(_0x31cf82(0x1cd))/0x8+-parseInt(_0x31cf82(0x1c1))/0x9*(-parseInt(_0x31cf82(0x1c5))/0xa);if(_0x48f736===_0x270416)break;else _0x52fa38['push'](_0x52fa38['shift']());}catch(_0x32f96e){_0x52fa38['push'](_0x52fa38['shift']());}}}(_0x1587,0xc6c8f));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x35a7(_0x37fa83,_0x183fec){_0x37fa83=_0x37fa83-0x1c1;const _0x1587ff=_0x1587();let _0x35a78a=_0x1587ff[_0x37fa83];return _0x35a78a;}function _0x1587(){const _0x47a335=['9BhGHQz','firXY','1025645YShdOR','6GoenKi','55775220JucgGg','985143IlAmQa','3874660TXAPgD','session_id','clear','zIewP','11019113Kaydrt','4847259NBOmtb','11077888QpnFBc','2HUmGqj'];_0x1587=function(){return _0x47a335;};return _0x1587();}import{readHookInput}from'./output.js';export async function sessionEnd(_0x5043e7){const _0x390963=_0x35a7,_0x112f3a={'firXY':function(_0x1d6508){return _0x1d6508();},'avZkB':function(_0x4b9694,_0x57d06e){return _0x4b9694===_0x57d06e;},'zIewP':function(_0x2be805,_0x445065){return _0x2be805(_0x445065);}};let _0x42b1c2=_0x5043e7,_0x245447;if(!_0x5043e7){const _0x2b1613=await _0x112f3a[_0x390963(0x1c2)](readHookInput);_0x42b1c2=_0x2b1613?.[_0x390963(0x1c8)],_0x245447=_0x2b1613?.['reason'];}if(!_0x42b1c2)return;_0x112f3a['avZkB'](_0x245447,_0x390963(0x1c9))&&_0x112f3a[_0x390963(0x1ca)](recordEnabledSessionCleared,_0x42b1c2);}
1
+ (function(_0x3b7367,_0x71896e){const _0x5bb1ef=_0x2f6e,_0x594c24=_0x3b7367();while(!![]){try{const _0x4910f6=parseInt(_0x5bb1ef(0x1e3))/0x1*(parseInt(_0x5bb1ef(0x1de))/0x2)+parseInt(_0x5bb1ef(0x1d9))/0x3+parseInt(_0x5bb1ef(0x1e1))/0x4+-parseInt(_0x5bb1ef(0x1d8))/0x5+parseInt(_0x5bb1ef(0x1d7))/0x6*(parseInt(_0x5bb1ef(0x1e2))/0x7)+-parseInt(_0x5bb1ef(0x1db))/0x8*(parseInt(_0x5bb1ef(0x1e0))/0x9)+-parseInt(_0x5bb1ef(0x1dc))/0xa*(parseInt(_0x5bb1ef(0x1df))/0xb);if(_0x4910f6===_0x71896e)break;else _0x594c24['push'](_0x594c24['shift']());}catch(_0x58e603){_0x594c24['push'](_0x594c24['shift']());}}}(_0x462e,0x57842));function _0x462e(){const _0x1b6d4d=['848ZiSMvN','40hsKyLN','rcAeu','1430998EJmyzH','3363987yhqvsO','9171AYMVEw','1743644LIpukq','2182271RIiivY','1MYgjgd','6NzpqGR','2062590xbJbGo','1917309DrHket','clear'];_0x462e=function(){return _0x1b6d4d;};return _0x462e();}function _0x2f6e(_0x35635a,_0x2f0a19){_0x35635a=_0x35635a-0x1d7;const _0x462e0f=_0x462e();let _0x2f6e55=_0x462e0f[_0x35635a];return _0x2f6e55;}import{recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x2501d9){const _0x397b57=_0x2f6e,_0x5578da={'rcAeu':_0x397b57(0x1da)};let _0x3a8aad=_0x2501d9,_0x5a8164;if(!_0x2501d9){const _0x4fc06d=await readHookInput();_0x3a8aad=_0x4fc06d?.['session_id'],_0x5a8164=_0x4fc06d?.['reason'];}if(!_0x3a8aad)return;_0x5a8164===_0x5578da[_0x397b57(0x1dd)]&&recordEnabledSessionCleared(_0x3a8aad);}
@@ -1 +1 @@
1
- (function(_0x2b0868,_0x4b222a){const _0x5c3ad5=_0x5d7c,_0x459583=_0x2b0868();while(!![]){try{const _0x530425=parseInt(_0x5c3ad5(0xfb))/0x1*(-parseInt(_0x5c3ad5(0xfc))/0x2)+parseInt(_0x5c3ad5(0xf7))/0x3+-parseInt(_0x5c3ad5(0xfe))/0x4+parseInt(_0x5c3ad5(0xfa))/0x5+-parseInt(_0x5c3ad5(0xf4))/0x6*(parseInt(_0x5c3ad5(0xf3))/0x7)+parseInt(_0x5c3ad5(0xf8))/0x8+-parseInt(_0x5c3ad5(0x100))/0x9*(parseInt(_0x5c3ad5(0xf9))/0xa);if(_0x530425===_0x4b222a)break;else _0x459583['push'](_0x459583['shift']());}catch(_0x1ec155){_0x459583['push'](_0x459583['shift']());}}}(_0x38db,0x7eefc));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\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=================================================================';function _0x38db(){const _0x379bf3=['7127184BhuhJj','1219820iFEIPK','4765740BlCMLu','81COwWVP','634FpKYSi','AmGTZ','4018304pMKAPA','parse','72jjNIVV','master','trackCommandStart','log','env','833gjrzIK','1572PqiEyw','stringify','kKmxf','2139519uQBvGu'];_0x38db=function(){return _0x379bf3;};return _0x38db();}function _0x5d7c(_0x47040d,_0x1b0300){_0x47040d=_0x47040d-0xf2;const _0x38db39=_0x38db();let _0x5d7c36=_0x38db39[_0x47040d];return _0x5d7c36;}export async function sessionStart(_0x44d10e){const _0x14ac80=_0x5d7c,_0x5b437a={'YrypQ':'session_id','KEDoT':'source','kKmxf':function(_0x2a4371,_0x75e8e7){return _0x2a4371(_0x75e8e7);},'MdrGA':'hook:session-start','AvTgO':'success','ucZfu':function(_0x53e862){return _0x53e862();},'AmGTZ':function(_0x2932ad,_0x3f7b2b){return _0x2932ad!==_0x3f7b2b;},'hZlnW':'main','sxclB':_0x14ac80(0x101),'EMZxK':'SessionStart'};let _0x47f770=_0x44d10e||'',_0x11a1c9;if(!_0x44d10e){let _0x2d9a80='';for await(const _0x436a32 of process['stdin']){_0x2d9a80+=_0x436a32;}try{const _0x462211=JSON[_0x14ac80(0xff)](_0x2d9a80);_0x47f770=_0x462211[_0x5b437a['YrypQ']]||'',_0x11a1c9=_0x462211[_0x5b437a['KEDoT']];}catch{}const _0xd4cc20=process[_0x14ac80(0xf2)]['CLAUDE_ENV_FILE'];if(_0xd4cc20&&_0x47f770)try{await appendFile(_0xd4cc20,'export\x20CLAUDE_SESSION_ID=\x22'+_0x47f770+'\x22\x0a');}catch{}}if(_0x47f770){shouldAutoEnableAfterClear(_0x11a1c9)&&autoEnableAfterClear(_0x47f770);_0x5b437a[_0x14ac80(0xf6)](initBranchTracking,_0x47f770);const _0x4d2b00=isSessionEnabled(_0x47f770);try{const _0x20db4b=createTelemetryCollector(_0x5b437a['MdrGA']);await _0x20db4b[_0x14ac80(0x102)]({'sessionId':_0x47f770,'hooksEnabled':_0x4d2b00}),await _0x20db4b['trackCommandEnd'](_0x5b437a['AvTgO']);}catch{}if(_0x4d2b00){const _0x217d80=_0x5b437a['ucZfu'](getCurrentBranch),_0x489bc1=_0x217d80&&_0x5b437a[_0x14ac80(0xfd)](_0x217d80,_0x5b437a['hZlnW'])&&_0x217d80!==_0x5b437a['sxclB']?'\x20(Branch:\x20'+_0x217d80+')':'',_0x4a9b58={'hookSpecificOutput':{'hookEventName':_0x5b437a['EMZxK'],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x489bc1}};console[_0x14ac80(0x103)](JSON[_0x14ac80(0xf5)](_0x4a9b58));}}}
1
+ (function(_0x3786a1,_0x7f2cb8){const _0x544ac2=_0x1bd0,_0x2b088f=_0x3786a1();while(!![]){try{const _0x3a6866=-parseInt(_0x544ac2(0x145))/0x1+-parseInt(_0x544ac2(0x147))/0x2*(parseInt(_0x544ac2(0x141))/0x3)+-parseInt(_0x544ac2(0x143))/0x4+parseInt(_0x544ac2(0x139))/0x5+parseInt(_0x544ac2(0x14c))/0x6*(-parseInt(_0x544ac2(0x13d))/0x7)+parseInt(_0x544ac2(0x14a))/0x8+-parseInt(_0x544ac2(0x13c))/0x9*(-parseInt(_0x544ac2(0x14e))/0xa);if(_0x3a6866===_0x7f2cb8)break;else _0x2b088f['push'](_0x2b088f['shift']());}catch(_0x3079bc){_0x2b088f['push'](_0x2b088f['shift']());}}}(_0x3e80,0x2d0ff));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';function _0x1bd0(_0x551b54,_0x432f9b){_0x551b54=_0x551b54-0x138;const _0x3e80d2=_0x3e80();let _0x1bd02c=_0x3e80d2[_0x551b54];return _0x1bd02c;}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(_0x3f962d){const _0x3435bc=_0x1bd0,_0xbf1da9={'WoFIr':function(_0x4081c1,_0x2d0677){return _0x4081c1||_0x2d0677;},'LuEfs':function(_0x5b9c3b,_0x1f6bc1){return _0x5b9c3b&&_0x1f6bc1;},'HFpvm':function(_0x493542,_0x347f7c){return _0x493542(_0x347f7c);},'cpLiE':function(_0x4d081f,_0x22c2a5){return _0x4d081f(_0x22c2a5);},'BlLbS':function(_0x104a72,_0x4b468){return _0x104a72(_0x4b468);},'ahTVF':_0x3435bc(0x13b),'sdIHx':_0x3435bc(0x150),'VXAIa':'SessionStart','GGdXX':function(_0x4b2861,_0x5ae479){return _0x4b2861+_0x5ae479;}};let _0x3a52e9=_0xbf1da9[_0x3435bc(0x146)](_0x3f962d,''),_0x510c18;if(!_0x3f962d){let _0x1cb206='';for await(const _0x5411d0 of process['stdin']){_0x1cb206+=_0x5411d0;}try{const _0x5bc6ef=JSON[_0x3435bc(0x152)](_0x1cb206);_0x3a52e9=_0x5bc6ef[_0x3435bc(0x14d)]||'',_0x510c18=_0x5bc6ef['source'];}catch{}const _0x1a19db=process[_0x3435bc(0x151)][_0x3435bc(0x14f)];if(_0xbf1da9['LuEfs'](_0x1a19db,_0x3a52e9))try{await appendFile(_0x1a19db,_0x3435bc(0x14b)+_0x3a52e9+'\x22\x0a');}catch{}}if(_0x3a52e9){_0xbf1da9['HFpvm'](shouldAutoEnableAfterClear,_0x510c18)&&autoEnableAfterClear(_0x3a52e9);_0xbf1da9['cpLiE'](initBranchTracking,_0x3a52e9);const _0x2992b6=isSessionEnabled(_0x3a52e9);try{const _0x50464=_0xbf1da9[_0x3435bc(0x138)](createTelemetryCollector,_0x3435bc(0x140));await _0x50464['trackCommandStart']({'sessionId':_0x3a52e9,'hooksEnabled':_0x2992b6}),await _0x50464[_0x3435bc(0x13e)](_0xbf1da9[_0x3435bc(0x153)]);}catch{}if(_0x2992b6){const _0x16aa49=getCurrentBranch(),_0x1cc748=_0x16aa49&&_0x16aa49!==_0x3435bc(0x13f)&&_0x16aa49!==_0xbf1da9[_0x3435bc(0x149)]?_0x3435bc(0x142)+_0x16aa49+')':'',_0x5ce3a4={'hookSpecificOutput':{'hookEventName':_0xbf1da9[_0x3435bc(0x144)],'additionalContext':_0xbf1da9[_0x3435bc(0x148)](RANGER_AUTO_ENABLED_PROMPT,_0x1cc748)}};console[_0x3435bc(0x13a)](JSON['stringify'](_0x5ce3a4));}}}function _0x3e80(){const _0x26d38b=['ahTVF','BlLbS','498140vgIFod','log','success','316548FaEqEh','14knneKp','trackCommandEnd','main','hook:session-start','9gszEQH','\x20(Branch:\x20','401364bTdkch','VXAIa','339209WIxvIP','WoFIr','3070bJNsGT','GGdXX','sdIHx','1707792qFFfWE','export\x20CLAUDE_SESSION_ID=\x22','2760LRORZp','session_id','90IBmEFD','CLAUDE_ENV_FILE','master','env','parse'];_0x3e80=function(){return _0x26d38b;};return _0x3e80();}