@ranger-testing/ranger-cli 2.2.1 → 2.2.2

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 _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
+ function _0x16cf(_0x51a5b9,_0x5b9e90){_0x51a5b9=_0x51a5b9-0x117;const _0x54d003=_0x54d0();let _0x16cf50=_0x54d003[_0x51a5b9];return _0x16cf50;}const _0x230aef=_0x16cf;(function(_0x15c9c5,_0x35d7d7){const _0x3971a4=_0x16cf,_0x3308cd=_0x15c9c5();while(!![]){try{const _0x42f98a=parseInt(_0x3971a4(0x130))/0x1*(-parseInt(_0x3971a4(0x12f))/0x2)+-parseInt(_0x3971a4(0x139))/0x3*(parseInt(_0x3971a4(0x134))/0x4)+-parseInt(_0x3971a4(0x132))/0x5*(-parseInt(_0x3971a4(0x12b))/0x6)+parseInt(_0x3971a4(0x127))/0x7+-parseInt(_0x3971a4(0x137))/0x8*(-parseInt(_0x3971a4(0x124))/0x9)+parseInt(_0x3971a4(0x118))/0xa*(-parseInt(_0x3971a4(0x135))/0xb)+parseInt(_0x3971a4(0x133))/0xc*(parseInt(_0x3971a4(0x126))/0xd);if(_0x42f98a===_0x35d7d7)break;else _0x3308cd['push'](_0x3308cd['shift']());}catch(_0x2a79ce){_0x3308cd['push'](_0x3308cd['shift']());}}}(_0x54d0,0xa12c6));import{readdir,stat}from'fs/promises';function _0x54d0(){const _0x39b729=['sort','54DnuhAe','push','18721378vcYOYK','2745995rBhLmU','jfJFd','lIHKO','\x20\x20\x20\x20\x20\x20URL:\x20','4335342zwNQmH','.txt','includes','\x0a*\x20=\x20active\x20profile','1062452PkfcXr','2XuJJTu','log','5ueZoRk','12kvokyR','1708xuzlLc','3487qoQJjA','ohQTa','602896MDYsYv','RXXWS','4548HaSvTd','isDirectory','Run:\x20ranger\x20profile\x20add\x20<profile-name>','startsWith','idLTS','20100tNGayw','bug-bashes','TWeDv','environmentDetails','local','reports','MfGqj','SXBCJ','baseUrl','sessions','settings.json'];_0x54d0=function(){return _0x39b729;};return _0x54d0();}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=[_0x230aef(0x121),_0x230aef(0x119),_0x230aef(0x11d),_0x230aef(0x11c),'ci'];export async function getEnvNames(){const _0x3361d3=_0x230aef,_0x54c7f6={'lIHKO':function(_0x4a5415){return _0x4a5415();},'wvyRz':function(_0x580b4e,_0x214723){return _0x580b4e(_0x214723);},'RXXWS':_0x3361d3(0x11c),'OCIHz':function(_0x3b8b45,_0x22432c){return _0x3b8b45(_0x22432c);},'ytGmg':function(_0x347a63,_0x33f6aa,_0x22033e){return _0x347a63(_0x33f6aa,_0x22033e);},'ohQTa':function(_0x5ea19b,_0x45d1af){return _0x5ea19b(_0x45d1af);},'TWeDv':function(_0x5d2f1d,_0x5cad0a,_0x2263f9){return _0x5d2f1d(_0x5cad0a,_0x2263f9);},'xdmps':function(_0x4efc80,_0x96f609){return _0x4efc80(_0x96f609);},'EbXvz':_0x3361d3(0x122),'RuBoA':'legacy'},_0x291e50=_0x54c7f6[_0x3361d3(0x129)](getRangerDir);if(!_0x54c7f6['wvyRz'](existsSync,_0x291e50))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x43448b=await readActiveProfileName(),_0x54e79d=[],_0x476f79={},_0x530bd7=join(_0x291e50,_0x54c7f6[_0x3361d3(0x138)]);if(_0x54c7f6['OCIHz'](existsSync,_0x530bd7)){const _0x5e81e4=await readdir(_0x530bd7);for(const _0x3d2bee of _0x5e81e4){const _0x7c10a5=join(_0x530bd7,_0x3d2bee),_0x452843=await stat(_0x7c10a5);_0x452843[_0x3361d3(0x13a)]()&&(_0x54e79d[_0x3361d3(0x125)](_0x3d2bee),_0x476f79[_0x3d2bee]='local');}}const _0x4c3317=_0x54c7f6['ytGmg'](join,_0x291e50,'ci');if(_0x54c7f6[_0x3361d3(0x136)](existsSync,_0x4c3317)){const _0x4ed5b6=await readdir(_0x4c3317);for(const _0x47c133 of _0x4ed5b6){const _0x2bfe64=_0x54c7f6[_0x3361d3(0x11a)](join,_0x4c3317,_0x47c133),_0x239464=await stat(_0x2bfe64);_0x239464[_0x3361d3(0x13a)]()&&(_0x54e79d[_0x3361d3(0x125)](_0x47c133),_0x476f79[_0x47c133]='ci');}}const _0x5a1969=await readdir(_0x291e50);for(const _0x26ddbc of _0x5a1969){if(NON_ENV_DIRS[_0x3361d3(0x12d)](_0x26ddbc))continue;if(_0x26ddbc[_0x3361d3(0x13c)]('.'))continue;if(_0x26ddbc['endsWith'](_0x3361d3(0x12c)))continue;const _0x31f987=join(_0x291e50,_0x26ddbc),_0x35314f=await stat(_0x31f987);_0x35314f[_0x3361d3(0x13a)]()&&_0x54c7f6['xdmps'](existsSync,join(_0x31f987,_0x54c7f6['EbXvz']))&&(!_0x54e79d['includes'](_0x26ddbc)&&(_0x54e79d[_0x3361d3(0x125)](_0x26ddbc),_0x476f79[_0x26ddbc]=_0x54c7f6['RuBoA']));}return{'envNames':_0x54e79d,'activeEnv':_0x43448b,'envTypes':_0x476f79};}export async function envList(){const _0x2981ba=_0x230aef,_0x2094bf={'MfGqj':function(_0x5c6475){return _0x5c6475();},'pOMvg':'\x0aNo\x20profiles\x20found.','idLTS':_0x2981ba(0x11c),'dMTpQ':function(_0x193149,_0x107bb5){return _0x193149(_0x107bb5);},'jfJFd':function(_0xb43733,_0x4c88cc){return _0xb43733===_0x4c88cc;},'SXBCJ':'legacy'},{envNames:_0x27aeb3,activeEnv:_0x244c77,envTypes:_0x78c5b3}=await _0x2094bf[_0x2981ba(0x11e)](getEnvNames);if(_0x27aeb3['length']===0x0){console['log'](_0x2094bf['pOMvg']),console['log'](_0x2981ba(0x13b));return;}console['log']('\x0aProfiles:');for(const _0xb8b05a of _0x27aeb3[_0x2981ba(0x123)]()){const _0x37b4f9=_0xb8b05a===_0x244c77,_0x4116d5=_0x78c5b3[_0xb8b05a]||_0x2094bf[_0x2981ba(0x117)],_0x16b89e=await _0x2094bf['dMTpQ'](loadSettings,_0xb8b05a),_0x17fb99=_0x2094bf[_0x2981ba(0x128)](_0x4116d5,_0x2094bf[_0x2981ba(0x11f)])?'':'\x20['+_0x4116d5+']';console['log']('\x20\x20'+(_0x37b4f9?'*\x20':'\x20\x20')+_0xb8b05a+_0x17fb99),_0x16b89e['baseUrl']&&console[_0x2981ba(0x131)](_0x2981ba(0x12a)+_0x16b89e[_0x2981ba(0x120)]),_0x16b89e[_0x2981ba(0x11b)]&&console['log']('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x16b89e['environmentDetails']);}_0x244c77&&console[_0x2981ba(0x131)](_0x2981ba(0x12e));}
@@ -1 +1 @@
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
+ const _0x23f300=_0x1ce6;(function(_0x26eacd,_0x3fc27c){const _0x43f1e7=_0x1ce6,_0xe087e7=_0x26eacd();while(!![]){try{const _0x5d69e1=parseInt(_0x43f1e7(0xb4))/0x1*(parseInt(_0x43f1e7(0x11a))/0x2)+-parseInt(_0x43f1e7(0x119))/0x3+parseInt(_0x43f1e7(0x124))/0x4+parseInt(_0x43f1e7(0x100))/0x5+-parseInt(_0x43f1e7(0xfe))/0x6+-parseInt(_0x43f1e7(0xc5))/0x7*(parseInt(_0x43f1e7(0xfb))/0x8)+-parseInt(_0x43f1e7(0xbf))/0x9;if(_0x5d69e1===_0x3fc27c)break;else _0xe087e7['push'](_0xe087e7['shift']());}catch(_0x99585d){_0xe087e7['push'](_0xe087e7['shift']());}}}(_0x56e0,0xc6b67));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x570df0 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=_0xcccf41=>_0x23f300(0x136)+_0xcccf41+_0x23f300(0xa7);function getGitRepoUrl(){const _0x4df224=_0x23f300,_0x2e4717={'tSBnE':'pipe'};try{const _0x863c7d=execSync(_0x4df224(0x13e),{'encoding':'utf-8','stdio':[_0x2e4717[_0x4df224(0xb7)],_0x4df224(0xc2),_0x2e4717[_0x4df224(0xb7)]]})[_0x4df224(0xde)]();return _0x863c7d[_0x4df224(0x108)](/\.git$/,'')[_0x4df224(0x108)](/^git@github\.com:/,_0x4df224(0x134))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x59b561=_0x23f300,_0x8e0fd5={'IayQI':function(_0x3a26f3,_0x3dd797,_0x49a8eb){return _0x3a26f3(_0x3dd797,_0x49a8eb);},'OELMJ':_0x59b561(0xd9),'mkpVM':'pipe'};try{return _0x8e0fd5[_0x59b561(0xbb)](execSync,_0x59b561(0xac),{'encoding':_0x8e0fd5['OELMJ'],'stdio':[_0x8e0fd5['mkpVM'],'pipe',_0x8e0fd5['mkpVM']]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x412817=_0x23f300,_0x4c36da={'JuRqt':function(_0x3d5fdd,_0x312276,_0x178ebc){return _0x3d5fdd(_0x312276,_0x178ebc);}},_0x4e8c04=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x4e8c04))return null;try{const _0x4d7fa=await _0x4c36da['JuRqt'](readFile,_0x4e8c04,_0x412817(0xd9));return _0x4d7fa['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x5647c6){const _0x110cdb=_0x23f300,_0x105d83={'alvNX':function(_0x2c8fd1){return _0x2c8fd1();},'msCTV':function(_0x30bc08,_0x46dbca){return _0x30bc08(_0x46dbca);},'jcJBi':function(_0x19540f,_0x42b139,_0xf8fed5,_0x27ae85){return _0x19540f(_0x42b139,_0xf8fed5,_0x27ae85);}},_0x56236c=_0x105d83['alvNX'](getRangerDir),_0x5ae319=join(_0x56236c,ACTIVE_FEATURE_FILE);!_0x105d83[_0x110cdb(0x109)](existsSync,_0x56236c)&&await mkdir(_0x56236c,{'recursive':!![]}),await _0x105d83[_0x110cdb(0xcf)](writeFile,_0x5ae319,_0x5647c6,_0x110cdb(0xd9));}function getProgressDisplay(_0xfd3b81){const _0x3777a4=_0x23f300,_0x541754={'yVtRc':function(_0x270770,_0x33f715){return _0x270770+_0x33f715;},'GsJIN':function(_0x1b028d,_0x4dfd58){return _0x1b028d/_0x4dfd58;},'fOLuB':function(_0x47a426,_0x47d8fe){return _0x47a426+_0x47d8fe;},'WIIQf':function(_0x172608,_0x5970a5){return _0x172608>_0x5970a5;},'ZjRqW':function(_0x2b485a,_0x5a914d){return _0x2b485a>_0x5a914d;}},_0x1a5bf0=_0xfd3b81[_0x3777a4(0xd5)]||0x0,_0x5aa3a9=_0xfd3b81['verificationInProgressItems']||0x0,_0x581145=_0xfd3b81['blockedItems']||0x0,_0x21960d=_0xfd3b81[_0x3777a4(0x152)]||0x0,_0x5350e2=_0xfd3b81[_0x3777a4(0x11d)]||0x0,_0x568df4=_0x541754['yVtRc'](_0x541754['yVtRc'](_0x541754[_0x3777a4(0xb9)](_0x541754['yVtRc'](_0x1a5bf0,_0x5aa3a9),_0x581145),_0x21960d),_0x5350e2);if(_0x568df4===0x0)return'-';const _0x24c8ef=0xa,_0x4855db=Math[_0x3777a4(0x14b)](_0x541754['GsJIN'](_0x1a5bf0,_0x568df4)*_0x24c8ef),_0x562f2f=_0x541754['fOLuB']('█'[_0x3777a4(0xc0)](_0x4855db),'░'[_0x3777a4(0xc0)](_0x24c8ef-_0x4855db)),_0x9b4718=[];if(_0x581145>0x0)_0x9b4718[_0x3777a4(0xee)](_0x581145+'\x20blocked');if(_0x541754['WIIQf'](_0x21960d,0x0))_0x9b4718[_0x3777a4(0xee)](_0x21960d+'\x20incomplete');if(_0x541754['ZjRqW'](_0x5aa3a9,0x0))_0x9b4718['push'](_0x5aa3a9+'\x20in\x20progress');const _0x204b8d=_0x9b4718[_0x3777a4(0x150)]>0x0?'\x20('+_0x9b4718['join'](',\x20')+')':'';return _0x562f2f+'\x20'+_0x1a5bf0+'/'+_0x568df4+_0x3777a4(0xfa)+_0x204b8d;}function _0x1ce6(_0x24ca6f,_0x1c990a){_0x24ca6f=_0x24ca6f-0x94;const _0x56e03d=_0x56e0();let _0x1ce62d=_0x56e03d[_0x24ca6f];return _0x1ce62d;}function _0x56e0(){const _0x44df10=['point','\x20\x20\x20ID:\x20','closed','github.com/','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x1b[1m','style','dashboardUrl','qmSft','\x20(v','\x20scenarios.','NSbYx','QAiur','git\x20remote\x20get-url\x20origin','mnVdG','arrayBuffer','\x20\x20✅\x20No\x20feedback\x20to\x20address','SFncG','authorEmail','.\x20Feature\x20review\x20has\x20','laOLl','toLocaleDateString','uzBUd','name','Bxwin','domRef','round','CLAUDE_SESSION_ID','stats','Current\x20session\x20not\x20found.','stepName','length','latestReview','incompleteItems','tsfVh','isInteger','completedAt','\x20\x20\x20\x20\x20ID:\x20','hDTqf','split','stdout','stringify','find','scenarios','textContent','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','assetUrl','/api/v1/mcp/browser-sessions/','status','feedback-images','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','spatial','\x20--limit\x20','after','WcLaG','eAAEY','notes','completed','\x20\x20\x20Updated\x20branch\x20to:\x20','version','json','yQxIl','\x1b[0m','TxvNP','gitBranch','exit','Scenario\x20','git\x20rev-parse\x20--abbrev-ref\x20HEAD','Not\x20in\x20a\x20git\x20repository.','toLocaleString','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','canonicalFlow','/artifacts/','type','assetType','8929xAdqZv','OQyKG','excludeScenarios','tSBnE','toFixed','yVtRc','knTGR','IayQI','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','coordinates','dDPNT','412065uPAvNB','repeat','verification_in_progress','pipe','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','oBXUe','422835sDpVqk','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','\x20—\x20no\x20comments','IDsBe','has','items','NRFHl','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x20\x20\x20Completed:\x20','currentSessionId','jcJBi','tpIEG','iteration','JBdfv','incomplete','\x0a⚠️\x20\x20','verifiedItems','pop','isKeyStep','ready','utf-8','totalCount','selected','any','stdin','trim','RSBPJ','VrVTd','rfhAX','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','terminalReason','filter','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','\x0aAvailable\x20scenarios:','screenshotUrls','comment_','verified','FotKF','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','KxvHB','limit','push','5|4|1|3|0|2','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','scenario','gitRepoUrl','iLYaP','\x0a✅\x20Restored\x20feature\x20review:\x20','unaddressedComments','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','\x20\x20\x20\x20','\x0a✅\x20Scenario\x20added','WGKiA','\x20verified','96aHufDN','UZCkp','cqNzQ','3073560Obedvo','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','1830290ZWgMFz','en-US','canceledReason','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20/\x20','Dxbbu','isTTY','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','replace','msCTV','QjREN','\x20\x20\x20Status:\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','\x20\x20Expected\x20flow:','browserSessionId','Uenge','content','dsXcK','from','qSoRL','output','log','element','AVJrX','\x20\x20\x20\x20\x20Progress:\x20','751359UUCQAZ','148agEzHo','\x20feature\x20review(s)\x20found','sessionId','pendingItems','in_progress','description','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','incompleteReason','error','position','5281924tDTRDz','fBNOz','\x20\x20\x20Progress:\x20','blockedReason','vLMBX','RrbaG','checklistItems','map','\x20\x20\x20Branch:\x20','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','KtxGf','mTjpe','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'];_0x56e0=function(){return _0x44df10;};return _0x56e0();}function getCurrentSessionItems(_0x25eac9,_0xd8211b){const _0x1a0583=_0x23f300;if(!_0x25eac9[_0x1a0583(0xce)])return _0xd8211b['filter'](_0x4d1684=>!_0x4d1684['sessionId']);return _0xd8211b['filter'](_0x1e3b80=>_0x1e3b80['sessionId']===_0x25eac9[_0x1a0583(0xce)]||!_0x1e3b80[_0x1a0583(0x11c)]);}function displayFeature(_0x317369,_0x1cc3f8){const _0x11de1c=_0x23f300,_0x35032a={'wQKyC':function(_0x1c1ac7,_0x28e7cf){return _0x1c1ac7>_0x28e7cf;},'YRkZt':'\x0a\x20\x20\x20Scenarios:','tpIEG':_0x11de1c(0x133),'dDPNT':function(_0x479139,_0x3fce75){return _0x479139===_0x3fce75;},'DCRBO':'approved','AVJrX':function(_0x161f6e,_0x3be4fa){return _0x161f6e===_0x3be4fa;},'SypPY':'blocked','JSblv':function(_0x4f6ae9,_0x3c7dd4){return _0x4f6ae9>_0x3c7dd4;},'RSBPJ':function(_0x8536f9,_0x4ab7b1){return _0x8536f9!==_0x4ab7b1;},'hrXTz':_0x11de1c(0xd3),'yQxIl':function(_0xf7530b,_0x427953){return _0xf7530b===_0x427953;},'dKvkX':function(_0x52f4bc,_0x4f2456){return _0x52f4bc===_0x4f2456;}};console['log']('\x0a'+_0x317369[_0x11de1c(0x148)]+'\x20('+_0x317369[_0x11de1c(0x138)]+')');_0x317369['stats']&&console['log'](_0x11de1c(0x126)+getProgressDisplay(_0x317369[_0x11de1c(0x14d)]));_0x317369['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x317369['description']);_0x317369[_0x11de1c(0xf2)]&&console[_0x11de1c(0x115)]('\x20\x20\x20Repository:\x20'+_0x317369[_0x11de1c(0xf2)]);_0x317369['gitBranch']&&console[_0x11de1c(0x115)]('\x20\x20\x20Branch:\x20'+_0x317369['gitBranch']);console[_0x11de1c(0x115)]('\x20\x20\x20Created:\x20'+new Date(_0x317369['createdAt'])[_0x11de1c(0xae)]());_0x317369[_0x11de1c(0x155)]&&console[_0x11de1c(0x115)](_0x11de1c(0xcd)+new Date(_0x317369[_0x11de1c(0x155)])['toLocaleString']());if(_0x1cc3f8&&_0x35032a['wQKyC'](_0x1cc3f8['length'],0x0)){console['log'](_0x35032a['YRkZt']);for(let _0x2247ac=0x0;_0x2247ac<_0x1cc3f8['length'];_0x2247ac++){const _0x43764d=_0x1cc3f8[_0x2247ac];let _0x2033b5;if(_0x43764d['status']===_0x35032a[_0x11de1c(0xd0)]&&_0x35032a['dDPNT'](_0x43764d['terminalReason'],_0x35032a['DCRBO']))_0x2033b5='✅';else{if(_0x43764d['status']===_0x11de1c(0xe9))_0x2033b5='🟢';else{if(_0x35032a[_0x11de1c(0xbe)](_0x43764d['status'],_0x11de1c(0xd3)))_0x2033b5='🟠';else{if(_0x35032a['AVJrX'](_0x43764d[_0x11de1c(0x99)],_0x35032a['SypPY']))_0x2033b5='🛑';else{if(_0x43764d['status']===_0x35032a['tpIEG'])_0x2033b5='⛔';else _0x43764d['status']===_0x11de1c(0xc1)?_0x2033b5='⏳':_0x2033b5='⬜';}}}}const _0x38cb81=_0x43764d['version']>0x1?_0x11de1c(0x13a)+_0x43764d[_0x11de1c(0xa4)]+')':'',_0x2fad27=_0x35032a['JSblv'](_0x43764d['version'],0x1)&&_0x43764d['parentItemId']&&_0x43764d['status']!==_0x35032a['tpIEG']&&_0x35032a[_0x11de1c(0xdf)](_0x43764d[_0x11de1c(0x99)],'verified')?'\x20[has\x20reviewer\x20feedback]':'';console[_0x11de1c(0x115)]('\x20\x20\x20'+(_0x2247ac+0x1)+'.\x20'+_0x2033b5+'\x20'+_0x43764d['description']+_0x38cb81+_0x2fad27);_0x35032a[_0x11de1c(0x117)](_0x43764d[_0x11de1c(0x99)],_0x35032a['SypPY'])&&_0x43764d['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x43764d[_0x11de1c(0x127)]);_0x43764d[_0x11de1c(0x99)]===_0x35032a['hrXTz']&&_0x43764d['incompleteReason']&&console[_0x11de1c(0x115)](_0x11de1c(0x10c)+_0x43764d['incompleteReason']);if(_0x35032a['AVJrX'](_0x43764d['status'],_0x11de1c(0x133))&&_0x35032a[_0x11de1c(0xa6)](_0x43764d[_0x11de1c(0xe3)],'approved'))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x35032a['dKvkX'](_0x43764d['status'],_0x11de1c(0x133))&&_0x43764d['canceledReason']&&console[_0x11de1c(0x115)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x43764d[_0x11de1c(0x102)]);}}}export async function featureCreate(_0x49c6d3,_0x5c3534){const _0x5654df=_0x23f300,_0x234bb7={'WcLaG':function(_0x670e61){return _0x670e61();},'PsqPG':function(_0x2130a8,_0x21535f){return _0x2130a8===_0x21535f;},'QWSMT':function(_0x352931,_0x2b85a9){return _0x352931(_0x2b85a9);},'UZCkp':function(_0x457605,_0xe23d6d,_0x5a2858){return _0x457605(_0xe23d6d,_0x5a2858);},'EebHA':function(_0x472807,_0xbdd47b,_0x58b9db){return _0x472807(_0xbdd47b,_0x58b9db);}},{envNames:_0x400a70}=await _0x234bb7[_0x5654df(0x9f)](getEnvNames);_0x234bb7['PsqPG'](_0x400a70['length'],0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x2c15da=>bold(_0x2c15da)));const _0xadd6b7=_0x5c3534[_0x5654df(0x94)]?_0x5c3534[_0x5654df(0x94)]['map'](_0x594c3d=>_0x594c3d['trim']()):[],_0xe5ae76=getGitRepoUrl(),_0x12c664=getGitBranch();console[_0x5654df(0x115)]('\x0aCreating\x20feature\x20review...');const _0x46ac57=await _0x234bb7['QWSMT'](createFeature,{'name':_0x49c6d3,'description':_0x5c3534[_0x5654df(0x11f)],'checklist':_0xadd6b7,'gitRepoUrl':_0xe5ae76,'gitBranch':_0x12c664});await setActiveFeatureId(_0x46ac57['id']),await tryStartCurrentSession(_0x46ac57['id']);const _0x1a4a3e=process['env'][_0x5654df(0x14c)];_0x1a4a3e&&_0x234bb7[_0x5654df(0xfc)](registerSession,_0x1a4a3e,_0x46ac57['id']),console[_0x5654df(0x115)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x46ac57['id']),_0x234bb7['EebHA'](displayFeature,_0x46ac57,_0x46ac57[_0x5654df(0x12a)]),console['log'](_0x5654df(0xbc));}export async function featureList(_0x2e7c88){const _0x1044e3=_0x23f300,_0x2f463e={'JUHgG':function(_0x419c32){return _0x419c32();},'KYDmp':function(_0x5d0988,_0x65e943){return _0x5d0988(_0x65e943);},'qSoRL':'\x0aNo\x20feature\x20reviews\x20found.','mMMHQ':function(_0x48b219,_0x979319){return _0x48b219>_0x979319;},'sCCMP':_0x1044e3(0xef),'YmvWM':function(_0x348f98,_0x37d3fc){return _0x348f98+_0x37d3fc;},'VrVTd':function(_0x2a347c,_0x322888){return _0x2a347c!==_0x322888;},'yWFbU':'\x20--include-deleted'},_0x21865e={'limit':_0x2e7c88[_0x1044e3(0xed)]??0xa,'offset':_0x2e7c88['offset']??0x0,'includeDeleted':_0x2e7c88['includeDeleted']};_0x2e7c88['currentBranch']&&(_0x21865e['gitRepoUrl']=_0x2f463e['JUHgG'](getGitRepoUrl),_0x21865e[_0x1044e3(0xa9)]=_0x2f463e['JUHgG'](getGitBranch));const _0x1c93f3=await _0x2f463e['KYDmp'](listFeatures,_0x21865e);if(_0x1c93f3['items'][_0x1044e3(0x150)]===0x0){console[_0x1044e3(0x115)](_0x2f463e[_0x1044e3(0x113)]);return;}const _0x3e0afa=_0x2f463e['mMMHQ'](_0x1c93f3[_0x1044e3(0xda)],_0x1c93f3['items']['length'])?'Showing\x20'+_0x1c93f3['items']['length']+'\x20of\x20'+_0x1c93f3[_0x1044e3(0xda)]:_0x1c93f3['totalCount']+_0x1044e3(0x11b);console['log']('\x0a'+_0x3e0afa+':\x0a');for(const _0x285050 of _0x1c93f3['items']){const _0x3ec0d1=_0x2f463e['sCCMP']['split']('|');let _0x21f545=0x0;while(!![]){switch(_0x3ec0d1[_0x21f545++]){case'0':console['log']('\x20\x20\x20Created:\x20'+new Date(_0x285050['createdAt'])['toLocaleDateString']());continue;case'1':_0x285050[_0x1044e3(0x14d)]&&console[_0x1044e3(0x115)](_0x1044e3(0x126)+getProgressDisplay(_0x285050[_0x1044e3(0x14d)]));continue;case'2':console['log']('');continue;case'3':_0x285050['gitBranch']&&console['log'](_0x1044e3(0x12c)+_0x285050[_0x1044e3(0xa9)]);continue;case'4':console['log'](_0x1044e3(0x132)+_0x285050['id']);continue;case'5':console['log'](''+_0x285050['name']);continue;}break;}}const _0x4fde8c=_0x21865e[_0x1044e3(0xed)]??0xa,_0x1297c1=_0x2f463e['YmvWM'](_0x21865e['offset']??0x0,_0x1c93f3[_0x1044e3(0xca)][_0x1044e3(0x150)]);if(_0x1297c1<_0x1c93f3[_0x1044e3(0xda)]){const _0x5a70dd=_0x2f463e[_0x1044e3(0xe0)](_0x4fde8c,0xa)?_0x1044e3(0x9d)+_0x4fde8c:'',_0x24b3a7=_0x2e7c88['currentBranch']?'\x20--current-branch':'',_0x3adf62=_0x2e7c88['includeDeleted']?_0x2f463e['yWFbU']:'';console[_0x1044e3(0x115)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x1297c1+_0x5a70dd+_0x24b3a7+_0x3adf62);}}export async function featureShow(_0x52063f){const _0x5894da=_0x23f300,_0x4cc7ab={'sIiJn':function(_0x33b0f2){return _0x33b0f2();},'JBwpe':_0x5894da(0x135),'NSbYx':function(_0x5ef324,_0x5cef97){return _0x5ef324(_0x5cef97);}},_0x3e5bf3=_0x52063f||await _0x4cc7ab['sIiJn'](getActiveFeatureId);if(!_0x3e5bf3)throw new Error(_0x4cc7ab['JBwpe']);const _0x336d1d=await _0x4cc7ab[_0x5894da(0x13c)](getFeature,_0x3e5bf3);displayFeature(_0x336d1d,_0x336d1d[_0x5894da(0x12a)]);}export async function featureResume(_0x58a827){const _0x5c04af=_0x23f300,_0x24ac5d={'aBSxi':function(_0x497742,_0x4084ed){return _0x497742(_0x4084ed);},'kQHNP':function(_0x28b21b,_0x3dd0a9){return _0x28b21b(_0x3dd0a9);},'MTlJh':function(_0x3c1062,_0xb99405,_0x17b9a3){return _0x3c1062(_0xb99405,_0x17b9a3);},'SDQpS':function(_0x32aee4,_0x3c3b06){return _0x32aee4(_0x3c3b06);},'SchLn':function(_0xb6e95a,_0x34069d,_0x168c7b){return _0xb6e95a(_0x34069d,_0x168c7b);},'gCRPk':function(_0x387cc4){return _0x387cc4();},'qmSft':function(_0x385e5c,_0xa51bb1){return _0x385e5c&&_0xa51bb1;},'QjREN':_0x5c04af(0xad),'mXPAX':function(_0x1eef10,_0x1443e9){return _0x1eef10||_0x1443e9;},'laOLl':'any','rfhAX':function(_0x2e3b29,_0x46cfa3){return _0x2e3b29===_0x46cfa3;},'OgbFu':_0x5c04af(0xe5),'nHDZl':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','uLJvh':_0x5c04af(0x107),'tsfVh':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:'};if(_0x58a827){const _0x382dae=await _0x24ac5d['aBSxi'](getFeature,_0x58a827);await _0x24ac5d['kQHNP'](setActiveFeatureId,_0x382dae['id']);const _0xa7691a=getGitBranch();_0xa7691a&&_0xa7691a!==_0x382dae[_0x5c04af(0xa9)]&&(await _0x24ac5d['MTlJh'](updateFeature,_0x382dae['id'],{'gitBranch':_0xa7691a}),console['log'](_0x5c04af(0xa3)+_0xa7691a));console[_0x5c04af(0x115)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x382dae['name']+'\x20('+_0x382dae['id']+')'),await _0x24ac5d['SDQpS'](tryStartCurrentSession,_0x382dae['id']);const _0x3a6bb1=process['env']['CLAUDE_SESSION_ID'];_0x3a6bb1&&_0x24ac5d['SchLn'](registerSession,_0x3a6bb1,_0x382dae['id']);displayFeature(_0x382dae,_0x382dae[_0x5c04af(0x12a)]),await printFeedbackNudge(_0x382dae['id']);return;}const _0x830378=getGitRepoUrl(),_0x2473aa=_0x24ac5d['gCRPk'](getGitBranch);if(_0x24ac5d[_0x5c04af(0x139)](!_0x830378,!_0x2473aa))throw new Error(_0x24ac5d[_0x5c04af(0x10a)]);console[_0x5c04af(0x115)](_0x5c04af(0xc3)+_0x24ac5d['mXPAX'](_0x830378,_0x5c04af(0xdc))+_0x5c04af(0x104)+(_0x2473aa||_0x24ac5d[_0x5c04af(0x145)])+'...');const _0xc2ee57=await _0x24ac5d['SDQpS'](listFeatures,{'gitRepoUrl':_0x830378,'gitBranch':_0x2473aa}),_0x43fbd9=_0xc2ee57[_0x5c04af(0xca)][_0x5c04af(0xe4)](_0x159235=>!_0x159235['completedAt']);if(_0x24ac5d[_0x5c04af(0xe1)](_0x43fbd9[_0x5c04af(0x150)],0x0)){console['log'](_0x24ac5d['OgbFu']),console['log'](_0x24ac5d['nHDZl']);return;}let _0x8b689c;if(_0x43fbd9[_0x5c04af(0x150)]===0x1)_0x8b689c=_0x43fbd9[0x0];else{const _0x16986f=process[_0x5c04af(0xdd)][_0x5c04af(0x106)]&&process[_0x5c04af(0x159)]['isTTY'];if(!_0x16986f){console[_0x5c04af(0x115)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0xb4df7b of _0x43fbd9){console['log']('\x20\x20'+_0xb4df7b['name']),console['log'](_0x5c04af(0x156)+_0xb4df7b['id']),_0xb4df7b['stats']&&console[_0x5c04af(0x115)](_0x5c04af(0x118)+getProgressDisplay(_0xb4df7b['stats'])),_0xb4df7b['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xb4df7b[_0x5c04af(0xa9)]);}throw new Error(_0x24ac5d['uLJvh']);}const {selected:_0x393a88}=await _0x570df0['prompt']([{'type':'list','name':_0x5c04af(0xdb),'message':_0x24ac5d[_0x5c04af(0x153)],'choices':_0x43fbd9[_0x5c04af(0x12b)](_0xd8fb1a=>({'name':_0xd8fb1a[_0x5c04af(0x148)]+'\x20('+_0xd8fb1a['id']+')','value':_0xd8fb1a['id']}))}]);_0x8b689c=_0x43fbd9[_0x5c04af(0x15b)](_0x202e83=>_0x202e83['id']===_0x393a88);}await setActiveFeatureId(_0x8b689c['id']);_0x2473aa&&_0x2473aa!==_0x8b689c['gitBranch']&&(await updateFeature(_0x8b689c['id'],{'gitBranch':_0x2473aa}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x2473aa));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x8b689c[_0x5c04af(0x148)]+'\x20('+_0x8b689c['id']+')'),await tryStartCurrentSession(_0x8b689c['id']);const _0x17a4d4=await getFeature(_0x8b689c['id']),_0x17a624=process['env']['CLAUDE_SESSION_ID'];_0x17a624&&registerSession(_0x17a624,_0x17a4d4['id']),_0x24ac5d['SchLn'](displayFeature,_0x17a4d4,_0x17a4d4['checklistItems']),await printFeedbackNudge(_0x17a4d4['id']);}async function printFeedbackNudge(_0x32475f){const _0x1efc65=_0x23f300,_0x867a0d={'rgUMQ':function(_0x4b5f03,_0x592549){return _0x4b5f03(_0x592549);},'PwiMa':function(_0x22f673,_0xa4692d,_0x40c8bb){return _0x22f673(_0xa4692d,_0x40c8bb);}};try{const {items:_0x1c72d6}=await _0x867a0d['rgUMQ'](getActionItems,_0x32475f);let _0x136b44=0x0,_0x1ebf7d=0x0;for(const _0x53d6bd of _0x1c72d6){const _0x3a33dc=await _0x867a0d['PwiMa'](getItemFeedback,_0x32475f,_0x53d6bd['id']);_0x3a33dc[_0x1efc65(0xf5)]['length']>0x0&&(_0x136b44+=_0x3a33dc['unaddressedComments']['length'],_0x1ebf7d++);}_0x136b44>0x0&&(console['log'](_0x1efc65(0xd4)+_0x136b44+_0x1efc65(0xff)+_0x1ebf7d+'\x20scenario(s).'),console[_0x1efc65(0x115)](_0x1efc65(0x96)));}catch{}}async function tryStartCurrentSession(_0x5b5de5){const _0x50feab=_0x23f300,_0x36d3c5={'SEHdi':function(_0x43d511,_0x273397){return _0x43d511(_0x273397);},'YfIFT':function(_0x545056,_0x2088ce,_0x4c92e9){return _0x545056(_0x2088ce,_0x4c92e9);}};try{const {sessions:_0x11c095}=await _0x36d3c5['SEHdi'](listFeatureSessions,_0x5b5de5),_0x2916ef=_0x11c095[_0x50feab(0x15b)](_0x1b9bbd=>_0x1b9bbd[_0x50feab(0x99)]===_0x50feab(0xd8));_0x2916ef&&(await _0x36d3c5['YfIFT'](startSession,_0x5b5de5,_0x2916ef['id']),console[_0x50feab(0x115)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x2916ef['iteration']));}catch{}}export async function featureReport(_0x5db596,_0x5ba5f7){const _0xab6ba9=_0x23f300,_0x1c739a={'acMpW':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','fthlR':function(_0x43f074,_0x3429b9,_0x37ca6a,_0x2fa450){return _0x43f074(_0x3429b9,_0x37ca6a,_0x2fa450);},'bALPx':function(_0x41f94b){return _0x41f94b();},'OmCHy':'reports','eXyQQ':function(_0x1ee944,_0x570232){return _0x1ee944(_0x570232);},'Fplhq':function(_0x3333db,_0x2d5953,_0x41e47c){return _0x3333db(_0x2d5953,_0x41e47c);},'bAIXs':function(_0x24583d,_0x33f063,_0x376650,_0x4fc7c0){return _0x24583d(_0x33f063,_0x376650,_0x4fc7c0);},'IhpIW':_0xab6ba9(0xd9)},_0x52018f=_0x5db596||await getActiveFeatureId();if(!_0x52018f)throw new Error(_0x1c739a['acMpW']);console[_0xab6ba9(0x115)]('\x0aGenerating\x20report...');const _0x56b7cf=await getFeatureReportMarkdown(_0x52018f,{'style':_0x5ba5f7[_0xab6ba9(0x137)]}),_0x35aa2f=_0x5ba5f7[_0xab6ba9(0x114)]||_0x1c739a['fthlR'](join,_0x1c739a['bALPx'](getRangerDir),_0x1c739a['OmCHy'],_0x52018f+'.md'),_0x5ef314=join(_0x35aa2f,'..');!_0x1c739a['eXyQQ'](existsSync,_0x5ef314)&&await _0x1c739a['Fplhq'](mkdir,_0x5ef314,{'recursive':!![]}),await _0x1c739a['bAIXs'](writeFile,_0x35aa2f,_0x56b7cf,_0x1c739a['IhpIW']),console[_0xab6ba9(0x115)]('\x0a✅\x20Report\x20generated:\x20'+_0x35aa2f);}function getScenarioResult(_0x41c7f3){const _0x2d6116=_0x23f300,_0xc56563={'IDsBe':function(_0x377d26,_0x59a445){return _0x377d26===_0x59a445;}};if(_0xc56563[_0x2d6116(0xc8)](_0x41c7f3['status'],'closed'))return _0x41c7f3[_0x2d6116(0xe3)]??'closed';if(_0xc56563['IDsBe'](_0x41c7f3[_0x2d6116(0x99)],'verification_in_progress'))return'in_progress';return _0x41c7f3['status'];}function getScenarioRationale(_0x3d7af3,_0x590384){const _0x26354b=_0x23f300,_0xf7a94f='1|2|0|4|3|5'['split']('|');let _0x55f4c2=0x0;while(!![]){switch(_0xf7a94f[_0x55f4c2++]){case'0':if(_0x3d7af3['incompleteReason'])return _0x3d7af3[_0x26354b(0x121)];continue;case'1':if(_0x590384)return _0x590384;continue;case'2':if(_0x3d7af3['blockedReason'])return _0x3d7af3[_0x26354b(0x127)];continue;case'3':if(_0x3d7af3[_0x26354b(0xa1)])return _0x3d7af3[_0x26354b(0xa1)];continue;case'4':if(_0x3d7af3[_0x26354b(0x102)])return _0x3d7af3[_0x26354b(0x102)];continue;case'5':return null;}break;}}export async function featureReportPrDescription(_0x3e597a,_0x4e5087){const _0x39e302=_0x23f300,_0x705c3={'KtxGf':function(_0xae59eb){return _0xae59eb();},'JNMkL':function(_0x3f4844,_0x5cc119,_0x2c77f3){return _0x3f4844(_0x5cc119,_0x2c77f3);},'OQyKG':_0x39e302(0xc6),'fBNOz':function(_0x11e90b,_0x61f0c2){return _0x11e90b>_0x61f0c2;},'iHAHH':'\x0aAvailable\x20scenarios:','Dxbbu':function(_0xd1e5ca,_0x506e60){return _0xd1e5ca+_0x506e60;},'JBdfv':_0x39e302(0xf6),'EpzCa':function(_0x1de38b,_0x217c1f,_0xe6e4c1,_0x10e371){return _0x1de38b(_0x217c1f,_0xe6e4c1,_0x10e371);}},_0x4ed920=_0x3e597a||await _0x705c3[_0x39e302(0x12e)](getActiveFeatureId);if(!_0x4ed920)throw new Error(_0x39e302(0xeb));const _0x4c7be8=await getFeature(_0x4ed920),_0x4a7ef4=_0x4c7be8[_0x39e302(0x12a)]||[],_0x1b39ed=_0x705c3['JNMkL'](getCurrentSessionItems,_0x4c7be8,_0x4a7ef4);_0x1b39ed['length']===0x0&&(console[_0x39e302(0x122)](_0x705c3[_0x39e302(0xb5)]),process['exit'](0x1));const _0x519f59=_0x4e5087[_0x39e302(0xb6)]??[],_0x46ba3f=_0x519f59['filter'](_0x1c725d=>!Number[_0x39e302(0x154)](_0x1c725d)||_0x1c725d<0x1||_0x1c725d>_0x1b39ed['length']);if(_0x705c3[_0x39e302(0x125)](_0x46ba3f['length'],0x0)){console[_0x39e302(0x122)](_0x39e302(0x120)+_0x46ba3f['join'](',\x20')),console[_0x39e302(0x115)](_0x705c3['iHAHH']);for(let _0x30e093=0x0;_0x30e093<_0x1b39ed['length'];_0x30e093++){console[_0x39e302(0x115)]('\x20\x20'+_0x705c3[_0x39e302(0x105)](_0x30e093,0x1)+'.\x20'+_0x1b39ed[_0x30e093][_0x39e302(0x11f)]);}process[_0x39e302(0xaa)](0x1);}const _0x221415=new Set(_0x519f59['map'](_0x32b1ad=>_0x32b1ad-0x1)),_0x5eef06=_0x1b39ed['filter']((_0x44d162,_0x18be61)=>!_0x221415[_0x39e302(0xc9)](_0x18be61));_0x5eef06['length']===0x0&&(console[_0x39e302(0x122)](_0x705c3[_0x39e302(0xd2)]),process[_0x39e302(0xaa)](0x1));if(_0x4e5087[_0x39e302(0xa5)])await _0x705c3['EpzCa'](outputJsonReport,_0x4ed920,_0x4c7be8,_0x5eef06);else{const _0x14c123=await getFeatureReportMarkdown(_0x4ed920,{'itemIds':_0x5eef06['map'](_0x5358a1=>_0x5358a1['id'])});process[_0x39e302(0x159)]['write'](_0x14c123['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x1edde8,_0x58e3f5,_0x567120){const _0x3162cf=_0x23f300,_0x332b36={'VjayR':function(_0x42710d,_0x40a09e){return _0x42710d>_0x40a09e;},'mnVdG':function(_0x7cc96b){return _0x7cc96b();}},_0x2298f8=_0x332b36[_0x3162cf(0x13f)](getApiBaseUrl),_0x3312f7=await getFeatureReport(_0x1edde8),_0x2a77bd=new Map(_0x3312f7['checklistItems']['map'](_0x2296a1=>[_0x2296a1['id'],_0x2296a1])),_0x4e2bc0=await Promise['all'](_0x567120[_0x3162cf(0x12b)](async _0x4ef518=>{const _0x128efd=_0x3162cf,_0x47afae=_0x2a77bd['get'](_0x4ef518['id']),_0x37f873=_0x47afae?.['linkedSession']??null;let _0xa16cb9=[];if(_0x4ef518['browserSessionId'])try{const {steps:_0x40d498}=await getBrowserSessionSteps(_0x4ef518[_0x128efd(0x10e)]);_0x332b36['VjayR'](_0x40d498[_0x128efd(0x150)],0x0)&&(_0xa16cb9=_0x40d498[_0x128efd(0x12b)](_0x568c19=>{const _0x5ab527=_0x128efd,_0x2b3981=_0x568c19['assets'][_0x5ab527(0x15b)](_0x17bf00=>_0x17bf00['assetType']==='screenshot'&&_0x17bf00['timing']===_0x5ab527(0x9e))??_0x568c19['assets']['find'](_0x55b8ff=>_0x55b8ff[_0x5ab527(0xb3)]==='screenshot');let _0x13681e=null,_0x523bda=null;if(_0x2b3981){const _0x257aed=_0x2b3981['storage']['location'][_0x5ab527(0x158)]('/')[_0x5ab527(0xd6)]();_0x13681e=_0x2298f8+_0x5ab527(0x98)+_0x4ef518['browserSessionId']+_0x5ab527(0xb1)+_0x257aed,_0x257aed&&(_0x523bda=_0x257aed['replace'](/\.\w+$/,'')[_0x5ab527(0x108)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x523bda||_0x568c19['description']||_0x568c19[_0x5ab527(0x14f)]||'Step\x20'+_0x568c19[_0x5ab527(0x123)],'screenshot':_0x13681e,'is_key_step':_0x568c19[_0x5ab527(0xd7)]};}));}catch{}return _0xa16cb9['length']===0x0&&_0x37f873?.[_0x128efd(0xe7)]&&(_0xa16cb9=_0x37f873[_0x128efd(0xe7)]['map']((_0x2ba058,_0x448a6c)=>({'description':'Screenshot\x20'+(_0x448a6c+0x1),'screenshot':_0x2ba058,'is_key_step':![]}))),{'description':_0x4ef518[_0x128efd(0x11f)],'result':getScenarioResult(_0x4ef518),'rationale':getScenarioRationale(_0x4ef518,_0x37f873?.['agentResponse']),'steps':_0xa16cb9};})),_0xeca52c={'url':_0x58e3f5[_0x3162cf(0x138)],'scenarios':_0x4e2bc0};process['stdout']['write'](JSON[_0x3162cf(0x15a)](_0xeca52c,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x4d2779){const _0x56c608=_0x23f300,_0x51d2d8={'BWKIZ':function(_0x12ff07,_0x4ffcfd){return _0x12ff07(_0x4ffcfd);},'mTjpe':_0x56c608(0x14e),'FotKF':_0x56c608(0xa2),'iLYaP':'\x0a✅\x20Session\x20is\x20already\x20completed.','FWzQZ':'in_progress'},_0x105016=_0x4d2779||await getActiveFeatureId();if(!_0x105016)throw new Error(_0x56c608(0x135));const _0x1e7e9a=await _0x51d2d8['BWKIZ'](getFeature,_0x105016);if(!_0x1e7e9a['currentSessionId'])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x49e327}=await listFeatureSessions(_0x105016),_0x1a56f8=_0x49e327['find'](_0xca6612=>_0xca6612['id']===_0x1e7e9a['currentSessionId']);if(!_0x1a56f8)throw new Error(_0x51d2d8[_0x56c608(0x12f)]);if(_0x1a56f8[_0x56c608(0x99)]===_0x51d2d8[_0x56c608(0xea)]){console[_0x56c608(0x115)](_0x51d2d8[_0x56c608(0xf3)]);return;}if(_0x1a56f8[_0x56c608(0x99)]!==_0x51d2d8['FWzQZ'])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x1a56f8[_0x56c608(0x99)]);console[_0x56c608(0x115)]('\x0aConcluding\x20session...'),await concludeSession(_0x105016,_0x1e7e9a[_0x56c608(0xce)]),console['log']('\x0a✅\x20Session\x20'+_0x1a56f8[_0x56c608(0xd1)]+'\x20concluded.'),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x5412a4){const _0x4e2111=_0x23f300,_0x16812f={'XEGbx':function(_0xc0068e){return _0xc0068e();},'cqNzQ':_0x4e2111(0xeb),'oBXUe':function(_0x13433f,_0x5d7e7c){return _0x13433f(_0x5d7e7c);},'NRFHl':'No\x20sessions\x20found.','oVqwE':'completed','iDbAe':function(_0x49a548,_0x51209e){return _0x49a548===_0x51209e;}},_0x296df2=_0x5412a4||await _0x16812f['XEGbx'](getActiveFeatureId);if(!_0x296df2)throw new Error(_0x16812f[_0x4e2111(0xfd)]);const _0x4d24b9=await getFeature(_0x296df2);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x4d24b9['name']+'\x0a');const {sessions:_0x427718}=await _0x16812f[_0x4e2111(0xc4)](listFeatureSessions,_0x296df2);if(_0x427718[_0x4e2111(0x150)]===0x0){console['log'](_0x16812f[_0x4e2111(0xcb)]);return;}for(const _0x1e06a6 of _0x427718){const _0x4a5950=_0x1e06a6[_0x4e2111(0x99)]===_0x16812f['oVqwE']?'✅':_0x16812f['iDbAe'](_0x1e06a6[_0x4e2111(0x99)],_0x4e2111(0x11e))?'🔄':'▶️';console[_0x4e2111(0x115)](_0x4a5950+'\x20Session\x20'+_0x1e06a6[_0x4e2111(0xd1)]+'\x20('+_0x1e06a6['id']+')'),console[_0x4e2111(0x115)](_0x4e2111(0x10b)+_0x1e06a6[_0x4e2111(0x99)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x1e06a6['createdAt'])['toLocaleString']()),_0x1e06a6[_0x4e2111(0x155)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x1e06a6['completedAt'])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x9239af,_0x2d5896){const _0x3483a3=_0x23f300,_0xb1f393={'NDuxL':function(_0x2c9877){return _0x2c9877();},'knTGR':function(_0x2c8188,_0x597126,_0x204270){return _0x2c8188(_0x597126,_0x204270);},'uuWtm':function(_0x13598f,_0x2957bf){return _0x13598f(_0x2957bf);},'dsXcK':function(_0xe6f2e1,_0x2bd4f8,_0x40ddec){return _0xe6f2e1(_0x2bd4f8,_0x40ddec);}},_0x386848=_0x2d5896||await _0xb1f393['NDuxL'](getActiveFeatureId);if(!_0x386848)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 _0x44a96d=await getFeature(_0x386848);if(_0x44a96d['latestReview']&&!_0x44a96d[_0x3483a3(0x151)]['submittedAt'])throw new Error(_0x3483a3(0x12d)+_0x44a96d[_0x3483a3(0x138)]);await _0xb1f393[_0x3483a3(0xba)](createChecklistItem,_0x386848,_0x9239af);const _0x3be6c1=await _0xb1f393['uuWtm'](getFeature,_0x386848);console[_0x3483a3(0x115)](_0x3483a3(0xf8)),_0xb1f393[_0x3483a3(0x111)](displayFeature,_0x3be6c1,_0x3be6c1[_0x3483a3(0x12a)]);}export async function featureEditScenario(_0x2b84bb,_0x38e9cd){const _0x3115e1=_0x23f300,_0x3c0d01={'eAAEY':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','EcFpn':function(_0x1af208,_0x53fda7){return _0x1af208===_0x53fda7;},'OikYs':_0x3115e1(0x9b),'iGdci':_0x3115e1(0xaf),'Bxwin':function(_0x388e8e,_0x187f19){return _0x388e8e<_0x187f19;},'bcHVy':function(_0xacfd37,_0x496aa7){return _0xacfd37+_0x496aa7;},'OMhOw':function(_0x1eb676,_0x2f9aa5){return _0x1eb676-_0x2f9aa5;},'RrbaG':function(_0x28f9d0,_0x242410){return _0x28f9d0>=_0x242410;},'weBGc':function(_0x5d6cf0,_0x1ebfe9,_0x1f9394){return _0x5d6cf0(_0x1ebfe9,_0x1f9394);}},_0x169495=_0x38e9cd['id']||await getActiveFeatureId();!_0x169495&&(console[_0x3115e1(0x122)](_0x3c0d01[_0x3115e1(0xa0)]),console[_0x3115e1(0x122)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x3115e1(0xaa)](0x1));const _0x27848c=await getFeature(_0x169495);_0x27848c[_0x3115e1(0x151)]&&!_0x27848c[_0x3115e1(0x151)]['submittedAt']&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console['error']('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x27848c[_0x3115e1(0x138)]),process['exit'](0x1));const _0x1e6a5c=_0x27848c[_0x3115e1(0x12a)]||[];_0x3c0d01['EcFpn'](_0x1e6a5c['length'],0x0)&&(console[_0x3115e1(0x122)](_0x3c0d01['OikYs']),process['exit'](0x1));if(_0x3c0d01['EcFpn'](_0x38e9cd['scenario'],undefined)){console['error'](_0x3c0d01['iGdci']),console[_0x3115e1(0x115)](_0x3115e1(0xe6));for(let _0x42b2a2=0x0;_0x3c0d01[_0x3115e1(0x149)](_0x42b2a2,_0x1e6a5c['length']);_0x42b2a2++){console[_0x3115e1(0x115)]('\x20\x20'+_0x3c0d01['bcHVy'](_0x42b2a2,0x1)+'.\x20'+_0x1e6a5c[_0x42b2a2][_0x3115e1(0x11f)]);}process['exit'](0x1);}const _0x260433=_0x3c0d01['OMhOw'](_0x38e9cd[_0x3115e1(0xf1)],0x1);if(_0x3c0d01[_0x3115e1(0x149)](_0x260433,0x0)||_0x3c0d01[_0x3115e1(0x129)](_0x260433,_0x1e6a5c['length'])){console[_0x3115e1(0x122)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x38e9cd['scenario']+_0x3115e1(0x144)+_0x1e6a5c['length']+_0x3115e1(0x13b)),console['log'](_0x3115e1(0xe6));for(let _0x7ec227=0x0;_0x7ec227<_0x1e6a5c['length'];_0x7ec227++){console[_0x3115e1(0x115)]('\x20\x20'+_0x3c0d01['bcHVy'](_0x7ec227,0x1)+'.\x20'+_0x1e6a5c[_0x7ec227]['description']);}process['exit'](0x1);}const _0x503639=_0x1e6a5c[_0x260433];await updateChecklistItem(_0x169495,_0x503639['id'],{'description':_0x2b84bb});const _0x223845=await getFeature(_0x169495);console[_0x3115e1(0x115)]('\x0a✅\x20Scenario\x20updated'),_0x3c0d01['weBGc'](displayFeature,_0x223845,_0x223845['checklistItems']);}async function downloadFeedbackImage(_0x6df001,_0x47d23e){const _0x23a627=_0x23f300,_0x274d1b={'XuUbd':function(_0x3f9ecd,_0x213b41,_0x1d3181){return _0x3f9ecd(_0x213b41,_0x1d3181);},'QAiur':_0x23a627(0x9a),'ZQYjl':function(_0x142bbe,_0x4b4e5e,_0x1a7760){return _0x142bbe(_0x4b4e5e,_0x1a7760);}};try{const _0xa2b166=_0x274d1b['XuUbd'](join,getRangerDir(),_0x274d1b[_0x23a627(0x13d)]);await mkdir(_0xa2b166,{'recursive':!![]});const _0x343275=join(_0xa2b166,_0x23a627(0xe8)+_0x47d23e+'.png'),_0x5098d6=await fetch(_0x6df001);if(!_0x5098d6['ok'])return null;const _0x317f31=Buffer[_0x23a627(0x112)](await _0x5098d6[_0x23a627(0x140)]());return await _0x274d1b['ZQYjl'](writeFile,_0x343275,_0x317f31),_0x343275;}catch{return null;}}export async function featureGetReview(_0x2286f9){const _0x32fe87=_0x23f300,_0x4ea732={'WvAox':function(_0x1d0fb2){return _0x1d0fb2();},'gqTWK':_0x32fe87(0x135),'Uenge':function(_0x517aba,_0x58e97e){return _0x517aba(_0x58e97e);},'TxvNP':function(_0x228a63,_0x5b07a8){return _0x228a63===_0x5b07a8;},'SFncG':function(_0x5bcab8,_0x5739d2,_0x83d069){return _0x5bcab8(_0x5739d2,_0x83d069);},'oLmyz':function(_0x2f72c1,_0x45b8cb){return _0x2f72c1>_0x45b8cb;},'WIINg':'numeric','KxvHB':'Unknown','uzBUd':'\x20>\x20'},_0x10eb6f=_0x2286f9||await _0x4ea732['WvAox'](getActiveFeatureId);if(!_0x10eb6f)throw new Error(_0x4ea732['gqTWK']);const _0x1fc065=await getFeature(_0x10eb6f),{items:_0x1ef99e}=await _0x4ea732[_0x32fe87(0x10f)](getActionItems,_0x10eb6f);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x1fc065[_0x32fe87(0x148)]+'\x20('+_0x1fc065['id']+')\x0a');if(_0x4ea732[_0x32fe87(0xa8)](_0x1ef99e['length'],0x0)){console['log']('No\x20scenarios\x20found.');return;}for(let _0x5af75f=0x0;_0x5af75f<_0x1ef99e['length'];_0x5af75f++){const _0x2fd657=_0x1ef99e[_0x5af75f],_0x1e9cf4=_0x2fd657['version']>0x1?_0x32fe87(0x13a)+_0x2fd657[_0x32fe87(0xa4)]+')':'',_0x40c809=await _0x4ea732[_0x32fe87(0x142)](getItemFeedback,_0x10eb6f,_0x2fd657['id']);if(_0x4ea732['oLmyz'](_0x40c809['unaddressedComments']['length'],0x0)){console[_0x32fe87(0x115)](_0x32fe87(0xab)+(_0x5af75f+0x1)+':\x20\x22'+_0x2fd657['description']+'\x22'+_0x1e9cf4+'\x20—\x20'+_0x40c809[_0x32fe87(0xf5)][_0x32fe87(0x150)]+'\x20unaddressed\x20comment(s)');for(const _0x5cbaad of _0x40c809[_0x32fe87(0xf5)]){const _0x55dfbe=new Date(_0x5cbaad['createdAt'])[_0x32fe87(0x146)](_0x32fe87(0x101),{'month':'short','day':_0x4ea732['WIINg']}),_0x931fe5=_0x5cbaad['authorName']||_0x5cbaad[_0x32fe87(0x143)]||_0x4ea732[_0x32fe87(0xec)];console[_0x32fe87(0x115)]('\x20\x20💬\x20'+_0x931fe5+'\x20('+_0x55dfbe+'):\x20\x22'+_0x5cbaad[_0x32fe87(0x110)]+'\x22');if(_0x5cbaad[_0x32fe87(0x97)]){const _0x599dd1=await downloadFeedbackImage(_0x5cbaad[_0x32fe87(0x97)],_0x5cbaad['id']);_0x599dd1&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x599dd1);}if(_0x5cbaad[_0x32fe87(0x14a)]){const _0x20f017=_0x5cbaad['domRef']['selector'][_0x32fe87(0x158)](_0x4ea732[_0x32fe87(0x147)])['pop']()?.[_0x32fe87(0x158)](':')[0x0]||_0x32fe87(0x116),_0x91a2f4=_0x5cbaad[_0x32fe87(0x14a)][_0x32fe87(0x95)]?'\x20\x22'+_0x5cbaad['domRef'][_0x32fe87(0x95)]['slice'](0x0,0x3c)+'\x22':'';console[_0x32fe87(0x115)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x20f017+'>'+_0x91a2f4),console['log'](_0x32fe87(0x103)+_0x5cbaad['domRef']['selector']);}else{if(_0x5cbaad['spatial']){const _0x18549e=_0x5cbaad['spatial'][_0x32fe87(0xbd)];_0x4ea732['TxvNP'](_0x5cbaad[_0x32fe87(0x9c)][_0x32fe87(0xb2)],_0x32fe87(0x131))&&_0x18549e[_0x32fe87(0x150)]>=0x2?console['log'](_0x32fe87(0xcc)+_0x18549e[0x0]['toFixed'](0x2)+',\x20'+_0x18549e[0x1][_0x32fe87(0xb8)](0x2)+')'):console['log'](_0x32fe87(0xe2)+_0x5cbaad[_0x32fe87(0x9c)][_0x32fe87(0xb2)]+'\x20at\x20['+_0x18549e[_0x32fe87(0x12b)](_0x270db5=>_0x270db5[_0x32fe87(0xb8)](0x2))['join'](',\x20')+']');}}}if(_0x40c809[_0x32fe87(0xb0)]){console['log'](_0x32fe87(0x10d));for(const _0x5b1f2c of _0x40c809['canonicalFlow']['split']('\x0a')){console['log'](_0x32fe87(0xf7)+_0x5b1f2c);}}}else console['log']('Scenario\x20'+(_0x5af75f+0x1)+':\x20\x22'+_0x2fd657[_0x32fe87(0x11f)]+'\x22'+_0x1e9cf4+_0x32fe87(0xc7)),console['log'](_0x32fe87(0x141));console[_0x32fe87(0x115)]('');}}export async function featureDelete(_0x316b62){const _0x52bc77=_0x23f300,_0x11b20c={'Ikvts':_0x52bc77(0x135),'WGKiA':function(_0x554d4c,_0x24acce){return _0x554d4c(_0x24acce);},'hDTqf':function(_0x11e56d,_0x11a61a){return _0x11e56d(_0x11a61a);},'tbLny':function(_0xd20648,_0xd1d60b){return _0xd20648+_0xd1d60b;}},_0x5f0378=_0x316b62||await getActiveFeatureId();if(!_0x5f0378)throw new Error(_0x11b20c['Ikvts']);const _0x2e94e2=await _0x11b20c[_0x52bc77(0xf9)](getFeature,_0x5f0378);await _0x11b20c[_0x52bc77(0x157)](softDeleteFeature,_0x5f0378),console[_0x52bc77(0x115)](_0x52bc77(0x130)+_0x2e94e2['name']+'\x20('+_0x5f0378+')'),console[_0x52bc77(0x115)](_0x11b20c['tbLny'](_0x52bc77(0xf0),_0x5f0378));}export async function featureRestore(_0x285cb3){const _0x75b5b9=_0x23f300,_0x235970={'gQQlf':function(_0x4724a9,_0x52374d){return _0x4724a9(_0x52374d);},'vLMBX':function(_0x3a30f6,_0x1fe92e,_0x543406){return _0x3a30f6(_0x1fe92e,_0x543406);}};await restoreFeature(_0x285cb3);const _0x244894=await _0x235970['gQQlf'](getFeature,_0x285cb3);console['log'](_0x75b5b9(0xf4)+_0x244894[_0x75b5b9(0x148)]+'\x20('+_0x285cb3+')'),_0x235970[_0x75b5b9(0x128)](displayFeature,_0x244894,_0x244894[_0x75b5b9(0x12a)]);}
@@ -1 +1 @@
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
+ function _0x4ee5(_0x41a145,_0x5013c5){_0x41a145=_0x41a145-0x10d;const _0x315196=_0x3151();let _0x4ee5b4=_0x315196[_0x41a145];return _0x4ee5b4;}(function(_0x46d8a7,_0x20ae97){const _0x50a343=_0x4ee5,_0x537014=_0x46d8a7();while(!![]){try{const _0x43dcdb=-parseInt(_0x50a343(0x118))/0x1+-parseInt(_0x50a343(0x119))/0x2*(-parseInt(_0x50a343(0x111))/0x3)+parseInt(_0x50a343(0x10f))/0x4*(-parseInt(_0x50a343(0x116))/0x5)+-parseInt(_0x50a343(0x114))/0x6*(parseInt(_0x50a343(0x10e))/0x7)+parseInt(_0x50a343(0x10d))/0x8+parseInt(_0x50a343(0x110))/0x9+parseInt(_0x50a343(0x115))/0xa;if(_0x43dcdb===_0x20ae97)break;else _0x537014['push'](_0x537014['shift']());}catch(_0x6c05a3){_0x537014['push'](_0x537014['shift']());}}}(_0x3151,0xecae6));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x3151(){const _0x34d1f1=['apcEm','error','4194444ZKhqKY','40603070zwLjou','28850EFFUhP','keys','1750923WXKcNp','2anqHjk','Unknown\x20hook:\x20','Valid\x20hooks:\x20','5254936WwdyJf','14azpaFX','668oJSfAQ','2468070NTqoXZ','272109NfwhrJ'];_0x3151=function(){return _0x34d1f1;};return _0x3151();}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(_0x47c998,_0x599cf0){const _0x4bb08c=_0x4ee5,_0x3bae6d={'apcEm':function(_0x3873d6,_0x209b8d){return _0x3873d6(_0x209b8d);}},_0x46d445=HOOKS[_0x47c998];if(!_0x46d445){const _0x1e9f77=Object[_0x4bb08c(0x117)](HOOKS)['join'](',\x20');console['error'](_0x4bb08c(0x11a)+_0x47c998),console[_0x4bb08c(0x113)](_0x4bb08c(0x11b)+_0x1e9f77),process['exit'](0x1);}await _0x3bae6d[_0x4bb08c(0x112)](_0x46d445,_0x599cf0);}
@@ -1 +1 @@
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
+ const _0x7f66a2=_0x5781;(function(_0x17702c,_0x501684){const _0x519203=_0x5781,_0x11cca7=_0x17702c();while(!![]){try{const _0x4d4dde=parseInt(_0x519203(0x105))/0x1+-parseInt(_0x519203(0x110))/0x2*(parseInt(_0x519203(0x10c))/0x3)+parseInt(_0x519203(0x10d))/0x4*(parseInt(_0x519203(0x10b))/0x5)+-parseInt(_0x519203(0x10a))/0x6+-parseInt(_0x519203(0x111))/0x7*(-parseInt(_0x519203(0x106))/0x8)+-parseInt(_0x519203(0x109))/0x9*(parseInt(_0x519203(0x10f))/0xa)+-parseInt(_0x519203(0x10e))/0xb*(-parseInt(_0x519203(0x108))/0xc);if(_0x4d4dde===_0x501684)break;else _0x11cca7['push'](_0x11cca7['shift']());}catch(_0x1873a6){_0x11cca7['push'](_0x11cca7['shift']());}}}(_0x23d3,0xc0edc));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x7f66a2(0x112);export async function autoPrompt(){const _0x1b27f9=_0x7f66a2,_0x22f61e={'eOQEG':function(_0x13842d){return _0x13842d();}},_0x12f3f2=await _0x22f61e['eOQEG'](readHookInput),_0x5f1e63=_0x12f3f2?.['session_id'];if(!_0x5f1e63)return;if(isSessionEnabled(_0x5f1e63)||hasSessionBeenPrompted(_0x5f1e63))return;markSessionPrompted(_0x5f1e63),console[_0x1b27f9(0x107)](AUTO_PROMPT_TEXT);}function _0x5781(_0x2bfd2c,_0x3ed0f7){_0x2bfd2c=_0x2bfd2c-0x105;const _0x23d3dd=_0x23d3();let _0x578102=_0x23d3dd[_0x2bfd2c];return _0x578102;}function _0x23d3(){const _0x10db13=['88IBMGkL','1208760JDeDrR','1139234PtmEYm','28AHgmVC','\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.','1040545dFOAcD','2675224lPHhEP','log','851868cabfuA','27IJJMbD','7655442XuhSbZ','35QlWfkZ','6OgCiYm','355392uCzDox'];_0x23d3=function(){return _0x10db13;};return _0x23d3();}
@@ -1 +1 @@
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
+ (function(_0x15aaad,_0x14f1db){const _0x26affb=_0x388d,_0x56af56=_0x15aaad();while(!![]){try{const _0x315c03=parseInt(_0x26affb(0x140))/0x1*(-parseInt(_0x26affb(0x148))/0x2)+-parseInt(_0x26affb(0x146))/0x3+parseInt(_0x26affb(0x14d))/0x4+-parseInt(_0x26affb(0x13c))/0x5*(-parseInt(_0x26affb(0x145))/0x6)+parseInt(_0x26affb(0x14a))/0x7+-parseInt(_0x26affb(0x149))/0x8+-parseInt(_0x26affb(0x139))/0x9*(-parseInt(_0x26affb(0x13e))/0xa);if(_0x315c03===_0x14f1db)break;else _0x56af56['push'](_0x56af56['shift']());}catch(_0x1a4db4){_0x56af56['push'](_0x56af56['shift']());}}}(_0x19aa,0xaf656));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x19aa(){const _0xbe848f=['master','117NqhiUf','KQItt','CLAUDE_SESSION_ID','5528605gUxeKe','yEJjJ','814010FJdTnQ','\x20and\x20branch\x20\x27','30994HidLvb','main','exit','error','UbVHm','6ttFoBP','2536308YddIjp','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','88qRQsZt','591344ZBNrAw','539420VscdjB','env','AcfFK','3042072pYcefp'];_0x19aa=function(){return _0xbe848f;};return _0x19aa();}function _0x388d(_0x44d5bd,_0x26d4ef){_0x44d5bd=_0x44d5bd-0x139;const _0x19aa12=_0x19aa();let _0x388d91=_0x19aa12[_0x44d5bd];return _0x388d91;}export async function disable(_0x49d55b){const _0x28dcfc=_0x388d,_0x55d289={'WwWNM':'Error:\x20No\x20session\x20ID\x20available.','IhFfC':'Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','yEJjJ':function(_0x26a516){return _0x26a516();},'AcfFK':function(_0x19ff1a,_0x50f9c0){return _0x19ff1a!==_0x50f9c0;},'KQItt':function(_0x1d18f9,_0x5c3878){return _0x1d18f9(_0x5c3878);},'UbVHm':function(_0x3eebd0,_0x24bdc9){return _0x3eebd0!==_0x24bdc9;}},_0x1812a6=_0x49d55b||process[_0x28dcfc(0x14b)][_0x28dcfc(0x13b)]||'';!_0x1812a6&&(console[_0x28dcfc(0x143)](_0x55d289['WwWNM']),console['error'](_0x55d289['IhFfC']),process[_0x28dcfc(0x142)](0x1));disableSession(_0x1812a6);const _0x176b99=_0x55d289[_0x28dcfc(0x13d)](getCurrentBranch);_0x176b99&&_0x176b99!==_0x28dcfc(0x141)&&_0x55d289[_0x28dcfc(0x14c)](_0x176b99,'master')&&_0x55d289[_0x28dcfc(0x13a)](disableBranch,_0x176b99),printBlock(_0x28dcfc(0x147)+(_0x176b99&&_0x176b99!=='main'&&_0x55d289[_0x28dcfc(0x144)](_0x176b99,_0x28dcfc(0x14e))?_0x28dcfc(0x13f)+_0x176b99+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
@@ -1 +1 @@
1
- (function(_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
+ function _0x5618(_0x4b795d,_0x37a72f){_0x4b795d=_0x4b795d-0x194;const _0x17706c=_0x1770();let _0x561877=_0x17706c[_0x4b795d];return _0x561877;}(function(_0x1c609c,_0x5ce584){const _0x42375a=_0x5618,_0x43c379=_0x1c609c();while(!![]){try{const _0x3555b3=-parseInt(_0x42375a(0x197))/0x1+parseInt(_0x42375a(0x19a))/0x2+parseInt(_0x42375a(0x1a5))/0x3*(parseInt(_0x42375a(0x1a1))/0x4)+-parseInt(_0x42375a(0x1a2))/0x5+-parseInt(_0x42375a(0x19d))/0x6+-parseInt(_0x42375a(0x1a8))/0x7+parseInt(_0x42375a(0x1a6))/0x8;if(_0x3555b3===_0x5ce584)break;else _0x43c379['push'](_0x43c379['shift']());}catch(_0x4c33fc){_0x43c379['push'](_0x43c379['shift']());}}}(_0x1770,0x8f0de));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';function _0x1770(){const _0x425047=['ranger\x20setup','main','3868444RZGsHp','5619200vtkWjy','#\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`','VWINo','3oXEhbx','18690880VZEaBg','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','7348929qEEoey','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','error','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','\x0a\x0a**Branch\x20\x27','rWVKC','771401kykEcO','#\x20RANGER\x20ENABLED','CLAUDE_SESSION_ID','1962536WfIWRb','exit','aQIFX','4522206OCtaCq','JDstj'];_0x1770=function(){return _0x425047;};return _0x1770();}import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x408d8e){const _0x570131=_0x5618,_0x74dfdc={'eDLxQ':function(_0x115cf4,_0x1f28cb){return _0x115cf4(_0x1f28cb);},'rWVKC':function(_0x1f7da3){return _0x1f7da3();},'ZmTNh':'ranger\x20setup\x20--opencode','FQtOM':_0x570131(0x19f),'aQIFX':function(_0xb6e8cd){return _0xb6e8cd();},'VWINo':function(_0x59e122,_0x15f026){return _0x59e122!==_0x15f026;},'JDstj':'master','XqdwS':function(_0x13032a,_0x4b5b3f){return _0x13032a(_0x4b5b3f);}},_0x232117=_0x408d8e||process['env'][_0x570131(0x199)]||'';!_0x232117&&(console[_0x570131(0x1aa)]('Error:\x20No\x20session\x20ID\x20available.'),console[_0x570131(0x1aa)]('Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.'),process[_0x570131(0x19b)](0x1));const _0x48bb06=_0x74dfdc['eDLxQ'](Boolean,_0x408d8e),_0x2eb34a=await _0x74dfdc[_0x570131(0x196)](getToken);if(!_0x2eb34a){const _0x13655=_0x48bb06?_0x74dfdc['ZmTNh']:_0x74dfdc['FQtOM'],_0x482b5f=_0x48bb06?_0x570131(0x1a7):_0x570131(0x194);printBlock(_0x570131(0x1a3)+_0x13655+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x482b5f);return;}try{await _0x74dfdc[_0x570131(0x196)](update);}catch{}enableSession(_0x232117);const _0x3b82f2=_0x74dfdc[_0x570131(0x19c)](getCurrentBranch),_0x54597b=_0x3b82f2&&_0x74dfdc[_0x570131(0x1a4)](_0x3b82f2,_0x570131(0x1a0))&&_0x3b82f2!==_0x74dfdc[_0x570131(0x19e)]?_0x570131(0x195)+_0x3b82f2+_0x570131(0x1a9):'',_0x1b60e4=getRangerSkillContent();_0x74dfdc['XqdwS'](printBlock,_0x570131(0x198)+_0x54597b+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x1b60e4+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
@@ -1 +1 @@
1
- function _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
+ function _0x2304(){const _0x230c25=['1799870ZWFtdi','2075638GXWMPF','526648JiLeCQ','3Hirzte','29642688QLTwRi','1694440gdUhZx','30101ciaUVp','112ctgWGV','2185542QnbwgV'];_0x2304=function(){return _0x230c25;};return _0x2304();}(function(_0x33caa1,_0x551e7b){const _0x31e625=_0x59f9,_0xe6b868=_0x33caa1();while(!![]){try{const _0x2d4ded=-parseInt(_0x31e625(0xb2))/0x1+-parseInt(_0x31e625(0xb6))/0x2*(parseInt(_0x31e625(0xb8))/0x3)+-parseInt(_0x31e625(0xb1))/0x4+-parseInt(_0x31e625(0xb5))/0x5+parseInt(_0x31e625(0xb4))/0x6+parseInt(_0x31e625(0xb3))/0x7*(-parseInt(_0x31e625(0xb7))/0x8)+parseInt(_0x31e625(0xb0))/0x9;if(_0x2d4ded===_0x551e7b)break;else _0xe6b868['push'](_0xe6b868['shift']());}catch(_0x4a9bfa){_0xe6b868['push'](_0xe6b868['shift']());}}}(_0x2304,0xb7dc1));function _0x59f9(_0x2e0b61,_0x4f1e71){_0x2e0b61=_0x2e0b61-0xb0;const _0x230499=_0x2304();let _0x59f9d3=_0x230499[_0x2e0b61];return _0x59f9d3;}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x44e59a){const _0x5213ce=await getEnabledSessionId(_0x44e59a);if(!_0x5213ce)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_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
+ (function(_0x14df15,_0x508942){var _0x1d116e=_0x1df9,_0x21403c=_0x14df15();while(!![]){try{var _0x6edfe7=-parseInt(_0x1d116e(0x11e))/0x1*(-parseInt(_0x1d116e(0x116))/0x2)+-parseInt(_0x1d116e(0x11a))/0x3+parseInt(_0x1d116e(0x11b))/0x4*(-parseInt(_0x1d116e(0x11d))/0x5)+parseInt(_0x1d116e(0x11c))/0x6*(parseInt(_0x1d116e(0x117))/0x7)+-parseInt(_0x1d116e(0x119))/0x8*(-parseInt(_0x1d116e(0x11f))/0x9)+parseInt(_0x1d116e(0x115))/0xa+-parseInt(_0x1d116e(0x118))/0xb;if(_0x6edfe7===_0x508942)break;else _0x21403c['push'](_0x21403c['shift']());}catch(_0x3b0e49){_0x21403c['push'](_0x21403c['shift']());}}}(_0x223d,0xdc23c));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';function _0x223d(){var _0x297250=['4DbgeYI','360642MlreAY','1223385mfiFrB','3VfAVkN','45AYpKvQ','10755920UcuGxb','1055386nbQhae','35IYGZvK','11106634mmHvSl','669160THRSTG','3664104PBIXru'];_0x223d=function(){return _0x297250;};return _0x223d();}export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';function _0x1df9(_0x76a067,_0x596fcf){_0x76a067=_0x76a067-0x115;var _0x223d3b=_0x223d();var _0x1df914=_0x223d3b[_0x76a067];return _0x1df914;}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(_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
+ (function(_0x19bbf5,_0x2b591f){const _0x213c0a=_0x4e8d,_0x2b90a6=_0x19bbf5();while(!![]){try{const _0x530a00=parseInt(_0x213c0a(0xbc))/0x1+parseInt(_0x213c0a(0xb7))/0x2*(-parseInt(_0x213c0a(0xbe))/0x3)+parseInt(_0x213c0a(0xba))/0x4*(-parseInt(_0x213c0a(0xb8))/0x5)+-parseInt(_0x213c0a(0xb6))/0x6+-parseInt(_0x213c0a(0xc1))/0x7*(-parseInt(_0x213c0a(0xbb))/0x8)+parseInt(_0x213c0a(0xbf))/0x9*(-parseInt(_0x213c0a(0xc0))/0xa)+parseInt(_0x213c0a(0xb4))/0xb;if(_0x530a00===_0x2b591f)break;else _0x2b90a6['push'](_0x2b90a6['shift']());}catch(_0x35afe8){_0x2b90a6['push'](_0x2b90a6['shift']());}}}(_0xd829,0x4ca70));function _0x4e8d(_0x1eebc8,_0x4cf028){_0x1eebc8=_0x1eebc8-0xb3;const _0xd8298b=_0xd829();let _0x4e8dad=_0xd8298b[_0x1eebc8];return _0x4e8dad;}import{isSessionEnabled}from'../utils/sessionCache.js';function _0xd829(){const _0x4fdb3c=['CiJiU','parse','session_id','cUmeb','6207201OTbzOn','log','2330130wTVTex','374IIElEA','1640OYpTwn','YyVsG','6332gxcmFc','35504uNUtVk','124798HVWVEq','aocPR','486jkBTZT','2727SGmUHj','1640lDzXLB','966iGVDnx'];_0xd829=function(){return _0x4fdb3c;};return _0xd829();}export function printBlock(_0x40dbf1){const _0x3c7d44=_0x4e8d;console[_0x3c7d44(0xb5)](_0x40dbf1);}export async function readHookInput(){const _0x44626d=_0x4e8d;let _0x4d3c8a='';for await(const _0x4e38bd of process['stdin']){_0x4d3c8a+=_0x4e38bd;}try{return JSON[_0x44626d(0xc3)](_0x4d3c8a);}catch{return null;}}export async function getEnabledSessionId(_0x52b839){const _0x5eb180=_0x4e8d,_0x4dcf24={'CiJiU':function(_0x26cb3d,_0x19671c){return _0x26cb3d(_0x19671c);},'cUmeb':function(_0x18f1b8){return _0x18f1b8();}};if(_0x52b839)return _0x4dcf24[_0x5eb180(0xc2)](isSessionEnabled,_0x52b839)?_0x52b839:null;const _0x46c21e=await _0x4dcf24[_0x5eb180(0xb3)](readHookInput),_0x47838b=_0x46c21e?.[_0x5eb180(0xc4)];if(!_0x47838b||!_0x4dcf24['CiJiU'](isSessionEnabled,_0x47838b))return null;return _0x47838b;}export async function getEnabledHookContext(_0x381b0a){const _0x2f5d7c=_0x4e8d,_0x58c801={'YyVsG':function(_0x64c8f,_0x4001ac){return _0x64c8f(_0x4001ac);},'aocPR':function(_0x238de8){return _0x238de8();},'FmWTE':function(_0x29caab,_0x3630be){return _0x29caab(_0x3630be);}};if(_0x381b0a){if(!_0x58c801[_0x2f5d7c(0xb9)](isSessionEnabled,_0x381b0a))return null;return{'sessionId':_0x381b0a,'input':{'session_id':_0x381b0a}};}const _0x2a3c54=await _0x58c801[_0x2f5d7c(0xbd)](readHookInput),_0x5b622b=_0x2a3c54?.['session_id'];if(!_0x5b622b||!_0x58c801['FmWTE'](isSessionEnabled,_0x5b622b))return null;return{'sessionId':_0x5b622b,'input':_0x2a3c54};}
@@ -1 +1 @@
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
+ function _0x5d7d(){const _0x12cdc8=['15688590QPAEvD','plan','1911042fKFciv','262245fLxwAD','92152EHcicZ','4leGCRP','1525419BJGwbi','sessionId','permission_mode','144yWejGe','775963QSIiHo','jOveR','18nHQgjl','input','3016161lPVmeq','===\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==='];_0x5d7d=function(){return _0x12cdc8;};return _0x5d7d();}(function(_0x3806b3,_0x5da07a){const _0x1e46dd=_0x2287,_0x5a92be=_0x3806b3();while(!![]){try{const _0x214374=-parseInt(_0x1e46dd(0x188))/0x1+-parseInt(_0x1e46dd(0x180))/0x2+parseInt(_0x1e46dd(0x18c))/0x3*(parseInt(_0x1e46dd(0x183))/0x4)+-parseInt(_0x1e46dd(0x181))/0x5*(-parseInt(_0x1e46dd(0x18a))/0x6)+-parseInt(_0x1e46dd(0x184))/0x7+-parseInt(_0x1e46dd(0x182))/0x8*(parseInt(_0x1e46dd(0x187))/0x9)+parseInt(_0x1e46dd(0x18e))/0xa;if(_0x214374===_0x5da07a)break;else _0x5a92be['push'](_0x5a92be['shift']());}catch(_0x5ee6c9){_0x5a92be['push'](_0x5a92be['shift']());}}}(_0x5d7d,0x91f80));import{printBlock,getEnabledHookContext}from'./output.js';function _0x2287(_0x3fce0b,_0x3d0b3a){_0x3fce0b=_0x3fce0b-0x180;const _0x5d7d51=_0x5d7d();let _0x22873e=_0x5d7d51[_0x3fce0b];return _0x22873e;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x49f754){const _0x5e28b9=_0x2287,_0x51b264={'EZScU':function(_0xbaec9a,_0xeed096){return _0xbaec9a!==_0xeed096;},'guTuT':_0x5e28b9(0x18f),'jOveR':function(_0x47c4f9,_0x74d320){return _0x47c4f9(_0x74d320);}},_0x53b1dd=await getEnabledHookContext(_0x49f754);if(!_0x53b1dd)return;if(_0x51b264['EZScU'](_0x53b1dd[_0x5e28b9(0x18b)][_0x5e28b9(0x186)],_0x51b264['guTuT']))return;if(!_0x51b264[_0x5e28b9(0x189)](shouldShowPlanReminder,_0x53b1dd[_0x5e28b9(0x185)]))return;printBlock(_0x5e28b9(0x18d));}
@@ -1 +1 @@
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
+ (function(_0x1c12e9,_0x2ab230){const _0x4ba1b4=_0x1e57,_0x54dcca=_0x1c12e9();while(!![]){try{const _0x2cd651=parseInt(_0x4ba1b4(0xa0))/0x1+-parseInt(_0x4ba1b4(0x9a))/0x2+-parseInt(_0x4ba1b4(0x99))/0x3+-parseInt(_0x4ba1b4(0xa1))/0x4+parseInt(_0x4ba1b4(0x9f))/0x5+parseInt(_0x4ba1b4(0x9d))/0x6*(parseInt(_0x4ba1b4(0x9e))/0x7)+parseInt(_0x4ba1b4(0x98))/0x8;if(_0x2cd651===_0x2ab230)break;else _0x54dcca['push'](_0x54dcca['shift']());}catch(_0x44300f){_0x54dcca['push'](_0x54dcca['shift']());}}}(_0x5a81,0xac7a2));function _0x1e57(_0x55bd6f,_0x54c353){_0x55bd6f=_0x55bd6f-0x98;const _0x5a81d0=_0x5a81();let _0x1e5778=_0x5a81d0[_0x55bd6f];return _0x1e5778;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x5a81(){const _0x5751cf=['20706488tnCHHH','4170681jJgMeI','1567252PavDDK','wpTAW','===\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===','19806TXdLJq','7wrfKMc','926475SmRSat','345317lgkBbJ','967620jYFHIi'];_0x5a81=function(){return _0x5751cf;};return _0x5a81();}export async function planStart(_0x45d031){const _0x163a31=_0x1e57,_0x3e9664={'wpTAW':function(_0x301a90,_0x1fbcaa){return _0x301a90(_0x1fbcaa);}},_0x222dce=await _0x3e9664[_0x163a31(0x9b)](getEnabledSessionId,_0x45d031);if(!_0x222dce)return;printBlock(_0x163a31(0x9c));}
@@ -1 +1 @@
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
+ function _0xfab2(){const _0x36d347=['log','1805410HXDxbW','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.','4304HCJlUB','ljLTE','90363RkDFrY','4CzKqUm','4501981UUQVIo','18uQTOfG','696848oGkZRi','102UVVOay','9Kircef','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).','359610FseyEa','73980CFAtzn','stringify'];_0xfab2=function(){return _0x36d347;};return _0xfab2();}(function(_0x2819ec,_0x2eefc6){const _0x40ca6a=_0x3514,_0x57d895=_0x2819ec();while(!![]){try{const _0x36272d=-parseInt(_0x40ca6a(0x79))/0x1+parseInt(_0x40ca6a(0x7e))/0x2*(-parseInt(_0x40ca6a(0x73))/0x3)+-parseInt(_0x40ca6a(0x71))/0x4*(parseInt(_0x40ca6a(0x78))/0x5)+-parseInt(_0x40ca6a(0x75))/0x6*(parseInt(_0x40ca6a(0x70))/0x7)+-parseInt(_0x40ca6a(0x74))/0x8+parseInt(_0x40ca6a(0x76))/0x9*(parseInt(_0x40ca6a(0x7c))/0xa)+parseInt(_0x40ca6a(0x72))/0xb;if(_0x36272d===_0x2eefc6)break;else _0x57d895['push'](_0x57d895['shift']());}catch(_0x5664b6){_0x57d895['push'](_0x57d895['shift']());}}}(_0xfab2,0x1e617));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x3514(_0x2687e7,_0x4e25f7){_0x2687e7=_0x2687e7-0x6f;const _0xfab21c=_0xfab2();let _0x35140b=_0xfab21c[_0x2687e7];return _0x35140b;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x455300){const _0x4e3a0c=_0x3514,_0x7af7f9={'ljLTE':function(_0x148d6c,_0x1ea805){return _0x148d6c(_0x1ea805);}},_0x47f32a=await getEnabledSessionId(_0x455300);if(!_0x47f32a)return;updateBranchTracking(_0x47f32a);const _0x5471e1=await getToken();if(!_0x5471e1)return;const _0x286e32=_0x7af7f9[_0x4e3a0c(0x6f)](getSessionEntry,_0x47f32a);if(_0x286e32){const _0x528a7f={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x4e3a0c(0x77)}};console[_0x4e3a0c(0x7b)](JSON[_0x4e3a0c(0x7a)](_0x528a7f));return;}const _0x215a7b={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x4e3a0c(0x7d)}};console['log'](JSON[_0x4e3a0c(0x7a)](_0x215a7b));}
@@ -1 +1 @@
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
+ (function(_0x2ec1a7,_0x1ec919){const _0x4d0806=_0x190c,_0x4bcf19=_0x2ec1a7();while(!![]){try{const _0x710039=parseInt(_0x4d0806(0x7c))/0x1+parseInt(_0x4d0806(0x7e))/0x2+-parseInt(_0x4d0806(0x84))/0x3+parseInt(_0x4d0806(0x82))/0x4*(-parseInt(_0x4d0806(0x80))/0x5)+parseInt(_0x4d0806(0x81))/0x6*(parseInt(_0x4d0806(0x85))/0x7)+-parseInt(_0x4d0806(0x7b))/0x8*(-parseInt(_0x4d0806(0x7d))/0x9)+-parseInt(_0x4d0806(0x7f))/0xa;if(_0x710039===_0x1ec919)break;else _0x4bcf19['push'](_0x4bcf19['shift']());}catch(_0x5396de){_0x4bcf19['push'](_0x4bcf19['shift']());}}}(_0x1c6a,0x721d5));import{getToken}from'../utils/keychain.js';function _0x1c6a(){const _0xc1a2e6=['===\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`.','2145060LOAROH','3465217HwhHMO','EdOpm','16QfmpdG','842804WEBbpy','3534093KwdmKG','1617794YceiWc','11493390PDAJHM','110kekejH','6iZWEos','109148tzblyM'];_0x1c6a=function(){return _0xc1a2e6;};return _0x1c6a();}function _0x190c(_0x472809,_0x20c900){_0x472809=_0x472809-0x7a;const _0x1c6a6b=_0x1c6a();let _0x190ce5=_0x1c6a6b[_0x472809];return _0x190ce5;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x15d592){const _0x2d5e96=_0x190c,_0xf98143={'lNvyO':function(_0x5704c3){return _0x5704c3();},'EdOpm':function(_0x1e8fca,_0x3bf18d){return _0x1e8fca(_0x3bf18d);}},_0x1558d4=await getEnabledSessionId(_0x15d592);if(!_0x1558d4)return;try{const _0x2f7449=await _0xf98143['lNvyO'](getToken);if(!_0x2f7449)return;_0xf98143[_0x2d5e96(0x7a)](printBlock,_0x2d5e96(0x83));}catch{}}
@@ -1 +1 @@
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
+ (function(_0x5b4d8f,_0x52a747){const _0x3159c3=_0x1b8e,_0x424052=_0x5b4d8f();while(!![]){try{const _0xaac2d7=-parseInt(_0x3159c3(0x1e7))/0x1+-parseInt(_0x3159c3(0x1e6))/0x2+-parseInt(_0x3159c3(0x1ec))/0x3+-parseInt(_0x3159c3(0x1eb))/0x4*(-parseInt(_0x3159c3(0x1ea))/0x5)+-parseInt(_0x3159c3(0x1e8))/0x6+parseInt(_0x3159c3(0x1ef))/0x7+parseInt(_0x3159c3(0x1e9))/0x8;if(_0xaac2d7===_0x52a747)break;else _0x424052['push'](_0x424052['shift']());}catch(_0x14ee15){_0x424052['push'](_0x424052['shift']());}}}(_0x5f45,0x65653));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x5f45(){const _0x142fae=['5100312yKPZRP','session_id','1641202zVHUkQ','743468yDERBa','2355114wkPIYc','11161584bPkooN','1737265ZVHHWc','8RXiuRF','1340451jiDeYN','YVumu','sYPpX'];_0x5f45=function(){return _0x142fae;};return _0x5f45();}function _0x1b8e(_0x3a9098,_0x10d974){_0x3a9098=_0x3a9098-0x1e6;const _0x5f45ef=_0x5f45();let _0x1b8ecc=_0x5f45ef[_0x3a9098];return _0x1b8ecc;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x344cfa){const _0x2c7a1b=_0x1b8e,_0xe4ac66={'YVumu':function(_0x195d4a){return _0x195d4a();},'sYPpX':function(_0x4dbb26,_0x5344af){return _0x4dbb26===_0x5344af;}};let _0x1bfe06=_0x344cfa,_0x59b783;if(!_0x344cfa){const _0x5cf099=await _0xe4ac66[_0x2c7a1b(0x1ed)](readHookInput);_0x1bfe06=_0x5cf099?.[_0x2c7a1b(0x1f0)],_0x59b783=_0x5cf099?.['reason'];}if(!_0x1bfe06)return;_0xe4ac66[_0x2c7a1b(0x1ee)](_0x59b783,'clear')&&recordEnabledSessionCleared(_0x1bfe06);}
@@ -1 +1 @@
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();}
1
+ const _0x5e27e5=_0x1e41;(function(_0x28a09a,_0x22e662){const _0x17d40b=_0x1e41,_0x5f15f2=_0x28a09a();while(!![]){try{const _0x309e61=parseInt(_0x17d40b(0x17b))/0x1+-parseInt(_0x17d40b(0x17d))/0x2+parseInt(_0x17d40b(0x174))/0x3+-parseInt(_0x17d40b(0x182))/0x4*(-parseInt(_0x17d40b(0x178))/0x5)+parseInt(_0x17d40b(0x188))/0x6*(parseInt(_0x17d40b(0x177))/0x7)+-parseInt(_0x17d40b(0x187))/0x8+-parseInt(_0x17d40b(0x176))/0x9*(parseInt(_0x17d40b(0x185))/0xa);if(_0x309e61===_0x22e662)break;else _0x5f15f2['push'](_0x5f15f2['shift']());}catch(_0x263a28){_0x5f15f2['push'](_0x5f15f2['shift']());}}}(_0x4bd6,0xe9caf));function _0x1e41(_0x2ff981,_0x24bc28){_0x2ff981=_0x2ff981-0x174;const _0x4bd6b4=_0x4bd6();let _0x1e41f4=_0x4bd6b4[_0x2ff981];return _0x1e41f4;}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';function _0x4bd6(){const _0x1e772b=['hook:session-start','session_id','472EAigcO','=================================================================\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=================================================================','OySWy','882110zFgpuf','log','11695920YeJxvD','26130evheBn','CLAUDE_ENV_FILE','trackCommandStart','5632194DnCJKV','YcKIE','252oaNUpz','2506MOxXdi','80235stnQRu','AkNRe','hfkAi','596690xfTpWl','master','2074422dYoqEP','QQhDN','stdin'];_0x4bd6=function(){return _0x1e772b;};return _0x4bd6();}const RANGER_AUTO_ENABLED_PROMPT=_0x5e27e5(0x183);export async function sessionStart(_0x1defc3){const _0x3902bb=_0x5e27e5,_0x32fbb4={'AkNRe':'source','OySWy':function(_0x309f07,_0x6a05b0){return _0x309f07&&_0x6a05b0;},'BfvAo':function(_0x4870fa,_0x36f348,_0x307210){return _0x4870fa(_0x36f348,_0x307210);},'QQhDN':function(_0x3d1e85,_0x1d4228){return _0x3d1e85(_0x1d4228);},'hfkAi':function(_0x25be0b,_0x52a0ab){return _0x25be0b(_0x52a0ab);},'LhqHT':function(_0x2d25bc,_0x40e050){return _0x2d25bc(_0x40e050);},'hTaHh':function(_0xc57bb4,_0x4df574){return _0xc57bb4!==_0x4df574;},'YcKIE':function(_0x296480,_0x4eacab){return _0x296480!==_0x4eacab;}};let _0x51f7f7=_0x1defc3||'',_0x2f7874;if(!_0x1defc3){let _0x20acb6='';for await(const _0x4944e9 of process[_0x3902bb(0x17f)]){_0x20acb6+=_0x4944e9;}try{const _0xe70dc0=JSON['parse'](_0x20acb6);_0x51f7f7=_0xe70dc0[_0x3902bb(0x181)]||'',_0x2f7874=_0xe70dc0[_0x32fbb4[_0x3902bb(0x179)]];}catch{}const _0x4c004f=process['env'][_0x3902bb(0x189)];if(_0x32fbb4[_0x3902bb(0x184)](_0x4c004f,_0x51f7f7))try{await _0x32fbb4['BfvAo'](appendFile,_0x4c004f,'export\x20CLAUDE_SESSION_ID=\x22'+_0x51f7f7+'\x22\x0a');}catch{}}if(_0x51f7f7){shouldAutoEnableAfterClear(_0x2f7874)&&_0x32fbb4[_0x3902bb(0x17e)](autoEnableAfterClear,_0x51f7f7);_0x32fbb4[_0x3902bb(0x17e)](initBranchTracking,_0x51f7f7);const _0x34d508=_0x32fbb4[_0x3902bb(0x17a)](isSessionEnabled,_0x51f7f7);try{const _0x21ddf1=_0x32fbb4['LhqHT'](createTelemetryCollector,_0x3902bb(0x180));await _0x21ddf1[_0x3902bb(0x18a)]({'sessionId':_0x51f7f7,'hooksEnabled':_0x34d508}),await _0x21ddf1['trackCommandEnd']('success');}catch{}if(_0x34d508){const _0x19b7d5=getCurrentBranch(),_0x1518ee=_0x19b7d5&&_0x32fbb4['hTaHh'](_0x19b7d5,'main')&&_0x32fbb4[_0x3902bb(0x175)](_0x19b7d5,_0x3902bb(0x17c))?'\x20(Branch:\x20'+_0x19b7d5+')':'',_0x30be4e={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x1518ee}};console[_0x3902bb(0x186)](JSON['stringify'](_0x30be4e));}}}