@ranger-testing/ranger-cli 2.3.2 → 2.4.0

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 (70) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/setup/claude.js +1 -1
  25. package/build/commands/setup/opencode.js +1 -1
  26. package/build/commands/setupCi.js +1 -1
  27. package/build/commands/skillup.js +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/status.js +1 -1
  30. package/build/commands/update.js +1 -1
  31. package/build/commands/updateEnv.js +1 -1
  32. package/build/commands/useEnv.js +1 -1
  33. package/build/commands/utils/activeProfile.js +1 -1
  34. package/build/commands/utils/agentEnv.js +1 -1
  35. package/build/commands/utils/browserSessionsApi.js +1 -1
  36. package/build/commands/utils/claudeConfig.js +1 -1
  37. package/build/commands/utils/claudePlugin.js +1 -1
  38. package/build/commands/utils/crypto.js +1 -1
  39. package/build/commands/utils/desirePathLog.js +1 -1
  40. package/build/commands/utils/deviceAuth.js +1 -1
  41. package/build/commands/utils/environment.js +1 -1
  42. package/build/commands/utils/featureApi.js +1 -1
  43. package/build/commands/utils/featureReportGenerator.js +1 -1
  44. package/build/commands/utils/fixWebmDuration.js +1 -1
  45. package/build/commands/utils/git.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/reportGenerator.js +1 -1
  57. package/build/commands/utils/retry.js +1 -1
  58. package/build/commands/utils/sessionCache.js +1 -1
  59. package/build/commands/utils/settings.js +1 -1
  60. package/build/commands/utils/skillContent.js +1 -1
  61. package/build/commands/utils/skills.js +1 -1
  62. package/build/commands/utils/stitchWebmFiles.js +1 -1
  63. package/build/commands/utils/telemetry.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/build/commands/verifyInBrowser.js +1 -1
  70. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x45ddec,_0x42715a){const _0x5031d1=_0x2bec,_0x9a880a=_0x45ddec();while(!![]){try{const _0x57f8d4=-parseInt(_0x5031d1(0xff))/0x1*(parseInt(_0x5031d1(0xee))/0x2)+parseInt(_0x5031d1(0xfc))/0x3*(parseInt(_0x5031d1(0xfb))/0x4)+parseInt(_0x5031d1(0xf3))/0x5*(parseInt(_0x5031d1(0xf0))/0x6)+parseInt(_0x5031d1(0xec))/0x7*(-parseInt(_0x5031d1(0xfd))/0x8)+parseInt(_0x5031d1(0xeb))/0x9*(-parseInt(_0x5031d1(0xf1))/0xa)+parseInt(_0x5031d1(0xe6))/0xb+parseInt(_0x5031d1(0xe8))/0xc;if(_0x57f8d4===_0x42715a)break;else _0x9a880a['push'](_0x9a880a['shift']());}catch(_0x39ab0d){_0x9a880a['push'](_0x9a880a['shift']());}}}(_0x536c,0x1c2cf));function _0x536c(){const _0x1f50d5=['8llriqH','object','1VVcIso','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','No\x20configuration\x20set\x20for\x20\x22','436183bcTBhk','Removed\x20','117876mfzcdd','rXhNj','pNTbM','18ZZZtxz','30604xINuaw','tEcnJ','360622OTTAwh','Profile\x20\x22','6138gRYKVE','24860VfPKQN',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','365cnemkn','\x20=\x20','stringify','BKpLb','ILRPa','dypCn','wwxHI','log','4MLopWj','542721GaVxeJ'];_0x536c=function(){return _0x1f50d5;};return _0x536c();}function _0x2bec(_0x47d53f,_0x2e3917){_0x47d53f=_0x47d53f-0xe5;const _0x536c07=_0x536c();let _0x2bec92=_0x536c07[_0x47d53f];return _0x2bec92;}import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless','allowInsecureLocalhost'];function parseValue(_0x27f3ec,_0x324cb6){const _0x227ac0=_0x2bec,_0x2ddbcf={'abKoQ':'false'};if(BOOLEAN_KEYS['includes'](_0x27f3ec)){if(_0x324cb6==='true')return!![];if(_0x324cb6===_0x2ddbcf['abKoQ'])return![];throw new Error('Invalid\x20value\x20for\x20'+_0x27f3ec+_0x227ac0(0xf2));}return _0x324cb6;}export async function configSet(_0x46765c,_0x3b28dc,_0x23a74b){const _0xa53c5b=_0x2bec,_0xd5c0be={'SZYZx':function(_0x31a942,_0x484976){return _0x31a942(_0x484976);},'BKpLb':function(_0x4b5862,_0x1cc56b,_0x55f8b4,_0x211560){return _0x4b5862(_0x1cc56b,_0x55f8b4,_0x211560);},'tEcnJ':function(_0x1565f5,_0x1a790a,_0x346a42){return _0x1565f5(_0x1a790a,_0x346a42);}},_0x41f8a7=_0xd5c0be['SZYZx'](getEnvDir,_0x46765c);if(!_0xd5c0be['SZYZx'](existsSync,_0x41f8a7))throw new Error('Profile\x20\x22'+_0x46765c+_0xa53c5b(0x100)+_0x46765c);const _0x57c08d=await _0xd5c0be['SZYZx'](loadSettings,_0x46765c),_0x3895e5=parseValue(_0x3b28dc,_0x23a74b);_0xd5c0be[_0xa53c5b(0xf6)](setNestedValue,_0x57c08d,_0x3b28dc,_0x3895e5),await _0xd5c0be[_0xa53c5b(0xed)](saveSettings,_0x46765c,_0x57c08d),console[_0xa53c5b(0xfa)]('Set\x20'+_0x3b28dc+_0xa53c5b(0xf4)+_0x3895e5);}export async function configGet(_0x3414f2,_0x39de2f){const _0x49f420=_0x2bec,_0x37c6c3={'wwxHI':function(_0xf40822,_0x1a6060){return _0xf40822(_0x1a6060);},'ILRPa':function(_0x12ce60,_0x323198){return _0x12ce60===_0x323198;},'dypCn':function(_0xec04b8,_0x46e073){return _0xec04b8===_0x46e073;},'gOrvz':_0x49f420(0xfe)},_0x427c93=_0x37c6c3['wwxHI'](getEnvDir,_0x3414f2);if(!existsSync(_0x427c93))throw new Error(_0x49f420(0xef)+_0x3414f2+'\x22\x20does\x20not\x20exist.');const _0x501f1e=await _0x37c6c3[_0x49f420(0xf9)](loadSettings,_0x3414f2),_0x29e018=getNestedValue(_0x501f1e,_0x39de2f);if(_0x37c6c3[_0x49f420(0xf7)](_0x29e018,undefined))console[_0x49f420(0xfa)]('(not\x20set)');else _0x37c6c3[_0x49f420(0xf8)](typeof _0x29e018,_0x37c6c3['gOrvz'])?console['log'](JSON[_0x49f420(0xf5)](_0x29e018,null,0x2)):console[_0x49f420(0xfa)](_0x29e018);}export async function configList(_0x35783d){const _0x1992cc=_0x2bec,_0x233596={'rXhNj':function(_0x1cd0b3,_0x5023d0){return _0x1cd0b3(_0x5023d0);}},_0x504fc0=getSettingsPath(_0x35783d);if(!_0x233596['rXhNj'](existsSync,_0x504fc0)){const _0x437d37=_0x233596['rXhNj'](getEnvDir,_0x35783d);if(!_0x233596[_0x1992cc(0xe9)](existsSync,_0x437d37))throw new Error('Profile\x20\x22'+_0x35783d+'\x22\x20does\x20not\x20exist.');console[_0x1992cc(0xfa)](_0x1992cc(0xe5)+_0x35783d+'\x22');return;}const _0x78e566=await _0x233596[_0x1992cc(0xe9)](loadSettings,_0x35783d),_0x249cdf=_0x233596[_0x1992cc(0xe9)](formatSettings,_0x78e566);!_0x249cdf?console[_0x1992cc(0xfa)](_0x1992cc(0xe5)+_0x35783d+'\x22'):console['log'](_0x249cdf);}export async function configUnset(_0x31eff6,_0x459a58){const _0x2d4b16=_0x2bec,_0x15bd18={'sdCgI':function(_0x1bbc44,_0x5add6f){return _0x1bbc44(_0x5add6f);},'pNTbM':function(_0x20a40e,_0x1f08de,_0x53f050){return _0x20a40e(_0x1f08de,_0x53f050);}},_0x507d86=getEnvDir(_0x31eff6);if(!existsSync(_0x507d86))throw new Error('Profile\x20\x22'+_0x31eff6+'\x22\x20does\x20not\x20exist.');const _0x335e74=await _0x15bd18['sdCgI'](loadSettings,_0x31eff6),_0x452771=deleteNestedValue(_0x335e74,_0x459a58);_0x452771?(await _0x15bd18[_0x2d4b16(0xea)](saveSettings,_0x31eff6,_0x335e74),console[_0x2d4b16(0xfa)](_0x2d4b16(0xe7)+_0x459a58)):console['log']('Key\x20\x22'+_0x459a58+'\x22\x20not\x20found');}
1
+ const _0x481fb6=_0x1288;(function(_0x1e82de,_0x69ddc5){const _0x3c4c3f=_0x1288,_0x5eba0c=_0x1e82de();while(!![]){try{const _0x1ee55a=-parseInt(_0x3c4c3f(0x105))/0x1*(-parseInt(_0x3c4c3f(0xf9))/0x2)+parseInt(_0x3c4c3f(0xf6))/0x3+-parseInt(_0x3c4c3f(0xf7))/0x4*(-parseInt(_0x3c4c3f(0xfc))/0x5)+parseInt(_0x3c4c3f(0xee))/0x6+parseInt(_0x3c4c3f(0xfe))/0x7+-parseInt(_0x3c4c3f(0xef))/0x8*(-parseInt(_0x3c4c3f(0x101))/0x9)+-parseInt(_0x3c4c3f(0xf4))/0xa;if(_0x1ee55a===_0x69ddc5)break;else _0x5eba0c['push'](_0x5eba0c['shift']());}catch(_0x1efc13){_0x5eba0c['push'](_0x5eba0c['shift']());}}}(_0x353b,0xc2a9e));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless',_0x481fb6(0xfa)];function parseValue(_0x3cde67,_0x474ac4){const _0x23ce62=_0x481fb6,_0x24b230={'zJEkj':function(_0x2f9262,_0x1590ba){return _0x2f9262===_0x1590ba;},'AYkMX':'false'};if(BOOLEAN_KEYS[_0x23ce62(0xeb)](_0x3cde67)){if(_0x24b230[_0x23ce62(0xf5)](_0x474ac4,'true'))return!![];if(_0x474ac4===_0x24b230['AYkMX'])return![];throw new Error(_0x23ce62(0xed)+_0x3cde67+':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22');}return _0x474ac4;}function _0x1288(_0xe8a91c,_0x1ab06e){_0xe8a91c=_0xe8a91c-0xeb;const _0x353b08=_0x353b();let _0x128840=_0x353b08[_0xe8a91c];return _0x128840;}export async function configSet(_0x41c412,_0x220d3e,_0x386690){const _0x4f6fdd=_0x481fb6,_0x430226={'iNvNm':function(_0x4fe17a,_0xc1e97a){return _0x4fe17a(_0xc1e97a);}},_0x58c627=_0x430226[_0x4f6fdd(0x100)](getEnvDir,_0x41c412);if(!existsSync(_0x58c627))throw new Error(_0x4f6fdd(0x103)+_0x41c412+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x41c412);const _0x2f54d6=await loadSettings(_0x41c412),_0x3931b1=parseValue(_0x220d3e,_0x386690);setNestedValue(_0x2f54d6,_0x220d3e,_0x3931b1),await saveSettings(_0x41c412,_0x2f54d6),console[_0x4f6fdd(0xfb)]('Set\x20'+_0x220d3e+_0x4f6fdd(0xf1)+_0x3931b1);}export async function configGet(_0x42281c,_0xc97fc0){const _0xfc9b72=_0x481fb6,_0x20a73c={'hjEyj':function(_0x1c994c,_0x1c5c13){return _0x1c994c(_0x1c5c13);},'IsEJW':'object'},_0x11c43f=getEnvDir(_0x42281c);if(!_0x20a73c['hjEyj'](existsSync,_0x11c43f))throw new Error('Profile\x20\x22'+_0x42281c+'\x22\x20does\x20not\x20exist.');const _0x53a1f1=await _0x20a73c[_0xfc9b72(0xf2)](loadSettings,_0x42281c),_0x2f4eed=getNestedValue(_0x53a1f1,_0xc97fc0);if(_0x2f4eed===undefined)console[_0xfc9b72(0xfb)](_0xfc9b72(0x102));else typeof _0x2f4eed===_0x20a73c[_0xfc9b72(0xec)]?console['log'](JSON['stringify'](_0x2f4eed,null,0x2)):console['log'](_0x2f4eed);}function _0x353b(){const _0x4f4f49=['Removed\x20','10329116ZmSndA','Key\x20\x22','iNvNm','126zHXfbb','(not\x20set)','Profile\x20\x22','No\x20configuration\x20set\x20for\x20\x22','1qbvqtS','includes','IsEJW','Invalid\x20value\x20for\x20','743580CUkMbG','375112nvGSdt','\x22\x20not\x20found','\x20=\x20','hjEyj','JMRXJ','25730160WpdNbr','zJEkj','2083689CmYbUh','8FqVmFd','\x22\x20does\x20not\x20exist.','179726ZfXdWb','allowInsecureLocalhost','log','824920YfbBwx'];_0x353b=function(){return _0x4f4f49;};return _0x353b();}export async function configList(_0x193e4b){const _0x3829e1=_0x481fb6,_0x394027={'yTlIV':function(_0x435a08,_0x352b9b){return _0x435a08(_0x352b9b);}},_0x5df2db=getSettingsPath(_0x193e4b);if(!_0x394027['yTlIV'](existsSync,_0x5df2db)){const _0x2195a5=getEnvDir(_0x193e4b);if(!existsSync(_0x2195a5))throw new Error(_0x3829e1(0x103)+_0x193e4b+_0x3829e1(0xf8));console[_0x3829e1(0xfb)](_0x3829e1(0x104)+_0x193e4b+'\x22');return;}const _0x51b0c2=await loadSettings(_0x193e4b),_0x5745f3=formatSettings(_0x51b0c2);!_0x5745f3?console['log'](_0x3829e1(0x104)+_0x193e4b+'\x22'):console['log'](_0x5745f3);}export async function configUnset(_0x2bb67a,_0x3a0dfe){const _0x48126d=_0x481fb6,_0x2161ba={'JMRXJ':function(_0x51c641,_0x320c76){return _0x51c641(_0x320c76);},'OZtJn':function(_0x470cba,_0x32e54b,_0x4faebf){return _0x470cba(_0x32e54b,_0x4faebf);}},_0x482451=getEnvDir(_0x2bb67a);if(!existsSync(_0x482451))throw new Error(_0x48126d(0x103)+_0x2bb67a+_0x48126d(0xf8));const _0x238592=await _0x2161ba[_0x48126d(0xf3)](loadSettings,_0x2bb67a),_0x59c039=deleteNestedValue(_0x238592,_0x3a0dfe);_0x59c039?(await _0x2161ba['OZtJn'](saveSettings,_0x2bb67a,_0x238592),console['log'](_0x48126d(0xfd)+_0x3a0dfe)):console[_0x48126d(0xfb)](_0x48126d(0xff)+_0x3a0dfe+_0x48126d(0xf0));}
@@ -1 +1 @@
1
- const _0x586fd7=_0x2b5a;(function(_0x504954,_0x1658f7){const _0x1a22c0=_0x2b5a,_0x341c99=_0x504954();while(!![]){try{const _0x6e44c0=parseInt(_0x1a22c0(0x117))/0x1*(parseInt(_0x1a22c0(0x10b))/0x2)+-parseInt(_0x1a22c0(0x112))/0x3*(parseInt(_0x1a22c0(0x10f))/0x4)+-parseInt(_0x1a22c0(0x101))/0x5*(-parseInt(_0x1a22c0(0x116))/0x6)+parseInt(_0x1a22c0(0x110))/0x7*(parseInt(_0x1a22c0(0x100))/0x8)+-parseInt(_0x1a22c0(0x104))/0x9*(-parseInt(_0x1a22c0(0x105))/0xa)+parseInt(_0x1a22c0(0x111))/0xb+parseInt(_0x1a22c0(0x108))/0xc*(-parseInt(_0x1a22c0(0x119))/0xd);if(_0x6e44c0===_0x1658f7)break;else _0x341c99['push'](_0x341c99['shift']());}catch(_0x218492){_0x341c99['push'](_0x341c99['shift']());}}}(_0x57d3,0xcce8a));function _0x57d3(){const _0x29c79d=['SktWG','log','ZaOXd','WKCfz','dAsDM','17288ZaNiam','20ujhNbB','zqPTR','bug-bashes','18KfBAbA','6004010UROwJZ','\x0a*\x20=\x20active\x20profile','exJmc','30154764kFLenq','\x20\x20\x20\x20\x20\x20Details:\x20','settings.json','14lkKBpL','local','environmentDetails','push','4sfgTuz','1827qazalI','15071738hsEZGm','1941474ARwcSt','baseUrl','nMWPA','legacy','294912GLsNmn','95396uGAKrq','NIZkT','13bmHpDd','.txt','\x0aProfiles:','Run:\x20ranger\x20profile\x20add\x20<profile-name>'];_0x57d3=function(){return _0x29c79d;};return _0x57d3();}import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions',_0x586fd7(0x103),'reports',_0x586fd7(0x10c),'ci'];function _0x2b5a(_0x138af2,_0x329640){_0x138af2=_0x138af2-0xfc;const _0x57d34c=_0x57d3();let _0x2b5a02=_0x57d34c[_0x138af2];return _0x2b5a02;}export async function getEnvNames(){const _0x59ccf7=_0x586fd7,_0x131539={'WkdFK':function(_0x12864c){return _0x12864c();},'ZaOXd':function(_0x52d8b7,_0x50cd70,_0x399990){return _0x52d8b7(_0x50cd70,_0x399990);},'Iyphg':function(_0x529b08,_0x117b36){return _0x529b08(_0x117b36);},'zFebh':_0x59ccf7(0x10c),'hjFXD':function(_0x4c7323,_0x3baa57){return _0x4c7323(_0x3baa57);},'cJmDk':function(_0x106afb,_0x26e9ed){return _0x106afb(_0x26e9ed);},'zqPTR':function(_0x98b83a,_0x54e408){return _0x98b83a(_0x54e408);},'JzWNu':_0x59ccf7(0x115)},_0x398aba=getRangerDir();if(!existsSync(_0x398aba))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x17c2d5=await _0x131539['WkdFK'](readActiveProfileName),_0xcf2442=[],_0x34b98e={},_0x17e8fa=_0x131539[_0x59ccf7(0xfd)](join,_0x398aba,_0x59ccf7(0x10c));if(existsSync(_0x17e8fa)){const _0xa274f0=await readdir(_0x17e8fa);for(const _0x3ae389 of _0xa274f0){const _0x102227=join(_0x17e8fa,_0x3ae389),_0x4596b6=await _0x131539['Iyphg'](stat,_0x102227);_0x4596b6['isDirectory']()&&(_0xcf2442[_0x59ccf7(0x10e)](_0x3ae389),_0x34b98e[_0x3ae389]=_0x131539['zFebh']);}}const _0x28823f=join(_0x398aba,'ci');if(_0x131539['hjFXD'](existsSync,_0x28823f)){const _0xd461db=await _0x131539['cJmDk'](readdir,_0x28823f);for(const _0x563fa6 of _0xd461db){const _0x55ba21=join(_0x28823f,_0x563fa6),_0x24698e=await stat(_0x55ba21);_0x24698e['isDirectory']()&&(_0xcf2442[_0x59ccf7(0x10e)](_0x563fa6),_0x34b98e[_0x563fa6]='ci');}}const _0x37894f=await readdir(_0x398aba);for(const _0x38db7e of _0x37894f){if(NON_ENV_DIRS['includes'](_0x38db7e))continue;if(_0x38db7e['startsWith']('.'))continue;if(_0x38db7e['endsWith'](_0x59ccf7(0x11a)))continue;const _0x387a09=join(_0x398aba,_0x38db7e),_0x4e19a6=await stat(_0x387a09);_0x4e19a6['isDirectory']()&&_0x131539[_0x59ccf7(0x102)](existsSync,join(_0x387a09,_0x59ccf7(0x10a)))&&(!_0xcf2442['includes'](_0x38db7e)&&(_0xcf2442[_0x59ccf7(0x10e)](_0x38db7e),_0x34b98e[_0x38db7e]=_0x131539['JzWNu']));}return{'envNames':_0xcf2442,'activeEnv':_0x17c2d5,'envTypes':_0x34b98e};}export async function envList(){const _0x191154=_0x586fd7,_0x5e89d7={'NIZkT':function(_0x54d769){return _0x54d769();},'SktWG':function(_0x1fc87a,_0xe0bbd8){return _0x1fc87a===_0xe0bbd8;},'WKCfz':'\x0aNo\x20profiles\x20found.','nMWPA':function(_0x5a9304,_0x209d67){return _0x5a9304===_0x209d67;},'exJmc':function(_0x867be8,_0x3cda10){return _0x867be8(_0x3cda10);},'dAsDM':'legacy'},{envNames:_0x131e37,activeEnv:_0x8c7ed4,envTypes:_0x30127a}=await _0x5e89d7[_0x191154(0x118)](getEnvNames);if(_0x5e89d7[_0x191154(0x11d)](_0x131e37['length'],0x0)){console['log'](_0x5e89d7[_0x191154(0xfe)]),console['log'](_0x191154(0x11c));return;}console['log'](_0x191154(0x11b));for(const _0xa4c531 of _0x131e37['sort']()){const _0x5858cf=_0x5e89d7[_0x191154(0x114)](_0xa4c531,_0x8c7ed4),_0x339d0c=_0x30127a[_0xa4c531]||'local',_0x49795f=await _0x5e89d7[_0x191154(0x107)](loadSettings,_0xa4c531),_0x538139=_0x5e89d7['nMWPA'](_0x339d0c,_0x5e89d7[_0x191154(0xff)])?'':'\x20['+_0x339d0c+']';console['log']('\x20\x20'+(_0x5858cf?'*\x20':'\x20\x20')+_0xa4c531+_0x538139),_0x49795f['baseUrl']&&console[_0x191154(0xfc)]('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x49795f[_0x191154(0x113)]),_0x49795f[_0x191154(0x10d)]&&console[_0x191154(0xfc)](_0x191154(0x109)+_0x49795f[_0x191154(0x10d)]);}_0x8c7ed4&&console[_0x191154(0xfc)](_0x191154(0x106));}
1
+ const _0x21df93=_0x32ee;(function(_0x1ae23e,_0xc2b3c9){const _0x44f300=_0x32ee,_0x1762aa=_0x1ae23e();while(!![]){try{const _0x369fc4=-parseInt(_0x44f300(0xec))/0x1*(parseInt(_0x44f300(0xe2))/0x2)+parseInt(_0x44f300(0xeb))/0x3*(parseInt(_0x44f300(0xde))/0x4)+parseInt(_0x44f300(0xf0))/0x5*(-parseInt(_0x44f300(0xf8))/0x6)+parseInt(_0x44f300(0xe7))/0x7*(parseInt(_0x44f300(0xf7))/0x8)+-parseInt(_0x44f300(0xdc))/0x9*(parseInt(_0x44f300(0xf2))/0xa)+parseInt(_0x44f300(0xee))/0xb+-parseInt(_0x44f300(0xe0))/0xc*(-parseInt(_0x44f300(0xf9))/0xd);if(_0x369fc4===_0xc2b3c9)break;else _0x1762aa['push'](_0x1762aa['shift']());}catch(_0x555668){_0x1762aa['push'](_0x1762aa['shift']());}}}(_0xa731,0xe3ee3));import{readdir,stat}from'fs/promises';import{join}from'path';function _0xa731(){const _0xb8b7c9=['672078IUGvpo','push','114190JSulXJ','mNRzu','14150lINHdj','local','TdZVD','log','environmentDetails','4152yUXKHe','30aMQwzr','18642mHoeEG','sort','2466daifzc','legacy','4HEGhPt','\x20\x20\x20\x20\x20\x20URL:\x20','14268ezxTGd','Run:\x20ranger\x20profile\x20add\x20<profile-name>','57190vTEwmZ','ruIAM','includes','isDirectory','sessions','203RzAzGm','\x20\x20\x20\x20\x20\x20Details:\x20','bug-bashes','\x0a*\x20=\x20active\x20profile','4539009xwfpAt','65oCjzop','length'];_0xa731=function(){return _0xb8b7c9;};return _0xa731();}import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x32ee(_0x9fcefc,_0x513296){_0x9fcefc=_0x9fcefc-0xdc;const _0xa73146=_0xa731();let _0x32ee05=_0xa73146[_0x9fcefc];return _0x32ee05;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x21df93(0xe6),_0x21df93(0xe9),'reports',_0x21df93(0xf3),'ci'];export async function getEnvNames(){const _0x310aa1=_0x21df93,_0x1137de={'MRqZd':function(_0x17aceb){return _0x17aceb();},'ruIAM':function(_0x4f227a,_0x403319,_0x4a914b){return _0x4f227a(_0x403319,_0x4a914b);},'WagXU':_0x310aa1(0xf3),'Fzohc':function(_0x82a94,_0x5a78e2){return _0x82a94(_0x5a78e2);},'pNqgS':function(_0x1673b9,_0x45a68f){return _0x1673b9(_0x45a68f);},'sOvxm':'.txt','JemSu':function(_0x470e86,_0x5f438d){return _0x470e86(_0x5f438d);}},_0x1be1f0=getRangerDir();if(!existsSync(_0x1be1f0))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x5049ca=await _0x1137de['MRqZd'](readActiveProfileName),_0x3f77ab=[],_0x5310ff={},_0x2fafb4=_0x1137de[_0x310aa1(0xe3)](join,_0x1be1f0,_0x1137de['WagXU']);if(existsSync(_0x2fafb4)){const _0x573093=await _0x1137de['Fzohc'](readdir,_0x2fafb4);for(const _0x134268 of _0x573093){const _0xbd4ce8=join(_0x2fafb4,_0x134268),_0x4db331=await stat(_0xbd4ce8);_0x4db331[_0x310aa1(0xe5)]()&&(_0x3f77ab[_0x310aa1(0xef)](_0x134268),_0x5310ff[_0x134268]=_0x310aa1(0xf3));}}const _0x5b637c=join(_0x1be1f0,'ci');if(existsSync(_0x5b637c)){const _0x32134d=await readdir(_0x5b637c);for(const _0x4a23b6 of _0x32134d){const _0x576307=join(_0x5b637c,_0x4a23b6),_0x49f769=await stat(_0x576307);_0x49f769[_0x310aa1(0xe5)]()&&(_0x3f77ab['push'](_0x4a23b6),_0x5310ff[_0x4a23b6]='ci');}}const _0x2bbd17=await _0x1137de['pNqgS'](readdir,_0x1be1f0);for(const _0x35eba0 of _0x2bbd17){if(NON_ENV_DIRS['includes'](_0x35eba0))continue;if(_0x35eba0['startsWith']('.'))continue;if(_0x35eba0['endsWith'](_0x1137de['sOvxm']))continue;const _0x3fdb0f=join(_0x1be1f0,_0x35eba0),_0x4dd9e5=await stat(_0x3fdb0f);_0x4dd9e5['isDirectory']()&&_0x1137de['JemSu'](existsSync,_0x1137de[_0x310aa1(0xe3)](join,_0x3fdb0f,'settings.json'))&&(!_0x3f77ab[_0x310aa1(0xe4)](_0x35eba0)&&(_0x3f77ab[_0x310aa1(0xef)](_0x35eba0),_0x5310ff[_0x35eba0]=_0x310aa1(0xdd)));}return{'envNames':_0x3f77ab,'activeEnv':_0x5049ca,'envTypes':_0x5310ff};}export async function envList(){const _0x48a229=_0x21df93,_0xbd561d={'TdZVD':function(_0x1ecfdb){return _0x1ecfdb();},'CjRtb':'\x0aNo\x20profiles\x20found.','mNRzu':_0x48a229(0xf3)},{envNames:_0x2bbfa9,activeEnv:_0x4cc80a,envTypes:_0x3c15f9}=await _0xbd561d[_0x48a229(0xf4)](getEnvNames);if(_0x2bbfa9[_0x48a229(0xed)]===0x0){console[_0x48a229(0xf5)](_0xbd561d['CjRtb']),console[_0x48a229(0xf5)](_0x48a229(0xe1));return;}console['log']('\x0aProfiles:');for(const _0x1f20f0 of _0x2bbfa9[_0x48a229(0xfa)]()){const _0x18fff7=_0x1f20f0===_0x4cc80a,_0x1a5dc0=_0x3c15f9[_0x1f20f0]||_0xbd561d[_0x48a229(0xf1)],_0x53bb81=await loadSettings(_0x1f20f0),_0x35c737=_0x1a5dc0===_0x48a229(0xdd)?'':'\x20['+_0x1a5dc0+']';console[_0x48a229(0xf5)]('\x20\x20'+(_0x18fff7?'*\x20':'\x20\x20')+_0x1f20f0+_0x35c737),_0x53bb81['baseUrl']&&console[_0x48a229(0xf5)](_0x48a229(0xdf)+_0x53bb81['baseUrl']),_0x53bb81['environmentDetails']&&console[_0x48a229(0xf5)](_0x48a229(0xe8)+_0x53bb81[_0x48a229(0xf6)]);}_0x4cc80a&&console[_0x48a229(0xf5)](_0x48a229(0xea));}
@@ -1 +1 @@
1
- const _0x442b66=_0xca9d;(function(_0x97c95a,_0x4b0f7d){const _0x655f38=_0xca9d,_0x533bd9=_0x97c95a();while(!![]){try{const _0x156be8=-parseInt(_0x655f38(0x17f))/0x1+-parseInt(_0x655f38(0x1be))/0x2*(-parseInt(_0x655f38(0x122))/0x3)+parseInt(_0x655f38(0x158))/0x4+-parseInt(_0x655f38(0x181))/0x5*(-parseInt(_0x655f38(0x16f))/0x6)+parseInt(_0x655f38(0x1ca))/0x7+-parseInt(_0x655f38(0x151))/0x8+-parseInt(_0x655f38(0x185))/0x9*(-parseInt(_0x655f38(0x166))/0xa);if(_0x156be8===_0x4b0f7d)break;else _0x533bd9['push'](_0x533bd9['shift']());}catch(_0x2cfa4d){_0x533bd9['push'](_0x533bd9['shift']());}}}(_0x226a,0xc0f5e));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';function _0x226a(){const _0x15c3f9=['\x20\x20\x20Branch:\x20','NclFt','from','Not\x20in\x20a\x20git\x20repository.','\x20scenario(s).','zeUTb','\x0a✅\x20Session\x20is\x20already\x20completed.','sessionId','element','checklistItems','assets','toLocaleString','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','Screenshot\x20','\x20feature\x20review(s)\x20found','ODrMH','\x0aNo\x20feature\x20reviews\x20found.','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','uITnL','replace','terminalReason','completedAt','type','GkAHu','rSjcB','offset','EWKpx','NyaGr','notes','split','status','\x20\x20✅\x20No\x20feedback\x20to\x20address','Showing\x20','spatial','version','latestReview','gTmLk','3|0|4|1|2|5','No\x20active\x20session\x20for\x20this\x20feature\x20review.','RRDmz','8923312ewvMfn','vcczT','currentBranch','bxOpY','\x20--include-deleted','incompleteReason','jtOOI','5527436sZGpQt',':\x20\x22','json','round','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x0a✅\x20Scenario\x20added','IGXVu','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','storage','\x20—\x20no\x20comments','eszob','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','KFwmU','4504030DJSQTk','trim','\x20\x20\x20\x20\x20Progress:\x20','verifiedItems','scenario','pipe','filter','DgFlZ','EMOjE','2046BBzcRC','stats','linkedSession','HspFw','screenshotUrls','arrayBuffer','rApkN','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','domRef','\x20\x20Expected\x20flow:','\x20scenarios.','\x0a✅\x20Report\x20generated:\x20','toFixed','\x20verified','gitBranch','env','584582VZADnH','uykKE','6430hsUNqW','IbtyF','canceledReason','blockedItems','9fbKBPR','fbTyy','totalCount','\x20\x20\x20Description:\x20','cXwlB','ygMBf','CGIlH','\x1b[0m','bILba','TRBQF','prompt','ognrz','isInteger','\x20incomplete','completed','short','XvlHV','limit','ksLou','includeDeleted','\x0aGenerating\x20report...','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','closed','dashboardUrl','blocked','\x0aAvailable\x20scenarios:','stringify','log','browserSessionId','feedback-images','piJjI','\x0a\x20\x20\x20Scenarios:','kkjZX','verification_in_progress','\x20\x20\x20\x20\x20\x20Incomplete:\x20','in_progress','screenshot','error','qIokl','position','length','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','\x20\x20\x20Completed:\x20','\x20\x20\x20','selected','\x20\x20\x20\x20\x20\x20Cancelled:\x20','Pzhnm','\x20/\x20','CMWMV','\x20concluded.','submittedAt','\x0aCreating\x20feature\x20review...','\x20\x20\x20Updated\x20branch\x20to:\x20','write','push','iteration','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','2AURaJF','\x20\x20\x20▶️\x20Started\x20session\x20','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','ready','currentSessionId','\x20[has\x20reviewer\x20feedback]','wUNNd','FSMgq','\x20(v','find','CevcJ','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','1369025RNuKtt','verified','toLocaleDateString','oKJRE','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','map','name','eYqPQ','stdin','UkFSV','\x0a✅\x20Scenario\x20updated','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','assetUrl','nPKSJ','FbasH','):\x20\x22','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x0a⚠️\x20\x20','djxVY','content','.\x20Feature\x20review\x20has\x20','repeat','stepName','.png','items','/api/v1/mcp/browser-sessions/','agentResponse','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20—\x20','unaddressedComments','CLAUDE_SESSION_ID','join','euSJq','\x0a❌\x20Invalid\x20scenario\x20index:\x20','pendingItems','No\x20sessions\x20found.','XbXAB','utf-8','isKeyStep','git\x20rev-parse\x20--abbrev-ref\x20HEAD','canonicalFlow','exit','GtILz','tRBbm','lbGVs','\x0a✅\x20Resumed\x20feature\x20review:\x20','YTocP','REYgo','dsauP','createdAt','fGGjB','eQxgn','gitRepoUrl','description','\x20--limit\x20','ndTik','71997iwyULh','selector','scenarios','cGsDu','\x20\x20\x20Created:\x20','blockedReason'];_0x226a=function(){return _0x15c3f9;};return _0x226a();}import{existsSync}from'fs';import{execSync}from'child_process';import _0x529460 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=_0x5b201e=>'\x1b[1m'+_0x5b201e+_0x442b66(0x18c);function getGitRepoUrl(){const _0x5c175e=_0x442b66,_0x55c04d={'piJjI':'pipe','dsauP':'github.com/'};try{const _0x3373cd=execSync('git\x20remote\x20get-url\x20origin',{'encoding':_0x5c175e(0x10f),'stdio':['pipe','pipe',_0x55c04d[_0x5c175e(0x1a3)]]})['trim']();return _0x3373cd['replace'](/\.git$/,'')[_0x5c175e(0x13c)](/^git@github\.com:/,_0x55c04d[_0x5c175e(0x11a)])[_0x5c175e(0x13c)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x1f0798=_0x442b66,_0x56dc64={'fGGjB':_0x1f0798(0x10f),'ksLou':_0x1f0798(0x16b)};try{return execSync(_0x1f0798(0x111),{'encoding':_0x56dc64[_0x1f0798(0x11c)],'stdio':['pipe',_0x56dc64[_0x1f0798(0x197)],_0x1f0798(0x16b)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5a5a8d=_0x442b66,_0x5d898e={'DgFlZ':function(_0x1c7c15,_0x24be31,_0x2490d6){return _0x1c7c15(_0x24be31,_0x2490d6);},'tRBbm':_0x5a5a8d(0x10f)},_0x259563=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x259563))return null;try{const _0x1acfc9=await _0x5d898e[_0x5a5a8d(0x16d)](readFile,_0x259563,_0x5d898e[_0x5a5a8d(0x115)]);return _0x1acfc9[_0x5a5a8d(0x167)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x24704e){const _0x26253d={'UkdYy':function(_0x7c706c,_0x2a81e3,_0x428d01){return _0x7c706c(_0x2a81e3,_0x428d01);},'pzZnG':function(_0x203a3b,_0x423277,_0x4d5811,_0x1da270){return _0x203a3b(_0x423277,_0x4d5811,_0x1da270);}},_0x5d3797=getRangerDir(),_0x2b1101=_0x26253d['UkdYy'](join,_0x5d3797,ACTIVE_FEATURE_FILE);!existsSync(_0x5d3797)&&await mkdir(_0x5d3797,{'recursive':!![]}),await _0x26253d['pzZnG'](writeFile,_0x2b1101,_0x24704e,'utf-8');}function getProgressDisplay(_0x35110a){const _0x1b2f3f=_0x442b66,_0x53a590={'ODrMH':function(_0x28cd1c,_0x254137){return _0x28cd1c+_0x254137;},'UlnQs':function(_0x1baec1,_0x42f239){return _0x1baec1+_0x42f239;},'EjsGu':function(_0x206ffb,_0x22706d){return _0x206ffb===_0x22706d;},'CevcJ':function(_0x433546,_0x33d86f){return _0x433546*_0x33d86f;},'LORNV':function(_0x53e0cc,_0x4f453d){return _0x53e0cc/_0x4f453d;},'TSfBF':function(_0x5debfb,_0x4bb96b){return _0x5debfb>_0x4bb96b;},'UChLJ':function(_0x43d488,_0x2d13ab){return _0x43d488>_0x2d13ab;}},_0x13548c=_0x35110a[_0x1b2f3f(0x169)]||0x0,_0x5f3031=_0x35110a['verificationInProgressItems']||0x0,_0x46655e=_0x35110a[_0x1b2f3f(0x184)]||0x0,_0x4bd5df=_0x35110a['incompleteItems']||0x0,_0x145128=_0x35110a[_0x1b2f3f(0x1ec)]||0x0,_0x12229c=_0x53a590[_0x1b2f3f(0x138)](_0x53a590['UlnQs'](_0x13548c,_0x5f3031)+_0x46655e,_0x4bd5df)+_0x145128;if(_0x53a590['EjsGu'](_0x12229c,0x0))return'-';const _0x1fced2=0xa,_0x2be250=Math[_0x1b2f3f(0x15b)](_0x53a590[_0x1b2f3f(0x1c8)](_0x53a590['LORNV'](_0x13548c,_0x12229c),_0x1fced2)),_0x1bb2d2='█'[_0x1b2f3f(0x1df)](_0x2be250)+'░'['repeat'](_0x1fced2-_0x2be250),_0x173bae=[];if(_0x53a590['TSfBF'](_0x46655e,0x0))_0x173bae[_0x1b2f3f(0x1bb)](_0x46655e+'\x20blocked');if(_0x53a590['UChLJ'](_0x4bd5df,0x0))_0x173bae['push'](_0x4bd5df+_0x1b2f3f(0x192));if(_0x53a590['TSfBF'](_0x5f3031,0x0))_0x173bae['push'](_0x5f3031+'\x20in\x20progress');const _0x15f797=_0x173bae[_0x1b2f3f(0x1ad)]>0x0?'\x20('+_0x173bae[_0x1b2f3f(0x1e9)](',\x20')+')':'';return _0x1bb2d2+'\x20'+_0x13548c+'/'+_0x12229c+_0x1b2f3f(0x17c)+_0x15f797;}function getCurrentSessionItems(_0x13ba97,_0x539a80){const _0x4b96fe=_0x442b66;if(!_0x13ba97['currentSessionId'])return _0x539a80['filter'](_0x2ed90d=>!_0x2ed90d[_0x4b96fe(0x12f)]);return _0x539a80[_0x4b96fe(0x16c)](_0x4e12b5=>_0x4e12b5[_0x4b96fe(0x12f)]===_0x13ba97[_0x4b96fe(0x1c2)]||!_0x4e12b5[_0x4b96fe(0x12f)]);}function displayFeature(_0x34d40a,_0x4e2521){const _0x348459=_0x442b66,_0x454ecd={'bxOpY':_0x348459(0x1a4),'huXpN':function(_0x109d25,_0x155d51){return _0x109d25<_0x155d51;},'EWKpx':function(_0x51f9ee,_0xbf1b81){return _0x51f9ee===_0xbf1b81;},'cGsDu':_0x348459(0x19b),'hJaPJ':'incomplete','CGIlH':_0x348459(0x1a6),'TNoOw':function(_0x11fac4,_0x57f80d){return _0x11fac4!==_0x57f80d;},'bILba':function(_0x40c23c,_0x221129){return _0x40c23c+_0x221129;},'fbTyy':function(_0x500f56,_0x35686a){return _0x500f56===_0x35686a;},'TGXii':function(_0x3751f6,_0x282c47){return _0x3751f6===_0x282c47;}};console['log']('\x0a'+_0x34d40a['name']+'\x20('+_0x34d40a[_0x348459(0x19c)]+')');_0x34d40a[_0x348459(0x170)]&&console[_0x348459(0x1a0)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x34d40a['stats']));_0x34d40a[_0x348459(0x11f)]&&console[_0x348459(0x1a0)](_0x348459(0x188)+_0x34d40a['description']);_0x34d40a[_0x348459(0x11e)]&&console[_0x348459(0x1a0)]('\x20\x20\x20Repository:\x20'+_0x34d40a['gitRepoUrl']);_0x34d40a[_0x348459(0x17d)]&&console['log'](_0x348459(0x128)+_0x34d40a[_0x348459(0x17d)]);console[_0x348459(0x1a0)]('\x20\x20\x20Created:\x20'+new Date(_0x34d40a[_0x348459(0x11b)])[_0x348459(0x133)]());_0x34d40a['completedAt']&&console[_0x348459(0x1a0)]('\x20\x20\x20Completed:\x20'+new Date(_0x34d40a['completedAt'])[_0x348459(0x133)]());if(_0x4e2521&&_0x4e2521['length']>0x0){console['log'](_0x454ecd[_0x348459(0x154)]);for(let _0x583676=0x0;_0x454ecd['huXpN'](_0x583676,_0x4e2521[_0x348459(0x1ad)]);_0x583676++){const _0x487c23=_0x4e2521[_0x583676];let _0x54f6bf;if(_0x454ecd['EWKpx'](_0x487c23['status'],_0x454ecd['cGsDu'])&&_0x487c23[_0x348459(0x13d)]==='approved')_0x54f6bf='✅';else{if(_0x454ecd['EWKpx'](_0x487c23['status'],_0x348459(0x1cb)))_0x54f6bf='🟢';else{if(_0x454ecd[_0x348459(0x143)](_0x487c23['status'],_0x454ecd['hJaPJ']))_0x54f6bf='🟠';else{if(_0x487c23['status']===_0x348459(0x19d))_0x54f6bf='🛑';else{if(_0x487c23[_0x348459(0x147)]==='closed')_0x54f6bf='⛔';else _0x454ecd['EWKpx'](_0x487c23[_0x348459(0x147)],_0x454ecd[_0x348459(0x18b)])?_0x54f6bf='⏳':_0x54f6bf='⬜';}}}}const _0x415210=_0x487c23['version']>0x1?_0x348459(0x1c6)+_0x487c23[_0x348459(0x14b)]+')':'',_0x13ce74=_0x487c23[_0x348459(0x14b)]>0x1&&_0x487c23['parentItemId']&&_0x454ecd['TNoOw'](_0x487c23[_0x348459(0x147)],_0x454ecd[_0x348459(0x125)])&&_0x487c23['status']!=='verified'?_0x348459(0x1c3):'';console['log'](_0x348459(0x1b0)+_0x454ecd[_0x348459(0x18d)](_0x583676,0x1)+'.\x20'+_0x54f6bf+'\x20'+_0x487c23[_0x348459(0x11f)]+_0x415210+_0x13ce74);_0x454ecd['fbTyy'](_0x487c23['status'],'blocked')&&_0x487c23[_0x348459(0x127)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x487c23['blockedReason']);_0x487c23[_0x348459(0x147)]===_0x454ecd['hJaPJ']&&_0x487c23[_0x348459(0x156)]&&console[_0x348459(0x1a0)](_0x348459(0x1a7)+_0x487c23['incompleteReason']);if(_0x454ecd['TGXii'](_0x487c23['status'],_0x454ecd[_0x348459(0x125)])&&_0x454ecd[_0x348459(0x186)](_0x487c23[_0x348459(0x13d)],'approved'))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x487c23['status']==='closed'&&_0x487c23[_0x348459(0x183)]&&console['log'](_0x348459(0x1b2)+_0x487c23[_0x348459(0x183)]);}}}export async function featureCreate(_0x4ea070,_0x3e2b2f){const _0x291b11=_0x442b66,_0x1e8d56={'TgKCg':function(_0x22db85){return _0x22db85();},'REYgo':function(_0x2c4b06){return _0x2c4b06();},'UmgiG':_0x291b11(0x1b8),'SqzEx':function(_0x147a9c,_0x564e12,_0x34e04b){return _0x147a9c(_0x564e12,_0x34e04b);}},{envNames:_0x5aa8e0}=await _0x1e8d56['TgKCg'](getEnvNames);_0x5aa8e0[_0x291b11(0x1ad)]===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x12ac52=>bold(_0x12ac52)));const _0x5a4cfe=_0x3e2b2f[_0x291b11(0x124)]?_0x3e2b2f['scenarios']['map'](_0xdc6ec4=>_0xdc6ec4['trim']()):[],_0x1c51e6=getGitRepoUrl(),_0x13f4c6=_0x1e8d56[_0x291b11(0x119)](getGitBranch);console[_0x291b11(0x1a0)](_0x1e8d56['UmgiG']);const _0x1ed9ea=await createFeature({'name':_0x4ea070,'description':_0x3e2b2f['description'],'checklist':_0x5a4cfe,'gitRepoUrl':_0x1c51e6,'gitBranch':_0x13f4c6});await setActiveFeatureId(_0x1ed9ea['id']),await tryStartCurrentSession(_0x1ed9ea['id']);const _0x393085=process[_0x291b11(0x17e)][_0x291b11(0x1e8)];_0x393085&&registerSession(_0x393085,_0x1ed9ea['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x1ed9ea['id']),_0x1e8d56['SqzEx'](displayFeature,_0x1ed9ea,_0x1ed9ea[_0x291b11(0x131)]),console[_0x291b11(0x1a0)](_0x291b11(0x176));}export async function featureList(_0x1a2d76){const _0x20ed52=_0x442b66,_0x4a3896={'MrGDf':function(_0x3be50c){return _0x3be50c();},'gTmLk':function(_0x2e48d3,_0x9f4254){return _0x2e48d3>_0x9f4254;},'IAsos':function(_0x3b2644,_0x59dfa1){return _0x3b2644+_0x59dfa1;},'wJXso':function(_0xfe5ea7,_0x4f3b20){return _0xfe5ea7<_0x4f3b20;}},_0x3097ec={'limit':_0x1a2d76[_0x20ed52(0x196)]??0xa,'offset':_0x1a2d76[_0x20ed52(0x142)]??0x0,'includeDeleted':_0x1a2d76[_0x20ed52(0x198)]};_0x1a2d76[_0x20ed52(0x153)]&&(_0x3097ec[_0x20ed52(0x11e)]=getGitRepoUrl(),_0x3097ec['gitBranch']=_0x4a3896['MrGDf'](getGitBranch));const _0x3ee415=await listFeatures(_0x3097ec);if(_0x3ee415['items']['length']===0x0){console['log'](_0x20ed52(0x139));return;}const _0x3d45e5=_0x4a3896[_0x20ed52(0x14d)](_0x3ee415[_0x20ed52(0x187)],_0x3ee415[_0x20ed52(0x1e2)][_0x20ed52(0x1ad)])?_0x20ed52(0x149)+_0x3ee415['items']['length']+'\x20of\x20'+_0x3ee415['totalCount']:_0x3ee415[_0x20ed52(0x187)]+_0x20ed52(0x137);console[_0x20ed52(0x1a0)]('\x0a'+_0x3d45e5+':\x0a');for(const _0x1ee8ba of _0x3ee415['items']){const _0x233241=_0x20ed52(0x14e)['split']('|');let _0x217f1a=0x0;while(!![]){switch(_0x233241[_0x217f1a++]){case'0':console['log']('\x20\x20\x20ID:\x20'+_0x1ee8ba['id']);continue;case'1':_0x1ee8ba[_0x20ed52(0x17d)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x1ee8ba[_0x20ed52(0x17d)]);continue;case'2':console[_0x20ed52(0x1a0)]('\x20\x20\x20Created:\x20'+new Date(_0x1ee8ba[_0x20ed52(0x11b)])[_0x20ed52(0x1cc)]());continue;case'3':console[_0x20ed52(0x1a0)](''+_0x1ee8ba['name']);continue;case'4':_0x1ee8ba['stats']&&console[_0x20ed52(0x1a0)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1ee8ba['stats']));continue;case'5':console[_0x20ed52(0x1a0)]('');continue;}break;}}const _0x7ffc6a=_0x3097ec[_0x20ed52(0x196)]??0xa,_0x12c882=_0x4a3896['IAsos'](_0x3097ec[_0x20ed52(0x142)]??0x0,_0x3ee415[_0x20ed52(0x1e2)]['length']);if(_0x4a3896['wJXso'](_0x12c882,_0x3ee415[_0x20ed52(0x187)])){const _0x15de89=_0x7ffc6a!==0xa?_0x20ed52(0x120)+_0x7ffc6a:'',_0x97b400=_0x1a2d76[_0x20ed52(0x153)]?'\x20--current-branch':'',_0x3012d6=_0x1a2d76[_0x20ed52(0x198)]?_0x20ed52(0x155):'';console[_0x20ed52(0x1a0)](_0x20ed52(0x1da)+_0x12c882+_0x15de89+_0x97b400+_0x3012d6);}}export async function featureShow(_0x2215c4){const _0x2a28cc=_0x442b66,_0x3b536f={'YTocP':function(_0x4683b4){return _0x4683b4();}},_0x248514=_0x2215c4||await _0x3b536f[_0x2a28cc(0x118)](getActiveFeatureId);if(!_0x248514)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 _0x705b30=await getFeature(_0x248514);displayFeature(_0x705b30,_0x705b30['checklistItems']);}export async function featureResume(_0x5896e7){const _0x1f7862=_0x442b66,_0x239fcc={'uITnL':function(_0x304be2,_0x52e34e){return _0x304be2(_0x52e34e);},'NyaGr':function(_0x513624,_0x2cc532,_0x50c307){return _0x513624(_0x2cc532,_0x50c307);},'vcczT':function(_0x844f02,_0x1a3eee,_0x60f9d7){return _0x844f02(_0x1a3eee,_0x60f9d7);},'iCIPI':function(_0x4cc3dc){return _0x4cc3dc();},'kViSr':'any','RRDmz':function(_0x5b287d,_0x457258){return _0x5b287d||_0x457258;},'XbXAB':function(_0x50f280,_0x400fe1){return _0x50f280===_0x400fe1;},'eQxgn':_0x1f7862(0x1e5),'LxbxB':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','ndTik':function(_0x533c34,_0x49501f){return _0x533c34!==_0x49501f;}};if(_0x5896e7){const _0x43b51d=await getFeature(_0x5896e7);await _0x239fcc['uITnL'](setActiveFeatureId,_0x43b51d['id']);const _0x527aca=getGitBranch();_0x527aca&&_0x527aca!==_0x43b51d[_0x1f7862(0x17d)]&&(await _0x239fcc[_0x1f7862(0x144)](updateFeature,_0x43b51d['id'],{'gitBranch':_0x527aca}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x527aca));console[_0x1f7862(0x1a0)](_0x1f7862(0x117)+_0x43b51d[_0x1f7862(0x1d0)]+'\x20('+_0x43b51d['id']+')'),await tryStartCurrentSession(_0x43b51d['id']);const _0x5a934b=process['env'][_0x1f7862(0x1e8)];_0x5a934b&&_0x239fcc[_0x1f7862(0x152)](registerSession,_0x5a934b,_0x43b51d['id']);displayFeature(_0x43b51d,_0x43b51d['checklistItems']),await printFeedbackNudge(_0x43b51d['id']);return;}const _0x1157db=getGitRepoUrl(),_0xf1e092=_0x239fcc['iCIPI'](getGitBranch);if(!_0x1157db&&!_0xf1e092)throw new Error(_0x1f7862(0x12b));console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x1157db||_0x239fcc['kViSr'])+_0x1f7862(0x1b4)+_0x239fcc[_0x1f7862(0x150)](_0xf1e092,_0x239fcc['kViSr'])+'...');const _0x48e4a8=await _0x239fcc[_0x1f7862(0x13b)](listFeatures,{'gitRepoUrl':_0x1157db,'gitBranch':_0xf1e092}),_0x1610f5=_0x48e4a8['items']['filter'](_0x163183=>!_0x163183['completedAt']);if(_0x239fcc[_0x1f7862(0x1ee)](_0x1610f5['length'],0x0)){console[_0x1f7862(0x1a0)](_0x1f7862(0x1c0)),console[_0x1f7862(0x1a0)](_0x239fcc[_0x1f7862(0x11d)]);return;}let _0xfb13c5;if(_0x1610f5['length']===0x1)_0xfb13c5=_0x1610f5[0x0];else{const _0x2abd36=process[_0x1f7862(0x1d2)]['isTTY']&&process['stdout']['isTTY'];if(!_0x2abd36){console['log'](_0x1f7862(0x1d5));for(const _0x1fd196 of _0x1610f5){console['log']('\x20\x20'+_0x1fd196[_0x1f7862(0x1d0)]),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x1fd196['id']),_0x1fd196[_0x1f7862(0x170)]&&console[_0x1f7862(0x1a0)](_0x1f7862(0x168)+_0x239fcc['uITnL'](getProgressDisplay,_0x1fd196['stats'])),_0x1fd196['gitBranch']&&console[_0x1f7862(0x1a0)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x1fd196[_0x1f7862(0x17d)]);}throw new Error(_0x239fcc['LxbxB']);}const {selected:_0x4e0a64}=await _0x529460[_0x1f7862(0x18f)]([{'type':'list','name':_0x1f7862(0x1b1),'message':_0x1f7862(0x1bd),'choices':_0x1610f5['map'](_0x53c431=>({'name':_0x53c431[_0x1f7862(0x1d0)]+'\x20('+_0x53c431['id']+')','value':_0x53c431['id']}))}]);_0xfb13c5=_0x1610f5['find'](_0x8bdc4f=>_0x8bdc4f['id']===_0x4e0a64);}await _0x239fcc['uITnL'](setActiveFeatureId,_0xfb13c5['id']);_0xf1e092&&_0x239fcc[_0x1f7862(0x121)](_0xf1e092,_0xfb13c5[_0x1f7862(0x17d)])&&(await _0x239fcc[_0x1f7862(0x152)](updateFeature,_0xfb13c5['id'],{'gitBranch':_0xf1e092}),console['log'](_0x1f7862(0x1b9)+_0xf1e092));console[_0x1f7862(0x1a0)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0xfb13c5['name']+'\x20('+_0xfb13c5['id']+')'),await tryStartCurrentSession(_0xfb13c5['id']);const _0x227be8=await _0x239fcc['uITnL'](getFeature,_0xfb13c5['id']),_0x11cabd=process[_0x1f7862(0x17e)][_0x1f7862(0x1e8)];_0x11cabd&&_0x239fcc['vcczT'](registerSession,_0x11cabd,_0x227be8['id']),displayFeature(_0x227be8,_0x227be8['checklistItems']),await printFeedbackNudge(_0x227be8['id']);}async function printFeedbackNudge(_0x59a7ce){const _0x23f211=_0x442b66,_0x379466={'yyLUh':function(_0x39b521,_0x2d279f,_0x2d37ef){return _0x39b521(_0x2d279f,_0x2d37ef);},'zeUTb':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x17868f}=await getActionItems(_0x59a7ce);let _0x107e8a=0x0,_0xb9d723=0x0;for(const _0x5175ec of _0x17868f){const _0x11249e=await _0x379466['yyLUh'](getItemFeedback,_0x59a7ce,_0x5175ec['id']);_0x11249e[_0x23f211(0x1e7)]['length']>0x0&&(_0x107e8a+=_0x11249e[_0x23f211(0x1e7)]['length'],_0xb9d723++);}_0x107e8a>0x0&&(console['log'](_0x23f211(0x1db)+_0x107e8a+_0x23f211(0x13a)+_0xb9d723+_0x23f211(0x12c)),console[_0x23f211(0x1a0)](_0x379466[_0x23f211(0x12d)]));}catch{}}async function tryStartCurrentSession(_0x15b2dc){const _0x551099=_0x442b66;try{const {sessions:_0x5cfd4d}=await listFeatureSessions(_0x15b2dc),_0x2810ef=_0x5cfd4d['find'](_0x3d17e3=>_0x3d17e3['status']===_0x551099(0x1c1));_0x2810ef&&(await startSession(_0x15b2dc,_0x2810ef['id']),console['log'](_0x551099(0x1bf)+_0x2810ef[_0x551099(0x1bc)]));}catch{}}export async function featureReport(_0x1e6d74,_0x567d70){const _0x19a157=_0x442b66,_0x3d20c8={'WoOyk':function(_0x11f7ec){return _0x11f7ec();},'JaIJj':_0x19a157(0x1ce),'FSMgq':function(_0x3500a5){return _0x3500a5();},'chAqR':'reports','qIokl':function(_0x5985e0,_0x113dae){return _0x5985e0(_0x113dae);},'NclFt':function(_0x323ada,_0x1af57a,_0x58af49,_0x490620){return _0x323ada(_0x1af57a,_0x58af49,_0x490620);}},_0x475c4c=_0x1e6d74||await _0x3d20c8['WoOyk'](getActiveFeatureId);if(!_0x475c4c)throw new Error(_0x3d20c8['JaIJj']);console[_0x19a157(0x1a0)](_0x19a157(0x199));const _0x50461e=await getFeatureReportMarkdown(_0x475c4c,{'style':_0x567d70['style']}),_0x2a98e5=_0x567d70['output']||join(_0x3d20c8[_0x19a157(0x1c5)](getRangerDir),_0x3d20c8['chAqR'],_0x475c4c+'.md'),_0x40a86b=join(_0x2a98e5,'..');!_0x3d20c8[_0x19a157(0x1ab)](existsSync,_0x40a86b)&&await mkdir(_0x40a86b,{'recursive':!![]}),await _0x3d20c8[_0x19a157(0x129)](writeFile,_0x2a98e5,_0x50461e,'utf-8'),console[_0x19a157(0x1a0)](_0x19a157(0x17a)+_0x2a98e5);}function getScenarioResult(_0x2e8e8b){const _0x1c0816=_0x442b66,_0x2f7944={'IbtyF':_0x1c0816(0x19b),'ZiBFE':function(_0x5617ff,_0x31d0a5){return _0x5617ff===_0x31d0a5;},'ygMBf':'verification_in_progress','jtOOI':'in_progress'};if(_0x2e8e8b['status']==='closed')return _0x2e8e8b['terminalReason']??_0x2f7944[_0x1c0816(0x182)];if(_0x2f7944['ZiBFE'](_0x2e8e8b[_0x1c0816(0x147)],_0x2f7944[_0x1c0816(0x18a)]))return _0x2f7944[_0x1c0816(0x157)];return _0x2e8e8b[_0x1c0816(0x147)];}function getScenarioRationale(_0x48ee41,_0x3240ac){const _0x3241e5=_0x442b66;if(_0x3240ac)return _0x3240ac;if(_0x48ee41[_0x3241e5(0x127)])return _0x48ee41['blockedReason'];if(_0x48ee41['incompleteReason'])return _0x48ee41[_0x3241e5(0x156)];if(_0x48ee41[_0x3241e5(0x183)])return _0x48ee41['canceledReason'];if(_0x48ee41[_0x3241e5(0x145)])return _0x48ee41[_0x3241e5(0x145)];return null;}export async function featureReportPrDescription(_0x104f55,_0x1af422){const _0x20daec=_0x442b66,_0x2307ca={'Pzhnm':function(_0x359944){return _0x359944();},'GkAHu':_0x20daec(0x1ce),'euSJq':function(_0x493440,_0x3a62e5){return _0x493440(_0x3a62e5);},'rNIqy':function(_0x208932,_0x3fbc7){return _0x208932===_0x3fbc7;},'QhBJX':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','kkjZX':function(_0x3ddf53,_0x10c288){return _0x3ddf53<_0x10c288;},'XvlHV':function(_0x40498d,_0x99559e){return _0x40498d+_0x99559e;},'uykKE':function(_0x1ab09f,_0x46106d){return _0x1ab09f===_0x46106d;},'eszob':function(_0x297c5d,_0x433a59,_0x4834c1){return _0x297c5d(_0x433a59,_0x4834c1);}},_0x2a1057=_0x104f55||await _0x2307ca[_0x20daec(0x1b3)](getActiveFeatureId);if(!_0x2a1057)throw new Error(_0x2307ca[_0x20daec(0x140)]);const _0x3444c7=await _0x2307ca[_0x20daec(0x1ea)](getFeature,_0x2a1057),_0x7110a8=_0x3444c7[_0x20daec(0x131)]||[],_0x47fad9=getCurrentSessionItems(_0x3444c7,_0x7110a8);_0x2307ca['rNIqy'](_0x47fad9[_0x20daec(0x1ad)],0x0)&&(console[_0x20daec(0x1aa)](_0x2307ca['QhBJX']),process['exit'](0x1));const _0x993aad=_0x1af422['excludeScenarios']??[],_0x3b7d26=_0x993aad['filter'](_0x20d0fe=>!Number[_0x20daec(0x191)](_0x20d0fe)||_0x20d0fe<0x1||_0x20d0fe>_0x47fad9[_0x20daec(0x1ad)]);if(_0x3b7d26[_0x20daec(0x1ad)]>0x0){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x3b7d26['join'](',\x20')),console['log'](_0x20daec(0x19e));for(let _0x3dcfbc=0x0;_0x2307ca[_0x20daec(0x1a5)](_0x3dcfbc,_0x47fad9[_0x20daec(0x1ad)]);_0x3dcfbc++){console['log']('\x20\x20'+_0x2307ca[_0x20daec(0x195)](_0x3dcfbc,0x1)+'.\x20'+_0x47fad9[_0x3dcfbc][_0x20daec(0x11f)]);}process['exit'](0x1);}const _0x525b13=new Set(_0x993aad['map'](_0x10f21b=>_0x10f21b-0x1)),_0x5c7657=_0x47fad9['filter']((_0x11386,_0x2ebe03)=>!_0x525b13['has'](_0x2ebe03));_0x2307ca[_0x20daec(0x180)](_0x5c7657[_0x20daec(0x1ad)],0x0)&&(console[_0x20daec(0x1aa)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process['exit'](0x1));if(_0x1af422[_0x20daec(0x15a)])await outputJsonReport(_0x2a1057,_0x3444c7,_0x5c7657);else{const _0x55a80c=await _0x2307ca[_0x20daec(0x163)](getFeatureReportMarkdown,_0x2a1057,{'itemIds':_0x5c7657[_0x20daec(0x1cf)](_0x3aae40=>_0x3aae40['id'])});process['stdout'][_0x20daec(0x1ba)](_0x55a80c['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x3e0387,_0x445229,_0x1a0191){const _0x1eb54a=_0x442b66,_0x59c143={'CMWMV':function(_0x3ffb53,_0x516f98){return _0x3ffb53(_0x516f98);},'RYBDI':function(_0x279e24){return _0x279e24();}},_0x2a1f8e=_0x59c143['RYBDI'](getApiBaseUrl),_0x291820=await getFeatureReport(_0x3e0387),_0x5631ae=new Map(_0x291820[_0x1eb54a(0x131)][_0x1eb54a(0x1cf)](_0x435c6d=>[_0x435c6d['id'],_0x435c6d])),_0x1b1f56=await Promise['all'](_0x1a0191['map'](async _0x39b786=>{const _0x6343f9=_0x1eb54a,_0x2cd95a=_0x5631ae['get'](_0x39b786['id']),_0x53c3fc=_0x2cd95a?.[_0x6343f9(0x171)]??null;let _0x14e444=[];if(_0x39b786[_0x6343f9(0x1a1)])try{const {steps:_0x5ab717}=await _0x59c143[_0x6343f9(0x1b5)](getBrowserSessionSteps,_0x39b786['browserSessionId']);_0x5ab717[_0x6343f9(0x1ad)]>0x0&&(_0x14e444=_0x5ab717['map'](_0x2ae8ee=>{const _0x4282a=_0x6343f9,_0x50b64d=_0x2ae8ee['assets'][_0x4282a(0x1c7)](_0x1312e=>_0x1312e['assetType']===_0x4282a(0x1a9)&&_0x1312e['timing']==='after')??_0x2ae8ee[_0x4282a(0x132)]['find'](_0x21726d=>_0x21726d['assetType']===_0x4282a(0x1a9));let _0x4fa8e4=null,_0x39be8c=null;if(_0x50b64d){const _0x10f121=_0x50b64d[_0x4282a(0x161)]['location'][_0x4282a(0x146)]('/')['pop']();_0x4fa8e4=_0x2a1f8e+_0x4282a(0x1e3)+_0x39b786[_0x4282a(0x1a1)]+'/artifacts/'+_0x10f121,_0x10f121&&(_0x39be8c=_0x10f121[_0x4282a(0x13c)](/\.\w+$/,'')[_0x4282a(0x13c)](/^(key_)?\d+_/,'')[_0x4282a(0x13c)](/[-_]/g,'\x20'));}return{'description':_0x39be8c||_0x2ae8ee[_0x4282a(0x11f)]||_0x2ae8ee[_0x4282a(0x1e0)]||'Step\x20'+_0x2ae8ee[_0x4282a(0x1ac)],'screenshot':_0x4fa8e4,'is_key_step':_0x2ae8ee[_0x4282a(0x110)]};}));}catch{}return _0x14e444[_0x6343f9(0x1ad)]===0x0&&_0x53c3fc?.[_0x6343f9(0x173)]&&(_0x14e444=_0x53c3fc['screenshotUrls'][_0x6343f9(0x1cf)]((_0x38235e,_0x4eb561)=>({'description':_0x6343f9(0x136)+(_0x4eb561+0x1),'screenshot':_0x38235e,'is_key_step':![]}))),{'description':_0x39b786[_0x6343f9(0x11f)],'result':getScenarioResult(_0x39b786),'rationale':getScenarioRationale(_0x39b786,_0x53c3fc?.[_0x6343f9(0x1e4)]),'steps':_0x14e444};})),_0x5a6506={'url':_0x445229[_0x1eb54a(0x19c)],'scenarios':_0x1b1f56};process['stdout'][_0x1eb54a(0x1ba)](JSON[_0x1eb54a(0x19f)](_0x5a6506,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x23cda0){const _0x2676ac=_0x442b66,_0xefda41={'wUNNd':function(_0x4a4389){return _0x4a4389();},'uiZEq':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','svNzA':'Current\x20session\x20not\x20found.','bGXJF':'\x0aConcluding\x20session...','djxVY':function(_0x24ee5e,_0x1f159a,_0x55f93d){return _0x24ee5e(_0x1f159a,_0x55f93d);}},_0xfd77be=_0x23cda0||await _0xefda41[_0x2676ac(0x1c4)](getActiveFeatureId);if(!_0xfd77be)throw new Error(_0xefda41['uiZEq']);const _0x449aca=await getFeature(_0xfd77be);if(!_0x449aca[_0x2676ac(0x1c2)])throw new Error(_0x2676ac(0x14f));const {sessions:_0x160acb}=await listFeatureSessions(_0xfd77be),_0xecc9f8=_0x160acb[_0x2676ac(0x1c7)](_0x182fbd=>_0x182fbd['id']===_0x449aca['currentSessionId']);if(!_0xecc9f8)throw new Error(_0xefda41['svNzA']);if(_0xecc9f8['status']===_0x2676ac(0x193)){console[_0x2676ac(0x1a0)](_0x2676ac(0x12e));return;}if(_0xecc9f8[_0x2676ac(0x147)]!==_0x2676ac(0x1a8))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0xecc9f8[_0x2676ac(0x147)]);console[_0x2676ac(0x1a0)](_0xefda41['bGXJF']),await _0xefda41[_0x2676ac(0x1dc)](concludeSession,_0xfd77be,_0x449aca['currentSessionId']),console[_0x2676ac(0x1a0)]('\x0a✅\x20Session\x20'+_0xecc9f8[_0x2676ac(0x1bc)]+_0x2676ac(0x1b6)),console['log'](_0x2676ac(0x164));}export async function featureSessions(_0x13979e){const _0x45ff90=_0x442b66,_0x4a29e6={'EMOjE':function(_0x5262f4){return _0x5262f4();},'GtILz':function(_0x2b1d2b,_0x40184a){return _0x2b1d2b(_0x40184a);},'EYDzL':function(_0x3e04e0,_0x61a21d){return _0x3e04e0===_0x61a21d;},'KFwmU':'completed'},_0x4208b8=_0x13979e||await _0x4a29e6[_0x45ff90(0x16e)](getActiveFeatureId);if(!_0x4208b8)throw new Error(_0x45ff90(0x1ce));const _0x173222=await getFeature(_0x4208b8);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x173222['name']+'\x0a');const {sessions:_0x376960}=await _0x4a29e6[_0x45ff90(0x114)](listFeatureSessions,_0x4208b8);if(_0x4a29e6['EYDzL'](_0x376960[_0x45ff90(0x1ad)],0x0)){console[_0x45ff90(0x1a0)](_0x45ff90(0x1ed));return;}for(const _0x174f75 of _0x376960){const _0x541ff0=_0x174f75[_0x45ff90(0x147)]===_0x4a29e6[_0x45ff90(0x165)]?'✅':_0x174f75['status']==='in_progress'?'🔄':'▶️';console['log'](_0x541ff0+'\x20Session\x20'+_0x174f75['iteration']+'\x20('+_0x174f75['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x174f75['status']),console[_0x45ff90(0x1a0)](_0x45ff90(0x126)+new Date(_0x174f75[_0x45ff90(0x11b)])['toLocaleString']()),_0x174f75['completedAt']&&console['log'](_0x45ff90(0x1af)+new Date(_0x174f75[_0x45ff90(0x13e)])['toLocaleString']()),console[_0x45ff90(0x1a0)]('');}}export async function featureAddScenario(_0x313152,_0x1d382e){const _0x3eb0dd=_0x442b66,_0x578dae={'UlCBq':function(_0x386992,_0x47602a){return _0x386992(_0x47602a);},'rSjcB':function(_0x1cab35,_0x32264b,_0x1aeee5){return _0x1cab35(_0x32264b,_0x1aeee5);},'IGXVu':function(_0x33ca7f,_0x527aa6){return _0x33ca7f(_0x527aa6);}},_0x33def3=_0x1d382e||await getActiveFeatureId();if(!_0x33def3)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 _0x2f8cbe=await _0x578dae['UlCBq'](getFeature,_0x33def3);if(_0x2f8cbe[_0x3eb0dd(0x14c)]&&!_0x2f8cbe['latestReview'][_0x3eb0dd(0x1b7)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x2f8cbe['dashboardUrl']);await _0x578dae['rSjcB'](createChecklistItem,_0x33def3,_0x313152);const _0x3c421f=await _0x578dae[_0x3eb0dd(0x15f)](getFeature,_0x33def3);console['log'](_0x3eb0dd(0x15e)),_0x578dae[_0x3eb0dd(0x141)](displayFeature,_0x3c421f,_0x3c421f[_0x3eb0dd(0x131)]);}export async function featureEditScenario(_0x3ed40b,_0x31d577){const _0x124d14=_0x442b66,_0xdd9838={'iFMgn':_0x124d14(0x135),'ognrz':'Please\x20finish\x20your\x20review\x20first:','OOQqE':function(_0x32a261,_0x24473c){return _0x32a261===_0x24473c;},'HspFw':_0x124d14(0x134),'JSVcC':function(_0x3d1a3f,_0x26fa81){return _0x3d1a3f<_0x26fa81;},'lbGVs':function(_0x2f4367,_0x5e482a){return _0x2f4367+_0x5e482a;},'ExfBF':function(_0x508c75,_0x11b421){return _0x508c75>=_0x11b421;},'NeVVX':'\x0aAvailable\x20scenarios:','SrLTS':function(_0x168dfd,_0x23d07f,_0x100c8f){return _0x168dfd(_0x23d07f,_0x100c8f);}},_0x52b5f9=_0x31d577['id']||await getActiveFeatureId();!_0x52b5f9&&(console['error'](_0xdd9838['iFMgn']),console['error'](_0x124d14(0x15c)),process[_0x124d14(0x113)](0x1));const _0x37f40e=await getFeature(_0x52b5f9);_0x37f40e[_0x124d14(0x14c)]&&!_0x37f40e[_0x124d14(0x14c)][_0x124d14(0x1b7)]&&(console[_0x124d14(0x1aa)]('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x124d14(0x1aa)](_0xdd9838[_0x124d14(0x190)]),console[_0x124d14(0x1aa)]('\x20\x20'+_0x37f40e[_0x124d14(0x19c)]),process['exit'](0x1));const _0x1e2b4e=_0x37f40e[_0x124d14(0x131)]||[];_0x1e2b4e['length']===0x0&&(console[_0x124d14(0x1aa)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0xdd9838['OOQqE'](_0x31d577['scenario'],undefined)){console[_0x124d14(0x1aa)](_0xdd9838[_0x124d14(0x172)]),console[_0x124d14(0x1a0)](_0x124d14(0x19e));for(let _0x514dab=0x0;_0xdd9838['JSVcC'](_0x514dab,_0x1e2b4e['length']);_0x514dab++){console[_0x124d14(0x1a0)]('\x20\x20'+_0xdd9838['lbGVs'](_0x514dab,0x1)+'.\x20'+_0x1e2b4e[_0x514dab]['description']);}process[_0x124d14(0x113)](0x1);}const _0x33f670=_0x31d577[_0x124d14(0x16a)]-0x1;if(_0x33f670<0x0||_0xdd9838['ExfBF'](_0x33f670,_0x1e2b4e['length'])){console[_0x124d14(0x1aa)](_0x124d14(0x1eb)+_0x31d577['scenario']+_0x124d14(0x1de)+_0x1e2b4e[_0x124d14(0x1ad)]+_0x124d14(0x179)),console[_0x124d14(0x1a0)](_0xdd9838['NeVVX']);for(let _0x44963d=0x0;_0x44963d<_0x1e2b4e['length'];_0x44963d++){console[_0x124d14(0x1a0)]('\x20\x20'+_0xdd9838[_0x124d14(0x116)](_0x44963d,0x1)+'.\x20'+_0x1e2b4e[_0x44963d]['description']);}process[_0x124d14(0x113)](0x1);}const _0x5c1cc8=_0x1e2b4e[_0x33f670];await updateChecklistItem(_0x52b5f9,_0x5c1cc8['id'],{'description':_0x3ed40b});const _0x305185=await getFeature(_0x52b5f9);console[_0x124d14(0x1a0)](_0x124d14(0x1d4)),_0xdd9838['SrLTS'](displayFeature,_0x305185,_0x305185[_0x124d14(0x131)]);}async function downloadFeedbackImage(_0x2e400b,_0x501b35){const _0x2cf36e=_0x442b66,_0x52dc83={'eYqPQ':function(_0x53cd9a,_0x1a3663,_0x58b0ad){return _0x53cd9a(_0x1a3663,_0x58b0ad);},'uNdgz':function(_0x3a94ba,_0x235f1c,_0x1d9570){return _0x3a94ba(_0x235f1c,_0x1d9570);}};try{const _0xc4f454=_0x52dc83[_0x2cf36e(0x1d1)](join,getRangerDir(),_0x2cf36e(0x1a2));await _0x52dc83['uNdgz'](mkdir,_0xc4f454,{'recursive':!![]});const _0xed9da0=_0x52dc83['uNdgz'](join,_0xc4f454,'comment_'+_0x501b35+_0x2cf36e(0x1e1)),_0x54d0af=await fetch(_0x2e400b);if(!_0x54d0af['ok'])return null;const _0x10722a=Buffer[_0x2cf36e(0x12a)](await _0x54d0af[_0x2cf36e(0x174)]());return await _0x52dc83['eYqPQ'](writeFile,_0xed9da0,_0x10722a),_0xed9da0;}catch{return null;}}export async function featureGetReview(_0x48b036){const _0x1a8f74=_0x442b66,_0x1c4f27={'nPKSJ':function(_0xa16747){return _0xa16747();},'laUlr':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','IHxcL':function(_0x51c3a5,_0x543c77){return _0x51c3a5===_0x543c77;},'AqezQ':function(_0x1f914d,_0x4d944a){return _0x1f914d<_0x4d944a;},'CDGCt':function(_0x5a8310,_0x5d9e6e,_0x144414){return _0x5a8310(_0x5d9e6e,_0x144414);},'oKJRE':'en-US','UkFSV':_0x1a8f74(0x194),'FbasH':'Unknown','rApkN':function(_0x440814,_0x4d02cb,_0x5f3e1c){return _0x440814(_0x4d02cb,_0x5f3e1c);},'hlOVZ':_0x1a8f74(0x130),'TRBQF':function(_0x5c02f1,_0x4ea390){return _0x5c02f1>=_0x4ea390;},'cXwlB':function(_0x521daa,_0x132435){return _0x521daa+_0x132435;}},_0x511f5d=_0x48b036||await _0x1c4f27[_0x1a8f74(0x1d7)](getActiveFeatureId);if(!_0x511f5d)throw new Error(_0x1c4f27['laUlr']);const _0x5029e1=await getFeature(_0x511f5d),{items:_0x4104a8}=await getActionItems(_0x511f5d);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x5029e1['name']+'\x20('+_0x5029e1['id']+')\x0a');if(_0x1c4f27['IHxcL'](_0x4104a8[_0x1a8f74(0x1ad)],0x0)){console['log']('No\x20scenarios\x20found.');return;}for(let _0x1c4ec6=0x0;_0x1c4f27['AqezQ'](_0x1c4ec6,_0x4104a8[_0x1a8f74(0x1ad)]);_0x1c4ec6++){const _0x278730=_0x4104a8[_0x1c4ec6],_0x2b2f3c=_0x278730[_0x1a8f74(0x14b)]>0x1?_0x1a8f74(0x1c6)+_0x278730['version']+')':'',_0x476482=await _0x1c4f27['CDGCt'](getItemFeedback,_0x511f5d,_0x278730['id']);if(_0x476482['unaddressedComments'][_0x1a8f74(0x1ad)]>0x0){console[_0x1a8f74(0x1a0)]('Scenario\x20'+(_0x1c4ec6+0x1)+':\x20\x22'+_0x278730[_0x1a8f74(0x11f)]+'\x22'+_0x2b2f3c+_0x1a8f74(0x1e6)+_0x476482['unaddressedComments']['length']+'\x20unaddressed\x20comment(s)');for(const _0x5609af of _0x476482[_0x1a8f74(0x1e7)]){const _0x389ef7=new Date(_0x5609af['createdAt'])['toLocaleDateString'](_0x1c4f27[_0x1a8f74(0x1cd)],{'month':_0x1c4f27[_0x1a8f74(0x1d3)],'day':'numeric'}),_0x1260de=_0x5609af['authorName']||_0x5609af['authorEmail']||_0x1c4f27[_0x1a8f74(0x1d8)];console['log']('\x20\x20💬\x20'+_0x1260de+'\x20('+_0x389ef7+_0x1a8f74(0x1d9)+_0x5609af[_0x1a8f74(0x1dd)]+'\x22');if(_0x5609af[_0x1a8f74(0x1d6)]){const _0x4e30c0=await _0x1c4f27[_0x1a8f74(0x175)](downloadFeedbackImage,_0x5609af[_0x1a8f74(0x1d6)],_0x5609af['id']);_0x4e30c0&&console['log'](_0x1a8f74(0x1ae)+_0x4e30c0);}if(_0x5609af[_0x1a8f74(0x177)]){const _0x54083c=_0x5609af[_0x1a8f74(0x177)][_0x1a8f74(0x123)]['split']('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x1c4f27['hlOVZ'],_0x2b8616=_0x5609af['domRef']['textContent']?'\x20\x22'+_0x5609af['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x1a8f74(0x1a0)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x54083c+'>'+_0x2b8616),console[_0x1a8f74(0x1a0)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x5609af[_0x1a8f74(0x177)][_0x1a8f74(0x123)]);}else{if(_0x5609af['spatial']){const _0x4f58eb=_0x5609af['spatial']['coordinates'];_0x5609af[_0x1a8f74(0x14a)][_0x1a8f74(0x13f)]==='point'&&_0x1c4f27[_0x1a8f74(0x18e)](_0x4f58eb['length'],0x2)?console['log'](_0x1a8f74(0x15d)+_0x4f58eb[0x0]['toFixed'](0x2)+',\x20'+_0x4f58eb[0x1]['toFixed'](0x2)+')'):console['log'](_0x1a8f74(0x160)+_0x5609af[_0x1a8f74(0x14a)][_0x1a8f74(0x13f)]+'\x20at\x20['+_0x4f58eb[_0x1a8f74(0x1cf)](_0x46124b=>_0x46124b[_0x1a8f74(0x17b)](0x2))['join'](',\x20')+']');}}}if(_0x476482[_0x1a8f74(0x112)]){console[_0x1a8f74(0x1a0)](_0x1a8f74(0x178));for(const _0x32968b of _0x476482[_0x1a8f74(0x112)]['split']('\x0a')){console[_0x1a8f74(0x1a0)]('\x20\x20\x20\x20'+_0x32968b);}}}else console['log']('Scenario\x20'+_0x1c4f27[_0x1a8f74(0x189)](_0x1c4ec6,0x1)+_0x1a8f74(0x159)+_0x278730[_0x1a8f74(0x11f)]+'\x22'+_0x2b2f3c+_0x1a8f74(0x162)),console[_0x1a8f74(0x1a0)](_0x1a8f74(0x148));console['log']('');}}function _0xca9d(_0x2f96fe,_0x586ec3){_0x2f96fe=_0x2f96fe-0x10f;const _0x226a47=_0x226a();let _0xca9d26=_0x226a47[_0x2f96fe];return _0xca9d26;}export async function featureDelete(_0x22f3ac){const _0x3a7492=_0x442b66,_0xdae340={'upWCn':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','MwfvE':function(_0x4a53b1,_0x3a9319){return _0x4a53b1(_0x3a9319);},'SMlzU':function(_0x336697,_0x126bb5){return _0x336697+_0x126bb5;}},_0x2e4b14=_0x22f3ac||await getActiveFeatureId();if(!_0x2e4b14)throw new Error(_0xdae340['upWCn']);const _0x43d7d7=await getFeature(_0x2e4b14);await _0xdae340['MwfvE'](softDeleteFeature,_0x2e4b14),console[_0x3a7492(0x1a0)](_0x3a7492(0x19a)+_0x43d7d7[_0x3a7492(0x1d0)]+'\x20('+_0x2e4b14+')'),console[_0x3a7492(0x1a0)](_0xdae340['SMlzU'](_0x3a7492(0x1c9),_0x2e4b14));}export async function featureRestore(_0x2b86b7){const _0x3e8618=_0x442b66,_0x55f5f7={'PtOou':function(_0x190de7,_0x12a5ec){return _0x190de7(_0x12a5ec);}};await _0x55f5f7['PtOou'](restoreFeature,_0x2b86b7);const _0x5666a7=await getFeature(_0x2b86b7);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x5666a7['name']+'\x20('+_0x2b86b7+')'),displayFeature(_0x5666a7,_0x5666a7[_0x3e8618(0x131)]);}
1
+ const _0x5bfdbb=_0x3f3d;(function(_0x4d96f4,_0x165044){const _0x3557ec=_0x3f3d,_0x4d9c1b=_0x4d96f4();while(!![]){try{const _0x43402d=-parseInt(_0x3557ec(0x298))/0x1+-parseInt(_0x3557ec(0x23a))/0x2+-parseInt(_0x3557ec(0x1ee))/0x3+parseInt(_0x3557ec(0x28e))/0x4*(parseInt(_0x3557ec(0x2ac))/0x5)+parseInt(_0x3557ec(0x27f))/0x6*(parseInt(_0x3557ec(0x24b))/0x7)+-parseInt(_0x3557ec(0x215))/0x8+-parseInt(_0x3557ec(0x20d))/0x9*(-parseInt(_0x3557ec(0x26f))/0xa);if(_0x43402d===_0x165044)break;else _0x4d9c1b['push'](_0x4d9c1b['shift']());}catch(_0x53336d){_0x4d9c1b['push'](_0x4d9c1b['shift']());}}}(_0x2968,0xa7e78));import{readFile,writeFile,mkdir}from'fs/promises';function _0x2968(){const _0x4ce036=['XbwyG','\x20\x20\x20\x20\x20\x20Incomplete:\x20','currentBranch','items','CLAUDE_SESSION_ID','\x20\x20\x20\x20','gitRepoUrl','sxmVt','type','VLQHK','24980AVjvTS','gKqDW','log','rckxv','Not\x20in\x20a\x20git\x20repository.','location','VrEnI','/artifacts/','limit','RHjnX','stdin','.md','rAlGt','gitBranch','ZcobQ','phkyv','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x0a✅\x20Restored\x20feature\x20review:\x20','stepName','canonicalFlow','feedback-images','iteration','\x0a📋\x20Feedback\x20for:\x20','blockedReason','createdAt','SgegZ','kIIby','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','VGmmE','dashboardUrl','replace','235155OpkJwn','git\x20remote\x20get-url\x20origin','kCjRW','\x20>\x20','join','YNoZq','jOCmE','\x20\x20\x20Description:\x20','scenarios','LQnQP','content','\x20\x20\x20Progress:\x20','.png','isInteger','agentResponse','jGeSp','Screenshot\x20','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x1b[1m','yzjrk','after','sLjnl','SLYGv','active-feature.txt','utf-8','\x20\x20\x20ID:\x20','comment_','VBvLP','push','Unknown','assetType','81QGoYhk','lTJsR','teIbH','filter','textContent','github.com/','kbfCk','verified','10580016HytciK','approved','tjUhE','description','storage','wybZb','stdout','canceledReason','aigiX','wIOFW','xtQHB','name','wJcbR','JYDWb','completed','\x20—\x20','any','\x20/\x20','KhOsb','BFYJk','jixjB','notes','incomplete','\x0a✅\x20Feature\x20review\x20created:\x20','assets','verification_in_progress','ready','verifiedItems','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','...','ywXmW','DrzDE','ViMcM','UESZu','lGUSp','acJkO','status','2390444rGCUJQ','\x20(v','XYyul','HqPCk','\x0aGenerating\x20report...','zfoyR','authorName','gJAhd','closed','\x20\x20\x20\x20\x20Progress:\x20','submittedAt','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','totalCount','write','PaMIA','trimEnd','checklistItems','5678666yMnvvM','incompleteReason','HVdek','Scenario\x20','xMmOm','toLocaleString','error','coordinates','qvwme','latestReview','\x20blocked','\x20scenario(s).','1|5|3|0|2|4','screenshotUrls','nmeXd','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','rEdgH','spatial','sjwaX','currentSessionId','UTrli','fbYzu','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','excludeScenarios','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','dbPnH','\x20Session\x20','completedAt','\x20in\x20progress','unaddressedComments','version','env','toLocaleDateString','stats','HprmN','\x20--current-branch','2701310rxjFkP','sessionId','browserSessionId','pipe','GFetF','\x0a\x20\x20\x20Scenarios:','trim','domRef','toFixed','output','\x1b[0m','isTTY','pop','exit','map','length','6laVgIK','No\x20scenarios\x20found.','\x20\x20\x20Branch:\x20','\x20\x20💬\x20','qIbmd','in_progress','\x20--limit\x20','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','bBwbX','Step\x20','selector','scenario','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','blocked','148jnQHWt','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','ETmkB','\x0a✅\x20Session\x20','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x20\x20\x20▶️\x20Started\x20session\x20','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','omzQZ','xlNWy','143424vXuLyk','\x20\x20\x20\x20\x20ID:\x20','warn','find','ppVik','arrayBuffer','from','terminalReason',':\x20\x22','YtsGb'];_0x2968=function(){return _0x4ce036;};return _0x2968();}import{join}from'path';import{existsSync}from'fs';function _0x3f3d(_0x323135,_0x2f7057){_0x323135=_0x323135-0x1ee;const _0x29689b=_0x2968();let _0x3f3d53=_0x29689b[_0x323135];return _0x3f3d53;}import{execSync}from'child_process';import _0xda342 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=_0x5bfdbb(0x205),bold=_0x51638e=>_0x5bfdbb(0x200)+_0x51638e+_0x5bfdbb(0x279);function getGitRepoUrl(){const _0x157ce4=_0x5bfdbb,_0x14f95d={'jOCmE':function(_0x158c4a,_0x2190d0,_0x12e781){return _0x158c4a(_0x2190d0,_0x12e781);},'KhOsb':_0x157ce4(0x1ef),'hxEhm':'utf-8','LQnQP':_0x157ce4(0x212)};try{const _0x5025b5=_0x14f95d[_0x157ce4(0x1f4)](execSync,_0x14f95d[_0x157ce4(0x227)],{'encoding':_0x14f95d['hxEhm'],'stdio':['pipe',_0x157ce4(0x272),'pipe']})[_0x157ce4(0x275)]();return _0x5025b5[_0x157ce4(0x2cb)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x14f95d[_0x157ce4(0x1f7)])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x455fb2=_0x5bfdbb,_0x37bd74={'yzjrk':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','JgRTy':_0x455fb2(0x206),'rAlGt':_0x455fb2(0x272)};try{return execSync(_0x37bd74[_0x455fb2(0x201)],{'encoding':_0x37bd74['JgRTy'],'stdio':[_0x37bd74['rAlGt'],_0x455fb2(0x272),_0x37bd74[_0x455fb2(0x2b8)]]})[_0x455fb2(0x275)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0xfc0dbb=_0x5bfdbb,_0x541bdc={'lTJsR':function(_0x570046,_0x3742eb,_0x32023f){return _0x570046(_0x3742eb,_0x32023f);},'XYyul':function(_0x16f863,_0x18a361){return _0x16f863(_0x18a361);},'aigiX':function(_0x48f7dd,_0x1f0b75,_0x4c1077){return _0x48f7dd(_0x1f0b75,_0x4c1077);}},_0x674030=_0x541bdc[_0xfc0dbb(0x20e)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x541bdc[_0xfc0dbb(0x23c)](existsSync,_0x674030))return null;try{const _0x165e6d=await _0x541bdc[_0xfc0dbb(0x21d)](readFile,_0x674030,_0xfc0dbb(0x206));return _0x165e6d[_0xfc0dbb(0x275)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x326c17){const _0x5568e1={'BpGkF':function(_0x320e6e,_0x1d3b40){return _0x320e6e(_0x1d3b40);}},_0x5c19bf=getRangerDir(),_0x1a1b50=join(_0x5c19bf,ACTIVE_FEATURE_FILE);!_0x5568e1['BpGkF'](existsSync,_0x5c19bf)&&await mkdir(_0x5c19bf,{'recursive':!![]}),await writeFile(_0x1a1b50,_0x326c17,'utf-8');}function getProgressDisplay(_0x366816){const _0xa4999d=_0x5bfdbb,_0x89deeb={'ywXmW':function(_0xb1c301,_0x23fbca){return _0xb1c301+_0x23fbca;},'DrzDE':function(_0x3fcc42,_0x14e535){return _0x3fcc42+_0x14e535;},'VBvLP':function(_0x2cdca5,_0x8888b){return _0x2cdca5+_0x8888b;},'HFpwQ':function(_0x24e8a8,_0x53b430){return _0x24e8a8*_0x53b430;},'hlxAI':function(_0xface3d,_0x29b035){return _0xface3d+_0x29b035;},'BFYJk':function(_0x2cf16b,_0x5a5694){return _0x2cf16b>_0x5a5694;}},_0x3e9c6=_0x366816[_0xa4999d(0x230)]||0x0,_0x4625df=_0x366816['verificationInProgressItems']||0x0,_0x41cd45=_0x366816['blockedItems']||0x0,_0x772387=_0x366816['incompleteItems']||0x0,_0x38707d=_0x366816['pendingItems']||0x0,_0x1154fc=_0x89deeb[_0xa4999d(0x233)](_0x89deeb[_0xa4999d(0x234)](_0x89deeb[_0xa4999d(0x209)](_0x3e9c6,_0x4625df),_0x41cd45)+_0x772387,_0x38707d);if(_0x1154fc===0x0)return'-';const _0xafb1d3=0xa,_0xe67c01=Math['round'](_0x89deeb['HFpwQ'](_0x3e9c6/_0x1154fc,_0xafb1d3)),_0x154b00=_0x89deeb['hlxAI']('█'['repeat'](_0xe67c01),'░'['repeat'](_0xafb1d3-_0xe67c01)),_0x245798=[];if(_0x41cd45>0x0)_0x245798['push'](_0x41cd45+_0xa4999d(0x255));if(_0x89deeb[_0xa4999d(0x228)](_0x772387,0x0))_0x245798['push'](_0x772387+'\x20incomplete');if(_0x4625df>0x0)_0x245798[_0xa4999d(0x20a)](_0x4625df+_0xa4999d(0x267));const _0x2c958d=_0x245798[_0xa4999d(0x27e)]>0x0?'\x20('+_0x245798[_0xa4999d(0x1f2)](',\x20')+')':'';return _0x154b00+'\x20'+_0x3e9c6+'/'+_0x1154fc+'\x20verified'+_0x2c958d;}function getCurrentSessionItems(_0x33b9e9,_0x40f614){const _0x214e63=_0x5bfdbb;if(!_0x33b9e9[_0x214e63(0x25e)])return _0x40f614[_0x214e63(0x210)](_0x470381=>!_0x470381[_0x214e63(0x270)]);return _0x40f614[_0x214e63(0x210)](_0x29c3f8=>_0x29c3f8[_0x214e63(0x270)]===_0x33b9e9['currentSessionId']||!_0x29c3f8['sessionId']);}function displayFeature(_0x1e437c,_0x29398c){const _0x49e2b2=_0x5bfdbb,_0x19ed8d={'iYook':function(_0x217b1f,_0x4833c4){return _0x217b1f(_0x4833c4);},'acJkO':function(_0x8c819f,_0x191add){return _0x8c819f>_0x191add;},'bhqWh':_0x49e2b2(0x274),'SLYGv':function(_0x24b32f,_0x38e559){return _0x24b32f===_0x38e559;},'lGUSp':function(_0x1425c0,_0x4c6977){return _0x1425c0===_0x4c6977;},'HDssB':_0x49e2b2(0x242),'rckxv':function(_0x573ca7,_0x59cdef){return _0x573ca7===_0x59cdef;},'hrKxV':_0x49e2b2(0x22e),'jGeSp':function(_0x3e23dd,_0x44650a){return _0x3e23dd!==_0x44650a;},'GFetF':_0x49e2b2(0x216)};console['log']('\x0a'+_0x1e437c['name']+'\x20('+_0x1e437c[_0x49e2b2(0x2ca)]+')');_0x1e437c['stats']&&console['log'](_0x49e2b2(0x1f9)+_0x19ed8d['iYook'](getProgressDisplay,_0x1e437c['stats']));_0x1e437c['description']&&console[_0x49e2b2(0x2ae)](_0x49e2b2(0x1f5)+_0x1e437c[_0x49e2b2(0x218)]);_0x1e437c['gitRepoUrl']&&console[_0x49e2b2(0x2ae)]('\x20\x20\x20Repository:\x20'+_0x1e437c['gitRepoUrl']);_0x1e437c['gitBranch']&&console[_0x49e2b2(0x2ae)](_0x49e2b2(0x281)+_0x1e437c['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x1e437c['createdAt'])['toLocaleString']());_0x1e437c[_0x49e2b2(0x266)]&&console[_0x49e2b2(0x2ae)]('\x20\x20\x20Completed:\x20'+new Date(_0x1e437c[_0x49e2b2(0x266)])['toLocaleString']());if(_0x29398c&&_0x19ed8d[_0x49e2b2(0x238)](_0x29398c[_0x49e2b2(0x27e)],0x0)){console['log'](_0x19ed8d['bhqWh']);for(let _0x5183dc=0x0;_0x5183dc<_0x29398c['length'];_0x5183dc++){const _0x32ed8d=_0x29398c[_0x5183dc];let _0x2ac18b;if(_0x19ed8d['SLYGv'](_0x32ed8d['status'],'closed')&&_0x32ed8d[_0x49e2b2(0x29f)]===_0x49e2b2(0x216))_0x2ac18b='✅';else{if(_0x32ed8d[_0x49e2b2(0x239)]==='verified')_0x2ac18b='🟢';else{if(_0x19ed8d[_0x49e2b2(0x237)](_0x32ed8d['status'],'incomplete'))_0x2ac18b='🟠';else{if(_0x32ed8d[_0x49e2b2(0x239)]===_0x49e2b2(0x28d))_0x2ac18b='🛑';else{if(_0x32ed8d['status']===_0x19ed8d['HDssB'])_0x2ac18b='⛔';else _0x19ed8d['rckxv'](_0x32ed8d['status'],_0x19ed8d['hrKxV'])?_0x2ac18b='⏳':_0x2ac18b='⬜';}}}}const _0xf160d9=_0x32ed8d[_0x49e2b2(0x269)]>0x1?_0x49e2b2(0x23b)+_0x32ed8d['version']+')':'',_0x1001f8=_0x32ed8d['version']>0x1&&_0x32ed8d['parentItemId']&&_0x19ed8d[_0x49e2b2(0x1fd)](_0x32ed8d[_0x49e2b2(0x239)],_0x49e2b2(0x242))&&_0x19ed8d[_0x49e2b2(0x1fd)](_0x32ed8d['status'],_0x49e2b2(0x214))?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+(_0x5183dc+0x1)+'.\x20'+_0x2ac18b+'\x20'+_0x32ed8d['description']+_0xf160d9+_0x1001f8);_0x19ed8d[_0x49e2b2(0x204)](_0x32ed8d[_0x49e2b2(0x239)],'blocked')&&_0x32ed8d[_0x49e2b2(0x2c3)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x32ed8d['blockedReason']);_0x19ed8d['lGUSp'](_0x32ed8d['status'],_0x49e2b2(0x22b))&&_0x32ed8d['incompleteReason']&&console[_0x49e2b2(0x2ae)](_0x49e2b2(0x2a3)+_0x32ed8d[_0x49e2b2(0x24c)]);if(_0x32ed8d[_0x49e2b2(0x239)]===_0x49e2b2(0x242)&&_0x19ed8d[_0x49e2b2(0x2af)](_0x32ed8d[_0x49e2b2(0x29f)],_0x19ed8d[_0x49e2b2(0x273)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x32ed8d[_0x49e2b2(0x239)]===_0x49e2b2(0x242)&&_0x32ed8d[_0x49e2b2(0x21c)]&&console['log'](_0x49e2b2(0x2bc)+_0x32ed8d[_0x49e2b2(0x21c)]);}}}export async function featureCreate(_0x34212a,_0x30f851){const _0x19db35=_0x5bfdbb,_0x106707={'cMQwB':function(_0x4838b0,_0x5760f3){return _0x4838b0===_0x5760f3;},'kbfCk':function(_0x51d757,_0x361cde){return _0x51d757(_0x361cde);},'TLgxh':function(_0x54e13f){return _0x54e13f();},'ZcobQ':'\x0aCreating\x20feature\x20review...','xlNWy':function(_0xafaa,_0x49efad){return _0xafaa(_0x49efad);},'tjUhE':function(_0x391246,_0x201b59,_0x273b65){return _0x391246(_0x201b59,_0x273b65);}},{envNames:_0x8d13f3}=await getEnvNames();_0x106707['cMQwB'](_0x8d13f3['length'],0x0)&&console[_0x19db35(0x29a)]('\x0a'+_0x106707[_0x19db35(0x213)](formatProfileRequiredMessage,_0x5a935f=>bold(_0x5a935f)));const _0x3c9da0=_0x30f851['scenarios']?_0x30f851[_0x19db35(0x1f6)][_0x19db35(0x27d)](_0x4eedd7=>_0x4eedd7[_0x19db35(0x275)]()):[],_0xdcb1e8=_0x106707['TLgxh'](getGitRepoUrl),_0x5331ea=_0x106707['TLgxh'](getGitBranch);console['log'](_0x106707[_0x19db35(0x2ba)]);const _0x5ba2af=await createFeature({'name':_0x34212a,'description':_0x30f851['description'],'checklist':_0x3c9da0,'gitRepoUrl':_0xdcb1e8,'gitBranch':_0x5331ea});await _0x106707[_0x19db35(0x297)](setActiveFeatureId,_0x5ba2af['id']),await tryStartCurrentSession(_0x5ba2af['id']);const _0x245cfe=process['env'][_0x19db35(0x2a6)];_0x245cfe&&_0x106707[_0x19db35(0x217)](registerSession,_0x245cfe,_0x5ba2af['id']),console[_0x19db35(0x2ae)](_0x19db35(0x22c)+_0x5ba2af['id']),displayFeature(_0x5ba2af,_0x5ba2af['checklistItems']),console[_0x19db35(0x2ae)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0xb85c8a){const _0x20f13d=_0x5bfdbb,_0xa62b13={'RHjnX':function(_0x155b8f){return _0x155b8f();},'sjwaX':function(_0xbba96e,_0x1478a3){return _0xbba96e===_0x1478a3;},'PaMIA':'\x0aNo\x20feature\x20reviews\x20found.','VKxdA':function(_0x1c28ff,_0x316596){return _0x1c28ff>_0x316596;},'cdsCr':function(_0x4b6fa6,_0x494919){return _0x4b6fa6(_0x494919);},'DTCsF':function(_0x2292b9,_0x3ee4d2){return _0x2292b9+_0x3ee4d2;},'Ddcqh':_0x20f13d(0x26e),'bPlWL':'\x20--include-deleted'},_0x6612ae={'limit':_0xb85c8a[_0x20f13d(0x2b4)]??0xa,'offset':_0xb85c8a['offset']??0x0,'includeDeleted':_0xb85c8a['includeDeleted']};_0xb85c8a[_0x20f13d(0x2a4)]&&(_0x6612ae[_0x20f13d(0x2a8)]=getGitRepoUrl(),_0x6612ae[_0x20f13d(0x2b9)]=_0xa62b13[_0x20f13d(0x2b5)](getGitBranch));const _0x4e83c8=await listFeatures(_0x6612ae);if(_0xa62b13[_0x20f13d(0x25d)](_0x4e83c8['items']['length'],0x0)){console[_0x20f13d(0x2ae)](_0xa62b13[_0x20f13d(0x248)]);return;}const _0x1489f2=_0xa62b13['VKxdA'](_0x4e83c8[_0x20f13d(0x246)],_0x4e83c8['items']['length'])?'Showing\x20'+_0x4e83c8['items']['length']+'\x20of\x20'+_0x4e83c8['totalCount']:_0x4e83c8['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x1489f2+':\x0a');for(const _0x5e1543 of _0x4e83c8['items']){const _0x54043c='5|2|1|4|0|3'['split']('|');let _0x1d1dd7=0x0;while(!![]){switch(_0x54043c[_0x1d1dd7++]){case'0':console['log']('\x20\x20\x20Created:\x20'+new Date(_0x5e1543['createdAt'])['toLocaleDateString']());continue;case'1':_0x5e1543[_0x20f13d(0x26c)]&&console['log'](_0x20f13d(0x1f9)+_0xa62b13['cdsCr'](getProgressDisplay,_0x5e1543['stats']));continue;case'2':console['log'](_0x20f13d(0x207)+_0x5e1543['id']);continue;case'3':console['log']('');continue;case'4':_0x5e1543['gitBranch']&&console[_0x20f13d(0x2ae)](_0x20f13d(0x281)+_0x5e1543[_0x20f13d(0x2b9)]);continue;case'5':console['log'](''+_0x5e1543[_0x20f13d(0x220)]);continue;}break;}}const _0x5e8338=_0x6612ae[_0x20f13d(0x2b4)]??0xa,_0xd64b4c=_0xa62b13['DTCsF'](_0x6612ae['offset']??0x0,_0x4e83c8[_0x20f13d(0x2a5)][_0x20f13d(0x27e)]);if(_0xd64b4c<_0x4e83c8['totalCount']){const _0x4f0a1e=_0x5e8338!==0xa?_0x20f13d(0x285)+_0x5e8338:'',_0xdb17de=_0xb85c8a['currentBranch']?_0xa62b13['Ddcqh']:'',_0x1cae55=_0xb85c8a['includeDeleted']?_0xa62b13['bPlWL']:'';console[_0x20f13d(0x2ae)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xd64b4c+_0x4f0a1e+_0xdb17de+_0x1cae55);}}export async function featureShow(_0x249973){const _0x430a93=_0x5bfdbb,_0x591dbf={'TvIjG':_0x430a93(0x261),'wIOFW':function(_0x425b40,_0x34137d,_0x556dce){return _0x425b40(_0x34137d,_0x556dce);}},_0x1a6008=_0x249973||await getActiveFeatureId();if(!_0x1a6008)throw new Error(_0x591dbf['TvIjG']);const _0x5e7703=await getFeature(_0x1a6008);_0x591dbf[_0x430a93(0x21e)](displayFeature,_0x5e7703,_0x5e7703['checklistItems']);}export async function featureResume(_0x303485){const _0x121ae2=_0x5bfdbb,_0x2da828={'XbwyG':function(_0x4d51b6,_0x530270){return _0x4d51b6(_0x530270);},'ViMcM':function(_0xd540dd){return _0xd540dd();},'AlvHM':function(_0x569b94,_0x3c48a3){return _0x569b94!==_0x3c48a3;},'xtQHB':function(_0x58e059,_0x163c13,_0x374db8){return _0x58e059(_0x163c13,_0x374db8);},'QnfmN':function(_0x4a0838,_0x26c5a2,_0x29eaba){return _0x4a0838(_0x26c5a2,_0x29eaba);},'qvwme':function(_0x11968b,_0xfc223){return _0x11968b&&_0xfc223;},'mtJuM':_0x121ae2(0x2b0),'gKqDW':function(_0x5e2cb7,_0x4f6d6e){return _0x5e2cb7||_0x4f6d6e;},'SaZUt':function(_0x2bdd1c,_0x1af925){return _0x2bdd1c(_0x1af925);},'wJcbR':_0x121ae2(0x28c),'XJnHb':function(_0x1a75ad,_0x2db4a9){return _0x1a75ad===_0x2db4a9;},'SgegZ':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','kCjRW':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','wXRJk':'list','omzQZ':'selected','kIIby':function(_0x182b8f,_0xa751ce,_0x89d66b){return _0x182b8f(_0xa751ce,_0x89d66b);},'ppVik':function(_0x189be0,_0xafaef1){return _0x189be0(_0xafaef1);}};if(_0x303485){const _0x153c0b=await _0x2da828[_0x121ae2(0x2a2)](getFeature,_0x303485);await _0x2da828[_0x121ae2(0x2a2)](setActiveFeatureId,_0x153c0b['id']);const _0x33a654=_0x2da828['ViMcM'](getGitBranch);_0x33a654&&_0x2da828['AlvHM'](_0x33a654,_0x153c0b['gitBranch'])&&(await updateFeature(_0x153c0b['id'],{'gitBranch':_0x33a654}),console[_0x121ae2(0x2ae)](_0x121ae2(0x2c8)+_0x33a654));console[_0x121ae2(0x2ae)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x153c0b[_0x121ae2(0x220)]+'\x20('+_0x153c0b['id']+')'),await tryStartCurrentSession(_0x153c0b['id']);const _0x16dbcb=process[_0x121ae2(0x26a)]['CLAUDE_SESSION_ID'];_0x16dbcb&&_0x2da828[_0x121ae2(0x21f)](registerSession,_0x16dbcb,_0x153c0b['id']);_0x2da828['QnfmN'](displayFeature,_0x153c0b,_0x153c0b['checklistItems']),await _0x2da828[_0x121ae2(0x2a2)](printFeedbackNudge,_0x153c0b['id']);return;}const _0x18c4b9=_0x2da828[_0x121ae2(0x235)](getGitRepoUrl),_0x5625ff=_0x2da828[_0x121ae2(0x235)](getGitBranch);if(_0x2da828[_0x121ae2(0x253)](!_0x18c4b9,!_0x5625ff))throw new Error(_0x2da828['mtJuM']);console[_0x121ae2(0x2ae)](_0x121ae2(0x28f)+_0x2da828[_0x121ae2(0x2ad)](_0x18c4b9,'any')+_0x121ae2(0x226)+_0x2da828['gKqDW'](_0x5625ff,_0x121ae2(0x225))+_0x121ae2(0x232));const _0x44bedd=await _0x2da828['SaZUt'](listFeatures,{'gitRepoUrl':_0x18c4b9,'gitBranch':_0x5625ff}),_0x3973af=_0x44bedd['items'][_0x121ae2(0x210)](_0x3109ea=>!_0x3109ea['completedAt']);if(_0x3973af['length']===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x2da828[_0x121ae2(0x221)]);return;}let _0x18576f;if(_0x2da828['XJnHb'](_0x3973af['length'],0x1))_0x18576f=_0x3973af[0x0];else{const _0x49eefa=process[_0x121ae2(0x2b6)][_0x121ae2(0x27a)]&&process[_0x121ae2(0x21b)][_0x121ae2(0x27a)];if(!_0x49eefa){console['log'](_0x2da828[_0x121ae2(0x2c5)]);for(const _0x322712 of _0x3973af){console['log']('\x20\x20'+_0x322712['name']),console[_0x121ae2(0x2ae)](_0x121ae2(0x299)+_0x322712['id']),_0x322712['stats']&&console['log'](_0x121ae2(0x243)+getProgressDisplay(_0x322712['stats'])),_0x322712[_0x121ae2(0x2b9)]&&console[_0x121ae2(0x2ae)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x322712[_0x121ae2(0x2b9)]);}throw new Error(_0x2da828[_0x121ae2(0x1f0)]);}const {selected:_0xd4bbf8}=await _0xda342['prompt']([{'type':_0x2da828['wXRJk'],'name':_0x2da828[_0x121ae2(0x296)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x3973af[_0x121ae2(0x27d)](_0x4b3260=>({'name':_0x4b3260[_0x121ae2(0x220)]+'\x20('+_0x4b3260['id']+')','value':_0x4b3260['id']}))}]);_0x18576f=_0x3973af[_0x121ae2(0x29b)](_0x5e0fbc=>_0x5e0fbc['id']===_0xd4bbf8);}await setActiveFeatureId(_0x18576f['id']);_0x5625ff&&_0x5625ff!==_0x18576f['gitBranch']&&(await updateFeature(_0x18576f['id'],{'gitBranch':_0x5625ff}),console['log'](_0x121ae2(0x2c8)+_0x5625ff));console[_0x121ae2(0x2ae)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x18576f[_0x121ae2(0x220)]+'\x20('+_0x18576f['id']+')'),await tryStartCurrentSession(_0x18576f['id']);const _0xecbced=await getFeature(_0x18576f['id']),_0x26fca8=process[_0x121ae2(0x26a)]['CLAUDE_SESSION_ID'];_0x26fca8&&registerSession(_0x26fca8,_0xecbced['id']),_0x2da828[_0x121ae2(0x2c6)](displayFeature,_0xecbced,_0xecbced[_0x121ae2(0x24a)]),await _0x2da828[_0x121ae2(0x29c)](printFeedbackNudge,_0xecbced['id']);}async function printFeedbackNudge(_0x56850a){const _0x302d98=_0x5bfdbb,_0x228c44={'ZHhFn':function(_0x94938e,_0x2a0d88){return _0x94938e>_0x2a0d88;},'HqPCk':_0x302d98(0x286)};try{const {items:_0x373941}=await getActionItems(_0x56850a);let _0x1bc7fa=0x0,_0x5cdf1e=0x0;for(const _0x4436e1 of _0x373941){const _0x33031d=await getItemFeedback(_0x56850a,_0x4436e1['id']);_0x228c44['ZHhFn'](_0x33031d['unaddressedComments']['length'],0x0)&&(_0x1bc7fa+=_0x33031d['unaddressedComments']['length'],_0x5cdf1e++);}_0x1bc7fa>0x0&&(console[_0x302d98(0x2ae)]('\x0a⚠️\x20\x20'+_0x1bc7fa+_0x302d98(0x2c7)+_0x5cdf1e+_0x302d98(0x256)),console['log'](_0x228c44[_0x302d98(0x23d)]));}catch{}}async function tryStartCurrentSession(_0xde36b8){const _0xd8bc2=_0x5bfdbb,_0x30b8c7={'xeeRx':function(_0x37c1c6,_0x577b96){return _0x37c1c6(_0x577b96);}};try{const {sessions:_0xb09315}=await _0x30b8c7['xeeRx'](listFeatureSessions,_0xde36b8),_0x439793=_0xb09315['find'](_0x52795e=>_0x52795e['status']===_0xd8bc2(0x22f));_0x439793&&(await startSession(_0xde36b8,_0x439793['id']),console[_0xd8bc2(0x2ae)](_0xd8bc2(0x293)+_0x439793[_0xd8bc2(0x2c1)]));}catch{}}export async function featureReport(_0x17acab,_0x51783e){const _0x1c794a=_0x5bfdbb,_0x596b53={'adHrk':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','rXfqj':'reports','YHuib':function(_0x538bb3,_0x2823eb,_0xd2b604){return _0x538bb3(_0x2823eb,_0xd2b604);},'phkyv':function(_0x48a9bf,_0x5ab0c9,_0x358286,_0x3e6760){return _0x48a9bf(_0x5ab0c9,_0x358286,_0x3e6760);},'sxmVt':_0x1c794a(0x206)},_0x357b4f=_0x17acab||await getActiveFeatureId();if(!_0x357b4f)throw new Error(_0x596b53['adHrk']);console['log'](_0x1c794a(0x23e));const _0x12b1a9=await getFeatureReportMarkdown(_0x357b4f,{'style':_0x51783e['style']}),_0x41f597=_0x51783e[_0x1c794a(0x278)]||join(getRangerDir(),_0x596b53['rXfqj'],_0x357b4f+_0x1c794a(0x2b7)),_0x5377e2=_0x596b53['YHuib'](join,_0x41f597,'..');!existsSync(_0x5377e2)&&await _0x596b53['YHuib'](mkdir,_0x5377e2,{'recursive':!![]}),await _0x596b53[_0x1c794a(0x2bb)](writeFile,_0x41f597,_0x12b1a9,_0x596b53[_0x1c794a(0x2a9)]),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x41f597);}function getScenarioResult(_0x1e4d17){const _0x28c5b5=_0x5bfdbb,_0x10fbbb={'HprmN':function(_0x3e1b69,_0x12af8e){return _0x3e1b69===_0x12af8e;},'IwUxb':_0x28c5b5(0x242),'gJAhd':_0x28c5b5(0x22e),'nmeXd':_0x28c5b5(0x284)};if(_0x10fbbb['HprmN'](_0x1e4d17[_0x28c5b5(0x239)],_0x10fbbb['IwUxb']))return _0x1e4d17[_0x28c5b5(0x29f)]??'closed';if(_0x10fbbb[_0x28c5b5(0x26d)](_0x1e4d17[_0x28c5b5(0x239)],_0x10fbbb[_0x28c5b5(0x241)]))return _0x10fbbb[_0x28c5b5(0x259)];return _0x1e4d17[_0x28c5b5(0x239)];}function getScenarioRationale(_0x29b654,_0x4cb47a){const _0x128e66=_0x5bfdbb,_0x188ea5={'VrEnI':_0x128e66(0x257)},_0x4b7b78=_0x188ea5[_0x128e66(0x2b2)]['split']('|');let _0x491af7=0x0;while(!![]){switch(_0x4b7b78[_0x491af7++]){case'0':if(_0x29b654['canceledReason'])return _0x29b654['canceledReason'];continue;case'1':if(_0x4cb47a)return _0x4cb47a;continue;case'2':if(_0x29b654[_0x128e66(0x22a)])return _0x29b654[_0x128e66(0x22a)];continue;case'3':if(_0x29b654[_0x128e66(0x24c)])return _0x29b654['incompleteReason'];continue;case'4':return null;case'5':if(_0x29b654['blockedReason'])return _0x29b654['blockedReason'];continue;}break;}}export async function featureReportPrDescription(_0x2a5b31,_0x4a0a3a){const _0x52a423=_0x5bfdbb,_0x161134={'MVMXw':function(_0x4c5690){return _0x4c5690();},'XdkmS':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','CeyTJ':function(_0x15a7ca,_0x408f5f){return _0x15a7ca(_0x408f5f);},'xMmOm':function(_0x218bb9,_0x10d7af,_0x133f2f){return _0x218bb9(_0x10d7af,_0x133f2f);},'JYDWb':'\x0aAvailable\x20scenarios:','qIbmd':function(_0x1d0074,_0x5cd533){return _0x1d0074<_0x5cd533;},'hnsVk':function(_0x439a90,_0x149f3d){return _0x439a90+_0x149f3d;},'zzAXl':function(_0x3df11c,_0x36d735){return _0x3df11c===_0x36d735;}},_0x267460=_0x2a5b31||await _0x161134['MVMXw'](getActiveFeatureId);if(!_0x267460)throw new Error(_0x161134['XdkmS']);const _0x2958e4=await _0x161134['CeyTJ'](getFeature,_0x267460),_0x341b82=_0x2958e4['checklistItems']||[],_0x3b460a=_0x161134['xMmOm'](getCurrentSessionItems,_0x2958e4,_0x341b82);_0x3b460a['length']===0x0&&(console[_0x52a423(0x251)](_0x52a423(0x287)),process[_0x52a423(0x27c)](0x1));const _0x53b4f5=_0x4a0a3a[_0x52a423(0x262)]??[],_0x24a1a9=_0x53b4f5['filter'](_0x1009f4=>!Number[_0x52a423(0x1fb)](_0x1009f4)||_0x1009f4<0x1||_0x1009f4>_0x3b460a[_0x52a423(0x27e)]);if(_0x24a1a9[_0x52a423(0x27e)]>0x0){console[_0x52a423(0x251)](_0x52a423(0x263)+_0x24a1a9[_0x52a423(0x1f2)](',\x20')),console['log'](_0x161134[_0x52a423(0x222)]);for(let _0x38df1f=0x0;_0x161134[_0x52a423(0x283)](_0x38df1f,_0x3b460a[_0x52a423(0x27e)]);_0x38df1f++){console['log']('\x20\x20'+_0x161134['hnsVk'](_0x38df1f,0x1)+'.\x20'+_0x3b460a[_0x38df1f]['description']);}process['exit'](0x1);}const _0x1ede3c=new Set(_0x53b4f5[_0x52a423(0x27d)](_0x386522=>_0x386522-0x1)),_0x5a9008=_0x3b460a['filter']((_0x495e05,_0x9424d)=>!_0x1ede3c['has'](_0x9424d));_0x161134['zzAXl'](_0x5a9008[_0x52a423(0x27e)],0x0)&&(console[_0x52a423(0x251)](_0x52a423(0x231)),process[_0x52a423(0x27c)](0x1));if(_0x4a0a3a['json'])await outputJsonReport(_0x267460,_0x2958e4,_0x5a9008);else{const _0x3f8307=await _0x161134[_0x52a423(0x24f)](getFeatureReportMarkdown,_0x267460,{'itemIds':_0x5a9008[_0x52a423(0x27d)](_0x3a948a=>_0x3a948a['id'])});process[_0x52a423(0x21b)][_0x52a423(0x247)](_0x3f8307[_0x52a423(0x249)]()+'\x0a');}}async function outputJsonReport(_0xf2d6d2,_0x12b278,_0x14e082){const _0x38ae45=_0x5bfdbb,_0x391cdd={'mpMkC':function(_0x34b474,_0x12fe66){return _0x34b474(_0x12fe66);},'fbYzu':function(_0x577132){return _0x577132();}},_0x2ff59d=_0x391cdd[_0x38ae45(0x260)](getApiBaseUrl),_0x3e749c=await getFeatureReport(_0xf2d6d2),_0x37e7ec=new Map(_0x3e749c['checklistItems'][_0x38ae45(0x27d)](_0x129db1=>[_0x129db1['id'],_0x129db1])),_0x220b7a=await Promise['all'](_0x14e082['map'](async _0x3956ab=>{const _0x40236d=_0x38ae45,_0x4cebc9=_0x37e7ec['get'](_0x3956ab['id']),_0x5716f9=_0x4cebc9?.['linkedSession']??null;let _0x47c7be=[];if(_0x3956ab['browserSessionId'])try{const {steps:_0x2d96a8}=await _0x391cdd['mpMkC'](getBrowserSessionSteps,_0x3956ab[_0x40236d(0x271)]);_0x2d96a8[_0x40236d(0x27e)]>0x0&&(_0x47c7be=_0x2d96a8[_0x40236d(0x27d)](_0x309363=>{const _0x6b0a81=_0x40236d,_0x762176=_0x309363[_0x6b0a81(0x22d)][_0x6b0a81(0x29b)](_0x4578a0=>_0x4578a0[_0x6b0a81(0x20c)]==='screenshot'&&_0x4578a0['timing']===_0x6b0a81(0x202))??_0x309363['assets'][_0x6b0a81(0x29b)](_0x523ca2=>_0x523ca2['assetType']==='screenshot');let _0x3df10c=null,_0x358a48=null;if(_0x762176){const _0x1c8645=_0x762176[_0x6b0a81(0x219)][_0x6b0a81(0x2b1)]['split']('/')['pop']();_0x3df10c=_0x2ff59d+'/api/v1/mcp/browser-sessions/'+_0x3956ab[_0x6b0a81(0x271)]+_0x6b0a81(0x2b3)+_0x1c8645,_0x1c8645&&(_0x358a48=_0x1c8645[_0x6b0a81(0x2cb)](/\.\w+$/,'')[_0x6b0a81(0x2cb)](/^(key_)?\d+_/,'')[_0x6b0a81(0x2cb)](/[-_]/g,'\x20'));}return{'description':_0x358a48||_0x309363[_0x6b0a81(0x218)]||_0x309363[_0x6b0a81(0x2be)]||_0x6b0a81(0x289)+_0x309363['position'],'screenshot':_0x3df10c,'is_key_step':_0x309363['isKeyStep']};}));}catch{}return _0x47c7be[_0x40236d(0x27e)]===0x0&&_0x5716f9?.[_0x40236d(0x258)]&&(_0x47c7be=_0x5716f9[_0x40236d(0x258)][_0x40236d(0x27d)]((_0x5e46b7,_0x27dae0)=>({'description':_0x40236d(0x1fe)+(_0x27dae0+0x1),'screenshot':_0x5e46b7,'is_key_step':![]}))),{'description':_0x3956ab[_0x40236d(0x218)],'result':getScenarioResult(_0x3956ab),'rationale':getScenarioRationale(_0x3956ab,_0x5716f9?.[_0x40236d(0x1fc)]),'steps':_0x47c7be};})),_0x324c0f={'url':_0x12b278[_0x38ae45(0x2ca)],'scenarios':_0x220b7a};process['stdout'][_0x38ae45(0x247)](JSON['stringify'](_0x324c0f,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x2fbf6c){const _0x2d0b5b=_0x5bfdbb,_0x4d51ce={'VLQHK':function(_0x113155){return _0x113155();},'UESZu':_0x2d0b5b(0x261),'xmNDf':function(_0x2c4185,_0x9f596d){return _0x2c4185===_0x9f596d;},'CpANh':function(_0x43eef7,_0x1e8aca,_0x2fc30d){return _0x43eef7(_0x1e8aca,_0x2fc30d);}},_0x226777=_0x2fbf6c||await _0x4d51ce[_0x2d0b5b(0x2ab)](getActiveFeatureId);if(!_0x226777)throw new Error(_0x4d51ce[_0x2d0b5b(0x236)]);const _0x1fce4f=await getFeature(_0x226777);if(!_0x1fce4f[_0x2d0b5b(0x25e)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x17d4c7}=await listFeatureSessions(_0x226777),_0x1336ca=_0x17d4c7['find'](_0x34707e=>_0x34707e['id']===_0x1fce4f['currentSessionId']);if(!_0x1336ca)throw new Error('Current\x20session\x20not\x20found.');if(_0x4d51ce['xmNDf'](_0x1336ca[_0x2d0b5b(0x239)],'completed')){console[_0x2d0b5b(0x2ae)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x1336ca['status']!=='in_progress')throw new Error(_0x2d0b5b(0x292)+_0x1336ca[_0x2d0b5b(0x239)]);console['log']('\x0aConcluding\x20session...'),await _0x4d51ce['CpANh'](concludeSession,_0x226777,_0x1fce4f['currentSessionId']),console['log'](_0x2d0b5b(0x291)+_0x1336ca['iteration']+'\x20concluded.'),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x6c62fa){const _0x2fc074=_0x5bfdbb,_0x4f30b3={'ETmkB':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','YtsGb':function(_0x466eec,_0x13b448){return _0x466eec===_0x13b448;}},_0x4e897b=_0x6c62fa||await getActiveFeatureId();if(!_0x4e897b)throw new Error(_0x4f30b3[_0x2fc074(0x290)]);const _0x2e49f2=await getFeature(_0x4e897b);console[_0x2fc074(0x2ae)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x2e49f2['name']+'\x0a');const {sessions:_0x52315c}=await listFeatureSessions(_0x4e897b);if(_0x4f30b3[_0x2fc074(0x2a1)](_0x52315c[_0x2fc074(0x27e)],0x0)){console['log']('No\x20sessions\x20found.');return;}for(const _0x537175 of _0x52315c){const _0x460ba5=_0x537175[_0x2fc074(0x239)]===_0x2fc074(0x223)?'✅':_0x4f30b3['YtsGb'](_0x537175[_0x2fc074(0x239)],_0x2fc074(0x284))?'🔄':'▶️';console[_0x2fc074(0x2ae)](_0x460ba5+_0x2fc074(0x265)+_0x537175[_0x2fc074(0x2c1)]+'\x20('+_0x537175['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x537175[_0x2fc074(0x239)]),console[_0x2fc074(0x2ae)]('\x20\x20\x20Created:\x20'+new Date(_0x537175[_0x2fc074(0x2c4)])['toLocaleString']()),_0x537175['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x537175[_0x2fc074(0x266)])[_0x2fc074(0x250)]()),console['log']('');}}export async function featureAddScenario(_0x103b5d,_0x592ca6){const _0x3abefa=_0x5bfdbb,_0x22c6f2={'zfoyR':_0x3abefa(0x261),'gLZyK':function(_0x1f91d3,_0xd85d16,_0x467167){return _0x1f91d3(_0xd85d16,_0x467167);},'sLjnl':function(_0x2d5ffa,_0xdcd3a3){return _0x2d5ffa(_0xdcd3a3);},'AnPoO':function(_0x2525eb,_0x322cd7,_0x13c8ce){return _0x2525eb(_0x322cd7,_0x13c8ce);}},_0x507528=_0x592ca6||await getActiveFeatureId();if(!_0x507528)throw new Error(_0x22c6f2[_0x3abefa(0x23f)]);const _0x459332=await getFeature(_0x507528);if(_0x459332[_0x3abefa(0x254)]&&!_0x459332[_0x3abefa(0x254)][_0x3abefa(0x244)])throw new Error(_0x3abefa(0x245)+_0x459332['dashboardUrl']);await _0x22c6f2['gLZyK'](createChecklistItem,_0x507528,_0x103b5d);const _0x415d1c=await _0x22c6f2[_0x3abefa(0x203)](getFeature,_0x507528);console[_0x3abefa(0x2ae)]('\x0a✅\x20Scenario\x20added'),_0x22c6f2['AnPoO'](displayFeature,_0x415d1c,_0x415d1c['checklistItems']);}export async function featureEditScenario(_0x50079a,_0x19c6ab){const _0x1a8df6=_0x5bfdbb,_0x2309e5={'bBwbX':_0x1a8df6(0x294),'UTrli':_0x1a8df6(0x295),'rmpma':function(_0x4af4b4,_0x13ba52){return _0x4af4b4===_0x13ba52;},'YNoZq':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','VGmmE':'\x0aAvailable\x20scenarios:','dbPnH':function(_0x7523be,_0x39f73e){return _0x7523be<_0x39f73e;},'teIbH':function(_0xe18136,_0x3394ec){return _0xe18136-_0x3394ec;},'rEdgH':function(_0x4a2c2e,_0x23433b){return _0x4a2c2e+_0x23433b;},'jixjB':function(_0x98b943,_0x137fed,_0x58fdae){return _0x98b943(_0x137fed,_0x58fdae);}},_0x1a96b8=_0x19c6ab['id']||await getActiveFeatureId();!_0x1a96b8&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x1a8df6(0x251)](_0x2309e5[_0x1a8df6(0x288)]),process[_0x1a8df6(0x27c)](0x1));const _0x3ccd5d=await getFeature(_0x1a96b8);_0x3ccd5d[_0x1a8df6(0x254)]&&!_0x3ccd5d['latestReview'][_0x1a8df6(0x244)]&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x1a8df6(0x251)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1a8df6(0x251)]('\x20\x20'+_0x3ccd5d['dashboardUrl']),process['exit'](0x1));const _0x130c26=_0x3ccd5d[_0x1a8df6(0x24a)]||[];_0x130c26['length']===0x0&&(console['error'](_0x2309e5[_0x1a8df6(0x25f)]),process['exit'](0x1));if(_0x2309e5['rmpma'](_0x19c6ab[_0x1a8df6(0x28b)],undefined)){console['error'](_0x2309e5[_0x1a8df6(0x1f3)]),console[_0x1a8df6(0x2ae)](_0x2309e5[_0x1a8df6(0x2c9)]);for(let _0x4eb836=0x0;_0x2309e5[_0x1a8df6(0x264)](_0x4eb836,_0x130c26['length']);_0x4eb836++){console['log']('\x20\x20'+(_0x4eb836+0x1)+'.\x20'+_0x130c26[_0x4eb836][_0x1a8df6(0x218)]);}process[_0x1a8df6(0x27c)](0x1);}const _0x32420d=_0x2309e5[_0x1a8df6(0x20f)](_0x19c6ab[_0x1a8df6(0x28b)],0x1);if(_0x32420d<0x0||_0x32420d>=_0x130c26[_0x1a8df6(0x27e)]){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x19c6ab['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x130c26[_0x1a8df6(0x27e)]+'\x20scenarios.'),console['log'](_0x2309e5[_0x1a8df6(0x2c9)]);for(let _0x234005=0x0;_0x2309e5['dbPnH'](_0x234005,_0x130c26[_0x1a8df6(0x27e)]);_0x234005++){console['log']('\x20\x20'+_0x2309e5[_0x1a8df6(0x25b)](_0x234005,0x1)+'.\x20'+_0x130c26[_0x234005]['description']);}process[_0x1a8df6(0x27c)](0x1);}const _0x21fb35=_0x130c26[_0x32420d];await updateChecklistItem(_0x1a96b8,_0x21fb35['id'],{'description':_0x50079a});const _0x126be1=await getFeature(_0x1a96b8);console[_0x1a8df6(0x2ae)]('\x0a✅\x20Scenario\x20updated'),_0x2309e5[_0x1a8df6(0x229)](displayFeature,_0x126be1,_0x126be1['checklistItems']);}async function downloadFeedbackImage(_0x2e1271,_0x42a4d6){const _0x5dce36=_0x5bfdbb;try{const _0x166ad6=join(getRangerDir(),_0x5dce36(0x2c0));await mkdir(_0x166ad6,{'recursive':!![]});const _0x4025ee=join(_0x166ad6,_0x5dce36(0x208)+_0x42a4d6+_0x5dce36(0x1fa)),_0x582c92=await fetch(_0x2e1271);if(!_0x582c92['ok'])return null;const _0x2533ba=Buffer[_0x5dce36(0x29e)](await _0x582c92[_0x5dce36(0x29d)]());return await writeFile(_0x4025ee,_0x2533ba),_0x4025ee;}catch{return null;}}export async function featureGetReview(_0x13367a){const _0x45a2f4=_0x5bfdbb,_0x5337d0={'HVdek':function(_0x258eba,_0x3a83d7){return _0x258eba(_0x3a83d7);},'eaqxP':'numeric','RHmlQ':function(_0x2d1682,_0x108f9e,_0x20cb15){return _0x2d1682(_0x108f9e,_0x20cb15);},'nhnBn':function(_0xd65083,_0x588d15){return _0xd65083===_0x588d15;},'StIlL':function(_0x5387c8,_0x4a3dac){return _0x5387c8>=_0x4a3dac;}},_0x39a040=_0x13367a||await getActiveFeatureId();if(!_0x39a040)throw new Error(_0x45a2f4(0x261));const _0x4fff09=await _0x5337d0[_0x45a2f4(0x24d)](getFeature,_0x39a040),{items:_0x391707}=await _0x5337d0[_0x45a2f4(0x24d)](getActionItems,_0x39a040);console['log'](_0x45a2f4(0x2c2)+_0x4fff09['name']+'\x20('+_0x4fff09['id']+')\x0a');if(_0x391707['length']===0x0){console['log'](_0x45a2f4(0x280));return;}for(let _0x56294b=0x0;_0x56294b<_0x391707['length'];_0x56294b++){const _0x115953=_0x391707[_0x56294b],_0x4590b2=_0x115953[_0x45a2f4(0x269)]>0x1?_0x45a2f4(0x23b)+_0x115953['version']+')':'',_0x426846=await getItemFeedback(_0x39a040,_0x115953['id']);if(_0x426846['unaddressedComments']['length']>0x0){console['log'](_0x45a2f4(0x24e)+(_0x56294b+0x1)+_0x45a2f4(0x2a0)+_0x115953['description']+'\x22'+_0x4590b2+_0x45a2f4(0x224)+_0x426846[_0x45a2f4(0x268)][_0x45a2f4(0x27e)]+'\x20unaddressed\x20comment(s)');for(const _0x4d7c89 of _0x426846['unaddressedComments']){const _0x930fbf=new Date(_0x4d7c89['createdAt'])[_0x45a2f4(0x26b)]('en-US',{'month':'short','day':_0x5337d0['eaqxP']}),_0x4b8e6b=_0x4d7c89[_0x45a2f4(0x240)]||_0x4d7c89['authorEmail']||_0x45a2f4(0x20b);console[_0x45a2f4(0x2ae)](_0x45a2f4(0x282)+_0x4b8e6b+'\x20('+_0x930fbf+'):\x20\x22'+_0x4d7c89[_0x45a2f4(0x1f8)]+'\x22');if(_0x4d7c89['assetUrl']){const _0x19b0b1=await _0x5337d0['RHmlQ'](downloadFeedbackImage,_0x4d7c89['assetUrl'],_0x4d7c89['id']);_0x19b0b1&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x19b0b1);}if(_0x4d7c89[_0x45a2f4(0x276)]){const _0x4c3825=_0x4d7c89['domRef'][_0x45a2f4(0x28a)]['split'](_0x45a2f4(0x1f1))[_0x45a2f4(0x27b)]()?.['split'](':')[0x0]||'element',_0x311d2f=_0x4d7c89[_0x45a2f4(0x276)][_0x45a2f4(0x211)]?'\x20\x22'+_0x4d7c89['domRef'][_0x45a2f4(0x211)]['slice'](0x0,0x3c)+'\x22':'';console[_0x45a2f4(0x2ae)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x4c3825+'>'+_0x311d2f),console[_0x45a2f4(0x2ae)](_0x45a2f4(0x1ff)+_0x4d7c89['domRef']['selector']);}else{if(_0x4d7c89[_0x45a2f4(0x25c)]){const _0x4bddef=_0x4d7c89['spatial'][_0x45a2f4(0x252)];_0x5337d0['nhnBn'](_0x4d7c89[_0x45a2f4(0x25c)][_0x45a2f4(0x2aa)],'point')&&_0x5337d0['StIlL'](_0x4bddef['length'],0x2)?console[_0x45a2f4(0x2ae)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x4bddef[0x0]['toFixed'](0x2)+',\x20'+_0x4bddef[0x1][_0x45a2f4(0x277)](0x2)+')'):console['log'](_0x45a2f4(0x25a)+_0x4d7c89[_0x45a2f4(0x25c)]['type']+'\x20at\x20['+_0x4bddef[_0x45a2f4(0x27d)](_0x4e0767=>_0x4e0767[_0x45a2f4(0x277)](0x2))[_0x45a2f4(0x1f2)](',\x20')+']');}}}if(_0x426846[_0x45a2f4(0x2bf)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x4589f0 of _0x426846['canonicalFlow']['split']('\x0a')){console[_0x45a2f4(0x2ae)](_0x45a2f4(0x2a7)+_0x4589f0);}}}else console['log'](_0x45a2f4(0x24e)+(_0x56294b+0x1)+':\x20\x22'+_0x115953['description']+'\x22'+_0x4590b2+'\x20—\x20no\x20comments'),console[_0x45a2f4(0x2ae)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x45a2f4(0x2ae)]('');}}export async function featureDelete(_0xb1e258){const _0x4d5138=_0x5bfdbb,_0x8f2e8c={'TFSxF':_0x4d5138(0x261),'wybZb':function(_0x11d83e,_0x556a06){return _0x11d83e(_0x556a06);},'ETUTI':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x1d33e3=_0xb1e258||await getActiveFeatureId();if(!_0x1d33e3)throw new Error(_0x8f2e8c['TFSxF']);const _0x18ed05=await _0x8f2e8c[_0x4d5138(0x21a)](getFeature,_0x1d33e3);await softDeleteFeature(_0x1d33e3),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x18ed05['name']+'\x20('+_0x1d33e3+')'),console[_0x4d5138(0x2ae)](_0x8f2e8c['ETUTI']+_0x1d33e3);}export async function featureRestore(_0x5b531f){const _0x2a0c2c=_0x5bfdbb,_0x1ad472={'umSiF':function(_0x533f94,_0x112466){return _0x533f94(_0x112466);}};await _0x1ad472['umSiF'](restoreFeature,_0x5b531f);const _0x9ac905=await getFeature(_0x5b531f);console[_0x2a0c2c(0x2ae)](_0x2a0c2c(0x2bd)+_0x9ac905[_0x2a0c2c(0x220)]+'\x20('+_0x5b531f+')'),displayFeature(_0x9ac905,_0x9ac905[_0x2a0c2c(0x24a)]);}
@@ -1 +1 @@
1
- function _0x5169(){const _0xe60ceb=['1459732gRFcUt','15654kBPjEZ','join','4904RyJLkl','5193Vflzvs','273175Siczze','410rQRUPv','20654040CSCKhy','1021578aRpbQU','1270325NhdpgU','4jvTODl','KyYvh'];_0x5169=function(){return _0xe60ceb;};return _0x5169();}(function(_0x5e5d18,_0x3d520a){const _0x58b9f2=_0x2a97,_0x4b24e2=_0x5e5d18();while(!![]){try{const _0x8a734b=-parseInt(_0x58b9f2(0x134))/0x1+-parseInt(_0x58b9f2(0x139))/0x2*(parseInt(_0x58b9f2(0x137))/0x3)+-parseInt(_0x58b9f2(0x13b))/0x4+-parseInt(_0x58b9f2(0x135))/0x5*(parseInt(_0x58b9f2(0x13c))/0x6)+parseInt(_0x58b9f2(0x138))/0x7+-parseInt(_0x58b9f2(0x132))/0x8*(parseInt(_0x58b9f2(0x133))/0x9)+parseInt(_0x58b9f2(0x136))/0xa;if(_0x8a734b===_0x3d520a)break;else _0x4b24e2['push'](_0x4b24e2['shift']());}catch(_0x4006fd){_0x4b24e2['push'](_0x4b24e2['shift']());}}}(_0x5169,0x57e90));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x2a97(_0x15b67a,_0x30fa11){_0x15b67a=_0x15b67a-0x131;const _0x516915=_0x5169();let _0x2a97e6=_0x516915[_0x15b67a];return _0x2a97e6;}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};export async function hook(_0x36aefe,_0x247202){const _0x150d7e=_0x2a97,_0x1a6c42={'KyYvh':function(_0x72cac5,_0x2f8409){return _0x72cac5(_0x2f8409);}},_0xb65cbb=HOOKS[_0x36aefe];if(!_0xb65cbb){const _0x2809fb=Object['keys'](HOOKS)[_0x150d7e(0x131)](',\x20');console['error']('Unknown\x20hook:\x20'+_0x36aefe),console['error']('Valid\x20hooks:\x20'+_0x2809fb),process['exit'](0x1);}await _0x1a6c42[_0x150d7e(0x13a)](_0xb65cbb,_0x247202);}
1
+ (function(_0x11ec2d,_0x52b342){const _0x2c0d7f=_0x4656,_0x5186f5=_0x11ec2d();while(!![]){try{const _0x4c8aa5=-parseInt(_0x2c0d7f(0xb1))/0x1*(parseInt(_0x2c0d7f(0xb4))/0x2)+parseInt(_0x2c0d7f(0xaf))/0x3*(parseInt(_0x2c0d7f(0xba))/0x4)+parseInt(_0x2c0d7f(0xb7))/0x5*(-parseInt(_0x2c0d7f(0xb0))/0x6)+-parseInt(_0x2c0d7f(0xbc))/0x7*(parseInt(_0x2c0d7f(0xb8))/0x8)+-parseInt(_0x2c0d7f(0xbd))/0x9*(parseInt(_0x2c0d7f(0xb9))/0xa)+parseInt(_0x2c0d7f(0xb3))/0xb*(-parseInt(_0x2c0d7f(0xae))/0xc)+parseInt(_0x2c0d7f(0xb2))/0xd;if(_0x4c8aa5===_0x52b342)break;else _0x5186f5['push'](_0x5186f5['shift']());}catch(_0x586c22){_0x5186f5['push'](_0x5186f5['shift']());}}}(_0x2cf7,0xc890b));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x4656(_0x5bb3dd,_0x2b5084){_0x5bb3dd=_0x5bb3dd-0xae;const _0x2cf733=_0x2cf7();let _0x465630=_0x2cf733[_0x5bb3dd];return _0x465630;}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 _0xcaf6fb=_0x4656;if(cancellationHandlersInstalled)return;const _0x202858=()=>{const _0x103d37=_0x4656;process[_0x103d37(0xbe)](0x0);};process[_0xcaf6fb(0xb6)]('SIGINT',_0x202858),process[_0xcaf6fb(0xb6)]('SIGTERM',_0x202858),process['once'](_0xcaf6fb(0xb5),_0x202858),cancellationHandlersInstalled=!![];}function _0x2cf7(){const _0x4b19a5=['SIGHUP','once','35vzGUIW','8nHDXYj','3243040XRlfGt','18364ASMXsO','Unknown\x20hook:\x20','2642619MhtqrN','45QzruDy','exit','error','18211332gXheRf','1017NMjCaR','45204eHCrBD','3244iewYkB','51693720IqGTkh','11FhGxsp','704SheANX'];_0x2cf7=function(){return _0x4b19a5;};return _0x2cf7();}export async function hook(_0x55367c,_0x589046){const _0x52a20a=_0x4656;installCancellationHandlers();const _0x4e50a3=HOOKS[_0x55367c];if(!_0x4e50a3){const _0x56019f=Object['keys'](HOOKS)['join'](',\x20');console[_0x52a20a(0xbf)](_0x52a20a(0xbb)+_0x55367c),console['error']('Valid\x20hooks:\x20'+_0x56019f),process['exit'](0x1);}await _0x4e50a3(_0x589046);}
@@ -1 +1 @@
1
- const _0x73223e=_0x1e8c;(function(_0x4b8eb4,_0x5a9b46){const _0x5b62c3=_0x1e8c,_0x5c3510=_0x4b8eb4();while(!![]){try{const _0x392d42=parseInt(_0x5b62c3(0x133))/0x1*(parseInt(_0x5b62c3(0x134))/0x2)+-parseInt(_0x5b62c3(0x135))/0x3*(-parseInt(_0x5b62c3(0x12f))/0x4)+parseInt(_0x5b62c3(0x138))/0x5+parseInt(_0x5b62c3(0x132))/0x6+-parseInt(_0x5b62c3(0x139))/0x7*(-parseInt(_0x5b62c3(0x136))/0x8)+-parseInt(_0x5b62c3(0x131))/0x9+-parseInt(_0x5b62c3(0x137))/0xa;if(_0x392d42===_0x5a9b46)break;else _0x5c3510['push'](_0x5c3510['shift']());}catch(_0x142fcb){_0x5c3510['push'](_0x5c3510['shift']());}}}(_0x217e,0x8264f));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x73223e(0x130);function _0x217e(){const _0x5a3e79=['\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.','5862501RBAPjc','2234106NjmgRn','56583DCcIWw','34DfbaXT','2115804YOFIqc','80eZFunf','18799510qwOknH','4709325CRysKQ','58828aSItcL','4dsKHbX'];_0x217e=function(){return _0x5a3e79;};return _0x217e();}function _0x1e8c(_0x4f6b06,_0x652bfa){_0x4f6b06=_0x4f6b06-0x12f;const _0x217e12=_0x217e();let _0x1e8c9e=_0x217e12[_0x4f6b06];return _0x1e8c9e;}export async function autoPrompt(){const _0x3c27c7={'eMQNa':function(_0x2b594d){return _0x2b594d();},'KCRCW':function(_0x2ee85c,_0x1ebdf0){return _0x2ee85c(_0x1ebdf0);}},_0xb7f289=await _0x3c27c7['eMQNa'](readHookInput),_0x28016f=_0xb7f289?.['session_id'];if(!_0x28016f)return;if(isSessionEnabled(_0x28016f)||_0x3c27c7['KCRCW'](hasSessionBeenPrompted,_0x28016f))return;markSessionPrompted(_0x28016f),console['log'](AUTO_PROMPT_TEXT);}
1
+ (function(_0x14299e,_0x585864){const _0x2d612b=_0x2cbe,_0x4cfc89=_0x14299e();while(!![]){try{const _0x1f841a=parseInt(_0x2d612b(0x1b0))/0x1*(-parseInt(_0x2d612b(0x1a5))/0x2)+-parseInt(_0x2d612b(0x1aa))/0x3+-parseInt(_0x2d612b(0x1a7))/0x4+parseInt(_0x2d612b(0x1a9))/0x5*(parseInt(_0x2d612b(0x1ab))/0x6)+parseInt(_0x2d612b(0x1a6))/0x7*(-parseInt(_0x2d612b(0x1af))/0x8)+parseInt(_0x2d612b(0x1ac))/0x9*(parseInt(_0x2d612b(0x1a4))/0xa)+parseInt(_0x2d612b(0x1ae))/0xb;if(_0x1f841a===_0x585864)break;else _0x4cfc89['push'](_0x4cfc89['shift']());}catch(_0x45bb90){_0x4cfc89['push'](_0x4cfc89['shift']());}}}(_0x255f,0x20256));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0x2cbe(_0x90f83a,_0x55321d){_0x90f83a=_0x90f83a-0x1a4;const _0x255f8d=_0x255f();let _0x2cbe19=_0x255f8d[_0x90f83a];return _0x2cbe19;}export async function autoPrompt(){const _0x3dcfaa=_0x2cbe,_0x53f193={'xWTTS':function(_0x5414d5){return _0x5414d5();}},_0x128fdb=await _0x53f193[_0x3dcfaa(0x1ad)](readHookInput),_0x41301b=_0x128fdb?.[_0x3dcfaa(0x1a8)];if(!_0x41301b)return;if(isSessionEnabled(_0x41301b)||hasSessionBeenPrompted(_0x41301b))return;markSessionPrompted(_0x41301b),console['log'](AUTO_PROMPT_TEXT);}function _0x255f(){const _0x280994=['1PkVUKk','10rQwgXz','870IPtXCa','503405DxjuDj','207476tDzLUw','session_id','5ysOXuy','705711ncpaPg','159966JRPIeX','61353Zjlbih','xWTTS','6616258SUZikb','24iqNoxw'];_0x255f=function(){return _0x280994;};return _0x255f();}
@@ -1 +1 @@
1
- (function(_0x476e1b,_0x4e3d8c){const _0x155a05=_0x3116,_0x408a06=_0x476e1b();while(!![]){try{const _0x57b127=parseInt(_0x155a05(0x7e))/0x1+parseInt(_0x155a05(0x7c))/0x2+-parseInt(_0x155a05(0x77))/0x3+parseInt(_0x155a05(0x7a))/0x4+-parseInt(_0x155a05(0x81))/0x5*(-parseInt(_0x155a05(0x78))/0x6)+parseInt(_0x155a05(0x80))/0x7*(-parseInt(_0x155a05(0x7d))/0x8)+-parseInt(_0x155a05(0x76))/0x9*(-parseInt(_0x155a05(0x7b))/0xa);if(_0x57b127===_0x4e3d8c)break;else _0x408a06['push'](_0x408a06['shift']());}catch(_0x198451){_0x408a06['push'](_0x408a06['shift']());}}}(_0x4b71,0xbadb5));function _0x3116(_0x56724b,_0x4ec249){_0x56724b=_0x56724b-0x74;const _0x4b712a=_0x4b71();let _0x31163b=_0x4b712a[_0x56724b];return _0x31163b;}function _0x4b71(){const _0x277a2a=['#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','1867491CKiYVw','1042569XeNBFf','1944780WPmWEQ','\x20and\x20branch\x20\x27','4544560tKtwlM','20IzPofG','1268442udAFlX','488UoVnGI','132852RRmnuu','oWPpo','175511MrPQZD','5gDgpVv','master'];_0x4b71=function(){return _0x277a2a;};return _0x4b71();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x1c394a){const _0x3c7c07=_0x3116,_0x325e89={'nTDba':'main','JXMdF':function(_0x5a4b66,_0x15e0e3){return _0x5a4b66(_0x15e0e3);},'ZkilZ':function(_0x58c332,_0x3ef5c5){return _0x58c332(_0x3ef5c5);},'oWPpo':function(_0x4c3992,_0x4149a0){return _0x4c3992!==_0x4149a0;},'sqkQT':_0x3c7c07(0x74)},_0x176c77=_0x1c394a||process['env']['CLAUDE_SESSION_ID']||'';_0x176c77&&disableSession(_0x176c77);const _0x33cd6e=getCurrentBranch();_0x33cd6e&&_0x33cd6e!==_0x325e89['nTDba']&&_0x33cd6e!==_0x3c7c07(0x74)&&_0x325e89['JXMdF'](disableBranch,_0x33cd6e),_0x325e89['ZkilZ'](printBlock,_0x3c7c07(0x75)+(_0x33cd6e&&_0x325e89[_0x3c7c07(0x7f)](_0x33cd6e,'main')&&_0x33cd6e!==_0x325e89['sqkQT']?_0x3c7c07(0x79)+_0x33cd6e+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ function _0x10b1(){const _0x5d39aa=['\x20and\x20branch\x20\x27','22060qJvhHh','XMskM','env','20iTUyxd','444ObjxZO','master','rlkOP','3622048cYvccL','386358cNeJPY','1777171QLjxLh','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','DHrjG','15133NzlRdO','14jIVmdA','17197956exmyhe','CLAUDE_SESSION_ID','4064669ZsYQMr','20Ztqgdx','9FDnGnm'];_0x10b1=function(){return _0x5d39aa;};return _0x10b1();}function _0x4f11(_0x485221,_0x415260){_0x485221=_0x485221-0xb8;const _0x10b1a4=_0x10b1();let _0x4f1198=_0x10b1a4[_0x485221];return _0x4f1198;}(function(_0x4986c7,_0x5066af){const _0x2fa877=_0x4f11,_0x3281ea=_0x4986c7();while(!![]){try{const _0x2b5265=-parseInt(_0x2fa877(0xc5))/0x1*(-parseInt(_0x2fa877(0xc6))/0x2)+parseInt(_0x2fa877(0xc1))/0x3*(-parseInt(_0x2fa877(0xca))/0x4)+parseInt(_0x2fa877(0xb9))/0x5*(-parseInt(_0x2fa877(0xbd))/0x6)+parseInt(_0x2fa877(0xc9))/0x7+parseInt(_0x2fa877(0xc0))/0x8*(-parseInt(_0x2fa877(0xcb))/0x9)+-parseInt(_0x2fa877(0xbc))/0xa*(parseInt(_0x2fa877(0xc2))/0xb)+parseInt(_0x2fa877(0xc7))/0xc;if(_0x2b5265===_0x5066af)break;else _0x3281ea['push'](_0x3281ea['shift']());}catch(_0x3e6fe6){_0x3281ea['push'](_0x3281ea['shift']());}}}(_0x10b1,0x5b2d9));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x1a68ad){const _0x4b3512=_0x4f11,_0x4862f1={'XMskM':function(_0x21f58e,_0x54c041){return _0x21f58e(_0x54c041);},'DHrjG':function(_0xc3fd90,_0x528260){return _0xc3fd90!==_0x528260;},'rlkOP':'main'},_0xf031e7=_0x1a68ad||process[_0x4b3512(0xbb)][_0x4b3512(0xc8)]||'';_0xf031e7&&_0x4862f1[_0x4b3512(0xba)](disableSession,_0xf031e7);const _0x69eecd=getCurrentBranch();_0x69eecd&&_0x4862f1[_0x4b3512(0xc4)](_0x69eecd,'main')&&_0x4862f1[_0x4b3512(0xc4)](_0x69eecd,_0x4b3512(0xbe))&&disableBranch(_0x69eecd),printBlock(_0x4b3512(0xc3)+(_0x69eecd&&_0x4862f1[_0x4b3512(0xc4)](_0x69eecd,_0x4862f1[_0x4b3512(0xbf)])&&_0x69eecd!=='master'?_0x4b3512(0xb8)+_0x69eecd+'\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(_0x1a9001,_0x3b2934){const _0xb45877=_0x1d71,_0x4674f8=_0x1a9001();while(!![]){try{const _0x366c84=parseInt(_0xb45877(0x178))/0x1+parseInt(_0xb45877(0x17f))/0x2+parseInt(_0xb45877(0x184))/0x3*(parseInt(_0xb45877(0x176))/0x4)+-parseInt(_0xb45877(0x183))/0x5+-parseInt(_0xb45877(0x174))/0x6*(-parseInt(_0xb45877(0x173))/0x7)+parseInt(_0xb45877(0x179))/0x8+parseInt(_0xb45877(0x186))/0x9*(-parseInt(_0xb45877(0x172))/0xa);if(_0x366c84===_0x3b2934)break;else _0x4674f8['push'](_0x4674f8['shift']());}catch(_0x2a15d1){_0x4674f8['push'](_0x4674f8['shift']());}}}(_0x15ff,0x69599));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0x15ff(){const _0x116b13=['3199770ojyYCW','625731CdWtxE','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','12505266oSzVJZ','master','10ofvuQV','35539tLbcnL','684QDVvmQ','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','8zAqmUA','OdHoS','717136DhAquh','3398352eLFggs','main','ranger\x20setup','\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`.','HCxjO','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','646158GDiwgD','QeIbw','#\x20RANGER\x20ENABLED','sKTSC'];_0x15ff=function(){return _0x116b13;};return _0x15ff();}function _0x1d71(_0x34a150,_0x36aa87){_0x34a150=_0x34a150-0x172;const _0x15ff5d=_0x15ff();let _0x1d71ef=_0x15ff5d[_0x34a150];return _0x1d71ef;}import{update}from'../update.js';export async function enable(_0x558b0d){const _0x308e7c=_0x1d71,_0x529a11={'QeIbw':function(_0x41deaa){return _0x41deaa();},'yxlOo':_0x308e7c(0x17e),'OdHoS':function(_0x174efd){return _0x174efd();},'sKTSC':function(_0x1893c6,_0x6bc68c){return _0x1893c6!==_0x6bc68c;},'gIHSb':_0x308e7c(0x187),'HCxjO':function(_0x40e5e9){return _0x40e5e9();}},_0x137226=_0x558b0d||process['env']['CLAUDE_SESSION_ID']||'',_0x348779=Boolean(_0x558b0d),_0x285bfc=await _0x529a11[_0x308e7c(0x180)](getToken);if(!_0x285bfc){const _0x54b1bf=_0x348779?'ranger\x20setup\x20--opencode':_0x308e7c(0x17b),_0x1a36fc=_0x348779?_0x529a11['yxlOo']:_0x308e7c(0x185);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`'+_0x54b1bf+_0x308e7c(0x175)+_0x1a36fc);return;}try{await _0x529a11[_0x308e7c(0x177)](update);}catch{}_0x137226&&enableSession(_0x137226);const _0x2b4202=getCurrentBranch(),_0x2d1234=_0x2b4202&&_0x529a11['sKTSC'](_0x2b4202,_0x308e7c(0x17a))&&_0x529a11[_0x308e7c(0x182)](_0x2b4202,_0x529a11['gIHSb'])?'\x0a\x0a**Branch\x20\x27'+_0x2b4202+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x1dc0f8=_0x529a11[_0x308e7c(0x17d)](getRangerSkillContent);printBlock(_0x308e7c(0x181)+_0x2d1234+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x1dc0f8+_0x308e7c(0x17c));}
1
+ function _0x3822(_0x2054ce,_0x11db59){_0x2054ce=_0x2054ce-0xa9;const _0x2e50f1=_0x2e50();let _0x38225b=_0x2e50f1[_0x2054ce];return _0x38225b;}(function(_0x5cd103,_0x59165f){const _0x25e420=_0x3822,_0x28cdc5=_0x5cd103();while(!![]){try{const _0xa210a8=parseInt(_0x25e420(0xab))/0x1+parseInt(_0x25e420(0xaf))/0x2*(parseInt(_0x25e420(0xb5))/0x3)+parseInt(_0x25e420(0xbd))/0x4+parseInt(_0x25e420(0xbb))/0x5+-parseInt(_0x25e420(0xb3))/0x6*(parseInt(_0x25e420(0xae))/0x7)+-parseInt(_0x25e420(0xb6))/0x8*(parseInt(_0x25e420(0xb9))/0x9)+parseInt(_0x25e420(0xbc))/0xa;if(_0xa210a8===_0x59165f)break;else _0x28cdc5['push'](_0x28cdc5['shift']());}catch(_0x2c1405){_0x28cdc5['push'](_0x28cdc5['shift']());}}}(_0x2e50,0x3c93b));function _0x2e50(){const _0x1b90e9=['67851RvWyYj','44RUicMU','NxrYn','ranger\x20setup\x20--opencode','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','198ZGlsUH','\x0a\x0a**Branch\x20\x27','18687lAoKuF','5944BtGTCB','bbZBm','#\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`','5913NDELML','ranger\x20setup','848015mbfByJ','589200NtFKER','970408cdHold','\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`.','#\x20RANGER\x20ENABLED','447980GYkAGI','main','zdybM'];_0x2e50=function(){return _0x1b90e9;};return _0x2e50();}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(_0x172a32){const _0x7baa26=_0x3822,_0x281160={'NxrYn':function(_0x240168,_0x16eb26){return _0x240168(_0x16eb26);},'FekeE':_0x7baa26(0xba),'bbZBm':function(_0x218edb){return _0x218edb();},'zdybM':function(_0x5a2e79,_0x4f4fd7){return _0x5a2e79!==_0x4f4fd7;}},_0x748d5e=_0x172a32||process['env']['CLAUDE_SESSION_ID']||'',_0x21287d=_0x281160[_0x7baa26(0xb0)](Boolean,_0x172a32),_0x115104=await getToken();if(!_0x115104){const _0x48f436=_0x21287d?_0x7baa26(0xb1):_0x281160['FekeE'],_0x13fa9e=_0x21287d?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x281160[_0x7baa26(0xb0)](printBlock,_0x7baa26(0xb8)+_0x48f436+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x13fa9e);return;}try{await _0x281160['bbZBm'](update);}catch{}_0x748d5e&&enableSession(_0x748d5e);const _0x109b5c=_0x281160[_0x7baa26(0xb7)](getCurrentBranch),_0x3090a2=_0x109b5c&&_0x109b5c!==_0x7baa26(0xac)&&_0x281160[_0x7baa26(0xad)](_0x109b5c,'master')?_0x7baa26(0xb4)+_0x109b5c+_0x7baa26(0xb2):'',_0x5497a1=getRangerSkillContent();printBlock(_0x7baa26(0xaa)+_0x3090a2+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x5497a1+_0x7baa26(0xa9));}
@@ -1 +1 @@
1
- (function(_0x13fda1,_0x335adc){const _0x436967=_0x2118,_0x426fd3=_0x13fda1();while(!![]){try{const _0x17c287=parseInt(_0x436967(0xc8))/0x1*(parseInt(_0x436967(0xcd))/0x2)+parseInt(_0x436967(0xc6))/0x3*(parseInt(_0x436967(0xcc))/0x4)+-parseInt(_0x436967(0xc7))/0x5+-parseInt(_0x436967(0xc9))/0x6*(parseInt(_0x436967(0xcb))/0x7)+parseInt(_0x436967(0xce))/0x8+parseInt(_0x436967(0xcf))/0x9+-parseInt(_0x436967(0xca))/0xa;if(_0x17c287===_0x335adc)break;else _0x426fd3['push'](_0x426fd3['shift']());}catch(_0x2ca19b){_0x426fd3['push'](_0x426fd3['shift']());}}}(_0x1a5b,0x425c3));function _0x2118(_0x529acf,_0x27f59d){_0x529acf=_0x529acf-0xc6;const _0x1a5b08=_0x1a5b();let _0x21183f=_0x1a5b08[_0x529acf];return _0x21183f;}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0xb094bd){const _0x2506a8=await getEnabledSessionId(_0xb094bd);if(!_0x2506a8)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===');}function _0x1a5b(){const _0xf4ba5e=['14202FHhRzE','6LTNDYF','6963730FohiSu','1220317VaFJCX','4cRZKFH','36cOJZte','1826568mQYnQO','3664026hIfBAs','937659rVeSls','305545lcvtax'];_0x1a5b=function(){return _0xf4ba5e;};return _0x1a5b();}
1
+ function _0x4276(){const _0x19c707=['47270xVvQuU','6399yHKrDR','748MFNuwq','10072080PrxKqJ','16257LFnlRU','71510ctUlOx','2143396vJeqKA','222LqhneF','6919143csnlcz','1529967GGoIQE'];_0x4276=function(){return _0x19c707;};return _0x4276();}(function(_0x9293d8,_0x216cff){const _0x37890e=_0x3643,_0x172748=_0x9293d8();while(!![]){try{const _0x2b7aee=-parseInt(_0x37890e(0x12d))/0x1+-parseInt(_0x37890e(0x134))/0x2+-parseInt(_0x37890e(0x132))/0x3*(-parseInt(_0x37890e(0x130))/0x4)+-parseInt(_0x37890e(0x12e))/0x5*(parseInt(_0x37890e(0x135))/0x6)+-parseInt(_0x37890e(0x12c))/0x7+-parseInt(_0x37890e(0x131))/0x8+-parseInt(_0x37890e(0x12f))/0x9*(-parseInt(_0x37890e(0x133))/0xa);if(_0x2b7aee===_0x216cff)break;else _0x172748['push'](_0x172748['shift']());}catch(_0x12ce38){_0x172748['push'](_0x172748['shift']());}}}(_0x4276,0xdb6e8));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3643(_0x5234bf,_0x3599cb){_0x5234bf=_0x5234bf-0x12c;const _0x427627=_0x4276();let _0x36436b=_0x427627[_0x5234bf];return _0x36436b;}export async function exitPlanMode(_0x35a0b){const _0xff6b7a=await getEnabledSessionId(_0x35a0b);if(!_0xff6b7a)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 _0x4041(_0x791d38,_0x87c00){_0x791d38=_0x791d38-0x199;var _0x18a420=_0x18a4();var _0x4041eb=_0x18a420[_0x791d38];return _0x4041eb;}(function(_0x35173c,_0x457584){var _0x84036c=_0x4041,_0x3f9f5b=_0x35173c();while(!![]){try{var _0x34967e=parseInt(_0x84036c(0x19f))/0x1*(parseInt(_0x84036c(0x19e))/0x2)+parseInt(_0x84036c(0x19b))/0x3+parseInt(_0x84036c(0x1a1))/0x4+parseInt(_0x84036c(0x19a))/0x5+-parseInt(_0x84036c(0x199))/0x6*(parseInt(_0x84036c(0x1a0))/0x7)+parseInt(_0x84036c(0x19d))/0x8+-parseInt(_0x84036c(0x19c))/0x9;if(_0x34967e===_0x457584)break;else _0x3f9f5b['push'](_0x3f9f5b['shift']());}catch(_0x23fb0){_0x3f9f5b['push'](_0x3f9f5b['shift']());}}}(_0x18a4,0x664e3));function _0x18a4(){var _0x409f23=['1514450xEPOJq','519273QQxRVq','4626666ujxtLx','3858744NzapNt','494fRbpWI','1329WAaOmL','14JnwztC','1665272bpPRPu','2309364bfNtTS'];_0x18a4=function(){return _0x409f23;};return _0x18a4();}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';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x446657,_0x2ad3dc){var _0x3f5863=_0x21bf,_0x58f7c7=_0x446657();while(!![]){try{var _0x2c6fd8=parseInt(_0x3f5863(0x1da))/0x1+parseInt(_0x3f5863(0x1d9))/0x2*(-parseInt(_0x3f5863(0x1dd))/0x3)+parseInt(_0x3f5863(0x1d8))/0x4+parseInt(_0x3f5863(0x1de))/0x5+-parseInt(_0x3f5863(0x1db))/0x6+parseInt(_0x3f5863(0x1dc))/0x7*(-parseInt(_0x3f5863(0x1d6))/0x8)+parseInt(_0x3f5863(0x1d7))/0x9;if(_0x2c6fd8===_0x2ad3dc)break;else _0x58f7c7['push'](_0x58f7c7['shift']());}catch(_0x5c48a9){_0x58f7c7['push'](_0x58f7c7['shift']());}}}(_0x1937,0x57589));function _0x21bf(_0x1de151,_0x5449d9){_0x1de151=_0x1de151-0x1d6;var _0x19374f=_0x1937();var _0x21bf76=_0x19374f[_0x1de151];return _0x21bf76;}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';export{stopHook}from'./stopHook.js';function _0x1937(){var _0x49e0d5=['1920lzaTaH','244720lNdHqO','16UqaxKk','7165755JeFcPq','2329468IsYWua','1052fDHbIQ','408250TGfSvy','3714102iWczSA','1828155iLbtQy'];_0x1937=function(){return _0x49e0d5;};return _0x1937();}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x24d400,_0xe9fb79){const _0x548e78=_0x196c,_0x1cc3e0=_0x24d400();while(!![]){try{const _0x1a50f6=parseInt(_0x548e78(0x140))/0x1+parseInt(_0x548e78(0x13e))/0x2+parseInt(_0x548e78(0x136))/0x3+parseInt(_0x548e78(0x135))/0x4*(-parseInt(_0x548e78(0x138))/0x5)+parseInt(_0x548e78(0x13d))/0x6+-parseInt(_0x548e78(0x13b))/0x7*(-parseInt(_0x548e78(0x137))/0x8)+-parseInt(_0x548e78(0x141))/0x9*(parseInt(_0x548e78(0x133))/0xa);if(_0x1a50f6===_0xe9fb79)break;else _0x1cc3e0['push'](_0x1cc3e0['shift']());}catch(_0x229ba3){_0x1cc3e0['push'](_0x1cc3e0['shift']());}}}(_0xa047,0x275dc));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x499e46){const _0x164e4a=_0x196c;console[_0x164e4a(0x13f)](_0x499e46);}function _0xa047(){const _0x289ac2=['43085nnJQen','PtMOm','1708608AvjQmJ','336262WliQLa','log','136910FXwGox','5374638xREgkC','parse','10DgagMT','Bkhzl','12dQZzja','415941XfOENY','48NkZKBD','11600syVhwq','tDTBZ','ABZoL'];_0xa047=function(){return _0x289ac2;};return _0xa047();}export async function readHookInput(){const _0x3f5255=_0x196c;let _0x5f00bd='';for await(const _0x2306d7 of process['stdin']){_0x5f00bd+=_0x2306d7;}try{return JSON[_0x3f5255(0x132)](_0x5f00bd);}catch{return null;}}function _0x196c(_0x5488ca,_0x26c5bf){_0x5488ca=_0x5488ca-0x132;const _0xa0473d=_0xa047();let _0x196c7d=_0xa0473d[_0x5488ca];return _0x196c7d;}export async function getEnabledSessionId(_0x1684b5){const _0x8deac6=_0x196c,_0x19d418={'PtMOm':function(_0x1bffa3,_0x5105ef){return _0x1bffa3(_0x5105ef);},'tDTBZ':function(_0xf1d9b6){return _0xf1d9b6();}};if(_0x1684b5)return _0x19d418[_0x8deac6(0x13c)](isSessionEnabled,_0x1684b5)?_0x1684b5:null;const _0x3e2d9d=await _0x19d418[_0x8deac6(0x139)](readHookInput),_0x51a612=_0x3e2d9d?.['session_id'];if(!_0x51a612||!isSessionEnabled(_0x51a612))return null;return _0x51a612;}export async function getEnabledHookContext(_0x5aa566){const _0x1ca183=_0x196c,_0x6bc4ad={'ABZoL':function(_0x25d12a,_0x252b78){return _0x25d12a(_0x252b78);},'Bkhzl':function(_0x4a421f){return _0x4a421f();}};if(_0x5aa566){if(!_0x6bc4ad[_0x1ca183(0x13a)](isSessionEnabled,_0x5aa566))return null;return{'sessionId':_0x5aa566,'input':{'session_id':_0x5aa566}};}const _0x5d6d2e=await _0x6bc4ad[_0x1ca183(0x134)](readHookInput),_0x204352=_0x5d6d2e?.['session_id'];if(!_0x204352||!_0x6bc4ad[_0x1ca183(0x13a)](isSessionEnabled,_0x204352))return null;return{'sessionId':_0x204352,'input':_0x5d6d2e};}
1
+ (function(_0x1acc88,_0x539e7f){const _0x341df1=_0x3524,_0x336d20=_0x1acc88();while(!![]){try{const _0x5c7315=parseInt(_0x341df1(0x1a5))/0x1+-parseInt(_0x341df1(0x1ae))/0x2+-parseInt(_0x341df1(0x1a9))/0x3*(-parseInt(_0x341df1(0x1ab))/0x4)+parseInt(_0x341df1(0x1ad))/0x5+-parseInt(_0x341df1(0x1a2))/0x6+parseInt(_0x341df1(0x1a4))/0x7+-parseInt(_0x341df1(0x1a7))/0x8*(parseInt(_0x341df1(0x1aa))/0x9);if(_0x5c7315===_0x539e7f)break;else _0x336d20['push'](_0x336d20['shift']());}catch(_0x1e7d19){_0x336d20['push'](_0x336d20['shift']());}}}(_0xeac4,0xcb890));function _0xeac4(){const _0x13b5f8=['log','WCMMz','trim','3508698QJwwdM','session_id','6648677LuWAch','1296943mbvKIm','OsOwx','7256VCIyUx','hUWqX','25671VszKBP','3897nAKVjB','20mnwgIi','parse','1910630ILLuzf','1720942xtIAaQ'];_0xeac4=function(){return _0x13b5f8;};return _0xeac4();}import{isSessionEnabled}from'../utils/sessionCache.js';function _0x3524(_0x3d246a,_0x27df0d){_0x3d246a=_0x3d246a-0x1a2;const _0xeac4d7=_0xeac4();let _0x352432=_0xeac4d7[_0x3d246a];return _0x352432;}export function printBlock(_0x4afa1a){const _0x2cac97=_0x3524;console[_0x2cac97(0x1af)](_0x4afa1a);}export async function readHookInput(){const _0x5c903e=_0x3524;let _0x5e46cb='';try{for await(const _0x5515c5 of process['stdin']){_0x5e46cb+=_0x5515c5;}}catch{return null;}if(!_0x5e46cb[_0x5c903e(0x1b1)]())return null;try{return JSON[_0x5c903e(0x1ac)](_0x5e46cb);}catch{return null;}}export async function getEnabledSessionId(_0x5e6776){const _0x5bb2c2=_0x3524,_0x12ea06={'hUWqX':function(_0x3e9e81,_0x5153cc){return _0x3e9e81(_0x5153cc);},'WCMMz':function(_0x4a4438){return _0x4a4438();}};if(_0x5e6776)return _0x12ea06[_0x5bb2c2(0x1a8)](isSessionEnabled,_0x5e6776)?_0x5e6776:null;const _0x547b07=await _0x12ea06[_0x5bb2c2(0x1b0)](readHookInput),_0x1d153b=_0x547b07?.['session_id'];if(!_0x1d153b||!isSessionEnabled(_0x1d153b))return null;return _0x1d153b;}export async function getEnabledHookContext(_0x241dba){const _0x36d9aa=_0x3524,_0x34875f={'znbdr':function(_0x378d0d){return _0x378d0d();},'OsOwx':function(_0x445c0a,_0x1615c3){return _0x445c0a(_0x1615c3);}};if(_0x241dba){if(!isSessionEnabled(_0x241dba))return null;return{'sessionId':_0x241dba,'input':{'session_id':_0x241dba}};}const _0x29da06=await _0x34875f['znbdr'](readHookInput),_0x5c4d83=_0x29da06?.[_0x36d9aa(0x1a3)];if(!_0x5c4d83||!_0x34875f[_0x36d9aa(0x1a6)](isSessionEnabled,_0x5c4d83))return null;return{'sessionId':_0x5c4d83,'input':_0x29da06};}
@@ -1 +1 @@
1
- (function(_0x37328a,_0x52d2a3){const _0x3af95f=_0x496b,_0xfc1c68=_0x37328a();while(!![]){try{const _0x1d13ee=-parseInt(_0x3af95f(0xa2))/0x1*(-parseInt(_0x3af95f(0x9b))/0x2)+parseInt(_0x3af95f(0x9f))/0x3*(parseInt(_0x3af95f(0x97))/0x4)+-parseInt(_0x3af95f(0x99))/0x5+-parseInt(_0x3af95f(0x9e))/0x6*(parseInt(_0x3af95f(0x94))/0x7)+-parseInt(_0x3af95f(0x98))/0x8+parseInt(_0x3af95f(0x9c))/0x9*(-parseInt(_0x3af95f(0xa3))/0xa)+-parseInt(_0x3af95f(0xa0))/0xb*(-parseInt(_0x3af95f(0x9a))/0xc);if(_0x1d13ee===_0x52d2a3)break;else _0xfc1c68['push'](_0xfc1c68['shift']());}catch(_0x40061d){_0xfc1c68['push'](_0xfc1c68['shift']());}}}(_0x3427,0xe91b6));import{printBlock,getEnabledHookContext}from'./output.js';function _0x3427(){const _0x430221=['18OAZicY','ETbiA','2154eIqtoJ','633MxiUoG','44030426ibMrVU','sessionId','164677yMaDcL','8234670fZNbQe','14126mLGYJZ','===\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===','DXfZZ','11076rztQSo','9418752xUvpXt','1240780iCsNAs','12AdFHrB','2KQJbdi'];_0x3427=function(){return _0x430221;};return _0x3427();}function _0x496b(_0x62bb2a,_0x355421){_0x62bb2a=_0x62bb2a-0x94;const _0x342708=_0x3427();let _0x496be4=_0x342708[_0x62bb2a];return _0x496be4;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x14dadd){const _0x96f620=_0x496b,_0x4cd1de={'Zodpe':function(_0x5d2ce8,_0x15ed87){return _0x5d2ce8(_0x15ed87);},'zsIyr':function(_0x5474f4,_0x11680c){return _0x5474f4!==_0x11680c;},'DXfZZ':function(_0x2b05b1,_0xca4aee){return _0x2b05b1(_0xca4aee);},'ETbiA':function(_0x1d04f6,_0x2c6669){return _0x1d04f6(_0x2c6669);}},_0x565775=await _0x4cd1de['Zodpe'](getEnabledHookContext,_0x14dadd);if(!_0x565775)return;if(_0x4cd1de['zsIyr'](_0x565775['input']['permission_mode'],'plan'))return;if(!_0x4cd1de[_0x96f620(0x96)](shouldShowPlanReminder,_0x565775[_0x96f620(0xa1)]))return;_0x4cd1de[_0x96f620(0x9d)](printBlock,_0x96f620(0x95));}
1
+ (function(_0x4a6566,_0x44f5c1){const _0x172373=_0x3894,_0x59dbe4=_0x4a6566();while(!![]){try{const _0x457e0e=parseInt(_0x172373(0x1a5))/0x1*(-parseInt(_0x172373(0x19f))/0x2)+-parseInt(_0x172373(0x19e))/0x3+parseInt(_0x172373(0x1a6))/0x4+parseInt(_0x172373(0x1a7))/0x5+parseInt(_0x172373(0x1a1))/0x6*(-parseInt(_0x172373(0x1aa))/0x7)+-parseInt(_0x172373(0x19d))/0x8+parseInt(_0x172373(0x1a8))/0x9*(parseInt(_0x172373(0x1a3))/0xa);if(_0x457e0e===_0x44f5c1)break;else _0x59dbe4['push'](_0x59dbe4['shift']());}catch(_0x1121cd){_0x59dbe4['push'](_0x59dbe4['shift']());}}}(_0x45e1,0x8e7cf));function _0x45e1(){const _0x497f9b=['sessionId','24NWpdpr','===\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===','29090ROQxTo','permission_mode','3buROLD','4219292OnjWpl','4421635GJwlws','3645HIZHyg','Ktipu','126805YVBFur','7935240UoNdWj','2604567SGJqDs','400740ecOvlP'];_0x45e1=function(){return _0x497f9b;};return _0x45e1();}import{printBlock,getEnabledHookContext}from'./output.js';function _0x3894(_0x1a6f6d,_0x84c8b2){_0x1a6f6d=_0x1a6f6d-0x19d;const _0x45e105=_0x45e1();let _0x3894ee=_0x45e105[_0x1a6f6d];return _0x3894ee;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x1d4bc0){const _0x40d622=_0x3894,_0x1f906f={'uFhDW':function(_0x2a2b47,_0xcbf500){return _0x2a2b47(_0xcbf500);},'Ktipu':function(_0x19b863,_0x19a014){return _0x19b863!==_0x19a014;},'TabZz':'plan'},_0x36ef64=await _0x1f906f['uFhDW'](getEnabledHookContext,_0x1d4bc0);if(!_0x36ef64)return;if(_0x1f906f[_0x40d622(0x1a9)](_0x36ef64['input'][_0x40d622(0x1a4)],_0x1f906f['TabZz']))return;if(!shouldShowPlanReminder(_0x36ef64[_0x40d622(0x1a0)]))return;printBlock(_0x40d622(0x1a2));}
@@ -1 +1 @@
1
- (function(_0x78d9a0,_0x190777){const _0x4cf176=_0x317c,_0x2e240c=_0x78d9a0();while(!![]){try{const _0x489353=parseInt(_0x4cf176(0x1e9))/0x1+parseInt(_0x4cf176(0x1e7))/0x2+parseInt(_0x4cf176(0x1e4))/0x3+-parseInt(_0x4cf176(0x1ea))/0x4*(-parseInt(_0x4cf176(0x1e2))/0x5)+parseInt(_0x4cf176(0x1e0))/0x6*(-parseInt(_0x4cf176(0x1e3))/0x7)+-parseInt(_0x4cf176(0x1e1))/0x8*(parseInt(_0x4cf176(0x1e5))/0x9)+-parseInt(_0x4cf176(0x1e6))/0xa*(parseInt(_0x4cf176(0x1eb))/0xb);if(_0x489353===_0x190777)break;else _0x2e240c['push'](_0x2e240c['shift']());}catch(_0x4edbc8){_0x2e240c['push'](_0x2e240c['shift']());}}}(_0x13d5,0x25db5));function _0x317c(_0x400e28,_0x162604){_0x400e28=_0x400e28-0x1df;const _0x13d5d8=_0x13d5();let _0x317c1a=_0x13d5d8[_0x400e28];return _0x317c1a;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x1c1d28){const _0x3a8122=_0x317c,_0x5ed3d8={'ZhEuG':function(_0x3ab65c,_0x6f74c2){return _0x3ab65c(_0x6f74c2);},'iAZNJ':function(_0x1db4eb,_0x341d65){return _0x1db4eb(_0x341d65);}},_0x29091e=await _0x5ed3d8[_0x3a8122(0x1df)](getEnabledSessionId,_0x1c1d28);if(!_0x29091e)return;_0x5ed3d8['iAZNJ'](printBlock,_0x3a8122(0x1e8));}function _0x13d5(){const _0x310fed=['1545zsNQuP','615496ReDWiX','307536nFnMta','9DyNPlD','5130qocIGo','457932zzgMTr','===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===','176186XFiwhP','1492nyAttx','1969MXkBaY','ZhEuG','6Ujwkio','2304840RSXUEj'];_0x13d5=function(){return _0x310fed;};return _0x13d5();}
1
+ (function(_0x1313ab,_0x36f267){const _0x179810=_0x304b,_0x48bef9=_0x1313ab();while(!![]){try{const _0x4dec2a=-parseInt(_0x179810(0x1d9))/0x1+parseInt(_0x179810(0x1dd))/0x2*(-parseInt(_0x179810(0x1de))/0x3)+parseInt(_0x179810(0x1e3))/0x4+-parseInt(_0x179810(0x1db))/0x5*(-parseInt(_0x179810(0x1df))/0x6)+parseInt(_0x179810(0x1dc))/0x7*(-parseInt(_0x179810(0x1e0))/0x8)+parseInt(_0x179810(0x1da))/0x9+parseInt(_0x179810(0x1d8))/0xa*(parseInt(_0x179810(0x1e1))/0xb);if(_0x4dec2a===_0x36f267)break;else _0x48bef9['push'](_0x48bef9['shift']());}catch(_0x46f37b){_0x48bef9['push'](_0x48bef9['shift']());}}}(_0x45ed,0xa0232));import{printBlock,getEnabledSessionId}from'./output.js';function _0x304b(_0x4cbf90,_0x7ba5e7){_0x4cbf90=_0x4cbf90-0x1d8;const _0x45ed55=_0x45ed();let _0x304bbd=_0x45ed55[_0x4cbf90];return _0x304bbd;}export async function planStart(_0x2a3992){const _0x6f1f9f=_0x304b,_0xb36c47={'SmBmk':function(_0x385257,_0x261446){return _0x385257(_0x261446);}},_0x25d92e=await getEnabledSessionId(_0x2a3992);if(!_0x25d92e)return;_0xb36c47[_0x6f1f9f(0x1e2)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}function _0x45ed(){const _0x4fa63a=['6670440KPEtcD','10jLMGXk','5901VHqWWP','4wfxTjv','826899PQJlVX','1456404IelZui','1112KgqaHX','3234HdedQZ','SmBmk','2461080cDLypG','15030Cmlplu','959415hgkHEE'];_0x45ed=function(){return _0x4fa63a;};return _0x45ed();}
@@ -1 +1 @@
1
- (function(_0x3abe3d,_0x3d5f68){const _0x291b5e=_0x2405,_0x582dab=_0x3abe3d();while(!![]){try{const _0x3ddbdd=-parseInt(_0x291b5e(0x11e))/0x1*(parseInt(_0x291b5e(0x114))/0x2)+parseInt(_0x291b5e(0x11c))/0x3+-parseInt(_0x291b5e(0x11f))/0x4+parseInt(_0x291b5e(0x11a))/0x5+parseInt(_0x291b5e(0x11d))/0x6*(-parseInt(_0x291b5e(0x121))/0x7)+parseInt(_0x291b5e(0x116))/0x8+-parseInt(_0x291b5e(0x120))/0x9*(-parseInt(_0x291b5e(0x119))/0xa);if(_0x3ddbdd===_0x3d5f68)break;else _0x582dab['push'](_0x582dab['shift']());}catch(_0x215c0c){_0x582dab['push'](_0x582dab['shift']());}}}(_0x3abd,0xee8d1));function _0x2405(_0x32e0fc,_0x17509b){_0x32e0fc=_0x32e0fc-0x114;const _0x3abd7c=_0x3abd();let _0x2405ed=_0x3abd7c[_0x32e0fc];return _0x2405ed;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x3abd(){const _0xcb40dc=['PostToolUse','2357020whMjmJ','6798970XLxUUR','stringify','401127DqCPaS','96EQVYFp','1761yykVVE','2886632zEDmZS','54HhQvyX','673274ClAaKw','710ygBSiB','MwVQd','7640920LxgIBd','log'];_0x3abd=function(){return _0xcb40dc;};return _0x3abd();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x49b277){const _0x3a8794=_0x2405,_0x171d29={'sBISH':function(_0x165ea1,_0x309366){return _0x165ea1(_0x309366);},'MwVQd':_0x3a8794(0x118)},_0x151467=await getEnabledSessionId(_0x49b277);if(!_0x151467)return;updateBranchTracking(_0x151467);const _0x5e6b8f=await getToken();if(!_0x5e6b8f)return;const _0x18ef0a=_0x171d29['sBISH'](getSessionEntry,_0x151467);if(_0x18ef0a){const _0x50228f={'hookSpecificOutput':{'hookEventName':_0x171d29[_0x3a8794(0x115)],'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console[_0x3a8794(0x117)](JSON[_0x3a8794(0x11b)](_0x50228f));return;}const _0x43643f={'hookSpecificOutput':{'hookEventName':_0x171d29[_0x3a8794(0x115)],'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x43643f));}
1
+ (function(_0x47e9a2,_0x1c5994){const _0x4063d5=_0x50fb,_0x565252=_0x47e9a2();while(!![]){try{const _0x1613f4=-parseInt(_0x4063d5(0xd8))/0x1*(-parseInt(_0x4063d5(0xcf))/0x2)+parseInt(_0x4063d5(0xca))/0x3*(parseInt(_0x4063d5(0xcc))/0x4)+parseInt(_0x4063d5(0xd6))/0x5+parseInt(_0x4063d5(0xd7))/0x6*(-parseInt(_0x4063d5(0xd3))/0x7)+parseInt(_0x4063d5(0xd2))/0x8*(-parseInt(_0x4063d5(0xd0))/0x9)+-parseInt(_0x4063d5(0xcd))/0xa+-parseInt(_0x4063d5(0xd4))/0xb*(-parseInt(_0x4063d5(0xc8))/0xc);if(_0x1613f4===_0x1c5994)break;else _0x565252['push'](_0x565252['shift']());}catch(_0x338af4){_0x565252['push'](_0x565252['shift']());}}}(_0x4162,0x9a5c7));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x50fb(_0x2eac33,_0x19795a){_0x2eac33=_0x2eac33-0xc7;const _0x4162ab=_0x4162();let _0x50fbd9=_0x4162ab[_0x2eac33];return _0x50fbd9;}function _0x4162(){const _0x2b5ac2=['stringify','337176sGdvbF','log','6UayiXx','PostToolUse','1901332lzloOC','12500950SjZJLJ','RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).','20oRMkZD','27xlkUVv','RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.','2715528XXqOxU','7wrItNS','66YNXnJo','wvWCO','5757080vSTrAy','2690094FJgvtB','107836HmwUWN'];_0x4162=function(){return _0x2b5ac2;};return _0x4162();}export async function postEdit(_0x4bdac6){const _0x29c7de=_0x50fb,_0x2bb85a={'qdmxJ':function(_0x18708d){return _0x18708d();},'wvWCO':function(_0x582364,_0xdfd1bd){return _0x582364(_0xdfd1bd);}},_0x524e3c=await getEnabledSessionId(_0x4bdac6);if(!_0x524e3c)return;updateBranchTracking(_0x524e3c);const _0x49bc50=await _0x2bb85a['qdmxJ'](getToken);if(!_0x49bc50)return;const _0x54475e=_0x2bb85a[_0x29c7de(0xd5)](getSessionEntry,_0x524e3c);if(_0x54475e){const _0x230a2e={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x29c7de(0xce)}};console[_0x29c7de(0xc9)](JSON['stringify'](_0x230a2e));return;}const _0x37a767={'hookSpecificOutput':{'hookEventName':_0x29c7de(0xcb),'additionalContext':_0x29c7de(0xd1)}};console['log'](JSON[_0x29c7de(0xc7)](_0x37a767));}
@@ -1 +1 @@
1
- (function(_0x144431,_0x6d2bb9){const _0x5aca62=_0x184a,_0x3a53ca=_0x144431();while(!![]){try{const _0x5893c2=-parseInt(_0x5aca62(0x9c))/0x1+parseInt(_0x5aca62(0xa0))/0x2+parseInt(_0x5aca62(0xa5))/0x3+-parseInt(_0x5aca62(0xa4))/0x4+-parseInt(_0x5aca62(0xa2))/0x5+parseInt(_0x5aca62(0x9f))/0x6*(-parseInt(_0x5aca62(0xa1))/0x7)+parseInt(_0x5aca62(0xa6))/0x8*(parseInt(_0x5aca62(0x9d))/0x9);if(_0x5893c2===_0x6d2bb9)break;else _0x3a53ca['push'](_0x3a53ca['shift']());}catch(_0x250956){_0x3a53ca['push'](_0x3a53ca['shift']());}}}(_0x2875,0x8dac5));function _0x2875(){const _0x7314c7=['878805ZAnNPm','LxCLb','454254ZqcXDU','808774oMijml','70mfUBcV','2682525jMYxFC','===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.','5596lBUKky','1932132SZOYXI','80BuvhMC','149594HZRcDg'];_0x2875=function(){return _0x7314c7;};return _0x2875();}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x184a(_0x15c888,_0x42f5e4){_0x15c888=_0x15c888-0x9c;const _0x28750f=_0x2875();let _0x184a1f=_0x28750f[_0x15c888];return _0x184a1f;}export async function preCompact(_0x30ef67){const _0x3c6542=_0x184a,_0x2590fb={'LxCLb':function(_0x388c3d){return _0x388c3d();}},_0x49ba32=await getEnabledSessionId(_0x30ef67);if(!_0x49ba32)return;try{const _0x531d2d=await _0x2590fb[_0x3c6542(0x9e)](getToken);if(!_0x531d2d)return;printBlock(_0x3c6542(0xa3));}catch{}}
1
+ (function(_0x157e42,_0x2c5e0b){const _0x2c1f0e=_0x2f70,_0x2c1994=_0x157e42();while(!![]){try{const _0x70e8ba=-parseInt(_0x2c1f0e(0x18e))/0x1*(-parseInt(_0x2c1f0e(0x18c))/0x2)+parseInt(_0x2c1f0e(0x191))/0x3+-parseInt(_0x2c1f0e(0x18b))/0x4*(-parseInt(_0x2c1f0e(0x18f))/0x5)+parseInt(_0x2c1f0e(0x18d))/0x6*(-parseInt(_0x2c1f0e(0x193))/0x7)+parseInt(_0x2c1f0e(0x18a))/0x8+parseInt(_0x2c1f0e(0x189))/0x9+-parseInt(_0x2c1f0e(0x194))/0xa;if(_0x70e8ba===_0x2c5e0b)break;else _0x2c1994['push'](_0x2c1994['shift']());}catch(_0x42f9a2){_0x2c1994['push'](_0x2c1994['shift']());}}}(_0x17bd,0xaa783));import{getToken}from'../utils/keychain.js';function _0x2f70(_0x4b18c4,_0x3d093d){_0x4b18c4=_0x4b18c4-0x189;const _0x17bdee=_0x17bd();let _0x2f7055=_0x17bdee[_0x4b18c4];return _0x2f7055;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x5c471d){const _0x33cd27=_0x2f70,_0x2f1c1a={'ZTARl':function(_0xc7c87f,_0x47352f){return _0xc7c87f(_0x47352f);},'jaDaC':function(_0x517b92){return _0x517b92();},'viAuL':function(_0x9964f6,_0x423a54){return _0x9964f6(_0x423a54);}},_0x227eff=await _0x2f1c1a[_0x33cd27(0x195)](getEnabledSessionId,_0x5c471d);if(!_0x227eff)return;try{const _0x496cea=await _0x2f1c1a[_0x33cd27(0x192)](getToken);if(!_0x496cea)return;_0x2f1c1a['viAuL'](printBlock,_0x33cd27(0x190));}catch{}}function _0x17bd(){const _0xc0d71=['4181430Ycbdjc','jaDaC','7fMVwQz','26182170FEeLrS','ZTARl','1164303bgVMFO','500912meKiYS','500984qFXotR','2SKUVDU','35484ResdKM','358877cQqzYf','55MAGwox','===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.'];_0x17bd=function(){return _0xc0d71;};return _0x17bd();}
@@ -1 +1 @@
1
- (function(_0x4019eb,_0x44f42b){const _0x19df50=_0x13e4,_0x3c51eb=_0x4019eb();while(!![]){try{const _0x55482b=-parseInt(_0x19df50(0x148))/0x1*(-parseInt(_0x19df50(0x144))/0x2)+-parseInt(_0x19df50(0x146))/0x3*(-parseInt(_0x19df50(0x149))/0x4)+parseInt(_0x19df50(0x142))/0x5*(-parseInt(_0x19df50(0x141))/0x6)+-parseInt(_0x19df50(0x13f))/0x7+-parseInt(_0x19df50(0x14a))/0x8+-parseInt(_0x19df50(0x143))/0x9+parseInt(_0x19df50(0x147))/0xa;if(_0x55482b===_0x44f42b)break;else _0x3c51eb['push'](_0x3c51eb['shift']());}catch(_0x1d0563){_0x3c51eb['push'](_0x3c51eb['shift']());}}}(_0x238b,0xd6e46));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x1839d8){const _0x5da35d=_0x13e4,_0xe5a91={'mYCBF':function(_0x2a2005,_0x1f5fca){return _0x2a2005===_0x1f5fca;},'KQlVd':'clear','ssVce':function(_0x5dab8f,_0x1ed559){return _0x5dab8f(_0x1ed559);}};let _0x21f302=_0x1839d8,_0x376729;if(!_0x1839d8){const _0x1c9393=await readHookInput();_0x21f302=_0x1c9393?.[_0x5da35d(0x145)],_0x376729=_0x1c9393?.['reason'];}if(!_0x21f302)return;_0xe5a91['mYCBF'](_0x376729,_0xe5a91[_0x5da35d(0x140)])&&_0xe5a91['ssVce'](recordEnabledSessionCleared,_0x21f302);}function _0x13e4(_0xc2fd9e,_0x176d28){_0xc2fd9e=_0xc2fd9e-0x13f;const _0x238ba6=_0x238b();let _0x13e472=_0x238ba6[_0xc2fd9e];return _0x13e472;}function _0x238b(){const _0x507d6=['session_id','48jxXrKQ','29215610GvxPKI','2SLMwSN','12688aMvzmg','6782640DyhCWY','7069125kXmRko','KQlVd','6SmoEYg','1609745AhLJqr','5496777dwbkCU','698292iGatmg'];_0x238b=function(){return _0x507d6;};return _0x238b();}
1
+ (function(_0x30b39c,_0xfa205){const _0xfd9509=_0x38b9,_0x15cfa9=_0x30b39c();while(!![]){try{const _0x40f544=-parseInt(_0xfd9509(0x6a))/0x1*(-parseInt(_0xfd9509(0x6d))/0x2)+-parseInt(_0xfd9509(0x6c))/0x3*(-parseInt(_0xfd9509(0x65))/0x4)+parseInt(_0xfd9509(0x67))/0x5+parseInt(_0xfd9509(0x71))/0x6+parseInt(_0xfd9509(0x68))/0x7*(parseInt(_0xfd9509(0x69))/0x8)+parseInt(_0xfd9509(0x6f))/0x9*(-parseInt(_0xfd9509(0x70))/0xa)+-parseInt(_0xfd9509(0x6e))/0xb*(parseInt(_0xfd9509(0x66))/0xc);if(_0x40f544===_0xfa205)break;else _0x15cfa9['push'](_0x15cfa9['shift']());}catch(_0x2abe9a){_0x15cfa9['push'](_0x15cfa9['shift']());}}}(_0x8676,0xb9f38));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x38b9(_0x646fa6,_0x36fddd){_0x646fa6=_0x646fa6-0x65;const _0x8676bf=_0x8676();let _0x38b960=_0x8676bf[_0x646fa6];return _0x38b960;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x4da56d){const _0x1499d5=_0x38b9,_0x2cbdda={'PyItC':function(_0x832885,_0x39e540){return _0x832885(_0x39e540);},'gOwlI':function(_0x1ff073){return _0x1ff073();},'bSGsy':'clear'},_0x42c6ed=process['env']['CLAUDE_SESSION_ID'];let _0x1055ad=_0x4da56d,_0x444b92;if(!_0x4da56d){if(_0x42c6ed&&!_0x2cbdda['PyItC'](isSessionEnabled,_0x42c6ed))return;const _0x36b2ff=await _0x2cbdda['gOwlI'](readHookInput);_0x1055ad=_0x36b2ff?.['session_id']||_0x42c6ed,_0x444b92=_0x36b2ff?.[_0x1499d5(0x6b)];}if(!_0x1055ad)return;_0x444b92===_0x2cbdda[_0x1499d5(0x72)]&&recordEnabledSessionCleared(_0x1055ad);}function _0x8676(){const _0x38884c=['48UcPxJv','1483405sqYJAo','7fwGjMt','1167416aZGDDf','1300911obXxBZ','reason','1149aZKHLe','2fBXXxC','7019969sxbKIV','743913BqIHTm','10XDGJrn','4396668JwkIyE','bSGsy','9616IrpyRf'];_0x8676=function(){return _0x38884c;};return _0x8676();}