@ranger-testing/ranger-cli 2.5.3 → 2.5.4-alpha.071b7bd-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 _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
+ const _0x50f442=_0xf532;(function(_0x281094,_0x234084){const _0x303859=_0xf532,_0x4f4bcd=_0x281094();while(!![]){try{const _0x5993fd=parseInt(_0x303859(0x71))/0x1*(-parseInt(_0x303859(0x93))/0x2)+-parseInt(_0x303859(0x7a))/0x3*(parseInt(_0x303859(0x91))/0x4)+-parseInt(_0x303859(0x9f))/0x5+parseInt(_0x303859(0x8a))/0x6*(-parseInt(_0x303859(0x96))/0x7)+parseInt(_0x303859(0x8c))/0x8*(parseInt(_0x303859(0x88))/0x9)+-parseInt(_0x303859(0x98))/0xa+-parseInt(_0x303859(0x6c))/0xb*(-parseInt(_0x303859(0x7d))/0xc);if(_0x5993fd===_0x234084)break;else _0x4f4bcd['push'](_0x4f4bcd['shift']());}catch(_0x58d674){_0x4f4bcd['push'](_0x4f4bcd['shift']());}}}(_0x3962,0xb33b6));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',_0x50f442(0x9c),_0x50f442(0xa3),'e2e-test-recommender'],opencodePluginName='@ranger-testing/opencode-plugin';function parseJsonc(_0x13f608){const _0x25e230=_0x50f442,_0x2a4df7=_0x13f608['replace'](/\/\*[\s\S]*?\*\//g,''),_0x241e24=_0x2a4df7[_0x25e230(0x80)](/^\s*\/\/.*$/gm,''),_0x5deb2a=_0x241e24['replace'](/,\s*([}\]])/g,'$1');return JSON[_0x25e230(0x9e)](_0x5deb2a);}async function removeOpencodePluginConfig(_0xbddc47){const _0x15090e=_0x50f442,_0x3c5c68={'pUrWZ':function(_0xef401f,_0x227dbc){return _0xef401f!==_0x227dbc;},'hNesw':function(_0xb1dfab,_0x3d1eac){return _0xb1dfab(_0x3d1eac);},'PUeHb':function(_0x28bb2b,_0x2e3e92,_0xfc6b08){return _0x28bb2b(_0x2e3e92,_0xfc6b08);},'bbnMB':function(_0x424849,_0x5ea8fa){return _0x424849===_0x5ea8fa;},'jXtPd':function(_0x2101ec,_0x57de99){return _0x2101ec+_0x57de99;}};if(!_0x3c5c68['hNesw'](existsSync,_0xbddc47))return![];let _0x410694;try{const _0x4e68ed=await _0x3c5c68['PUeHb'](readFile,_0xbddc47,_0x15090e(0x70));_0x410694=parseJsonc(_0x4e68ed);}catch{return![];}const _0x57d46b=Array['isArray'](_0x410694['plugin'])?_0x410694['plugin']:[];if(_0x57d46b[_0x15090e(0xa1)]===0x0)return![];const _0x207aa2=_0x57d46b[_0x15090e(0x6f)](_0x5ecdb7=>{if(typeof _0x5ecdb7!=='string')return!![];return _0x3c5c68['pUrWZ'](_0x5ecdb7,opencodePluginName);});if(_0x3c5c68['bbnMB'](_0x207aa2[_0x15090e(0xa1)],_0x57d46b[_0x15090e(0xa1)]))return![];return _0x3c5c68['bbnMB'](_0x207aa2['length'],0x0)?delete _0x410694[_0x15090e(0x81)]:_0x410694['plugin']=_0x207aa2,await writeFile(_0xbddc47,_0x3c5c68[_0x15090e(0x7f)](JSON[_0x15090e(0x79)](_0x410694,null,0x2),'\x0a')),!![];}function _0x3962(){const _0x3ae22b=['platform','user','\x0a🧹\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','fTKOB','dxcLj','stringify','73134NFZsXe','push','kVgqz','5232YVAhTh','ranger@trailhead','jXtPd','replace','plugin','cnRnw','uRkeR','error','VqzhE','✓\x20Removed\x20OpenCode\x20project\x20skill:\x20','RPxKL','114111DswFnU','✓\x20Removed\x20OpenCode\x20user\x20skill:\x20','88278WFiwuC','close','96auQODD','✓\x20Uninstalled\x20Claude\x20plugin\x20(project\x20scope)','GKNzK','✓\x20Removed\x20project\x20skill:\x20','win32','72utgWtr','yJpFa','4RGchBo','pjkpk','EpMvR','98wSakUF','MmcYJ','10584740CFaDmE','log','VrQbY','oRAJO','feature-tracker','QntoF','parse','1097600ANBIDL','✓\x20Removed\x20OpenCode\x20plugin\x20(user\x20config)','length','SHeAE','bug-bash','pipe','bGwuD','project','73513IrnbIs','dbRWd','✓\x20Removed\x20.ranger/\x20directory','filter','utf-8','204511owOQHr','trailhead','OiWvS'];_0x3962=function(){return _0x3ae22b;};return _0x3962();}async function uninstallClaudePlugin(_0x17de73){const _0x19a278=_0x50f442,_0xdfe17e={'VrQbY':'uninstall','GKNzK':_0x19a278(0x7e),'VpmDY':'pipe','oRAJO':function(_0x54b5d4,_0x54529f){return _0x54b5d4===_0x54529f;},'OiWvS':'win32','dxcLj':_0x19a278(0x8b),'Szduf':_0x19a278(0x84)};return new Promise(_0x2ed9d7=>{const _0x2515ff=_0x19a278,_0x2c0372=[_0x2515ff(0x81),_0xdfe17e[_0x2515ff(0x9a)],_0xdfe17e[_0x2515ff(0x8e)]];_0x17de73&&_0x2c0372[_0x2515ff(0x7b)]('--scope',_0x17de73);const _0x518b5f=spawn('claude',_0x2c0372,{'stdio':_0xdfe17e['VpmDY'],'shell':_0xdfe17e[_0x2515ff(0x9b)](process[_0x2515ff(0x74)],_0xdfe17e[_0x2515ff(0x73)])});_0x518b5f['on'](_0xdfe17e[_0x2515ff(0x78)],_0x283b27=>{_0x2ed9d7(_0x283b27===0x0);}),_0x518b5f['on'](_0xdfe17e['Szduf'],()=>{_0x2ed9d7(![]);});});}async function removeMarketplace(){const _0x933b48=_0x50f442,_0x5300ae={'VKGPS':'claude','QntoF':'marketplace','qCCvG':_0x933b48(0xa4),'VqzhE':function(_0x5807d4,_0x1db918){return _0x5807d4===_0x1db918;}};return new Promise(_0x18b0b6=>{const _0x273e06=_0x933b48,_0x1ce8dc={'ACJgW':function(_0x204639,_0x30f25d){return _0x204639(_0x30f25d);}},_0x1d45e1=spawn(_0x5300ae['VKGPS'],[_0x273e06(0x81),_0x5300ae[_0x273e06(0x9d)],'remove',_0x273e06(0x72)],{'stdio':_0x5300ae['qCCvG'],'shell':_0x5300ae[_0x273e06(0x85)](process[_0x273e06(0x74)],_0x273e06(0x90))});_0x1d45e1['on'](_0x273e06(0x8b),_0xede181=>{_0x1ce8dc['ACJgW'](_0x18b0b6,_0xede181===0x0);}),_0x1d45e1['on'](_0x273e06(0x84),()=>{_0x18b0b6(![]);});});}function _0xf532(_0x4d6273,_0x2fb113){_0x4d6273=_0x4d6273-0x6a;const _0x3962f6=_0x3962();let _0xf5322d=_0x3962f6[_0x4d6273];return _0xf5322d;}export async function clean(){const _0x50d16c=_0x50f442,_0x5c9d37={'cnRnw':_0x50d16c(0x76),'skFka':function(_0x18a299){return _0x18a299();},'EpMvR':function(_0x4a5337,_0x368aa7){return _0x4a5337(_0x368aa7);},'SHeAE':function(_0x261ea4,_0x5992bb){return _0x261ea4(_0x5992bb);},'Gtefd':function(_0x156303,_0x5e9108){return _0x156303(_0x5e9108);},'fTKOB':function(_0x65da7d,_0x14378d,_0x4922fe){return _0x65da7d(_0x14378d,_0x4922fe);},'BbcfO':function(_0x5e8895,_0x5d6ded){return _0x5e8895(_0x5d6ded);},'uRkeR':function(_0x5add62,_0x32b32a,_0x376468){return _0x5add62(_0x32b32a,_0x376468);},'bGwuD':function(_0x433eb3,_0x41afd5,_0x2acf00){return _0x433eb3(_0x41afd5,_0x2acf00);},'MmcYJ':function(_0x1b69a8,_0x2990cd){return _0x1b69a8(_0x2990cd);},'yJpFa':_0x50d16c(0x6b),'IWabx':function(_0x5b11e7,_0x507bdd,_0x2ecf0a){return _0x5b11e7(_0x507bdd,_0x2ecf0a);},'PlOuw':function(_0x3b5b01,_0x42885a){return _0x3b5b01(_0x42885a);},'kcfhc':_0x50d16c(0x75),'bEImK':function(_0x397abd,_0x86ceff,_0x2d3565){return _0x397abd(_0x86ceff,_0x2d3565);},'pjkpk':function(_0x132b28,_0x52931f){return _0x132b28(_0x52931f);},'eLHZv':'opencode.json','SLxfd':'✓\x20Removed\x20OpenCode\x20plugin\x20(project\x20config)','dbRWd':function(_0x36cb80,_0x2c72b1,_0x38474b){return _0x36cb80(_0x2c72b1,_0x38474b);},'RPxKL':function(_0x1cd0d9){return _0x1cd0d9();},'kVgqz':'✓\x20Uninstalled\x20Claude\x20plugin\x20(user\x20scope)'};console[_0x50d16c(0x99)](_0x5c9d37[_0x50d16c(0x82)]);let _0xe326fe=![];try{await _0x5c9d37['skFka'](deleteAllCredentials),console['log']('✓\x20Removed\x20stored\x20credentials'),_0xe326fe=!![];}catch{}const _0x1b88d7=_0x5c9d37['skFka'](getCacheFile);_0x5c9d37[_0x50d16c(0x95)](existsSync,_0x1b88d7)&&(await _0x5c9d37[_0x50d16c(0xa2)](rm,_0x1b88d7),_0xe326fe=!![]);const _0x599757=_0x5c9d37['skFka'](getRangerDir);_0x5c9d37['Gtefd'](existsSync,_0x599757)&&(await rm(_0x599757,{'recursive':!![]}),console['log'](_0x50d16c(0x6e)),_0xe326fe=!![]);const _0x25eb1b=_0x5c9d37['skFka'](getProjectSkillsDir);for(const _0x53a5c9 of skillsToRemove){const _0x435df4=_0x5c9d37[_0x50d16c(0x77)](join,_0x25eb1b,_0x53a5c9);_0x5c9d37['BbcfO'](existsSync,_0x435df4)&&(await _0x5c9d37['uRkeR'](rm,_0x435df4,{'recursive':!![]}),console[_0x50d16c(0x99)](_0x50d16c(0x8f)+_0x53a5c9),_0xe326fe=!![]);}const _0x1b2de0=getUserSkillsDir();for(const _0x4eb355 of skillsToRemove){const _0x2a04e2=_0x5c9d37[_0x50d16c(0x6a)](join,_0x1b2de0,_0x4eb355);existsSync(_0x2a04e2)&&(await _0x5c9d37[_0x50d16c(0x83)](rm,_0x2a04e2,{'recursive':!![]}),console['log']('✓\x20Removed\x20user\x20skill:\x20'+_0x4eb355),_0xe326fe=!![]);}const _0x1b4a31=_0x5c9d37[_0x50d16c(0x97)](getOpencodeSkillsDir,_0x5c9d37['yJpFa']);for(const _0x3803d7 of skillsToRemove){const _0xbc434f=join(_0x1b4a31,_0x3803d7);_0x5c9d37[_0x50d16c(0x95)](existsSync,_0xbc434f)&&(await _0x5c9d37['IWabx'](rm,_0xbc434f,{'recursive':!![]}),console[_0x50d16c(0x99)](_0x50d16c(0x86)+_0x3803d7),_0xe326fe=!![]);}const _0x47d2be=_0x5c9d37['PlOuw'](getOpencodeSkillsDir,_0x5c9d37['kcfhc']);for(const _0x5d9a8c of skillsToRemove){const _0x1d9f51=_0x5c9d37['uRkeR'](join,_0x47d2be,_0x5d9a8c);existsSync(_0x1d9f51)&&(await _0x5c9d37['bEImK'](rm,_0x1d9f51,{'recursive':!![]}),console['log'](_0x50d16c(0x89)+_0x5d9a8c),_0xe326fe=!![]);}const _0x256763=join(_0x5c9d37[_0x50d16c(0x94)](getOpencodeConfigDir,_0x5c9d37[_0x50d16c(0x92)]),_0x5c9d37['eLHZv']);await _0x5c9d37[_0x50d16c(0x95)](removeOpencodePluginConfig,_0x256763)&&(console[_0x50d16c(0x99)](_0x5c9d37['SLxfd']),_0xe326fe=!![]);const _0x32dba0=_0x5c9d37[_0x50d16c(0x6d)](join,getOpencodeConfigDir(_0x5c9d37['kcfhc']),_0x5c9d37['eLHZv']);await removeOpencodePluginConfig(_0x32dba0)&&(console['log'](_0x50d16c(0xa0)),_0xe326fe=!![]);const _0x48fd85=await _0x5c9d37[_0x50d16c(0x87)](uninstallClaudePlugin);_0x48fd85&&(console[_0x50d16c(0x99)](_0x5c9d37[_0x50d16c(0x7c)]),_0xe326fe=!![]);const _0x49f928=await uninstallClaudePlugin(_0x5c9d37[_0x50d16c(0x92)]);_0x49f928&&(console['log'](_0x50d16c(0x8d)),_0xe326fe=!![]);const _0x486ba9=await _0x5c9d37['skFka'](removeMarketplace);_0x486ba9&&(console[_0x50d16c(0x99)]('✓\x20Removed\x20trailhead\x20marketplace'),_0xe326fe=!![]),_0xe326fe?console[_0x50d16c(0x99)]('\x0a✅\x20Cleanup\x20complete!\x0a'):console[_0x50d16c(0x99)]('Nothing\x20to\x20clean\x20up.\x0a');}
@@ -1 +1 @@
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
+ const _0x164f0d=_0x2c78;(function(_0x5639db,_0x5a255e){const _0x41b730=_0x2c78,_0x21e93b=_0x5639db();while(!![]){try{const _0x1a9059=-parseInt(_0x41b730(0xb4))/0x1+-parseInt(_0x41b730(0xb9))/0x2+-parseInt(_0x41b730(0xba))/0x3*(parseInt(_0x41b730(0xc5))/0x4)+-parseInt(_0x41b730(0xb8))/0x5+parseInt(_0x41b730(0xc2))/0x6*(-parseInt(_0x41b730(0xc6))/0x7)+parseInt(_0x41b730(0xbe))/0x8*(-parseInt(_0x41b730(0xcc))/0x9)+parseInt(_0x41b730(0xb6))/0xa;if(_0x1a9059===_0x5a255e)break;else _0x21e93b['push'](_0x21e93b['shift']());}catch(_0x3947f5){_0x21e93b['push'](_0x21e93b['shift']());}}}(_0x536b,0xe2ef0));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless',_0x164f0d(0xbb)];function parseValue(_0x29e788,_0x17df21){const _0x600c93=_0x164f0d,_0x21247e={'shTFV':function(_0x1e3f10,_0x5ef88a){return _0x1e3f10===_0x5ef88a;},'GjnFV':_0x600c93(0xce)};if(BOOLEAN_KEYS[_0x600c93(0xbd)](_0x29e788)){if(_0x21247e['shTFV'](_0x17df21,_0x21247e['GjnFV']))return!![];if(_0x21247e['shTFV'](_0x17df21,_0x600c93(0xc8)))return![];throw new Error('Invalid\x20value\x20for\x20'+_0x29e788+_0x600c93(0xc0));}return _0x17df21;}function _0x536b(){const _0x1a3705=['includes','1658744pnfffU','iBsRB',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','Epqwu','973374yLqABC','aUOLo','mgvhG','435980ObZvGU','7qDIFXj','\x22\x20not\x20found','false','wpFvP','IgVkJ','sills','45zKRdeC','pzZoU','true','log','383108icSXTK','\x22\x20does\x20not\x20exist.','51830060upoamA','Profile\x20\x22','1638910kXwyGj','3161374oGLGdB','21aFkgoK','allowInsecureLocalhost','stringify'];_0x536b=function(){return _0x1a3705;};return _0x536b();}export async function configSet(_0x368604,_0x452c78,_0x169095){const _0x5c1b55=_0x164f0d,_0x48df52={'uLDhn':function(_0xd7d6db,_0x3780a5){return _0xd7d6db(_0x3780a5);},'sills':function(_0x3eeb88,_0x539e0b,_0x4af94d){return _0x3eeb88(_0x539e0b,_0x4af94d);}},_0x119d15=_0x48df52['uLDhn'](getEnvDir,_0x368604);if(!_0x48df52['uLDhn'](existsSync,_0x119d15))throw new Error('Profile\x20\x22'+_0x368604+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x368604);const _0x47b066=await loadSettings(_0x368604),_0x1ddcda=parseValue(_0x452c78,_0x169095);setNestedValue(_0x47b066,_0x452c78,_0x1ddcda),await _0x48df52[_0x5c1b55(0xcb)](saveSettings,_0x368604,_0x47b066),console['log']('Set\x20'+_0x452c78+'\x20=\x20'+_0x1ddcda);}function _0x2c78(_0x5b595a,_0x3f3a2e){_0x5b595a=_0x5b595a-0xb4;const _0x536b1a=_0x536b();let _0x2c7814=_0x536b1a[_0x5b595a];return _0x2c7814;}export async function configGet(_0x12be01,_0x323b60){const _0x1cb8b0=_0x164f0d,_0x195d19={'fHNVm':function(_0x2a07f8,_0x4df760){return _0x2a07f8(_0x4df760);},'aUOLo':function(_0x3a7cbf,_0x48a9ef,_0x5bb8bf){return _0x3a7cbf(_0x48a9ef,_0x5bb8bf);},'OaFpV':function(_0x2d01eb,_0x344688){return _0x2d01eb===_0x344688;},'pzZoU':'object'},_0xcc09a=getEnvDir(_0x12be01);if(!_0x195d19['fHNVm'](existsSync,_0xcc09a))throw new Error(_0x1cb8b0(0xb7)+_0x12be01+'\x22\x20does\x20not\x20exist.');const _0x2bb471=await _0x195d19['fHNVm'](loadSettings,_0x12be01),_0x5ddace=_0x195d19[_0x1cb8b0(0xc3)](getNestedValue,_0x2bb471,_0x323b60);if(_0x5ddace===undefined)console[_0x1cb8b0(0xcf)]('(not\x20set)');else _0x195d19['OaFpV'](typeof _0x5ddace,_0x195d19[_0x1cb8b0(0xcd)])?console[_0x1cb8b0(0xcf)](JSON[_0x1cb8b0(0xbc)](_0x5ddace,null,0x2)):console[_0x1cb8b0(0xcf)](_0x5ddace);}export async function configList(_0x4e77de){const _0x4eca49=_0x164f0d,_0x2dc5a2={'IgVkJ':function(_0x385ec0,_0x7afed9){return _0x385ec0(_0x7afed9);},'mgvhG':function(_0x59c0d5,_0x9b51b){return _0x59c0d5(_0x9b51b);},'wpFvP':function(_0x2b2af2,_0x959b4c){return _0x2b2af2(_0x959b4c);}},_0x2f92a7=getSettingsPath(_0x4e77de);if(!_0x2dc5a2[_0x4eca49(0xca)](existsSync,_0x2f92a7)){const _0x32805d=_0x2dc5a2['IgVkJ'](getEnvDir,_0x4e77de);if(!_0x2dc5a2[_0x4eca49(0xc4)](existsSync,_0x32805d))throw new Error(_0x4eca49(0xb7)+_0x4e77de+_0x4eca49(0xb5));console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x4e77de+'\x22');return;}const _0x2e060c=await loadSettings(_0x4e77de),_0x341052=_0x2dc5a2[_0x4eca49(0xc9)](formatSettings,_0x2e060c);!_0x341052?console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x4e77de+'\x22'):console['log'](_0x341052);}export async function configUnset(_0x21095b,_0x3804cd){const _0x1f65b2=_0x164f0d,_0x25bede={'SPTPV':function(_0x4034d3,_0x258016){return _0x4034d3(_0x258016);},'iBsRB':function(_0x331ee8,_0x13fa6f){return _0x331ee8(_0x13fa6f);},'Epqwu':function(_0x5648db,_0x379b9c,_0x19a6ae){return _0x5648db(_0x379b9c,_0x19a6ae);}},_0x2610a0=_0x25bede['SPTPV'](getEnvDir,_0x21095b);if(!existsSync(_0x2610a0))throw new Error(_0x1f65b2(0xb7)+_0x21095b+_0x1f65b2(0xb5));const _0x3ea6d8=await _0x25bede[_0x1f65b2(0xbf)](loadSettings,_0x21095b),_0x45229f=_0x25bede[_0x1f65b2(0xc1)](deleteNestedValue,_0x3ea6d8,_0x3804cd);_0x45229f?(await _0x25bede['Epqwu'](saveSettings,_0x21095b,_0x3ea6d8),console[_0x1f65b2(0xcf)]('Removed\x20'+_0x3804cd)):console[_0x1f65b2(0xcf)]('Key\x20\x22'+_0x3804cd+_0x1f65b2(0xc7));}
@@ -1 +1 @@
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
+ function _0x54e0(){const _0x283e2f=['\x0aNo\x20profiles\x20found.','push','environmentDetails','dsurG','828YmaEAO','sort','includes','1250908EyVBcj','2907884PKUOqn','1036917BBkLXD','442SmcZBr','1384645IftQYH','gcjjz','tvSaL','679653DBrQGy','LQOfc','endsWith','legacy','1992528SiyDSD','log','UdEzO','isDirectory','sKODS','local','\x20\x20\x20\x20\x20\x20Details:\x20','startsWith','136kWpxgW','lqaOb'];_0x54e0=function(){return _0x283e2f;};return _0x54e0();}(function(_0x73ad11,_0x568c3b){const _0x57968c=_0x36ee,_0x519cbe=_0x73ad11();while(!![]){try{const _0x19d73b=-parseInt(_0x57968c(0x118))/0x1*(parseInt(_0x57968c(0x102))/0x2)+parseInt(_0x57968c(0x101))/0x3+parseInt(_0x57968c(0xff))/0x4+parseInt(_0x57968c(0x103))/0x5+parseInt(_0x57968c(0x10a))/0x6+parseInt(_0x57968c(0x100))/0x7+-parseInt(_0x57968c(0x112))/0x8*(parseInt(_0x57968c(0x106))/0x9);if(_0x19d73b===_0x568c3b)break;else _0x519cbe['push'](_0x519cbe['shift']());}catch(_0x334c2a){_0x519cbe['push'](_0x519cbe['shift']());}}}(_0x54e0,0x34bd2));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x36ee(_0x338b7d,_0xb51fee){_0x338b7d=_0x338b7d-0xfe;const _0x54e01f=_0x54e0();let _0x36ee43=_0x54e01f[_0x338b7d];return _0x36ee43;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions','bug-bashes','reports','local','ci'];export async function getEnvNames(){const _0x3cc883=_0x36ee,_0x140e96={'UdEzO':function(_0x365ceb,_0x57b81c){return _0x365ceb(_0x57b81c);},'sKODS':function(_0x472c31,_0x132a59,_0x1b9d14){return _0x472c31(_0x132a59,_0x1b9d14);},'LQOfc':function(_0x303330,_0x40d6dc,_0x433d01){return _0x303330(_0x40d6dc,_0x433d01);},'RcdPE':function(_0x40affa,_0x143559){return _0x40affa(_0x143559);},'tvSaL':function(_0xa6545e,_0x31d9e3){return _0xa6545e(_0x31d9e3);},'neSNy':'.txt','dsurG':_0x3cc883(0x109)},_0x5c7912=getRangerDir();if(!existsSync(_0x5c7912))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x335a55=await readActiveProfileName(),_0x33132c=[],_0x6dc533={},_0x2c4f96=join(_0x5c7912,_0x3cc883(0x10f));if(_0x140e96[_0x3cc883(0x10c)](existsSync,_0x2c4f96)){const _0x1705fb=await _0x140e96[_0x3cc883(0x10c)](readdir,_0x2c4f96);for(const _0x4a467c of _0x1705fb){const _0xe63c00=_0x140e96[_0x3cc883(0x10e)](join,_0x2c4f96,_0x4a467c),_0x582449=await _0x140e96['UdEzO'](stat,_0xe63c00);_0x582449[_0x3cc883(0x10d)]()&&(_0x33132c[_0x3cc883(0x115)](_0x4a467c),_0x6dc533[_0x4a467c]=_0x3cc883(0x10f));}}const _0x111882=_0x140e96[_0x3cc883(0x10e)](join,_0x5c7912,'ci');if(existsSync(_0x111882)){const _0x12aa30=await readdir(_0x111882);for(const _0x45372b of _0x12aa30){const _0x30b7cf=_0x140e96[_0x3cc883(0x107)](join,_0x111882,_0x45372b),_0x388912=await _0x140e96['RcdPE'](stat,_0x30b7cf);_0x388912[_0x3cc883(0x10d)]()&&(_0x33132c['push'](_0x45372b),_0x6dc533[_0x45372b]='ci');}}const _0x2ea542=await _0x140e96[_0x3cc883(0x105)](readdir,_0x5c7912);for(const _0xe7f11e of _0x2ea542){if(NON_ENV_DIRS['includes'](_0xe7f11e))continue;if(_0xe7f11e[_0x3cc883(0x111)]('.'))continue;if(_0xe7f11e[_0x3cc883(0x108)](_0x140e96['neSNy']))continue;const _0x52c424=_0x140e96[_0x3cc883(0x107)](join,_0x5c7912,_0xe7f11e),_0x206981=await stat(_0x52c424);_0x206981[_0x3cc883(0x10d)]()&&existsSync(join(_0x52c424,'settings.json'))&&(!_0x33132c[_0x3cc883(0xfe)](_0xe7f11e)&&(_0x33132c[_0x3cc883(0x115)](_0xe7f11e),_0x6dc533[_0xe7f11e]=_0x140e96[_0x3cc883(0x117)]));}return{'envNames':_0x33132c,'activeEnv':_0x335a55,'envTypes':_0x6dc533};}export async function envList(){const _0x5adc93=_0x36ee,_0x52febe={'gnMkE':function(_0x5ee696,_0x362552){return _0x5ee696===_0x362552;},'Ooeul':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','VMoWP':function(_0x55628e,_0x59757d){return _0x55628e===_0x59757d;},'gcjjz':_0x5adc93(0x10f),'lqaOb':function(_0x19886a,_0x174e74){return _0x19886a(_0x174e74);}},{envNames:_0x5a0874,activeEnv:_0x51fc8d,envTypes:_0x1f50fa}=await getEnvNames();if(_0x52febe['gnMkE'](_0x5a0874['length'],0x0)){console[_0x5adc93(0x10b)](_0x5adc93(0x114)),console[_0x5adc93(0x10b)](_0x52febe['Ooeul']);return;}console['log']('\x0aProfiles:');for(const _0x8c0428 of _0x5a0874[_0x5adc93(0x119)]()){const _0x589c7c=_0x52febe['VMoWP'](_0x8c0428,_0x51fc8d),_0x3eae2a=_0x1f50fa[_0x8c0428]||_0x52febe[_0x5adc93(0x104)],_0x173078=await _0x52febe[_0x5adc93(0x113)](loadSettings,_0x8c0428),_0x479ad7=_0x3eae2a===_0x5adc93(0x109)?'':'\x20['+_0x3eae2a+']';console['log']('\x20\x20'+(_0x589c7c?'*\x20':'\x20\x20')+_0x8c0428+_0x479ad7),_0x173078['baseUrl']&&console[_0x5adc93(0x10b)]('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x173078['baseUrl']),_0x173078['environmentDetails']&&console[_0x5adc93(0x10b)](_0x5adc93(0x110)+_0x173078[_0x5adc93(0x116)]);}_0x51fc8d&&console[_0x5adc93(0x10b)]('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
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
+ const _0x2869d5=_0x55af;(function(_0x3fbd5f,_0x1a2413){const _0x432a1e=_0x55af,_0x71d089=_0x3fbd5f();while(!![]){try{const _0x4c18c2=-parseInt(_0x432a1e(0x18a))/0x1*(parseInt(_0x432a1e(0x19c))/0x2)+-parseInt(_0x432a1e(0x18e))/0x3*(parseInt(_0x432a1e(0x116))/0x4)+-parseInt(_0x432a1e(0x10b))/0x5*(parseInt(_0x432a1e(0x10d))/0x6)+parseInt(_0x432a1e(0x11b))/0x7+-parseInt(_0x432a1e(0x143))/0x8*(-parseInt(_0x432a1e(0x1cb))/0x9)+-parseInt(_0x432a1e(0x159))/0xa*(parseInt(_0x432a1e(0x148))/0xb)+parseInt(_0x432a1e(0x16b))/0xc;if(_0x4c18c2===_0x1a2413)break;else _0x71d089['push'](_0x71d089['shift']());}catch(_0x3a9c45){_0x71d089['push'](_0x71d089['shift']());}}}(_0x3e43,0xd57b9));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5d8f24 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=_0x41ed8e=>_0x2869d5(0x1c1)+_0x41ed8e+_0x2869d5(0x187);function getGitRepoUrl(){const _0x4df65e=_0x2869d5,_0x3e29da={'HFksl':'pipe'};try{const _0xac7d03=execSync(_0x4df65e(0x12e),{'encoding':'utf-8','stdio':[_0x3e29da['HFksl'],'pipe',_0x3e29da[_0x4df65e(0xfd)]]})[_0x4df65e(0x138)]();return _0xac7d03[_0x4df65e(0x166)](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x12b4ba=_0x2869d5,_0x2e9479={'wTHTg':'utf-8','JbkrB':_0x12b4ba(0x1a0)};try{return execSync(_0x12b4ba(0x140),{'encoding':_0x2e9479['wTHTg'],'stdio':[_0x2e9479[_0x12b4ba(0x17b)],_0x2e9479['JbkrB'],_0x12b4ba(0x1a0)]})[_0x12b4ba(0x138)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x223af6=_0x2869d5,_0x1c70b7={'CjRou':function(_0x10a0d8,_0x22ddbd,_0x10eec8){return _0x10a0d8(_0x22ddbd,_0x10eec8);},'JWmRo':function(_0x2f8278,_0x5ce917){return _0x2f8278(_0x5ce917);}},_0xaaed0a=_0x1c70b7[_0x223af6(0x118)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x1c70b7['JWmRo'](existsSync,_0xaaed0a))return null;try{const _0x1a7888=await readFile(_0xaaed0a,'utf-8');return _0x1a7888['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x251168){const _0x5a1302={'JVqRx':function(_0x1dbb86){return _0x1dbb86();},'eMfka':function(_0x398591,_0x203bcb){return _0x398591(_0x203bcb);}},_0x37312f=_0x5a1302['JVqRx'](getRangerDir),_0x2b87a8=join(_0x37312f,ACTIVE_FEATURE_FILE);!_0x5a1302['eMfka'](existsSync,_0x37312f)&&await mkdir(_0x37312f,{'recursive':!![]}),await writeFile(_0x2b87a8,_0x251168,'utf-8');}function getProgressDisplay(_0x4de442){const _0x21b62e=_0x2869d5,_0x1e589e={'GVdDq':function(_0x27fb94,_0x1328f9){return _0x27fb94===_0x1328f9;},'wNYOR':function(_0x2058bc,_0x2ee45c){return _0x2058bc*_0x2ee45c;},'Ngajw':function(_0x359a2c,_0x2e5af7){return _0x359a2c-_0x2e5af7;},'hLqxM':function(_0x2e6010,_0x1b651d){return _0x2e6010>_0x1b651d;}},_0x2366e0=_0x4de442['verifiedItems']||0x0,_0x279b25=_0x4de442['verificationInProgressItems']||0x0,_0x14e33d=_0x4de442['blockedItems']||0x0,_0x168903=_0x4de442['incompleteItems']||0x0,_0x2ae696=_0x4de442[_0x21b62e(0x182)]||0x0,_0x593b34=_0x2366e0+_0x279b25+_0x14e33d+_0x168903+_0x2ae696;if(_0x1e589e['GVdDq'](_0x593b34,0x0))return'-';const _0x23bdf9=0xa,_0x250975=Math[_0x21b62e(0x1c5)](_0x1e589e['wNYOR'](_0x2366e0/_0x593b34,_0x23bdf9)),_0x5d4931='█'[_0x21b62e(0x1ae)](_0x250975)+'░'[_0x21b62e(0x1ae)](_0x1e589e[_0x21b62e(0x15c)](_0x23bdf9,_0x250975)),_0xf0fdd2=[];if(_0x1e589e[_0x21b62e(0x129)](_0x14e33d,0x0))_0xf0fdd2[_0x21b62e(0x1b9)](_0x14e33d+'\x20blocked');if(_0x168903>0x0)_0xf0fdd2['push'](_0x168903+_0x21b62e(0x15b));if(_0x279b25>0x0)_0xf0fdd2[_0x21b62e(0x1b9)](_0x279b25+_0x21b62e(0x109));const _0xba038b=_0xf0fdd2[_0x21b62e(0x131)]>0x0?'\x20('+_0xf0fdd2[_0x21b62e(0x1a3)](',\x20')+')':'';return _0x5d4931+'\x20'+_0x2366e0+'/'+_0x593b34+_0x21b62e(0x105)+_0xba038b;}function _0x55af(_0x42b2c2,_0x503947){_0x42b2c2=_0x42b2c2-0xf9;const _0x3e435f=_0x3e43();let _0x55afe4=_0x3e435f[_0x42b2c2];return _0x55afe4;}function getCurrentSessionItems(_0x233504,_0x27a58c){const _0x3abf88=_0x2869d5;if(!_0x233504['currentSessionId'])return _0x27a58c[_0x3abf88(0x13b)](_0x3b859f=>!_0x3b859f['sessionId']);return _0x27a58c[_0x3abf88(0x13b)](_0x5c6dde=>_0x5c6dde[_0x3abf88(0x19f)]===_0x233504[_0x3abf88(0x181)]||!_0x5c6dde[_0x3abf88(0x19f)]);}function displayFeature(_0x9f1a01,_0x4db77a){const _0x562d44=_0x2869d5,_0x311e95={'VMRQY':function(_0x3d13c1,_0x4319b6){return _0x3d13c1>_0x4319b6;},'qwaJH':_0x562d44(0x119),'VtKlu':'approved','yChqE':function(_0x488fbd,_0x2c6e14){return _0x488fbd===_0x2c6e14;},'lzZBn':_0x562d44(0x192),'rXfaG':'closed','iqDxg':function(_0x2b036a,_0x45e22c){return _0x2b036a===_0x45e22c;},'RVMzV':function(_0x35a40a,_0x1988c3){return _0x35a40a>_0x1988c3;},'zIMWO':function(_0x20c184,_0x39a512){return _0x20c184!==_0x39a512;},'IhnYP':_0x562d44(0x111),'plheQ':function(_0x25c281,_0x20371b){return _0x25c281+_0x20371b;},'zFNVx':'blocked','CTkcW':function(_0x64a478,_0x540398){return _0x64a478===_0x540398;}};console['log']('\x0a'+_0x9f1a01['name']+'\x20('+_0x9f1a01[_0x562d44(0x126)]+')');_0x9f1a01[_0x562d44(0x178)]&&console[_0x562d44(0x17a)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x9f1a01[_0x562d44(0x178)]));_0x9f1a01[_0x562d44(0x191)]&&console[_0x562d44(0x17a)]('\x20\x20\x20Description:\x20'+_0x9f1a01['description']);_0x9f1a01['gitRepoUrl']&&console['log'](_0x562d44(0x1ac)+_0x9f1a01['gitRepoUrl']);_0x9f1a01['gitBranch']&&console[_0x562d44(0x17a)](_0x562d44(0x1a1)+_0x9f1a01['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x9f1a01[_0x562d44(0x196)])[_0x562d44(0x11d)]());_0x9f1a01[_0x562d44(0x1a2)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x9f1a01['completedAt'])[_0x562d44(0x11d)]());if(_0x4db77a&&_0x311e95[_0x562d44(0x12d)](_0x4db77a['length'],0x0)){console['log'](_0x311e95['qwaJH']);for(let _0x4c256e=0x0;_0x4c256e<_0x4db77a['length'];_0x4c256e++){const _0x18e966=_0x4db77a[_0x4c256e];let _0x57bb34;if(_0x18e966[_0x562d44(0x176)]===_0x562d44(0x189)&&_0x18e966[_0x562d44(0x163)]===_0x311e95['VtKlu'])_0x57bb34='✅';else{if(_0x311e95['yChqE'](_0x18e966['status'],'verified'))_0x57bb34='🟢';else{if(_0x18e966['status']===_0x311e95[_0x562d44(0x139)])_0x57bb34='🟠';else{if(_0x18e966[_0x562d44(0x176)]==='blocked')_0x57bb34='🛑';else{if(_0x18e966[_0x562d44(0x176)]===_0x311e95[_0x562d44(0x125)])_0x57bb34='⛔';else _0x311e95[_0x562d44(0x12f)](_0x18e966[_0x562d44(0x176)],'verification_in_progress')?_0x57bb34='⏳':_0x57bb34='⬜';}}}}const _0x25c628=_0x311e95['RVMzV'](_0x18e966[_0x562d44(0x1ce)],0x1)?_0x562d44(0x1c3)+_0x18e966['version']+')':'',_0x29dd96=_0x311e95[_0x562d44(0x12d)](_0x18e966['version'],0x1)&&_0x18e966[_0x562d44(0x132)]&&_0x311e95[_0x562d44(0x10e)](_0x18e966['status'],_0x311e95['rXfaG'])&&_0x311e95[_0x562d44(0x10e)](_0x18e966['status'],_0x311e95['IhnYP'])?_0x562d44(0x198):'';console[_0x562d44(0x17a)](_0x562d44(0x19b)+_0x311e95[_0x562d44(0x110)](_0x4c256e,0x1)+'.\x20'+_0x57bb34+'\x20'+_0x18e966[_0x562d44(0x191)]+_0x25c628+_0x29dd96);_0x18e966[_0x562d44(0x176)]===_0x311e95['zFNVx']&&_0x18e966[_0x562d44(0x193)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x18e966['blockedReason']);_0x18e966[_0x562d44(0x176)]==='incomplete'&&_0x18e966[_0x562d44(0x1b8)]&&console[_0x562d44(0x17a)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x18e966[_0x562d44(0x1b8)]);if(_0x18e966['status']==='closed'&&_0x311e95['CTkcW'](_0x18e966['terminalReason'],_0x311e95['VtKlu']))console[_0x562d44(0x17a)](_0x562d44(0x101));else _0x18e966['status']==='closed'&&_0x18e966[_0x562d44(0x173)]&&console[_0x562d44(0x17a)](_0x562d44(0x1b4)+_0x18e966[_0x562d44(0x173)]);}}}export async function featureCreate(_0x5e9ffb,_0x28ffa1){const _0x18f247=_0x2869d5,_0x2a2162={'YEqaT':function(_0x147275,_0x4fdb54){return _0x147275===_0x4fdb54;},'jwAjI':function(_0x166875){return _0x166875();},'LcOFS':function(_0x1d8826,_0x238f9c){return _0x1d8826(_0x238f9c);},'yhjAL':function(_0x42682a,_0x4ffc34){return _0x42682a(_0x4ffc34);},'SQZsr':function(_0x32978e,_0x4fbd85,_0xd77b8a){return _0x32978e(_0x4fbd85,_0xd77b8a);}},{envNames:_0x10e16c}=await getEnvNames();_0x2a2162['YEqaT'](_0x10e16c['length'],0x0)&&console[_0x18f247(0x14a)]('\x0a'+formatProfileRequiredMessage(_0x1b53eb=>bold(_0x1b53eb)));const _0x34ea4d=_0x28ffa1['scenarios']?_0x28ffa1['scenarios']['map'](_0x21640d=>_0x21640d[_0x18f247(0x138)]()):[],_0x2ef83f=_0x2a2162[_0x18f247(0xfe)](getGitRepoUrl),_0x3f0140=getGitBranch();console[_0x18f247(0x17a)]('\x0aCreating\x20feature\x20review...');const _0x319481=await createFeature({'name':_0x5e9ffb,'description':_0x28ffa1[_0x18f247(0x191)],'checklist':_0x34ea4d,'gitRepoUrl':_0x2ef83f,'gitBranch':_0x3f0140});await _0x2a2162[_0x18f247(0x10a)](setActiveFeatureId,_0x319481['id']),await _0x2a2162['yhjAL'](tryStartCurrentSession,_0x319481['id']);const _0x126264=process['env']['CLAUDE_SESSION_ID'];_0x126264&&_0x2a2162[_0x18f247(0x16d)](registerSession,_0x126264,_0x319481['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x319481['id']),displayFeature(_0x319481,_0x319481[_0x18f247(0x17f)]),console[_0x18f247(0x17a)](_0x18f247(0x18d));}export async function featureList(_0x364034){const _0x1cd867=_0x2869d5,_0x173b9a={'AJrph':function(_0xb7b8d1){return _0xb7b8d1();},'UeuoN':function(_0x1121c7,_0x66f297){return _0x1121c7(_0x66f297);},'scRaY':function(_0x40343f,_0x171025){return _0x40343f(_0x171025);},'mMLkw':function(_0x1b5a2f,_0xaff0f5){return _0x1b5a2f+_0xaff0f5;},'mCewH':_0x1cd867(0x188),'KMHSd':'\x20--include-deleted'},_0x281aaf={'limit':_0x364034['limit']??0xa,'offset':_0x364034['offset']??0x0,'includeDeleted':_0x364034['includeDeleted']};_0x364034[_0x1cd867(0x1bb)]&&(_0x281aaf[_0x1cd867(0x12b)]=_0x173b9a['AJrph'](getGitRepoUrl),_0x281aaf[_0x1cd867(0x199)]=getGitBranch());const _0x461a9e=await _0x173b9a['UeuoN'](listFeatures,_0x281aaf);if(_0x461a9e[_0x1cd867(0x1c8)][_0x1cd867(0x131)]===0x0){console[_0x1cd867(0x17a)](_0x1cd867(0x1b6));return;}const _0xb10365=_0x461a9e['totalCount']>_0x461a9e['items'][_0x1cd867(0x131)]?'Showing\x20'+_0x461a9e[_0x1cd867(0x1c8)][_0x1cd867(0x131)]+_0x1cd867(0x1b0)+_0x461a9e['totalCount']:_0x461a9e[_0x1cd867(0x122)]+'\x20feature\x20review(s)\x20found';console[_0x1cd867(0x17a)]('\x0a'+_0xb10365+':\x0a');for(const _0x12df7d of _0x461a9e['items']){console['log'](''+_0x12df7d['name']),console[_0x1cd867(0x17a)](_0x1cd867(0x1c9)+_0x12df7d['id']),_0x12df7d[_0x1cd867(0x178)]&&console['log']('\x20\x20\x20Progress:\x20'+_0x173b9a[_0x1cd867(0x150)](getProgressDisplay,_0x12df7d[_0x1cd867(0x178)])),_0x12df7d['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x12df7d[_0x1cd867(0x199)]),console[_0x1cd867(0x17a)]('\x20\x20\x20Created:\x20'+new Date(_0x12df7d[_0x1cd867(0x196)])['toLocaleDateString']()),console['log']('');}const _0x785ccb=_0x281aaf[_0x1cd867(0x11f)]??0xa,_0x44ac77=_0x173b9a['mMLkw'](_0x281aaf['offset']??0x0,_0x461a9e['items']['length']);if(_0x44ac77<_0x461a9e['totalCount']){const _0x57aec9=_0x785ccb!==0xa?'\x20--limit\x20'+_0x785ccb:'',_0x7dbed4=_0x364034['currentBranch']?_0x173b9a[_0x1cd867(0x19d)]:'',_0x26ec17=_0x364034['includeDeleted']?_0x173b9a['KMHSd']:'';console[_0x1cd867(0x17a)](_0x1cd867(0x155)+_0x44ac77+_0x57aec9+_0x7dbed4+_0x26ec17);}}function _0x3e43(){const _0xd0c246=['\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','scRaY','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20\x20\x20\x20\x20Progress:\x20','NKznY','Next\x20page:\x20ranger\x20list\x20--offset\x20','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','json','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','2824560dUTKyz','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20incomplete','Ngajw','peihP','\x20\x20✅\x20No\x20feedback\x20to\x20address','completed','No\x20scenarios\x20found.','content','\x20—\x20','terminalReason','Screenshot\x20','lQalh','replace','stepName','isTTY','stdout','4|5|0|1|3|2','35759064IujGFF','name','SQZsr','TWLDZ','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','\x0aAvailable\x20scenarios:','linkedSession','canceledReason','gBJZE','textContent','status','style','stats','isInteger','log','JbkrB','Rmkvf','numeric','PcxFg','checklistItems','exit','currentSessionId','pendingItems','tEgeD','/api/v1/mcp/browser-sessions/','IVgZD','\x0a✅\x20Restored\x20feature\x20review:\x20','\x1b[0m','\x20--current-branch','closed','4177TKZmGQ','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','assetUrl','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','11499HsrmiE','FXLNJ','toFixed','description','incomplete','blockedReason','ready','list','createdAt','in_progress','\x20[has\x20reviewer\x20feedback]','gitBranch','lRdGl','\x20\x20\x20','184pNPKxw','mCewH','CLAUDE_SESSION_ID','sessionId','pipe','\x20\x20\x20Branch:\x20','completedAt','join','KaLbF','latestReview','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','env','all','DXEHn','\x20\x20\x20Repository:\x20','unaddressedComments','repeat','prompt','\x20of\x20','spatial','coordinates','npxkA','\x20\x20\x20\x20\x20\x20Cancelled:\x20','iteration','\x0aNo\x20feature\x20reviews\x20found.','timing','incompleteReason','push','\x0a✅\x20Session\x20is\x20already\x20completed.','currentBranch','submittedAt','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20Session\x20','mWkRH','ruOyX','\x1b[1m','\x0a✅\x20Scenario\x20updated','\x20(v','\x20at\x20[','round','MWUXw','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','items','\x20\x20\x20ID:\x20','split','11652714hXvuOd','Unknown','DCCDo','version','map','TbpQS','screenshotUrls','browserSessionId','\x0a✅\x20Resumed\x20feature\x20review:\x20','ZXwon','\x20concluded.','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','HFksl','jwAjI','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','iAIqc','\x20\x20\x20\x20\x20\x20Approved','cTWqN','\x20>\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','\x20verified','AROtU','isKeyStep','\x20unaddressed\x20comment(s)','\x20in\x20progress','LcOFS','5760yxRLAe','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','7794mXGhLf','zIMWO',':\x20\x22','plheQ','verified','assets','frmPU','canonicalFlow','has','1352PQTeUT','IcHpD','CjRou','\x0a\x20\x20\x20Scenarios:','verification_in_progress','4363877xJVuLz','QKMuS','toLocaleString','find','limit','fDULb','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','totalCount','GBodT','screenshot','rXfaG','dashboardUrl','AIChm','agentResponse','hLqxM','HWaKb','gitRepoUrl','JqAGs','VMRQY','git\x20remote\x20get-url\x20origin','iqDxg','selected','length','parentItemId','.\x20Feature\x20review\x20has\x20','.png','error','domRef','HOUJD','trim','lzZBn','snMtb','filter','POuRF','pop','write','feedback-images','git\x20rev-parse\x20--abbrev-ref\x20HEAD','reports','type','8HWGNap','scenario','assetType','\x20\x20\x20\x20\x20Branch:\x20','hOyEA','33mfhgVT','WXQQa','warn','excludeScenarios','\x20scenario(s).','\x20\x20\x20Created:\x20','UProH'];_0x3e43=function(){return _0xd0c246;};return _0x3e43();}export async function featureShow(_0x233ecb){const _0x1b606a=_0x2869d5,_0x3d89d2={'ccLlK':function(_0x33a678){return _0x33a678();},'bBfUC':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','iAIqc':function(_0x16c16b,_0x2ac89e,_0xabe666){return _0x16c16b(_0x2ac89e,_0xabe666);}},_0x2434eb=_0x233ecb||await _0x3d89d2['ccLlK'](getActiveFeatureId);if(!_0x2434eb)throw new Error(_0x3d89d2['bBfUC']);const _0x4ac840=await getFeature(_0x2434eb);_0x3d89d2[_0x1b606a(0x100)](displayFeature,_0x4ac840,_0x4ac840[_0x1b606a(0x17f)]);}export async function featureResume(_0x59fda9){const _0x31197c=_0x2869d5,_0x275a88={'DCCDo':function(_0x4fc529,_0x9d9c16){return _0x4fc529(_0x9d9c16);},'FXLNJ':function(_0x199856,_0x390192,_0x38e51a){return _0x199856(_0x390192,_0x38e51a);},'NKznY':function(_0x313c10,_0x5ae81e){return _0x313c10&&_0x5ae81e;},'mWkRH':'any','KOVjo':function(_0x576907,_0x4a1098){return _0x576907===_0x4a1098;},'ruOyX':_0x31197c(0x152),'SFQcc':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','MagCK':_0x31197c(0x158),'AilSl':_0x31197c(0x195),'BTzBB':_0x31197c(0x10c),'QKMuS':function(_0x4afb37,_0x133da5){return _0x4afb37(_0x133da5);}};if(_0x59fda9){const _0x35050c=await getFeature(_0x59fda9);await _0x275a88['DCCDo'](setActiveFeatureId,_0x35050c['id']);const _0x4d1cdc=getGitBranch();_0x4d1cdc&&_0x4d1cdc!==_0x35050c['gitBranch']&&(await updateFeature(_0x35050c['id'],{'gitBranch':_0x4d1cdc}),console[_0x31197c(0x17a)](_0x31197c(0x104)+_0x4d1cdc));console['log'](_0x31197c(0xf9)+_0x35050c[_0x31197c(0x16c)]+'\x20('+_0x35050c['id']+')'),await tryStartCurrentSession(_0x35050c['id']);const _0xb1935d=process[_0x31197c(0x1a9)][_0x31197c(0x19e)];_0xb1935d&&registerSession(_0xb1935d,_0x35050c['id']);_0x275a88[_0x31197c(0x18f)](displayFeature,_0x35050c,_0x35050c[_0x31197c(0x17f)]),await printFeedbackNudge(_0x35050c['id']);return;}const _0x5507db=getGitRepoUrl(),_0x51c0fa=getGitBranch();if(_0x275a88[_0x31197c(0x154)](!_0x5507db,!_0x51c0fa))throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x5507db||_0x275a88[_0x31197c(0x1bf)])+'\x20/\x20'+(_0x51c0fa||_0x275a88['mWkRH'])+'...');const _0x1073ef=await listFeatures({'gitRepoUrl':_0x5507db,'gitBranch':_0x51c0fa}),_0x1a069f=_0x1073ef[_0x31197c(0x1c8)][_0x31197c(0x13b)](_0x47a33f=>_0x47a33f['status']?_0x47a33f['status']!=='verified':!_0x47a33f[_0x31197c(0x1a2)]);if(_0x275a88['KOVjo'](_0x1a069f[_0x31197c(0x131)],0x0)){console['log'](_0x31197c(0xfc)),console['log'](_0x275a88[_0x31197c(0x1c0)]);return;}let _0x519cbe;if(_0x275a88['KOVjo'](_0x1a069f['length'],0x1))_0x519cbe=_0x1a069f[0x0];else{const _0x25f8df=process['stdin'][_0x31197c(0x168)]&&process['stdout']['isTTY'];if(!_0x25f8df){console['log'](_0x275a88['SFQcc']);for(const _0x2615f4 of _0x1a069f){console['log']('\x20\x20'+_0x2615f4['name']),console[_0x31197c(0x17a)]('\x20\x20\x20\x20\x20ID:\x20'+_0x2615f4['id']),_0x2615f4[_0x31197c(0x178)]&&console[_0x31197c(0x17a)](_0x31197c(0x153)+_0x275a88[_0x31197c(0x1cd)](getProgressDisplay,_0x2615f4['stats'])),_0x2615f4[_0x31197c(0x199)]&&console['log'](_0x31197c(0x146)+_0x2615f4['gitBranch']);}throw new Error(_0x275a88['MagCK']);}const {selected:_0x4691f3}=await _0x5d8f24[_0x31197c(0x1af)]([{'type':_0x275a88['AilSl'],'name':_0x31197c(0x130),'message':_0x275a88['BTzBB'],'choices':_0x1a069f[_0x31197c(0x1cf)](_0x5f4360=>({'name':_0x5f4360['name']+'\x20('+_0x5f4360['id']+')','value':_0x5f4360['id']}))}]);_0x519cbe=_0x1a069f['find'](_0x2711d6=>_0x2711d6['id']===_0x4691f3);}await setActiveFeatureId(_0x519cbe['id']);_0x51c0fa&&_0x51c0fa!==_0x519cbe['gitBranch']&&(await _0x275a88['FXLNJ'](updateFeature,_0x519cbe['id'],{'gitBranch':_0x51c0fa}),console[_0x31197c(0x17a)](_0x31197c(0x104)+_0x51c0fa));console['log'](_0x31197c(0xf9)+_0x519cbe['name']+'\x20('+_0x519cbe['id']+')'),await _0x275a88[_0x31197c(0x11c)](tryStartCurrentSession,_0x519cbe['id']);const _0x3d29f9=await _0x275a88[_0x31197c(0x1cd)](getFeature,_0x519cbe['id']),_0x1b86da=process[_0x31197c(0x1a9)]['CLAUDE_SESSION_ID'];_0x1b86da&&_0x275a88[_0x31197c(0x18f)](registerSession,_0x1b86da,_0x3d29f9['id']),displayFeature(_0x3d29f9,_0x3d29f9[_0x31197c(0x17f)]),await _0x275a88[_0x31197c(0x1cd)](printFeedbackNudge,_0x3d29f9['id']);}async function printFeedbackNudge(_0x3063ee){const _0x3cadb2=_0x2869d5,_0x7a8ce9={'MWUXw':function(_0x435c48,_0x3d1de5,_0x5e5ac1){return _0x435c48(_0x3d1de5,_0x5e5ac1);},'tZtrU':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x51c435}=await getActionItems(_0x3063ee);let _0x3d689f=0x0,_0xc7a149=0x0;for(const _0x50809f of _0x51c435){const _0x316f56=await _0x7a8ce9[_0x3cadb2(0x1c6)](getItemFeedback,_0x3063ee,_0x50809f['id']);_0x316f56[_0x3cadb2(0x1ad)][_0x3cadb2(0x131)]>0x0&&(_0x3d689f+=_0x316f56[_0x3cadb2(0x1ad)][_0x3cadb2(0x131)],_0xc7a149++);}_0x3d689f>0x0&&(console[_0x3cadb2(0x17a)]('\x0a⚠️\x20\x20'+_0x3d689f+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0xc7a149+_0x3cadb2(0x14c)),console['log'](_0x7a8ce9['tZtrU']));}catch{}}async function tryStartCurrentSession(_0x1cba69){const _0x257caf=_0x2869d5,_0x31c9a3={'IcHpD':function(_0x205205,_0x3e8370){return _0x205205(_0x3e8370);}};try{const {sessions:_0x5e556d}=await _0x31c9a3[_0x257caf(0x117)](listFeatureSessions,_0x1cba69),_0x11928c=_0x5e556d['find'](_0xbdd681=>_0xbdd681['status']===_0x257caf(0x194));_0x11928c&&(await startSession(_0x1cba69,_0x11928c['id']),console[_0x257caf(0x17a)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x11928c[_0x257caf(0x1b5)]));}catch{}}export async function featureReport(_0x59d711,_0x5dd53b){const _0x93de16=_0x2869d5,_0x35979c={'VQekv':function(_0x39b1b5){return _0x39b1b5();},'ZXwon':function(_0x258455,_0x1a57db,_0x338790){return _0x258455(_0x1a57db,_0x338790);},'RHPRl':function(_0x47abfa,_0x3de2ef,_0x576d88,_0x2cd1cd){return _0x47abfa(_0x3de2ef,_0x576d88,_0x2cd1cd);},'NFBhT':function(_0x223931,_0xb57ed3){return _0x223931(_0xb57ed3);},'gBJZE':function(_0x46534a,_0x19f08f,_0xa6378a,_0x47d6c1){return _0x46534a(_0x19f08f,_0xa6378a,_0x47d6c1);},'Ewslj':'utf-8'},_0x3069de=_0x59d711||await _0x35979c['VQekv'](getActiveFeatureId);if(!_0x3069de)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console['log']('\x0aGenerating\x20report...');const _0x59eb6c=await _0x35979c[_0x93de16(0xfa)](getFeatureReportMarkdown,_0x3069de,{'style':_0x5dd53b[_0x93de16(0x177)]}),_0x5f22db=_0x5dd53b['output']||_0x35979c['RHPRl'](join,getRangerDir(),_0x93de16(0x141),_0x3069de+'.md'),_0x451b6a=_0x35979c['ZXwon'](join,_0x5f22db,'..');!_0x35979c['NFBhT'](existsSync,_0x451b6a)&&await mkdir(_0x451b6a,{'recursive':!![]}),await _0x35979c[_0x93de16(0x174)](writeFile,_0x5f22db,_0x59eb6c,_0x35979c['Ewslj']),console[_0x93de16(0x17a)]('\x0a✅\x20Report\x20generated:\x20'+_0x5f22db);}function getScenarioResult(_0x53d478){const _0x387c52=_0x2869d5,_0x34156b={'IVgZD':_0x387c52(0x189),'HOUJD':_0x387c52(0x11a)};if(_0x53d478['status']===_0x34156b[_0x387c52(0x185)])return _0x53d478['terminalReason']??_0x34156b[_0x387c52(0x185)];if(_0x53d478[_0x387c52(0x176)]===_0x34156b[_0x387c52(0x137)])return _0x387c52(0x197);return _0x53d478[_0x387c52(0x176)];}function getScenarioRationale(_0xf211f4,_0x269d57){const _0x551352=_0x2869d5,_0x435c13={'TbpQS':_0x551352(0x16a)},_0x31a9b3=_0x435c13[_0x551352(0x1d0)]['split']('|');let _0x234252=0x0;while(!![]){switch(_0x31a9b3[_0x234252++]){case'0':if(_0xf211f4[_0x551352(0x1b8)])return _0xf211f4[_0x551352(0x1b8)];continue;case'1':if(_0xf211f4[_0x551352(0x173)])return _0xf211f4['canceledReason'];continue;case'2':return null;case'3':if(_0xf211f4['notes'])return _0xf211f4['notes'];continue;case'4':if(_0x269d57)return _0x269d57;continue;case'5':if(_0xf211f4['blockedReason'])return _0xf211f4[_0x551352(0x193)];continue;}break;}}export async function featureReportPrDescription(_0x185889,_0x10cbc4){const _0x57e4cc=_0x2869d5,_0x59bda9={'xvNbP':_0x57e4cc(0x16f),'Rmkvf':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','lRdGl':function(_0x29987a,_0x4e117f,_0x2f151a,_0x5c12e1){return _0x29987a(_0x4e117f,_0x2f151a,_0x5c12e1);},'cTWqN':function(_0x3e4102,_0x223f61,_0xf4da6a){return _0x3e4102(_0x223f61,_0xf4da6a);}},_0x59bfec=_0x185889||await getActiveFeatureId();if(!_0x59bfec)throw new Error(_0x59bda9['xvNbP']);const _0x33689f=await getFeature(_0x59bfec),_0x3b7c23=_0x33689f['checklistItems']||[],_0x409188=getCurrentSessionItems(_0x33689f,_0x3b7c23);_0x409188[_0x57e4cc(0x131)]===0x0&&(console[_0x57e4cc(0x135)](_0x59bda9[_0x57e4cc(0x17c)]),process[_0x57e4cc(0x180)](0x1));const _0x5cddfd=_0x10cbc4[_0x57e4cc(0x14b)]??[],_0x8df020=_0x5cddfd[_0x57e4cc(0x13b)](_0xd10010=>!Number[_0x57e4cc(0x179)](_0xd10010)||_0xd10010<0x1||_0xd10010>_0x409188['length']);if(_0x8df020['length']>0x0){console['error'](_0x57e4cc(0x1a8)+_0x8df020['join'](',\x20')),console['log'](_0x57e4cc(0x171));for(let _0x7e6fd4=0x0;_0x7e6fd4<_0x409188[_0x57e4cc(0x131)];_0x7e6fd4++){console[_0x57e4cc(0x17a)]('\x20\x20'+(_0x7e6fd4+0x1)+'.\x20'+_0x409188[_0x7e6fd4]['description']);}process[_0x57e4cc(0x180)](0x1);}const _0x53f696=new Set(_0x5cddfd['map'](_0x4cbeea=>_0x4cbeea-0x1)),_0x3d8101=_0x409188['filter']((_0x3e1346,_0x5e7be6)=>!_0x53f696[_0x57e4cc(0x115)](_0x5e7be6));_0x3d8101['length']===0x0&&(console[_0x57e4cc(0x135)](_0x57e4cc(0x1a7)),process[_0x57e4cc(0x180)](0x1));if(_0x10cbc4[_0x57e4cc(0x157)])await _0x59bda9[_0x57e4cc(0x19a)](outputJsonReport,_0x59bfec,_0x33689f,_0x3d8101);else{const _0x41fdb1=await _0x59bda9[_0x57e4cc(0x102)](getFeatureReportMarkdown,_0x59bfec,{'itemIds':_0x3d8101[_0x57e4cc(0x1cf)](_0x5fe2b3=>_0x5fe2b3['id'])});process[_0x57e4cc(0x169)]['write'](_0x41fdb1['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x52aa30,_0x2aa4b2,_0x50377b){const _0x21637f=_0x2869d5,_0x81058c={'MTOoa':function(_0x456f48,_0x4190e8){return _0x456f48(_0x4190e8);},'aXaZl':function(_0x530d66){return _0x530d66();}},_0x5df406=_0x81058c['aXaZl'](getApiBaseUrl),_0x3113f9=await getFeatureReport(_0x52aa30),_0x22f0c4=new Map(_0x3113f9['checklistItems'][_0x21637f(0x1cf)](_0x5bc489=>[_0x5bc489['id'],_0x5bc489])),_0x440837=await Promise[_0x21637f(0x1aa)](_0x50377b['map'](async _0x14f7fb=>{const _0x4b962f=_0x21637f,_0xdc5f30=_0x22f0c4['get'](_0x14f7fb['id']),_0xd7692a=_0xdc5f30?.[_0x4b962f(0x172)]??null;let _0x356b73=[];if(_0x14f7fb['browserSessionId'])try{const {steps:_0x34aa9c}=await _0x81058c['MTOoa'](getBrowserSessionSteps,_0x14f7fb[_0x4b962f(0x1d2)]);_0x34aa9c[_0x4b962f(0x131)]>0x0&&(_0x356b73=_0x34aa9c[_0x4b962f(0x1cf)](_0x2892d0=>{const _0x2f9ca2=_0x4b962f,_0x45aaf4=_0x2892d0[_0x2f9ca2(0x112)]['find'](_0x35d35a=>_0x35d35a['assetType']===_0x2f9ca2(0x124)&&_0x35d35a[_0x2f9ca2(0x1b7)]==='after')??_0x2892d0[_0x2f9ca2(0x112)]['find'](_0x3ee229=>_0x3ee229[_0x2f9ca2(0x145)]==='screenshot');let _0xa5a808=null,_0xee45c1=null;if(_0x45aaf4){const _0x9087e6=_0x45aaf4['storage']['location'][_0x2f9ca2(0x1ca)]('/')[_0x2f9ca2(0x13d)]();_0xa5a808=_0x5df406+_0x2f9ca2(0x184)+_0x14f7fb['browserSessionId']+'/artifacts/'+_0x9087e6,_0x9087e6&&(_0xee45c1=_0x9087e6['replace'](/\.\w+$/,'')[_0x2f9ca2(0x166)](/^(key_)?\d+_/,'')[_0x2f9ca2(0x166)](/[-_]/g,'\x20'));}return{'description':_0xee45c1||_0x2892d0[_0x2f9ca2(0x191)]||_0x2892d0[_0x2f9ca2(0x167)]||'Step\x20'+_0x2892d0['position'],'screenshot':_0xa5a808,'is_key_step':_0x2892d0[_0x2f9ca2(0x107)]};}));}catch{}return _0x356b73[_0x4b962f(0x131)]===0x0&&_0xd7692a?.['screenshotUrls']&&(_0x356b73=_0xd7692a[_0x4b962f(0x1d1)]['map']((_0x4a8a70,_0xda45fa)=>({'description':_0x4b962f(0x164)+(_0xda45fa+0x1),'screenshot':_0x4a8a70,'is_key_step':![]}))),{'description':_0x14f7fb[_0x4b962f(0x191)],'result':getScenarioResult(_0x14f7fb),'rationale':getScenarioRationale(_0x14f7fb,_0xd7692a?.[_0x4b962f(0x128)]),'steps':_0x356b73};})),_0x5a0ce7={'url':_0x2aa4b2[_0x21637f(0x126)],'scenarios':_0x440837};process['stdout'][_0x21637f(0x13e)](JSON['stringify'](_0x5a0ce7,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x33c43c){const _0x43c955=_0x2869d5,_0x3b3ce3={'tEgeD':function(_0x4ad32e){return _0x4ad32e();},'frmPU':_0x43c955(0x1bd),'kDFAi':function(_0x308a95,_0x1f8eb1){return _0x308a95(_0x1f8eb1);},'Ogcej':'Current\x20session\x20not\x20found.','YdcFI':_0x43c955(0x1ba),'wiEus':function(_0x183bc4,_0x62df8f){return _0x183bc4!==_0x62df8f;},'IjiAH':'\x0aConcluding\x20session...','QgYuF':function(_0x82c5f,_0x20e9c7,_0xfdfb2a){return _0x82c5f(_0x20e9c7,_0xfdfb2a);}},_0x4be9c0=_0x33c43c||await _0x3b3ce3[_0x43c955(0x183)](getActiveFeatureId);if(!_0x4be9c0)throw new Error(_0x3b3ce3[_0x43c955(0x113)]);const _0x2caab2=await getFeature(_0x4be9c0);if(!_0x2caab2[_0x43c955(0x181)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x20e1a6}=await _0x3b3ce3['kDFAi'](listFeatureSessions,_0x4be9c0),_0x586516=_0x20e1a6[_0x43c955(0x11e)](_0x36b953=>_0x36b953['id']===_0x2caab2[_0x43c955(0x181)]);if(!_0x586516)throw new Error(_0x3b3ce3['Ogcej']);if(_0x586516[_0x43c955(0x176)]==='completed'){console['log'](_0x3b3ce3['YdcFI']);return;}if(_0x3b3ce3['wiEus'](_0x586516['status'],_0x43c955(0x197)))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x586516[_0x43c955(0x176)]);console['log'](_0x3b3ce3['IjiAH']),await _0x3b3ce3['QgYuF'](concludeSession,_0x4be9c0,_0x2caab2['currentSessionId']),console[_0x43c955(0x17a)]('\x0a✅\x20Session\x20'+_0x586516[_0x43c955(0x1b5)]+_0x43c955(0xfb)),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x4b4a3c){const _0x2e8724=_0x2869d5,_0x259a8e={'nFwmJ':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','DXEHn':function(_0x120bb7,_0x479041){return _0x120bb7(_0x479041);},'UProH':function(_0x4a5074,_0x5b6e53){return _0x4a5074===_0x5b6e53;},'GBodT':'No\x20sessions\x20found.','rThup':_0x2e8724(0x15f)},_0x2adf65=_0x4b4a3c||await getActiveFeatureId();if(!_0x2adf65)throw new Error(_0x259a8e['nFwmJ']);const _0x585d57=await _0x259a8e[_0x2e8724(0x1ab)](getFeature,_0x2adf65);console['log'](_0x2e8724(0x170)+_0x585d57['name']+'\x0a');const {sessions:_0x21900f}=await listFeatureSessions(_0x2adf65);if(_0x259a8e[_0x2e8724(0x14e)](_0x21900f[_0x2e8724(0x131)],0x0)){console['log'](_0x259a8e[_0x2e8724(0x123)]);return;}for(const _0x2c950d of _0x21900f){const _0x570daa=_0x259a8e['UProH'](_0x2c950d['status'],_0x259a8e['rThup'])?'✅':_0x259a8e[_0x2e8724(0x14e)](_0x2c950d[_0x2e8724(0x176)],_0x2e8724(0x197))?'🔄':'▶️';console[_0x2e8724(0x17a)](_0x570daa+_0x2e8724(0x1be)+_0x2c950d[_0x2e8724(0x1b5)]+'\x20('+_0x2c950d['id']+')'),console[_0x2e8724(0x17a)]('\x20\x20\x20Status:\x20'+_0x2c950d[_0x2e8724(0x176)]),console[_0x2e8724(0x17a)](_0x2e8724(0x14d)+new Date(_0x2c950d[_0x2e8724(0x196)])[_0x2e8724(0x11d)]()),_0x2c950d['completedAt']&&console[_0x2e8724(0x17a)]('\x20\x20\x20Completed:\x20'+new Date(_0x2c950d['completedAt'])['toLocaleString']()),console[_0x2e8724(0x17a)]('');}}export async function featureAddScenario(_0x4e7823,_0x12045f){const _0x4c74fd=_0x2869d5,_0x4c359a={'VCZXB':function(_0x590ef4,_0x6297ce,_0x87a802){return _0x590ef4(_0x6297ce,_0x87a802);}},_0x529d4a=_0x12045f||await getActiveFeatureId();if(!_0x529d4a)throw new Error(_0x4c74fd(0x1bd));const _0xd0cd4c=await getFeature(_0x529d4a);if(_0xd0cd4c['latestReview']&&!_0xd0cd4c[_0x4c74fd(0x1a5)][_0x4c74fd(0x1bc)])throw new Error(_0x4c74fd(0x1a6)+_0xd0cd4c['dashboardUrl']);await _0x4c359a['VCZXB'](createChecklistItem,_0x529d4a,_0x4e7823);const _0x59d74e=await getFeature(_0x529d4a);console['log']('\x0a✅\x20Scenario\x20added'),_0x4c359a['VCZXB'](displayFeature,_0x59d74e,_0x59d74e[_0x4c74fd(0x17f)]);}export async function featureEditScenario(_0x21ca2d,_0x88532a){const _0x353b00=_0x2869d5,_0x1ad142={'sVqWn':function(_0x88117a,_0x23b5a9){return _0x88117a===_0x23b5a9;},'TWLDZ':'\x0aAvailable\x20scenarios:','kmjUI':function(_0x4b4dcf,_0x174996){return _0x4b4dcf<_0x174996;},'hOyEA':function(_0x4f1c0d,_0x4d4fae){return _0x4f1c0d-_0x4d4fae;},'PcxFg':function(_0x686766,_0x5563a2){return _0x686766>=_0x5563a2;},'HWaKb':function(_0x3b8ff6,_0x4336ac){return _0x3b8ff6+_0x4336ac;}},_0x52179c=_0x88532a['id']||await getActiveFeatureId();!_0x52179c&&(console[_0x353b00(0x135)](_0x353b00(0x15a)),console['error'](_0x353b00(0x156)),process['exit'](0x1));const _0xd079ab=await getFeature(_0x52179c);_0xd079ab[_0x353b00(0x1a5)]&&!_0xd079ab['latestReview'][_0x353b00(0x1bc)]&&(console[_0x353b00(0x135)]('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console['error']('Please\x20finish\x20your\x20review\x20first:'),console[_0x353b00(0x135)]('\x20\x20'+_0xd079ab['dashboardUrl']),process[_0x353b00(0x180)](0x1));const _0x432500=_0xd079ab['checklistItems']||[];_0x1ad142['sVqWn'](_0x432500[_0x353b00(0x131)],0x0)&&(console[_0x353b00(0x135)](_0x353b00(0x151)),process[_0x353b00(0x180)](0x1));if(_0x88532a[_0x353b00(0x144)]===undefined){console[_0x353b00(0x135)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console[_0x353b00(0x17a)](_0x1ad142[_0x353b00(0x16e)]);for(let _0xf2843e=0x0;_0x1ad142['kmjUI'](_0xf2843e,_0x432500['length']);_0xf2843e++){console[_0x353b00(0x17a)]('\x20\x20'+(_0xf2843e+0x1)+'.\x20'+_0x432500[_0xf2843e]['description']);}process[_0x353b00(0x180)](0x1);}const _0x139b98=_0x1ad142[_0x353b00(0x147)](_0x88532a[_0x353b00(0x144)],0x1);if(_0x139b98<0x0||_0x1ad142[_0x353b00(0x17e)](_0x139b98,_0x432500[_0x353b00(0x131)])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x88532a[_0x353b00(0x144)]+_0x353b00(0x133)+_0x432500['length']+'\x20scenarios.'),console['log'](_0x1ad142[_0x353b00(0x16e)]);for(let _0x5809f9=0x0;_0x5809f9<_0x432500[_0x353b00(0x131)];_0x5809f9++){console[_0x353b00(0x17a)]('\x20\x20'+_0x1ad142[_0x353b00(0x12a)](_0x5809f9,0x1)+'.\x20'+_0x432500[_0x5809f9]['description']);}process['exit'](0x1);}const _0x11f69c=_0x432500[_0x139b98];await updateChecklistItem(_0x52179c,_0x11f69c['id'],{'description':_0x21ca2d});const _0xa39039=await getFeature(_0x52179c);console['log'](_0x353b00(0x1c2)),displayFeature(_0xa39039,_0xa39039[_0x353b00(0x17f)]);}async function downloadFeedbackImage(_0x438687,_0x4a5d39){const _0x29820e=_0x2869d5,_0xb2ad99={'npxkA':function(_0x474f1c){return _0x474f1c();},'KaLbF':_0x29820e(0x13f),'lQalh':function(_0x27cfb7,_0x593339){return _0x27cfb7(_0x593339);},'JqAGs':function(_0x50e6e8,_0x20a6f0,_0x1b996b){return _0x50e6e8(_0x20a6f0,_0x1b996b);}};try{const _0x3f611b=join(_0xb2ad99[_0x29820e(0x1b3)](getRangerDir),_0xb2ad99[_0x29820e(0x1a4)]);await mkdir(_0x3f611b,{'recursive':!![]});const _0x1a6cb4=join(_0x3f611b,'comment_'+_0x4a5d39+_0x29820e(0x134)),_0xcea68d=await _0xb2ad99[_0x29820e(0x165)](fetch,_0x438687);if(!_0xcea68d['ok'])return null;const _0x2fc004=Buffer['from'](await _0xcea68d['arrayBuffer']());return await _0xb2ad99[_0x29820e(0x12c)](writeFile,_0x1a6cb4,_0x2fc004),_0x1a6cb4;}catch{return null;}}export async function featureGetReview(_0x54840a){const _0x3d11f2=_0x2869d5,_0x11ce79={'AIChm':_0x3d11f2(0x1bd),'PzHsm':function(_0x340944,_0x393eef){return _0x340944(_0x393eef);},'bszlY':_0x3d11f2(0x160),'FqSIr':function(_0x3176c5,_0x3f657a){return _0x3176c5+_0x3f657a;},'peihP':'en-US','Qguzh':_0x3d11f2(0x17d),'fDULb':function(_0x2f25a2,_0x4cdcca,_0x2947ea){return _0x2f25a2(_0x4cdcca,_0x2947ea);},'Rrwuh':'element','AROtU':function(_0x19b5ed,_0x4a2b13){return _0x19b5ed>=_0x4a2b13;}},_0x1b6c8a=_0x54840a||await getActiveFeatureId();if(!_0x1b6c8a)throw new Error(_0x11ce79[_0x3d11f2(0x127)]);const _0x400e1f=await _0x11ce79['PzHsm'](getFeature,_0x1b6c8a),{items:_0x5f508a}=await getActionItems(_0x1b6c8a);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x400e1f[_0x3d11f2(0x16c)]+'\x20('+_0x400e1f['id']+')\x0a');if(_0x5f508a[_0x3d11f2(0x131)]===0x0){console['log'](_0x11ce79['bszlY']);return;}for(let _0x51eba9=0x0;_0x51eba9<_0x5f508a[_0x3d11f2(0x131)];_0x51eba9++){const _0x1ca688=_0x5f508a[_0x51eba9],_0x5d1279=_0x1ca688['version']>0x1?'\x20(v'+_0x1ca688[_0x3d11f2(0x1ce)]+')':'',_0x1fc4ab=await getItemFeedback(_0x1b6c8a,_0x1ca688['id']);if(_0x1fc4ab['unaddressedComments'][_0x3d11f2(0x131)]>0x0){console['log']('Scenario\x20'+_0x11ce79['FqSIr'](_0x51eba9,0x1)+_0x3d11f2(0x10f)+_0x1ca688[_0x3d11f2(0x191)]+'\x22'+_0x5d1279+_0x3d11f2(0x162)+_0x1fc4ab['unaddressedComments']['length']+_0x3d11f2(0x108));for(const _0x27aa05 of _0x1fc4ab['unaddressedComments']){const _0x4ebf99=new Date(_0x27aa05[_0x3d11f2(0x196)])['toLocaleDateString'](_0x11ce79[_0x3d11f2(0x15d)],{'month':'short','day':_0x11ce79['Qguzh']}),_0x5305ed=_0x27aa05['authorName']||_0x27aa05['authorEmail']||_0x3d11f2(0x1cc);console['log']('\x20\x20💬\x20'+_0x5305ed+'\x20('+_0x4ebf99+'):\x20\x22'+_0x27aa05[_0x3d11f2(0x161)]+'\x22');if(_0x27aa05['assetUrl']){const _0xba6203=await _0x11ce79[_0x3d11f2(0x120)](downloadFeedbackImage,_0x27aa05[_0x3d11f2(0x18c)],_0x27aa05['id']);_0xba6203&&console[_0x3d11f2(0x17a)](_0x3d11f2(0x1c7)+_0xba6203);}if(_0x27aa05['domRef']){const _0x21580a=_0x27aa05[_0x3d11f2(0x136)]['selector']['split'](_0x3d11f2(0x103))['pop']()?.['split'](':')[0x0]||_0x11ce79['Rrwuh'],_0x58545d=_0x27aa05[_0x3d11f2(0x136)][_0x3d11f2(0x175)]?'\x20\x22'+_0x27aa05[_0x3d11f2(0x136)][_0x3d11f2(0x175)]['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x3d11f2(0x18b)+_0x21580a+'>'+_0x58545d),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x27aa05['domRef']['selector']);}else{if(_0x27aa05['spatial']){const _0x23a806=_0x27aa05[_0x3d11f2(0x1b1)][_0x3d11f2(0x1b2)];_0x27aa05[_0x3d11f2(0x1b1)][_0x3d11f2(0x142)]==='point'&&_0x11ce79[_0x3d11f2(0x106)](_0x23a806[_0x3d11f2(0x131)],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x23a806[0x0]['toFixed'](0x2)+',\x20'+_0x23a806[0x1][_0x3d11f2(0x190)](0x2)+')'):console['log'](_0x3d11f2(0x121)+_0x27aa05['spatial'][_0x3d11f2(0x142)]+_0x3d11f2(0x1c4)+_0x23a806[_0x3d11f2(0x1cf)](_0x4d1927=>_0x4d1927[_0x3d11f2(0x190)](0x2))[_0x3d11f2(0x1a3)](',\x20')+']');}}}if(_0x1fc4ab[_0x3d11f2(0x114)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x2427b6 of _0x1fc4ab[_0x3d11f2(0x114)]['split']('\x0a')){console[_0x3d11f2(0x17a)]('\x20\x20\x20\x20'+_0x2427b6);}}}else console['log']('Scenario\x20'+(_0x51eba9+0x1)+':\x20\x22'+_0x1ca688[_0x3d11f2(0x191)]+'\x22'+_0x5d1279+'\x20—\x20no\x20comments'),console[_0x3d11f2(0x17a)](_0x3d11f2(0x15e));console['log']('');}}export async function featureDelete(_0x5a9917){const _0x31fc45=_0x2869d5,_0x2e1536={'POuRF':function(_0x162700){return _0x162700();},'jhtbu':function(_0x391070,_0x1e046a){return _0x391070(_0x1e046a);},'WXQQa':_0x31fc45(0x14f)},_0x28f4ce=_0x5a9917||await _0x2e1536[_0x31fc45(0x13c)](getActiveFeatureId);if(!_0x28f4ce)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 _0x4179ce=await getFeature(_0x28f4ce);await _0x2e1536['jhtbu'](softDeleteFeature,_0x28f4ce),console[_0x31fc45(0x17a)](_0x31fc45(0xff)+_0x4179ce['name']+'\x20('+_0x28f4ce+')'),console['log'](_0x2e1536[_0x31fc45(0x149)]+_0x28f4ce);}export async function featureRestore(_0xd0fb30){const _0x4b0f9e=_0x2869d5,_0x4a1095={'iSNRT':function(_0x2b9789,_0x2166e2){return _0x2b9789(_0x2166e2);},'snMtb':function(_0xb00d92,_0x2c537e){return _0xb00d92(_0x2c537e);}};await _0x4a1095['iSNRT'](restoreFeature,_0xd0fb30);const _0x1e2eb6=await _0x4a1095[_0x4b0f9e(0x13a)](getFeature,_0xd0fb30);console[_0x4b0f9e(0x17a)](_0x4b0f9e(0x186)+_0x1e2eb6[_0x4b0f9e(0x16c)]+'\x20('+_0xd0fb30+')'),displayFeature(_0x1e2eb6,_0x1e2eb6[_0x4b0f9e(0x17f)]);}
@@ -1 +1 @@
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
+ (function(_0x1a8278,_0xc37b34){const _0x9ef686=_0x33a6,_0x5970ba=_0x1a8278();while(!![]){try{const _0x132257=-parseInt(_0x9ef686(0x118))/0x1+parseInt(_0x9ef686(0x116))/0x2*(-parseInt(_0x9ef686(0x119))/0x3)+-parseInt(_0x9ef686(0x114))/0x4+parseInt(_0x9ef686(0x113))/0x5*(-parseInt(_0x9ef686(0x117))/0x6)+parseInt(_0x9ef686(0x11b))/0x7*(parseInt(_0x9ef686(0x110))/0x8)+parseInt(_0x9ef686(0x11a))/0x9+parseInt(_0x9ef686(0x112))/0xa;if(_0x132257===_0xc37b34)break;else _0x5970ba['push'](_0x5970ba['shift']());}catch(_0x324ecf){_0x5970ba['push'](_0x5970ba['shift']());}}}(_0x5742,0x271c1));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 _0x33a6(_0x577aef,_0x360742){_0x577aef=_0x577aef-0x10e;const _0x57422c=_0x5742();let _0x33a6f8=_0x57422c[_0x577aef];return _0x33a6f8;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x26b25a=_0x33a6,_0x49fe9e={'TMkei':_0x26b25a(0x10e),'FkiJd':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x1f0247=()=>{const _0x3ca1ba=_0x26b25a;process[_0x3ca1ba(0x111)](0x0);};process['once'](_0x26b25a(0x115),_0x1f0247),process[_0x26b25a(0x11c)](_0x49fe9e['TMkei'],_0x1f0247),process[_0x26b25a(0x11c)](_0x49fe9e['FkiJd'],_0x1f0247),cancellationHandlersInstalled=!![];}function _0x5742(){const _0x3da40e=['2699450grspON','4670jlXyBf','510988vNlUwk','SIGINT','169734JQazPs','222SJoviX','265938wjsaBJ','6JGhCza','1701513xBZApY','224kKafzb','once','error','Valid\x20hooks:\x20','SIGTERM','keys','74792hdxYHv','exit'];_0x5742=function(){return _0x3da40e;};return _0x5742();}export async function hook(_0x4cad5d,_0x15fb77){const _0xa9e2e=_0x33a6;installCancellationHandlers();const _0x7b7d06=HOOKS[_0x4cad5d];if(!_0x7b7d06){const _0x1ac4eb=Object[_0xa9e2e(0x10f)](HOOKS)['join'](',\x20');console[_0xa9e2e(0x11d)]('Unknown\x20hook:\x20'+_0x4cad5d),console['error'](_0xa9e2e(0x11e)+_0x1ac4eb),process[_0xa9e2e(0x111)](0x1);}await _0x7b7d06(_0x15fb77);}
@@ -1 +1 @@
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
+ const _0x59a041=_0x4588;function _0x4588(_0x39fbf5,_0x4c4070){_0x39fbf5=_0x39fbf5-0x10b;const _0x35460f=_0x3546();let _0x458807=_0x35460f[_0x39fbf5];return _0x458807;}(function(_0x5d9d97,_0xd0d963){const _0x394c1b=_0x4588,_0xf12218=_0x5d9d97();while(!![]){try{const _0x15bdc8=-parseInt(_0x394c1b(0x110))/0x1+parseInt(_0x394c1b(0x10e))/0x2+-parseInt(_0x394c1b(0x112))/0x3+-parseInt(_0x394c1b(0x10f))/0x4+parseInt(_0x394c1b(0x114))/0x5+-parseInt(_0x394c1b(0x113))/0x6*(parseInt(_0x394c1b(0x115))/0x7)+-parseInt(_0x394c1b(0x10c))/0x8*(-parseInt(_0x394c1b(0x111))/0x9);if(_0x15bdc8===_0xd0d963)break;else _0xf12218['push'](_0xf12218['shift']());}catch(_0x488567){_0xf12218['push'](_0xf12218['shift']());}}}(_0x3546,0x73993));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x59a041(0x10b);function _0x3546(){const _0x807c8e=['99MJfJmW','2123178SkezHC','36nWLeib','4127660zMlydM','852299GSLfHf','\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.','1354536memmYj','session_id','1402960RLLAPY','3274616rheueT','659086eEaBqU'];_0x3546=function(){return _0x807c8e;};return _0x3546();}export async function autoPrompt(){const _0x2cde27=_0x59a041,_0x51dffd={'ZtQVw':function(_0x23036d){return _0x23036d();},'eWden':function(_0x45dffa,_0xef7334){return _0x45dffa(_0xef7334);}},_0x287342=await _0x51dffd['ZtQVw'](readHookInput),_0x3e8e77=_0x287342?.[_0x2cde27(0x10d)];if(!_0x3e8e77)return;if(isSessionEnabled(_0x3e8e77)||hasSessionBeenPrompted(_0x3e8e77))return;_0x51dffd['eWden'](markSessionPrompted,_0x3e8e77),console['log'](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
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
+ (function(_0x1ad846,_0x1919d6){const _0x4165ca=_0x254f,_0xbd63a5=_0x1ad846();while(!![]){try{const _0x1ec0c4=-parseInt(_0x4165ca(0x1c0))/0x1*(parseInt(_0x4165ca(0x1c1))/0x2)+-parseInt(_0x4165ca(0x1b8))/0x3+parseInt(_0x4165ca(0x1c3))/0x4+parseInt(_0x4165ca(0x1be))/0x5*(parseInt(_0x4165ca(0x1bb))/0x6)+-parseInt(_0x4165ca(0x1b6))/0x7+parseInt(_0x4165ca(0x1b4))/0x8*(parseInt(_0x4165ca(0x1bc))/0x9)+-parseInt(_0x4165ca(0x1c6))/0xa*(-parseInt(_0x4165ca(0x1ba))/0xb);if(_0x1ec0c4===_0x1919d6)break;else _0xbd63a5['push'](_0xbd63a5['shift']());}catch(_0x497657){_0xbd63a5['push'](_0xbd63a5['shift']());}}}(_0x24a6,0xb7136));function _0x24a6(){const _0x3e69f8=['12ChyoKN','7324722UrGahB','sqiev','749130YhDFUz','main','2591CEoQAH','932NBBRWo','qZUuR','2783396xgGxpg','env','JlgkN','96380DXGiWs','8fJocYL','\x20and\x20branch\x20\x27','1452024uXyWxQ','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','3936051OtvzCw','master','1903LyHtys'];_0x24a6=function(){return _0x3e69f8;};return _0x24a6();}function _0x254f(_0x3a1a2d,_0x249d98){_0x3a1a2d=_0x3a1a2d-0x1b4;const _0x24a64f=_0x24a6();let _0x254fe6=_0x24a64f[_0x3a1a2d];return _0x254fe6;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x2da92f){const _0x1c95ac=_0x254f,_0x50073e={'iDzhP':function(_0x1ccfc7){return _0x1ccfc7();},'sqiev':function(_0x892db3,_0x259886){return _0x892db3!==_0x259886;},'pYNCt':function(_0x56c27d,_0x2fd9d7){return _0x56c27d!==_0x2fd9d7;},'qZUuR':_0x1c95ac(0x1b9),'NsHgv':function(_0x40e970,_0x460bf5){return _0x40e970(_0x460bf5);},'JlgkN':_0x1c95ac(0x1bf)},_0x4dde3b=_0x2da92f||process[_0x1c95ac(0x1c4)]['CLAUDE_SESSION_ID']||'';_0x4dde3b&&disableSession(_0x4dde3b);const _0xcfbc93=_0x50073e['iDzhP'](getCurrentBranch);_0xcfbc93&&_0x50073e[_0x1c95ac(0x1bd)](_0xcfbc93,_0x1c95ac(0x1bf))&&_0x50073e['pYNCt'](_0xcfbc93,_0x50073e[_0x1c95ac(0x1c2)])&&disableBranch(_0xcfbc93),_0x50073e['NsHgv'](printBlock,_0x1c95ac(0x1b7)+(_0xcfbc93&&_0xcfbc93!==_0x50073e[_0x1c95ac(0x1c5)]&&_0xcfbc93!==_0x50073e['qZUuR']?_0x1c95ac(0x1b5)+_0xcfbc93+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
@@ -1 +1 @@
1
- function _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
+ (function(_0x544585,_0x32e4a9){const _0x2bb572=_0x175f,_0x1fa424=_0x544585();while(!![]){try{const _0x3b4845=-parseInt(_0x2bb572(0x16e))/0x1*(-parseInt(_0x2bb572(0x16d))/0x2)+-parseInt(_0x2bb572(0x16c))/0x3+-parseInt(_0x2bb572(0x176))/0x4+-parseInt(_0x2bb572(0x168))/0x5*(parseInt(_0x2bb572(0x167))/0x6)+parseInt(_0x2bb572(0x16a))/0x7+-parseInt(_0x2bb572(0x17b))/0x8*(-parseInt(_0x2bb572(0x16b))/0x9)+parseInt(_0x2bb572(0x174))/0xa*(parseInt(_0x2bb572(0x179))/0xb);if(_0x3b4845===_0x32e4a9)break;else _0x1fa424['push'](_0x1fa424['shift']());}catch(_0x2ed0af){_0x1fa424['push'](_0x1fa424['shift']());}}}(_0x1a88,0xa2903));function _0x175f(_0x598c97,_0xa07396){_0x598c97=_0x598c97-0x165;const _0x1a88bf=_0x1a88();let _0x175f2d=_0x1a88bf[_0x598c97];return _0x175f2d;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x1a88(){const _0x193fe3=['CLAUDE_SESSION_ID','8089935LCzDOL','45KSFsiF','2169501vTkJcB','6joCkih','31909hNBLmJ','main','\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`.','lRKnY','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','22730PrRbqs','\x0a\x0a**Branch\x20\x27','2587864pMTxHN','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','Odsid','3421sySedZ','#\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`','890336IjZNcS','ranger\x20setup\x20--opencode','NjGBx','18HvonVN','798005Yswwmw'];_0x1a88=function(){return _0x193fe3;};return _0x1a88();}export async function enable(_0xcc6003){const _0x1d74e2=_0x175f,_0x3fe20d={'lRKnY':function(_0x2ddb14){return _0x2ddb14();},'Odsid':'ranger\x20setup','nzQPr':_0x1d74e2(0x172),'Uqszf':function(_0x237d0c,_0x53b858){return _0x237d0c(_0x53b858);},'EIyJY':function(_0x1cc689,_0x2506c0){return _0x1cc689(_0x2506c0);},'NjGBx':function(_0x2d06b3,_0x2ac72a){return _0x2d06b3!==_0x2ac72a;},'tWApr':'master'},_0x155ef9=_0xcc6003||process['env'][_0x1d74e2(0x169)]||'',_0x1e1e09=Boolean(_0xcc6003),_0x457fdd=await _0x3fe20d[_0x1d74e2(0x171)](getToken);if(!_0x457fdd){const _0x452865=_0x1e1e09?_0x1d74e2(0x165):_0x3fe20d[_0x1d74e2(0x178)],_0x458df0=_0x1e1e09?_0x3fe20d['nzQPr']:'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x3fe20d['Uqszf'](printBlock,_0x1d74e2(0x17a)+_0x452865+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x458df0);return;}try{await update();}catch{}_0x155ef9&&_0x3fe20d['EIyJY'](enableSession,_0x155ef9);const _0x179c54=_0x3fe20d[_0x1d74e2(0x171)](getCurrentBranch),_0x59ae49=_0x179c54&&_0x179c54!==_0x1d74e2(0x16f)&&_0x3fe20d[_0x1d74e2(0x166)](_0x179c54,_0x3fe20d['tWApr'])?_0x1d74e2(0x175)+_0x179c54+_0x1d74e2(0x173):'',_0x50396a=_0x3fe20d['lRKnY'](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x59ae49+_0x1d74e2(0x177)+_0x50396a+_0x1d74e2(0x170));}
@@ -1 +1 @@
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
+ function _0x18e7(){const _0xec08d5=['633595IkDFVs','7OWhQcL','8BDUBsA','12CfgZWy','75772wCmOwg','272661IRusGu','881130adEDNr','108396MqxJJN','594KznfVl','2VNvGxs','1400394ZngsEh','628839iMlvUV'];_0x18e7=function(){return _0xec08d5;};return _0x18e7();}(function(_0x248f29,_0x4672ec){const _0x4e47dd=_0x1092,_0x352235=_0x248f29();while(!![]){try{const _0x459e11=parseInt(_0x4e47dd(0x15f))/0x1*(parseInt(_0x4e47dd(0x166))/0x2)+parseInt(_0x4e47dd(0x167))/0x3*(-parseInt(_0x4e47dd(0x165))/0x4)+parseInt(_0x4e47dd(0x162))/0x5+parseInt(_0x4e47dd(0x160))/0x6*(-parseInt(_0x4e47dd(0x163))/0x7)+parseInt(_0x4e47dd(0x164))/0x8*(parseInt(_0x4e47dd(0x161))/0x9)+-parseInt(_0x4e47dd(0x15c))/0xa+-parseInt(_0x4e47dd(0x15e))/0xb*(-parseInt(_0x4e47dd(0x15d))/0xc);if(_0x459e11===_0x4672ec)break;else _0x352235['push'](_0x352235['shift']());}catch(_0x55738f){_0x352235['push'](_0x352235['shift']());}}}(_0x18e7,0x28853));import{printBlock,getEnabledSessionId}from'./output.js';function _0x1092(_0x2a9ecb,_0x365126){_0x2a9ecb=_0x2a9ecb-0x15c;const _0x18e79d=_0x18e7();let _0x10921b=_0x18e79d[_0x2a9ecb];return _0x10921b;}export async function exitPlanMode(_0x3f3867){const _0x5717c9={'sMDHa':function(_0x4e19e5,_0x5035a8){return _0x4e19e5(_0x5035a8);}},_0x7e21c0=await _0x5717c9['sMDHa'](getEnabledSessionId,_0x3f3867);if(!_0x7e21c0)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_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
+ (function(_0xcc38a5,_0x1abd38){var _0x39fa93=_0xb9b8,_0x1e66f0=_0xcc38a5();while(!![]){try{var _0x41cffa=parseInt(_0x39fa93(0x161))/0x1+-parseInt(_0x39fa93(0x163))/0x2*(-parseInt(_0x39fa93(0x15f))/0x3)+-parseInt(_0x39fa93(0x165))/0x4*(parseInt(_0x39fa93(0x166))/0x5)+-parseInt(_0x39fa93(0x15e))/0x6+-parseInt(_0x39fa93(0x162))/0x7+-parseInt(_0x39fa93(0x160))/0x8*(-parseInt(_0x39fa93(0x167))/0x9)+parseInt(_0x39fa93(0x164))/0xa;if(_0x41cffa===_0x1abd38)break;else _0x1e66f0['push'](_0x1e66f0['shift']());}catch(_0x25cfc5){_0x1e66f0['push'](_0x1e66f0['shift']());}}}(_0x5a16,0x6b8cb));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';function _0xb9b8(_0x41deca,_0x36c54e){_0x41deca=_0x41deca-0x15e;var _0x5a1679=_0x5a16();var _0xb9b86e=_0x5a1679[_0x41deca];return _0xb9b86e;}function _0x5a16(){var _0x38d96a=['11494150qRMYUW','7324KXOIxV','2065WhyHVV','9uMRXFu','1883034xwQnNl','3mhWUrg','1171736woEpmJ','407841SZIaNb','3541615flPNvU','625574mEHszg'];_0x5a16=function(){return _0x38d96a;};return _0x5a16();}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_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
+ function _0x43c6(_0x2dd7df,_0x284c76){_0x2dd7df=_0x2dd7df-0x102;const _0x136458=_0x1364();let _0x43c697=_0x136458[_0x2dd7df];return _0x43c697;}(function(_0x15e3a3,_0x29cd27){const _0x2cda71=_0x43c6,_0x5743af=_0x15e3a3();while(!![]){try{const _0x3d3548=parseInt(_0x2cda71(0x108))/0x1*(-parseInt(_0x2cda71(0x10e))/0x2)+parseInt(_0x2cda71(0x109))/0x3+-parseInt(_0x2cda71(0x10d))/0x4*(-parseInt(_0x2cda71(0x10a))/0x5)+parseInt(_0x2cda71(0x106))/0x6*(-parseInt(_0x2cda71(0x102))/0x7)+-parseInt(_0x2cda71(0x10b))/0x8+parseInt(_0x2cda71(0x104))/0x9+-parseInt(_0x2cda71(0x107))/0xa;if(_0x3d3548===_0x29cd27)break;else _0x5743af['push'](_0x5743af['shift']());}catch(_0x4dff8c){_0x5743af['push'](_0x5743af['shift']());}}}(_0x1364,0x9adc0));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x50a105){console['log'](_0x50a105);}function _0x1364(){const _0x49afdb=['309084IyWgxd','stdin','7808444sXGGFa','QnHks','5814288dzyxBK','parse','6JbnmgN','2995960AMEMQW','2AvfiQq','2327631mTMXAu','5ClhDOo','419584ivNday','NhZGG','3956060IIdPTB'];_0x1364=function(){return _0x49afdb;};return _0x1364();}export async function readHookInput(){const _0x2b88b8=_0x43c6;let _0xc73afb='';try{for await(const _0x1c0b3c of process[_0x2b88b8(0x10f)]){_0xc73afb+=_0x1c0b3c;}}catch{return null;}if(!_0xc73afb['trim']())return null;try{return JSON[_0x2b88b8(0x105)](_0xc73afb);}catch{return null;}}export async function getEnabledSessionId(_0x5b5b24){const _0x5a0624=_0x43c6,_0x4b6aea={'QnHks':function(_0x13e7a9,_0x3d26c0){return _0x13e7a9(_0x3d26c0);},'NhZGG':function(_0x11a0c3){return _0x11a0c3();}};if(_0x5b5b24)return _0x4b6aea[_0x5a0624(0x103)](isSessionEnabled,_0x5b5b24)?_0x5b5b24:null;const _0x4c9a87=await _0x4b6aea[_0x5a0624(0x10c)](readHookInput),_0x2914e3=_0x4c9a87?.['session_id'];if(!_0x2914e3||!isSessionEnabled(_0x2914e3))return null;return _0x2914e3;}export async function getEnabledHookContext(_0x1f52f6){if(_0x1f52f6){if(!isSessionEnabled(_0x1f52f6))return null;return{'sessionId':_0x1f52f6,'input':{'session_id':_0x1f52f6}};}const _0xd0e195=await readHookInput(),_0x434497=_0xd0e195?.['session_id'];if(!_0x434497||!isSessionEnabled(_0x434497))return null;return{'sessionId':_0x434497,'input':_0xd0e195};}
@@ -1 +1 @@
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));}
1
+ (function(_0x1cb440,_0x2bfd87){const _0x231701=_0x5195,_0x305977=_0x1cb440();while(!![]){try{const _0x2abcf9=parseInt(_0x231701(0xdb))/0x1*(parseInt(_0x231701(0xd3))/0x2)+-parseInt(_0x231701(0xd5))/0x3+parseInt(_0x231701(0xd6))/0x4*(-parseInt(_0x231701(0xd1))/0x5)+parseInt(_0x231701(0xd9))/0x6+-parseInt(_0x231701(0xd4))/0x7*(parseInt(_0x231701(0xd7))/0x8)+-parseInt(_0x231701(0xd0))/0x9+-parseInt(_0x231701(0xcf))/0xa*(-parseInt(_0x231701(0xce))/0xb);if(_0x2abcf9===_0x2bfd87)break;else _0x305977['push'](_0x305977['shift']());}catch(_0x5153bf){_0x305977['push'](_0x305977['shift']());}}}(_0x52a6,0x2e3dc));function _0x5195(_0x3a3fd1,_0x49f59b){_0x3a3fd1=_0x3a3fd1-0xce;const _0x52a641=_0x52a6();let _0x5195f9=_0x52a641[_0x3a3fd1];return _0x5195f9;}function _0x52a6(){const _0x1da2a6=['84258CBKtNH','2332zwBDzF','2009416EAZLQH','sessionId','213714NglsLu','dtzig','26330DARruh','11GVJthh','5311430zaUvcS','2594970ltNReb','175vduLTo','qBStG','16nQJIbe','7ynsWui'];_0x52a6=function(){return _0x1da2a6;};return _0x52a6();}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x5dd951){const _0x2506e5=_0x5195,_0x1abf59={'dtzig':function(_0x4e0363,_0x235bd7){return _0x4e0363!==_0x235bd7;},'qBStG':'plan','ncOpL':function(_0xfe2f92,_0x3e2088){return _0xfe2f92(_0x3e2088);}},_0x3cf6cb=await getEnabledHookContext(_0x5dd951);if(!_0x3cf6cb)return;if(_0x1abf59[_0x2506e5(0xda)](_0x3cf6cb['input']['permission_mode'],_0x1abf59[_0x2506e5(0xd2)]))return;if(!_0x1abf59['ncOpL'](shouldShowPlanReminder,_0x3cf6cb[_0x2506e5(0xd8)]))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}