@ranger-testing/ranger-cli 2.5.2 โ†’ 2.5.3

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 (69) 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/mcpBootstrap.js +1 -1
  25. package/build/commands/setup/claude.js +1 -1
  26. package/build/commands/setup/opencode.js +1 -1
  27. package/build/commands/setupCi.js +1 -1
  28. package/build/commands/skillup.js +1 -1
  29. package/build/commands/start.js +1 -1
  30. package/build/commands/status.js +1 -1
  31. package/build/commands/update.js +1 -1
  32. package/build/commands/updateEnv.js +1 -1
  33. package/build/commands/useEnv.js +1 -1
  34. package/build/commands/utils/activeProfile.js +1 -1
  35. package/build/commands/utils/agentEnv.js +1 -1
  36. package/build/commands/utils/browserSessionsApi.js +1 -1
  37. package/build/commands/utils/claudeConfig.js +1 -1
  38. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  39. package/build/commands/utils/claudePlugin.js +1 -1
  40. package/build/commands/utils/crypto.js +1 -1
  41. package/build/commands/utils/desirePathLog.js +1 -1
  42. package/build/commands/utils/deviceAuth.js +1 -1
  43. package/build/commands/utils/environment.js +1 -1
  44. package/build/commands/utils/featureApi.js +1 -1
  45. package/build/commands/utils/fixWebmDuration.js +1 -1
  46. package/build/commands/utils/keychain.js +1 -1
  47. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  48. package/build/commands/utils/mcpImageBase64.js +1 -1
  49. package/build/commands/utils/model.js +1 -1
  50. package/build/commands/utils/opencodeConfig.js +1 -1
  51. package/build/commands/utils/playwrightCli.js +1 -1
  52. package/build/commands/utils/profileMessages.js +1 -1
  53. package/build/commands/utils/profileSetupBanner.js +1 -1
  54. package/build/commands/utils/rangerConfig.js +1 -1
  55. package/build/commands/utils/rangerRoot.js +1 -1
  56. package/build/commands/utils/retry.js +1 -1
  57. package/build/commands/utils/sessionCache.js +1 -1
  58. package/build/commands/utils/settings.js +1 -1
  59. package/build/commands/utils/skillContent.js +1 -1
  60. package/build/commands/utils/skills.js +1 -1
  61. package/build/commands/utils/stitchWebmFiles.js +1 -1
  62. package/build/commands/utils/telemetry.js +1 -1
  63. package/build/commands/utils/tokenRefresh.js +1 -1
  64. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  65. package/build/commands/utils/userApi.js +1 -1
  66. package/build/commands/utils/version.js +1 -1
  67. package/build/commands/verifyFeature.js +1 -1
  68. package/build/commands/verifyFeatureCli.js +1 -1
  69. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x453d8b=_0x5471;(function(_0x375d16,_0x4b0d04){const _0x541a70=_0x5471,_0x5a442f=_0x375d16();while(!![]){try{const _0xb4569d=-parseInt(_0x541a70(0x19b))/0x1*(parseInt(_0x541a70(0x195))/0x2)+-parseInt(_0x541a70(0x1b2))/0x3+-parseInt(_0x541a70(0x1a9))/0x4+parseInt(_0x541a70(0x1b6))/0x5+-parseInt(_0x541a70(0x1a5))/0x6+parseInt(_0x541a70(0x199))/0x7+parseInt(_0x541a70(0x1aa))/0x8;if(_0xb4569d===_0x4b0d04)break;else _0x5a442f['push'](_0x5a442f['shift']());}catch(_0x456711){_0x5a442f['push'](_0x5a442f['shift']());}}}(_0x57b8,0xd10f8));import{rm,readFile,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x5471(_0x38a3bf,_0x124410){_0x38a3bf=_0x38a3bf-0x195;const _0x57b8f1=_0x57b8();let _0x54710f=_0x57b8f1[_0x38a3bf];return _0x54710f;}import{spawn}from'child_process';import{deleteAllCredentials}from'./utils/keychain.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getCacheFile}from'./utils/sessionCache.js';import{getOpencodeConfigDir,getOpencodeSkillsDir}from'./utils/opencodeConfig.js';const skillsToRemove=[_0x453d8b(0x1c3),'feature-tracker',_0x453d8b(0x1ac),_0x453d8b(0x1a0)],opencodePluginName=_0x453d8b(0x1b3);function parseJsonc(_0x2bb34f){const _0x28b6e1=_0x453d8b,_0x5493b6=_0x2bb34f['replace'](/\/\*[\s\S]*?\*\//g,''),_0x457165=_0x5493b6['replace'](/^\s*\/\/.*$/gm,''),_0x37de67=_0x457165['replace'](/,\s*([}\]])/g,'$1');return JSON[_0x28b6e1(0x197)](_0x37de67);}function _0x57b8(){const _0x121a86=['pipe','uudZY','uninstall','e2e-test-recommender','QTvsE','log','EKCUO','\x0aโœ…\x20Cleanup\x20complete!\x0a','6286506omglyN','ueYYx','YqRur','WvMRr','6521204DJpkif','30947736CWEUuv','ddZEv','bug-bash','error','user','BfuOZ','oegsn','win32','3690591OkfZcJ','@ranger-testing/opencode-plugin','project','HwNsT','1699640AwOYry','ZLUNY','\x0a๐Ÿงน\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','platform','aiGCc','length','udcck','push','โœ“\x20Removed\x20OpenCode\x20plugin\x20(project\x20config)','uXmoP','trailhead','โœ“\x20Uninstalled\x20Claude\x20plugin\x20(user\x20scope)','โœ“\x20Removed\x20OpenCode\x20project\x20skill:\x20','ranger','plugin','opencode.json','MJgRu','69254zcyuaN','DnFWW','parse','sAyyL','8013775GLNkaF','--scope','17sJYnLg','filter'];_0x57b8=function(){return _0x121a86;};return _0x57b8();}async function removeOpencodePluginConfig(_0x1afb36){const _0x625c05=_0x453d8b,_0xcfdc2c={'NMfDe':'string','BQHvH':function(_0x41e0c6,_0x5a9706){return _0x41e0c6(_0x5a9706);},'TdaIH':function(_0x41eccc,_0x11a293,_0x493150){return _0x41eccc(_0x11a293,_0x493150);},'YqRur':'utf-8','ZLUNY':function(_0x3f3372,_0x217b46){return _0x3f3372===_0x217b46;},'sAyyL':function(_0x1e8108,_0x555f77,_0x443d68){return _0x1e8108(_0x555f77,_0x443d68);},'Uexsw':function(_0x307429,_0x31b134){return _0x307429+_0x31b134;}};if(!_0xcfdc2c['BQHvH'](existsSync,_0x1afb36))return![];let _0x538523;try{const _0x5f2074=await _0xcfdc2c['TdaIH'](readFile,_0x1afb36,_0xcfdc2c[_0x625c05(0x1a7)]);_0x538523=parseJsonc(_0x5f2074);}catch{return![];}const _0x4f0101=Array['isArray'](_0x538523['plugin'])?_0x538523['plugin']:[];if(_0xcfdc2c[_0x625c05(0x1b7)](_0x4f0101['length'],0x0))return![];const _0x1ff01e=_0x4f0101[_0x625c05(0x19c)](_0x14656d=>{if(typeof _0x14656d!==_0xcfdc2c['NMfDe'])return!![];return _0x14656d!==opencodePluginName;});if(_0x1ff01e[_0x625c05(0x1bb)]===_0x4f0101[_0x625c05(0x1bb)])return![];return _0x1ff01e['length']===0x0?delete _0x538523['plugin']:_0x538523['plugin']=_0x1ff01e,await _0xcfdc2c[_0x625c05(0x198)](writeFile,_0x1afb36,_0xcfdc2c['Uexsw'](JSON['stringify'](_0x538523,null,0x2),'\x0a')),!![];}async function uninstallClaudePlugin(_0x508ae3){const _0xc20161=_0x453d8b,_0x43e25e={'EZFbl':function(_0x7a7e12,_0x216e97){return _0x7a7e12(_0x216e97);},'TsYya':function(_0x48aaa6,_0x5e3876){return _0x48aaa6(_0x5e3876);},'uudZY':function(_0x4aebca,_0x4235d8){return _0x4aebca===_0x4235d8;},'HwNsT':_0xc20161(0x1c4),'YlLXa':_0xc20161(0x19f),'NJYuw':'ranger@trailhead','oJplM':_0xc20161(0x19a),'pFJLm':function(_0x23d65c,_0x1b6f06,_0x5167e5,_0x3411cb){return _0x23d65c(_0x1b6f06,_0x5167e5,_0x3411cb);},'ZNbEE':'pipe','BfuOZ':'close'};return new Promise(_0x297678=>{const _0x62cd2b=_0xc20161,_0x4234ab={'WvMRr':function(_0x33181a,_0x23257c){return _0x43e25e['TsYya'](_0x33181a,_0x23257c);},'AhqFY':function(_0x4d2d90,_0x4ed3d6){const _0xd4e086=_0x5471;return _0x43e25e[_0xd4e086(0x19e)](_0x4d2d90,_0x4ed3d6);}},_0x527e01=[_0x43e25e[_0x62cd2b(0x1b5)],_0x43e25e['YlLXa'],_0x43e25e['NJYuw']];_0x508ae3&&_0x527e01[_0x62cd2b(0x1bd)](_0x43e25e['oJplM'],_0x508ae3);const _0x3a170e=_0x43e25e['pFJLm'](spawn,'claude',_0x527e01,{'stdio':_0x43e25e['ZNbEE'],'shell':_0x43e25e[_0x62cd2b(0x19e)](process[_0x62cd2b(0x1b9)],_0x62cd2b(0x1b1))});_0x3a170e['on'](_0x43e25e[_0x62cd2b(0x1af)],_0x36ab2d=>{const _0x4753c2=_0x62cd2b;_0x4234ab[_0x4753c2(0x1a8)](_0x297678,_0x4234ab['AhqFY'](_0x36ab2d,0x0));}),_0x3a170e['on'](_0x62cd2b(0x1ad),()=>{_0x43e25e['EZFbl'](_0x297678,![]);});});}async function removeMarketplace(){const _0x19dedb=_0x453d8b,_0x2b7d3d={'zwmYw':function(_0x4a9790,_0x212136){return _0x4a9790(_0x212136);},'Htzqa':function(_0x34bab7,_0x3832fc){return _0x34bab7===_0x3832fc;},'ueYYx':function(_0x11e530,_0x403ee4,_0x4e7ff9,_0x21344b){return _0x11e530(_0x403ee4,_0x4e7ff9,_0x21344b);},'TFMNF':'claude','DnFWW':'marketplace','gaPLo':_0x19dedb(0x1c0)};return new Promise(_0x364b82=>{const _0x4eed0e=_0x19dedb,_0xe0cd79=_0x2b7d3d[_0x4eed0e(0x1a6)](spawn,_0x2b7d3d['TFMNF'],['plugin',_0x2b7d3d[_0x4eed0e(0x196)],'remove',_0x2b7d3d['gaPLo']],{'stdio':_0x4eed0e(0x19d),'shell':process['platform']==='win32'});_0xe0cd79['on']('close',_0x69325a=>{_0x2b7d3d['zwmYw'](_0x364b82,_0x2b7d3d['Htzqa'](_0x69325a,0x0));}),_0xe0cd79['on']('error',()=>{_0x364b82(![]);});});}export async function clean(){const _0x53e6b6=_0x453d8b,_0x208967={'uXmoP':_0x53e6b6(0x1b8),'oegsn':'โœ“\x20Removed\x20stored\x20credentials','YPaiG':function(_0x2118e2){return _0x2118e2();},'ddZEv':function(_0x5c8525,_0xe092a2){return _0x5c8525(_0xe092a2);},'udcck':function(_0x41fb75,_0x56eb20,_0x22925e){return _0x41fb75(_0x56eb20,_0x22925e);},'QTvsE':function(_0x36519d,_0x1cf402){return _0x36519d(_0x1cf402);},'IlTlQ':function(_0x4a38ec,_0x4aaadb,_0x454b35){return _0x4a38ec(_0x4aaadb,_0x454b35);},'UrsVO':_0x53e6b6(0x1c5),'EKCUO':function(_0x33cddb,_0x275a79){return _0x33cddb(_0x275a79);},'wlknp':_0x53e6b6(0x1be),'SqFEk':'โœ“\x20Removed\x20OpenCode\x20plugin\x20(user\x20config)','ydIIw':function(_0x23800f){return _0x23800f();},'aiGCc':'โœ“\x20Uninstalled\x20Claude\x20plugin\x20(project\x20scope)','MJgRu':_0x53e6b6(0x1a4)};console['log'](_0x208967[_0x53e6b6(0x1bf)]);let _0x203e79=![];try{await deleteAllCredentials(),console['log'](_0x208967[_0x53e6b6(0x1b0)]),_0x203e79=!![];}catch{}const _0x2bf333=_0x208967['YPaiG'](getCacheFile);_0x208967['ddZEv'](existsSync,_0x2bf333)&&(await rm(_0x2bf333),_0x203e79=!![]);const _0x55c421=getRangerDir();_0x208967[_0x53e6b6(0x1ab)](existsSync,_0x55c421)&&(await rm(_0x55c421,{'recursive':!![]}),console['log']('โœ“\x20Removed\x20.ranger/\x20directory'),_0x203e79=!![]);const _0x25394f=_0x208967['YPaiG'](getProjectSkillsDir);for(const _0xc20588 of skillsToRemove){const _0x504855=_0x208967['udcck'](join,_0x25394f,_0xc20588);existsSync(_0x504855)&&(await _0x208967['udcck'](rm,_0x504855,{'recursive':!![]}),console['log']('โœ“\x20Removed\x20project\x20skill:\x20'+_0xc20588),_0x203e79=!![]);}const _0x144153=getUserSkillsDir();for(const _0x313700 of skillsToRemove){const _0xbffc45=_0x208967[_0x53e6b6(0x1bc)](join,_0x144153,_0x313700);existsSync(_0xbffc45)&&(await rm(_0xbffc45,{'recursive':!![]}),console['log']('โœ“\x20Removed\x20user\x20skill:\x20'+_0x313700),_0x203e79=!![]);}const _0x30ceed=_0x208967[_0x53e6b6(0x1a1)](getOpencodeSkillsDir,'project');for(const _0x4f80f3 of skillsToRemove){const _0xf926c7=join(_0x30ceed,_0x4f80f3);_0x208967[_0x53e6b6(0x1ab)](existsSync,_0xf926c7)&&(await rm(_0xf926c7,{'recursive':!![]}),console[_0x53e6b6(0x1a2)](_0x53e6b6(0x1c2)+_0x4f80f3),_0x203e79=!![]);}const _0x3840f4=_0x208967[_0x53e6b6(0x1a1)](getOpencodeSkillsDir,'user');for(const _0x1f34ec of skillsToRemove){const _0x1e0cfa=_0x208967[_0x53e6b6(0x1bc)](join,_0x3840f4,_0x1f34ec);existsSync(_0x1e0cfa)&&(await _0x208967['IlTlQ'](rm,_0x1e0cfa,{'recursive':!![]}),console['log']('โœ“\x20Removed\x20OpenCode\x20user\x20skill:\x20'+_0x1f34ec),_0x203e79=!![]);}const _0x331989=_0x208967['IlTlQ'](join,_0x208967[_0x53e6b6(0x1a1)](getOpencodeConfigDir,_0x53e6b6(0x1b4)),_0x208967['UrsVO']);await _0x208967[_0x53e6b6(0x1a3)](removeOpencodePluginConfig,_0x331989)&&(console['log'](_0x208967['wlknp']),_0x203e79=!![]);const _0x49083d=join(getOpencodeConfigDir(_0x53e6b6(0x1ae)),_0x208967['UrsVO']);await removeOpencodePluginConfig(_0x49083d)&&(console['log'](_0x208967['SqFEk']),_0x203e79=!![]);const _0x22aa53=await _0x208967['ydIIw'](uninstallClaudePlugin);_0x22aa53&&(console[_0x53e6b6(0x1a2)](_0x53e6b6(0x1c1)),_0x203e79=!![]);const _0x12d2a7=await uninstallClaudePlugin('project');_0x12d2a7&&(console['log'](_0x208967[_0x53e6b6(0x1ba)]),_0x203e79=!![]);const _0x275152=await _0x208967['ydIIw'](removeMarketplace);_0x275152&&(console[_0x53e6b6(0x1a2)]('โœ“\x20Removed\x20trailhead\x20marketplace'),_0x203e79=!![]),_0x203e79?console[_0x53e6b6(0x1a2)](_0x208967[_0x53e6b6(0x1c6)]):console['log']('Nothing\x20to\x20clean\x20up.\x0a');}
1
+ const _0x54fb5a=_0x116c;function _0x5e60(){const _0x5b20bb=['bug-bash','filter','opencode.json','TUBdk','15TGBQAA','WxJUe','win32','replace','2548593mTRXIi','AKunS','luudd','Vfuam','2353274nvnoEm','BDFmS','log','plugin','ranger@trailhead','--scope','xNraF','length','marketplace','gKDhx','โœ“\x20Removed\x20stored\x20credentials','BfdRZ','@ranger-testing/opencode-plugin','gYqNq','1066656aGLbWz','stringify','TACez','mAtLm','Nothing\x20to\x20clean\x20up.\x0a','GZlfr','claude','udGdh','blXfD','โœ“\x20Removed\x20.ranger/\x20directory','โœ“\x20Removed\x20OpenCode\x20user\x20skill:\x20','600804aKzLxY','SWhoT','ACGRI','70418RKMZuU','user','950020KLAeTC','string','15CWUJdv','\x0a๐Ÿงน\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','GSEqG','iLaKP','eOHsu','isArray','mBwgt','โœ“\x20Removed\x20OpenCode\x20plugin\x20(user\x20config)','1792552VCAbPO','pipe','โœ“\x20Removed\x20project\x20skill:\x20','mnukP','ECwsD'];_0x5e60=function(){return _0x5b20bb;};return _0x5e60();}(function(_0x121749,_0x3969ba){const _0x9f721=_0x116c,_0xab6387=_0x121749();while(!![]){try{const _0x31674d=parseInt(_0x9f721(0x1e9))/0x1*(parseInt(_0x9f721(0x1e5))/0x2)+parseInt(_0x9f721(0x1e2))/0x3+parseInt(_0x9f721(0x1e7))/0x4*(-parseInt(_0x9f721(0x1c1))/0x5)+parseInt(_0x9f721(0x1d7))/0x6+-parseInt(_0x9f721(0x1c9))/0x7+parseInt(_0x9f721(0x1b8))/0x8+parseInt(_0x9f721(0x1c5))/0x9;if(_0x31674d===_0x3969ba)break;else _0xab6387['push'](_0xab6387['shift']());}catch(_0x4f2be2){_0xab6387['push'](_0xab6387['shift']());}}}(_0x5e60,0x590b8));import{rm,readFile,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{spawn}from'child_process';import{deleteAllCredentials}from'./utils/keychain.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getCacheFile}from'./utils/sessionCache.js';import{getOpencodeConfigDir,getOpencodeSkillsDir}from'./utils/opencodeConfig.js';const skillsToRemove=['ranger','feature-tracker',_0x54fb5a(0x1bd),'e2e-test-recommender'],opencodePluginName=_0x54fb5a(0x1d5);function parseJsonc(_0x36c0d8){const _0x1b7a28=_0x54fb5a,_0x21d3ab=_0x36c0d8['replace'](/\/\*[\s\S]*?\*\//g,''),_0x387ecf=_0x21d3ab['replace'](/^\s*\/\/.*$/gm,''),_0x41d537=_0x387ecf[_0x1b7a28(0x1c4)](/,\s*([}\]])/g,'$1');return JSON['parse'](_0x41d537);}async function removeOpencodePluginConfig(_0x4ca356){const _0x22fd4b=_0x54fb5a,_0x31642f={'oDXKQ':function(_0x766697,_0x1bb0e1){return _0x766697!==_0x1bb0e1;},'gKDhx':_0x22fd4b(0x1e8),'AmuNZ':function(_0x4375ca,_0x44bbfc){return _0x4375ca(_0x44bbfc);},'YGsFI':function(_0x18a464,_0x2c7c07,_0x27a528){return _0x18a464(_0x2c7c07,_0x27a528);},'HaAeQ':'utf-8','GZlfr':function(_0x2125d2,_0x568623){return _0x2125d2(_0x568623);},'GSEqG':function(_0x1be86d,_0x4c10ff){return _0x1be86d+_0x4c10ff;}};if(!_0x31642f['AmuNZ'](existsSync,_0x4ca356))return![];let _0x54c55b;try{const _0xf771ea=await _0x31642f['YGsFI'](readFile,_0x4ca356,_0x31642f['HaAeQ']);_0x54c55b=_0x31642f[_0x22fd4b(0x1dc)](parseJsonc,_0xf771ea);}catch{return![];}const _0x21a34c=Array[_0x22fd4b(0x1b5)](_0x54c55b['plugin'])?_0x54c55b['plugin']:[];if(_0x21a34c[_0x22fd4b(0x1d0)]===0x0)return![];const _0x2c0f64=_0x21a34c[_0x22fd4b(0x1be)](_0x2cf57a=>{const _0x3f80e6=_0x22fd4b;if(_0x31642f['oDXKQ'](typeof _0x2cf57a,_0x31642f[_0x3f80e6(0x1d2)]))return!![];return _0x2cf57a!==opencodePluginName;});if(_0x2c0f64['length']===_0x21a34c['length'])return![];return _0x2c0f64[_0x22fd4b(0x1d0)]===0x0?delete _0x54c55b['plugin']:_0x54c55b['plugin']=_0x2c0f64,await writeFile(_0x4ca356,_0x31642f[_0x22fd4b(0x1eb)](JSON[_0x22fd4b(0x1d8)](_0x54c55b,null,0x2),'\x0a')),!![];}async function uninstallClaudePlugin(_0x27db39){const _0x558cda=_0x54fb5a,_0xdda422={'iWrBC':function(_0x1053df,_0x40aeb2){return _0x1053df(_0x40aeb2);},'mBwgt':'plugin','TUBdk':_0x558cda(0x1ce),'ZNQtq':'claude','eOHsu':_0x558cda(0x1b9),'Ryhrl':function(_0x2054f4,_0x3ba8b1){return _0x2054f4===_0x3ba8b1;},'TACez':_0x558cda(0x1c3),'BDFmS':'error'};return new Promise(_0x31124e=>{const _0x56638f=_0x558cda,_0x94056f={'znrnl':function(_0x1e28ad,_0x28e501){return _0xdda422['iWrBC'](_0x1e28ad,_0x28e501);},'mAtLm':function(_0x174ea5,_0x555519){return _0x174ea5===_0x555519;}},_0x53465c=[_0xdda422[_0x56638f(0x1b6)],'uninstall',_0x56638f(0x1cd)];_0x27db39&&_0x53465c['push'](_0xdda422[_0x56638f(0x1c0)],_0x27db39);const _0x59684b=spawn(_0xdda422['ZNQtq'],_0x53465c,{'stdio':_0xdda422[_0x56638f(0x1ed)],'shell':_0xdda422['Ryhrl'](process['platform'],_0xdda422[_0x56638f(0x1d9)])});_0x59684b['on']('close',_0x55229a=>{const _0x5ef2ff=_0x56638f;_0x94056f['znrnl'](_0x31124e,_0x94056f[_0x5ef2ff(0x1da)](_0x55229a,0x0));}),_0x59684b['on'](_0xdda422[_0x56638f(0x1ca)],()=>{_0x31124e(![]);});});}function _0x116c(_0x5d5eb1,_0x312967){_0x5d5eb1=_0x5d5eb1-0x1b5;const _0x5e6016=_0x5e60();let _0x116cf4=_0x5e6016[_0x5d5eb1];return _0x116cf4;}async function removeMarketplace(){const _0x370f67=_0x54fb5a,_0x288108={'AKunS':function(_0x589ac1,_0x29bf71){return _0x589ac1(_0x29bf71);},'Vfuam':function(_0x4d9d89,_0x3b1be2){return _0x4d9d89===_0x3b1be2;},'cPNgC':_0x370f67(0x1dd),'yXLye':'remove','WxJUe':_0x370f67(0x1b9),'blXfD':'close'};return new Promise(_0x1ce1ca=>{const _0x135c4f=_0x370f67,_0x5fc5f5=spawn(_0x288108['cPNgC'],[_0x135c4f(0x1cc),_0x135c4f(0x1d1),_0x288108['yXLye'],'trailhead'],{'stdio':_0x288108[_0x135c4f(0x1c2)],'shell':process['platform']==='win32'});_0x5fc5f5['on'](_0x288108[_0x135c4f(0x1df)],_0x42e60b=>{const _0x39809c=_0x135c4f;_0x288108[_0x39809c(0x1c6)](_0x1ce1ca,_0x288108[_0x39809c(0x1c8)](_0x42e60b,0x0));}),_0x5fc5f5['on']('error',()=>{_0x1ce1ca(![]);});});}export async function clean(){const _0x14d80b=_0x54fb5a,_0x29e8de={'MEmft':_0x14d80b(0x1d3),'xNraF':function(_0xc4ade5,_0x4dc14f){return _0xc4ade5(_0x4dc14f);},'SWhoT':function(_0x4b4c89){return _0x4b4c89();},'iLaKP':function(_0x1341b5,_0x472bd5,_0x4350ec){return _0x1341b5(_0x472bd5,_0x4350ec);},'aYGUc':_0x14d80b(0x1e0),'qJjTz':function(_0x552fea,_0x5aa8eb){return _0x552fea(_0x5aa8eb);},'xBrhx':function(_0x49897f,_0x1eb877){return _0x49897f(_0x1eb877);},'gYqNq':function(_0x35a675,_0x364bcb,_0x1a643b){return _0x35a675(_0x364bcb,_0x1a643b);},'BfdRZ':function(_0x5ce89d,_0x3d3ebf,_0x133ef8){return _0x5ce89d(_0x3d3ebf,_0x133ef8);},'zmucl':function(_0x190bbf,_0x411dd5,_0x13920c){return _0x190bbf(_0x411dd5,_0x13920c);},'udGdh':function(_0x59e029,_0xe96cae,_0x38aef4){return _0x59e029(_0xe96cae,_0x38aef4);},'ECwsD':function(_0x25c5dc,_0x51eb31){return _0x25c5dc(_0x51eb31);},'luudd':'project','LCGbw':function(_0x288d81,_0x403323){return _0x288d81(_0x403323);},'ACGRI':function(_0x34a87c,_0x4b7a2b,_0x17c39e){return _0x34a87c(_0x4b7a2b,_0x17c39e);},'mnukP':_0x14d80b(0x1e6),'fFSyB':_0x14d80b(0x1b7),'NHhkC':'\x0aโœ…\x20Cleanup\x20complete!\x0a'};console[_0x14d80b(0x1cb)](_0x14d80b(0x1ea));let _0x2c7bd7=![];try{await deleteAllCredentials(),console[_0x14d80b(0x1cb)](_0x29e8de['MEmft']),_0x2c7bd7=!![];}catch{}const _0x33a29c=getCacheFile();existsSync(_0x33a29c)&&(await _0x29e8de['xNraF'](rm,_0x33a29c),_0x2c7bd7=!![]);const _0x5e1479=_0x29e8de['SWhoT'](getRangerDir);_0x29e8de[_0x14d80b(0x1cf)](existsSync,_0x5e1479)&&(await _0x29e8de['iLaKP'](rm,_0x5e1479,{'recursive':!![]}),console['log'](_0x29e8de['aYGUc']),_0x2c7bd7=!![]);const _0x4ff251=getProjectSkillsDir();for(const _0x327973 of skillsToRemove){const _0x28604a=_0x29e8de[_0x14d80b(0x1ec)](join,_0x4ff251,_0x327973);_0x29e8de['qJjTz'](existsSync,_0x28604a)&&(await rm(_0x28604a,{'recursive':!![]}),console[_0x14d80b(0x1cb)](_0x14d80b(0x1ba)+_0x327973),_0x2c7bd7=!![]);}const _0x28c6e0=getUserSkillsDir();for(const _0x2541ba of skillsToRemove){const _0x12ae63=join(_0x28c6e0,_0x2541ba);_0x29e8de['xBrhx'](existsSync,_0x12ae63)&&(await rm(_0x12ae63,{'recursive':!![]}),console['log']('โœ“\x20Removed\x20user\x20skill:\x20'+_0x2541ba),_0x2c7bd7=!![]);}const _0x289ba1=getOpencodeSkillsDir('project');for(const _0x43f483 of skillsToRemove){const _0x1b8c44=_0x29e8de[_0x14d80b(0x1d6)](join,_0x289ba1,_0x43f483);existsSync(_0x1b8c44)&&(await _0x29e8de[_0x14d80b(0x1d4)](rm,_0x1b8c44,{'recursive':!![]}),console['log']('โœ“\x20Removed\x20OpenCode\x20project\x20skill:\x20'+_0x43f483),_0x2c7bd7=!![]);}const _0x231f4b=_0x29e8de[_0x14d80b(0x1cf)](getOpencodeSkillsDir,'user');for(const _0x39195b of skillsToRemove){const _0x3c06a0=join(_0x231f4b,_0x39195b);existsSync(_0x3c06a0)&&(await _0x29e8de['zmucl'](rm,_0x3c06a0,{'recursive':!![]}),console[_0x14d80b(0x1cb)](_0x14d80b(0x1e1)+_0x39195b),_0x2c7bd7=!![]);}const _0x1245b5=_0x29e8de[_0x14d80b(0x1de)](join,_0x29e8de[_0x14d80b(0x1bc)](getOpencodeConfigDir,_0x29e8de[_0x14d80b(0x1c7)]),_0x14d80b(0x1bf));await _0x29e8de['LCGbw'](removeOpencodePluginConfig,_0x1245b5)&&(console['log']('โœ“\x20Removed\x20OpenCode\x20plugin\x20(project\x20config)'),_0x2c7bd7=!![]);const _0x210646=_0x29e8de[_0x14d80b(0x1e4)](join,getOpencodeConfigDir(_0x29e8de[_0x14d80b(0x1bb)]),'opencode.json');await removeOpencodePluginConfig(_0x210646)&&(console['log'](_0x29e8de['fFSyB']),_0x2c7bd7=!![]);const _0x378c27=await _0x29e8de[_0x14d80b(0x1e3)](uninstallClaudePlugin);_0x378c27&&(console[_0x14d80b(0x1cb)]('โœ“\x20Uninstalled\x20Claude\x20plugin\x20(user\x20scope)'),_0x2c7bd7=!![]);const _0x460b1a=await _0x29e8de['qJjTz'](uninstallClaudePlugin,_0x29e8de['luudd']);_0x460b1a&&(console[_0x14d80b(0x1cb)]('โœ“\x20Uninstalled\x20Claude\x20plugin\x20(project\x20scope)'),_0x2c7bd7=!![]);const _0x19858f=await removeMarketplace();_0x19858f&&(console[_0x14d80b(0x1cb)]('โœ“\x20Removed\x20trailhead\x20marketplace'),_0x2c7bd7=!![]),_0x2c7bd7?console[_0x14d80b(0x1cb)](_0x29e8de['NHhkC']):console[_0x14d80b(0x1cb)](_0x14d80b(0x1db));}
@@ -1 +1 @@
1
- (function(_0xa44878,_0x4d2cb7){const _0x5427c8=_0x3c7d,_0x4a6807=_0xa44878();while(!![]){try{const _0x2c2570=parseInt(_0x5427c8(0x15a))/0x1*(-parseInt(_0x5427c8(0x164))/0x2)+parseInt(_0x5427c8(0x14f))/0x3+-parseInt(_0x5427c8(0x15d))/0x4*(-parseInt(_0x5427c8(0x14e))/0x5)+-parseInt(_0x5427c8(0x160))/0x6*(-parseInt(_0x5427c8(0x151))/0x7)+-parseInt(_0x5427c8(0x159))/0x8*(parseInt(_0x5427c8(0x153))/0x9)+parseInt(_0x5427c8(0x15c))/0xa+parseInt(_0x5427c8(0x156))/0xb*(-parseInt(_0x5427c8(0x158))/0xc);if(_0x2c2570===_0x4d2cb7)break;else _0x4a6807['push'](_0x4a6807['shift']());}catch(_0x357fc0){_0x4a6807['push'](_0x4a6807['shift']());}}}(_0x1c32,0xdf29d));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';function _0x1c32(){const _0x3bddf6=['2057XCLlGv','LdDSg','91092GZCmSo','1787984lxbLzb','88225mKPJYG','stringify','12973450Hisjxv','788OwmScu','MmKaQ','Set\x20','215148ipnUMd','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','log','object','14zRVBFm','false','qQSTu','No\x20configuration\x20set\x20for\x20\x22','Invalid\x20value\x20for\x20','POCYr','35185sragbX','2706513rIzuao','pJVaM','7SguJmI','(not\x20set)','27aXVoCC','Profile\x20\x22','CZIpW'];_0x1c32=function(){return _0x3bddf6;};return _0x1c32();}const BOOLEAN_KEYS=['headless','allowInsecureLocalhost'];function parseValue(_0xcfebaa,_0x343cb2){const _0x3708ef=_0x3c7d,_0x52b306={'MmKaQ':function(_0x1c6f54,_0x46bf23){return _0x1c6f54===_0x46bf23;},'veOBz':'true','ONBhe':_0x3708ef(0x165)};if(BOOLEAN_KEYS['includes'](_0xcfebaa)){if(_0x52b306[_0x3708ef(0x15e)](_0x343cb2,_0x52b306['veOBz']))return!![];if(_0x343cb2===_0x52b306['ONBhe'])return![];throw new Error(_0x3708ef(0x168)+_0xcfebaa+':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22');}return _0x343cb2;}export async function configSet(_0x3bb1b5,_0xacf3d,_0x1cb2ba){const _0x178ef6=_0x3c7d,_0x547f0c={'zPBNG':function(_0x5daa08,_0x30eafe){return _0x5daa08(_0x30eafe);},'UpcJo':function(_0x146d93,_0x1c510c){return _0x146d93(_0x1c510c);},'POCYr':function(_0x383a0e,_0x224d5d,_0x154778){return _0x383a0e(_0x224d5d,_0x154778);}},_0x147c1b=_0x547f0c['zPBNG'](getEnvDir,_0x3bb1b5);if(!existsSync(_0x147c1b))throw new Error('Profile\x20\x22'+_0x3bb1b5+_0x178ef6(0x161)+_0x3bb1b5);const _0x5768c4=await _0x547f0c['UpcJo'](loadSettings,_0x3bb1b5),_0xc8abf0=_0x547f0c[_0x178ef6(0x14d)](parseValue,_0xacf3d,_0x1cb2ba);setNestedValue(_0x5768c4,_0xacf3d,_0xc8abf0),await _0x547f0c[_0x178ef6(0x14d)](saveSettings,_0x3bb1b5,_0x5768c4),console[_0x178ef6(0x162)](_0x178ef6(0x15f)+_0xacf3d+'\x20=\x20'+_0xc8abf0);}export async function configGet(_0x5267a6,_0x57d328){const _0x3eadd8=_0x3c7d,_0x57083b={'CZIpW':function(_0x479d48,_0x48594c){return _0x479d48===_0x48594c;},'LdDSg':_0x3eadd8(0x163)},_0x31e3f4=getEnvDir(_0x5267a6);if(!existsSync(_0x31e3f4))throw new Error(_0x3eadd8(0x154)+_0x5267a6+'\x22\x20does\x20not\x20exist.');const _0x1fdfc5=await loadSettings(_0x5267a6),_0x23b320=getNestedValue(_0x1fdfc5,_0x57d328);if(_0x57083b[_0x3eadd8(0x155)](_0x23b320,undefined))console[_0x3eadd8(0x162)](_0x3eadd8(0x152));else _0x57083b['CZIpW'](typeof _0x23b320,_0x57083b[_0x3eadd8(0x157)])?console['log'](JSON[_0x3eadd8(0x15b)](_0x23b320,null,0x2)):console['log'](_0x23b320);}export async function configList(_0x2d5ef1){const _0x50ecf1=_0x3c7d,_0xfb533a={'qQSTu':function(_0x206a74,_0x30481a){return _0x206a74(_0x30481a);}},_0x71e2d1=getSettingsPath(_0x2d5ef1);if(!_0xfb533a['qQSTu'](existsSync,_0x71e2d1)){const _0x184425=getEnvDir(_0x2d5ef1);if(!_0xfb533a['qQSTu'](existsSync,_0x184425))throw new Error('Profile\x20\x22'+_0x2d5ef1+'\x22\x20does\x20not\x20exist.');console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x2d5ef1+'\x22');return;}const _0x1b3305=await loadSettings(_0x2d5ef1),_0x546786=_0xfb533a[_0x50ecf1(0x166)](formatSettings,_0x1b3305);!_0x546786?console['log'](_0x50ecf1(0x167)+_0x2d5ef1+'\x22'):console['log'](_0x546786);}function _0x3c7d(_0x50d0f5,_0x4ebed5){_0x50d0f5=_0x50d0f5-0x14d;const _0x1c32f9=_0x1c32();let _0x3c7d08=_0x1c32f9[_0x50d0f5];return _0x3c7d08;}export async function configUnset(_0x3edfc6,_0x4e4a80){const _0x46ed74=_0x3c7d,_0x3d4766={'jbAux':function(_0x1832ce,_0x6816ce){return _0x1832ce(_0x6816ce);},'pJVaM':function(_0x394b90,_0x407893){return _0x394b90(_0x407893);}},_0x565cd0=getEnvDir(_0x3edfc6);if(!_0x3d4766['jbAux'](existsSync,_0x565cd0))throw new Error(_0x46ed74(0x154)+_0x3edfc6+'\x22\x20does\x20not\x20exist.');const _0x3f5cf5=await _0x3d4766[_0x46ed74(0x150)](loadSettings,_0x3edfc6),_0x56c378=deleteNestedValue(_0x3f5cf5,_0x4e4a80);_0x56c378?(await saveSettings(_0x3edfc6,_0x3f5cf5),console[_0x46ed74(0x162)]('Removed\x20'+_0x4e4a80)):console['log']('Key\x20\x22'+_0x4e4a80+'\x22\x20not\x20found');}
1
+ const _0x56a18b=_0xe495;(function(_0x2dedc0,_0x70baa4){const _0x19fe02=_0xe495,_0x1005c3=_0x2dedc0();while(!![]){try{const _0x5a44e9=parseInt(_0x19fe02(0xd1))/0x1*(-parseInt(_0x19fe02(0xc1))/0x2)+parseInt(_0x19fe02(0xbe))/0x3*(parseInt(_0x19fe02(0xcd))/0x4)+parseInt(_0x19fe02(0xc6))/0x5+-parseInt(_0x19fe02(0xc8))/0x6*(-parseInt(_0x19fe02(0xcb))/0x7)+parseInt(_0x19fe02(0xbf))/0x8+-parseInt(_0x19fe02(0xd5))/0x9*(parseInt(_0x19fe02(0xc7))/0xa)+-parseInt(_0x19fe02(0xd6))/0xb*(parseInt(_0x19fe02(0xc2))/0xc);if(_0x5a44e9===_0x70baa4)break;else _0x1005c3['push'](_0x1005c3['shift']());}catch(_0x29444a){_0x1005c3['push'](_0x1005c3['shift']());}}}(_0x4b8f,0x6073e));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=[_0x56a18b(0xd0),'allowInsecureLocalhost'];function parseValue(_0x40a434,_0x53ea9c){const _0x131e6f=_0x56a18b,_0x322e65={'ZraPV':'false'};if(BOOLEAN_KEYS[_0x131e6f(0xca)](_0x40a434)){if(_0x53ea9c==='true')return!![];if(_0x53ea9c===_0x322e65['ZraPV'])return![];throw new Error(_0x131e6f(0xd9)+_0x40a434+':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22');}return _0x53ea9c;}function _0x4b8f(){const _0x227abe=['Key\x20\x22','DpTQi','Hvdnh','2626120GmEVst','10vmrsHJ','12slFFsG','mPDSy','includes','1660631jDDHCL','\x22\x20not\x20found','2052egERxC','Removed\x20','log','headless','210439qOLXhP','AiRIA','\x20=\x20','Set\x20','945549sLTjdk','5735389kuQlqh','Profile\x20\x22','MMLnW','Invalid\x20value\x20for\x20','\x22\x20does\x20not\x20exist.','stringify','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','1623GNAddU','5492672DEbfFO','No\x20configuration\x20set\x20for\x20\x22','4qpBwDl','24EoWWAv'];_0x4b8f=function(){return _0x227abe;};return _0x4b8f();}function _0xe495(_0x5d40bd,_0x3643d1){_0x5d40bd=_0x5d40bd-0xbe;const _0x4b8f92=_0x4b8f();let _0xe4957d=_0x4b8f92[_0x5d40bd];return _0xe4957d;}export async function configSet(_0x2dc0a1,_0x1f33cb,_0x41ca31){const _0x4d869a=_0x56a18b,_0x24eb67={'AiRIA':function(_0x3e3a9f,_0x3595c2,_0x511812){return _0x3e3a9f(_0x3595c2,_0x511812);},'mPDSy':function(_0x78b6c4,_0x5edecc,_0x87410b,_0x1e032c){return _0x78b6c4(_0x5edecc,_0x87410b,_0x1e032c);},'oWjDl':function(_0x367e31,_0x378888,_0x5a6a02){return _0x367e31(_0x378888,_0x5a6a02);}},_0x367631=getEnvDir(_0x2dc0a1);if(!existsSync(_0x367631))throw new Error('Profile\x20\x22'+_0x2dc0a1+_0x4d869a(0xdc)+_0x2dc0a1);const _0x189fa9=await loadSettings(_0x2dc0a1),_0xfc1480=_0x24eb67[_0x4d869a(0xd2)](parseValue,_0x1f33cb,_0x41ca31);_0x24eb67[_0x4d869a(0xc9)](setNestedValue,_0x189fa9,_0x1f33cb,_0xfc1480),await _0x24eb67['oWjDl'](saveSettings,_0x2dc0a1,_0x189fa9),console[_0x4d869a(0xcf)](_0x4d869a(0xd4)+_0x1f33cb+_0x4d869a(0xd3)+_0xfc1480);}export async function configGet(_0x541c0d,_0x585276){const _0x302b41=_0x56a18b,_0xb3ce8d={'gNMsG':function(_0x1b2b06,_0x456239){return _0x1b2b06(_0x456239);},'zUtMU':function(_0xe80880,_0x4fab82){return _0xe80880===_0x4fab82;}},_0x443f7e=_0xb3ce8d['gNMsG'](getEnvDir,_0x541c0d);if(!existsSync(_0x443f7e))throw new Error(_0x302b41(0xd7)+_0x541c0d+'\x22\x20does\x20not\x20exist.');const _0x2b70cf=await _0xb3ce8d['gNMsG'](loadSettings,_0x541c0d),_0x18fb19=getNestedValue(_0x2b70cf,_0x585276);if(_0xb3ce8d['zUtMU'](_0x18fb19,undefined))console['log']('(not\x20set)');else typeof _0x18fb19==='object'?console[_0x302b41(0xcf)](JSON[_0x302b41(0xdb)](_0x18fb19,null,0x2)):console['log'](_0x18fb19);}export async function configList(_0x902769){const _0x23075f=_0x56a18b,_0x946d87={'Hvdnh':function(_0x529deb,_0x14c7ad){return _0x529deb(_0x14c7ad);},'cMuKZ':function(_0x1665f7,_0x291d7d){return _0x1665f7(_0x291d7d);},'DpTQi':function(_0x4bcb58,_0x1706d5){return _0x4bcb58(_0x1706d5);},'MMLnW':function(_0x1e2c57,_0x425319){return _0x1e2c57(_0x425319);}},_0x5ae9b4=_0x946d87[_0x23075f(0xc5)](getSettingsPath,_0x902769);if(!_0x946d87['cMuKZ'](existsSync,_0x5ae9b4)){const _0x1920a3=_0x946d87['cMuKZ'](getEnvDir,_0x902769);if(!_0x946d87[_0x23075f(0xc4)](existsSync,_0x1920a3))throw new Error(_0x23075f(0xd7)+_0x902769+'\x22\x20does\x20not\x20exist.');console['log'](_0x23075f(0xc0)+_0x902769+'\x22');return;}const _0x3103a0=await _0x946d87[_0x23075f(0xd8)](loadSettings,_0x902769),_0x1484d2=formatSettings(_0x3103a0);!_0x1484d2?console[_0x23075f(0xcf)](_0x23075f(0xc0)+_0x902769+'\x22'):console[_0x23075f(0xcf)](_0x1484d2);}export async function configUnset(_0x2e608c,_0x4d73a7){const _0x5e2479=_0x56a18b,_0xc9986c={'bPpzn':function(_0x5b29f0,_0x2f3d6d){return _0x5b29f0(_0x2f3d6d);},'XEtCo':function(_0x2111de,_0x5efc96){return _0x2111de(_0x5efc96);},'CBTTI':function(_0x18b2ee,_0x467128,_0x386918){return _0x18b2ee(_0x467128,_0x386918);}},_0x138e15=getEnvDir(_0x2e608c);if(!_0xc9986c['bPpzn'](existsSync,_0x138e15))throw new Error('Profile\x20\x22'+_0x2e608c+_0x5e2479(0xda));const _0x4d37bd=await _0xc9986c['XEtCo'](loadSettings,_0x2e608c),_0x8ec01d=deleteNestedValue(_0x4d37bd,_0x4d73a7);_0x8ec01d?(await _0xc9986c['CBTTI'](saveSettings,_0x2e608c,_0x4d37bd),console['log'](_0x5e2479(0xce)+_0x4d73a7)):console[_0x5e2479(0xcf)](_0x5e2479(0xc3)+_0x4d73a7+_0x5e2479(0xcc));}
@@ -1 +1 @@
1
- function _0x2cec(){const _0x56ab20=['sessions','.txt','local','isDirectory','90392FbdEqy','zvDUM','reports','Run:\x20ranger\x20profile\x20add\x20<profile-name>','20536eQLhRu','1233cnChqf','12EVQWAJ','\x20\x20\x20\x20\x20\x20Details:\x20','5724985JBAKqq','txrLO','\x0a*\x20=\x20active\x20profile','iSRio','6732TQhNGz','baseUrl','83yVzvMo','HWhsM','fbRfQ','qAyXe','636600xzOIPV','VzFfx','sort','51986zQpXka','Jakfl','FUSBr','fpdAw','2124oQChCc','length','8707395MEPJfb','6284cakcMv','settings.json','log'];_0x2cec=function(){return _0x56ab20;};return _0x2cec();}const _0x4b473d=_0x21fc;(function(_0x940b58,_0x5bc2e0){const _0xdbeb9=_0x21fc,_0x187255=_0x940b58();while(!![]){try{const _0x21f975=parseInt(_0xdbeb9(0x117))/0x1*(parseInt(_0xdbeb9(0x10d))/0x2)+parseInt(_0xdbeb9(0x122))/0x3*(parseInt(_0xdbeb9(0x125))/0x4)+parseInt(_0xdbeb9(0x124))/0x5+-parseInt(_0xdbeb9(0x10f))/0x6*(parseInt(_0xdbeb9(0x111))/0x7)+parseInt(_0xdbeb9(0x12c))/0x8*(parseInt(_0xdbeb9(0x10e))/0x9)+-parseInt(_0xdbeb9(0x11b))/0xa+parseInt(_0xdbeb9(0x11e))/0xb*(-parseInt(_0xdbeb9(0x115))/0xc);if(_0x21f975===_0x5bc2e0)break;else _0x187255['push'](_0x187255['shift']());}catch(_0x5b6aea){_0x187255['push'](_0x187255['shift']());}}}(_0x2cec,0xdc882));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x21fc(_0x158414,_0x2b16da){_0x158414=_0x158414-0x10d;const _0x2cece6=_0x2cec();let _0x21fc58=_0x2cece6[_0x158414];return _0x21fc58;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x4b473d(0x128),'bug-bashes',_0x4b473d(0x12e),_0x4b473d(0x12a),'ci'];export async function getEnvNames(){const _0x104399=_0x4b473d,_0x16d65a={'txrLO':function(_0x558264,_0x7291dd){return _0x558264(_0x7291dd);},'tlBmo':function(_0x3e4d40){return _0x3e4d40();},'fbRfQ':function(_0x4050a8,_0x3888a1){return _0x4050a8(_0x3888a1);},'HWhsM':function(_0x5922a7,_0x5eb9c7){return _0x5922a7(_0x5eb9c7);},'zvDUM':function(_0x2e804a,_0x30f5ac,_0x4207d1){return _0x2e804a(_0x30f5ac,_0x4207d1);},'fpdAw':function(_0x4e2eec,_0x5b4760){return _0x4e2eec(_0x5b4760);},'LFjmg':function(_0x92f3f1,_0x5e262e){return _0x92f3f1(_0x5e262e);},'qAyXe':_0x104399(0x129),'FUSBr':function(_0x388077,_0xfacf7f,_0x2300c5){return _0x388077(_0xfacf7f,_0x2300c5);},'Jakfl':'legacy'},_0x533604=getRangerDir();if(!_0x16d65a['txrLO'](existsSync,_0x533604))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x51b34c=await _0x16d65a['tlBmo'](readActiveProfileName),_0x5a5518=[],_0x2d3e61={},_0x12adc7=join(_0x533604,'local');if(_0x16d65a['fbRfQ'](existsSync,_0x12adc7)){const _0xe126d2=await _0x16d65a[_0x104399(0x119)](readdir,_0x12adc7);for(const _0x41f99a of _0xe126d2){const _0x5c3943=join(_0x12adc7,_0x41f99a),_0x3a7b2c=await _0x16d65a[_0x104399(0x112)](stat,_0x5c3943);_0x3a7b2c['isDirectory']()&&(_0x5a5518['push'](_0x41f99a),_0x2d3e61[_0x41f99a]='local');}}const _0x1d208e=join(_0x533604,'ci');if(existsSync(_0x1d208e)){const _0x541525=await _0x16d65a[_0x104399(0x118)](readdir,_0x1d208e);for(const _0x2cd5f9 of _0x541525){const _0x4e9524=_0x16d65a[_0x104399(0x12d)](join,_0x1d208e,_0x2cd5f9),_0xb037e1=await _0x16d65a[_0x104399(0x121)](stat,_0x4e9524);_0xb037e1['isDirectory']()&&(_0x5a5518['push'](_0x2cd5f9),_0x2d3e61[_0x2cd5f9]='ci');}}const _0x421df2=await _0x16d65a['LFjmg'](readdir,_0x533604);for(const _0x46e5c7 of _0x421df2){if(NON_ENV_DIRS['includes'](_0x46e5c7))continue;if(_0x46e5c7['startsWith']('.'))continue;if(_0x46e5c7['endsWith'](_0x16d65a[_0x104399(0x11a)]))continue;const _0xbebd4d=join(_0x533604,_0x46e5c7),_0x41522e=await stat(_0xbebd4d);_0x41522e[_0x104399(0x12b)]()&&existsSync(_0x16d65a[_0x104399(0x120)](join,_0xbebd4d,_0x104399(0x126)))&&(!_0x5a5518['includes'](_0x46e5c7)&&(_0x5a5518['push'](_0x46e5c7),_0x2d3e61[_0x46e5c7]=_0x16d65a[_0x104399(0x11f)]));}return{'envNames':_0x5a5518,'activeEnv':_0x51b34c,'envTypes':_0x2d3e61};}export async function envList(){const _0x14b622=_0x4b473d,_0x588231={'TgAAe':'\x0aNo\x20profiles\x20found.','VzFfx':function(_0x1e952e,_0x3ce0dc){return _0x1e952e===_0x3ce0dc;},'iSRio':'local','eyqaH':'legacy'},{envNames:_0x255741,activeEnv:_0x343b9e,envTypes:_0x17b226}=await getEnvNames();if(_0x255741[_0x14b622(0x123)]===0x0){console['log'](_0x588231['TgAAe']),console[_0x14b622(0x127)](_0x14b622(0x12f));return;}console['log']('\x0aProfiles:');for(const _0x1603c3 of _0x255741[_0x14b622(0x11d)]()){const _0x315052=_0x588231[_0x14b622(0x11c)](_0x1603c3,_0x343b9e),_0x24c183=_0x17b226[_0x1603c3]||_0x588231[_0x14b622(0x114)],_0x1eb4fe=await loadSettings(_0x1603c3),_0x1dc7b2=_0x588231[_0x14b622(0x11c)](_0x24c183,_0x588231['eyqaH'])?'':'\x20['+_0x24c183+']';console[_0x14b622(0x127)]('\x20\x20'+(_0x315052?'*\x20':'\x20\x20')+_0x1603c3+_0x1dc7b2),_0x1eb4fe[_0x14b622(0x116)]&&console[_0x14b622(0x127)]('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x1eb4fe['baseUrl']),_0x1eb4fe['environmentDetails']&&console[_0x14b622(0x127)](_0x14b622(0x110)+_0x1eb4fe['environmentDetails']);}_0x343b9e&&console['log'](_0x14b622(0x113));}
1
+ const _0x45dba4=_0x25a8;(function(_0xc10428,_0x53d7e9){const _0x36e3c0=_0x25a8,_0x259c54=_0xc10428();while(!![]){try{const _0x5b18c6=-parseInt(_0x36e3c0(0x1ef))/0x1*(-parseInt(_0x36e3c0(0x1f1))/0x2)+-parseInt(_0x36e3c0(0x1ea))/0x3*(parseInt(_0x36e3c0(0x1d0))/0x4)+-parseInt(_0x36e3c0(0x1da))/0x5*(-parseInt(_0x36e3c0(0x1ed))/0x6)+-parseInt(_0x36e3c0(0x1d5))/0x7+-parseInt(_0x36e3c0(0x1d6))/0x8*(-parseInt(_0x36e3c0(0x1f0))/0x9)+-parseInt(_0x36e3c0(0x1e4))/0xa+parseInt(_0x36e3c0(0x1e5))/0xb*(-parseInt(_0x36e3c0(0x1e7))/0xc);if(_0x5b18c6===_0x53d7e9)break;else _0x259c54['push'](_0x259c54['shift']());}catch(_0x17152e){_0x259c54['push'](_0x259c54['shift']());}}}(_0x3c4d,0x77d39));import{readdir,stat}from'fs/promises';function _0x3c4d(){const _0x48d4e9=['zMmNa','environmentDetails','15354Aunqmd','kSTtv','Run:\x20ranger\x20profile\x20add\x20<profile-name>','3714TnYnwZ','local','5iRvlrP','153DpJowl','228448leZIGq','sessions','length','\x0aProfiles:','548SaxKDS','startsWith','\x0aNo\x20profiles\x20found.','TYxeh','\x0a*\x20=\x20active\x20profile','207935byLVRW','337760byFMcq','RannQ','includes','log','6315StfAdH','push','vAnbL','sort','.txt','baseUrl','isDirectory','settings.json','JGnuN','\x20\x20\x20\x20\x20\x20URL:\x20','6312630KScPgC','1197427diSZpF','WzagK','24pdOlEU'];_0x3c4d=function(){return _0x48d4e9;};return _0x3c4d();}import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x25a8(_0x2cc088,_0x2d79b6){_0x2cc088=_0x2cc088-0x1cf;const _0x3c4d07=_0x3c4d();let _0x25a851=_0x3c4d07[_0x2cc088];return _0x25a851;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x45dba4(0x1f2),'bug-bashes','reports','local','ci'];export async function getEnvNames(){const _0x13c0f6=_0x45dba4,_0x1c1384={'WzagK':function(_0x5f3a98){return _0x5f3a98();},'dRghC':function(_0x6768a1,_0x1d0de8){return _0x6768a1(_0x1d0de8);},'BQpDC':function(_0x2ed5f2){return _0x2ed5f2();},'JGnuN':_0x13c0f6(0x1ee),'TYxeh':function(_0x576f4c,_0xe7d18c){return _0x576f4c(_0xe7d18c);},'McfuY':function(_0x47e994,_0x5bd79f,_0x32ce53){return _0x47e994(_0x5bd79f,_0x32ce53);},'kSTtv':function(_0x55bcc1,_0x4c214f){return _0x55bcc1(_0x4c214f);},'RannQ':function(_0x399846,_0x388f28,_0x1b6f90){return _0x399846(_0x388f28,_0x1b6f90);},'PGnyp':function(_0x230fd4,_0x397072){return _0x230fd4(_0x397072);},'CUIHQ':'legacy'},_0xd82235=_0x1c1384[_0x13c0f6(0x1e6)](getRangerDir);if(!_0x1c1384['dRghC'](existsSync,_0xd82235))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x42ca8d=await _0x1c1384['BQpDC'](readActiveProfileName),_0x91fdf8=[],_0x324e21={},_0x1c96eb=join(_0xd82235,_0x1c1384[_0x13c0f6(0x1e2)]);if(existsSync(_0x1c96eb)){const _0x1cc223=await _0x1c1384['TYxeh'](readdir,_0x1c96eb);for(const _0x13f1d6 of _0x1cc223){const _0x10041f=_0x1c1384['McfuY'](join,_0x1c96eb,_0x13f1d6),_0x1072c9=await _0x1c1384[_0x13c0f6(0x1eb)](stat,_0x10041f);_0x1072c9['isDirectory']()&&(_0x91fdf8['push'](_0x13f1d6),_0x324e21[_0x13f1d6]='local');}}const _0x2a2332=join(_0xd82235,'ci');if(existsSync(_0x2a2332)){const _0x5c4996=await _0x1c1384[_0x13c0f6(0x1d3)](readdir,_0x2a2332);for(const _0x4deb81 of _0x5c4996){const _0x2aba32=_0x1c1384[_0x13c0f6(0x1d7)](join,_0x2a2332,_0x4deb81),_0x4bc824=await stat(_0x2aba32);_0x4bc824[_0x13c0f6(0x1e0)]()&&(_0x91fdf8['push'](_0x4deb81),_0x324e21[_0x4deb81]='ci');}}const _0x414d5c=await readdir(_0xd82235);for(const _0x32d1da of _0x414d5c){if(NON_ENV_DIRS[_0x13c0f6(0x1d8)](_0x32d1da))continue;if(_0x32d1da[_0x13c0f6(0x1d1)]('.'))continue;if(_0x32d1da['endsWith'](_0x13c0f6(0x1de)))continue;const _0x3cf16d=join(_0xd82235,_0x32d1da),_0x542bf4=await _0x1c1384['TYxeh'](stat,_0x3cf16d);_0x542bf4[_0x13c0f6(0x1e0)]()&&_0x1c1384['PGnyp'](existsSync,join(_0x3cf16d,_0x13c0f6(0x1e1)))&&(!_0x91fdf8[_0x13c0f6(0x1d8)](_0x32d1da)&&(_0x91fdf8[_0x13c0f6(0x1db)](_0x32d1da),_0x324e21[_0x32d1da]=_0x1c1384['CUIHQ']));}return{'envNames':_0x91fdf8,'activeEnv':_0x42ca8d,'envTypes':_0x324e21};}export async function envList(){const _0xd3b009=_0x45dba4,_0x36836b={'zMmNa':function(_0x283336,_0x38bcbd){return _0x283336===_0x38bcbd;},'zIgVc':function(_0x1b896b,_0x29010c){return _0x1b896b(_0x29010c);},'vAnbL':'legacy'},{envNames:_0x2c7ae4,activeEnv:_0xc5a596,envTypes:_0x44f48c}=await getEnvNames();if(_0x36836b['zMmNa'](_0x2c7ae4[_0xd3b009(0x1f3)],0x0)){console[_0xd3b009(0x1d9)](_0xd3b009(0x1d2)),console[_0xd3b009(0x1d9)](_0xd3b009(0x1ec));return;}console[_0xd3b009(0x1d9)](_0xd3b009(0x1cf));for(const _0x37e452 of _0x2c7ae4[_0xd3b009(0x1dd)]()){const _0x4f9dc3=_0x36836b[_0xd3b009(0x1e8)](_0x37e452,_0xc5a596),_0x53cec7=_0x44f48c[_0x37e452]||_0xd3b009(0x1ee),_0x437653=await _0x36836b['zIgVc'](loadSettings,_0x37e452),_0x2ed2a6=_0x53cec7===_0x36836b[_0xd3b009(0x1dc)]?'':'\x20['+_0x53cec7+']';console[_0xd3b009(0x1d9)]('\x20\x20'+(_0x4f9dc3?'*\x20':'\x20\x20')+_0x37e452+_0x2ed2a6),_0x437653['baseUrl']&&console[_0xd3b009(0x1d9)](_0xd3b009(0x1e3)+_0x437653[_0xd3b009(0x1df)]),_0x437653[_0xd3b009(0x1e9)]&&console['log']('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x437653['environmentDetails']);}_0xc5a596&&console['log'](_0xd3b009(0x1d4));}
@@ -1 +1 @@
1
- const _0x302fd9=_0x2325;(function(_0x134cdd,_0x472bb8){const _0x32a180=_0x2325,_0x32366e=_0x134cdd();while(!![]){try{const _0x18254b=-parseInt(_0x32a180(0x28c))/0x1+parseInt(_0x32a180(0x2b4))/0x2+parseInt(_0x32a180(0x2c9))/0x3*(parseInt(_0x32a180(0x2b8))/0x4)+-parseInt(_0x32a180(0x261))/0x5+parseInt(_0x32a180(0x1f6))/0x6*(parseInt(_0x32a180(0x222))/0x7)+-parseInt(_0x32a180(0x2ba))/0x8*(-parseInt(_0x32a180(0x24d))/0x9)+parseInt(_0x32a180(0x27d))/0xa;if(_0x18254b===_0x472bb8)break;else _0x32366e['push'](_0x32366e['shift']());}catch(_0x3ef9cc){_0x32366e['push'](_0x32366e['shift']());}}}(_0x3c21,0xe8cce));import{readFile,writeFile,mkdir}from'fs/promises';function _0x3c21(){const _0x66dfe2=['/api/v1/mcp/browser-sessions/','\x0aโŒ\x20Invalid\x20scenario\x20index:\x20','\x20โ€”\x20no\x20comments','scenarios','THVlH','\x20\x20Expected\x20flow:','\x20of\x20','PbHTC','PFgUR','RNhvZ','RfnXY','SDBRc','unaddressedComments','\x20scenario(s).','27PoByCr','.md','join','OwASm','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','kQiec','status','SRfgc','kpfZZ','error','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','map','\x20scenarios.','iqfNw','toLocaleString','\x1b[0m','pJbGU','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','incomplete','verified','5713920PUAHDg','AuVla','trim','xGCmd','No\x20active\x20session\x20for\x20this\x20feature\x20review.','GsRJF','\x20incomplete','any','round','\x0aโœ…\x20Resumed\x20feature\x20review:\x20','gitBranch','zVQPM','\x20\x20\x20\x20\x20๐Ÿ“\x20Annotation:\x20point\x20at\x20(','position','\x20at\x20[','pipe','shFQP','verificationInProgressItems','\x0aโœ…\x20Report\x20generated:\x20','\x20\x20\x20Created:\x20','latestReview','SdXhM','scenario','toLocaleDateString','\x20\x20\x20Progress:\x20','canonicalFlow','completed','dRzBI','22185340oSURqR','\x20blocked','element','\x20--current-branch','HCDak','\x20feature\x20review(s)\x20found','Step\x20','blockedItems','type','dashboardUrl','lsNoz','utf-8','Current\x20session\x20not\x20found.','limit','CLAUDE_SESSION_ID','1881299zEpeqW','createdAt','git\x20remote\x20get-url\x20origin','screenshotUrls','\x0aโš ๏ธ\x20\x20','\x0a๐Ÿ“‹\x20Feedback\x20for:\x20','output','domRef','authorEmail','bftDv','browserSessionId','\x20\x20๐Ÿ’ฌ\x20','\x20\x20\x20Status:\x20','kHeuZ','checklistItems','UQScC','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','style','offset','write','filter','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','XRdRX','active-feature.txt','totalCount','\x20\x20\x20\x20\x20\x20Cancelled:\x20','isInteger','\x20\x20\x20Updated\x20branch\x20to:\x20','currentBranch','split','wHlBI','\x20\x20\x20ID:\x20','\x20>\x20','CUJJC','\x0aโŒ\x20All\x20scenarios\x20were\x20excluded.','exit','mdSpp','\x20\x20\x20\x20\x20๐ŸŽฏ\x20Element:\x20<','dpQWU','wlRgn','915892vZBmLO','pop','selector','name','1655164ktyche','sessionId','2077256fyljwo','stats','Bbzqf','oatVr','\x20\x20\x20Branch:\x20','\x0a๐Ÿ“\x20Sessions\x20for\x20feature\x20review:\x20','NJgLc','all','repeat','stdout','coordinates','KVKat','find','\x20\x20\x20Repository:\x20','textContent','3ZjkuYn','nEQCJ','\x1b[1m','canceledReason','eRMic','650346jHZNuK','short','log','\x20\x20\x20Completed:\x20','version','linkedSession','\x0aโžก๏ธ\x20\x20Set\x20as\x20active\x20feature\x20review','dapjo','agentResponse','screenshot','toFixed','wrKUE','\x0aโœ…\x20Scenario\x20added','/artifacts/','dSKwO','BAJYK','length','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','Wvtie','Cannot\x20conclude\x20session\x20with\x20status:\x20','assetType','pIhew','\x20\x20โœ…\x20No\x20feedback\x20to\x20address','iurVr','blockedReason','FYBHM','replace','\x20\x20\x20\x20\x20๐Ÿ“\x20Annotation:\x20','description','trimEnd','spatial','\x0aโŒ\x20Invalid\x20scenario\x20number(s):\x20','jVKis','Showing\x20','\x0aโŒ\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','incompleteReason','feedback-images','warn','\x20\x20\x20\x20\x20๐Ÿ“‹\x20Selector:\x20','currentSessionId','completedAt','in_progress','env','assetUrl','7NBzdsC','\x0aโŒ\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','kwwnA','\x20[has\x20reviewer\x20feedback]','ukIrx','GLviq','\x20\x20\x20Description:\x20','pAwEB','\x0aโœ…\x20Restored\x20feature\x20review:\x20','XojyL','gitRepoUrl','No\x20scenarios\x20found.','hNRDa','Unknown',':\x20\x22','\x0a๐Ÿ—‘๏ธ\x20\x20Deleted\x20feature\x20review:\x20','isTTY','AywlW','dhkIr','items','jYRZi','qGktc','Next\x20page:\x20ranger\x20list\x20--offset\x20','1|3|4|0|2|5','json','\x20verified','llcdm','\x0aAvailable\x20scenarios:','has'];_0x3c21=function(){return _0x66dfe2;};return _0x3c21();}import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5053a8 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=_0x302fd9(0x2a3),bold=_0xf52ce7=>_0x302fd9(0x2cb)+_0xf52ce7+_0x302fd9(0x25c);function getGitRepoUrl(){const _0x50afad=_0x302fd9,_0x14786f={'kQiec':function(_0x201754,_0x39d272,_0x219971){return _0x201754(_0x39d272,_0x219971);},'PFgUR':'pipe'};try{const _0x5b38be=_0x14786f[_0x50afad(0x252)](execSync,_0x50afad(0x28e),{'encoding':'utf-8','stdio':[_0x14786f[_0x50afad(0x247)],_0x50afad(0x270),_0x14786f[_0x50afad(0x247)]]})['trim']();return _0x5b38be[_0x50afad(0x210)](/\.git$/,'')[_0x50afad(0x210)](/^git@github\.com:/,'github.com/')[_0x50afad(0x210)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x13c2b3=_0x302fd9,_0x704c81={'lgXih':_0x13c2b3(0x270)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':'utf-8','stdio':['pipe',_0x704c81['lgXih'],_0x704c81['lgXih']]})[_0x13c2b3(0x263)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x46420c=_0x302fd9,_0x29971c={'Bbzqf':function(_0x1e46ba){return _0x1e46ba();},'OAupU':function(_0x4b6b89,_0x40fc26,_0x18fcc4){return _0x4b6b89(_0x40fc26,_0x18fcc4);},'AfzmW':_0x46420c(0x288)},_0x47ecac=join(_0x29971c[_0x46420c(0x2bc)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x47ecac))return null;try{const _0x1437bf=await _0x29971c['OAupU'](readFile,_0x47ecac,_0x29971c['AfzmW']);return _0x1437bf['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x154b0f){const _0x1cc611=_0x302fd9,_0x43ff4e={'hNRDa':function(_0x133b0d){return _0x133b0d();},'jvIfc':function(_0x2a6b85,_0x2f5ba7,_0x55ef55){return _0x2a6b85(_0x2f5ba7,_0x55ef55);},'ukIrx':function(_0x3566f0,_0x4e0b99,_0x1e9f5f){return _0x3566f0(_0x4e0b99,_0x1e9f5f);},'xXdcX':function(_0x2c67e3,_0x4f879a,_0x310202,_0x2dcb9b){return _0x2c67e3(_0x4f879a,_0x310202,_0x2dcb9b);}},_0x4b69f9=_0x43ff4e[_0x1cc611(0x22e)](getRangerDir),_0x6f1c76=_0x43ff4e['jvIfc'](join,_0x4b69f9,ACTIVE_FEATURE_FILE);!existsSync(_0x4b69f9)&&await _0x43ff4e[_0x1cc611(0x226)](mkdir,_0x4b69f9,{'recursive':!![]}),await _0x43ff4e['xXdcX'](writeFile,_0x6f1c76,_0x154b0f,_0x1cc611(0x288));}function getProgressDisplay(_0x3e2da6){const _0x4026b3=_0x302fd9,_0xd840ac={'yQXzq':function(_0x25cf2e,_0x179263){return _0x25cf2e===_0x179263;},'QPuoi':function(_0x3a177e,_0x33beb4){return _0x3a177e+_0x33beb4;},'TwTnT':function(_0x231f90,_0x56b9ef){return _0x231f90>_0x56b9ef;}},_0x50d3b3=_0x3e2da6['verifiedItems']||0x0,_0xdee0d4=_0x3e2da6[_0x4026b3(0x272)]||0x0,_0x319c30=_0x3e2da6[_0x4026b3(0x284)]||0x0,_0xf63cc3=_0x3e2da6['incompleteItems']||0x0,_0x19c446=_0x3e2da6['pendingItems']||0x0,_0x50af05=_0x50d3b3+_0xdee0d4+_0x319c30+_0xf63cc3+_0x19c446;if(_0xd840ac['yQXzq'](_0x50af05,0x0))return'-';const _0x29ad2c=0xa,_0x3469c2=Math[_0x4026b3(0x269)](_0x50d3b3/_0x50af05*_0x29ad2c),_0x250ab3=_0xd840ac['QPuoi']('โ–ˆ'[_0x4026b3(0x2c2)](_0x3469c2),'โ–‘'[_0x4026b3(0x2c2)](_0x29ad2c-_0x3469c2)),_0x529bd1=[];if(_0xd840ac['TwTnT'](_0x319c30,0x0))_0x529bd1['push'](_0x319c30+_0x4026b3(0x27e));if(_0xf63cc3>0x0)_0x529bd1['push'](_0xf63cc3+_0x4026b3(0x267));if(_0xd840ac['TwTnT'](_0xdee0d4,0x0))_0x529bd1['push'](_0xdee0d4+'\x20in\x20progress');const _0x1735ef=_0xd840ac['TwTnT'](_0x529bd1['length'],0x0)?'\x20('+_0x529bd1['join'](',\x20')+')':'';return _0x250ab3+'\x20'+_0x50d3b3+'/'+_0x50af05+_0x4026b3(0x23b)+_0x1735ef;}function getCurrentSessionItems(_0x2959ad,_0x1a9f98){const _0x39ff75=_0x302fd9;if(!_0x2959ad[_0x39ff75(0x21d)])return _0x1a9f98['filter'](_0x275bac=>!_0x275bac[_0x39ff75(0x2b9)]);return _0x1a9f98['filter'](_0x2e64c1=>_0x2e64c1[_0x39ff75(0x2b9)]===_0x2959ad['currentSessionId']||!_0x2e64c1[_0x39ff75(0x2b9)]);}function displayFeature(_0x180ff3,_0x2a9fda){const _0x5a6338=_0x302fd9,_0x35ff7f={'OwASm':function(_0x507137,_0x4e0f25){return _0x507137>_0x4e0f25;},'selmm':'\x0a\x20\x20\x20Scenarios:','oatVr':'closed','dhkIr':function(_0x3188cb,_0x255a1c){return _0x3188cb===_0x255a1c;},'THVlH':function(_0x29e042,_0x31b23e){return _0x29e042===_0x31b23e;},'FfnWU':'blocked','lgZUR':function(_0x580c05,_0x549d8e){return _0x580c05!==_0x549d8e;},'eRMic':_0x5a6338(0x225),'jVKis':function(_0x5ab693,_0x5ce1c7){return _0x5ab693===_0x5ce1c7;}};console['log']('\x0a'+_0x180ff3[_0x5a6338(0x2b7)]+'\x20('+_0x180ff3['dashboardUrl']+')');_0x180ff3[_0x5a6338(0x2bb)]&&console[_0x5a6338(0x1f8)](_0x5a6338(0x279)+getProgressDisplay(_0x180ff3['stats']));_0x180ff3[_0x5a6338(0x212)]&&console[_0x5a6338(0x1f8)](_0x5a6338(0x228)+_0x180ff3['description']);_0x180ff3[_0x5a6338(0x22c)]&&console[_0x5a6338(0x1f8)](_0x5a6338(0x2c7)+_0x180ff3['gitRepoUrl']);_0x180ff3['gitBranch']&&console['log'](_0x5a6338(0x2be)+_0x180ff3['gitBranch']);console[_0x5a6338(0x1f8)]('\x20\x20\x20Created:\x20'+new Date(_0x180ff3['createdAt'])['toLocaleString']());_0x180ff3['completedAt']&&console['log'](_0x5a6338(0x1f9)+new Date(_0x180ff3['completedAt'])['toLocaleString']());if(_0x2a9fda&&_0x35ff7f['OwASm'](_0x2a9fda['length'],0x0)){console[_0x5a6338(0x1f8)](_0x35ff7f['selmm']);for(let _0x4b8962=0x0;_0x4b8962<_0x2a9fda[_0x5a6338(0x206)];_0x4b8962++){const _0x422a62=_0x2a9fda[_0x4b8962];let _0xa4fbb8;if(_0x422a62[_0x5a6338(0x253)]===_0x35ff7f[_0x5a6338(0x2bd)]&&_0x35ff7f[_0x5a6338(0x234)](_0x422a62['terminalReason'],'approved'))_0xa4fbb8='โœ…';else{if(_0x35ff7f[_0x5a6338(0x243)](_0x422a62[_0x5a6338(0x253)],_0x5a6338(0x260)))_0xa4fbb8='๐ŸŸข';else{if(_0x422a62[_0x5a6338(0x253)]==='incomplete')_0xa4fbb8='๐ŸŸ ';else{if(_0x422a62['status']===_0x35ff7f['FfnWU'])_0xa4fbb8='๐Ÿ›‘';else{if(_0x422a62[_0x5a6338(0x253)]===_0x35ff7f['oatVr'])_0xa4fbb8='โ›”';else _0x422a62['status']==='verification_in_progress'?_0xa4fbb8='โณ':_0xa4fbb8='โฌœ';}}}}const _0x232de8=_0x35ff7f[_0x5a6338(0x250)](_0x422a62['version'],0x1)?'\x20(v'+_0x422a62['version']+')':'',_0x3abab5=_0x422a62[_0x5a6338(0x1fa)]>0x1&&_0x422a62['parentItemId']&&_0x35ff7f['lgZUR'](_0x422a62['status'],_0x35ff7f[_0x5a6338(0x2bd)])&&_0x422a62[_0x5a6338(0x253)]!==_0x5a6338(0x260)?_0x35ff7f[_0x5a6338(0x1f5)]:'';console[_0x5a6338(0x1f8)]('\x20\x20\x20'+(_0x4b8962+0x1)+'.\x20'+_0xa4fbb8+'\x20'+_0x422a62[_0x5a6338(0x212)]+_0x232de8+_0x3abab5);_0x35ff7f['THVlH'](_0x422a62[_0x5a6338(0x253)],'blocked')&&_0x422a62[_0x5a6338(0x20e)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x422a62[_0x5a6338(0x20e)]);_0x422a62['status']===_0x5a6338(0x25f)&&_0x422a62['incompleteReason']&&console[_0x5a6338(0x1f8)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x422a62[_0x5a6338(0x219)]);if(_0x35ff7f['THVlH'](_0x422a62[_0x5a6338(0x253)],_0x35ff7f['oatVr'])&&_0x35ff7f['dhkIr'](_0x422a62['terminalReason'],'approved'))console[_0x5a6338(0x1f8)]('\x20\x20\x20\x20\x20\x20Approved');else _0x35ff7f[_0x5a6338(0x216)](_0x422a62['status'],'closed')&&_0x422a62['canceledReason']&&console[_0x5a6338(0x1f8)](_0x5a6338(0x2a5)+_0x422a62['canceledReason']);}}}export async function featureCreate(_0x114132,_0x21fcf8){const _0x49f5b2=_0x302fd9,_0x1083bb={'RcPIi':function(_0x130660){return _0x130660();},'pIhew':function(_0x4a9099,_0x5c9a21){return _0x4a9099===_0x5c9a21;},'RfnXY':function(_0x51b5d4,_0x5aa7bc){return _0x51b5d4(_0x5aa7bc);},'qGktc':function(_0x48ac83){return _0x48ac83();},'KlliD':function(_0x285610,_0x4f2351){return _0x285610(_0x4f2351);},'RuwUO':function(_0x34ec36,_0xd39e0a,_0x1945a5){return _0x34ec36(_0xd39e0a,_0x1945a5);}},{envNames:_0x4b9393}=await _0x1083bb['RcPIi'](getEnvNames);_0x1083bb[_0x49f5b2(0x20b)](_0x4b9393['length'],0x0)&&console[_0x49f5b2(0x21b)]('\x0a'+_0x1083bb[_0x49f5b2(0x249)](formatProfileRequiredMessage,_0x27807f=>bold(_0x27807f)));const _0xe30fb0=_0x21fcf8['scenarios']?_0x21fcf8[_0x49f5b2(0x242)]['map'](_0x5aba9c=>_0x5aba9c[_0x49f5b2(0x263)]()):[],_0x395157=_0x1083bb[_0x49f5b2(0x237)](getGitRepoUrl),_0x43af98=getGitBranch();console[_0x49f5b2(0x1f8)]('\x0aCreating\x20feature\x20review...');const _0x2c2311=await _0x1083bb['KlliD'](createFeature,{'name':_0x114132,'description':_0x21fcf8['description'],'checklist':_0xe30fb0,'gitRepoUrl':_0x395157,'gitBranch':_0x43af98});await setActiveFeatureId(_0x2c2311['id']),await _0x1083bb['KlliD'](tryStartCurrentSession,_0x2c2311['id']);const _0x43f3a6=process['env'][_0x49f5b2(0x28b)];_0x43f3a6&&registerSession(_0x43f3a6,_0x2c2311['id']),console[_0x49f5b2(0x1f8)]('\x0aโœ…\x20Feature\x20review\x20created:\x20'+_0x2c2311['id']),_0x1083bb['RuwUO'](displayFeature,_0x2c2311,_0x2c2311[_0x49f5b2(0x29a)]),console['log'](_0x49f5b2(0x1fc));}export async function featureList(_0x41d90c){const _0x2c9b47=_0x302fd9,_0x39458f={'uSFHN':function(_0x4fac0f){return _0x4fac0f();},'vuUiq':function(_0x2e94cf,_0x30004d){return _0x2e94cf(_0x30004d);},'GsRJF':function(_0x1c9537,_0x3fc442){return _0x1c9537===_0x3fc442;},'WBgnn':function(_0x54c233,_0xb5d361){return _0x54c233>_0xb5d361;},'IThgk':function(_0x49bdb7,_0x3540e6){return _0x49bdb7(_0x3540e6);},'zQjaJ':'\x20--include-deleted'},_0x20a7fc={'limit':_0x41d90c[_0x2c9b47(0x28a)]??0xa,'offset':_0x41d90c['offset']??0x0,'includeDeleted':_0x41d90c['includeDeleted']};_0x41d90c[_0x2c9b47(0x2a8)]&&(_0x20a7fc[_0x2c9b47(0x22c)]=_0x39458f['uSFHN'](getGitRepoUrl),_0x20a7fc[_0x2c9b47(0x26b)]=getGitBranch());const _0x2a396f=await _0x39458f['vuUiq'](listFeatures,_0x20a7fc);if(_0x39458f[_0x2c9b47(0x266)](_0x2a396f['items']['length'],0x0)){console['log']('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x166e95=_0x39458f['WBgnn'](_0x2a396f['totalCount'],_0x2a396f['items'][_0x2c9b47(0x206)])?_0x2c9b47(0x217)+_0x2a396f[_0x2c9b47(0x235)]['length']+_0x2c9b47(0x245)+_0x2a396f[_0x2c9b47(0x2a4)]:_0x2a396f['totalCount']+_0x2c9b47(0x282);console['log']('\x0a'+_0x166e95+':\x0a');for(const _0x2060e7 of _0x2a396f['items']){const _0x800b84=_0x2c9b47(0x239)[_0x2c9b47(0x2a9)]('|');let _0x21559b=0x0;while(!![]){switch(_0x800b84[_0x21559b++]){case'0':_0x2060e7['gitBranch']&&console[_0x2c9b47(0x1f8)]('\x20\x20\x20Branch:\x20'+_0x2060e7['gitBranch']);continue;case'1':console['log'](''+_0x2060e7['name']);continue;case'2':console[_0x2c9b47(0x1f8)](_0x2c9b47(0x274)+new Date(_0x2060e7[_0x2c9b47(0x28d)])[_0x2c9b47(0x278)]());continue;case'3':console[_0x2c9b47(0x1f8)](_0x2c9b47(0x2ab)+_0x2060e7['id']);continue;case'4':_0x2060e7['stats']&&console['log'](_0x2c9b47(0x279)+_0x39458f['IThgk'](getProgressDisplay,_0x2060e7['stats']));continue;case'5':console['log']('');continue;}break;}}const _0xc7c64d=_0x20a7fc['limit']??0xa,_0x4b3537=(_0x20a7fc[_0x2c9b47(0x29e)]??0x0)+_0x2a396f['items']['length'];if(_0x4b3537<_0x2a396f[_0x2c9b47(0x2a4)]){const _0x3d789a=_0xc7c64d!==0xa?'\x20--limit\x20'+_0xc7c64d:'',_0x576e5d=_0x41d90c[_0x2c9b47(0x2a8)]?_0x2c9b47(0x280):'',_0x4cd646=_0x41d90c['includeDeleted']?_0x39458f['zQjaJ']:'';console[_0x2c9b47(0x1f8)](_0x2c9b47(0x238)+_0x4b3537+_0x3d789a+_0x576e5d+_0x4cd646);}}export async function featureShow(_0xb1ff50){const _0x38e770=_0x302fd9,_0x412ddd={'YpcEv':_0x38e770(0x2a1),'MIdvK':function(_0x4b4485,_0x199136){return _0x4b4485(_0x199136);}},_0x4ee5fb=_0xb1ff50||await getActiveFeatureId();if(!_0x4ee5fb)throw new Error(_0x412ddd['YpcEv']);const _0x1c998b=await _0x412ddd['MIdvK'](getFeature,_0x4ee5fb);displayFeature(_0x1c998b,_0x1c998b[_0x38e770(0x29a)]);}export async function featureResume(_0x3a5cd1){const _0x31dc61=_0x302fd9,_0x5556f7={'yHiEz':function(_0x17eabe){return _0x17eabe();},'ERwNj':function(_0x292ea2,_0x5be588,_0x52a51f){return _0x292ea2(_0x5be588,_0x52a51f);},'IGPZq':function(_0x269950,_0x19e675){return _0x269950(_0x19e675);},'OBOTf':'Not\x20in\x20a\x20git\x20repository.','FRVOf':function(_0x54c275,_0x1af825){return _0x54c275||_0x1af825;},'Wvtie':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','SRfgc':function(_0x1ac292,_0x3e8718){return _0x1ac292===_0x3e8718;},'dapjo':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','AuVla':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','PbHTC':function(_0x24e677,_0x14075b){return _0x24e677(_0x14075b);},'mdSpp':function(_0xe51489,_0x1f275d){return _0xe51489!==_0x1f275d;},'NJgLc':function(_0x30755c,_0x50dd81){return _0x30755c(_0x50dd81);}};if(_0x3a5cd1){const _0x1fd9b5=await getFeature(_0x3a5cd1);await setActiveFeatureId(_0x1fd9b5['id']);const _0x1110e5=_0x5556f7['yHiEz'](getGitBranch);_0x1110e5&&_0x1110e5!==_0x1fd9b5[_0x31dc61(0x26b)]&&(await _0x5556f7['ERwNj'](updateFeature,_0x1fd9b5['id'],{'gitBranch':_0x1110e5}),console[_0x31dc61(0x1f8)](_0x31dc61(0x2a7)+_0x1110e5));console[_0x31dc61(0x1f8)](_0x31dc61(0x26a)+_0x1fd9b5[_0x31dc61(0x2b7)]+'\x20('+_0x1fd9b5['id']+')'),await tryStartCurrentSession(_0x1fd9b5['id']);const _0x4d4ece=process['env']['CLAUDE_SESSION_ID'];_0x4d4ece&&_0x5556f7['ERwNj'](registerSession,_0x4d4ece,_0x1fd9b5['id']);displayFeature(_0x1fd9b5,_0x1fd9b5[_0x31dc61(0x29a)]),await _0x5556f7['IGPZq'](printFeedbackNudge,_0x1fd9b5['id']);return;}const _0x46b8f5=getGitRepoUrl(),_0x53414c=getGitBranch();if(!_0x46b8f5&&!_0x53414c)throw new Error(_0x5556f7['OBOTf']);console['log'](_0x31dc61(0x251)+_0x5556f7['FRVOf'](_0x46b8f5,'any')+'\x20/\x20'+(_0x53414c||_0x31dc61(0x268))+'...');const _0x262b84=await listFeatures({'gitRepoUrl':_0x46b8f5,'gitBranch':_0x53414c}),_0x16d439=_0x262b84['items']['filter'](_0x19d139=>_0x19d139['status']?_0x19d139['status']!=='verified':!_0x19d139['completedAt']);if(_0x16d439[_0x31dc61(0x206)]===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x5556f7[_0x31dc61(0x208)]);return;}let _0x55348e;if(_0x5556f7[_0x31dc61(0x254)](_0x16d439['length'],0x1))_0x55348e=_0x16d439[0x0];else{const _0x32c816=process['stdin'][_0x31dc61(0x232)]&&process[_0x31dc61(0x2c3)][_0x31dc61(0x232)];if(!_0x32c816){console[_0x31dc61(0x1f8)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x4d0ade of _0x16d439){console[_0x31dc61(0x1f8)]('\x20\x20'+_0x4d0ade['name']),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x4d0ade['id']),_0x4d0ade['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x4d0ade['stats'])),_0x4d0ade[_0x31dc61(0x26b)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x4d0ade['gitBranch']);}throw new Error(_0x5556f7[_0x31dc61(0x1fd)]);}const {selected:_0xd811c5}=await _0x5053a8['prompt']([{'type':'list','name':'selected','message':_0x5556f7[_0x31dc61(0x262)],'choices':_0x16d439['map'](_0x1aa6f3=>({'name':_0x1aa6f3[_0x31dc61(0x2b7)]+'\x20('+_0x1aa6f3['id']+')','value':_0x1aa6f3['id']}))}]);_0x55348e=_0x16d439['find'](_0x3370e3=>_0x3370e3['id']===_0xd811c5);}await _0x5556f7[_0x31dc61(0x246)](setActiveFeatureId,_0x55348e['id']);_0x53414c&&_0x5556f7[_0x31dc61(0x2b0)](_0x53414c,_0x55348e['gitBranch'])&&(await updateFeature(_0x55348e['id'],{'gitBranch':_0x53414c}),console[_0x31dc61(0x1f8)](_0x31dc61(0x2a7)+_0x53414c));console[_0x31dc61(0x1f8)]('\x0aโœ…\x20Resumed\x20feature\x20review:\x20'+_0x55348e['name']+'\x20('+_0x55348e['id']+')'),await _0x5556f7[_0x31dc61(0x2c0)](tryStartCurrentSession,_0x55348e['id']);const _0x16fbcb=await getFeature(_0x55348e['id']),_0x101f64=process[_0x31dc61(0x220)]['CLAUDE_SESSION_ID'];_0x101f64&&_0x5556f7['ERwNj'](registerSession,_0x101f64,_0x16fbcb['id']),_0x5556f7['ERwNj'](displayFeature,_0x16fbcb,_0x16fbcb['checklistItems']),await printFeedbackNudge(_0x16fbcb['id']);}async function printFeedbackNudge(_0x26c882){const _0x3d32e0=_0x302fd9,_0x2dc10={'KVKat':function(_0x42350e,_0x2bd03e){return _0x42350e(_0x2bd03e);},'iqfNw':function(_0x510499,_0x2958fa){return _0x510499>_0x2958fa;},'dRzBI':_0x3d32e0(0x25e)};try{const {items:_0x2c7732}=await _0x2dc10[_0x3d32e0(0x2c5)](getActionItems,_0x26c882);let _0x52f1f6=0x0,_0x492bfd=0x0;for(const _0x281ae6 of _0x2c7732){const _0x3bdbde=await getItemFeedback(_0x26c882,_0x281ae6['id']);_0x2dc10[_0x3d32e0(0x25a)](_0x3bdbde[_0x3d32e0(0x24b)]['length'],0x0)&&(_0x52f1f6+=_0x3bdbde['unaddressedComments'][_0x3d32e0(0x206)],_0x492bfd++);}_0x52f1f6>0x0&&(console[_0x3d32e0(0x1f8)](_0x3d32e0(0x290)+_0x52f1f6+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x492bfd+_0x3d32e0(0x24c)),console['log'](_0x2dc10[_0x3d32e0(0x27c)]));}catch{}}async function tryStartCurrentSession(_0x1cabd6){const _0x26e84d=_0x302fd9,_0x160599={'SDBRc':function(_0x463034,_0x409348,_0x5375bc){return _0x463034(_0x409348,_0x5375bc);}};try{const {sessions:_0x23ef20}=await listFeatureSessions(_0x1cabd6),_0x3ae793=_0x23ef20[_0x26e84d(0x2c6)](_0xe017f7=>_0xe017f7[_0x26e84d(0x253)]==='ready');_0x3ae793&&(await _0x160599[_0x26e84d(0x24a)](startSession,_0x1cabd6,_0x3ae793['id']),console[_0x26e84d(0x1f8)]('\x20\x20\x20โ–ถ๏ธ\x20Started\x20session\x20'+_0x3ae793['iteration']));}catch{}}export async function featureReport(_0x248f28,_0x16dac6){const _0x32e489=_0x302fd9,_0x19b755={'RrJiE':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','eANQA':function(_0x1328ea){return _0x1328ea();},'ltwvk':'reports','kJlxn':function(_0x1afa07,_0x41ed1b,_0x5ea0af){return _0x1afa07(_0x41ed1b,_0x5ea0af);},'GMfVZ':function(_0x2bb357,_0x575dc1){return _0x2bb357(_0x575dc1);},'kwwnA':function(_0x1c7227,_0x48085e,_0x297b53,_0x1cd35b){return _0x1c7227(_0x48085e,_0x297b53,_0x1cd35b);}},_0xc0f7fc=_0x248f28||await getActiveFeatureId();if(!_0xc0f7fc)throw new Error(_0x19b755['RrJiE']);console[_0x32e489(0x1f8)]('\x0aGenerating\x20report...');const _0x257674=await getFeatureReportMarkdown(_0xc0f7fc,{'style':_0x16dac6[_0x32e489(0x29d)]}),_0x5348b6=_0x16dac6[_0x32e489(0x292)]||join(_0x19b755['eANQA'](getRangerDir),_0x19b755['ltwvk'],_0xc0f7fc+_0x32e489(0x24e)),_0x1e99cf=_0x19b755['kJlxn'](join,_0x5348b6,'..');!_0x19b755['GMfVZ'](existsSync,_0x1e99cf)&&await mkdir(_0x1e99cf,{'recursive':!![]}),await _0x19b755[_0x32e489(0x224)](writeFile,_0x5348b6,_0x257674,'utf-8'),console['log'](_0x32e489(0x273)+_0x5348b6);}function getScenarioResult(_0x4602af){const _0x5cdd1e=_0x302fd9,_0x57d014={'kpfZZ':function(_0x59b65e,_0x2fb122){return _0x59b65e===_0x2fb122;},'SdXhM':function(_0x5da745,_0x4fbb0b){return _0x5da745===_0x4fbb0b;}};if(_0x57d014[_0x5cdd1e(0x255)](_0x4602af[_0x5cdd1e(0x253)],'closed'))return _0x4602af['terminalReason']??'closed';if(_0x57d014[_0x5cdd1e(0x276)](_0x4602af['status'],'verification_in_progress'))return _0x5cdd1e(0x21f);return _0x4602af['status'];}function getScenarioRationale(_0x348347,_0x458af3){const _0xf110f2=_0x302fd9;if(_0x458af3)return _0x458af3;if(_0x348347['blockedReason'])return _0x348347[_0xf110f2(0x20e)];if(_0x348347[_0xf110f2(0x219)])return _0x348347['incompleteReason'];if(_0x348347['canceledReason'])return _0x348347[_0xf110f2(0x1f4)];if(_0x348347['notes'])return _0x348347['notes'];return null;}export async function featureReportPrDescription(_0x3f9a3f,_0x46e63a){const _0x4b8bef=_0x302fd9,_0x3a2ebe={'eKmjA':function(_0x25e779,_0x10e8c1,_0x2d654e){return _0x25e779(_0x10e8c1,_0x2d654e);},'BAJYK':function(_0x1d8438,_0x3f74d1){return _0x1d8438===_0x3f74d1;},'zVQPM':_0x4b8bef(0x2ae)},_0x25c8ee=_0x3f9a3f||await getActiveFeatureId();if(!_0x25c8ee)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x515f39=await getFeature(_0x25c8ee),_0x5820e8=_0x515f39[_0x4b8bef(0x29a)]||[],_0x1f2e5e=_0x3a2ebe['eKmjA'](getCurrentSessionItems,_0x515f39,_0x5820e8);_0x1f2e5e['length']===0x0&&(console[_0x4b8bef(0x256)]('\x0aโŒ\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x23038c=_0x46e63a['excludeScenarios']??[],_0xeb2c5c=_0x23038c[_0x4b8bef(0x2a0)](_0x415c66=>!Number[_0x4b8bef(0x2a6)](_0x415c66)||_0x415c66<0x1||_0x415c66>_0x1f2e5e['length']);if(_0xeb2c5c['length']>0x0){console['error'](_0x4b8bef(0x215)+_0xeb2c5c['join'](',\x20')),console[_0x4b8bef(0x1f8)]('\x0aAvailable\x20scenarios:');for(let _0x2051d5=0x0;_0x2051d5<_0x1f2e5e[_0x4b8bef(0x206)];_0x2051d5++){console[_0x4b8bef(0x1f8)]('\x20\x20'+(_0x2051d5+0x1)+'.\x20'+_0x1f2e5e[_0x2051d5]['description']);}process[_0x4b8bef(0x2af)](0x1);}const _0x315b7f=new Set(_0x23038c['map'](_0x352bc9=>_0x352bc9-0x1)),_0x111c5f=_0x1f2e5e['filter']((_0x3c742e,_0x462bd0)=>!_0x315b7f[_0x4b8bef(0x23e)](_0x462bd0));_0x3a2ebe[_0x4b8bef(0x205)](_0x111c5f['length'],0x0)&&(console['error'](_0x3a2ebe[_0x4b8bef(0x26c)]),process[_0x4b8bef(0x2af)](0x1));if(_0x46e63a[_0x4b8bef(0x23a)])await outputJsonReport(_0x25c8ee,_0x515f39,_0x111c5f);else{const _0x34ff6e=await getFeatureReportMarkdown(_0x25c8ee,{'itemIds':_0x111c5f[_0x4b8bef(0x258)](_0x348b5b=>_0x348b5b['id'])});process['stdout'][_0x4b8bef(0x29f)](_0x34ff6e[_0x4b8bef(0x213)]()+'\x0a');}}async function outputJsonReport(_0x2b8261,_0x5b6520,_0x589bcf){const _0x3d974b=_0x302fd9,_0x15bea6={'lsNoz':function(_0xab0b11,_0x437000){return _0xab0b11(_0x437000);},'qVoxr':function(_0x1af1a1,_0x5dabc0){return _0x1af1a1+_0x5dabc0;}},_0x14f1fd=getApiBaseUrl(),_0x1a2442=await getFeatureReport(_0x2b8261),_0x4dcea5=new Map(_0x1a2442[_0x3d974b(0x29a)]['map'](_0x65ad3a=>[_0x65ad3a['id'],_0x65ad3a])),_0x451610=await Promise[_0x3d974b(0x2c1)](_0x589bcf['map'](async _0x5d885c=>{const _0x1d8c8c=_0x3d974b,_0x359caa=_0x4dcea5['get'](_0x5d885c['id']),_0x260fc7=_0x359caa?.[_0x1d8c8c(0x1fb)]??null;let _0x103a5e=[];if(_0x5d885c[_0x1d8c8c(0x296)])try{const {steps:_0x3d5593}=await getBrowserSessionSteps(_0x5d885c['browserSessionId']);_0x3d5593[_0x1d8c8c(0x206)]>0x0&&(_0x103a5e=_0x3d5593['map'](_0xe99f19=>{const _0x5b779c=_0x1d8c8c,_0x386e46=_0xe99f19['assets'][_0x5b779c(0x2c6)](_0x35bce5=>_0x35bce5['assetType']===_0x5b779c(0x1ff)&&_0x35bce5['timing']==='after')??_0xe99f19['assets']['find'](_0x356166=>_0x356166[_0x5b779c(0x20a)]===_0x5b779c(0x1ff));let _0xf0a209=null,_0x2200f0=null;if(_0x386e46){const _0x4e6a3b=_0x386e46['storage']['location']['split']('/')[_0x5b779c(0x2b5)]();_0xf0a209=_0x14f1fd+_0x5b779c(0x23f)+_0x5d885c['browserSessionId']+_0x5b779c(0x203)+_0x4e6a3b,_0x4e6a3b&&(_0x2200f0=_0x4e6a3b[_0x5b779c(0x210)](/\.\w+$/,'')[_0x5b779c(0x210)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x2200f0||_0xe99f19['description']||_0xe99f19['stepName']||_0x5b779c(0x283)+_0xe99f19[_0x5b779c(0x26e)],'screenshot':_0xf0a209,'is_key_step':_0xe99f19['isKeyStep']};}));}catch{}return _0x103a5e[_0x1d8c8c(0x206)]===0x0&&_0x260fc7?.['screenshotUrls']&&(_0x103a5e=_0x260fc7[_0x1d8c8c(0x28f)][_0x1d8c8c(0x258)]((_0x26c797,_0x12c0b8)=>({'description':'Screenshot\x20'+(_0x12c0b8+0x1),'screenshot':_0x26c797,'is_key_step':![]}))),{'description':_0x5d885c['description'],'result':_0x15bea6[_0x1d8c8c(0x287)](getScenarioResult,_0x5d885c),'rationale':getScenarioRationale(_0x5d885c,_0x260fc7?.[_0x1d8c8c(0x1fe)]),'steps':_0x103a5e};})),_0x2dfefb={'url':_0x5b6520[_0x3d974b(0x286)],'scenarios':_0x451610};process[_0x3d974b(0x2c3)][_0x3d974b(0x29f)](_0x15bea6['qVoxr'](JSON['stringify'](_0x2dfefb,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x3c07b9){const _0x4db102=_0x302fd9,_0x11feca={'llcdm':function(_0x5c7ff7){return _0x5c7ff7();},'XRdRX':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','QlpgH':_0x4db102(0x265),'iurVr':function(_0x262a8c,_0x35ed5d){return _0x262a8c(_0x35ed5d);},'pJbGU':_0x4db102(0x289),'dSKwO':function(_0x5b8e5a,_0x3ca6cd){return _0x5b8e5a===_0x3ca6cd;},'wXxvD':_0x4db102(0x27b),'OAynC':'in_progress','CUJJC':'\x0aConcluding\x20session...','wrKUE':function(_0x20e816,_0x2106da,_0x50399f){return _0x20e816(_0x2106da,_0x50399f);}},_0x2ed829=_0x3c07b9||await _0x11feca[_0x4db102(0x23c)](getActiveFeatureId);if(!_0x2ed829)throw new Error(_0x11feca[_0x4db102(0x2a2)]);const _0x38cde0=await getFeature(_0x2ed829);if(!_0x38cde0[_0x4db102(0x21d)])throw new Error(_0x11feca['QlpgH']);const {sessions:_0x305db9}=await _0x11feca[_0x4db102(0x20d)](listFeatureSessions,_0x2ed829),_0xe94cb6=_0x305db9['find'](_0x419054=>_0x419054['id']===_0x38cde0['currentSessionId']);if(!_0xe94cb6)throw new Error(_0x11feca[_0x4db102(0x25d)]);if(_0x11feca[_0x4db102(0x204)](_0xe94cb6['status'],_0x11feca['wXxvD'])){console['log']('\x0aโœ…\x20Session\x20is\x20already\x20completed.');return;}if(_0xe94cb6[_0x4db102(0x253)]!==_0x11feca['OAynC'])throw new Error(_0x4db102(0x209)+_0xe94cb6['status']);console[_0x4db102(0x1f8)](_0x11feca[_0x4db102(0x2ad)]),await _0x11feca[_0x4db102(0x201)](concludeSession,_0x2ed829,_0x38cde0[_0x4db102(0x21d)]),console[_0x4db102(0x1f8)]('\x0aโœ…\x20Session\x20'+_0xe94cb6['iteration']+'\x20concluded.'),console['log'](_0x4db102(0x29c));}export async function featureSessions(_0x1c52b9){const _0x1d413e=_0x302fd9,_0x528c61={'jRKFG':function(_0x152270,_0x4f9c1d){return _0x152270(_0x4f9c1d);},'kHeuZ':function(_0x4f0fbd,_0x22a464){return _0x4f0fbd===_0x22a464;},'nEQCJ':'completed'},_0x19fd8c=_0x1c52b9||await getActiveFeatureId();if(!_0x19fd8c)throw new Error(_0x1d413e(0x257));const _0x5a1338=await _0x528c61['jRKFG'](getFeature,_0x19fd8c);console['log'](_0x1d413e(0x2bf)+_0x5a1338[_0x1d413e(0x2b7)]+'\x0a');const {sessions:_0x4b7b94}=await _0x528c61['jRKFG'](listFeatureSessions,_0x19fd8c);if(_0x4b7b94[_0x1d413e(0x206)]===0x0){console['log']('No\x20sessions\x20found.');return;}for(const _0x12a662 of _0x4b7b94){const _0x2c8a40=_0x528c61[_0x1d413e(0x299)](_0x12a662['status'],_0x528c61[_0x1d413e(0x2ca)])?'โœ…':_0x12a662['status']==='in_progress'?'๐Ÿ”„':'โ–ถ๏ธ';console['log'](_0x2c8a40+'\x20Session\x20'+_0x12a662['iteration']+'\x20('+_0x12a662['id']+')'),console['log'](_0x1d413e(0x298)+_0x12a662['status']),console[_0x1d413e(0x1f8)]('\x20\x20\x20Created:\x20'+new Date(_0x12a662['createdAt'])[_0x1d413e(0x25b)]()),_0x12a662['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x12a662[_0x1d413e(0x21e)])['toLocaleString']()),console[_0x1d413e(0x1f8)]('');}}export async function featureAddScenario(_0xff3516,_0x522596){const _0x32fc60=_0x302fd9,_0x128084={'WUvBC':function(_0x11abf7){return _0x11abf7();},'bftDv':_0x32fc60(0x2a1)},_0x2c8b1f=_0x522596||await _0x128084['WUvBC'](getActiveFeatureId);if(!_0x2c8b1f)throw new Error(_0x128084[_0x32fc60(0x295)]);const _0x5189a0=await getFeature(_0x2c8b1f);if(_0x5189a0['latestReview']&&!_0x5189a0['latestReview']['submittedAt'])throw new Error(_0x32fc60(0x207)+_0x5189a0['dashboardUrl']);await createChecklistItem(_0x2c8b1f,_0xff3516);const _0x18c647=await getFeature(_0x2c8b1f);console[_0x32fc60(0x1f8)](_0x32fc60(0x202)),displayFeature(_0x18c647,_0x18c647['checklistItems']);}export async function featureEditScenario(_0xc48507,_0xd8d213){const _0x3f6548=_0x302fd9,_0x2e424e={'qbsjc':function(_0x2fcc43){return _0x2fcc43();},'xGCmd':function(_0x9322,_0x1d9eef){return _0x9322(_0x1d9eef);},'xdlTK':_0x3f6548(0x223),'gAwtd':'\x0aโŒ\x20No\x20scenarios\x20found\x20to\x20edit.','FYBHM':function(_0x59c008,_0x216fd5){return _0x59c008===_0x216fd5;},'XojyL':function(_0x49a778,_0x5f0388){return _0x49a778-_0x5f0388;},'NbcJt':_0x3f6548(0x23d),'wHlBI':function(_0x4dada0,_0x578fc3){return _0x4dada0+_0x578fc3;}},_0x36e844=_0xd8d213['id']||await _0x2e424e['qbsjc'](getActiveFeatureId);!_0x36e844&&(console[_0x3f6548(0x256)](_0x3f6548(0x218)),console[_0x3f6548(0x256)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x3f6548(0x2af)](0x1));const _0x4692ed=await _0x2e424e[_0x3f6548(0x264)](getFeature,_0x36e844);_0x4692ed[_0x3f6548(0x275)]&&!_0x4692ed[_0x3f6548(0x275)]['submittedAt']&&(console[_0x3f6548(0x256)](_0x2e424e['xdlTK']),console[_0x3f6548(0x256)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x3f6548(0x256)]('\x20\x20'+_0x4692ed[_0x3f6548(0x286)]),process['exit'](0x1));const _0x17de6e=_0x4692ed[_0x3f6548(0x29a)]||[];_0x17de6e[_0x3f6548(0x206)]===0x0&&(console['error'](_0x2e424e['gAwtd']),process['exit'](0x1));if(_0x2e424e[_0x3f6548(0x20f)](_0xd8d213[_0x3f6548(0x277)],undefined)){console['error']('\x0aโŒ\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x3f6548(0x23d));for(let _0x2cb214=0x0;_0x2cb214<_0x17de6e['length'];_0x2cb214++){console['log']('\x20\x20'+(_0x2cb214+0x1)+'.\x20'+_0x17de6e[_0x2cb214][_0x3f6548(0x212)]);}process[_0x3f6548(0x2af)](0x1);}const _0x3bd48a=_0x2e424e[_0x3f6548(0x22b)](_0xd8d213['scenario'],0x1);if(_0x3bd48a<0x0||_0x3bd48a>=_0x17de6e['length']){console[_0x3f6548(0x256)](_0x3f6548(0x240)+_0xd8d213[_0x3f6548(0x277)]+'.\x20Feature\x20review\x20has\x20'+_0x17de6e['length']+_0x3f6548(0x259)),console['log'](_0x2e424e['NbcJt']);for(let _0x240daf=0x0;_0x240daf<_0x17de6e['length'];_0x240daf++){console[_0x3f6548(0x1f8)]('\x20\x20'+_0x2e424e[_0x3f6548(0x2aa)](_0x240daf,0x1)+'.\x20'+_0x17de6e[_0x240daf]['description']);}process[_0x3f6548(0x2af)](0x1);}const _0x3cbcd7=_0x17de6e[_0x3bd48a];await updateChecklistItem(_0x36e844,_0x3cbcd7['id'],{'description':_0xc48507});const _0x4cd8de=await getFeature(_0x36e844);console['log']('\x0aโœ…\x20Scenario\x20updated'),displayFeature(_0x4cd8de,_0x4cd8de['checklistItems']);}async function downloadFeedbackImage(_0x1a68dd,_0x15d208){const _0x525bec=_0x302fd9,_0x263775={'GLviq':function(_0x1b2952,_0x3b879e,_0x648c46){return _0x1b2952(_0x3b879e,_0x648c46);},'OloOp':function(_0x20d068){return _0x20d068();},'RNhvZ':_0x525bec(0x21a),'shFQP':function(_0x488c88,_0x4d12ca){return _0x488c88(_0x4d12ca);}};try{const _0xfaf4f1=_0x263775['GLviq'](join,_0x263775['OloOp'](getRangerDir),_0x263775[_0x525bec(0x248)]);await _0x263775[_0x525bec(0x227)](mkdir,_0xfaf4f1,{'recursive':!![]});const _0x50a2d5=join(_0xfaf4f1,'comment_'+_0x15d208+'.png'),_0xc30079=await _0x263775[_0x525bec(0x271)](fetch,_0x1a68dd);if(!_0xc30079['ok'])return null;const _0x11df3c=Buffer['from'](await _0xc30079['arrayBuffer']());return await writeFile(_0x50a2d5,_0x11df3c),_0x50a2d5;}catch{return null;}}export async function featureGetReview(_0x3c55a0){const _0xaba81c=_0x302fd9,_0x31054b={'xLBGx':function(_0x54ef73){return _0x54ef73();},'HCDak':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','FsLEB':function(_0xcefc5,_0x33cc63){return _0xcefc5(_0x33cc63);},'dpQWU':function(_0x26f618,_0x5c9378){return _0x26f618>_0x5c9378;},'pAwEB':function(_0x2c9ede,_0x27475b){return _0x2c9ede+_0x27475b;},'uhRdO':'numeric','jYRZi':_0xaba81c(0x22f),'AywlW':function(_0x4bc692,_0x1bb2cb,_0x88a283){return _0x4bc692(_0x1bb2cb,_0x88a283);},'UQScC':function(_0x2fd29a,_0x5dfee7){return _0x2fd29a===_0x5dfee7;},'wlRgn':'point'},_0x5e8587=_0x3c55a0||await _0x31054b['xLBGx'](getActiveFeatureId);if(!_0x5e8587)throw new Error(_0x31054b[_0xaba81c(0x281)]);const _0x11bdc2=await _0x31054b['FsLEB'](getFeature,_0x5e8587),{items:_0x258b53}=await getActionItems(_0x5e8587);console[_0xaba81c(0x1f8)](_0xaba81c(0x291)+_0x11bdc2[_0xaba81c(0x2b7)]+'\x20('+_0x11bdc2['id']+')\x0a');if(_0x258b53['length']===0x0){console[_0xaba81c(0x1f8)](_0xaba81c(0x22d));return;}for(let _0x5d600e=0x0;_0x5d600e<_0x258b53[_0xaba81c(0x206)];_0x5d600e++){const _0x55d908=_0x258b53[_0x5d600e],_0x25073f=_0x55d908['version']>0x1?'\x20(v'+_0x55d908[_0xaba81c(0x1fa)]+')':'',_0x104cac=await getItemFeedback(_0x5e8587,_0x55d908['id']);if(_0x31054b[_0xaba81c(0x2b2)](_0x104cac['unaddressedComments'][_0xaba81c(0x206)],0x0)){console['log']('Scenario\x20'+_0x31054b[_0xaba81c(0x229)](_0x5d600e,0x1)+':\x20\x22'+_0x55d908['description']+'\x22'+_0x25073f+'\x20โ€”\x20'+_0x104cac[_0xaba81c(0x24b)]['length']+'\x20unaddressed\x20comment(s)');for(const _0xca3470 of _0x104cac['unaddressedComments']){const _0x22f0a0=new Date(_0xca3470['createdAt'])['toLocaleDateString']('en-US',{'month':_0xaba81c(0x1f7),'day':_0x31054b['uhRdO']}),_0x4713f2=_0xca3470['authorName']||_0xca3470[_0xaba81c(0x294)]||_0x31054b[_0xaba81c(0x236)];console['log'](_0xaba81c(0x297)+_0x4713f2+'\x20('+_0x22f0a0+'):\x20\x22'+_0xca3470['content']+'\x22');if(_0xca3470[_0xaba81c(0x221)]){const _0x12967a=await _0x31054b[_0xaba81c(0x233)](downloadFeedbackImage,_0xca3470['assetUrl'],_0xca3470['id']);_0x12967a&&console[_0xaba81c(0x1f8)]('\x20\x20\x20\x20\x20๐Ÿ“ท\x20Screenshot:\x20'+_0x12967a);}if(_0xca3470['domRef']){const _0x1aece4=_0xca3470['domRef']['selector']['split'](_0xaba81c(0x2ac))['pop']()?.[_0xaba81c(0x2a9)](':')[0x0]||_0xaba81c(0x27f),_0x583e58=_0xca3470[_0xaba81c(0x293)]['textContent']?'\x20\x22'+_0xca3470['domRef'][_0xaba81c(0x2c8)]['slice'](0x0,0x3c)+'\x22':'';console[_0xaba81c(0x1f8)](_0xaba81c(0x2b1)+_0x1aece4+'>'+_0x583e58),console['log'](_0xaba81c(0x21c)+_0xca3470[_0xaba81c(0x293)][_0xaba81c(0x2b6)]);}else{if(_0xca3470[_0xaba81c(0x214)]){const _0x176cba=_0xca3470['spatial'][_0xaba81c(0x2c4)];_0x31054b[_0xaba81c(0x29b)](_0xca3470[_0xaba81c(0x214)]['type'],_0x31054b[_0xaba81c(0x2b3)])&&_0x176cba[_0xaba81c(0x206)]>=0x2?console[_0xaba81c(0x1f8)](_0xaba81c(0x26d)+_0x176cba[0x0]['toFixed'](0x2)+',\x20'+_0x176cba[0x1]['toFixed'](0x2)+')'):console['log'](_0xaba81c(0x211)+_0xca3470[_0xaba81c(0x214)][_0xaba81c(0x285)]+_0xaba81c(0x26f)+_0x176cba['map'](_0x1ae843=>_0x1ae843[_0xaba81c(0x200)](0x2))[_0xaba81c(0x24f)](',\x20')+']');}}}if(_0x104cac[_0xaba81c(0x27a)]){console[_0xaba81c(0x1f8)](_0xaba81c(0x244));for(const _0x165140 of _0x104cac[_0xaba81c(0x27a)][_0xaba81c(0x2a9)]('\x0a')){console[_0xaba81c(0x1f8)]('\x20\x20\x20\x20'+_0x165140);}}}else console['log']('Scenario\x20'+(_0x5d600e+0x1)+_0xaba81c(0x230)+_0x55d908[_0xaba81c(0x212)]+'\x22'+_0x25073f+_0xaba81c(0x241)),console[_0xaba81c(0x1f8)](_0xaba81c(0x20c));console['log']('');}}function _0x2325(_0x10cb2a,_0x2fc9e4){_0x10cb2a=_0x10cb2a-0x1f4;const _0x3c21f3=_0x3c21();let _0x23251d=_0x3c21f3[_0x10cb2a];return _0x23251d;}export async function featureDelete(_0x54c853){const _0x5ef539=_0x302fd9,_0x2db804={'NIyPg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x1def5c=_0x54c853||await getActiveFeatureId();if(!_0x1def5c)throw new Error(_0x2db804['NIyPg']);const _0x35f72b=await getFeature(_0x1def5c);await softDeleteFeature(_0x1def5c),console[_0x5ef539(0x1f8)](_0x5ef539(0x231)+_0x35f72b[_0x5ef539(0x2b7)]+'\x20('+_0x1def5c+')'),console[_0x5ef539(0x1f8)]('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x1def5c);}export async function featureRestore(_0x32dd0e){const _0x461fb1=_0x302fd9,_0xd7f2e7={'iXLOY':function(_0xfd744b,_0x3e3272){return _0xfd744b(_0x3e3272);},'zvxFN':function(_0x5353cc,_0x389d50,_0x23030f){return _0x5353cc(_0x389d50,_0x23030f);}};await _0xd7f2e7['iXLOY'](restoreFeature,_0x32dd0e);const _0x36db66=await _0xd7f2e7['iXLOY'](getFeature,_0x32dd0e);console[_0x461fb1(0x1f8)](_0x461fb1(0x22a)+_0x36db66[_0x461fb1(0x2b7)]+'\x20('+_0x32dd0e+')'),_0xd7f2e7['zvxFN'](displayFeature,_0x36db66,_0x36db66[_0x461fb1(0x29a)]);}
1
+ const _0x37c00c=_0x29f6;(function(_0x17a2b0,_0x313864){const _0x213c23=_0x29f6,_0x4976a1=_0x17a2b0();while(!![]){try{const _0x11cccb=-parseInt(_0x213c23(0x104))/0x1+parseInt(_0x213c23(0x11a))/0x2*(-parseInt(_0x213c23(0x106))/0x3)+-parseInt(_0x213c23(0xe8))/0x4*(parseInt(_0x213c23(0x180))/0x5)+-parseInt(_0x213c23(0x15c))/0x6*(-parseInt(_0x213c23(0x147))/0x7)+-parseInt(_0x213c23(0x173))/0x8+-parseInt(_0x213c23(0xeb))/0x9*(-parseInt(_0x213c23(0x151))/0xa)+parseInt(_0x213c23(0x140))/0xb;if(_0x11cccb===_0x313864)break;else _0x4976a1['push'](_0x4976a1['shift']());}catch(_0x22d203){_0x4976a1['push'](_0x4976a1['shift']());}}}(_0xaadc,0xf3db8));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x42d7c4 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=_0x3a6f64=>'\x1b[1m'+_0x3a6f64+_0x37c00c(0x123);function getGitRepoUrl(){const _0x316cc0=_0x37c00c,_0x206ed2={'ncuWV':function(_0x2443b9,_0x224dcb,_0x3a9abe){return _0x2443b9(_0x224dcb,_0x3a9abe);},'YojLS':'git\x20remote\x20get-url\x20origin','amAgh':_0x316cc0(0x145),'KYoqS':_0x316cc0(0x129),'AWitw':_0x316cc0(0x10e)};try{const _0x568715=_0x206ed2['ncuWV'](execSync,_0x206ed2['YojLS'],{'encoding':_0x206ed2['amAgh'],'stdio':[_0x206ed2['KYoqS'],_0x206ed2[_0x316cc0(0x154)],_0x206ed2[_0x316cc0(0x154)]]})[_0x316cc0(0x16e)]();return _0x568715['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x206ed2['AWitw'])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x31d899=_0x37c00c,_0x2253ed={'tHVPx':function(_0x284fd7,_0x10d0c6,_0x19fbd1){return _0x284fd7(_0x10d0c6,_0x19fbd1);},'GqYAd':_0x31d899(0x129)};try{return _0x2253ed[_0x31d899(0x198)](execSync,'git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':'utf-8','stdio':['pipe','pipe',_0x2253ed['GqYAd']]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5b733e=_0x37c00c,_0x3ba63f={'yyFCt':function(_0x2bd0ff,_0x5a2ca8){return _0x2bd0ff(_0x5a2ca8);},'Menxc':function(_0x2c7f11,_0x30ae59,_0x4a9fb4){return _0x2c7f11(_0x30ae59,_0x4a9fb4);},'csASg':'utf-8'},_0x481544=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x3ba63f[_0x5b733e(0x122)](existsSync,_0x481544))return null;try{const _0x37a6a5=await _0x3ba63f[_0x5b733e(0xfc)](readFile,_0x481544,_0x3ba63f['csASg']);return _0x37a6a5['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x32dc68){const _0x178595={'UyHmF':function(_0x3e6bcc,_0x2e2cd6){return _0x3e6bcc(_0x2e2cd6);}},_0x5b9463=getRangerDir(),_0x2846d8=join(_0x5b9463,ACTIVE_FEATURE_FILE);!_0x178595['UyHmF'](existsSync,_0x5b9463)&&await mkdir(_0x5b9463,{'recursive':!![]}),await writeFile(_0x2846d8,_0x32dc68,'utf-8');}function getProgressDisplay(_0x113347){const _0x37b9d8=_0x37c00c,_0x5ef0fa={'pnagD':function(_0x3588fa,_0x5bc123){return _0x3588fa+_0x5bc123;},'PWmbs':function(_0x1dfede,_0x1d954b){return _0x1dfede+_0x1d954b;},'dDent':function(_0x456b20,_0x311ece){return _0x456b20-_0x311ece;},'ZsMzs':function(_0x4db1ec,_0x279e86){return _0x4db1ec>_0x279e86;},'vjwMW':function(_0x1ac178,_0x1633e5){return _0x1ac178>_0x1633e5;}},_0x476984=_0x113347['verifiedItems']||0x0,_0xdc6a7a=_0x113347['verificationInProgressItems']||0x0,_0x4ec87a=_0x113347['blockedItems']||0x0,_0x251776=_0x113347[_0x37b9d8(0x131)]||0x0,_0x2ea1c6=_0x113347[_0x37b9d8(0x164)]||0x0,_0x2fa7cf=_0x5ef0fa[_0x37b9d8(0x1b6)](_0x5ef0fa[_0x37b9d8(0x1b6)](_0x476984,_0xdc6a7a),_0x4ec87a)+_0x251776+_0x2ea1c6;if(_0x2fa7cf===0x0)return'-';const _0x4b2200=0xa,_0x3cf6ed=Math[_0x37b9d8(0x135)](_0x476984/_0x2fa7cf*_0x4b2200),_0x5ee1d1=_0x5ef0fa['PWmbs']('โ–ˆ'['repeat'](_0x3cf6ed),'โ–‘'['repeat'](_0x5ef0fa[_0x37b9d8(0x1a4)](_0x4b2200,_0x3cf6ed))),_0x45a898=[];if(_0x4ec87a>0x0)_0x45a898[_0x37b9d8(0x19e)](_0x4ec87a+'\x20blocked');if(_0x5ef0fa[_0x37b9d8(0x17e)](_0x251776,0x0))_0x45a898[_0x37b9d8(0x19e)](_0x251776+_0x37b9d8(0x13b));if(_0xdc6a7a>0x0)_0x45a898['push'](_0xdc6a7a+_0x37b9d8(0xec));const _0x48810f=_0x5ef0fa[_0x37b9d8(0xf3)](_0x45a898['length'],0x0)?'\x20('+_0x45a898['join'](',\x20')+')':'';return _0x5ee1d1+'\x20'+_0x476984+'/'+_0x2fa7cf+'\x20verified'+_0x48810f;}function getCurrentSessionItems(_0x2b4871,_0x3077c2){const _0x1db1d1=_0x37c00c;if(!_0x2b4871['currentSessionId'])return _0x3077c2['filter'](_0x1e517a=>!_0x1e517a[_0x1db1d1(0x143)]);return _0x3077c2[_0x1db1d1(0x120)](_0x4576ec=>_0x4576ec['sessionId']===_0x2b4871[_0x1db1d1(0x103)]||!_0x4576ec['sessionId']);}function _0x29f6(_0x1b512e,_0x97b746){_0x1b512e=_0x1b512e-0xe3;const _0xaadc5b=_0xaadc();let _0x29f6d1=_0xaadc5b[_0x1b512e];return _0x29f6d1;}function displayFeature(_0x1b5cb7,_0x59fc69){const _0x1eb095=_0x37c00c,_0xa26f5a={'wnUEX':function(_0x5ec715,_0x5952ac){return _0x5ec715(_0x5952ac);},'VTJYd':_0x1eb095(0x10f),'bSNgc':function(_0x5cae14,_0x5a7395){return _0x5cae14===_0x5a7395;},'MfIZK':function(_0x5e526b,_0x175c71){return _0x5e526b===_0x175c71;},'LjhLz':_0x1eb095(0x132),'SuRCo':function(_0x390801,_0x2a1bc6){return _0x390801===_0x2a1bc6;},'XexFz':function(_0x21932c,_0xb381d0){return _0x21932c===_0xb381d0;},'zhuEE':'blocked','bykpD':function(_0x131239,_0x52bef8){return _0x131239===_0x52bef8;},'OaHCL':function(_0x1a7e46,_0x1bbaa9){return _0x1a7e46>_0x1bbaa9;},'yboqV':function(_0x53cb70,_0x19088d){return _0x53cb70!==_0x19088d;},'nQoEV':function(_0x5aa423,_0x11ec2e){return _0x5aa423!==_0x11ec2e;},'GXPxl':function(_0x36f4da,_0x45d836){return _0x36f4da+_0x45d836;},'ebyCj':_0x1eb095(0x1b5),'GGwml':function(_0x3284e0,_0x50ceb3){return _0x3284e0===_0x50ceb3;},'rqNBB':_0x1eb095(0x134)};console['log']('\x0a'+_0x1b5cb7['name']+'\x20('+_0x1b5cb7[_0x1eb095(0x12a)]+')');_0x1b5cb7['stats']&&console[_0x1eb095(0xef)](_0x1eb095(0x19a)+_0xa26f5a[_0x1eb095(0x107)](getProgressDisplay,_0x1b5cb7[_0x1eb095(0xe9)]));_0x1b5cb7['description']&&console['log'](_0x1eb095(0xf1)+_0x1b5cb7[_0x1eb095(0x16b)]);_0x1b5cb7['gitRepoUrl']&&console['log'](_0x1eb095(0x114)+_0x1b5cb7[_0x1eb095(0x187)]);_0x1b5cb7['gitBranch']&&console['log'](_0x1eb095(0x14c)+_0x1b5cb7[_0x1eb095(0x109)]);console[_0x1eb095(0xef)](_0x1eb095(0xf5)+new Date(_0x1b5cb7['createdAt'])[_0x1eb095(0x18d)]());_0x1b5cb7[_0x1eb095(0x156)]&&console['log'](_0x1eb095(0x167)+new Date(_0x1b5cb7[_0x1eb095(0x156)])['toLocaleString']());if(_0x59fc69&&_0x59fc69[_0x1eb095(0x130)]>0x0){console[_0x1eb095(0xef)](_0xa26f5a[_0x1eb095(0xea)]);for(let _0x3a5738=0x0;_0x3a5738<_0x59fc69['length'];_0x3a5738++){const _0x1de759=_0x59fc69[_0x3a5738];let _0x547bbb;if(_0x1de759[_0x1eb095(0x183)]===_0x1eb095(0x134)&&_0xa26f5a[_0x1eb095(0x100)](_0x1de759[_0x1eb095(0xf8)],_0x1eb095(0x148)))_0x547bbb='โœ…';else{if(_0xa26f5a[_0x1eb095(0x16f)](_0x1de759[_0x1eb095(0x183)],_0xa26f5a['LjhLz']))_0x547bbb='๐ŸŸข';else{if(_0xa26f5a[_0x1eb095(0x174)](_0x1de759[_0x1eb095(0x183)],'incomplete'))_0x547bbb='๐ŸŸ ';else{if(_0xa26f5a['XexFz'](_0x1de759[_0x1eb095(0x183)],_0xa26f5a['zhuEE']))_0x547bbb='๐Ÿ›‘';else{if(_0xa26f5a['bykpD'](_0x1de759['status'],_0x1eb095(0x134)))_0x547bbb='โ›”';else _0x1de759['status']===_0x1eb095(0x1a1)?_0x547bbb='โณ':_0x547bbb='โฌœ';}}}}const _0x3d5a27=_0xa26f5a[_0x1eb095(0x16c)](_0x1de759['version'],0x1)?_0x1eb095(0x11d)+_0x1de759[_0x1eb095(0x15a)]+')':'',_0x33536f=_0x1de759['version']>0x1&&_0x1de759[_0x1eb095(0x146)]&&_0xa26f5a[_0x1eb095(0x18e)](_0x1de759[_0x1eb095(0x183)],_0x1eb095(0x134))&&_0xa26f5a['nQoEV'](_0x1de759['status'],_0xa26f5a['LjhLz'])?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+_0xa26f5a[_0x1eb095(0x1a3)](_0x3a5738,0x1)+'.\x20'+_0x547bbb+'\x20'+_0x1de759['description']+_0x3d5a27+_0x33536f);_0xa26f5a[_0x1eb095(0x165)](_0x1de759['status'],'blocked')&&_0x1de759[_0x1eb095(0x189)]&&console[_0x1eb095(0xef)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x1de759['blockedReason']);_0x1de759[_0x1eb095(0x183)]===_0xa26f5a['ebyCj']&&_0x1de759[_0x1eb095(0x12d)]&&console[_0x1eb095(0xef)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x1de759['incompleteReason']);if(_0xa26f5a[_0x1eb095(0x193)](_0x1de759['status'],_0xa26f5a['rqNBB'])&&_0x1de759['terminalReason']===_0x1eb095(0x148))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x1de759[_0x1eb095(0x183)]===_0x1eb095(0x134)&&_0x1de759[_0x1eb095(0x139)]&&console[_0x1eb095(0xef)](_0x1eb095(0x191)+_0x1de759['canceledReason']);}}}export async function featureCreate(_0x204a0e,_0x28e83f){const _0x672296=_0x37c00c,_0xccf524={'fOKzP':function(_0x5b46d8,_0x4bf99b){return _0x5b46d8(_0x4bf99b);},'tLkJL':function(_0x1f9eb6){return _0x1f9eb6();},'XZokF':_0x672296(0xfd)},{envNames:_0x41001d}=await getEnvNames();_0x41001d['length']===0x0&&console[_0x672296(0x14d)]('\x0a'+_0xccf524['fOKzP'](formatProfileRequiredMessage,_0x16ed76=>bold(_0x16ed76)));const _0xcbdc59=_0x28e83f['scenarios']?_0x28e83f[_0x672296(0x121)][_0x672296(0x1b9)](_0x44e171=>_0x44e171[_0x672296(0x16e)]()):[],_0x41759e=_0xccf524[_0x672296(0x1a6)](getGitRepoUrl),_0x14aeb2=getGitBranch();console[_0x672296(0xef)](_0xccf524[_0x672296(0x14f)]);const _0x195a48=await _0xccf524[_0x672296(0x182)](createFeature,{'name':_0x204a0e,'description':_0x28e83f[_0x672296(0x16b)],'checklist':_0xcbdc59,'gitRepoUrl':_0x41759e,'gitBranch':_0x14aeb2});await setActiveFeatureId(_0x195a48['id']),await tryStartCurrentSession(_0x195a48['id']);const _0x27cf88=process[_0x672296(0x108)]['CLAUDE_SESSION_ID'];_0x27cf88&&registerSession(_0x27cf88,_0x195a48['id']),console['log']('\x0aโœ…\x20Feature\x20review\x20created:\x20'+_0x195a48['id']),displayFeature(_0x195a48,_0x195a48[_0x672296(0x136)]),console[_0x672296(0xef)](_0x672296(0x17b));}export async function featureList(_0x431a81){const _0x11c25b=_0x37c00c,_0x1f271b={'YGEDa':function(_0x25b7ee,_0x3ae76a){return _0x25b7ee>_0x3ae76a;},'IFNrW':function(_0x44474a,_0x4c2d49){return _0x44474a<_0x4c2d49;},'WjzPb':function(_0x1e9be2,_0x41d7b0){return _0x1e9be2!==_0x41d7b0;},'fIEgv':'\x20--current-branch','cDksP':'\x20--include-deleted'},_0x2b503b={'limit':_0x431a81['limit']??0xa,'offset':_0x431a81['offset']??0x0,'includeDeleted':_0x431a81['includeDeleted']};_0x431a81[_0x11c25b(0x160)]&&(_0x2b503b[_0x11c25b(0x187)]=getGitRepoUrl(),_0x2b503b[_0x11c25b(0x109)]=getGitBranch());const _0x1145f5=await listFeatures(_0x2b503b);if(_0x1145f5['items']['length']===0x0){console[_0x11c25b(0xef)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x57768e=_0x1f271b[_0x11c25b(0x11b)](_0x1145f5[_0x11c25b(0xe5)],_0x1145f5[_0x11c25b(0x17c)][_0x11c25b(0x130)])?_0x11c25b(0x102)+_0x1145f5['items'][_0x11c25b(0x130)]+_0x11c25b(0xfa)+_0x1145f5['totalCount']:_0x1145f5['totalCount']+_0x11c25b(0xe6);console['log']('\x0a'+_0x57768e+':\x0a');for(const _0x15eaea of _0x1145f5[_0x11c25b(0x17c)]){console[_0x11c25b(0xef)](''+_0x15eaea['name']),console[_0x11c25b(0xef)](_0x11c25b(0x1b1)+_0x15eaea['id']),_0x15eaea[_0x11c25b(0xe9)]&&console[_0x11c25b(0xef)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x15eaea[_0x11c25b(0xe9)])),_0x15eaea[_0x11c25b(0x109)]&&console[_0x11c25b(0xef)](_0x11c25b(0x14c)+_0x15eaea['gitBranch']),console[_0x11c25b(0xef)](_0x11c25b(0xf5)+new Date(_0x15eaea[_0x11c25b(0x14e)])['toLocaleDateString']()),console['log']('');}const _0x27df70=_0x2b503b[_0x11c25b(0x172)]??0xa,_0x9de134=(_0x2b503b['offset']??0x0)+_0x1145f5['items']['length'];if(_0x1f271b[_0x11c25b(0x12b)](_0x9de134,_0x1145f5[_0x11c25b(0xe5)])){const _0x369bc5=_0x1f271b[_0x11c25b(0xe4)](_0x27df70,0xa)?'\x20--limit\x20'+_0x27df70:'',_0x3b82ea=_0x431a81[_0x11c25b(0x160)]?_0x1f271b[_0x11c25b(0x11e)]:'',_0x86ee3d=_0x431a81[_0x11c25b(0x1a5)]?_0x1f271b['cDksP']:'';console['log'](_0x11c25b(0xf9)+_0x9de134+_0x369bc5+_0x3b82ea+_0x86ee3d);}}export async function featureShow(_0x556546){const _0x4b5f94=_0x37c00c,_0x2f36c3={'PlevU':function(_0x4ca582){return _0x4ca582();},'akzMd':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','uXqHT':function(_0x258d28,_0x43bb6a,_0x19dbbf){return _0x258d28(_0x43bb6a,_0x19dbbf);}},_0x58e9a1=_0x556546||await _0x2f36c3[_0x4b5f94(0x177)](getActiveFeatureId);if(!_0x58e9a1)throw new Error(_0x2f36c3['akzMd']);const _0x55ca65=await getFeature(_0x58e9a1);_0x2f36c3[_0x4b5f94(0x14a)](displayFeature,_0x55ca65,_0x55ca65[_0x4b5f94(0x136)]);}export async function featureResume(_0x3ba514){const _0x1619e7=_0x37c00c,_0x1338db={'YYuuP':function(_0x23ad89,_0x5856e7){return _0x23ad89(_0x5856e7);},'pxiJT':function(_0x4f02b6){return _0x4f02b6();},'XMDWx':function(_0x1ab2fe,_0x29204f){return _0x1ab2fe!==_0x29204f;},'DnjZT':function(_0x3c47e3){return _0x3c47e3();},'HTKjl':function(_0x1659c0){return _0x1659c0();},'fFhGO':_0x1619e7(0x125),'LGccl':function(_0x3209fa,_0x519264){return _0x3209fa===_0x519264;},'kpHkM':_0x1619e7(0x111),'xrDDO':function(_0x310492,_0x3754f4){return _0x310492===_0x3754f4;},'WkrJy':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','zwmep':function(_0x255a5f,_0x176237){return _0x255a5f(_0x176237);},'VHMqS':'list','isDjW':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:'};if(_0x3ba514){const _0x2b3e26=await _0x1338db[_0x1619e7(0x10c)](getFeature,_0x3ba514);await setActiveFeatureId(_0x2b3e26['id']);const _0x1474b4=_0x1338db['pxiJT'](getGitBranch);_0x1474b4&&_0x1338db[_0x1619e7(0x184)](_0x1474b4,_0x2b3e26['gitBranch'])&&(await updateFeature(_0x2b3e26['id'],{'gitBranch':_0x1474b4}),console[_0x1619e7(0xef)](_0x1619e7(0x133)+_0x1474b4));console[_0x1619e7(0xef)]('\x0aโœ…\x20Resumed\x20feature\x20review:\x20'+_0x2b3e26[_0x1619e7(0x1a0)]+'\x20('+_0x2b3e26['id']+')'),await tryStartCurrentSession(_0x2b3e26['id']);const _0x105d92=process['env']['CLAUDE_SESSION_ID'];_0x105d92&&registerSession(_0x105d92,_0x2b3e26['id']);displayFeature(_0x2b3e26,_0x2b3e26[_0x1619e7(0x136)]),await printFeedbackNudge(_0x2b3e26['id']);return;}const _0x143f06=_0x1338db['DnjZT'](getGitRepoUrl),_0x17106e=_0x1338db[_0x1619e7(0xee)](getGitBranch);if(!_0x143f06&&!_0x17106e)throw new Error(_0x1619e7(0x10b));console['log'](_0x1619e7(0x12e)+(_0x143f06||'any')+'\x20/\x20'+(_0x17106e||_0x1338db['fFhGO'])+'...');const _0x658906=await listFeatures({'gitRepoUrl':_0x143f06,'gitBranch':_0x17106e}),_0x5d43a0=_0x658906[_0x1619e7(0x17c)]['filter'](_0x474ef6=>_0x474ef6['status']?_0x474ef6['status']!==_0x1619e7(0x132):!_0x474ef6[_0x1619e7(0x156)]);if(_0x1338db[_0x1619e7(0x1b8)](_0x5d43a0[_0x1619e7(0x130)],0x0)){console[_0x1619e7(0xef)](_0x1338db[_0x1619e7(0x112)]),console[_0x1619e7(0xef)](_0x1619e7(0x168));return;}let _0x6ae279;if(_0x1338db[_0x1619e7(0x126)](_0x5d43a0['length'],0x1))_0x6ae279=_0x5d43a0[0x0];else{const _0x6920c9=process[_0x1619e7(0x13a)][_0x1619e7(0x15b)]&&process['stdout']['isTTY'];if(!_0x6920c9){console['log'](_0x1338db['WkrJy']);for(const _0x414589 of _0x5d43a0){console['log']('\x20\x20'+_0x414589['name']),console[_0x1619e7(0xef)](_0x1619e7(0x128)+_0x414589['id']),_0x414589['stats']&&console['log'](_0x1619e7(0xff)+_0x1338db[_0x1619e7(0x17a)](getProgressDisplay,_0x414589['stats'])),_0x414589['gitBranch']&&console[_0x1619e7(0xef)](_0x1619e7(0x169)+_0x414589[_0x1619e7(0x109)]);}throw new Error(_0x1619e7(0x196));}const {selected:_0x36fa41}=await _0x42d7c4[_0x1619e7(0x113)]([{'type':_0x1338db['VHMqS'],'name':_0x1619e7(0x19d),'message':_0x1338db['isDjW'],'choices':_0x5d43a0[_0x1619e7(0x1b9)](_0x79f50f=>({'name':_0x79f50f[_0x1619e7(0x1a0)]+'\x20('+_0x79f50f['id']+')','value':_0x79f50f['id']}))}]);_0x6ae279=_0x5d43a0['find'](_0x26b0fd=>_0x26b0fd['id']===_0x36fa41);}await setActiveFeatureId(_0x6ae279['id']);_0x17106e&&_0x1338db['XMDWx'](_0x17106e,_0x6ae279['gitBranch'])&&(await updateFeature(_0x6ae279['id'],{'gitBranch':_0x17106e}),console['log'](_0x1619e7(0x133)+_0x17106e));console['log']('\x0aโœ…\x20Resumed\x20feature\x20review:\x20'+_0x6ae279[_0x1619e7(0x1a0)]+'\x20('+_0x6ae279['id']+')'),await _0x1338db['YYuuP'](tryStartCurrentSession,_0x6ae279['id']);const _0x560b90=await getFeature(_0x6ae279['id']),_0x5195ac=process['env'][_0x1619e7(0x161)];_0x5195ac&&registerSession(_0x5195ac,_0x560b90['id']),displayFeature(_0x560b90,_0x560b90['checklistItems']),await printFeedbackNudge(_0x560b90['id']);}function _0xaadc(){const _0x17059e=['fOKzP','status','XMDWx','bXYly','isInteger','gitRepoUrl','exit','blockedReason','ttGrA','rMpoW','FhSlB','toLocaleString','yboqV','fdwdR','replace','\x20\x20\x20\x20\x20\x20Cancelled:\x20','xVLly','GGwml','beDsZ','notes','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','timing','tHVPx','IvNxg','\x20\x20\x20Progress:\x20','Step\x20','ready','selected','push','all','name','verification_in_progress','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','GXPxl','dDent','includeDeleted','tLkJL','tQgPI','hvhox','\x0aโŒ\x20Invalid\x20scenario\x20index:\x20','\x20\x20\x20Status:\x20','.\x20Feature\x20review\x20has\x20','):\x20\x22','ozrkB','spatial','SrmKn','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x20\x20\x20ID:\x20','xJJZA','xraFV','authorName','incomplete','pnagD','selector','LGccl','map','PTCso','kYnMQ','\x0aโŒ\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','WjzPb','totalCount','\x20feature\x20review(s)\x20found','\x20\x20\x20\x20\x20๐Ÿ“ท\x20Screenshot:\x20','13204SmzfHZ','stats','VTJYd','8253gdEkBc','\x20in\x20progress','shBBs','HTKjl','log','rSwdv','\x20\x20\x20Description:\x20','\x20unaddressed\x20comment(s)','vjwMW','SuecD','\x20\x20\x20Created:\x20','Current\x20session\x20not\x20found.','submittedAt','terminalReason','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x20of\x20','RDmUo','Menxc','\x0aCreating\x20feature\x20review...','find','\x20\x20\x20\x20\x20Progress:\x20','bSNgc','unaddressedComments','Showing\x20','currentSessionId','726487NoEIoS','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','5731833uaGWpr','wnUEX','env','gitBranch','\x0aโš ๏ธ\x20\x20','Not\x20in\x20a\x20git\x20repository.','YYuuP','from','github.com/','\x0a\x20\x20\x20Scenarios:','short','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','kpHkM','prompt','\x20\x20\x20Repository:\x20','\x0aโŒ\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x0aโœ…\x20Scenario\x20added','\x20concluded.','assetUrl','assets','2ozHMmC','YGEDa','reports','\x20(v','fIEgv','\x20\x20\x20\x20\x20๐Ÿ“‹\x20Selector:\x20','filter','scenarios','yyFCt','\x1b[0m','after','any','xrDDO','.png','\x20\x20\x20\x20\x20ID:\x20','pipe','dashboardUrl','IFNrW','\x0aโŒ\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','incompleteReason','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','linkedSession','length','incompleteItems','verified','\x20\x20\x20Updated\x20branch\x20to:\x20','closed','round','checklistItems','\x20\x20\x20\x20','point','canceledReason','stdin','\x20incomplete','iteration','completed','JJWac','\x0a๐Ÿ—‘๏ธ\x20\x20Deleted\x20feature\x20review:\x20','46511751SPNtnI','json','\x20โ€”\x20','sessionId','toLocaleDateString','utf-8','parentItemId','83713gCcctP','approved','\x20scenario(s).','uXqHT','screenshot','\x20\x20\x20Branch:\x20','warn','createdAt','XZokF','No\x20scenarios\x20found.','14710eRDVGh','output','join','KYoqS','type','completedAt','oXltN','toFixed','\x0aโŒ\x20No\x20scenarios\x20found\x20to\x20edit.','version','isTTY','564dzUXUa','error','\x20\x20\x20โ–ถ๏ธ\x20Started\x20session\x20','in_progress','currentBranch','CLAUDE_SESSION_ID','stringify','split','pendingItems','bykpD','\x0aConcluding\x20session...','\x20\x20\x20Completed:\x20','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20\x20\x20\x20\x20Branch:\x20','\x0aAvailable\x20scenarios:','description','OaHCL','\x20\x20๐Ÿ’ฌ\x20','trim','MfIZK','\x0aโœ…\x20Session\x20is\x20already\x20completed.','YewMx','limit','8863704sTmMVT','SuRCo','browserSessionId','domRef','PlevU','\x0aโŒ\x20All\x20scenarios\x20were\x20excluded.','canonicalFlow','zwmep','\x0aโžก๏ธ\x20\x20Set\x20as\x20active\x20feature\x20review','items','/api/v1/mcp/browser-sessions/','ZsMzs','\x20โ€”\x20no\x20comments','2965lzGWgU','\x20\x20\x20\x20\x20๐ŸŽฏ\x20Element:\x20<'];_0xaadc=function(){return _0x17059e;};return _0xaadc();}async function printFeedbackNudge(_0x1f0e5b){const _0xc7e4e7=_0x37c00c,_0x3e8f6f={'SHQZU':function(_0x4ce16c,_0x479907){return _0x4ce16c(_0x479907);},'GIoId':function(_0x354140,_0x14d9b4,_0x13064d){return _0x354140(_0x14d9b4,_0x13064d);},'rSwdv':function(_0x4b1464,_0x31bcea){return _0x4b1464>_0x31bcea;},'SxKFE':function(_0xb299ff,_0x40b9be){return _0xb299ff>_0x40b9be;},'mnBAs':_0xc7e4e7(0x1b0)};try{const {items:_0xda4cbd}=await _0x3e8f6f['SHQZU'](getActionItems,_0x1f0e5b);let _0x591cd7=0x0,_0x76135b=0x0;for(const _0x1df2b2 of _0xda4cbd){const _0x2077ff=await _0x3e8f6f['GIoId'](getItemFeedback,_0x1f0e5b,_0x1df2b2['id']);_0x3e8f6f[_0xc7e4e7(0xf0)](_0x2077ff['unaddressedComments']['length'],0x0)&&(_0x591cd7+=_0x2077ff[_0xc7e4e7(0x101)]['length'],_0x76135b++);}_0x3e8f6f['SxKFE'](_0x591cd7,0x0)&&(console[_0xc7e4e7(0xef)](_0xc7e4e7(0x10a)+_0x591cd7+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x76135b+_0xc7e4e7(0x149)),console['log'](_0x3e8f6f['mnBAs']));}catch{}}async function tryStartCurrentSession(_0x1de6ee){const _0x455c77=_0x37c00c;try{const {sessions:_0x3f7732}=await listFeatureSessions(_0x1de6ee),_0x13263b=_0x3f7732[_0x455c77(0xfe)](_0x16b142=>_0x16b142[_0x455c77(0x183)]===_0x455c77(0x19c));_0x13263b&&(await startSession(_0x1de6ee,_0x13263b['id']),console['log'](_0x455c77(0x15e)+_0x13263b[_0x455c77(0x13c)]));}catch{}}export async function featureReport(_0x341a77,_0x1a5d19){const _0x5a8b10=_0x37c00c,_0x52d72f={'tQgPI':function(_0x8f6181){return _0x8f6181();},'pIYJg':function(_0x1ca746,_0x1d3c13){return _0x1ca746(_0x1d3c13);},'EmOqL':'utf-8'},_0x45b4b3=_0x341a77||await _0x52d72f[_0x5a8b10(0x1a7)](getActiveFeatureId);if(!_0x45b4b3)throw new Error(_0x5a8b10(0x1a2));console[_0x5a8b10(0xef)]('\x0aGenerating\x20report...');const _0x2e7613=await getFeatureReportMarkdown(_0x45b4b3,{'style':_0x1a5d19['style']}),_0x4c1288=_0x1a5d19[_0x5a8b10(0x152)]||join(_0x52d72f[_0x5a8b10(0x1a7)](getRangerDir),_0x5a8b10(0x11c),_0x45b4b3+'.md'),_0x50bdf9=join(_0x4c1288,'..');!_0x52d72f['pIYJg'](existsSync,_0x50bdf9)&&await mkdir(_0x50bdf9,{'recursive':!![]}),await writeFile(_0x4c1288,_0x2e7613,_0x52d72f['EmOqL']),console[_0x5a8b10(0xef)]('\x0aโœ…\x20Report\x20generated:\x20'+_0x4c1288);}function getScenarioResult(_0x100af0){const _0x217f3e=_0x37c00c,_0x3595f0={'NGCrh':_0x217f3e(0x134),'xraFV':function(_0x133e2d,_0x5ddfe3){return _0x133e2d===_0x5ddfe3;},'rMpoW':'in_progress'};if(_0x100af0['status']===_0x3595f0['NGCrh'])return _0x100af0[_0x217f3e(0xf8)]??_0x3595f0['NGCrh'];if(_0x3595f0[_0x217f3e(0x1b3)](_0x100af0['status'],_0x217f3e(0x1a1)))return _0x3595f0[_0x217f3e(0x18b)];return _0x100af0['status'];}function getScenarioRationale(_0x294ae0,_0x35414c){const _0x7b9044=_0x37c00c;if(_0x35414c)return _0x35414c;if(_0x294ae0['blockedReason'])return _0x294ae0['blockedReason'];if(_0x294ae0[_0x7b9044(0x12d)])return _0x294ae0[_0x7b9044(0x12d)];if(_0x294ae0['canceledReason'])return _0x294ae0['canceledReason'];if(_0x294ae0[_0x7b9044(0x195)])return _0x294ae0[_0x7b9044(0x195)];return null;}export async function featureReportPrDescription(_0x286e4b,_0x62abc3){const _0x166355=_0x37c00c,_0x4122ae={'IvTdc':function(_0x2ffc68){return _0x2ffc68();},'TLHme':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','LLARn':function(_0x5dd067,_0x12213d,_0xa5e8b9){return _0x5dd067(_0x12213d,_0xa5e8b9);},'DoVen':'\x0aโŒ\x20No\x20scenarios\x20found\x20to\x20include.','dhGtZ':'\x0aAvailable\x20scenarios:'},_0x3f8d44=_0x286e4b||await _0x4122ae['IvTdc'](getActiveFeatureId);if(!_0x3f8d44)throw new Error(_0x4122ae['TLHme']);const _0x38624d=await getFeature(_0x3f8d44),_0x4f4292=_0x38624d['checklistItems']||[],_0x478dd1=_0x4122ae['LLARn'](getCurrentSessionItems,_0x38624d,_0x4f4292);_0x478dd1['length']===0x0&&(console['error'](_0x4122ae['DoVen']),process['exit'](0x1));const _0x4ee0e5=_0x62abc3['excludeScenarios']??[],_0x359a3f=_0x4ee0e5['filter'](_0x2c30e2=>!Number[_0x166355(0x186)](_0x2c30e2)||_0x2c30e2<0x1||_0x2c30e2>_0x478dd1['length']);if(_0x359a3f['length']>0x0){console['error']('\x0aโŒ\x20Invalid\x20scenario\x20number(s):\x20'+_0x359a3f[_0x166355(0x153)](',\x20')),console['log'](_0x4122ae['dhGtZ']);for(let _0x562716=0x0;_0x562716<_0x478dd1['length'];_0x562716++){console[_0x166355(0xef)]('\x20\x20'+(_0x562716+0x1)+'.\x20'+_0x478dd1[_0x562716]['description']);}process[_0x166355(0x188)](0x1);}const _0x1e4b62=new Set(_0x4ee0e5[_0x166355(0x1b9)](_0x33264a=>_0x33264a-0x1)),_0x3ca703=_0x478dd1['filter']((_0xe9c2cf,_0x53d86c)=>!_0x1e4b62['has'](_0x53d86c));_0x3ca703[_0x166355(0x130)]===0x0&&(console[_0x166355(0x15d)](_0x166355(0x178)),process[_0x166355(0x188)](0x1));if(_0x62abc3[_0x166355(0x141)])await outputJsonReport(_0x3f8d44,_0x38624d,_0x3ca703);else{const _0x14cd54=await getFeatureReportMarkdown(_0x3f8d44,{'itemIds':_0x3ca703['map'](_0x5aba4a=>_0x5aba4a['id'])});process['stdout']['write'](_0x14cd54['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x14907b,_0x539a07,_0x561845){const _0x143328=_0x37c00c,_0x4572a2={'gggIj':function(_0x439234,_0x4a35f4){return _0x439234>_0x4a35f4;},'VwZlb':function(_0x290cc3){return _0x290cc3();},'Wbcdg':function(_0x2d71e2,_0x4d52eb){return _0x2d71e2(_0x4d52eb);}},_0x5117f7=_0x4572a2['VwZlb'](getApiBaseUrl),_0x3bfe66=await _0x4572a2['Wbcdg'](getFeatureReport,_0x14907b),_0x38eedd=new Map(_0x3bfe66[_0x143328(0x136)][_0x143328(0x1b9)](_0x25111e=>[_0x25111e['id'],_0x25111e])),_0x288312=await Promise[_0x143328(0x19f)](_0x561845['map'](async _0x46853c=>{const _0xf5c209=_0x143328,_0x3300ff=_0x38eedd['get'](_0x46853c['id']),_0x276598=_0x3300ff?.[_0xf5c209(0x12f)]??null;let _0x3dc208=[];if(_0x46853c['browserSessionId'])try{const {steps:_0x21cd67}=await getBrowserSessionSteps(_0x46853c['browserSessionId']);_0x4572a2['gggIj'](_0x21cd67['length'],0x0)&&(_0x3dc208=_0x21cd67[_0xf5c209(0x1b9)](_0x7d9737=>{const _0x12e5b6=_0xf5c209,_0x244e6a=_0x7d9737['assets']['find'](_0x517539=>_0x517539['assetType']===_0x12e5b6(0x14b)&&_0x517539[_0x12e5b6(0x197)]===_0x12e5b6(0x124))??_0x7d9737[_0x12e5b6(0x119)]['find'](_0x4bb051=>_0x4bb051['assetType']==='screenshot');let _0x57496a=null,_0x217981=null;if(_0x244e6a){const _0x2efc99=_0x244e6a['storage']['location'][_0x12e5b6(0x163)]('/')['pop']();_0x57496a=_0x5117f7+_0x12e5b6(0x17d)+_0x46853c[_0x12e5b6(0x175)]+'/artifacts/'+_0x2efc99,_0x2efc99&&(_0x217981=_0x2efc99[_0x12e5b6(0x190)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x217981||_0x7d9737['description']||_0x7d9737['stepName']||_0x12e5b6(0x19b)+_0x7d9737['position'],'screenshot':_0x57496a,'is_key_step':_0x7d9737['isKeyStep']};}));}catch{}return _0x3dc208[_0xf5c209(0x130)]===0x0&&_0x276598?.['screenshotUrls']&&(_0x3dc208=_0x276598['screenshotUrls']['map']((_0x2d912d,_0x982ac2)=>({'description':'Screenshot\x20'+(_0x982ac2+0x1),'screenshot':_0x2d912d,'is_key_step':![]}))),{'description':_0x46853c['description'],'result':getScenarioResult(_0x46853c),'rationale':getScenarioRationale(_0x46853c,_0x276598?.['agentResponse']),'steps':_0x3dc208};})),_0x15fe74={'url':_0x539a07[_0x143328(0x12a)],'scenarios':_0x288312};process['stdout']['write'](JSON[_0x143328(0x162)](_0x15fe74,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x2a6abd){const _0x397f20=_0x37c00c,_0x3376de={'MsShk':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','RDmUo':function(_0x2e881e,_0x167a15){return _0x2e881e(_0x167a15);},'ttGrA':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','yIByR':_0x397f20(0x13d),'ozrkB':_0x397f20(0x170),'IvNxg':function(_0x173ed7,_0x22435d){return _0x173ed7!==_0x22435d;},'zgntw':'in_progress'},_0x2bf53e=_0x2a6abd||await getActiveFeatureId();if(!_0x2bf53e)throw new Error(_0x3376de['MsShk']);const _0x3be856=await _0x3376de[_0x397f20(0xfb)](getFeature,_0x2bf53e);if(!_0x3be856[_0x397f20(0x103)])throw new Error(_0x3376de[_0x397f20(0x18a)]);const {sessions:_0x94f8be}=await listFeatureSessions(_0x2bf53e),_0x9f5148=_0x94f8be['find'](_0x4e4041=>_0x4e4041['id']===_0x3be856['currentSessionId']);if(!_0x9f5148)throw new Error(_0x397f20(0xf6));if(_0x9f5148['status']===_0x3376de['yIByR']){console['log'](_0x3376de[_0x397f20(0x1ad)]);return;}if(_0x3376de[_0x397f20(0x199)](_0x9f5148['status'],_0x3376de['zgntw']))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x9f5148[_0x397f20(0x183)]);console[_0x397f20(0xef)](_0x397f20(0x166)),await concludeSession(_0x2bf53e,_0x3be856[_0x397f20(0x103)]),console[_0x397f20(0xef)]('\x0aโœ…\x20Session\x20'+_0x9f5148[_0x397f20(0x13c)]+_0x397f20(0x117)),console[_0x397f20(0xef)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0xc20360){const _0x52719c=_0x37c00c,_0x42a665={'CoUKy':function(_0x8bf2f){return _0x8bf2f();},'kYnMQ':_0x52719c(0x1a2),'oXltN':function(_0x5d8b0c,_0x4c9616){return _0x5d8b0c(_0x4c9616);},'ogPDJ':function(_0x138b26,_0x37f6b3){return _0x138b26(_0x37f6b3);},'ETzVg':function(_0x60a872,_0x1fd0e6){return _0x60a872===_0x1fd0e6;},'Lylyf':function(_0x2fd1c9,_0x3e1cd9){return _0x2fd1c9===_0x3e1cd9;},'SuecD':_0x52719c(0x15f)},_0x5c2775=_0xc20360||await _0x42a665['CoUKy'](getActiveFeatureId);if(!_0x5c2775)throw new Error(_0x42a665[_0x52719c(0x1bb)]);const _0x317c7c=await _0x42a665[_0x52719c(0x157)](getFeature,_0x5c2775);console[_0x52719c(0xef)]('\x0a๐Ÿ“\x20Sessions\x20for\x20feature\x20review:\x20'+_0x317c7c[_0x52719c(0x1a0)]+'\x0a');const {sessions:_0x1acad1}=await _0x42a665['ogPDJ'](listFeatureSessions,_0x5c2775);if(_0x42a665['ETzVg'](_0x1acad1[_0x52719c(0x130)],0x0)){console[_0x52719c(0xef)]('No\x20sessions\x20found.');return;}for(const _0x1b24c2 of _0x1acad1){const _0x34921d=_0x1b24c2['status']===_0x52719c(0x13d)?'โœ…':_0x42a665['Lylyf'](_0x1b24c2[_0x52719c(0x183)],_0x42a665[_0x52719c(0xf4)])?'๐Ÿ”„':'โ–ถ๏ธ';console['log'](_0x34921d+'\x20Session\x20'+_0x1b24c2[_0x52719c(0x13c)]+'\x20('+_0x1b24c2['id']+')'),console['log'](_0x52719c(0x1aa)+_0x1b24c2['status']),console[_0x52719c(0xef)](_0x52719c(0xf5)+new Date(_0x1b24c2['createdAt'])['toLocaleString']()),_0x1b24c2['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x1b24c2[_0x52719c(0x156)])[_0x52719c(0x18d)]()),console['log']('');}}export async function featureAddScenario(_0x361fd7,_0x28a460){const _0x10b31d=_0x37c00c,_0x237fe7={'Ykavm':function(_0x245e5a){return _0x245e5a();},'UaGOv':function(_0xa4538,_0x5a2c2c){return _0xa4538(_0x5a2c2c);}},_0x2078f3=_0x28a460||await _0x237fe7['Ykavm'](getActiveFeatureId);if(!_0x2078f3)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 _0x28b297=await _0x237fe7['UaGOv'](getFeature,_0x2078f3);if(_0x28b297['latestReview']&&!_0x28b297['latestReview'][_0x10b31d(0xf7)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x28b297['dashboardUrl']);await createChecklistItem(_0x2078f3,_0x361fd7);const _0x5ed682=await _0x237fe7['UaGOv'](getFeature,_0x2078f3);console['log'](_0x10b31d(0x116)),displayFeature(_0x5ed682,_0x5ed682['checklistItems']);}export async function featureEditScenario(_0xf196f6,_0x16240a){const _0x19ab9b=_0x37c00c,_0x42e08e={'fyjtx':_0x19ab9b(0xe3),'hqbZQ':'Please\x20finish\x20your\x20review\x20first:','pwHFw':function(_0x5330d0,_0x1a036c){return _0x5330d0===_0x1a036c;},'UopVD':_0x19ab9b(0x159),'YMtBe':_0x19ab9b(0x12c),'spTBZ':function(_0x40bc52,_0x35d08a){return _0x40bc52+_0x35d08a;},'XpuBK':function(_0x18a4f1,_0xbf2e37){return _0x18a4f1-_0xbf2e37;},'BMntp':function(_0x4f1a2c,_0x553169){return _0x4f1a2c>=_0x553169;},'xJJZA':'\x0aAvailable\x20scenarios:','YwyBU':function(_0x40a39e,_0x51c361){return _0x40a39e<_0x51c361;},'YewMx':function(_0x58557d,_0x3fe401,_0x26deb3){return _0x58557d(_0x3fe401,_0x26deb3);}},_0x36f303=_0x16240a['id']||await getActiveFeatureId();!_0x36f303&&(console[_0x19ab9b(0x15d)](_0x19ab9b(0x115)),console[_0x19ab9b(0x15d)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process['exit'](0x1));const _0x13dc33=await getFeature(_0x36f303);_0x13dc33['latestReview']&&!_0x13dc33['latestReview'][_0x19ab9b(0xf7)]&&(console[_0x19ab9b(0x15d)](_0x42e08e['fyjtx']),console['error'](_0x42e08e['hqbZQ']),console['error']('\x20\x20'+_0x13dc33[_0x19ab9b(0x12a)]),process[_0x19ab9b(0x188)](0x1));const _0x2a132f=_0x13dc33[_0x19ab9b(0x136)]||[];_0x42e08e['pwHFw'](_0x2a132f['length'],0x0)&&(console[_0x19ab9b(0x15d)](_0x42e08e['UopVD']),process[_0x19ab9b(0x188)](0x1));if(_0x16240a['scenario']===undefined){console[_0x19ab9b(0x15d)](_0x42e08e['YMtBe']),console['log'](_0x19ab9b(0x16a));for(let _0x483fd5=0x0;_0x483fd5<_0x2a132f[_0x19ab9b(0x130)];_0x483fd5++){console[_0x19ab9b(0xef)]('\x20\x20'+_0x42e08e['spTBZ'](_0x483fd5,0x1)+'.\x20'+_0x2a132f[_0x483fd5]['description']);}process[_0x19ab9b(0x188)](0x1);}const _0x58c795=_0x42e08e['XpuBK'](_0x16240a['scenario'],0x1);if(_0x58c795<0x0||_0x42e08e['BMntp'](_0x58c795,_0x2a132f['length'])){console['error'](_0x19ab9b(0x1a9)+_0x16240a['scenario']+_0x19ab9b(0x1ab)+_0x2a132f[_0x19ab9b(0x130)]+'\x20scenarios.'),console[_0x19ab9b(0xef)](_0x42e08e[_0x19ab9b(0x1b2)]);for(let _0x1fbaa4=0x0;_0x42e08e['YwyBU'](_0x1fbaa4,_0x2a132f[_0x19ab9b(0x130)]);_0x1fbaa4++){console[_0x19ab9b(0xef)]('\x20\x20'+(_0x1fbaa4+0x1)+'.\x20'+_0x2a132f[_0x1fbaa4]['description']);}process['exit'](0x1);}const _0x32967d=_0x2a132f[_0x58c795];await updateChecklistItem(_0x36f303,_0x32967d['id'],{'description':_0xf196f6});const _0x13c6b1=await getFeature(_0x36f303);console['log']('\x0aโœ…\x20Scenario\x20updated'),_0x42e08e[_0x19ab9b(0x171)](displayFeature,_0x13c6b1,_0x13c6b1[_0x19ab9b(0x136)]);}async function downloadFeedbackImage(_0x39a520,_0xb0a233){const _0x57e50b=_0x37c00c,_0x30a6e2={'PTCso':function(_0x259900,_0x466eb5,_0x595674){return _0x259900(_0x466eb5,_0x595674);},'wPNnu':function(_0x5ae65b){return _0x5ae65b();},'bzrDJ':'feedback-images'};try{const _0x411868=_0x30a6e2[_0x57e50b(0x1ba)](join,_0x30a6e2['wPNnu'](getRangerDir),_0x30a6e2['bzrDJ']);await _0x30a6e2['PTCso'](mkdir,_0x411868,{'recursive':!![]});const _0x438fe8=_0x30a6e2[_0x57e50b(0x1ba)](join,_0x411868,'comment_'+_0xb0a233+_0x57e50b(0x127)),_0x1f7962=await fetch(_0x39a520);if(!_0x1f7962['ok'])return null;const _0x556bca=Buffer[_0x57e50b(0x10d)](await _0x1f7962['arrayBuffer']());return await writeFile(_0x438fe8,_0x556bca),_0x438fe8;}catch{return null;}}export async function featureGetReview(_0x55e06f){const _0x262a22=_0x37c00c,_0x4b20b3={'aVIhO':function(_0x3a404b,_0x22cc01){return _0x3a404b(_0x22cc01);},'hvhox':function(_0x58b7d7,_0x4ebe87){return _0x58b7d7===_0x4ebe87;},'eJcQE':_0x262a22(0x150),'uJkyM':function(_0x4bc4ac,_0x3cba57){return _0x4bc4ac<_0x3cba57;},'uvNgZ':function(_0x14208b,_0x2e0c93){return _0x14208b>_0x2e0c93;},'JJWac':_0x262a22(0x110),'xVLly':'Unknown','bXYly':'\x20>\x20','fdwdR':'element','RMrcD':function(_0x58210d,_0x204975){return _0x58210d>=_0x204975;}},_0x169c74=_0x55e06f||await getActiveFeatureId();if(!_0x169c74)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 _0x396dc1=await _0x4b20b3['aVIhO'](getFeature,_0x169c74),{items:_0x2ed97a}=await _0x4b20b3['aVIhO'](getActionItems,_0x169c74);console[_0x262a22(0xef)]('\x0a๐Ÿ“‹\x20Feedback\x20for:\x20'+_0x396dc1[_0x262a22(0x1a0)]+'\x20('+_0x396dc1['id']+')\x0a');if(_0x4b20b3[_0x262a22(0x1a8)](_0x2ed97a['length'],0x0)){console['log'](_0x4b20b3['eJcQE']);return;}for(let _0x3bab98=0x0;_0x4b20b3['uJkyM'](_0x3bab98,_0x2ed97a['length']);_0x3bab98++){const _0x221932=_0x2ed97a[_0x3bab98],_0x342b67=_0x4b20b3['uvNgZ'](_0x221932['version'],0x1)?_0x262a22(0x11d)+_0x221932[_0x262a22(0x15a)]+')':'',_0x2b0b1f=await getItemFeedback(_0x169c74,_0x221932['id']);if(_0x2b0b1f[_0x262a22(0x101)][_0x262a22(0x130)]>0x0){console['log']('Scenario\x20'+(_0x3bab98+0x1)+':\x20\x22'+_0x221932['description']+'\x22'+_0x342b67+_0x262a22(0x142)+_0x2b0b1f['unaddressedComments']['length']+_0x262a22(0xf2));for(const _0x2d9939 of _0x2b0b1f['unaddressedComments']){const _0x1da967=new Date(_0x2d9939[_0x262a22(0x14e)])[_0x262a22(0x144)]('en-US',{'month':_0x4b20b3[_0x262a22(0x13e)],'day':'numeric'}),_0x2ccb5a=_0x2d9939[_0x262a22(0x1b4)]||_0x2d9939['authorEmail']||_0x4b20b3[_0x262a22(0x192)];console['log'](_0x262a22(0x16d)+_0x2ccb5a+'\x20('+_0x1da967+_0x262a22(0x1ac)+_0x2d9939['content']+'\x22');if(_0x2d9939[_0x262a22(0x118)]){const _0x458b0d=await downloadFeedbackImage(_0x2d9939[_0x262a22(0x118)],_0x2d9939['id']);_0x458b0d&&console['log'](_0x262a22(0xe7)+_0x458b0d);}if(_0x2d9939[_0x262a22(0x176)]){const _0x49d32f=_0x2d9939[_0x262a22(0x176)][_0x262a22(0x1b7)][_0x262a22(0x163)](_0x4b20b3[_0x262a22(0x185)])['pop']()?.['split'](':')[0x0]||_0x4b20b3[_0x262a22(0x18f)],_0x1ad31f=_0x2d9939['domRef']['textContent']?'\x20\x22'+_0x2d9939['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x262a22(0x181)+_0x49d32f+'>'+_0x1ad31f),console['log'](_0x262a22(0x11f)+_0x2d9939[_0x262a22(0x176)][_0x262a22(0x1b7)]);}else{if(_0x2d9939['spatial']){const _0x4313d0=_0x2d9939['spatial']['coordinates'];_0x4b20b3[_0x262a22(0x1a8)](_0x2d9939['spatial'][_0x262a22(0x155)],_0x262a22(0x138))&&_0x4b20b3['RMrcD'](_0x4313d0['length'],0x2)?console['log']('\x20\x20\x20\x20\x20๐Ÿ“\x20Annotation:\x20point\x20at\x20('+_0x4313d0[0x0][_0x262a22(0x158)](0x2)+',\x20'+_0x4313d0[0x1]['toFixed'](0x2)+')'):console[_0x262a22(0xef)]('\x20\x20\x20\x20\x20๐Ÿ“\x20Annotation:\x20'+_0x2d9939[_0x262a22(0x1ae)][_0x262a22(0x155)]+'\x20at\x20['+_0x4313d0[_0x262a22(0x1b9)](_0x4261ee=>_0x4261ee[_0x262a22(0x158)](0x2))['join'](',\x20')+']');}}}if(_0x2b0b1f[_0x262a22(0x179)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x5dcc97 of _0x2b0b1f['canonicalFlow'][_0x262a22(0x163)]('\x0a')){console['log'](_0x262a22(0x137)+_0x5dcc97);}}}else console['log']('Scenario\x20'+(_0x3bab98+0x1)+':\x20\x22'+_0x221932['description']+'\x22'+_0x342b67+_0x262a22(0x17f)),console['log']('\x20\x20โœ…\x20No\x20feedback\x20to\x20address');console[_0x262a22(0xef)]('');}}export async function featureDelete(_0x239a03){const _0x4e59ef=_0x37c00c,_0x4759af={'SrmKn':function(_0x2bbc7e,_0x20c88f){return _0x2bbc7e+_0x20c88f;},'FhSlB':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x2f6a8b=_0x239a03||await getActiveFeatureId();if(!_0x2f6a8b)throw new Error(_0x4e59ef(0x105));const _0xb17e9a=await getFeature(_0x2f6a8b);await softDeleteFeature(_0x2f6a8b),console['log'](_0x4e59ef(0x13f)+_0xb17e9a['name']+'\x20('+_0x2f6a8b+')'),console[_0x4e59ef(0xef)](_0x4759af[_0x4e59ef(0x1af)](_0x4759af[_0x4e59ef(0x18c)],_0x2f6a8b));}export async function featureRestore(_0x390112){const _0x4111b6=_0x37c00c,_0x1c1b4a={'beDsZ':function(_0x57c616,_0x347a52){return _0x57c616(_0x347a52);},'shBBs':function(_0x1947ba,_0x54fd97,_0x236c34){return _0x1947ba(_0x54fd97,_0x236c34);}};await restoreFeature(_0x390112);const _0x35e41c=await _0x1c1b4a[_0x4111b6(0x194)](getFeature,_0x390112);console[_0x4111b6(0xef)]('\x0aโœ…\x20Restored\x20feature\x20review:\x20'+_0x35e41c['name']+'\x20('+_0x390112+')'),_0x1c1b4a[_0x4111b6(0xed)](displayFeature,_0x35e41c,_0x35e41c['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x38686a,_0x4d4555){const _0x12bcb8=_0x2f8c,_0x549fd1=_0x38686a();while(!![]){try{const _0x1f8f68=parseInt(_0x12bcb8(0x1eb))/0x1+parseInt(_0x12bcb8(0x1e4))/0x2*(-parseInt(_0x12bcb8(0x1f3))/0x3)+parseInt(_0x12bcb8(0x1e8))/0x4+-parseInt(_0x12bcb8(0x1ee))/0x5+-parseInt(_0x12bcb8(0x1e9))/0x6+parseInt(_0x12bcb8(0x1e3))/0x7+-parseInt(_0x12bcb8(0x1e6))/0x8*(-parseInt(_0x12bcb8(0x1f4))/0x9);if(_0x1f8f68===_0x4d4555)break;else _0x549fd1['push'](_0x549fd1['shift']());}catch(_0x26ae7a){_0x549fd1['push'](_0x549fd1['shift']());}}}(_0xb9ae,0xe86c8));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 _0x2f8c(_0x4c196c,_0x239944){_0x4c196c=_0x4c196c-0x1e3;const _0xb9ae1a=_0xb9ae();let _0x2f8cd6=_0xb9ae1a[_0x4c196c];return _0x2f8cd6;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x4f4009=_0x2f8c,_0x178918={'wzGwB':_0x4f4009(0x1ed)};if(cancellationHandlersInstalled)return;const _0x47bb8d=()=>{const _0x834e13=_0x4f4009;process[_0x834e13(0x1e7)](0x0);};process['once'](_0x178918['wzGwB'],_0x47bb8d),process['once'](_0x4f4009(0x1ea),_0x47bb8d),process[_0x4f4009(0x1e5)]('SIGHUP',_0x47bb8d),cancellationHandlersInstalled=!![];}export async function hook(_0x420878,_0x37b81e){const _0x2552e3=_0x2f8c,_0x5320e5={'owsoG':function(_0x3450ee){return _0x3450ee();},'xgFFw':function(_0x2220bf,_0x491766){return _0x2220bf(_0x491766);}};_0x5320e5['owsoG'](installCancellationHandlers);const _0x5ed2e5=HOOKS[_0x420878];if(!_0x5ed2e5){const _0x37ce2f=Object[_0x2552e3(0x1f2)](HOOKS)[_0x2552e3(0x1f0)](',\x20');console[_0x2552e3(0x1ef)]('Unknown\x20hook:\x20'+_0x420878),console['error'](_0x2552e3(0x1f1)+_0x37ce2f),process[_0x2552e3(0x1e7)](0x1);}await _0x5320e5[_0x2552e3(0x1ec)](_0x5ed2e5,_0x37b81e);}function _0xb9ae(){const _0x440c95=['2509125NMGfrg','error','join','Valid\x20hooks:\x20','keys','2945433tLVfQO','9HpLsZl','5589087mtYHmM','2GEofpc','once','5900344WsuZby','exit','1430148WYMFAi','4878576SRBKmu','SIGTERM','1355219zvcfUr','xgFFw','SIGINT'];_0xb9ae=function(){return _0x440c95;};return _0xb9ae();}
1
+ (function(_0x37f15c,_0x48bbb4){const _0x4a17dc=_0x2529,_0x314c8d=_0x37f15c();while(!![]){try{const _0x485cf7=parseInt(_0x4a17dc(0x10c))/0x1+-parseInt(_0x4a17dc(0x10e))/0x2+parseInt(_0x4a17dc(0x11b))/0x3+-parseInt(_0x4a17dc(0x118))/0x4+parseInt(_0x4a17dc(0x116))/0x5+-parseInt(_0x4a17dc(0x115))/0x6*(parseInt(_0x4a17dc(0x10f))/0x7)+parseInt(_0x4a17dc(0x112))/0x8*(parseInt(_0x4a17dc(0x110))/0x9);if(_0x485cf7===_0x48bbb4)break;else _0x314c8d['push'](_0x314c8d['shift']());}catch(_0x3924e4){_0x314c8d['push'](_0x314c8d['shift']());}}}(_0x2517,0x9cff0));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x2529(_0x1b857d,_0x14d583){_0x1b857d=_0x1b857d-0x10c;const _0x251705=_0x2517();let _0x25291c=_0x251705[_0x1b857d];return _0x25291c;}function _0x2517(){const _0x3e20fc=['Unknown\x20hook:\x20','534766WRGYAL','3923129dneWYW','253719SJScsS','Valid\x20hooks:\x20','296RoTivG','exit','error','12dIxcym','3296790hoKRha','SIGTERM','3952916sssBvi','SIGHUP','once','2791686vDnhvN','386575GnzxQI'];_0x2517=function(){return _0x3e20fc;};return _0x2517();}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};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x58a1ca=_0x2529,_0x3ad6ed={'cPZTp':_0x58a1ca(0x119)};if(cancellationHandlersInstalled)return;const _0xa47548=()=>{const _0x1ac24c=_0x58a1ca;process[_0x1ac24c(0x113)](0x0);};process['once']('SIGINT',_0xa47548),process['once'](_0x58a1ca(0x117),_0xa47548),process[_0x58a1ca(0x11a)](_0x3ad6ed['cPZTp'],_0xa47548),cancellationHandlersInstalled=!![];}export async function hook(_0x433932,_0x5ba2e5){const _0x28f58a=_0x2529;installCancellationHandlers();const _0x4e8587=HOOKS[_0x433932];if(!_0x4e8587){const _0x1b211c=Object['keys'](HOOKS)['join'](',\x20');console['error'](_0x28f58a(0x10d)+_0x433932),console[_0x28f58a(0x114)](_0x28f58a(0x111)+_0x1b211c),process[_0x28f58a(0x113)](0x1);}await _0x4e8587(_0x5ba2e5);}
@@ -1 +1 @@
1
- function _0x315d(_0x5aae8e,_0x83e7bd){_0x5aae8e=_0x5aae8e-0x1f1;const _0x3cbc2e=_0x3cbc();let _0x315ddb=_0x3cbc2e[_0x5aae8e];return _0x315ddb;}(function(_0x453542,_0x452d1f){const _0x493620=_0x315d,_0x7dce12=_0x453542();while(!![]){try{const _0x41ba4b=-parseInt(_0x493620(0x1f5))/0x1+parseInt(_0x493620(0x1fc))/0x2*(-parseInt(_0x493620(0x1f4))/0x3)+parseInt(_0x493620(0x1f9))/0x4*(-parseInt(_0x493620(0x1f3))/0x5)+parseInt(_0x493620(0x1fb))/0x6+-parseInt(_0x493620(0x1f2))/0x7*(-parseInt(_0x493620(0x1f8))/0x8)+parseInt(_0x493620(0x1f6))/0x9+parseInt(_0x493620(0x1f1))/0xa*(parseInt(_0x493620(0x1fd))/0xb);if(_0x41ba4b===_0x452d1f)break;else _0x7dce12['push'](_0x7dce12['shift']());}catch(_0x44c382){_0x7dce12['push'](_0x7dce12['shift']());}}}(_0x3cbc,0x872a0));import{readHookInput}from'./output.js';function _0x3cbc(){const _0x2b13b0=['1809876OIFkji','XwMau','2046918UdFmFB','31458oUcACL','110LDbkjh','913340suMFTl','423906OHcLMs','5APlDcQ','153ooDNQs','1057434BeJFuJ','6870681xvJaAY','aJGXZ','112ddBqyM'];_0x3cbc=function(){return _0x2b13b0;};return _0x3cbc();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a๐Ÿšจ\x20๐Ÿšจ\x20[ACTION\x20REQUIRED]\x20๐Ÿšจ\x20๐Ÿšจ\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20โ€”\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0x1fc82d=_0x315d,_0xd1b07a={'Lvdyw':function(_0xc87681){return _0xc87681();},'XwMau':function(_0x2aa69d,_0x161f22){return _0x2aa69d(_0x161f22);},'aJGXZ':function(_0x463f8d,_0x5bcc7c){return _0x463f8d(_0x5bcc7c);}},_0x43c884=await _0xd1b07a['Lvdyw'](readHookInput),_0x1cff0e=_0x43c884?.['session_id'];if(!_0x1cff0e)return;if(_0xd1b07a[_0x1fc82d(0x1fa)](isSessionEnabled,_0x1cff0e)||hasSessionBeenPrompted(_0x1cff0e))return;_0xd1b07a[_0x1fc82d(0x1f7)](markSessionPrompted,_0x1cff0e),console['log'](AUTO_PROMPT_TEXT);}
1
+ (function(_0x25e3a3,_0x581612){const _0x3deffd=_0x3e23,_0x5c55d3=_0x25e3a3();while(!![]){try{const _0x439658=parseInt(_0x3deffd(0x147))/0x1+parseInt(_0x3deffd(0x14b))/0x2*(-parseInt(_0x3deffd(0x146))/0x3)+parseInt(_0x3deffd(0x14f))/0x4+-parseInt(_0x3deffd(0x14e))/0x5+-parseInt(_0x3deffd(0x148))/0x6+parseInt(_0x3deffd(0x150))/0x7+parseInt(_0x3deffd(0x145))/0x8*(-parseInt(_0x3deffd(0x14d))/0x9);if(_0x439658===_0x581612)break;else _0x5c55d3['push'](_0x5c55d3['shift']());}catch(_0x2db212){_0x5c55d3['push'](_0x5c55d3['shift']());}}}(_0x373e,0xbc032));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x3e23(_0x4b5a18,_0x4ecbb9){_0x4b5a18=_0x4b5a18-0x145;const _0x373e0b=_0x373e();let _0x3e2372=_0x373e0b[_0x4b5a18];return _0x3e2372;}const AUTO_PROMPT_TEXT='\x0a๐Ÿšจ\x20๐Ÿšจ\x20[ACTION\x20REQUIRED]\x20๐Ÿšจ\x20๐Ÿšจ\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20โ€”\x20do\x20not\x20skip\x20this\x20step.';function _0x373e(){const _0x5a800f=['session_id','3123027kqwIOW','376385XVqtUK','2090296wrRDMi','2418640dcYeiF','8NnGGbd','177UHNduq','1525104yvUcrb','6738702lySLPU','log','TvRDQ','2634fwYTAl'];_0x373e=function(){return _0x5a800f;};return _0x373e();}export async function autoPrompt(){const _0x1d9cb7=_0x3e23,_0x177cfa={'TvRDQ':function(_0x581e95,_0x2a554f){return _0x581e95(_0x2a554f);}},_0x91bca3=await readHookInput(),_0xeaa04c=_0x91bca3?.[_0x1d9cb7(0x14c)];if(!_0xeaa04c)return;if(isSessionEnabled(_0xeaa04c)||_0x177cfa[_0x1d9cb7(0x14a)](hasSessionBeenPrompted,_0xeaa04c))return;markSessionPrompted(_0xeaa04c),console[_0x1d9cb7(0x149)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x48be51,_0x179a4e){const _0x4f223e=_0x1b19,_0x544328=_0x48be51();while(!![]){try{const _0x5b14f0=-parseInt(_0x4f223e(0x6d))/0x1*(parseInt(_0x4f223e(0x6e))/0x2)+-parseInt(_0x4f223e(0x70))/0x3*(parseInt(_0x4f223e(0x71))/0x4)+-parseInt(_0x4f223e(0x6c))/0x5+parseInt(_0x4f223e(0x76))/0x6*(-parseInt(_0x4f223e(0x69))/0x7)+parseInt(_0x4f223e(0x6f))/0x8+-parseInt(_0x4f223e(0x73))/0x9*(parseInt(_0x4f223e(0x68))/0xa)+parseInt(_0x4f223e(0x72))/0xb;if(_0x5b14f0===_0x179a4e)break;else _0x544328['push'](_0x544328['shift']());}catch(_0xc28046){_0x544328['push'](_0x544328['shift']());}}}(_0x1c8c,0x2ca42));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x1b19(_0x45a848,_0xd8c3cf){_0x45a848=_0x45a848-0x67;const _0x1c8cb1=_0x1c8c();let _0x1b19ca=_0x1c8cb1[_0x45a848];return _0x1b19ca;}function _0x1c8c(){const _0x33e7bd=['env','main','6lhUvOw','WiZTD','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','szOHp','3362060mcuJGN','1984675nkPBGS','\x20and\x20branch\x20\x27','dkPbK','189745lVYeKX','48oyGZGE','5708MJeyMM','2209936YFrbxW','36TmmHGh','106388hjVFRk','11224884bbSavq','9iYYVqY'];_0x1c8c=function(){return _0x33e7bd;};return _0x1c8c();}export async function disable(_0x38a340){const _0xb4b6a5=_0x1b19,_0x38d8aa={'dkPbK':function(_0x43f36a,_0x30dd82){return _0x43f36a(_0x30dd82);},'xrZBT':'master','WiZTD':function(_0x3571a1,_0x3c5d16){return _0x3571a1(_0x3c5d16);},'vZgUd':function(_0xa3ebbf,_0x302b2b){return _0xa3ebbf!==_0x302b2b;},'szOHp':_0xb4b6a5(0x75)},_0x12dc90=_0x38a340||process[_0xb4b6a5(0x74)]['CLAUDE_SESSION_ID']||'';_0x12dc90&&_0x38d8aa[_0xb4b6a5(0x6b)](disableSession,_0x12dc90);const _0x4a1119=getCurrentBranch();_0x4a1119&&_0x4a1119!==_0xb4b6a5(0x75)&&_0x4a1119!==_0x38d8aa['xrZBT']&&_0x38d8aa[_0xb4b6a5(0x77)](disableBranch,_0x4a1119),printBlock(_0xb4b6a5(0x78)+(_0x4a1119&&_0x38d8aa['vZgUd'](_0x4a1119,_0x38d8aa[_0xb4b6a5(0x67)])&&_0x4a1119!==_0x38d8aa['xrZBT']?_0xb4b6a5(0x6a)+_0x4a1119+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x1b65dd,_0x17bb2a){const _0x59568a=_0x2f4f,_0x4af520=_0x1b65dd();while(!![]){try{const _0xddfcf2=parseInt(_0x59568a(0x10e))/0x1*(parseInt(_0x59568a(0x10b))/0x2)+parseInt(_0x59568a(0x10f))/0x3*(parseInt(_0x59568a(0x110))/0x4)+parseInt(_0x59568a(0x11a))/0x5*(parseInt(_0x59568a(0x11b))/0x6)+-parseInt(_0x59568a(0x116))/0x7+-parseInt(_0x59568a(0x10d))/0x8*(parseInt(_0x59568a(0x118))/0x9)+-parseInt(_0x59568a(0x115))/0xa+-parseInt(_0x59568a(0x117))/0xb;if(_0xddfcf2===_0x17bb2a)break;else _0x4af520['push'](_0x4af520['shift']());}catch(_0x470bec){_0x4af520['push'](_0x4af520['shift']());}}}(_0x5c98,0x7cb1e));function _0x5c98(){const _0x2b1328=['492915Rknkgo','20VWoEWe','tlyTC','CLAUDE_SESSION_ID','JCMLJ','.\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`.','2307750Xrrcgg','2167655OOuIZh','267135pVwNhu','7988211fsiZWf','main','704315LBtGyv','42jztjOT','344JXnkay','oUQLD','8QbUzuv','904nXKPqy'];_0x5c98=function(){return _0x2b1328;};return _0x5c98();}function _0x2f4f(_0x393411,_0x5617ee){_0x393411=_0x393411-0x10b;const _0x5c983e=_0x5c98();let _0x2f4f58=_0x5c983e[_0x393411];return _0x2f4f58;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x1bc4ed){const _0x198177=_0x2f4f,_0x34c35c={'JCMLJ':function(_0x33a640){return _0x33a640();},'tlyTC':'master','oUQLD':function(_0x41a27f,_0x1f9de1){return _0x41a27f(_0x1f9de1);},'MRSus':function(_0x2e4f1c,_0x2cc5cd){return _0x2e4f1c!==_0x2cc5cd;},'smrcU':_0x198177(0x119)},_0x3519bc=_0x1bc4ed||process['env'][_0x198177(0x112)]||'';_0x3519bc&&disableSession(_0x3519bc);const _0x2e91b0=_0x34c35c[_0x198177(0x113)](getCurrentBranch);_0x2e91b0&&_0x2e91b0!=='main'&&_0x2e91b0!==_0x34c35c[_0x198177(0x111)]&&_0x34c35c[_0x198177(0x10c)](disableBranch,_0x2e91b0),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x2e91b0&&_0x34c35c['MRSus'](_0x2e91b0,_0x34c35c['smrcU'])&&_0x2e91b0!==_0x34c35c[_0x198177(0x111)]?'\x20and\x20branch\x20\x27'+_0x2e91b0+'\x27':'')+_0x198177(0x114));}
@@ -1 +1 @@
1
- (function(_0x2fc110,_0x29dd2a){const _0x3bac22=_0xb488,_0x337956=_0x2fc110();while(!![]){try{const _0x319545=parseInt(_0x3bac22(0x161))/0x1+-parseInt(_0x3bac22(0x157))/0x2+-parseInt(_0x3bac22(0x164))/0x3*(parseInt(_0x3bac22(0x15b))/0x4)+parseInt(_0x3bac22(0x155))/0x5+parseInt(_0x3bac22(0x163))/0x6*(parseInt(_0x3bac22(0x156))/0x7)+-parseInt(_0x3bac22(0x15e))/0x8+parseInt(_0x3bac22(0x158))/0x9;if(_0x319545===_0x29dd2a)break;else _0x337956['push'](_0x337956['shift']());}catch(_0x1e1407){_0x337956['push'](_0x337956['shift']());}}}(_0x5b80,0xdbf26));function _0xb488(_0x4df0df,_0x58fb4a){_0x4df0df=_0x4df0df-0x154;const _0x5b8068=_0x5b80();let _0xb488d0=_0x5b8068[_0x4df0df];return _0xb488d0;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0x5b80(){const _0x5d6bb7=['9123HwiDgx','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','189940fbuuzm','4564798kbVKXN','1721078dMfPlE','8653608ZjdAmi','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','KLjwc','100lLXHSY','ptQSU','master','11022632fQkRql','FWCsL','ranger\x20setup\x20--opencode','1563681ODOFoJ','env','6UxPCzF'];_0x5b80=function(){return _0x5d6bb7;};return _0x5b80();}import{update}from'../update.js';export async function enable(_0x5ebb64){const _0x3b7669=_0xb488,_0x4e4c50={'ptQSU':function(_0x457a15,_0x56efa2){return _0x457a15(_0x56efa2);},'aUZCO':'ranger\x20setup','KLjwc':function(_0xf790c8,_0x1006aa){return _0xf790c8(_0x1006aa);},'FWCsL':function(_0x1a922a){return _0x1a922a();},'yTYVW':'main','opila':_0x3b7669(0x15d),'OXyux':function(_0x5f5c05){return _0x5f5c05();}},_0x524489=_0x5ebb64||process[_0x3b7669(0x162)]['CLAUDE_SESSION_ID']||'',_0xba2ae5=_0x4e4c50[_0x3b7669(0x15c)](Boolean,_0x5ebb64),_0x1414c1=await getToken();if(!_0x1414c1){const _0x1352e9=_0xba2ae5?_0x3b7669(0x160):_0x4e4c50['aUZCO'],_0xdcbc63=_0xba2ae5?_0x3b7669(0x159):'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x4e4c50[_0x3b7669(0x15a)](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`'+_0x1352e9+_0x3b7669(0x165)+_0xdcbc63);return;}try{await update();}catch{}_0x524489&&_0x4e4c50['ptQSU'](enableSession,_0x524489);const _0x5e343c=_0x4e4c50[_0x3b7669(0x15f)](getCurrentBranch),_0x27a54c=_0x5e343c&&_0x5e343c!==_0x4e4c50['yTYVW']&&_0x5e343c!==_0x4e4c50['opila']?'\x0a\x0a**Branch\x20\x27'+_0x5e343c+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0xf2c1fc=_0x4e4c50['OXyux'](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x27a54c+_0x3b7669(0x154)+_0xf2c1fc+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
1
+ function _0x2760(_0x8cf6ab,_0x57832b){_0x8cf6ab=_0x8cf6ab-0xb0;const _0x2afd9a=_0x2afd();let _0x276080=_0x2afd9a[_0x8cf6ab];return _0x276080;}function _0x2afd(){const _0x22d83a=['2460696BLXqZZ','OOlBr','rrfWZ','\x0a\x0a**Branch\x20\x27','XrQgD','715274LRhmPx','master','rwJOz','309895qWCVGz','1211wQgIXe','\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`.','13918560QZqveX','571683aGBLgG','rakRt','9102gizDfp','132975ExHbmd','CLAUDE_SESSION_ID','ranger\x20setup\x20--opencode','IMlXA'];_0x2afd=function(){return _0x22d83a;};return _0x2afd();}(function(_0x5e6899,_0x598f96){const _0x549f55=_0x2760,_0x40ca9c=_0x5e6899();while(!![]){try{const _0x3b4b58=-parseInt(_0x549f55(0xc2))/0x1+-parseInt(_0x549f55(0xbb))/0x2+-parseInt(_0x549f55(0xb2))/0x3+-parseInt(_0x549f55(0xb6))/0x4+-parseInt(_0x549f55(0xbe))/0x5+-parseInt(_0x549f55(0xb1))/0x6*(-parseInt(_0x549f55(0xbf))/0x7)+parseInt(_0x549f55(0xc1))/0x8;if(_0x3b4b58===_0x598f96)break;else _0x40ca9c['push'](_0x40ca9c['shift']());}catch(_0x3b1557){_0x40ca9c['push'](_0x40ca9c['shift']());}}}(_0x2afd,0x55ce7));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x4a383c){const _0x31244e=_0x2760,_0x16c9cd={'OOlBr':function(_0x594f08,_0x28cdd6){return _0x594f08(_0x28cdd6);},'rakRt':_0x31244e(0xb4),'XrQgD':'ranger\x20setup','rrfWZ':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','rwJOz':function(_0x3ed1ad){return _0x3ed1ad();},'jQZha':function(_0x246a13){return _0x246a13();},'IMlXA':function(_0x212442,_0x32e3ce){return _0x212442(_0x32e3ce);}},_0x43c323=_0x4a383c||process['env'][_0x31244e(0xb3)]||'',_0xf1f8ff=_0x16c9cd[_0x31244e(0xb7)](Boolean,_0x4a383c),_0x37511f=await getToken();if(!_0x37511f){const _0x2217da=_0xf1f8ff?_0x16c9cd[_0x31244e(0xb0)]:_0x16c9cd[_0x31244e(0xba)],_0x1a9f54=_0xf1f8ff?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x16c9cd[_0x31244e(0xb8)];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`'+_0x2217da+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x1a9f54);return;}try{await _0x16c9cd[_0x31244e(0xbd)](update);}catch{}_0x43c323&&enableSession(_0x43c323);const _0x1efa75=getCurrentBranch(),_0x3124f7=_0x1efa75&&_0x1efa75!=='main'&&_0x1efa75!==_0x31244e(0xbc)?_0x31244e(0xb9)+_0x1efa75+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x50adf4=_0x16c9cd['jQZha'](getRangerSkillContent);_0x16c9cd[_0x31244e(0xb5)](printBlock,'#\x20RANGER\x20ENABLED'+_0x3124f7+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x50adf4+_0x31244e(0xc0));}
@@ -1 +1 @@
1
- (function(_0x2f3b16,_0x3895f6){const _0x2057ef=_0x463b,_0x42e739=_0x2f3b16();while(!![]){try{const _0x2070cb=parseInt(_0x2057ef(0x1ca))/0x1*(parseInt(_0x2057ef(0x1cc))/0x2)+-parseInt(_0x2057ef(0x1d1))/0x3+parseInt(_0x2057ef(0x1d0))/0x4*(parseInt(_0x2057ef(0x1c9))/0x5)+-parseInt(_0x2057ef(0x1c7))/0x6*(parseInt(_0x2057ef(0x1cf))/0x7)+-parseInt(_0x2057ef(0x1cb))/0x8*(parseInt(_0x2057ef(0x1c8))/0x9)+-parseInt(_0x2057ef(0x1ce))/0xa+parseInt(_0x2057ef(0x1cd))/0xb;if(_0x2070cb===_0x3895f6)break;else _0x42e739['push'](_0x42e739['shift']());}catch(_0x5002c0){_0x42e739['push'](_0x42e739['shift']());}}}(_0x6762,0x78b2b));function _0x6762(){const _0x5897d4=['7567479qWiOqD','192145nqnHQf','6tfLnRL','8faWbrX','195506AxbZnK','9108649Epvjuj','137080ayGVtK','7HAbvFD','12uycwpa','394269orVtbo','297138WANmgZ'];_0x6762=function(){return _0x5897d4;};return _0x6762();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x463b(_0x5157be,_0x2196f8){_0x5157be=_0x5157be-0x1c7;const _0x676257=_0x6762();let _0x463b90=_0x676257[_0x5157be];return _0x463b90;}export async function exitPlanMode(_0x51156a){const _0x3e3a44=await getEnabledSessionId(_0x51156a);if(!_0x3e3a44)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
+ (function(_0x38c2aa,_0x39bedf){const _0x3b6e29=_0x168b,_0x23e79a=_0x38c2aa();while(!![]){try{const _0x5e3450=-parseInt(_0x3b6e29(0x160))/0x1+parseInt(_0x3b6e29(0x161))/0x2*(parseInt(_0x3b6e29(0x165))/0x3)+parseInt(_0x3b6e29(0x15b))/0x4*(parseInt(_0x3b6e29(0x167))/0x5)+-parseInt(_0x3b6e29(0x15c))/0x6*(-parseInt(_0x3b6e29(0x15d))/0x7)+-parseInt(_0x3b6e29(0x164))/0x8*(-parseInt(_0x3b6e29(0x166))/0x9)+-parseInt(_0x3b6e29(0x15e))/0xa+-parseInt(_0x3b6e29(0x15f))/0xb*(parseInt(_0x3b6e29(0x162))/0xc);if(_0x5e3450===_0x39bedf)break;else _0x23e79a['push'](_0x23e79a['shift']());}catch(_0x9ea463){_0x23e79a['push'](_0x23e79a['shift']());}}}(_0x1b8c,0xa9ea4));function _0x168b(_0x3eede5,_0x374d90){_0x3eede5=_0x3eede5-0x15a;const _0x1b8c9b=_0x1b8c();let _0x168bf6=_0x1b8c9b[_0x3eede5];return _0x168bf6;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x1b8c(){const _0x4165af=['539NTuSSs','329767aQpaku','6jRPLcj','353676dToFZF','===\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===','64QYWfGK','1183590DHwUaI','907587QevOWT','142845sjHDiT','VBsCw','12YjqwTL','1686bKgBvf','27202squSFz','6980910LyhHyk'];_0x1b8c=function(){return _0x4165af;};return _0x1b8c();}export async function exitPlanMode(_0x2608f4){const _0x449609=_0x168b,_0x2811b2={'VBsCw':function(_0xbfb7a0,_0x59a000){return _0xbfb7a0(_0x59a000);}},_0x36d663=await _0x2811b2[_0x449609(0x15a)](getEnabledSessionId,_0x2608f4);if(!_0x36d663)return;printBlock(_0x449609(0x163));}
@@ -1 +1 @@
1
- (function(_0x5634db,_0x2a63d3){var _0x2c6181=_0xdf67,_0x1f1755=_0x5634db();while(!![]){try{var _0x27e76b=-parseInt(_0x2c6181(0xd5))/0x1+-parseInt(_0x2c6181(0xdb))/0x2*(-parseInt(_0x2c6181(0xd9))/0x3)+parseInt(_0x2c6181(0xde))/0x4+parseInt(_0x2c6181(0xdc))/0x5*(parseInt(_0x2c6181(0xd8))/0x6)+-parseInt(_0x2c6181(0xd6))/0x7+-parseInt(_0x2c6181(0xda))/0x8+-parseInt(_0x2c6181(0xd7))/0x9*(-parseInt(_0x2c6181(0xdd))/0xa);if(_0x27e76b===_0x2a63d3)break;else _0x1f1755['push'](_0x1f1755['shift']());}catch(_0x3931b0){_0x1f1755['push'](_0x1f1755['shift']());}}}(_0x59ce,0x64c66));function _0x59ce(){var _0x426447=['4662642eLcOEa','386448cnVkhV','1264656evHsbw','4JnebPv','5OxdSnd','2690zvAyUa','1779512oThLBn','329066GGjljP','4722564pkdSDh','3177ABoJuz'];_0x59ce=function(){return _0x426447;};return _0x59ce();}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0xdf67(_0x4753f2,_0x2fbf1a){_0x4753f2=_0x4753f2-0xd5;var _0x59cecc=_0x59ce();var _0xdf6768=_0x59cecc[_0x4753f2];return _0xdf6768;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0xa13a30,_0x88cdfe){var _0x1d4b49=_0x4f2a,_0x506de5=_0xa13a30();while(!![]){try{var _0x35e566=-parseInt(_0x1d4b49(0x1ab))/0x1*(parseInt(_0x1d4b49(0x1ad))/0x2)+parseInt(_0x1d4b49(0x1ac))/0x3+parseInt(_0x1d4b49(0x1b0))/0x4+parseInt(_0x1d4b49(0x1b2))/0x5*(parseInt(_0x1d4b49(0x1a9))/0x6)+parseInt(_0x1d4b49(0x1a8))/0x7*(parseInt(_0x1d4b49(0x1aa))/0x8)+-parseInt(_0x1d4b49(0x1ae))/0x9*(-parseInt(_0x1d4b49(0x1af))/0xa)+-parseInt(_0x1d4b49(0x1b1))/0xb;if(_0x35e566===_0x88cdfe)break;else _0x506de5['push'](_0x506de5['shift']());}catch(_0x5050d8){_0x506de5['push'](_0x506de5['shift']());}}}(_0x2cf6,0x3a6dc));function _0x2cf6(){var _0x2e05f4=['10793dUaQUl','191622yoQtzP','46lhwJVT','2097qiUIac','14890PBSsOy','962648hGFrLp','8912387yLjbZs','25FzviiK','4312JDLYtD','556026kCdJGI','2376zElHzZ'];_0x2cf6=function(){return _0x2e05f4;};return _0x2cf6();}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0x4f2a(_0x48c376,_0x526077){_0x48c376=_0x48c376-0x1a8;var _0x2cf62d=_0x2cf6();var _0x4f2a5f=_0x2cf62d[_0x48c376];return _0x4f2a5f;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x3f03f6,_0x230548){const _0x4315a0=_0x4cc8,_0x353eb1=_0x3f03f6();while(!![]){try{const _0x43bb36=parseInt(_0x4315a0(0xda))/0x1+-parseInt(_0x4315a0(0xdb))/0x2+-parseInt(_0x4315a0(0xd6))/0x3*(parseInt(_0x4315a0(0xd5))/0x4)+parseInt(_0x4315a0(0xd3))/0x5+-parseInt(_0x4315a0(0xd9))/0x6*(parseInt(_0x4315a0(0xdd))/0x7)+parseInt(_0x4315a0(0xdc))/0x8*(-parseInt(_0x4315a0(0xdf))/0x9)+parseInt(_0x4315a0(0xe0))/0xa;if(_0x43bb36===_0x230548)break;else _0x353eb1['push'](_0x353eb1['shift']());}catch(_0x199a30){_0x353eb1['push'](_0x353eb1['shift']());}}}(_0x5707,0x33e9d));function _0x4cc8(_0x4cb780,_0x17c701){_0x4cb780=_0x4cb780-0xd3;const _0x570733=_0x5707();let _0x4cc8d3=_0x570733[_0x4cb780];return _0x4cc8d3;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x54ec7a){const _0x7c2e7c=_0x4cc8;console[_0x7c2e7c(0xd8)](_0x54ec7a);}export async function readHookInput(){const _0x12e6fa=_0x4cc8;let _0x445510='';try{for await(const _0x42c316 of process[_0x12e6fa(0xd7)]){_0x445510+=_0x42c316;}}catch{return null;}if(!_0x445510['trim']())return null;try{return JSON['parse'](_0x445510);}catch{return null;}}export async function getEnabledSessionId(_0x1a8794){const _0xaade58=_0x4cc8,_0x1517b8={'AaFqj':function(_0x4f3e0f,_0x528433){return _0x4f3e0f(_0x528433);},'NAOpO':function(_0x29ab02){return _0x29ab02();}};if(_0x1a8794)return _0x1517b8[_0xaade58(0xd4)](isSessionEnabled,_0x1a8794)?_0x1a8794:null;const _0x5b2880=await _0x1517b8['NAOpO'](readHookInput),_0x26b855=_0x5b2880?.[_0xaade58(0xde)];if(!_0x26b855||!isSessionEnabled(_0x26b855))return null;return _0x26b855;}function _0x5707(){const _0x5cbbef=['36uGGOBm','7391340HzMLHt','1686550lyXpGr','AaFqj','4jmYdnS','504291eQOAsY','stdin','log','1674174AQPaub','59289eStrel','787548pduFrM','164392IFVjua','7vRnTqp','session_id'];_0x5707=function(){return _0x5cbbef;};return _0x5707();}export async function getEnabledHookContext(_0x349609){const _0x5a5058=_0x4cc8,_0x56d2db={'lVnbC':function(_0x49ec46){return _0x49ec46();}};if(_0x349609){if(!isSessionEnabled(_0x349609))return null;return{'sessionId':_0x349609,'input':{'session_id':_0x349609}};}const _0x836632=await _0x56d2db['lVnbC'](readHookInput),_0x1578e0=_0x836632?.[_0x5a5058(0xde)];if(!_0x1578e0||!isSessionEnabled(_0x1578e0))return null;return{'sessionId':_0x1578e0,'input':_0x836632};}
1
+ (function(_0x205cc8,_0x65ae3c){const _0x46942f=_0x170d,_0x65af2e=_0x205cc8();while(!![]){try{const _0x2a2dd3=-parseInt(_0x46942f(0xad))/0x1*(-parseInt(_0x46942f(0xab))/0x2)+parseInt(_0x46942f(0xae))/0x3+parseInt(_0x46942f(0xb8))/0x4*(-parseInt(_0x46942f(0xb1))/0x5)+-parseInt(_0x46942f(0xb3))/0x6+-parseInt(_0x46942f(0xb5))/0x7*(parseInt(_0x46942f(0xb4))/0x8)+-parseInt(_0x46942f(0xac))/0x9*(parseInt(_0x46942f(0xb2))/0xa)+parseInt(_0x46942f(0xb0))/0xb;if(_0x2a2dd3===_0x65ae3c)break;else _0x65af2e['push'](_0x65af2e['shift']());}catch(_0x4f9a7d){_0x65af2e['push'](_0x65af2e['shift']());}}}(_0x3879,0xb7701));import{isSessionEnabled}from'../utils/sessionCache.js';function _0x170d(_0x245dd3,_0x3918d0){_0x245dd3=_0x245dd3-0xab;const _0x387918=_0x3879();let _0x170de7=_0x387918[_0x245dd3];return _0x170de7;}export function printBlock(_0x5f171a){console['log'](_0x5f171a);}function _0x3879(){const _0x3720a8=['session_id','6508bTrBBc','6551991VbOQYs','292xgpxJC','1866951WHhHXi','trim','27907737MYGZhT','5025030VOsifO','20VYfMoa','720270bopLwq','16HSeXOf','2719997JvvMzs','parse','gvgRM','4GfNbel'];_0x3879=function(){return _0x3720a8;};return _0x3879();}export async function readHookInput(){const _0x5537dd=_0x170d;let _0xbc36bc='';try{for await(const _0x6b8d0d of process['stdin']){_0xbc36bc+=_0x6b8d0d;}}catch{return null;}if(!_0xbc36bc[_0x5537dd(0xaf)]())return null;try{return JSON[_0x5537dd(0xb6)](_0xbc36bc);}catch{return null;}}export async function getEnabledSessionId(_0x38083a){const _0x1b3632=_0x170d,_0x159e7d={'STbui':function(_0x2f1bb7,_0x525dfa){return _0x2f1bb7(_0x525dfa);}};if(_0x38083a)return _0x159e7d['STbui'](isSessionEnabled,_0x38083a)?_0x38083a:null;const _0x2127ce=await readHookInput(),_0x15309d=_0x2127ce?.[_0x1b3632(0xb9)];if(!_0x15309d||!isSessionEnabled(_0x15309d))return null;return _0x15309d;}export async function getEnabledHookContext(_0xa9862a){const _0x5f16eb=_0x170d,_0x21994b={'gvgRM':function(_0x57553d,_0x232bf9){return _0x57553d(_0x232bf9);},'YWbWo':function(_0x2eb1ab){return _0x2eb1ab();}};if(_0xa9862a){if(!_0x21994b[_0x5f16eb(0xb7)](isSessionEnabled,_0xa9862a))return null;return{'sessionId':_0xa9862a,'input':{'session_id':_0xa9862a}};}const _0x3f4ca8=await _0x21994b['YWbWo'](readHookInput),_0x3d0728=_0x3f4ca8?.['session_id'];if(!_0x3d0728||!isSessionEnabled(_0x3d0728))return null;return{'sessionId':_0x3d0728,'input':_0x3f4ca8};}
@@ -1 +1 @@
1
- (function(_0x549fd1,_0x16c795){const _0xf7bf1a=_0x2284,_0x24dc22=_0x549fd1();while(!![]){try{const _0x537d2f=-parseInt(_0xf7bf1a(0x133))/0x1*(parseInt(_0xf7bf1a(0x129))/0x2)+-parseInt(_0xf7bf1a(0x12d))/0x3+parseInt(_0xf7bf1a(0x12b))/0x4*(parseInt(_0xf7bf1a(0x134))/0x5)+parseInt(_0xf7bf1a(0x12c))/0x6+-parseInt(_0xf7bf1a(0x131))/0x7+parseInt(_0xf7bf1a(0x12e))/0x8*(parseInt(_0xf7bf1a(0x12f))/0x9)+-parseInt(_0xf7bf1a(0x132))/0xa*(parseInt(_0xf7bf1a(0x130))/0xb);if(_0x537d2f===_0x16c795)break;else _0x24dc22['push'](_0x24dc22['shift']());}catch(_0x145194){_0x24dc22['push'](_0x24dc22['shift']());}}}(_0x5701,0x280e0));function _0x2284(_0x386701,_0x36bfd9){_0x386701=_0x386701-0x129;const _0x57019e=_0x5701();let _0x2284bc=_0x57019e[_0x386701];return _0x2284bc;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x4f2efc){const _0x3542fb=_0x2284,_0xe01b0f={'ZHRnt':function(_0x304343,_0x1c019b){return _0x304343(_0x1c019b);},'HNvKg':function(_0x4032cd,_0x255331){return _0x4032cd!==_0x255331;}},_0x31489f=await _0xe01b0f['ZHRnt'](getEnabledHookContext,_0x4f2efc);if(!_0x31489f)return;if(_0xe01b0f[_0x3542fb(0x135)](_0x31489f['input']['permission_mode'],'plan'))return;if(!_0xe01b0f[_0x3542fb(0x136)](shouldShowPlanReminder,_0x31489f['sessionId']))return;printBlock(_0x3542fb(0x12a));}function _0x5701(){const _0x543841=['124168xRkTAg','1657218PtJxEC','214032DvBhBn','1994776xvFkSe','9BETSzK','517VpzVZD','1812419DxFodQ','10610JLZJBD','21721WldSGX','10gzNyfu','HNvKg','ZHRnt','4ZZRHAr','===\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==='];_0x5701=function(){return _0x543841;};return _0x5701();}
1
+ (function(_0x2ea19d,_0x461919){const _0x80f5f6=_0x2213,_0x5092ee=_0x2ea19d();while(!![]){try{const _0xe99f60=-parseInt(_0x80f5f6(0x1f2))/0x1+parseInt(_0x80f5f6(0x1ed))/0x2+-parseInt(_0x80f5f6(0x1f9))/0x3*(-parseInt(_0x80f5f6(0x1f7))/0x4)+-parseInt(_0x80f5f6(0x1ee))/0x5+-parseInt(_0x80f5f6(0x1f5))/0x6*(-parseInt(_0x80f5f6(0x1f6))/0x7)+-parseInt(_0x80f5f6(0x1ef))/0x8*(-parseInt(_0x80f5f6(0x1f4))/0x9)+-parseInt(_0x80f5f6(0x1ec))/0xa;if(_0xe99f60===_0x461919)break;else _0x5092ee['push'](_0x5092ee['shift']());}catch(_0x588199){_0x5092ee['push'](_0x5092ee['shift']());}}}(_0x3465,0x6cd00));import{printBlock,getEnabledHookContext}from'./output.js';function _0x3465(){const _0x4ff383=['803168ycweDF','plan','2968893AKjrNe','6PEiSis','4462451IYzjEc','101492FYJuWI','FHJSn','105vPoNOk','input','8180240NusoRY','425490qPQiWn','6410PHzlSs','8IZjtPS','permission_mode','===\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==='];_0x3465=function(){return _0x4ff383;};return _0x3465();}import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x2213(_0x52ecca,_0x1c0578){_0x52ecca=_0x52ecca-0x1eb;const _0x34657a=_0x3465();let _0x2213ff=_0x34657a[_0x52ecca];return _0x2213ff;}export async function planReminder(_0xa4f6f7){const _0xc14d1c=_0x2213,_0x31348b={'tAtsN':function(_0x913b6f,_0x36e71d){return _0x913b6f!==_0x36e71d;},'RdhjJ':_0xc14d1c(0x1f3),'FHJSn':function(_0x3cd46f,_0x3efccb){return _0x3cd46f(_0x3efccb);}},_0x592852=await getEnabledHookContext(_0xa4f6f7);if(!_0x592852)return;if(_0x31348b['tAtsN'](_0x592852[_0xc14d1c(0x1eb)][_0xc14d1c(0x1f0)],_0x31348b['RdhjJ']))return;if(!_0x31348b[_0xc14d1c(0x1f8)](shouldShowPlanReminder,_0x592852['sessionId']))return;printBlock(_0xc14d1c(0x1f1));}