@ranger-testing/ranger-cli 2.4.2 → 2.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
- const _0x5a0d33=_0x2143;(function(_0x28d253,_0x40a3d5){const _0x47e3be=_0x2143,_0x421cac=_0x28d253();while(!![]){try{const _0x3b4ab9=parseInt(_0x47e3be(0x1dc))/0x1+-parseInt(_0x47e3be(0x1ee))/0x2+-parseInt(_0x47e3be(0x1f3))/0x3*(parseInt(_0x47e3be(0x1f4))/0x4)+parseInt(_0x47e3be(0x1ed))/0x5*(-parseInt(_0x47e3be(0x1e9))/0x6)+-parseInt(_0x47e3be(0x1e7))/0x7+-parseInt(_0x47e3be(0x1fb))/0x8*(-parseInt(_0x47e3be(0x1e1))/0x9)+-parseInt(_0x47e3be(0x1de))/0xa*(-parseInt(_0x47e3be(0x1eb))/0xb);if(_0x3b4ab9===_0x40a3d5)break;else _0x421cac['push'](_0x421cac['shift']());}catch(_0x5cbccb){_0x421cac['push'](_0x421cac['shift']());}}}(_0x2618,0xc2b35));function _0x2618(){const _0x1edfe9=['5926963qNdHkF','object','6YcifPq','madiB','22AIdlPq','false','2339485pHuofd','583316agXOnJ','No\x20configuration\x20set\x20for\x20\x22','iffNI','Bzdwy','headless','14073HwgnOT','508hJNxMd','\x22\x20not\x20found',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','true','rJqFH','allowInsecureLocalhost','mWNVH','8FZLeOi','includes','bWzYP','1156946tEEdOY','gsRbQ','2980010cxlYYk','Profile\x20\x22','PiYKQ','11219094VRABsj','DWBqS','xXWOm','GSswR','log','OZzDl'];_0x2618=function(){return _0x1edfe9;};return _0x2618();}function _0x2143(_0x1ee52d,_0x1d3cc5){_0x1ee52d=_0x1ee52d-0x1da;const _0x261893=_0x2618();let _0x214378=_0x261893[_0x1ee52d];return _0x214378;}import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=[_0x5a0d33(0x1f2),_0x5a0d33(0x1f9)];function parseValue(_0x153e74,_0x2697df){const _0x49e294=_0x5a0d33,_0x1679bf={'QykVE':function(_0x333503,_0x52566c){return _0x333503===_0x52566c;},'mWNVH':_0x49e294(0x1f7),'gsRbQ':_0x49e294(0x1ec)};if(BOOLEAN_KEYS[_0x49e294(0x1da)](_0x153e74)){if(_0x1679bf['QykVE'](_0x2697df,_0x1679bf[_0x49e294(0x1fa)]))return!![];if(_0x2697df===_0x1679bf[_0x49e294(0x1dd)])return![];throw new Error('Invalid\x20value\x20for\x20'+_0x153e74+_0x49e294(0x1f6));}return _0x2697df;}export async function configSet(_0x533ebf,_0xa792a,_0x1b162a){const _0x16cc90=_0x5a0d33,_0x5bf705={'xXWOm':function(_0x352d9b,_0x5b7772){return _0x352d9b(_0x5b7772);},'uiqqs':function(_0x45e508,_0x23b16b){return _0x45e508(_0x23b16b);},'OZzDl':function(_0x369816,_0x1f4794,_0xaff229){return _0x369816(_0x1f4794,_0xaff229);},'madiB':function(_0x5cdc11,_0x5baa05,_0x568676,_0x5e96df){return _0x5cdc11(_0x5baa05,_0x568676,_0x5e96df);}},_0x5b9f08=getEnvDir(_0x533ebf);if(!_0x5bf705[_0x16cc90(0x1e3)](existsSync,_0x5b9f08))throw new Error(_0x16cc90(0x1df)+_0x533ebf+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x533ebf);const _0x181a10=await _0x5bf705['uiqqs'](loadSettings,_0x533ebf),_0x4743a8=_0x5bf705[_0x16cc90(0x1e6)](parseValue,_0xa792a,_0x1b162a);_0x5bf705[_0x16cc90(0x1ea)](setNestedValue,_0x181a10,_0xa792a,_0x4743a8),await saveSettings(_0x533ebf,_0x181a10),console['log']('Set\x20'+_0xa792a+'\x20=\x20'+_0x4743a8);}export async function configGet(_0x53e392,_0x142bfe){const _0x15e838=_0x5a0d33,_0x3d38fa={'bWzYP':function(_0x1c9ffc,_0x20dba7){return _0x1c9ffc(_0x20dba7);},'iffNI':function(_0x16fe1d,_0x8f2381){return _0x16fe1d(_0x8f2381);},'YYjGZ':function(_0x48dd2f,_0x22f5eb,_0x51cf14){return _0x48dd2f(_0x22f5eb,_0x51cf14);},'PiYKQ':function(_0x18669b,_0x30464c){return _0x18669b===_0x30464c;},'UgzhM':_0x15e838(0x1e8)},_0x5abbc3=_0x3d38fa[_0x15e838(0x1db)](getEnvDir,_0x53e392);if(!existsSync(_0x5abbc3))throw new Error(_0x15e838(0x1df)+_0x53e392+'\x22\x20does\x20not\x20exist.');const _0x151f36=await _0x3d38fa[_0x15e838(0x1f0)](loadSettings,_0x53e392),_0x45067f=_0x3d38fa['YYjGZ'](getNestedValue,_0x151f36,_0x142bfe);if(_0x3d38fa[_0x15e838(0x1e0)](_0x45067f,undefined))console['log']('(not\x20set)');else typeof _0x45067f===_0x3d38fa['UgzhM']?console[_0x15e838(0x1e5)](JSON['stringify'](_0x45067f,null,0x2)):console[_0x15e838(0x1e5)](_0x45067f);}export async function configList(_0x4ca800){const _0x360d57=_0x5a0d33,_0x19b545={'GSswR':function(_0x4f0481,_0x190b58){return _0x4f0481(_0x190b58);},'Bzdwy':function(_0x1923a8,_0xd4b71d){return _0x1923a8(_0xd4b71d);},'DWBqS':function(_0xdcde7e,_0x5c0e70){return _0xdcde7e(_0x5c0e70);}},_0xedf3da=getSettingsPath(_0x4ca800);if(!existsSync(_0xedf3da)){const _0x23121e=_0x19b545[_0x360d57(0x1e4)](getEnvDir,_0x4ca800);if(!_0x19b545[_0x360d57(0x1f1)](existsSync,_0x23121e))throw new Error(_0x360d57(0x1df)+_0x4ca800+'\x22\x20does\x20not\x20exist.');console[_0x360d57(0x1e5)]('No\x20configuration\x20set\x20for\x20\x22'+_0x4ca800+'\x22');return;}const _0x1518ba=await _0x19b545[_0x360d57(0x1e2)](loadSettings,_0x4ca800),_0x1c3289=_0x19b545['GSswR'](formatSettings,_0x1518ba);!_0x1c3289?console['log'](_0x360d57(0x1ef)+_0x4ca800+'\x22'):console['log'](_0x1c3289);}export async function configUnset(_0x1a21cf,_0x1dbbb3){const _0x10a1a=_0x5a0d33,_0x213c84={'lQQNz':function(_0x565ba5,_0x51b57d,_0x2a0647){return _0x565ba5(_0x51b57d,_0x2a0647);},'rJqFH':function(_0x1406f8,_0x14276b,_0x7931ee){return _0x1406f8(_0x14276b,_0x7931ee);}},_0x2c622e=getEnvDir(_0x1a21cf);if(!existsSync(_0x2c622e))throw new Error(_0x10a1a(0x1df)+_0x1a21cf+'\x22\x20does\x20not\x20exist.');const _0x18ba85=await loadSettings(_0x1a21cf),_0x45671b=_0x213c84['lQQNz'](deleteNestedValue,_0x18ba85,_0x1dbbb3);_0x45671b?(await _0x213c84[_0x10a1a(0x1f8)](saveSettings,_0x1a21cf,_0x18ba85),console['log']('Removed\x20'+_0x1dbbb3)):console['log']('Key\x20\x22'+_0x1dbbb3+_0x10a1a(0x1f5));}
1
+ const _0x2bca89=_0x4529;(function(_0x34023c,_0x17010c){const _0x3fc782=_0x4529,_0xc40341=_0x34023c();while(!![]){try{const _0x47aadd=parseInt(_0x3fc782(0xdc))/0x1+-parseInt(_0x3fc782(0xec))/0x2*(parseInt(_0x3fc782(0xe3))/0x3)+parseInt(_0x3fc782(0xdd))/0x4+-parseInt(_0x3fc782(0xd8))/0x5+-parseInt(_0x3fc782(0xe9))/0x6+-parseInt(_0x3fc782(0xf0))/0x7+parseInt(_0x3fc782(0xe5))/0x8;if(_0x47aadd===_0x17010c)break;else _0xc40341['push'](_0xc40341['shift']());}catch(_0x18531b){_0xc40341['push'](_0xc40341['shift']());}}}(_0x2b2f,0xc9d07));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless',_0x2bca89(0xda)];function _0x4529(_0x5de3f1,_0x3000d7){_0x5de3f1=_0x5de3f1-0xd8;const _0x2b2f42=_0x2b2f();let _0x45295b=_0x2b2f42[_0x5de3f1];return _0x45295b;}function _0x2b2f(){const _0x2c2417=['gPCVf','460698fMGFmZ','hZRYk','rdMwW','2SVEuRi','pPvos','\x22\x20does\x20not\x20exist.',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','2012115rfPrzi','3669775HlAqKS','stringify','allowInsecureLocalhost','KZjOP','1310972VtHedx','2924580JYgQzW','true','No\x20configuration\x20set\x20for\x20\x22','Profile\x20\x22','pGqOt','jWkIm','1099965wVuwFQ','dvpfS','1994816iZZCyY','(not\x20set)','log'];_0x2b2f=function(){return _0x2c2417;};return _0x2b2f();}function parseValue(_0xce982f,_0x27f775){const _0x1ad689=_0x2bca89,_0xab15b5={'pGqOt':function(_0x37d845,_0x32321a){return _0x37d845===_0x32321a;},'nXksu':_0x1ad689(0xde)};if(BOOLEAN_KEYS['includes'](_0xce982f)){if(_0xab15b5[_0x1ad689(0xe1)](_0x27f775,_0xab15b5['nXksu']))return!![];if(_0x27f775==='false')return![];throw new Error('Invalid\x20value\x20for\x20'+_0xce982f+_0x1ad689(0xef));}return _0x27f775;}export async function configSet(_0xa1a90,_0x1fc332,_0x5905fd){const _0x42a58a=_0x2bca89,_0x1d805c={'jWkIm':function(_0x59367f,_0x4d3f77){return _0x59367f(_0x4d3f77);},'pPvos':function(_0x258880,_0x510dcb,_0x42855c){return _0x258880(_0x510dcb,_0x42855c);}},_0x1cb933=getEnvDir(_0xa1a90);if(!_0x1d805c[_0x42a58a(0xe2)](existsSync,_0x1cb933))throw new Error('Profile\x20\x22'+_0xa1a90+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0xa1a90);const _0x173078=await loadSettings(_0xa1a90),_0x1a72ad=parseValue(_0x1fc332,_0x5905fd);setNestedValue(_0x173078,_0x1fc332,_0x1a72ad),await _0x1d805c[_0x42a58a(0xed)](saveSettings,_0xa1a90,_0x173078),console['log']('Set\x20'+_0x1fc332+'\x20=\x20'+_0x1a72ad);}export async function configGet(_0x1bd98b,_0x2972ef){const _0x3160f6=_0x2bca89,_0x46680b={'VbifL':function(_0x23fb3b,_0x48bd33,_0x479a4d){return _0x23fb3b(_0x48bd33,_0x479a4d);},'rdMwW':function(_0x53002a,_0x1d9ac3){return _0x53002a===_0x1d9ac3;},'KZjOP':'object'},_0xfefe76=getEnvDir(_0x1bd98b);if(!existsSync(_0xfefe76))throw new Error(_0x3160f6(0xe0)+_0x1bd98b+'\x22\x20does\x20not\x20exist.');const _0x1f4045=await loadSettings(_0x1bd98b),_0x1429f0=_0x46680b['VbifL'](getNestedValue,_0x1f4045,_0x2972ef);if(_0x1429f0===undefined)console[_0x3160f6(0xe7)](_0x3160f6(0xe6));else _0x46680b[_0x3160f6(0xeb)](typeof _0x1429f0,_0x46680b[_0x3160f6(0xdb)])?console['log'](JSON[_0x3160f6(0xd9)](_0x1429f0,null,0x2)):console[_0x3160f6(0xe7)](_0x1429f0);}export async function configList(_0x5ea301){const _0xfed4c3=_0x2bca89,_0x3af125={'dvpfS':function(_0x14ff7a,_0x21aa15){return _0x14ff7a(_0x21aa15);},'hZRYk':function(_0x410bc0,_0x46d379){return _0x410bc0(_0x46d379);}},_0x1335d0=_0x3af125[_0xfed4c3(0xe4)](getSettingsPath,_0x5ea301);if(!existsSync(_0x1335d0)){const _0x27cce0=getEnvDir(_0x5ea301);if(!_0x3af125[_0xfed4c3(0xea)](existsSync,_0x27cce0))throw new Error('Profile\x20\x22'+_0x5ea301+_0xfed4c3(0xee));console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x5ea301+'\x22');return;}const _0x4cba25=await loadSettings(_0x5ea301),_0x1b2bf2=formatSettings(_0x4cba25);!_0x1b2bf2?console['log'](_0xfed4c3(0xdf)+_0x5ea301+'\x22'):console['log'](_0x1b2bf2);}export async function configUnset(_0x4e322a,_0x1586f3){const _0xd5b84=_0x2bca89,_0x3776a9={'gPCVf':function(_0x342f8f,_0x18e4e5){return _0x342f8f(_0x18e4e5);}},_0x2111ec=_0x3776a9['gPCVf'](getEnvDir,_0x4e322a);if(!_0x3776a9[_0xd5b84(0xe8)](existsSync,_0x2111ec))throw new Error(_0xd5b84(0xe0)+_0x4e322a+'\x22\x20does\x20not\x20exist.');const _0xade04c=await _0x3776a9['gPCVf'](loadSettings,_0x4e322a),_0x17e590=deleteNestedValue(_0xade04c,_0x1586f3);_0x17e590?(await saveSettings(_0x4e322a,_0xade04c),console['log']('Removed\x20'+_0x1586f3)):console['log']('Key\x20\x22'+_0x1586f3+'\x22\x20not\x20found');}
@@ -1 +1 @@
1
- const _0x4fbd60=_0x49f4;(function(_0x3cf334,_0x273ad9){const _0x4b03cf=_0x49f4,_0x596ced=_0x3cf334();while(!![]){try{const _0x225770=parseInt(_0x4b03cf(0x143))/0x1+-parseInt(_0x4b03cf(0x146))/0x2*(parseInt(_0x4b03cf(0x151))/0x3)+-parseInt(_0x4b03cf(0x14b))/0x4+-parseInt(_0x4b03cf(0x13d))/0x5*(-parseInt(_0x4b03cf(0x14e))/0x6)+parseInt(_0x4b03cf(0x13b))/0x7+parseInt(_0x4b03cf(0x14c))/0x8+-parseInt(_0x4b03cf(0x13c))/0x9;if(_0x225770===_0x273ad9)break;else _0x596ced['push'](_0x596ced['shift']());}catch(_0xcdf8c3){_0x596ced['push'](_0x596ced['shift']());}}}(_0x1cb6,0x3e2f1));import{readdir,stat}from'fs/promises';import{join}from'path';function _0x1cb6(){const _0x613860=['sort','log','includes','322736QtJnJw','3373432hspoZN','LlGLx','218292sXHBCv','\x20\x20\x20\x20\x20\x20Details:\x20','baseUrl','5547CREYHz','push','startsWith','436548TsucpL','4479417yJooCK','25DRinjb','isDirectory','\x20\x20\x20\x20\x20\x20URL:\x20','xKWNV','.txt','gnJvG','246656ROPgwq','sessions','length','86PbiLKB','local'];_0x1cb6=function(){return _0x613860;};return _0x1cb6();}import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';function _0x49f4(_0x4f2f66,_0x39ea8c){_0x4f2f66=_0x4f2f66-0x13b;const _0x1cb6a8=_0x1cb6();let _0x49f457=_0x1cb6a8[_0x4f2f66];return _0x49f457;}const NON_ENV_DIRS=[_0x4fbd60(0x144),'bug-bashes','reports','local','ci'];export async function getEnvNames(){const _0x52b723=_0x4fbd60,_0x53ff07={'Ztfkw':function(_0x42b4c5){return _0x42b4c5();},'xKWNV':function(_0x1bd2dd,_0x557d14,_0x50ea30){return _0x1bd2dd(_0x557d14,_0x50ea30);},'pJjQI':function(_0x2aaacb,_0x8de35a){return _0x2aaacb(_0x8de35a);},'LlGLx':function(_0x13489c,_0x1afc62){return _0x13489c(_0x1afc62);},'CQRYZ':_0x52b723(0x147),'KcSlG':_0x52b723(0x141),'gnJvG':'legacy'},_0x418369=getRangerDir();if(!existsSync(_0x418369))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x3554a2=await _0x53ff07['Ztfkw'](readActiveProfileName),_0x50b2f6=[],_0x587ef4={},_0x13b164=_0x53ff07[_0x52b723(0x140)](join,_0x418369,_0x52b723(0x147));if(_0x53ff07['pJjQI'](existsSync,_0x13b164)){const _0x232aa9=await _0x53ff07[_0x52b723(0x14d)](readdir,_0x13b164);for(const _0x189f02 of _0x232aa9){const _0xa06e55=join(_0x13b164,_0x189f02),_0xbeaedc=await stat(_0xa06e55);_0xbeaedc[_0x52b723(0x13e)]()&&(_0x50b2f6['push'](_0x189f02),_0x587ef4[_0x189f02]=_0x53ff07['CQRYZ']);}}const _0x3ac549=join(_0x418369,'ci');if(_0x53ff07['pJjQI'](existsSync,_0x3ac549)){const _0x5817f5=await _0x53ff07['LlGLx'](readdir,_0x3ac549);for(const _0xc87d66 of _0x5817f5){const _0x3aa39b=join(_0x3ac549,_0xc87d66),_0x580958=await stat(_0x3aa39b);_0x580958[_0x52b723(0x13e)]()&&(_0x50b2f6[_0x52b723(0x152)](_0xc87d66),_0x587ef4[_0xc87d66]='ci');}}const _0x3dcc38=await readdir(_0x418369);for(const _0x55d04a of _0x3dcc38){if(NON_ENV_DIRS['includes'](_0x55d04a))continue;if(_0x55d04a[_0x52b723(0x153)]('.'))continue;if(_0x55d04a['endsWith'](_0x53ff07['KcSlG']))continue;const _0x2b1a74=_0x53ff07[_0x52b723(0x140)](join,_0x418369,_0x55d04a),_0x4182e1=await stat(_0x2b1a74);_0x4182e1['isDirectory']()&&existsSync(join(_0x2b1a74,'settings.json'))&&(!_0x50b2f6[_0x52b723(0x14a)](_0x55d04a)&&(_0x50b2f6['push'](_0x55d04a),_0x587ef4[_0x55d04a]=_0x53ff07[_0x52b723(0x142)]));}return{'envNames':_0x50b2f6,'activeEnv':_0x3554a2,'envTypes':_0x587ef4};}export async function envList(){const _0x2861e5=_0x4fbd60,_0x46ede1={'jBfnp':'\x0aNo\x20profiles\x20found.','vbLga':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','UfXcH':function(_0x35ba86,_0x172712){return _0x35ba86===_0x172712;},'cuYaJ':function(_0x1cc565,_0x5091df){return _0x1cc565===_0x5091df;}},{envNames:_0xa2f4a2,activeEnv:_0x286a1c,envTypes:_0xef44aa}=await getEnvNames();if(_0xa2f4a2[_0x2861e5(0x145)]===0x0){console['log'](_0x46ede1['jBfnp']),console['log'](_0x46ede1['vbLga']);return;}console['log']('\x0aProfiles:');for(const _0x527d94 of _0xa2f4a2[_0x2861e5(0x148)]()){const _0x20ab70=_0x46ede1['UfXcH'](_0x527d94,_0x286a1c),_0x58f3fa=_0xef44aa[_0x527d94]||'local',_0x411cfc=await loadSettings(_0x527d94),_0x2dc841=_0x46ede1['cuYaJ'](_0x58f3fa,'legacy')?'':'\x20['+_0x58f3fa+']';console[_0x2861e5(0x149)]('\x20\x20'+(_0x20ab70?'*\x20':'\x20\x20')+_0x527d94+_0x2dc841),_0x411cfc[_0x2861e5(0x150)]&&console[_0x2861e5(0x149)](_0x2861e5(0x13f)+_0x411cfc[_0x2861e5(0x150)]),_0x411cfc['environmentDetails']&&console['log'](_0x2861e5(0x14f)+_0x411cfc['environmentDetails']);}_0x286a1c&&console['log']('\x0a*\x20=\x20active\x20profile');}
1
+ function _0x5c3f(){const _0x369673=['DtCxp','DnhvI','push','891330KIMdkx','.txt','195021JaDoiN','HvySc','isDirectory','\x20\x20\x20\x20\x20\x20URL:\x20','reports','includes','bug-bashes','TcYpv','711iAiWhG','9550DHogMZ','local','hPzJc','SXsPQ','9200jNKFoP','log','482424wNbexN','\x20\x20\x20\x20\x20\x20Details:\x20','907300jjXqna','baseUrl','1389GKVFNu','30LKdDXZ','\x0aProfiles:','244GbZUjT','environmentDetails','xBYyo','sPWTw','7wspZBy','XWVRc','ZtcGa','\x0a*\x20=\x20active\x20profile','Run:\x20ranger\x20profile\x20add\x20<profile-name>'];_0x5c3f=function(){return _0x369673;};return _0x5c3f();}const _0x24ad4c=_0x7ca1;(function(_0x2cb6db,_0x10f129){const _0x4a2102=_0x7ca1,_0x479323=_0x2cb6db();while(!![]){try{const _0x562f1c=parseInt(_0x4a2102(0x100))/0x1+-parseInt(_0x4a2102(0xf0))/0x2*(parseInt(_0x4a2102(0xef))/0x3)+parseInt(_0x4a2102(0xf2))/0x4*(parseInt(_0x4a2102(0x109))/0x5)+-parseInt(_0x4a2102(0xeb))/0x6*(parseInt(_0x4a2102(0xf6))/0x7)+-parseInt(_0x4a2102(0xe9))/0x8*(-parseInt(_0x4a2102(0x108))/0x9)+-parseInt(_0x4a2102(0xed))/0xa+-parseInt(_0x4a2102(0xfe))/0xb;if(_0x562f1c===_0x10f129)break;else _0x479323['push'](_0x479323['shift']());}catch(_0xcb8d40){_0x479323['push'](_0x479323['shift']());}}}(_0x5c3f,0x22fa8));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x7ca1(_0x326ad5,_0x50c8cd){_0x326ad5=_0x326ad5-0xe6;const _0x5c3fc5=_0x5c3f();let _0x7ca1d0=_0x5c3fc5[_0x326ad5];return _0x7ca1d0;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions',_0x24ad4c(0x106),_0x24ad4c(0x104),'local','ci'];export async function getEnvNames(){const _0x158e1e=_0x24ad4c,_0x1d3c66={'DnhvI':function(_0x28dc2a){return _0x28dc2a();},'xBYyo':_0x158e1e(0xe6),'DtCxp':function(_0x5a8c7d,_0xc22e5d){return _0x5a8c7d(_0xc22e5d);},'SXsPQ':function(_0x4ebe92,_0x388193){return _0x4ebe92(_0x388193);},'giXfX':function(_0x526ebc,_0xd491ec,_0xf46e7){return _0x526ebc(_0xd491ec,_0xf46e7);},'HvySc':function(_0x3ac02c,_0x22204a){return _0x3ac02c(_0x22204a);},'bOpnf':function(_0x5bef91,_0xe98fb){return _0x5bef91(_0xe98fb);},'hPzJc':function(_0x3bdd01,_0x28006e,_0x3522af){return _0x3bdd01(_0x28006e,_0x3522af);},'sPWTw':'legacy'},_0x2b16b5=_0x1d3c66[_0x158e1e(0xfc)](getRangerDir);if(!existsSync(_0x2b16b5))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x441c8a=await readActiveProfileName(),_0x57a33a=[],_0x3416fb={},_0x30c18d=join(_0x2b16b5,_0x1d3c66[_0x158e1e(0xf4)]);if(_0x1d3c66['DtCxp'](existsSync,_0x30c18d)){const _0x377e3d=await _0x1d3c66[_0x158e1e(0xe8)](readdir,_0x30c18d);for(const _0x10e57b of _0x377e3d){const _0x378cb9=join(_0x30c18d,_0x10e57b),_0x1b7616=await stat(_0x378cb9);_0x1b7616[_0x158e1e(0x102)]()&&(_0x57a33a[_0x158e1e(0xfd)](_0x10e57b),_0x3416fb[_0x10e57b]=_0x158e1e(0xe6));}}const _0x551377=_0x1d3c66['giXfX'](join,_0x2b16b5,'ci');if(existsSync(_0x551377)){const _0x16d837=await _0x1d3c66[_0x158e1e(0x101)](readdir,_0x551377);for(const _0x4ec996 of _0x16d837){const _0x45ae8e=join(_0x551377,_0x4ec996),_0x686598=await _0x1d3c66['SXsPQ'](stat,_0x45ae8e);_0x686598[_0x158e1e(0x102)]()&&(_0x57a33a[_0x158e1e(0xfd)](_0x4ec996),_0x3416fb[_0x4ec996]='ci');}}const _0x13832d=await _0x1d3c66[_0x158e1e(0xfb)](readdir,_0x2b16b5);for(const _0x6c5a5 of _0x13832d){if(NON_ENV_DIRS[_0x158e1e(0x105)](_0x6c5a5))continue;if(_0x6c5a5['startsWith']('.'))continue;if(_0x6c5a5['endsWith'](_0x158e1e(0xff)))continue;const _0x22330d=_0x1d3c66['giXfX'](join,_0x2b16b5,_0x6c5a5),_0x413920=await _0x1d3c66['bOpnf'](stat,_0x22330d);_0x413920['isDirectory']()&&existsSync(_0x1d3c66[_0x158e1e(0xe7)](join,_0x22330d,'settings.json'))&&(!_0x57a33a[_0x158e1e(0x105)](_0x6c5a5)&&(_0x57a33a['push'](_0x6c5a5),_0x3416fb[_0x6c5a5]=_0x1d3c66[_0x158e1e(0xf5)]));}return{'envNames':_0x57a33a,'activeEnv':_0x441c8a,'envTypes':_0x3416fb};}export async function envList(){const _0x38af33=_0x24ad4c,_0x1ba2c0={'wvFRI':'\x0aNo\x20profiles\x20found.','XWVRc':_0x38af33(0xfa),'BNEDY':function(_0x113baa,_0x6b7f0){return _0x113baa===_0x6b7f0;},'ZtcGa':_0x38af33(0xe6),'TcYpv':function(_0x485aee,_0x471efe){return _0x485aee===_0x471efe;},'enwwf':'legacy'},{envNames:_0x898750,activeEnv:_0x37fd13,envTypes:_0x1e3ef9}=await getEnvNames();if(_0x898750['length']===0x0){console['log'](_0x1ba2c0['wvFRI']),console['log'](_0x1ba2c0[_0x38af33(0xf7)]);return;}console[_0x38af33(0xea)](_0x38af33(0xf1));for(const _0x3db165 of _0x898750['sort']()){const _0x1e8c3f=_0x1ba2c0['BNEDY'](_0x3db165,_0x37fd13),_0x5df3d8=_0x1e3ef9[_0x3db165]||_0x1ba2c0[_0x38af33(0xf8)],_0x452eb9=await loadSettings(_0x3db165),_0x150511=_0x1ba2c0[_0x38af33(0x107)](_0x5df3d8,_0x1ba2c0['enwwf'])?'':'\x20['+_0x5df3d8+']';console['log']('\x20\x20'+(_0x1e8c3f?'*\x20':'\x20\x20')+_0x3db165+_0x150511),_0x452eb9[_0x38af33(0xee)]&&console[_0x38af33(0xea)](_0x38af33(0x103)+_0x452eb9[_0x38af33(0xee)]),_0x452eb9['environmentDetails']&&console[_0x38af33(0xea)](_0x38af33(0xec)+_0x452eb9[_0x38af33(0xf3)]);}_0x37fd13&&console['log'](_0x38af33(0xf9));}
@@ -1 +1 @@
1
- const _0x5dcc67=_0x2bed;function _0x45f7(){const _0x53e52d=['\x0a\x20\x20\x20Scenarios:','ngElm','pVfsY','dashboardUrl','from','timing','spatial','totalCount','Next\x20page:\x20ranger\x20list\x20--offset\x20','browserSessionId','error','all','split','zmWId','\x0a✅\x20Scenario\x20added','Dlhjk','location','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','rRZwb','dhjRp','toFixed','assetUrl','\x20scenarios.','eDMuP','xDruZ','\x20Session\x20','buhON','authorName','assets','kjynm','pekqZ','dRPYN','dCJzb','checklistItems','get','status','2466792FStIbx','git\x20remote\x20get-url\x20origin','4mMblNG','zHqDC','2083182BhaRbU','active-feature.txt','output','twCpV','xmcWi','join','hBWby','trimEnd','OzYti','DKDRW','list','stdout','\x0a⚠️\x20\x20','wdbcC','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','vQYcM','selected','PTIQm','comment_','items','notes','xAEFR','blockedItems','latestReview','OanMn','CLAUDE_SESSION_ID','\x0a📋\x20Feedback\x20for:\x20','twdgc','LNkbi','498707qGUbhy','WxBNu','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','round','domRef','DdHnT','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x20\x20\x20▶️\x20Started\x20session\x20','.png','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','closed','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','stdin','offset','\x0aAvailable\x20scenarios:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','incompleteReason','repeat','unaddressedComments','\x20in\x20progress','in_progress','xPsQN','/artifacts/','screenshotUrls','aykNp','\x20\x20\x20Created:\x20','selector','name','HwjRE','DtZNL','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','incompleteItems','CJyRz','dpjIC','No\x20sessions\x20found.','stringify','push','after','FnCxV','4035368KagSeX','approved','screenshot','position','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','MWGYd','pipe','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20Expected\x20flow:','scenario','\x0a✅\x20Scenario\x20updated','createdAt','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','218319uuaiNr','length','assetType','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','byZfY','JUwsy','prompt','faoKG','xbqHG','terminalReason','replace','currentSessionId','\x1b[1m','2HLoepI','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','point','\x20concluded.','\x20\x20\x20Branch:\x20','xoifZ','/api/v1/mcp/browser-sessions/','\x0aGenerating\x20report...','toLocaleDateString','blockedReason','pop','\x20\x20\x20\x20\x20Branch:\x20','isKeyStep','verified','\x20\x20\x20Description:\x20','description','verifiedItems','aPVkg','Showing\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x20/\x20','nddiX','tQwRM','7mwWonw','env','log','\x20--include-deleted','heiix','completed','\x20of\x20','doBjr','includeDeleted','Rdnaz','\x20\x20💬\x20','QscPi','isTTY','ZjWrJ','sessionId','completedAt','map','canceledReason','Scenario\x20','parentItemId','verification_in_progress','qBxZF','bruPn','element','ogfPe','Wtosj','hPzBb','reports','\x20>\x20','\x0a✅\x20Session\x20','Hzjdc','\x0a✅\x20Restored\x20feature\x20review:\x20','type','\x0aCreating\x20feature\x20review...','No\x20active\x20session\x20for\x20this\x20feature\x20review.','lyVRk',':\x20\x22','authorEmail','RNSjP','1160815OCxiwo','gitBranch','HIKbd','\x20(v','.md','JUrdT','coordinates','sBbSn','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','HnSDP','tuBMW','EiGGs','EvBMj','\x20incomplete','YFcUb','mEtCj','\x20\x20\x20\x20\x20\x20Incomplete:\x20','textContent','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','pPWHZ','blocked','filter','ozeSS','\x0a✅\x20Report\x20generated:\x20','GzFTN','stats','version','\x20—\x20','4070680hREnHG','Current\x20session\x20not\x20found.','Cannot\x20conclude\x20session\x20with\x20status:\x20','find','MgffH','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','HsDaM','incomplete','\x20—\x20no\x20comments','Not\x20in\x20a\x20git\x20repository.','numeric','\x0a❌\x20Invalid\x20scenario\x20index:\x20','utf-8','exit','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'];_0x45f7=function(){return _0x53e52d;};return _0x45f7();}(function(_0x191bd8,_0x248f62){const _0xc1a8f8=_0x2bed,_0x248b05=_0x191bd8();while(!![]){try{const _0x341500=-parseInt(_0xc1a8f8(0x258))/0x1*(-parseInt(_0xc1a8f8(0x29a))/0x2)+-parseInt(_0xc1a8f8(0x28d))/0x3*(-parseInt(_0xc1a8f8(0x239))/0x4)+-parseInt(_0xc1a8f8(0x1e7))/0x5+-parseInt(_0xc1a8f8(0x23b))/0x6*(-parseInt(_0xc1a8f8(0x1c0))/0x7)+-parseInt(_0xc1a8f8(0x280))/0x8+-parseInt(_0xc1a8f8(0x237))/0x9+parseInt(_0xc1a8f8(0x203))/0xa;if(_0x341500===_0x248f62)break;else _0x248b05['push'](_0x248b05['shift']());}catch(_0xa6a1d8){_0x248b05['push'](_0x248b05['shift']());}}}(_0x45f7,0x4cec1));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x16eea6 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';function _0x2bed(_0x50bf79,_0xb1a3f9){_0x50bf79=_0x50bf79-0x1b7;const _0x45f708=_0x45f7();let _0x2bed8a=_0x45f708[_0x50bf79];return _0x2bed8a;}import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE=_0x5dcc67(0x23c),bold=_0x469f40=>_0x5dcc67(0x299)+_0x469f40+'\x1b[0m';function getGitRepoUrl(){const _0x4aeb06=_0x5dcc67,_0x38747d={'QhFXm':_0x4aeb06(0x210)};try{const _0x5cb52a=execSync(_0x4aeb06(0x238),{'encoding':_0x38747d['QhFXm'],'stdio':['pipe',_0x4aeb06(0x286),_0x4aeb06(0x286)]})['trim']();return _0x5cb52a['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x15cba6=_0x5dcc67,_0xb8af76={'FNaUe':function(_0xfc0580,_0x19a077,_0xfecaf1){return _0xfc0580(_0x19a077,_0xfecaf1);},'aPVkg':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','dGWYZ':'utf-8','sBbSn':_0x15cba6(0x286)};try{return _0xb8af76['FNaUe'](execSync,_0xb8af76[_0x15cba6(0x1ba)],{'encoding':_0xb8af76['dGWYZ'],'stdio':['pipe',_0x15cba6(0x286),_0xb8af76[_0x15cba6(0x1ee)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2a7662=_0x5dcc67,_0x42b9ea={'uWKGH':function(_0x2e72d1,_0x4364d7,_0x205486){return _0x2e72d1(_0x4364d7,_0x205486);},'nunjL':function(_0x2b29a1){return _0x2b29a1();},'YFcUb':function(_0x576665,_0x445c06){return _0x576665(_0x445c06);},'faoKG':_0x2a7662(0x210)},_0x43f9b5=_0x42b9ea['uWKGH'](join,_0x42b9ea['nunjL'](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x42b9ea[_0x2a7662(0x1f5)](existsSync,_0x43f9b5))return null;try{const _0xa7d666=await readFile(_0x43f9b5,_0x42b9ea[_0x2a7662(0x294)]);return _0xa7d666['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x56a2a8){const _0x3b3bca=_0x5dcc67,_0x29baae={'OzYti':function(_0x49ed9a,_0x43cc8b,_0x37bdde){return _0x49ed9a(_0x43cc8b,_0x37bdde);},'uhSEg':function(_0x55b517,_0x3e8a85){return _0x55b517(_0x3e8a85);},'DtZNL':function(_0x2fd18f,_0x6b9995,_0x35bbb9,_0x1e69ef){return _0x2fd18f(_0x6b9995,_0x35bbb9,_0x1e69ef);},'dRPYN':_0x3b3bca(0x210)},_0x5aa5bf=getRangerDir(),_0x39ef6b=_0x29baae[_0x3b3bca(0x243)](join,_0x5aa5bf,ACTIVE_FEATURE_FILE);!_0x29baae['uhSEg'](existsSync,_0x5aa5bf)&&await mkdir(_0x5aa5bf,{'recursive':!![]}),await _0x29baae[_0x3b3bca(0x275)](writeFile,_0x39ef6b,_0x56a2a8,_0x29baae[_0x3b3bca(0x232)]);}function getProgressDisplay(_0x3aeef4){const _0x83f429=_0x5dcc67,_0x27e7c1={'OYgVD':function(_0x3b96de,_0x37f913){return _0x3b96de+_0x37f913;},'PTIQm':function(_0x5c6c28,_0x8ae5a7){return _0x5c6c28/_0x8ae5a7;},'byZfY':function(_0x565ce9,_0x331eba){return _0x565ce9>_0x331eba;}},_0x208451=_0x3aeef4[_0x83f429(0x1b9)]||0x0,_0x2dcd7b=_0x3aeef4['verificationInProgressItems']||0x0,_0x533e20=_0x3aeef4[_0x83f429(0x251)]||0x0,_0x5da170=_0x3aeef4[_0x83f429(0x278)]||0x0,_0x345dfb=_0x3aeef4['pendingItems']||0x0,_0x2bb981=_0x27e7c1['OYgVD'](_0x208451+_0x2dcd7b+_0x533e20+_0x5da170,_0x345dfb);if(_0x2bb981===0x0)return'-';const _0x3f7131=0xa,_0x5d49d9=Math[_0x83f429(0x25b)](_0x27e7c1[_0x83f429(0x24c)](_0x208451,_0x2bb981)*_0x3f7131),_0x679ff5='█'[_0x83f429(0x269)](_0x5d49d9)+'░'['repeat'](_0x3f7131-_0x5d49d9),_0x90e67e=[];if(_0x533e20>0x0)_0x90e67e['push'](_0x533e20+'\x20blocked');if(_0x27e7c1[_0x83f429(0x291)](_0x5da170,0x0))_0x90e67e[_0x83f429(0x27d)](_0x5da170+_0x83f429(0x1f4));if(_0x2dcd7b>0x0)_0x90e67e[_0x83f429(0x27d)](_0x2dcd7b+_0x83f429(0x26b));const _0x988933=_0x90e67e[_0x83f429(0x28e)]>0x0?'\x20('+_0x90e67e[_0x83f429(0x240)](',\x20')+')':'';return _0x679ff5+'\x20'+_0x208451+'/'+_0x2bb981+'\x20verified'+_0x988933;}function getCurrentSessionItems(_0x314fd2,_0x571553){const _0x15b697=_0x5dcc67;if(!_0x314fd2[_0x15b697(0x298)])return _0x571553['filter'](_0x4bd583=>!_0x4bd583[_0x15b697(0x1ce)]);return _0x571553[_0x15b697(0x1fc)](_0x2b7328=>_0x2b7328[_0x15b697(0x1ce)]===_0x314fd2[_0x15b697(0x298)]||!_0x2b7328[_0x15b697(0x1ce)]);}function displayFeature(_0x51fa27,_0x569e7a){const _0x46242b=_0x5dcc67,_0x1054cd={'umGyt':function(_0x3c462e,_0xc93a0){return _0x3c462e(_0xc93a0);},'gVKXA':function(_0x5b41c1,_0x38330a){return _0x5b41c1<_0x38330a;},'ngElm':_0x46242b(0x262),'bruPn':function(_0x2543d4,_0x96d0ac){return _0x2543d4===_0x96d0ac;},'hBWby':function(_0x20d681,_0x48ccf8){return _0x20d681===_0x48ccf8;},'tuBMW':_0x46242b(0x1d4),'HaKrx':function(_0x37d074,_0x42114c){return _0x37d074!==_0x42114c;},'OanMn':'verified','mEtCj':function(_0x30c8ff,_0xf6c15d){return _0x30c8ff+_0xf6c15d;},'AXLwG':function(_0xef03e2,_0x105fd4){return _0xef03e2===_0x105fd4;},'ChOkf':_0x46242b(0x20b),'CrDrO':function(_0x1202ba,_0x4baff3){return _0x1202ba===_0x4baff3;},'ozeSS':function(_0x5b4372,_0x24c3f2){return _0x5b4372===_0x24c3f2;},'aykNp':'approved','nddiX':function(_0x206e60,_0x59de13){return _0x206e60===_0x59de13;}};console[_0x46242b(0x1c2)]('\x0a'+_0x51fa27[_0x46242b(0x273)]+'\x20('+_0x51fa27['dashboardUrl']+')');_0x51fa27['stats']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Progress:\x20'+_0x1054cd['umGyt'](getProgressDisplay,_0x51fa27[_0x46242b(0x200)]));_0x51fa27[_0x46242b(0x1b8)]&&console['log'](_0x46242b(0x1b7)+_0x51fa27[_0x46242b(0x1b8)]);_0x51fa27['gitRepoUrl']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Repository:\x20'+_0x51fa27['gitRepoUrl']);_0x51fa27['gitBranch']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Branch:\x20'+_0x51fa27['gitBranch']);console[_0x46242b(0x1c2)](_0x46242b(0x271)+new Date(_0x51fa27[_0x46242b(0x28b)])['toLocaleString']());_0x51fa27['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x51fa27['completedAt'])['toLocaleString']());if(_0x569e7a&&_0x569e7a[_0x46242b(0x28e)]>0x0){console['log'](_0x46242b(0x213));for(let _0x3a7b79=0x0;_0x1054cd['gVKXA'](_0x3a7b79,_0x569e7a['length']);_0x3a7b79++){const _0x27025a=_0x569e7a[_0x3a7b79];let _0x36b83c;if(_0x27025a['status']===_0x1054cd[_0x46242b(0x214)]&&_0x1054cd[_0x46242b(0x1d6)](_0x27025a[_0x46242b(0x296)],_0x46242b(0x281)))_0x36b83c='✅';else{if(_0x1054cd[_0x46242b(0x241)](_0x27025a['status'],_0x46242b(0x2a7)))_0x36b83c='🟢';else{if(_0x1054cd['bruPn'](_0x27025a['status'],'incomplete'))_0x36b83c='🟠';else{if(_0x1054cd[_0x46242b(0x241)](_0x27025a['status'],_0x46242b(0x1fb)))_0x36b83c='🛑';else{if(_0x1054cd['bruPn'](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)]))_0x36b83c='⛔';else _0x27025a['status']===_0x1054cd[_0x46242b(0x1f1)]?_0x36b83c='⏳':_0x36b83c='⬜';}}}}const _0x1a5df9=_0x27025a['version']>0x1?'\x20(v'+_0x27025a[_0x46242b(0x201)]+')':'',_0x2109c9=_0x27025a[_0x46242b(0x201)]>0x1&&_0x27025a[_0x46242b(0x1d3)]&&_0x1054cd['HaKrx'](_0x27025a['status'],_0x1054cd['ngElm'])&&_0x27025a[_0x46242b(0x236)]!==_0x1054cd[_0x46242b(0x253)]?'\x20[has\x20reviewer\x20feedback]':'';console[_0x46242b(0x1c2)]('\x20\x20\x20'+_0x1054cd[_0x46242b(0x1f6)](_0x3a7b79,0x1)+'.\x20'+_0x36b83c+'\x20'+_0x27025a['description']+_0x1a5df9+_0x2109c9);_0x1054cd['AXLwG'](_0x27025a['status'],_0x46242b(0x1fb))&&_0x27025a['blockedReason']&&console[_0x46242b(0x1c2)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x27025a[_0x46242b(0x2a3)]);_0x27025a['status']===_0x1054cd['ChOkf']&&_0x27025a['incompleteReason']&&console[_0x46242b(0x1c2)](_0x46242b(0x1f7)+_0x27025a[_0x46242b(0x268)]);if(_0x1054cd['CrDrO'](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)])&&_0x1054cd[_0x46242b(0x1fd)](_0x27025a[_0x46242b(0x296)],_0x1054cd[_0x46242b(0x270)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x1054cd[_0x46242b(0x1be)](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)])&&_0x27025a['canceledReason']&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x27025a[_0x46242b(0x1d1)]);}}}export async function featureCreate(_0x3a2403,_0x112c5c){const _0x7090fd=_0x5dcc67,_0x1e04e1={'MgffH':function(_0xabae1f){return _0xabae1f();},'JUrdT':function(_0x36ea91,_0x456049){return _0x36ea91(_0x456049);},'eDMuP':function(_0x1c829c,_0x3bdb49){return _0x1c829c(_0x3bdb49);}},{envNames:_0x2a2fe1}=await getEnvNames();_0x2a2fe1[_0x7090fd(0x28e)]===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x18df4a=>bold(_0x18df4a)));const _0x1ba723=_0x112c5c['scenarios']?_0x112c5c['scenarios']['map'](_0x5cf848=>_0x5cf848['trim']()):[],_0x462f9a=_0x1e04e1['MgffH'](getGitRepoUrl),_0x59f92b=_0x1e04e1[_0x7090fd(0x207)](getGitBranch);console[_0x7090fd(0x1c2)](_0x7090fd(0x1e1));const _0x2b7c56=await _0x1e04e1[_0x7090fd(0x1ec)](createFeature,{'name':_0x3a2403,'description':_0x112c5c[_0x7090fd(0x1b8)],'checklist':_0x1ba723,'gitRepoUrl':_0x462f9a,'gitBranch':_0x59f92b});await _0x1e04e1[_0x7090fd(0x22a)](setActiveFeatureId,_0x2b7c56['id']),await tryStartCurrentSession(_0x2b7c56['id']);const _0x1eee27=process['env'][_0x7090fd(0x254)];_0x1eee27&&registerSession(_0x1eee27,_0x2b7c56['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x2b7c56['id']),displayFeature(_0x2b7c56,_0x2b7c56['checklistItems']),console['log'](_0x7090fd(0x287));}export async function featureList(_0x512e01){const _0x3855de=_0x5dcc67,_0x390b15={'EyaTU':function(_0xd8acfd){return _0xd8acfd();},'QscPi':'\x0aNo\x20feature\x20reviews\x20found.','ogfPe':function(_0x1dc5b2,_0x1a827e){return _0x1dc5b2(_0x1a827e);},'zHqDC':'\x20--current-branch','qBxZF':_0x3855de(0x1c3)},_0x1922a1={'limit':_0x512e01['limit']??0xa,'offset':_0x512e01[_0x3855de(0x265)]??0x0,'includeDeleted':_0x512e01[_0x3855de(0x1c8)]};_0x512e01['currentBranch']&&(_0x1922a1['gitRepoUrl']=getGitRepoUrl(),_0x1922a1['gitBranch']=_0x390b15['EyaTU'](getGitBranch));const _0x3e4e96=await listFeatures(_0x1922a1);if(_0x3e4e96[_0x3855de(0x24e)][_0x3855de(0x28e)]===0x0){console['log'](_0x390b15[_0x3855de(0x1cb)]);return;}const _0x5e4440=_0x3e4e96[_0x3855de(0x21a)]>_0x3e4e96[_0x3855de(0x24e)]['length']?_0x3855de(0x1bb)+_0x3e4e96[_0x3855de(0x24e)][_0x3855de(0x28e)]+_0x3855de(0x1c6)+_0x3e4e96['totalCount']:_0x3e4e96[_0x3855de(0x21a)]+'\x20feature\x20review(s)\x20found';console[_0x3855de(0x1c2)]('\x0a'+_0x5e4440+':\x0a');for(const _0x24ffa9 of _0x3e4e96[_0x3855de(0x24e)]){console['log'](''+_0x24ffa9[_0x3855de(0x273)]),console[_0x3855de(0x1c2)]('\x20\x20\x20ID:\x20'+_0x24ffa9['id']),_0x24ffa9['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x390b15[_0x3855de(0x1d8)](getProgressDisplay,_0x24ffa9['stats'])),_0x24ffa9[_0x3855de(0x1e8)]&&console[_0x3855de(0x1c2)](_0x3855de(0x29e)+_0x24ffa9[_0x3855de(0x1e8)]),console[_0x3855de(0x1c2)]('\x20\x20\x20Created:\x20'+new Date(_0x24ffa9['createdAt'])[_0x3855de(0x2a2)]()),console[_0x3855de(0x1c2)]('');}const _0x46354e=_0x1922a1['limit']??0xa,_0x4e1a30=(_0x1922a1['offset']??0x0)+_0x3e4e96['items'][_0x3855de(0x28e)];if(_0x4e1a30<_0x3e4e96['totalCount']){const _0x55d112=_0x46354e!==0xa?'\x20--limit\x20'+_0x46354e:'',_0xac9ab6=_0x512e01['currentBranch']?_0x390b15[_0x3855de(0x23a)]:'',_0x39443d=_0x512e01[_0x3855de(0x1c8)]?_0x390b15[_0x3855de(0x1d5)]:'';console[_0x3855de(0x1c2)](_0x3855de(0x21b)+_0x4e1a30+_0x55d112+_0xac9ab6+_0x39443d);}}export async function featureShow(_0x2247a7){const _0x35bdbd=_0x5dcc67,_0x2c1b93={'eFEdW':function(_0x37d7f9){return _0x37d7f9();},'CrHtN':function(_0x46c0b4,_0x3e6054){return _0x46c0b4(_0x3e6054);},'aGFJp':function(_0x392f55,_0x59a045,_0x4a9f30){return _0x392f55(_0x59a045,_0x4a9f30);}},_0x2f845c=_0x2247a7||await _0x2c1b93['eFEdW'](getActiveFeatureId);if(!_0x2f845c)throw new Error(_0x35bdbd(0x267));const _0x18715e=await _0x2c1b93['CrHtN'](getFeature,_0x2f845c);_0x2c1b93['aGFJp'](displayFeature,_0x18715e,_0x18715e['checklistItems']);}export async function featureResume(_0x516573){const _0x33d995=_0x5dcc67,_0x14c18d={'kjynm':function(_0x4c4be3){return _0x4c4be3();},'twdgc':function(_0x2ac0ac,_0x29a4c9){return _0x2ac0ac!==_0x29a4c9;},'xPsQN':function(_0x2463c2,_0x534b98,_0x537049){return _0x2463c2(_0x534b98,_0x537049);},'CJyRz':function(_0x196c38,_0x19f9d2){return _0x196c38(_0x19f9d2);},'heiix':function(_0x4912d0){return _0x4912d0();},'FXXag':function(_0x1b2717,_0x30258a){return _0x1b2717&&_0x30258a;},'twCpV':_0x33d995(0x20d),'dhjRp':function(_0x4ecd3a,_0x2126af){return _0x4ecd3a||_0x2126af;},'CobqF':'any','LNkbi':function(_0x40e647,_0x120a90){return _0x40e647(_0x120a90);},'YOWtt':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','rRZwb':function(_0x1601ad,_0x2187d2){return _0x1601ad===_0x2187d2;},'EiGGs':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','Hzjdc':_0x33d995(0x245),'xmcWi':function(_0x27ce81,_0x2473c8){return _0x27ce81(_0x2473c8);},'xDruZ':function(_0x3b4257,_0x3088cd,_0x3dfd10){return _0x3b4257(_0x3088cd,_0x3dfd10);},'tQwRM':function(_0x3452bf,_0x5d834b){return _0x3452bf(_0x5d834b);}};if(_0x516573){const _0x23b214=await getFeature(_0x516573);await setActiveFeatureId(_0x23b214['id']);const _0x449b76=_0x14c18d[_0x33d995(0x230)](getGitBranch);_0x449b76&&_0x14c18d['twdgc'](_0x449b76,_0x23b214[_0x33d995(0x1e8)])&&(await _0x14c18d[_0x33d995(0x26d)](updateFeature,_0x23b214['id'],{'gitBranch':_0x449b76}),console[_0x33d995(0x1c2)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x449b76));console['log'](_0x33d995(0x1bc)+_0x23b214[_0x33d995(0x273)]+'\x20('+_0x23b214['id']+')'),await _0x14c18d[_0x33d995(0x279)](tryStartCurrentSession,_0x23b214['id']);const _0x3b0fa4=process[_0x33d995(0x1c1)][_0x33d995(0x254)];_0x3b0fa4&&registerSession(_0x3b0fa4,_0x23b214['id']);_0x14c18d['xPsQN'](displayFeature,_0x23b214,_0x23b214['checklistItems']),await printFeedbackNudge(_0x23b214['id']);return;}const _0x13e308=_0x14c18d[_0x33d995(0x230)](getGitRepoUrl),_0x271a6a=_0x14c18d[_0x33d995(0x1c4)](getGitBranch);if(_0x14c18d['FXXag'](!_0x13e308,!_0x271a6a))throw new Error(_0x14c18d[_0x33d995(0x23e)]);console['log'](_0x33d995(0x212)+(_0x13e308||'any')+_0x33d995(0x1bd)+_0x14c18d[_0x33d995(0x226)](_0x271a6a,_0x14c18d['CobqF'])+'...');const _0x18a572=await _0x14c18d[_0x33d995(0x257)](listFeatures,{'gitRepoUrl':_0x13e308,'gitBranch':_0x271a6a}),_0x4deabf=_0x18a572[_0x33d995(0x24e)]['filter'](_0xcb417d=>!_0xcb417d['completedAt']);if(_0x4deabf['length']===0x0){console[_0x33d995(0x1c2)](_0x14c18d['YOWtt']),console['log'](_0x33d995(0x28c));return;}let _0xf4b08e;if(_0x14c18d[_0x33d995(0x225)](_0x4deabf[_0x33d995(0x28e)],0x1))_0xf4b08e=_0x4deabf[0x0];else{const _0x35fb59=process[_0x33d995(0x264)]['isTTY']&&process[_0x33d995(0x246)][_0x33d995(0x1cc)];if(!_0x35fb59){console[_0x33d995(0x1c2)](_0x14c18d[_0x33d995(0x1f2)]);for(const _0x273625 of _0x4deabf){console['log']('\x20\x20'+_0x273625[_0x33d995(0x273)]),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x273625['id']),_0x273625['stats']&&console[_0x33d995(0x1c2)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x273625[_0x33d995(0x200)])),_0x273625['gitBranch']&&console[_0x33d995(0x1c2)](_0x33d995(0x2a5)+_0x273625['gitBranch']);}throw new Error(_0x33d995(0x25e));}const {selected:_0x575f86}=await _0x16eea6[_0x33d995(0x293)]([{'type':_0x14c18d[_0x33d995(0x1de)],'name':_0x33d995(0x24b),'message':_0x33d995(0x208),'choices':_0x4deabf['map'](_0x4ff8ad=>({'name':_0x4ff8ad['name']+'\x20('+_0x4ff8ad['id']+')','value':_0x4ff8ad['id']}))}]);_0xf4b08e=_0x4deabf['find'](_0x584ffa=>_0x584ffa['id']===_0x575f86);}await _0x14c18d[_0x33d995(0x23f)](setActiveFeatureId,_0xf4b08e['id']);_0x271a6a&&_0x14c18d[_0x33d995(0x256)](_0x271a6a,_0xf4b08e[_0x33d995(0x1e8)])&&(await _0x14c18d[_0x33d995(0x22b)](updateFeature,_0xf4b08e['id'],{'gitBranch':_0x271a6a}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x271a6a));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0xf4b08e[_0x33d995(0x273)]+'\x20('+_0xf4b08e['id']+')'),await tryStartCurrentSession(_0xf4b08e['id']);const _0x2697b6=await _0x14c18d['LNkbi'](getFeature,_0xf4b08e['id']),_0x3dd207=process['env'][_0x33d995(0x254)];_0x3dd207&&_0x14c18d[_0x33d995(0x22b)](registerSession,_0x3dd207,_0x2697b6['id']),displayFeature(_0x2697b6,_0x2697b6['checklistItems']),await _0x14c18d[_0x33d995(0x1bf)](printFeedbackNudge,_0x2697b6['id']);}async function printFeedbackNudge(_0x4d36d2){const _0x55e47e=_0x5dcc67,_0x6375fa={'JUwsy':function(_0xdcd417,_0xeff98d){return _0xdcd417>_0xeff98d;}};try{const {items:_0x12f8a4}=await getActionItems(_0x4d36d2);let _0x5b8b35=0x0,_0x3490ab=0x0;for(const _0x381536 of _0x12f8a4){const _0xe0da60=await getItemFeedback(_0x4d36d2,_0x381536['id']);_0x6375fa[_0x55e47e(0x292)](_0xe0da60['unaddressedComments']['length'],0x0)&&(_0x5b8b35+=_0xe0da60[_0x55e47e(0x26a)][_0x55e47e(0x28e)],_0x3490ab++);}_0x5b8b35>0x0&&(console[_0x55e47e(0x1c2)](_0x55e47e(0x247)+_0x5b8b35+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x3490ab+'\x20scenario(s).'),console[_0x55e47e(0x1c2)](_0x55e47e(0x1ef)));}catch{}}async function tryStartCurrentSession(_0x2ceb1d){const _0x505ca2=_0x5dcc67,_0x2b69d0={'QYBOw':function(_0x45e0ec,_0x35867e,_0x1c902b){return _0x45e0ec(_0x35867e,_0x1c902b);}};try{const {sessions:_0x2ed92e}=await listFeatureSessions(_0x2ceb1d),_0x37af7e=_0x2ed92e[_0x505ca2(0x206)](_0xb84fa7=>_0xb84fa7['status']==='ready');_0x37af7e&&(await _0x2b69d0['QYBOw'](startSession,_0x2ceb1d,_0x37af7e['id']),console['log'](_0x505ca2(0x25f)+_0x37af7e['iteration']));}catch{}}export async function featureReport(_0x524b03,_0x28edf2){const _0x59be00=_0x5dcc67,_0x2ef290={'kLGIl':function(_0x2fb5b3){return _0x2fb5b3();},'JAPyl':_0x59be00(0x2a1),'xoifZ':_0x59be00(0x1db),'dpjIC':function(_0x3d7524,_0x57e4a9,_0x4d2814){return _0x3d7524(_0x57e4a9,_0x4d2814);},'jSKoT':function(_0x57d031,_0x4d3c14){return _0x57d031(_0x4d3c14);},'FgHcX':_0x59be00(0x210)},_0x4989f6=_0x524b03||await _0x2ef290['kLGIl'](getActiveFeatureId);if(!_0x4989f6)throw new Error(_0x59be00(0x29b));console['log'](_0x2ef290['JAPyl']);const _0xd55f27=await getFeatureReportMarkdown(_0x4989f6,{'style':_0x28edf2['style']}),_0x5392c5=_0x28edf2[_0x59be00(0x23d)]||join(getRangerDir(),_0x2ef290[_0x59be00(0x29f)],_0x4989f6+_0x59be00(0x1eb)),_0x322127=_0x2ef290[_0x59be00(0x27a)](join,_0x5392c5,'..');!_0x2ef290['jSKoT'](existsSync,_0x322127)&&await mkdir(_0x322127,{'recursive':!![]}),await writeFile(_0x5392c5,_0xd55f27,_0x2ef290['FgHcX']),console[_0x59be00(0x1c2)](_0x59be00(0x1fe)+_0x5392c5);}function getScenarioResult(_0x3707da){const _0x4d173e=_0x5dcc67,_0x4ca02d={'WxBNu':function(_0x25fd2e,_0x283323){return _0x25fd2e===_0x283323;},'BnXHy':'closed','DKDRW':'verification_in_progress','MWGYd':_0x4d173e(0x26c)};if(_0x4ca02d[_0x4d173e(0x259)](_0x3707da['status'],_0x4ca02d['BnXHy']))return _0x3707da['terminalReason']??_0x4ca02d['BnXHy'];if(_0x3707da[_0x4d173e(0x236)]===_0x4ca02d[_0x4d173e(0x244)])return _0x4ca02d[_0x4d173e(0x285)];return _0x3707da['status'];}function getScenarioRationale(_0x3199cc,_0x3138f4){const _0x5e80ee=_0x5dcc67,_0x30c83d={'HqvCS':'4|3|5|2|1|0'},_0x526af0=_0x30c83d['HqvCS']['split']('|');let _0x261e3b=0x0;while(!![]){switch(_0x526af0[_0x261e3b++]){case'0':return null;case'1':if(_0x3199cc[_0x5e80ee(0x24f)])return _0x3199cc[_0x5e80ee(0x24f)];continue;case'2':if(_0x3199cc['canceledReason'])return _0x3199cc[_0x5e80ee(0x1d1)];continue;case'3':if(_0x3199cc['blockedReason'])return _0x3199cc[_0x5e80ee(0x2a3)];continue;case'4':if(_0x3138f4)return _0x3138f4;continue;case'5':if(_0x3199cc['incompleteReason'])return _0x3199cc['incompleteReason'];continue;}break;}}export async function featureReportPrDescription(_0x22a303,_0x5f499f){const _0x988dd=_0x5dcc67,_0x376bf5={'goabm':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','pekqZ':function(_0x45f885,_0x49f67e,_0x3cf5ef){return _0x45f885(_0x49f67e,_0x3cf5ef);},'tlJOQ':function(_0x1457af,_0x32ed12){return _0x1457af===_0x32ed12;},'VzmYt':_0x988dd(0x1f9),'bQLOn':function(_0x538823,_0x37f151){return _0x538823>_0x37f151;},'UsWmN':'\x0aAvailable\x20scenarios:','BZiYn':function(_0x410170,_0x1c1239){return _0x410170===_0x1c1239;},'HNaNw':function(_0x8067ac,_0x6ce1f6,_0x448149){return _0x8067ac(_0x6ce1f6,_0x448149);}},_0x14985e=_0x22a303||await getActiveFeatureId();if(!_0x14985e)throw new Error(_0x376bf5['goabm']);const _0x1273a8=await getFeature(_0x14985e),_0x4b7a7e=_0x1273a8[_0x988dd(0x234)]||[],_0x109754=_0x376bf5[_0x988dd(0x231)](getCurrentSessionItems,_0x1273a8,_0x4b7a7e);_0x376bf5['tlJOQ'](_0x109754['length'],0x0)&&(console['error'](_0x376bf5['VzmYt']),process[_0x988dd(0x211)](0x1));const _0x56adbf=_0x5f499f['excludeScenarios']??[],_0x28714d=_0x56adbf[_0x988dd(0x1fc)](_0x529716=>!Number['isInteger'](_0x529716)||_0x529716<0x1||_0x529716>_0x109754['length']);if(_0x376bf5['bQLOn'](_0x28714d[_0x988dd(0x28e)],0x0)){console['error'](_0x988dd(0x209)+_0x28714d['join'](',\x20')),console['log'](_0x376bf5['UsWmN']);for(let _0x408d83=0x0;_0x408d83<_0x109754['length'];_0x408d83++){console[_0x988dd(0x1c2)]('\x20\x20'+(_0x408d83+0x1)+'.\x20'+_0x109754[_0x408d83][_0x988dd(0x1b8)]);}process[_0x988dd(0x211)](0x1);}const _0x3e39fa=new Set(_0x56adbf[_0x988dd(0x1d0)](_0x484b53=>_0x484b53-0x1)),_0x467e95=_0x109754['filter']((_0x2ab9eb,_0x57c3cb)=>!_0x3e39fa['has'](_0x57c3cb));_0x376bf5['BZiYn'](_0x467e95['length'],0x0)&&(console[_0x988dd(0x21d)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process[_0x988dd(0x211)](0x1));if(_0x5f499f['json'])await outputJsonReport(_0x14985e,_0x1273a8,_0x467e95);else{const _0xabddc7=await _0x376bf5['HNaNw'](getFeatureReportMarkdown,_0x14985e,{'itemIds':_0x467e95[_0x988dd(0x1d0)](_0x4b0530=>_0x4b0530['id'])});process['stdout']['write'](_0xabddc7[_0x988dd(0x242)]()+'\x0a');}}async function outputJsonReport(_0x533aa4,_0x4eda0f,_0x2d5c9c){const _0x46a1f7=_0x5dcc67,_0x47a648={'Rdnaz':function(_0x516395,_0x5b1ba7){return _0x516395(_0x5b1ba7);},'nCpRn':function(_0x55b61d,_0x1c581b){return _0x55b61d>_0x1c581b;},'HsDaM':function(_0x36eedc,_0x260ffe){return _0x36eedc===_0x260ffe;},'hyLKT':function(_0x29271e,_0x49d0c1,_0xb73e9c){return _0x29271e(_0x49d0c1,_0xb73e9c);},'HnSDP':function(_0x574469,_0x115f8d){return _0x574469+_0x115f8d;}},_0x3bb8f8=getApiBaseUrl(),_0x40e8fc=await getFeatureReport(_0x533aa4),_0x5383cd=new Map(_0x40e8fc['checklistItems'][_0x46a1f7(0x1d0)](_0x514f2f=>[_0x514f2f['id'],_0x514f2f])),_0x4d29bb=await Promise[_0x46a1f7(0x21e)](_0x2d5c9c['map'](async _0x21fba9=>{const _0x5d3284=_0x46a1f7,_0x2ba784=_0x5383cd[_0x5d3284(0x235)](_0x21fba9['id']),_0x219585=_0x2ba784?.['linkedSession']??null;let _0x2566d2=[];if(_0x21fba9['browserSessionId'])try{const {steps:_0x216bae}=await _0x47a648[_0x5d3284(0x1c9)](getBrowserSessionSteps,_0x21fba9[_0x5d3284(0x21c)]);_0x47a648['nCpRn'](_0x216bae['length'],0x0)&&(_0x2566d2=_0x216bae[_0x5d3284(0x1d0)](_0x5ccc5d=>{const _0x618830=_0x5d3284,_0x6513a4=_0x5ccc5d['assets'][_0x618830(0x206)](_0x33e83c=>_0x33e83c[_0x618830(0x28f)]===_0x618830(0x282)&&_0x33e83c[_0x618830(0x218)]===_0x618830(0x27e))??_0x5ccc5d[_0x618830(0x22f)][_0x618830(0x206)](_0x47ce7b=>_0x47ce7b['assetType']===_0x618830(0x282));let _0x4a5745=null,_0xc69261=null;if(_0x6513a4){const _0x449e72=_0x6513a4['storage'][_0x618830(0x223)]['split']('/')['pop']();_0x4a5745=_0x3bb8f8+_0x618830(0x2a0)+_0x21fba9['browserSessionId']+_0x618830(0x26e)+_0x449e72,_0x449e72&&(_0xc69261=_0x449e72['replace'](/\.\w+$/,'')[_0x618830(0x297)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0xc69261||_0x5ccc5d[_0x618830(0x1b8)]||_0x5ccc5d['stepName']||'Step\x20'+_0x5ccc5d[_0x618830(0x283)],'screenshot':_0x4a5745,'is_key_step':_0x5ccc5d[_0x618830(0x2a6)]};}));}catch{}return _0x47a648[_0x5d3284(0x20a)](_0x2566d2['length'],0x0)&&_0x219585?.[_0x5d3284(0x26f)]&&(_0x2566d2=_0x219585[_0x5d3284(0x26f)][_0x5d3284(0x1d0)]((_0x1c0ee4,_0x346ac9)=>({'description':'Screenshot\x20'+(_0x346ac9+0x1),'screenshot':_0x1c0ee4,'is_key_step':![]}))),{'description':_0x21fba9[_0x5d3284(0x1b8)],'result':getScenarioResult(_0x21fba9),'rationale':_0x47a648['hyLKT'](getScenarioRationale,_0x21fba9,_0x219585?.['agentResponse']),'steps':_0x2566d2};})),_0x446f39={'url':_0x4eda0f['dashboardUrl'],'scenarios':_0x4d29bb};process[_0x46a1f7(0x246)]['write'](_0x47a648[_0x46a1f7(0x1f0)](JSON[_0x46a1f7(0x27c)](_0x446f39,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x12879e){const _0x12f1aa=_0x5dcc67,_0x59b901={'pPWHZ':function(_0x5f39ef){return _0x5f39ef();},'PLpii':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','fEOHH':function(_0x509d4f,_0x4dce16){return _0x509d4f(_0x4dce16);},'cnsNf':_0x12f1aa(0x1e2),'AoxSL':function(_0x1b3983,_0x5c4b8b){return _0x1b3983===_0x5c4b8b;},'mpDZa':_0x12f1aa(0x1c5),'xAEFR':function(_0x68f07a,_0x179005){return _0x68f07a!==_0x179005;},'xbqHG':_0x12f1aa(0x26c),'MjgTY':function(_0x2ab4f1,_0x35f90f,_0x2600c7){return _0x2ab4f1(_0x35f90f,_0x2600c7);}},_0x4a391c=_0x12879e||await _0x59b901[_0x12f1aa(0x1fa)](getActiveFeatureId);if(!_0x4a391c)throw new Error(_0x59b901['PLpii']);const _0x1dd9b1=await _0x59b901['fEOHH'](getFeature,_0x4a391c);if(!_0x1dd9b1[_0x12f1aa(0x298)])throw new Error(_0x59b901['cnsNf']);const {sessions:_0x8f288a}=await _0x59b901['fEOHH'](listFeatureSessions,_0x4a391c),_0x28b648=_0x8f288a['find'](_0x2fc069=>_0x2fc069['id']===_0x1dd9b1['currentSessionId']);if(!_0x28b648)throw new Error(_0x12f1aa(0x204));if(_0x59b901['AoxSL'](_0x28b648[_0x12f1aa(0x236)],_0x59b901['mpDZa'])){console[_0x12f1aa(0x1c2)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x59b901[_0x12f1aa(0x250)](_0x28b648[_0x12f1aa(0x236)],_0x59b901[_0x12f1aa(0x295)]))throw new Error(_0x12f1aa(0x205)+_0x28b648[_0x12f1aa(0x236)]);console[_0x12f1aa(0x1c2)]('\x0aConcluding\x20session...'),await _0x59b901['MjgTY'](concludeSession,_0x4a391c,_0x1dd9b1['currentSessionId']),console[_0x12f1aa(0x1c2)](_0x12f1aa(0x1dd)+_0x28b648['iteration']+_0x12f1aa(0x29d)),console[_0x12f1aa(0x1c2)](_0x12f1aa(0x224));}export async function featureSessions(_0x193d78){const _0x339be7=_0x5dcc67,_0x410e23={'lyVRk':_0x339be7(0x29b),'hPzBb':_0x339be7(0x27b),'DdHnT':function(_0x7338bf,_0x4bcfca){return _0x7338bf===_0x4bcfca;},'yJlvj':function(_0x12ad33,_0x43a00a){return _0x12ad33===_0x43a00a;},'doBjr':_0x339be7(0x26c)},_0x13c02e=_0x193d78||await getActiveFeatureId();if(!_0x13c02e)throw new Error(_0x410e23[_0x339be7(0x1e3)]);const _0x1d357e=await getFeature(_0x13c02e);console[_0x339be7(0x1c2)](_0x339be7(0x261)+_0x1d357e[_0x339be7(0x273)]+'\x0a');const {sessions:_0x4ff496}=await listFeatureSessions(_0x13c02e);if(_0x4ff496[_0x339be7(0x28e)]===0x0){console['log'](_0x410e23[_0x339be7(0x1da)]);return;}for(const _0x3772b9 of _0x4ff496){const _0x1e35c7=_0x410e23[_0x339be7(0x25d)](_0x3772b9['status'],_0x339be7(0x1c5))?'✅':_0x410e23['yJlvj'](_0x3772b9[_0x339be7(0x236)],_0x410e23[_0x339be7(0x1c7)])?'🔄':'▶️';console['log'](_0x1e35c7+_0x339be7(0x22c)+_0x3772b9['iteration']+'\x20('+_0x3772b9['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x3772b9['status']),console[_0x339be7(0x1c2)]('\x20\x20\x20Created:\x20'+new Date(_0x3772b9['createdAt'])['toLocaleString']()),_0x3772b9['completedAt']&&console[_0x339be7(0x1c2)]('\x20\x20\x20Completed:\x20'+new Date(_0x3772b9[_0x339be7(0x1cf)])['toLocaleString']()),console[_0x339be7(0x1c2)]('');}}export async function featureAddScenario(_0x22563c,_0x15c964){const _0xd05cf9=_0x5dcc67,_0x27f240={'MTQSj':_0xd05cf9(0x267),'EvBMj':function(_0x1db000,_0x5c9bec){return _0x1db000(_0x5c9bec);},'zmWId':function(_0x12d3dd,_0x1be8cd,_0x1cee20){return _0x12d3dd(_0x1be8cd,_0x1cee20);}},_0x79e2ea=_0x15c964||await getActiveFeatureId();if(!_0x79e2ea)throw new Error(_0x27f240['MTQSj']);const _0x4d7ea7=await _0x27f240[_0xd05cf9(0x1f3)](getFeature,_0x79e2ea);if(_0x4d7ea7[_0xd05cf9(0x252)]&&!_0x4d7ea7[_0xd05cf9(0x252)]['submittedAt'])throw new Error(_0xd05cf9(0x249)+_0x4d7ea7[_0xd05cf9(0x216)]);await _0x27f240['zmWId'](createChecklistItem,_0x79e2ea,_0x22563c);const _0x5e22a4=await _0x27f240[_0xd05cf9(0x1f3)](getFeature,_0x79e2ea);console['log'](_0xd05cf9(0x221)),_0x27f240[_0xd05cf9(0x220)](displayFeature,_0x5e22a4,_0x5e22a4[_0xd05cf9(0x234)]);}export async function featureEditScenario(_0x4af1b2,_0x26d0eb){const _0x1e61ee=_0x5dcc67,_0x3be6d1={'KwAGB':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','CxOPw':function(_0x2e84ce,_0x3efcc5){return _0x2e84ce(_0x3efcc5);},'Dxyhg':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','RozRg':function(_0x7c9a32,_0x3ea88f){return _0x7c9a32===_0x3ea88f;},'bggqm':_0x1e61ee(0x263),'dCJzb':function(_0x3d307b,_0x72947c){return _0x3d307b+_0x72947c;},'ZjWrJ':function(_0x3e4546,_0x223e59){return _0x3e4546-_0x223e59;},'hhfhB':function(_0x137719,_0x5963d6,_0x485caa){return _0x137719(_0x5963d6,_0x485caa);}},_0x3cad5d=_0x26d0eb['id']||await getActiveFeatureId();!_0x3cad5d&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x3be6d1['KwAGB']),process[_0x1e61ee(0x211)](0x1));const _0x349180=await _0x3be6d1['CxOPw'](getFeature,_0x3cad5d);_0x349180['latestReview']&&!_0x349180[_0x1e61ee(0x252)]['submittedAt']&&(console[_0x1e61ee(0x21d)](_0x3be6d1['Dxyhg']),console[_0x1e61ee(0x21d)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1e61ee(0x21d)]('\x20\x20'+_0x349180[_0x1e61ee(0x216)]),process[_0x1e61ee(0x211)](0x1));const _0x5b8b2d=_0x349180['checklistItems']||[];_0x3be6d1['RozRg'](_0x5b8b2d['length'],0x0)&&(console[_0x1e61ee(0x21d)](_0x3be6d1['bggqm']),process['exit'](0x1));if(_0x26d0eb[_0x1e61ee(0x289)]===undefined){console[_0x1e61ee(0x21d)](_0x1e61ee(0x277)),console[_0x1e61ee(0x1c2)](_0x1e61ee(0x266));for(let _0x2ff26e=0x0;_0x2ff26e<_0x5b8b2d['length'];_0x2ff26e++){console['log']('\x20\x20'+_0x3be6d1[_0x1e61ee(0x233)](_0x2ff26e,0x1)+'.\x20'+_0x5b8b2d[_0x2ff26e]['description']);}process[_0x1e61ee(0x211)](0x1);}const _0x2caa75=_0x3be6d1[_0x1e61ee(0x1cd)](_0x26d0eb['scenario'],0x1);if(_0x2caa75<0x0||_0x2caa75>=_0x5b8b2d[_0x1e61ee(0x28e)]){console['error'](_0x1e61ee(0x20f)+_0x26d0eb['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x5b8b2d[_0x1e61ee(0x28e)]+_0x1e61ee(0x229)),console[_0x1e61ee(0x1c2)]('\x0aAvailable\x20scenarios:');for(let _0x97c518=0x0;_0x97c518<_0x5b8b2d[_0x1e61ee(0x28e)];_0x97c518++){console[_0x1e61ee(0x1c2)]('\x20\x20'+(_0x97c518+0x1)+'.\x20'+_0x5b8b2d[_0x97c518][_0x1e61ee(0x1b8)]);}process[_0x1e61ee(0x211)](0x1);}const _0xaf10ee=_0x5b8b2d[_0x2caa75];await updateChecklistItem(_0x3cad5d,_0xaf10ee['id'],{'description':_0x4af1b2});const _0x5f5e0a=await getFeature(_0x3cad5d);console['log'](_0x1e61ee(0x28a)),_0x3be6d1['hhfhB'](displayFeature,_0x5f5e0a,_0x5f5e0a['checklistItems']);}async function downloadFeedbackImage(_0xe3f879,_0xb80cb9){const _0x4d2066=_0x5dcc67,_0x330a35={'vQYcM':function(_0x1e810d,_0x5e84a2,_0x4dcb3d){return _0x1e810d(_0x5e84a2,_0x4dcb3d);},'rSbPd':function(_0x5be819){return _0x5be819();},'sSyOA':'feedback-images'};try{const _0x4aa8b8=_0x330a35[_0x4d2066(0x24a)](join,_0x330a35['rSbPd'](getRangerDir),_0x330a35['sSyOA']);await mkdir(_0x4aa8b8,{'recursive':!![]});const _0x2bf6eb=_0x330a35['vQYcM'](join,_0x4aa8b8,_0x4d2066(0x24d)+_0xb80cb9+_0x4d2066(0x260)),_0x37260c=await fetch(_0xe3f879);if(!_0x37260c['ok'])return null;const _0x5ebedf=Buffer[_0x4d2066(0x217)](await _0x37260c['arrayBuffer']());return await writeFile(_0x2bf6eb,_0x5ebedf),_0x2bf6eb;}catch{return null;}}export async function featureGetReview(_0x496bcc){const _0x5cb07d=_0x5dcc67,_0x4ce032={'aQUgB':function(_0x2f4f33,_0x1b82f5){return _0x2f4f33(_0x1b82f5);},'VLqUS':function(_0x303d3a,_0x13fe70){return _0x303d3a===_0x13fe70;},'Wtosj':function(_0x1ddfeb,_0x4dc946){return _0x1ddfeb<_0x4dc946;},'FnCxV':function(_0xca6df4,_0x133a90){return _0xca6df4>_0x133a90;},'wdbcC':function(_0x4e1425,_0x2f64f9,_0x1fc820){return _0x4e1425(_0x2f64f9,_0x1fc820);},'TGEYe':'en-US','RNSjP':'short','HwjRE':'Unknown','WDcqR':_0x5cb07d(0x1dc),'ONBuG':_0x5cb07d(0x29c),'HIKbd':function(_0x3572d2,_0xde8f84){return _0x3572d2+_0xde8f84;}},_0x49fb1b=_0x496bcc||await getActiveFeatureId();if(!_0x49fb1b)throw new Error(_0x5cb07d(0x267));const _0x93a271=await getFeature(_0x49fb1b),{items:_0x58cb2c}=await _0x4ce032['aQUgB'](getActionItems,_0x49fb1b);console['log'](_0x5cb07d(0x255)+_0x93a271[_0x5cb07d(0x273)]+'\x20('+_0x93a271['id']+')\x0a');if(_0x4ce032['VLqUS'](_0x58cb2c['length'],0x0)){console[_0x5cb07d(0x1c2)]('No\x20scenarios\x20found.');return;}for(let _0xbe1f14=0x0;_0x4ce032[_0x5cb07d(0x1d9)](_0xbe1f14,_0x58cb2c[_0x5cb07d(0x28e)]);_0xbe1f14++){const _0x4e94f3=_0x58cb2c[_0xbe1f14],_0x4018fa=_0x4ce032[_0x5cb07d(0x27f)](_0x4e94f3[_0x5cb07d(0x201)],0x1)?_0x5cb07d(0x1ea)+_0x4e94f3['version']+')':'',_0x2b7294=await _0x4ce032[_0x5cb07d(0x248)](getItemFeedback,_0x49fb1b,_0x4e94f3['id']);if(_0x2b7294[_0x5cb07d(0x26a)][_0x5cb07d(0x28e)]>0x0){console['log']('Scenario\x20'+(_0xbe1f14+0x1)+_0x5cb07d(0x1e4)+_0x4e94f3[_0x5cb07d(0x1b8)]+'\x22'+_0x4018fa+_0x5cb07d(0x202)+_0x2b7294[_0x5cb07d(0x26a)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x34281d of _0x2b7294[_0x5cb07d(0x26a)]){const _0x180893=new Date(_0x34281d[_0x5cb07d(0x28b)])['toLocaleDateString'](_0x4ce032['TGEYe'],{'month':_0x4ce032[_0x5cb07d(0x1e6)],'day':_0x5cb07d(0x20e)}),_0x39c9c8=_0x34281d[_0x5cb07d(0x22e)]||_0x34281d[_0x5cb07d(0x1e5)]||_0x4ce032[_0x5cb07d(0x274)];console[_0x5cb07d(0x1c2)](_0x5cb07d(0x1ca)+_0x39c9c8+'\x20('+_0x180893+'):\x20\x22'+_0x34281d['content']+'\x22');if(_0x34281d['assetUrl']){const _0x4dc0f7=await downloadFeedbackImage(_0x34281d[_0x5cb07d(0x228)],_0x34281d['id']);_0x4dc0f7&&console[_0x5cb07d(0x1c2)](_0x5cb07d(0x290)+_0x4dc0f7);}if(_0x34281d['domRef']){const _0x177f80=_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x272)]['split'](_0x4ce032['WDcqR'])[_0x5cb07d(0x2a4)]()?.['split'](':')[0x0]||_0x5cb07d(0x1d7),_0x511797=_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x1f8)]?'\x20\x22'+_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x1f8)]['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x5cb07d(0x25a)+_0x177f80+'>'+_0x511797),console['log'](_0x5cb07d(0x276)+_0x34281d['domRef']['selector']);}else{if(_0x34281d['spatial']){const _0x34631d=_0x34281d[_0x5cb07d(0x219)][_0x5cb07d(0x1ed)];_0x34281d['spatial'][_0x5cb07d(0x1e0)]===_0x4ce032['ONBuG']&&_0x34631d['length']>=0x2?console['log'](_0x5cb07d(0x284)+_0x34631d[0x0][_0x5cb07d(0x227)](0x2)+',\x20'+_0x34631d[0x1]['toFixed'](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x34281d['spatial']['type']+'\x20at\x20['+_0x34631d[_0x5cb07d(0x1d0)](_0x4e97b1=>_0x4e97b1[_0x5cb07d(0x227)](0x2))['join'](',\x20')+']');}}}if(_0x2b7294['canonicalFlow']){console['log'](_0x5cb07d(0x288));for(const _0x5f07d1 of _0x2b7294['canonicalFlow'][_0x5cb07d(0x21f)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x5f07d1);}}}else console[_0x5cb07d(0x1c2)](_0x5cb07d(0x1d2)+_0x4ce032[_0x5cb07d(0x1e9)](_0xbe1f14,0x1)+_0x5cb07d(0x1e4)+_0x4e94f3[_0x5cb07d(0x1b8)]+'\x22'+_0x4018fa+_0x5cb07d(0x20c)),console[_0x5cb07d(0x1c2)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x1ffb9e){const _0x573bb0=_0x5dcc67,_0x1d5d24={'buhON':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','Dlhjk':function(_0x30e7fc,_0x2b90f3){return _0x30e7fc(_0x2b90f3);},'pVfsY':function(_0x26c691,_0x437858){return _0x26c691+_0x437858;},'lsMMH':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x3b7027=_0x1ffb9e||await getActiveFeatureId();if(!_0x3b7027)throw new Error(_0x1d5d24[_0x573bb0(0x22d)]);const _0x561b4f=await getFeature(_0x3b7027);await _0x1d5d24[_0x573bb0(0x222)](softDeleteFeature,_0x3b7027),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x561b4f[_0x573bb0(0x273)]+'\x20('+_0x3b7027+')'),console[_0x573bb0(0x1c2)](_0x1d5d24[_0x573bb0(0x215)](_0x1d5d24['lsMMH'],_0x3b7027));}export async function featureRestore(_0x132a8c){const _0x40ac7f=_0x5dcc67,_0xd2ca03={'GzFTN':function(_0x1c3ab7,_0x1478bb){return _0x1c3ab7(_0x1478bb);}};await _0xd2ca03[_0x40ac7f(0x1ff)](restoreFeature,_0x132a8c);const _0x45442d=await _0xd2ca03['GzFTN'](getFeature,_0x132a8c);console['log'](_0x40ac7f(0x1df)+_0x45442d[_0x40ac7f(0x273)]+'\x20('+_0x132a8c+')'),displayFeature(_0x45442d,_0x45442d['checklistItems']);}
1
+ (function(_0x192fdd,_0x242dc1){const _0x4ca81c=_0x26e7,_0x301f5e=_0x192fdd();while(!![]){try{const _0x4339af=parseInt(_0x4ca81c(0x161))/0x1*(parseInt(_0x4ca81c(0x1c0))/0x2)+parseInt(_0x4ca81c(0x15e))/0x3*(parseInt(_0x4ca81c(0x1d2))/0x4)+-parseInt(_0x4ca81c(0x19c))/0x5+parseInt(_0x4ca81c(0x188))/0x6+parseInt(_0x4ca81c(0x124))/0x7+parseInt(_0x4ca81c(0x157))/0x8*(-parseInt(_0x4ca81c(0x162))/0x9)+-parseInt(_0x4ca81c(0x18b))/0xa*(parseInt(_0x4ca81c(0x189))/0xb);if(_0x4339af===_0x242dc1)break;else _0x301f5e['push'](_0x301f5e['shift']());}catch(_0x584740){_0x301f5e['push'](_0x301f5e['shift']());}}}(_0x4ef9,0x65ec5));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x1732ef 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';function _0x4ef9(){const _0xc1f34e=['list','toFixed','\x20\x20✅\x20No\x20feedback\x20to\x20address','Wkssj','xokbf','\x20in\x20progress','assets','exit','NSJla','xEDLQ','\x20\x20\x20▶️\x20Started\x20session\x20','name','oSgcp','MsRea','.png','No\x20sessions\x20found.','browserSessionId','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','sessionId','git\x20remote\x20get-url\x20origin','NuPil','eRuJd','vLnMS','\x20/\x20','spatial','\x20—\x20no\x20comments','yvlbS','scenario','\x20\x20\x20\x20\x20\x20Incomplete:\x20','XBsoy','stats','mUsIj','stdin','from','2937990jdqRax','33AqiiPp','bLNVD','1667230AIFMku','SNEIn','point','blockedReason','slice','approved','utf-8','gitRepoUrl','CLAUDE_SESSION_ID','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','/api/v1/mcp/browser-sessions/','\x0a📋\x20Feedback\x20for:\x20','assetType','type','any','\x0a✅\x20Report\x20generated:\x20','AbkYI','431930zNYywX','gitBranch','alste','length','wYCUg','find','imDjL','textContent','pop','description','position','DoWbK','closed','dashboardUrl','\x20--current-branch','liKos','terminalReason','\x0a✅\x20Scenario\x20updated','output','\x20at\x20[','after','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20\x20Expected\x20flow:','trim','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','uNKel','No\x20active\x20session\x20for\x20this\x20feature\x20review.','offset','Scenario\x20','NVAwL','selected','stringify','Please\x20finish\x20your\x20review\x20first:','completed','Unknown','6WwHctt','XouWK','\x20\x20\x20Description:\x20','TbdyV','isInteger','log','.\x20Feature\x20review\x20has\x20','xQOEz','incomplete','pendingItems','.md','xPDQv','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20\x20\x20Completed:\x20','replace','\x20verified','pipe','latestReview','8UtczlD','ELmxw','join','in_progress','jbUbF','hGEuv','includeDeleted','items','\x0aNo\x20feature\x20reviews\x20found.','error','JczLs','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20\x20\x20\x20\x20Approved','\x20blocked','\x20\x20\x20Updated\x20branch\x20to:\x20','iteration','incompleteReason','\x20\x20\x20\x20\x20\x20Blocked:\x20','version','unaddressedComments','WLnAs','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','trimEnd','prompt','\x0a✅\x20Resumed\x20feature\x20review:\x20','tdSpf','currentSessionId','domRef','completedAt','\x0aAvailable\x20scenarios:','Not\x20in\x20a\x20git\x20repository.','oEWuF','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','PvVKd','all','\x20\x20\x20\x20\x20Progress:\x20','verificationInProgressItems','status','4331908OvRKcZ','filter','\x20\x20💬\x20','\x20[has\x20reviewer\x20feedback]','TPZIT','WdQEZ','env','feedback-images','yyocJ','\x0a❌\x20Invalid\x20scenario\x20index:\x20','limit','selector','\x20\x20\x20Branch:\x20','Stmqt','createdAt','screenshotUrls','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','\x20concluded.','\x0a⚠️\x20\x20','\x0aConcluding\x20session...','oPFsU','storage','map','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','push','Fgizv','\x20Session\x20','\x20scenario(s).','toLocaleString','totalCount','location','\x20\x20\x20Progress:\x20','uGpmD','canceledReason','arrayBuffer','wlfUd','isTTY','stnyL','NlLeL','...','\x0aGenerating\x20report...','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','lwzrL','checklistItems','AGFZy','verifiedItems','):\x20\x22',':\x20\x22','split','\x20\x20\x20\x20','KDAmm','93816cUlqDF','submittedAt','\x20scenarios.','pCqgP','stdout','EinNX','slMXi','273669VooxIj','gnaYq','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','88082iDykuy','423qWyApF','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','fpjYs'];_0x4ef9=function(){return _0xc1f34e;};return _0x4ef9();}const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x3666a1=>'\x1b[1m'+_0x3666a1+'\x1b[0m';function getGitRepoUrl(){const _0x1dd2da=_0x26e7,_0x4d3f27={'ExwqC':function(_0x5d6964,_0x948780,_0x416bf2){return _0x5d6964(_0x948780,_0x416bf2);},'PvVKd':'utf-8','wlfUd':_0x1dd2da(0x1d0)};try{const _0x4d084a=_0x4d3f27['ExwqC'](execSync,_0x1dd2da(0x179),{'encoding':_0x4d3f27[_0x1dd2da(0x11f)],'stdio':[_0x4d3f27['wlfUd'],'pipe',_0x4d3f27[_0x1dd2da(0x147)]]})[_0x1dd2da(0x1b4)]();return _0x4d084a['replace'](/\.git$/,'')[_0x1dd2da(0x1ce)](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x252d08=_0x26e7;try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x252d08(0x191),'stdio':['pipe','pipe',_0x252d08(0x1d0)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2c943c=_0x26e7,_0x1d9d68={'liKos':function(_0x215ae5,_0x4dd328,_0x4b4ba3){return _0x215ae5(_0x4dd328,_0x4b4ba3);},'slMXi':function(_0x4b1c3a,_0x57695d,_0x237430){return _0x4b1c3a(_0x57695d,_0x237430);}},_0x18bf65=_0x1d9d68[_0x2c943c(0x1ab)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x18bf65))return null;try{const _0x4604c5=await _0x1d9d68[_0x2c943c(0x15d)](readFile,_0x18bf65,_0x2c943c(0x191));return _0x4604c5['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0xa60b55){const _0x46216e={'Nwjju':function(_0x5c37f7,_0x337844,_0x2576ef){return _0x5c37f7(_0x337844,_0x2576ef);},'QOwZN':function(_0x102a5b,_0x46fd42){return _0x102a5b(_0x46fd42);},'xPGhL':function(_0x358b00,_0x10d989,_0x1822bd,_0x2e78b){return _0x358b00(_0x10d989,_0x1822bd,_0x2e78b);}},_0x39b25a=getRangerDir(),_0x443e5b=_0x46216e['Nwjju'](join,_0x39b25a,ACTIVE_FEATURE_FILE);!_0x46216e['QOwZN'](existsSync,_0x39b25a)&&await _0x46216e['Nwjju'](mkdir,_0x39b25a,{'recursive':!![]}),await _0x46216e['xPGhL'](writeFile,_0x443e5b,_0xa60b55,'utf-8');}function getProgressDisplay(_0x1b46ea){const _0x284d24=_0x26e7,_0x3623bb={'gnaYq':function(_0x4b0dac,_0x5a4cb6){return _0x4b0dac+_0x5a4cb6;},'oPFsU':function(_0x3d17e6,_0x15b2d0){return _0x3d17e6===_0x15b2d0;},'NfykO':function(_0x4aadb5,_0x4bcc5d){return _0x4aadb5+_0x4bcc5d;},'ykvOP':function(_0x4e6794,_0x518a79){return _0x4e6794-_0x518a79;},'TPZIT':function(_0x1b91e8,_0x1574d0){return _0x1b91e8>_0x1574d0;},'yupss':function(_0x4ac5a5,_0x2aa42e){return _0x4ac5a5>_0x2aa42e;}},_0x41bd6f=_0x1b46ea[_0x284d24(0x151)]||0x0,_0x367a62=_0x1b46ea[_0x284d24(0x122)]||0x0,_0xea198e=_0x1b46ea['blockedItems']||0x0,_0x11e781=_0x1b46ea['incompleteItems']||0x0,_0x4e3384=_0x1b46ea[_0x284d24(0x1c9)]||0x0,_0x182a90=_0x3623bb[_0x284d24(0x15f)](_0x3623bb['gnaYq'](_0x41bd6f,_0x367a62)+_0xea198e+_0x11e781,_0x4e3384);if(_0x3623bb[_0x284d24(0x138)](_0x182a90,0x0))return'-';const _0x51107e=0xa,_0x57a8a1=Math['round'](_0x41bd6f/_0x182a90*_0x51107e),_0x2294ad=_0x3623bb['NfykO']('█'['repeat'](_0x57a8a1),'░'['repeat'](_0x3623bb['ykvOP'](_0x51107e,_0x57a8a1))),_0x5ed25a=[];if(_0x3623bb[_0x284d24(0x128)](_0xea198e,0x0))_0x5ed25a[_0x284d24(0x13c)](_0xea198e+_0x284d24(0x1e0));if(_0x3623bb['yupss'](_0x11e781,0x0))_0x5ed25a[_0x284d24(0x13c)](_0x11e781+'\x20incomplete');if(_0x367a62>0x0)_0x5ed25a['push'](_0x367a62+_0x284d24(0x16a));const _0x54417e=_0x5ed25a['length']>0x0?'\x20('+_0x5ed25a['join'](',\x20')+')':'';return _0x2294ad+'\x20'+_0x41bd6f+'/'+_0x182a90+_0x284d24(0x1cf)+_0x54417e;}function getCurrentSessionItems(_0x3d1c47,_0x487b92){const _0x19d9df=_0x26e7;if(!_0x3d1c47['currentSessionId'])return _0x487b92[_0x19d9df(0x125)](_0x577eb9=>!_0x577eb9['sessionId']);return _0x487b92['filter'](_0x4fbc63=>_0x4fbc63[_0x19d9df(0x178)]===_0x3d1c47[_0x19d9df(0x118)]||!_0x4fbc63['sessionId']);}function displayFeature(_0x136a08,_0x46d0f9){const _0xf89b08=_0x26e7,_0x43a2b0={'xQOEz':function(_0x4b2b3b,_0x5f0c3b){return _0x4b2b3b(_0x5f0c3b);},'VwaRe':function(_0x586cc2,_0x548625){return _0x586cc2===_0x548625;},'oSgcp':'closed','EaPhu':function(_0x27f4d7,_0x32790b){return _0x27f4d7===_0x32790b;},'xEDLQ':'verified','OwPCM':function(_0x3022bb,_0x5ba633){return _0x3022bb===_0x5ba633;},'NlLeL':function(_0x201a88,_0x1151b9){return _0x201a88===_0x1151b9;},'DVaZg':function(_0x3690cf,_0x5b6184){return _0x3690cf>_0x5b6184;},'eWOjh':function(_0x1c59db,_0x53b716){return _0x1c59db>_0x53b716;},'NuPil':function(_0x76e536,_0x401a0e){return _0x76e536!==_0x401a0e;},'uGpmD':function(_0x56494e,_0x37e0ec){return _0x56494e+_0x37e0ec;},'BRROM':'blocked','alste':'incomplete','XouWK':function(_0x4c5825,_0x5b2fe4){return _0x4c5825===_0x5b2fe4;}};console['log']('\x0a'+_0x136a08[_0xf89b08(0x170)]+'\x20('+_0x136a08['dashboardUrl']+')');_0x136a08['stats']&&console['log'](_0xf89b08(0x143)+_0x43a2b0[_0xf89b08(0x1c7)](getProgressDisplay,_0x136a08['stats']));_0x136a08['description']&&console[_0xf89b08(0x1c5)](_0xf89b08(0x1c2)+_0x136a08['description']);_0x136a08[_0xf89b08(0x192)]&&console[_0xf89b08(0x1c5)]('\x20\x20\x20Repository:\x20'+_0x136a08[_0xf89b08(0x192)]);_0x136a08['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x136a08[_0xf89b08(0x19d)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x136a08[_0xf89b08(0x132)])['toLocaleString']());_0x136a08['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x136a08[_0xf89b08(0x11a)])[_0xf89b08(0x140)]());if(_0x46d0f9&&_0x46d0f9[_0xf89b08(0x19f)]>0x0){console[_0xf89b08(0x1c5)]('\x0a\x20\x20\x20Scenarios:');for(let _0x2283d4=0x0;_0x2283d4<_0x46d0f9['length'];_0x2283d4++){const _0x51673c=_0x46d0f9[_0x2283d4];let _0x2d3c94;if(_0x43a2b0['VwaRe'](_0x51673c['status'],_0x43a2b0[_0xf89b08(0x171)])&&_0x43a2b0['VwaRe'](_0x51673c[_0xf89b08(0x1ac)],'approved'))_0x2d3c94='✅';else{if(_0x43a2b0['EaPhu'](_0x51673c[_0xf89b08(0x123)],_0x43a2b0[_0xf89b08(0x16e)]))_0x2d3c94='🟢';else{if(_0x51673c['status']===_0xf89b08(0x1c8))_0x2d3c94='🟠';else{if(_0x51673c[_0xf89b08(0x123)]==='blocked')_0x2d3c94='🛑';else{if(_0x43a2b0['OwPCM'](_0x51673c['status'],_0xf89b08(0x1a8)))_0x2d3c94='⛔';else _0x43a2b0[_0xf89b08(0x14a)](_0x51673c[_0xf89b08(0x123)],'verification_in_progress')?_0x2d3c94='⏳':_0x2d3c94='⬜';}}}}const _0x2584a7=_0x43a2b0['DVaZg'](_0x51673c['version'],0x1)?'\x20(v'+_0x51673c['version']+')':'',_0x112d27=_0x43a2b0['eWOjh'](_0x51673c['version'],0x1)&&_0x51673c['parentItemId']&&_0x43a2b0['NuPil'](_0x51673c[_0xf89b08(0x123)],_0x43a2b0[_0xf89b08(0x171)])&&_0x43a2b0[_0xf89b08(0x17a)](_0x51673c[_0xf89b08(0x123)],_0x43a2b0['xEDLQ'])?_0xf89b08(0x127):'';console['log']('\x20\x20\x20'+_0x43a2b0[_0xf89b08(0x144)](_0x2283d4,0x1)+'.\x20'+_0x2d3c94+'\x20'+_0x51673c[_0xf89b08(0x1a5)]+_0x2584a7+_0x112d27);_0x51673c[_0xf89b08(0x123)]===_0x43a2b0['BRROM']&&_0x51673c['blockedReason']&&console['log'](_0xf89b08(0x1e4)+_0x51673c[_0xf89b08(0x18e)]);_0x51673c[_0xf89b08(0x123)]===_0x43a2b0[_0xf89b08(0x19e)]&&_0x51673c[_0xf89b08(0x1e3)]&&console[_0xf89b08(0x1c5)](_0xf89b08(0x182)+_0x51673c[_0xf89b08(0x1e3)]);if(_0x43a2b0[_0xf89b08(0x1c1)](_0x51673c[_0xf89b08(0x123)],_0x43a2b0['oSgcp'])&&_0x51673c['terminalReason']===_0xf89b08(0x190))console[_0xf89b08(0x1c5)](_0xf89b08(0x1df));else _0x43a2b0[_0xf89b08(0x14a)](_0x51673c[_0xf89b08(0x123)],_0x43a2b0[_0xf89b08(0x171)])&&_0x51673c[_0xf89b08(0x145)]&&console[_0xf89b08(0x1c5)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x51673c[_0xf89b08(0x145)]);}}}export async function featureCreate(_0x478d7c,_0x3a4f73){const _0x4541bd=_0x26e7,_0x2a6700={'eJxMi':function(_0x544776,_0x2bbf64){return _0x544776===_0x2bbf64;},'mOekU':function(_0x5bde8b,_0x6225b6){return _0x5bde8b(_0x6225b6);},'RZhiz':function(_0x350b87){return _0x350b87();},'IbIMH':'\x0aCreating\x20feature\x20review...','tdSpf':function(_0x56b736,_0x189127,_0x4b2fad){return _0x56b736(_0x189127,_0x4b2fad);}},{envNames:_0x532325}=await getEnvNames();_0x2a6700['eJxMi'](_0x532325['length'],0x0)&&console['warn']('\x0a'+_0x2a6700['mOekU'](formatProfileRequiredMessage,_0x5a7b0a=>bold(_0x5a7b0a)));const _0x2037f1=_0x3a4f73['scenarios']?_0x3a4f73['scenarios']['map'](_0x166a89=>_0x166a89['trim']()):[],_0x487fa7=getGitRepoUrl(),_0x25b769=_0x2a6700['RZhiz'](getGitBranch);console[_0x4541bd(0x1c5)](_0x2a6700['IbIMH']);const _0x5a76f4=await createFeature({'name':_0x478d7c,'description':_0x3a4f73['description'],'checklist':_0x2037f1,'gitRepoUrl':_0x487fa7,'gitBranch':_0x25b769});await _0x2a6700['mOekU'](setActiveFeatureId,_0x5a76f4['id']),await tryStartCurrentSession(_0x5a76f4['id']);const _0x5c8e75=process[_0x4541bd(0x12a)]['CLAUDE_SESSION_ID'];_0x5c8e75&&registerSession(_0x5c8e75,_0x5a76f4['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x5a76f4['id']),_0x2a6700[_0x4541bd(0x117)](displayFeature,_0x5a76f4,_0x5a76f4['checklistItems']),console[_0x4541bd(0x1c5)](_0x4541bd(0x1de));}export async function featureList(_0x4a72ea){const _0x382d95=_0x26e7,_0x1cc310={'mPeEA':function(_0x3f419a){return _0x3f419a();},'WLnAs':function(_0x540a63,_0x54950e){return _0x540a63(_0x54950e);},'hlqbX':_0x382d95(0x1da),'xokbf':function(_0x3b42e2,_0x4714d4){return _0x3b42e2>_0x4714d4;},'Esvvc':function(_0x2844e2,_0x38b5c4){return _0x2844e2!==_0x38b5c4;},'SNEIn':'\x20--include-deleted'},_0x20872f={'limit':_0x4a72ea['limit']??0xa,'offset':_0x4a72ea['offset']??0x0,'includeDeleted':_0x4a72ea[_0x382d95(0x1d8)]};_0x4a72ea['currentBranch']&&(_0x20872f['gitRepoUrl']=_0x1cc310['mPeEA'](getGitRepoUrl),_0x20872f[_0x382d95(0x19d)]=getGitBranch());const _0x3594af=await _0x1cc310[_0x382d95(0x112)](listFeatures,_0x20872f);if(_0x3594af[_0x382d95(0x1d9)][_0x382d95(0x19f)]===0x0){console[_0x382d95(0x1c5)](_0x1cc310['hlqbX']);return;}const _0x452b0c=_0x1cc310[_0x382d95(0x169)](_0x3594af[_0x382d95(0x141)],_0x3594af[_0x382d95(0x1d9)][_0x382d95(0x19f)])?'Showing\x20'+_0x3594af[_0x382d95(0x1d9)]['length']+'\x20of\x20'+_0x3594af['totalCount']:_0x3594af['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x452b0c+':\x0a');for(const _0xabd88c of _0x3594af[_0x382d95(0x1d9)]){const _0xd6e18d='3|5|2|1|4|0'[_0x382d95(0x154)]('|');let _0x1c2480=0x0;while(!![]){switch(_0xd6e18d[_0x1c2480++]){case'0':console['log']('');continue;case'1':_0xabd88c[_0x382d95(0x19d)]&&console['log'](_0x382d95(0x130)+_0xabd88c[_0x382d95(0x19d)]);continue;case'2':_0xabd88c['stats']&&console['log'](_0x382d95(0x143)+getProgressDisplay(_0xabd88c[_0x382d95(0x184)]));continue;case'3':console[_0x382d95(0x1c5)](''+_0xabd88c[_0x382d95(0x170)]);continue;case'4':console['log']('\x20\x20\x20Created:\x20'+new Date(_0xabd88c[_0x382d95(0x132)])['toLocaleDateString']());continue;case'5':console[_0x382d95(0x1c5)]('\x20\x20\x20ID:\x20'+_0xabd88c['id']);continue;}break;}}const _0x36b9af=_0x20872f[_0x382d95(0x12e)]??0xa,_0x504737=(_0x20872f[_0x382d95(0x1b8)]??0x0)+_0x3594af['items'][_0x382d95(0x19f)];if(_0x504737<_0x3594af[_0x382d95(0x141)]){const _0x92f0af=_0x1cc310['Esvvc'](_0x36b9af,0xa)?'\x20--limit\x20'+_0x36b9af:'',_0x45d0c3=_0x4a72ea['currentBranch']?_0x382d95(0x1aa):'',_0x4538d6=_0x4a72ea[_0x382d95(0x1d8)]?_0x1cc310[_0x382d95(0x18c)]:'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x504737+_0x92f0af+_0x45d0c3+_0x4538d6);}}export async function featureShow(_0x7c72ab){const _0x3bb5a8=_0x26e7,_0x540763={'hGEuv':function(_0xb58e84,_0x33211a){return _0xb58e84(_0x33211a);},'GFDVD':function(_0x305bd7,_0x279ce9,_0x1e4359){return _0x305bd7(_0x279ce9,_0x1e4359);}},_0x488ab8=_0x7c72ab||await getActiveFeatureId();if(!_0x488ab8)throw new Error(_0x3bb5a8(0x177));const _0x49eae8=await _0x540763[_0x3bb5a8(0x1d7)](getFeature,_0x488ab8);_0x540763['GFDVD'](displayFeature,_0x49eae8,_0x49eae8['checklistItems']);}export async function featureResume(_0x35d888){const _0x18ba6d=_0x26e7,_0x3c74e4={'EinNX':function(_0x52915b,_0x1efd47){return _0x52915b(_0x1efd47);},'jbUbF':function(_0x27c960){return _0x27c960();},'VuXjC':function(_0x209431,_0x40c7b5,_0x6be003){return _0x209431(_0x40c7b5,_0x6be003);},'UnKIF':function(_0x296c4e,_0x2f0e35){return _0x296c4e||_0x2f0e35;},'aoJKX':function(_0x117be7,_0x5775b7){return _0x117be7===_0x5775b7;},'TbdyV':_0x18ba6d(0x1cc),'XBsoy':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','zMFGG':function(_0x214d81,_0x5345b7){return _0x214d81(_0x5345b7);},'wYCUg':function(_0x5ac044,_0x30254b){return _0x5ac044!==_0x30254b;},'iZmaK':function(_0x26d078,_0x1deea2,_0xaf0425){return _0x26d078(_0x1deea2,_0xaf0425);}};if(_0x35d888){const _0x5bfa3d=await getFeature(_0x35d888);await _0x3c74e4[_0x18ba6d(0x15c)](setActiveFeatureId,_0x5bfa3d['id']);const _0x37c8ab=_0x3c74e4[_0x18ba6d(0x1d6)](getGitBranch);_0x37c8ab&&_0x37c8ab!==_0x5bfa3d[_0x18ba6d(0x19d)]&&(await updateFeature(_0x5bfa3d['id'],{'gitBranch':_0x37c8ab}),console[_0x18ba6d(0x1c5)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x37c8ab));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x5bfa3d['name']+'\x20('+_0x5bfa3d['id']+')'),await tryStartCurrentSession(_0x5bfa3d['id']);const _0x9692ca=process['env']['CLAUDE_SESSION_ID'];_0x9692ca&&registerSession(_0x9692ca,_0x5bfa3d['id']);_0x3c74e4['VuXjC'](displayFeature,_0x5bfa3d,_0x5bfa3d['checklistItems']),await printFeedbackNudge(_0x5bfa3d['id']);return;}const _0x145e58=getGitRepoUrl(),_0x3e0681=_0x3c74e4[_0x18ba6d(0x1d6)](getGitBranch);if(!_0x145e58&&!_0x3e0681)throw new Error(_0x18ba6d(0x11c));console['log'](_0x18ba6d(0x176)+_0x3c74e4['UnKIF'](_0x145e58,_0x18ba6d(0x199))+_0x18ba6d(0x17d)+(_0x3e0681||'any')+_0x18ba6d(0x14b));const _0x2f78c3=await listFeatures({'gitRepoUrl':_0x145e58,'gitBranch':_0x3e0681}),_0x2b7474=_0x2f78c3[_0x18ba6d(0x1d9)][_0x18ba6d(0x125)](_0x14e802=>!_0x14e802[_0x18ba6d(0x11a)]);if(_0x3c74e4['aoJKX'](_0x2b7474[_0x18ba6d(0x19f)],0x0)){console[_0x18ba6d(0x1c5)](_0x18ba6d(0x134)),console[_0x18ba6d(0x1c5)](_0x3c74e4[_0x18ba6d(0x1c3)]);return;}let _0x36c5a0;if(_0x3c74e4['aoJKX'](_0x2b7474[_0x18ba6d(0x19f)],0x1))_0x36c5a0=_0x2b7474[0x0];else{const _0x44a5b3=process[_0x18ba6d(0x186)][_0x18ba6d(0x148)]&&process[_0x18ba6d(0x15b)]['isTTY'];if(!_0x44a5b3){console[_0x18ba6d(0x1c5)](_0x3c74e4[_0x18ba6d(0x183)]);for(const _0xc67a54 of _0x2b7474){console[_0x18ba6d(0x1c5)]('\x20\x20'+_0xc67a54['name']),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0xc67a54['id']),_0xc67a54[_0x18ba6d(0x184)]&&console[_0x18ba6d(0x1c5)](_0x18ba6d(0x121)+_0x3c74e4['zMFGG'](getProgressDisplay,_0xc67a54['stats'])),_0xc67a54['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xc67a54['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x4beafe}=await _0x1732ef[_0x18ba6d(0x115)]([{'type':_0x18ba6d(0x165),'name':_0x18ba6d(0x1bb),'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x2b7474['map'](_0xf9b729=>({'name':_0xf9b729['name']+'\x20('+_0xf9b729['id']+')','value':_0xf9b729['id']}))}]);_0x36c5a0=_0x2b7474['find'](_0x46c381=>_0x46c381['id']===_0x4beafe);}await setActiveFeatureId(_0x36c5a0['id']);_0x3e0681&&_0x3c74e4[_0x18ba6d(0x1a0)](_0x3e0681,_0x36c5a0['gitBranch'])&&(await updateFeature(_0x36c5a0['id'],{'gitBranch':_0x3e0681}),console['log'](_0x18ba6d(0x1e1)+_0x3e0681));console['log'](_0x18ba6d(0x116)+_0x36c5a0['name']+'\x20('+_0x36c5a0['id']+')'),await tryStartCurrentSession(_0x36c5a0['id']);const _0x150782=await getFeature(_0x36c5a0['id']),_0x422b98=process[_0x18ba6d(0x12a)][_0x18ba6d(0x193)];_0x422b98&&_0x3c74e4['iZmaK'](registerSession,_0x422b98,_0x150782['id']),displayFeature(_0x150782,_0x150782[_0x18ba6d(0x14f)]),await printFeedbackNudge(_0x150782['id']);}async function printFeedbackNudge(_0x192e60){const _0x349531=_0x26e7,_0x51d265={'Fgizv':function(_0xa41f29,_0x1f7f5a){return _0xa41f29>_0x1f7f5a;}};try{const {items:_0x410b6c}=await getActionItems(_0x192e60);let _0x451e3b=0x0,_0xec04a9=0x0;for(const _0x5a33e9 of _0x410b6c){const _0x105ccc=await getItemFeedback(_0x192e60,_0x5a33e9['id']);_0x51d265[_0x349531(0x13d)](_0x105ccc['unaddressedComments'][_0x349531(0x19f)],0x0)&&(_0x451e3b+=_0x105ccc['unaddressedComments'][_0x349531(0x19f)],_0xec04a9++);}_0x51d265[_0x349531(0x13d)](_0x451e3b,0x0)&&(console[_0x349531(0x1c5)](_0x349531(0x136)+_0x451e3b+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0xec04a9+_0x349531(0x13f)),console[_0x349531(0x1c5)]('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0xde3dc0){const _0x5db71a=_0x26e7,_0xcc5f74={'AMbfR':function(_0x56aa83,_0x555bfe){return _0x56aa83(_0x555bfe);},'WoIeo':function(_0x1ebc82,_0x4a33fc,_0x3e1894){return _0x1ebc82(_0x4a33fc,_0x3e1894);}};try{const {sessions:_0x40e7b1}=await _0xcc5f74['AMbfR'](listFeatureSessions,_0xde3dc0),_0x575294=_0x40e7b1[_0x5db71a(0x1a1)](_0x330d0a=>_0x330d0a[_0x5db71a(0x123)]==='ready');_0x575294&&(await _0xcc5f74['WoIeo'](startSession,_0xde3dc0,_0x575294['id']),console[_0x5db71a(0x1c5)](_0x5db71a(0x16f)+_0x575294['iteration']));}catch{}}export async function featureReport(_0x429510,_0x1f6691){const _0x5f390d=_0x26e7,_0x3e9899={'xPDQv':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','YxtJa':_0x5f390d(0x14c),'WdQEZ':function(_0x5854c3,_0x36ecf0,_0x4c63af){return _0x5854c3(_0x36ecf0,_0x4c63af);},'GQHHH':function(_0x2c6c9c,_0x1261ca,_0x35a9c6,_0x2b9b4b){return _0x2c6c9c(_0x1261ca,_0x35a9c6,_0x2b9b4b);},'ELmxw':function(_0x48c81e){return _0x48c81e();},'ChiNI':'reports'},_0x291ea8=_0x429510||await getActiveFeatureId();if(!_0x291ea8)throw new Error(_0x3e9899[_0x5f390d(0x1cb)]);console[_0x5f390d(0x1c5)](_0x3e9899['YxtJa']);const _0x12de99=await _0x3e9899[_0x5f390d(0x129)](getFeatureReportMarkdown,_0x291ea8,{'style':_0x1f6691['style']}),_0x1d2420=_0x1f6691[_0x5f390d(0x1ae)]||_0x3e9899['GQHHH'](join,_0x3e9899[_0x5f390d(0x1d3)](getRangerDir),_0x3e9899['ChiNI'],_0x291ea8+_0x5f390d(0x1ca)),_0x132856=join(_0x1d2420,'..');!existsSync(_0x132856)&&await mkdir(_0x132856,{'recursive':!![]}),await _0x3e9899['GQHHH'](writeFile,_0x1d2420,_0x12de99,'utf-8'),console['log'](_0x5f390d(0x19a)+_0x1d2420);}function getScenarioResult(_0x6ac1b3){const _0x162f1e=_0x26e7,_0xf01574={'yyocJ':'closed'};if(_0x6ac1b3[_0x162f1e(0x123)]===_0xf01574[_0x162f1e(0x12c)])return _0x6ac1b3['terminalReason']??_0x162f1e(0x1a8);if(_0x6ac1b3['status']==='verification_in_progress')return _0x162f1e(0x1d5);return _0x6ac1b3['status'];}function getScenarioRationale(_0x1c8ce9,_0x429231){const _0xe47b90=_0x26e7;if(_0x429231)return _0x429231;if(_0x1c8ce9['blockedReason'])return _0x1c8ce9['blockedReason'];if(_0x1c8ce9[_0xe47b90(0x1e3)])return _0x1c8ce9['incompleteReason'];if(_0x1c8ce9['canceledReason'])return _0x1c8ce9[_0xe47b90(0x145)];if(_0x1c8ce9['notes'])return _0x1c8ce9['notes'];return null;}export async function featureReportPrDescription(_0x7aae15,_0xa82eae){const _0x2f7cd5=_0x26e7,_0x17b579={'Stmqt':function(_0x35053c,_0x2209c9){return _0x35053c(_0x2209c9);},'eRuJd':function(_0x26b9f2,_0x94712,_0x27f13f){return _0x26b9f2(_0x94712,_0x27f13f);},'EuJCv':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','oEWuF':_0x2f7cd5(0x160)},_0x510489=_0x7aae15||await getActiveFeatureId();if(!_0x510489)throw new Error(_0x2f7cd5(0x1b1));const _0x190e87=await _0x17b579[_0x2f7cd5(0x131)](getFeature,_0x510489),_0x11b9ae=_0x190e87[_0x2f7cd5(0x14f)]||[],_0xbcbdca=_0x17b579[_0x2f7cd5(0x17b)](getCurrentSessionItems,_0x190e87,_0x11b9ae);_0xbcbdca[_0x2f7cd5(0x19f)]===0x0&&(console['error'](_0x17b579['EuJCv']),process['exit'](0x1));const _0x34f975=_0xa82eae['excludeScenarios']??[],_0x142ab5=_0x34f975[_0x2f7cd5(0x125)](_0x3ff66a=>!Number[_0x2f7cd5(0x1c4)](_0x3ff66a)||_0x3ff66a<0x1||_0x3ff66a>_0xbcbdca['length']);if(_0x142ab5['length']>0x0){console['error'](_0x2f7cd5(0x1b5)+_0x142ab5[_0x2f7cd5(0x1d4)](',\x20')),console[_0x2f7cd5(0x1c5)]('\x0aAvailable\x20scenarios:');for(let _0x5d84c0=0x0;_0x5d84c0<_0xbcbdca[_0x2f7cd5(0x19f)];_0x5d84c0++){console['log']('\x20\x20'+(_0x5d84c0+0x1)+'.\x20'+_0xbcbdca[_0x5d84c0]['description']);}process['exit'](0x1);}const _0x4c88ee=new Set(_0x34f975[_0x2f7cd5(0x13a)](_0x29bc44=>_0x29bc44-0x1)),_0x15e407=_0xbcbdca['filter']((_0xf310cb,_0x20e3c3)=>!_0x4c88ee['has'](_0x20e3c3));_0x15e407['length']===0x0&&(console[_0x2f7cd5(0x1db)](_0x17b579[_0x2f7cd5(0x11d)]),process['exit'](0x1));if(_0xa82eae['json'])await outputJsonReport(_0x510489,_0x190e87,_0x15e407);else{const _0x347c99=await _0x17b579[_0x2f7cd5(0x17b)](getFeatureReportMarkdown,_0x510489,{'itemIds':_0x15e407[_0x2f7cd5(0x13a)](_0x2591c6=>_0x2591c6['id'])});process['stdout']['write'](_0x347c99[_0x2f7cd5(0x114)]()+'\x0a');}}async function outputJsonReport(_0x2c63b3,_0x1c0fdd,_0x302755){const _0x129c7f=_0x26e7,_0x5ae5b6={'CqkGA':function(_0x52a16f,_0x21f50b){return _0x52a16f(_0x21f50b);},'FKrjj':function(_0x40acd5,_0x19eabd,_0x12a451){return _0x40acd5(_0x19eabd,_0x12a451);}},_0x1ad6ce=getApiBaseUrl(),_0x4f6898=await getFeatureReport(_0x2c63b3),_0x3be8ba=new Map(_0x4f6898['checklistItems']['map'](_0x2e91bd=>[_0x2e91bd['id'],_0x2e91bd])),_0x4ba15b=await Promise[_0x129c7f(0x120)](_0x302755[_0x129c7f(0x13a)](async _0xcd8b00=>{const _0x402d33=_0x129c7f,_0x3b3e6b=_0x3be8ba['get'](_0xcd8b00['id']),_0x16750e=_0x3b3e6b?.['linkedSession']??null;let _0x325e6f=[];if(_0xcd8b00['browserSessionId'])try{const {steps:_0x16d82d}=await getBrowserSessionSteps(_0xcd8b00[_0x402d33(0x175)]);_0x16d82d['length']>0x0&&(_0x325e6f=_0x16d82d[_0x402d33(0x13a)](_0x48c7f4=>{const _0x37b063=_0x402d33,_0xae036c=_0x48c7f4[_0x37b063(0x16b)][_0x37b063(0x1a1)](_0x4e1a92=>_0x4e1a92['assetType']==='screenshot'&&_0x4e1a92['timing']===_0x37b063(0x1b0))??_0x48c7f4['assets'][_0x37b063(0x1a1)](_0x3b5c04=>_0x3b5c04[_0x37b063(0x197)]==='screenshot');let _0x190702=null,_0x1896e5=null;if(_0xae036c){const _0x1a74aa=_0xae036c[_0x37b063(0x139)][_0x37b063(0x142)]['split']('/')[_0x37b063(0x1a4)]();_0x190702=_0x1ad6ce+_0x37b063(0x195)+_0xcd8b00[_0x37b063(0x175)]+'/artifacts/'+_0x1a74aa,_0x1a74aa&&(_0x1896e5=_0x1a74aa['replace'](/\.\w+$/,'')[_0x37b063(0x1ce)](/^(key_)?\d+_/,'')[_0x37b063(0x1ce)](/[-_]/g,'\x20'));}return{'description':_0x1896e5||_0x48c7f4['description']||_0x48c7f4['stepName']||'Step\x20'+_0x48c7f4[_0x37b063(0x1a6)],'screenshot':_0x190702,'is_key_step':_0x48c7f4['isKeyStep']};}));}catch{}return _0x325e6f[_0x402d33(0x19f)]===0x0&&_0x16750e?.[_0x402d33(0x133)]&&(_0x325e6f=_0x16750e[_0x402d33(0x133)]['map']((_0x3c419e,_0x4e3ef)=>({'description':'Screenshot\x20'+(_0x4e3ef+0x1),'screenshot':_0x3c419e,'is_key_step':![]}))),{'description':_0xcd8b00['description'],'result':_0x5ae5b6['CqkGA'](getScenarioResult,_0xcd8b00),'rationale':_0x5ae5b6['FKrjj'](getScenarioRationale,_0xcd8b00,_0x16750e?.['agentResponse']),'steps':_0x325e6f};})),_0x224a46={'url':_0x1c0fdd['dashboardUrl'],'scenarios':_0x4ba15b};process[_0x129c7f(0x15b)]['write'](JSON[_0x129c7f(0x1bc)](_0x224a46,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x2b45c5){const _0x937e16=_0x26e7,_0x41697d={'zaWuX':function(_0x5a3829){return _0x5a3829();},'stnyL':function(_0x2ce9cd,_0x2d69e4){return _0x2ce9cd(_0x2d69e4);},'WwsGn':_0x937e16(0x1b7),'KDAmm':function(_0x2ee46a,_0x5779cb){return _0x2ee46a(_0x5779cb);},'NmpGp':'Current\x20session\x20not\x20found.','sXCqB':function(_0x50aa37,_0x311c8c){return _0x50aa37===_0x311c8c;},'JLlcV':_0x937e16(0x1be),'AGFZy':'\x0a✅\x20Session\x20is\x20already\x20completed.','GMTxF':function(_0x121e11,_0x5e3fe8){return _0x121e11!==_0x5e3fe8;},'JoMjG':_0x937e16(0x1d5),'lQaUa':function(_0x178a18,_0x4ed350,_0x3a1b2a){return _0x178a18(_0x4ed350,_0x3a1b2a);}},_0x4cb5ad=_0x2b45c5||await _0x41697d['zaWuX'](getActiveFeatureId);if(!_0x4cb5ad)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 _0x5d4bba=await _0x41697d[_0x937e16(0x149)](getFeature,_0x4cb5ad);if(!_0x5d4bba['currentSessionId'])throw new Error(_0x41697d['WwsGn']);const {sessions:_0x56eb3e}=await _0x41697d[_0x937e16(0x156)](listFeatureSessions,_0x4cb5ad),_0x4c03ef=_0x56eb3e['find'](_0x5bd38c=>_0x5bd38c['id']===_0x5d4bba['currentSessionId']);if(!_0x4c03ef)throw new Error(_0x41697d['NmpGp']);if(_0x41697d['sXCqB'](_0x4c03ef['status'],_0x41697d['JLlcV'])){console['log'](_0x41697d[_0x937e16(0x150)]);return;}if(_0x41697d['GMTxF'](_0x4c03ef[_0x937e16(0x123)],_0x41697d['JoMjG']))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x4c03ef[_0x937e16(0x123)]);console[_0x937e16(0x1c5)](_0x937e16(0x137)),await _0x41697d['lQaUa'](concludeSession,_0x4cb5ad,_0x5d4bba[_0x937e16(0x118)]),console['log']('\x0a✅\x20Session\x20'+_0x4c03ef['iteration']+_0x937e16(0x135)),console[_0x937e16(0x1c5)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x510dc1){const _0x2406f6=_0x26e7,_0x59cf49={'BgKON':_0x2406f6(0x1b1),'IGoEZ':function(_0x1df8da,_0x7f03a){return _0x1df8da(_0x7f03a);},'JuKbE':function(_0x1e4273,_0x13791f){return _0x1e4273===_0x13791f;},'jJsxy':_0x2406f6(0x174),'NSJla':_0x2406f6(0x1d5)},_0x51baf2=_0x510dc1||await getActiveFeatureId();if(!_0x51baf2)throw new Error(_0x59cf49['BgKON']);const _0x6c43c3=await _0x59cf49['IGoEZ'](getFeature,_0x51baf2);console[_0x2406f6(0x1c5)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x6c43c3['name']+'\x0a');const {sessions:_0x3566ee}=await listFeatureSessions(_0x51baf2);if(_0x59cf49['JuKbE'](_0x3566ee['length'],0x0)){console[_0x2406f6(0x1c5)](_0x59cf49['jJsxy']);return;}for(const _0x40e9e6 of _0x3566ee){const _0x29fffa=_0x40e9e6[_0x2406f6(0x123)]==='completed'?'✅':_0x40e9e6['status']===_0x59cf49[_0x2406f6(0x16d)]?'🔄':'▶️';console[_0x2406f6(0x1c5)](_0x29fffa+_0x2406f6(0x13e)+_0x40e9e6[_0x2406f6(0x1e2)]+'\x20('+_0x40e9e6['id']+')'),console[_0x2406f6(0x1c5)]('\x20\x20\x20Status:\x20'+_0x40e9e6[_0x2406f6(0x123)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x40e9e6[_0x2406f6(0x132)])[_0x2406f6(0x140)]()),_0x40e9e6[_0x2406f6(0x11a)]&&console[_0x2406f6(0x1c5)](_0x2406f6(0x1cd)+new Date(_0x40e9e6['completedAt'])[_0x2406f6(0x140)]()),console['log']('');}}function _0x26e7(_0x1ccdd9,_0x3df46a){_0x1ccdd9=_0x1ccdd9-0x111;const _0x4ef9a3=_0x4ef9();let _0x26e7bd=_0x4ef9a3[_0x1ccdd9];return _0x26e7bd;}export async function featureAddScenario(_0x57f73e,_0x2203cf){const _0x34df0d=_0x26e7,_0x4a1fde={'tZPUw':function(_0xd39833){return _0xd39833();},'DoWbK':function(_0x343f09,_0x35c476){return _0x343f09(_0x35c476);},'pCqgP':function(_0x3d29c2,_0x572af5,_0x532f92){return _0x3d29c2(_0x572af5,_0x532f92);}},_0x3e770e=_0x2203cf||await _0x4a1fde['tZPUw'](getActiveFeatureId);if(!_0x3e770e)throw new Error(_0x34df0d(0x177));const _0x34b428=await _0x4a1fde[_0x34df0d(0x1a7)](getFeature,_0x3e770e);if(_0x34b428[_0x34df0d(0x1d1)]&&!_0x34b428[_0x34df0d(0x1d1)]['submittedAt'])throw new Error(_0x34df0d(0x113)+_0x34b428[_0x34df0d(0x1a9)]);await _0x4a1fde[_0x34df0d(0x15a)](createChecklistItem,_0x3e770e,_0x57f73e);const _0x210f64=await getFeature(_0x3e770e);console['log']('\x0a✅\x20Scenario\x20added'),_0x4a1fde['pCqgP'](displayFeature,_0x210f64,_0x210f64[_0x34df0d(0x14f)]);}export async function featureEditScenario(_0x4b3407,_0x5c8d1b){const _0x319b32=_0x26e7,_0x5c0498={'sLKNz':function(_0x2bd6a2){return _0x2bd6a2();},'AbkYI':_0x319b32(0x1bd),'MsRea':_0x319b32(0x163),'vLnMS':function(_0x4f414b,_0x22ea23){return _0x4f414b===_0x22ea23;},'IZnnB':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','imDjL':function(_0x3fe61d,_0xdbab74){return _0x3fe61d<_0xdbab74;},'rJjQL':_0x319b32(0x11b),'EUJQW':function(_0x4625da,_0x284052){return _0x4625da+_0x284052;},'CmvTo':function(_0x521ba8,_0x430145){return _0x521ba8(_0x430145);}},_0xbc0994=_0x5c8d1b['id']||await _0x5c0498['sLKNz'](getActiveFeatureId);!_0xbc0994&&(console[_0x319b32(0x1db)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x319b32(0x1db)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x319b32(0x16c)](0x1));const _0x519432=await getFeature(_0xbc0994);_0x519432['latestReview']&&!_0x519432[_0x319b32(0x1d1)][_0x319b32(0x158)]&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console['error'](_0x5c0498[_0x319b32(0x19b)]),console['error']('\x20\x20'+_0x519432[_0x319b32(0x1a9)]),process['exit'](0x1));const _0x11ae7a=_0x519432['checklistItems']||[];_0x11ae7a[_0x319b32(0x19f)]===0x0&&(console['error'](_0x5c0498[_0x319b32(0x172)]),process[_0x319b32(0x16c)](0x1));if(_0x5c0498[_0x319b32(0x17c)](_0x5c8d1b[_0x319b32(0x181)],undefined)){console[_0x319b32(0x1db)](_0x5c0498['IZnnB']),console['log']('\x0aAvailable\x20scenarios:');for(let _0x3afa02=0x0;_0x3afa02<_0x11ae7a[_0x319b32(0x19f)];_0x3afa02++){console[_0x319b32(0x1c5)]('\x20\x20'+(_0x3afa02+0x1)+'.\x20'+_0x11ae7a[_0x3afa02][_0x319b32(0x1a5)]);}process['exit'](0x1);}const _0x3346a0=_0x5c8d1b[_0x319b32(0x181)]-0x1;if(_0x5c0498[_0x319b32(0x1a2)](_0x3346a0,0x0)||_0x3346a0>=_0x11ae7a['length']){console['error'](_0x319b32(0x12d)+_0x5c8d1b['scenario']+_0x319b32(0x1c6)+_0x11ae7a[_0x319b32(0x19f)]+_0x319b32(0x159)),console['log'](_0x5c0498['rJjQL']);for(let _0xd604db=0x0;_0xd604db<_0x11ae7a['length'];_0xd604db++){console[_0x319b32(0x1c5)]('\x20\x20'+_0x5c0498['EUJQW'](_0xd604db,0x1)+'.\x20'+_0x11ae7a[_0xd604db]['description']);}process[_0x319b32(0x16c)](0x1);}const _0x38e479=_0x11ae7a[_0x3346a0];await updateChecklistItem(_0xbc0994,_0x38e479['id'],{'description':_0x4b3407});const _0x534f5d=await _0x5c0498['CmvTo'](getFeature,_0xbc0994);console[_0x319b32(0x1c5)](_0x319b32(0x1ad)),displayFeature(_0x534f5d,_0x534f5d['checklistItems']);}async function downloadFeedbackImage(_0x11390d,_0x38c336){const _0x47762c=_0x26e7,_0x37437c={'lwzrL':function(_0x462799,_0x46b30b,_0x12f07b){return _0x462799(_0x46b30b,_0x12f07b);},'rowBB':_0x47762c(0x12b)};try{const _0xfcf661=_0x37437c[_0x47762c(0x14e)](join,getRangerDir(),_0x37437c['rowBB']);await _0x37437c['lwzrL'](mkdir,_0xfcf661,{'recursive':!![]});const _0x275324=_0x37437c['lwzrL'](join,_0xfcf661,'comment_'+_0x38c336+_0x47762c(0x173)),_0x1457ea=await fetch(_0x11390d);if(!_0x1457ea['ok'])return null;const _0x451aae=Buffer[_0x47762c(0x187)](await _0x1457ea[_0x47762c(0x146)]());return await _0x37437c[_0x47762c(0x14e)](writeFile,_0x275324,_0x451aae),_0x275324;}catch{return null;}}export async function featureGetReview(_0x4a338c){const _0x47eea9=_0x26e7,_0xb608f6={'NVAwL':function(_0x562614){return _0x562614();},'Sttit':_0x47eea9(0x177),'mUsIj':function(_0x499325,_0x30d1f1){return _0x499325(_0x30d1f1);},'fpjYs':'No\x20scenarios\x20found.','gjtgf':function(_0x13b7e9,_0x174adb){return _0x13b7e9<_0x174adb;},'pxhIT':function(_0x28e657,_0x17fcf8){return _0x28e657>_0x17fcf8;},'Wkssj':function(_0x44a4e5,_0x31614f){return _0x44a4e5+_0x31614f;},'eAaWd':'en-US','kbxjR':'numeric','bPDIs':function(_0x51f2fb,_0x4d2e40,_0x296c46){return _0x51f2fb(_0x4d2e40,_0x296c46);},'bLNVD':_0x47eea9(0x18d),'uNKel':function(_0x5d5c9e,_0x4a6616){return _0x5d5c9e>=_0x4a6616;},'hNtVy':function(_0x5c06d3,_0x73cc99){return _0x5c06d3+_0x73cc99;}},_0x188175=_0x4a338c||await _0xb608f6[_0x47eea9(0x1ba)](getActiveFeatureId);if(!_0x188175)throw new Error(_0xb608f6['Sttit']);const _0x5902a6=await _0xb608f6[_0x47eea9(0x185)](getFeature,_0x188175),{items:_0x185820}=await getActionItems(_0x188175);console['log'](_0x47eea9(0x196)+_0x5902a6['name']+'\x20('+_0x5902a6['id']+')\x0a');if(_0x185820['length']===0x0){console['log'](_0xb608f6[_0x47eea9(0x164)]);return;}for(let _0x35d421=0x0;_0xb608f6['gjtgf'](_0x35d421,_0x185820[_0x47eea9(0x19f)]);_0x35d421++){const _0x123bc6=_0x185820[_0x35d421],_0x98541f=_0xb608f6['pxhIT'](_0x123bc6[_0x47eea9(0x1e5)],0x1)?'\x20(v'+_0x123bc6[_0x47eea9(0x1e5)]+')':'',_0x3b7e2c=await getItemFeedback(_0x188175,_0x123bc6['id']);if(_0x3b7e2c[_0x47eea9(0x111)]['length']>0x0){console[_0x47eea9(0x1c5)](_0x47eea9(0x1b9)+_0xb608f6[_0x47eea9(0x168)](_0x35d421,0x1)+_0x47eea9(0x153)+_0x123bc6['description']+'\x22'+_0x98541f+'\x20—\x20'+_0x3b7e2c[_0x47eea9(0x111)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x29bab0 of _0x3b7e2c[_0x47eea9(0x111)]){const _0x539831=new Date(_0x29bab0[_0x47eea9(0x132)])['toLocaleDateString'](_0xb608f6['eAaWd'],{'month':'short','day':_0xb608f6['kbxjR']}),_0x45911f=_0x29bab0['authorName']||_0x29bab0['authorEmail']||_0x47eea9(0x1bf);console[_0x47eea9(0x1c5)](_0x47eea9(0x126)+_0x45911f+'\x20('+_0x539831+_0x47eea9(0x152)+_0x29bab0['content']+'\x22');if(_0x29bab0['assetUrl']){const _0x4a7ff5=await _0xb608f6['bPDIs'](downloadFeedbackImage,_0x29bab0['assetUrl'],_0x29bab0['id']);_0x4a7ff5&&console[_0x47eea9(0x1c5)](_0x47eea9(0x14d)+_0x4a7ff5);}if(_0x29bab0[_0x47eea9(0x119)]){const _0x59dff4=_0x29bab0[_0x47eea9(0x119)]['selector'][_0x47eea9(0x154)]('\x20>\x20')['pop']()?.['split'](':')[0x0]||'element',_0x319985=_0x29bab0['domRef'][_0x47eea9(0x1a3)]?'\x20\x22'+_0x29bab0['domRef'][_0x47eea9(0x1a3)][_0x47eea9(0x18f)](0x0,0x3c)+'\x22':'';console['log'](_0x47eea9(0x194)+_0x59dff4+'>'+_0x319985),console['log'](_0x47eea9(0x1b2)+_0x29bab0[_0x47eea9(0x119)][_0x47eea9(0x12f)]);}else{if(_0x29bab0['spatial']){const _0x246cf1=_0x29bab0[_0x47eea9(0x17e)]['coordinates'];_0x29bab0[_0x47eea9(0x17e)]['type']===_0xb608f6[_0x47eea9(0x18a)]&&_0xb608f6[_0x47eea9(0x1b6)](_0x246cf1['length'],0x2)?console[_0x47eea9(0x1c5)](_0x47eea9(0x11e)+_0x246cf1[0x0][_0x47eea9(0x166)](0x2)+',\x20'+_0x246cf1[0x1]['toFixed'](0x2)+')'):console[_0x47eea9(0x1c5)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x29bab0[_0x47eea9(0x17e)][_0x47eea9(0x198)]+_0x47eea9(0x1af)+_0x246cf1[_0x47eea9(0x13a)](_0x5cb4e1=>_0x5cb4e1[_0x47eea9(0x166)](0x2))[_0x47eea9(0x1d4)](',\x20')+']');}}}if(_0x3b7e2c['canonicalFlow']){console[_0x47eea9(0x1c5)](_0x47eea9(0x1b3));for(const _0x3ff6ed of _0x3b7e2c['canonicalFlow']['split']('\x0a')){console['log'](_0x47eea9(0x155)+_0x3ff6ed);}}}else console[_0x47eea9(0x1c5)]('Scenario\x20'+_0xb608f6['hNtVy'](_0x35d421,0x1)+_0x47eea9(0x153)+_0x123bc6['description']+'\x22'+_0x98541f+_0x47eea9(0x17f)),console[_0x47eea9(0x1c5)](_0x47eea9(0x167));console['log']('');}}export async function featureDelete(_0x3caf9b){const _0x27a2ff=_0x26e7,_0x3a1f89={'yvlbS':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x5db655=_0x3caf9b||await getActiveFeatureId();if(!_0x5db655)throw new Error(_0x3a1f89[_0x27a2ff(0x180)]);const _0x3c82c6=await getFeature(_0x5db655);await softDeleteFeature(_0x5db655),console[_0x27a2ff(0x1c5)](_0x27a2ff(0x13b)+_0x3c82c6['name']+'\x20('+_0x5db655+')'),console['log'](_0x27a2ff(0x1dd)+_0x5db655);}export async function featureRestore(_0x1743d4){const _0x403d6=_0x26e7,_0x261b2c={'JczLs':function(_0x3b2624,_0x883d5a){return _0x3b2624(_0x883d5a);}};await _0x261b2c[_0x403d6(0x1dc)](restoreFeature,_0x1743d4);const _0x18ecd6=await _0x261b2c['JczLs'](getFeature,_0x1743d4);console[_0x403d6(0x1c5)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x18ecd6['name']+'\x20('+_0x1743d4+')'),displayFeature(_0x18ecd6,_0x18ecd6['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x50dc58,_0x18df67){const _0x46ef30=_0x367f,_0xaf2fd6=_0x50dc58();while(!![]){try{const _0x59b743=-parseInt(_0x46ef30(0xdc))/0x1*(parseInt(_0x46ef30(0xe5))/0x2)+parseInt(_0x46ef30(0xd6))/0x3+-parseInt(_0x46ef30(0xdf))/0x4+parseInt(_0x46ef30(0xdd))/0x5+parseInt(_0x46ef30(0xd7))/0x6*(parseInt(_0x46ef30(0xda))/0x7)+parseInt(_0x46ef30(0xe1))/0x8+-parseInt(_0x46ef30(0xe4))/0x9;if(_0x59b743===_0x18df67)break;else _0xaf2fd6['push'](_0xaf2fd6['shift']());}catch(_0x32c037){_0xaf2fd6['push'](_0xaf2fd6['shift']());}}}(_0x1924,0xefafd));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x33b0e5=_0x367f,_0x5c6c9d={'GbBUR':'SIGINT'};if(cancellationHandlersInstalled)return;const _0x9794bf=()=>{process['exit'](0x0);};process[_0x33b0e5(0xde)](_0x5c6c9d['GbBUR'],_0x9794bf),process[_0x33b0e5(0xde)](_0x33b0e5(0xd8),_0x9794bf),process[_0x33b0e5(0xde)](_0x33b0e5(0xe0),_0x9794bf),cancellationHandlersInstalled=!![];}function _0x367f(_0x221387,_0x13b93c){_0x221387=_0x221387-0xd6;const _0x1924e9=_0x1924();let _0x367fc4=_0x1924e9[_0x221387];return _0x367fc4;}export async function hook(_0x3377eb,_0x4c1edf){const _0x42703c=_0x367f;installCancellationHandlers();const _0x51ff6d=HOOKS[_0x3377eb];if(!_0x51ff6d){const _0x52974c=Object[_0x42703c(0xe2)](HOOKS)[_0x42703c(0xd9)](',\x20');console[_0x42703c(0xe3)]('Unknown\x20hook:\x20'+_0x3377eb),console['error']('Valid\x20hooks:\x20'+_0x52974c),process[_0x42703c(0xdb)](0x1);}await _0x51ff6d(_0x4c1edf);}function _0x1924(){const _0x3f04b7=['263sqcZQM','4814520lHxicB','once','837828KOabYm','SIGHUP','545328ONsAZJ','keys','error','13683897GcYXnq','1316qjOiqH','4597239lwOrXx','41898cilXFz','SIGTERM','join','322KBEwJf','exit'];_0x1924=function(){return _0x3f04b7;};return _0x1924();}
1
+ (function(_0x231efc,_0x543887){const _0xbdc924=_0x688f,_0x2f6605=_0x231efc();while(!![]){try{const _0x312f5d=-parseInt(_0xbdc924(0x18f))/0x1+parseInt(_0xbdc924(0x188))/0x2*(-parseInt(_0xbdc924(0x192))/0x3)+parseInt(_0xbdc924(0x18e))/0x4+-parseInt(_0xbdc924(0x189))/0x5+parseInt(_0xbdc924(0x195))/0x6*(-parseInt(_0xbdc924(0x197))/0x7)+-parseInt(_0xbdc924(0x194))/0x8*(-parseInt(_0xbdc924(0x18c))/0x9)+-parseInt(_0xbdc924(0x18a))/0xa*(-parseInt(_0xbdc924(0x191))/0xb);if(_0x312f5d===_0x543887)break;else _0x2f6605['push'](_0x2f6605['shift']());}catch(_0x1906e0){_0x2f6605['push'](_0x2f6605['shift']());}}}(_0x1f64,0x271f1));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x688f(_0x1afbd6,_0xcdc22){_0x1afbd6=_0x1afbd6-0x188;const _0x1f6499=_0x1f64();let _0x688ffe=_0x1f6499[_0x1afbd6];return _0x688ffe;}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 _0x1ac90a=_0x688f,_0x4eaeff={'gQhUN':'SIGINT','nPdpf':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0xd6de36=()=>{const _0x5e2707=_0x688f;process[_0x5e2707(0x196)](0x0);};process['once'](_0x4eaeff['gQhUN'],_0xd6de36),process[_0x1ac90a(0x18d)](_0x1ac90a(0x190),_0xd6de36),process[_0x1ac90a(0x18d)](_0x4eaeff[_0x1ac90a(0x18b)],_0xd6de36),cancellationHandlersInstalled=!![];}function _0x1f64(){const _0x1081c2=['5230NFPoHf','nPdpf','214443WWbGzu','once','290824SzbwMk','271815yyfUoN','SIGTERM','12672xPVuvE','449169VEGCYq','Valid\x20hooks:\x20','16cDtewH','6PsEpbd','exit','449260Cungkb','2ThOAts','384485mSBLIW'];_0x1f64=function(){return _0x1081c2;};return _0x1f64();}export async function hook(_0x11f90c,_0x3489a4){const _0xda6eea=_0x688f,_0x266dda={'aoIWB':function(_0x443062){return _0x443062();}};_0x266dda['aoIWB'](installCancellationHandlers);const _0x5d0f44=HOOKS[_0x11f90c];if(!_0x5d0f44){const _0x3183da=Object['keys'](HOOKS)['join'](',\x20');console['error']('Unknown\x20hook:\x20'+_0x11f90c),console['error'](_0xda6eea(0x193)+_0x3183da),process[_0xda6eea(0x196)](0x1);}await _0x5d0f44(_0x3489a4);}
@@ -1 +1 @@
1
- const _0x15cc02=_0x5609;(function(_0x370678,_0x5d9ad2){const _0x4b0787=_0x5609,_0xdc5e93=_0x370678();while(!![]){try{const _0x3612e2=-parseInt(_0x4b0787(0x1e2))/0x1+parseInt(_0x4b0787(0x1df))/0x2*(-parseInt(_0x4b0787(0x1e0))/0x3)+parseInt(_0x4b0787(0x1e4))/0x4*(-parseInt(_0x4b0787(0x1e5))/0x5)+-parseInt(_0x4b0787(0x1e1))/0x6+-parseInt(_0x4b0787(0x1e3))/0x7*(-parseInt(_0x4b0787(0x1ea))/0x8)+-parseInt(_0x4b0787(0x1e9))/0x9+parseInt(_0x4b0787(0x1e8))/0xa;if(_0x3612e2===_0x5d9ad2)break;else _0xdc5e93['push'](_0xdc5e93['shift']());}catch(_0x2e8d19){_0xdc5e93['push'](_0xdc5e93['shift']());}}}(_0x56a2,0xe2cec));import{readHookInput}from'./output.js';function _0x56a2(){const _0x53d8cb=['47379610iiSozb','1425798WaWnUY','424lwzElL','2jGQcAN','5213973wlCyrv','10729170CMZuLA','158897xGqKDo','7833ueeHtf','108EwwcHB','4585UHETBa','\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.','log'];_0x56a2=function(){return _0x53d8cb;};return _0x56a2();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x15cc02(0x1e6);function _0x5609(_0x415bf9,_0x360b11){_0x415bf9=_0x415bf9-0x1df;const _0x56a206=_0x56a2();let _0x560950=_0x56a206[_0x415bf9];return _0x560950;}export async function autoPrompt(){const _0x197df8=_0x15cc02,_0x3aa005={'GhIka':function(_0x31287d,_0x1fec70){return _0x31287d(_0x1fec70);},'yGYoY':function(_0x1c6b9e,_0x2aac7b){return _0x1c6b9e(_0x2aac7b);}},_0x519c28=await readHookInput(),_0xae6cdb=_0x519c28?.['session_id'];if(!_0xae6cdb)return;if(_0x3aa005['GhIka'](isSessionEnabled,_0xae6cdb)||_0x3aa005['yGYoY'](hasSessionBeenPrompted,_0xae6cdb))return;_0x3aa005['yGYoY'](markSessionPrompted,_0xae6cdb),console[_0x197df8(0x1e7)](AUTO_PROMPT_TEXT);}
1
+ (function(_0x3f9b7e,_0x199baa){const _0x2f600b=_0xbeb3,_0x4d6ab1=_0x3f9b7e();while(!![]){try{const _0x4fd69c=-parseInt(_0x2f600b(0x1da))/0x1*(-parseInt(_0x2f600b(0x1d9))/0x2)+-parseInt(_0x2f600b(0x1d8))/0x3+parseInt(_0x2f600b(0x1d6))/0x4*(-parseInt(_0x2f600b(0x1dc))/0x5)+-parseInt(_0x2f600b(0x1d4))/0x6+parseInt(_0x2f600b(0x1db))/0x7*(parseInt(_0x2f600b(0x1e0))/0x8)+parseInt(_0x2f600b(0x1d7))/0x9*(parseInt(_0x2f600b(0x1df))/0xa)+-parseInt(_0x2f600b(0x1dd))/0xb;if(_0x4fd69c===_0x199baa)break;else _0x4d6ab1['push'](_0x4d6ab1['shift']());}catch(_0x52432d){_0x4d6ab1['push'](_0x4d6ab1['shift']());}}}(_0x4c31,0xb986a));function _0x4c31(){const _0x1cb3a6=['7312330ZWpHPT','233608jFEePB','2917440dHDtir','DeFEI','28924fuhQzS','9YbJeVu','721611oxXqNk','22cktRox','49675fzVzzz','273Yuhtjo','500LXwEoy','2273766EpeMTI','log'];_0x4c31=function(){return _0x1cb3a6;};return _0x4c31();}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 _0xbeb3(_0x256a28,_0x59102b){_0x256a28=_0x256a28-0x1d4;const _0x4c31a9=_0x4c31();let _0xbeb3da=_0x4c31a9[_0x256a28];return _0xbeb3da;}export async function autoPrompt(){const _0x1ea2ec=_0xbeb3,_0x519d43={'DeFEI':function(_0x4c800b,_0x34ca1e){return _0x4c800b(_0x34ca1e);}},_0x28e4de=await readHookInput(),_0x156547=_0x28e4de?.['session_id'];if(!_0x156547)return;if(isSessionEnabled(_0x156547)||_0x519d43[_0x1ea2ec(0x1d5)](hasSessionBeenPrompted,_0x156547))return;markSessionPrompted(_0x156547),console[_0x1ea2ec(0x1de)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x27179b,_0x29d43b){const _0x54e410=_0x358c,_0x396368=_0x27179b();while(!![]){try{const _0x13be6b=-parseInt(_0x54e410(0x1d7))/0x1*(parseInt(_0x54e410(0x1ce))/0x2)+parseInt(_0x54e410(0x1d4))/0x3*(parseInt(_0x54e410(0x1d8))/0x4)+-parseInt(_0x54e410(0x1cd))/0x5+parseInt(_0x54e410(0x1d5))/0x6*(-parseInt(_0x54e410(0x1ca))/0x7)+-parseInt(_0x54e410(0x1c9))/0x8+-parseInt(_0x54e410(0x1cf))/0x9*(-parseInt(_0x54e410(0x1d1))/0xa)+parseInt(_0x54e410(0x1c8))/0xb;if(_0x13be6b===_0x29d43b)break;else _0x396368['push'](_0x396368['shift']());}catch(_0x294025){_0x396368['push'](_0x396368['shift']());}}}(_0x3b6e,0xb86a7));function _0x3b6e(){const _0x1c4b93=['18CTovtY','VuZDS','4920560RDYPTh','\x20and\x20branch\x20\x27','NxQoW','2151291zLxirA','6jEJfLD','CLAUDE_SESSION_ID','1vzDtVF','4kXVsQl','NlnLt','13181564GiXZbI','6917016AKXhMP','6789839ZiiNsX','.\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`.','mJNkf','947440sSqJci','240148DkqDOb'];_0x3b6e=function(){return _0x1c4b93;};return _0x3b6e();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x358c(_0x3b14d1,_0xed0f4d){_0x3b14d1=_0x3b14d1-0x1c8;const _0x3b6e24=_0x3b6e();let _0x358c4a=_0x3b6e24[_0x3b14d1];return _0x358c4a;}export async function disable(_0x483876){const _0x2b2ad9=_0x358c,_0xb92eeb={'GRNor':function(_0x2b3376,_0x1c727d){return _0x2b3376(_0x1c727d);},'NxQoW':'main','NlnLt':function(_0x66753f,_0x52105a){return _0x66753f!==_0x52105a;},'VuZDS':'master','mJNkf':function(_0x93d1d3,_0x14e9d8){return _0x93d1d3(_0x14e9d8);}},_0x2be6ec=_0x483876||process['env'][_0x2b2ad9(0x1d6)]||'';_0x2be6ec&&_0xb92eeb['GRNor'](disableSession,_0x2be6ec);const _0xd43e5e=getCurrentBranch();_0xd43e5e&&_0xd43e5e!==_0xb92eeb[_0x2b2ad9(0x1d3)]&&_0xb92eeb['NlnLt'](_0xd43e5e,_0xb92eeb[_0x2b2ad9(0x1d0)])&&_0xb92eeb[_0x2b2ad9(0x1cc)](disableBranch,_0xd43e5e),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0xd43e5e&&_0xb92eeb[_0x2b2ad9(0x1d9)](_0xd43e5e,_0xb92eeb['NxQoW'])&&_0xd43e5e!==_0xb92eeb['VuZDS']?_0x2b2ad9(0x1d2)+_0xd43e5e+'\x27':'')+_0x2b2ad9(0x1cb));}
1
+ function _0x1c93(){const _0x10554e=['GBHRv','4678764GNOOhw','2rVQvJS','65690QHncvC','master','19794yCYnJU','7981666DzPUqU','21HQzcgq','603893tsclgE','CLAUDE_SESSION_ID','GBLhj','1635lVbYfb','77704aLYQiv','704728kexDWj','\x20and\x20branch\x20\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`.','env','63Qhzfmj','main'];_0x1c93=function(){return _0x10554e;};return _0x1c93();}function _0x2514(_0x121fa7,_0x5dca85){_0x121fa7=_0x121fa7-0x7d;const _0x1c937f=_0x1c93();let _0x2514df=_0x1c937f[_0x121fa7];return _0x2514df;}(function(_0x452edb,_0x1a0aa6){const _0x4227df=_0x2514,_0x1e8a58=_0x452edb();while(!![]){try{const _0xf28315=parseInt(_0x4227df(0x8c))/0x1*(-parseInt(_0x4227df(0x86))/0x2)+parseInt(_0x4227df(0x85))/0x3+-parseInt(_0x4227df(0x7d))/0x4+-parseInt(_0x4227df(0x8f))/0x5*(parseInt(_0x4227df(0x89))/0x6)+-parseInt(_0x4227df(0x8b))/0x7*(-parseInt(_0x4227df(0x7e))/0x8)+-parseInt(_0x4227df(0x82))/0x9*(parseInt(_0x4227df(0x87))/0xa)+parseInt(_0x4227df(0x8a))/0xb;if(_0xf28315===_0x1a0aa6)break;else _0x1e8a58['push'](_0x1e8a58['shift']());}catch(_0x522c0a){_0x1e8a58['push'](_0x1e8a58['shift']());}}}(_0x1c93,0xc3a70));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x4a4768){const _0x260de1=_0x2514,_0x4d579a={'gBchD':function(_0x17fc34,_0x4180db){return _0x17fc34(_0x4180db);},'ENXKe':function(_0x1d52a1){return _0x1d52a1();},'GBLhj':_0x260de1(0x83),'LETVE':function(_0x463f55,_0x4a841d){return _0x463f55!==_0x4a841d;},'GBHRv':_0x260de1(0x88)},_0x302a0b=_0x4a4768||process[_0x260de1(0x81)][_0x260de1(0x8d)]||'';_0x302a0b&&_0x4d579a['gBchD'](disableSession,_0x302a0b);const _0x4d23a4=_0x4d579a['ENXKe'](getCurrentBranch);_0x4d23a4&&_0x4d23a4!==_0x4d579a[_0x260de1(0x8e)]&&_0x4d579a['LETVE'](_0x4d23a4,_0x4d579a[_0x260de1(0x84)])&&_0x4d579a['gBchD'](disableBranch,_0x4d23a4),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x4d23a4&&_0x4d579a['LETVE'](_0x4d23a4,_0x260de1(0x83))&&_0x4d23a4!==_0x4d579a['GBHRv']?_0x260de1(0x7f)+_0x4d23a4+'\x27':'')+_0x260de1(0x80));}
@@ -1 +1 @@
1
- function _0x2347(){const _0x3b68a9=['ZyUnm','36336mMXLIQ','14YYszlF','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','UfunY','1488904BYNsWf','2134IKAXWG','1648380jLabIW','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','4RCZlrs','iTIdZ','1452899LAhNWi','619491hRUtyq','master','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','#\x20RANGER\x20ENABLED','9aICXNS','ranger\x20setup','6qLquBL','\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`.','ZLcRU','main','36200Bihgzl','283485aigJqZ'];_0x2347=function(){return _0x3b68a9;};return _0x2347();}(function(_0x4713ce,_0x53644a){const _0x4e7d13=_0x4cc7,_0x404c43=_0x4713ce();while(!![]){try{const _0x2bc0ad=-parseInt(_0x4e7d13(0x1d0))/0x1*(-parseInt(_0x4e7d13(0x1cc))/0x2)+-parseInt(_0x4e7d13(0x1da))/0x3+parseInt(_0x4e7d13(0x1d7))/0x4*(parseInt(_0x4e7d13(0x1cd))/0x5)+parseInt(_0x4e7d13(0x1e0))/0x6*(-parseInt(_0x4e7d13(0x1d9))/0x7)+-parseInt(_0x4e7d13(0x1d3))/0x8*(parseInt(_0x4e7d13(0x1de))/0x9)+-parseInt(_0x4e7d13(0x1d5))/0xa+-parseInt(_0x4e7d13(0x1d4))/0xb*(-parseInt(_0x4e7d13(0x1cf))/0xc);if(_0x2bc0ad===_0x53644a)break;else _0x404c43['push'](_0x404c43['shift']());}catch(_0x3c8015){_0x404c43['push'](_0x404c43['shift']());}}}(_0x2347,0x205ac));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x4cc7(_0x2ecee8,_0x47b9f7){_0x2ecee8=_0x2ecee8-0x1cc;const _0x2347ce=_0x2347();let _0x4cc7cc=_0x2347ce[_0x2ecee8];return _0x4cc7cc;}export async function enable(_0x8e6998){const _0x4ddd5a=_0x4cc7,_0x1738d5={'zanXj':'ranger\x20setup\x20--opencode','ZLcRU':_0x4ddd5a(0x1df),'WgfHC':_0x4ddd5a(0x1dc),'UhOML':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','UfunY':function(_0x2a30cc,_0x269fdf){return _0x2a30cc(_0x269fdf);},'ZyUnm':function(_0x166b68){return _0x166b68();},'iTIdZ':function(_0x345fa8,_0x3e6c93){return _0x345fa8!==_0x3e6c93;},'bsyrq':_0x4ddd5a(0x1db)},_0x596710=_0x8e6998||process['env']['CLAUDE_SESSION_ID']||'',_0x571d45=Boolean(_0x8e6998),_0x26a53a=await getToken();if(!_0x26a53a){const _0x46017f=_0x571d45?_0x1738d5['zanXj']:_0x1738d5[_0x4ddd5a(0x1e2)],_0x27aa23=_0x571d45?_0x1738d5['WgfHC']:_0x1738d5['UhOML'];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`'+_0x46017f+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x27aa23);return;}try{await update();}catch{}_0x596710&&_0x1738d5[_0x4ddd5a(0x1d2)](enableSession,_0x596710);const _0x5b99f0=_0x1738d5[_0x4ddd5a(0x1ce)](getCurrentBranch),_0x3ce38e=_0x5b99f0&&_0x1738d5['iTIdZ'](_0x5b99f0,_0x4ddd5a(0x1e3))&&_0x1738d5[_0x4ddd5a(0x1d8)](_0x5b99f0,_0x1738d5['bsyrq'])?'\x0a\x0a**Branch\x20\x27'+_0x5b99f0+_0x4ddd5a(0x1d1):'',_0x1c40bf=getRangerSkillContent();_0x1738d5[_0x4ddd5a(0x1d2)](printBlock,_0x4ddd5a(0x1dd)+_0x3ce38e+_0x4ddd5a(0x1d6)+_0x1c40bf+_0x4ddd5a(0x1e1));}
1
+ (function(_0x25c724,_0x19e768){const _0xf27d19=_0x4f35,_0x10becf=_0x25c724();while(!![]){try{const _0x403193=parseInt(_0xf27d19(0x12c))/0x1+-parseInt(_0xf27d19(0x126))/0x2+-parseInt(_0xf27d19(0x11b))/0x3*(parseInt(_0xf27d19(0x12d))/0x4)+parseInt(_0xf27d19(0x12f))/0x5*(parseInt(_0xf27d19(0x121))/0x6)+-parseInt(_0xf27d19(0x122))/0x7+-parseInt(_0xf27d19(0x120))/0x8*(-parseInt(_0xf27d19(0x123))/0x9)+parseInt(_0xf27d19(0x128))/0xa*(parseInt(_0xf27d19(0x11d))/0xb);if(_0x403193===_0x19e768)break;else _0x10becf['push'](_0x10becf['shift']());}catch(_0xc3698d){_0x10becf['push'](_0x10becf['shift']());}}}(_0x40e2,0xdbf2c));function _0x4f35(_0x1c9e9a,_0x4ecf41){_0x1c9e9a=_0x1c9e9a-0x11b;const _0x40e2c1=_0x40e2();let _0x4f359b=_0x40e2c1[_0x1c9e9a];return _0x4f359b;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x40e2(){const _0x1d15a6=['\x0a\x0a**Branch\x20\x27','5syfnCq','uvSOj','33VkRmeu','master','1125608YEtxct','ranger\x20setup\x20--opencode','CLAUDE_SESSION_ID','40mesOnY','8414634HDDSaZ','7000952NToWjD','1504485MFowma','\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`.','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','1520018rVuWgG','ranger\x20setup','30wYIDYX','ftfOM','#\x20RANGER\x20ENABLED','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','1044238qKIoWy','337612GHpCpi'];_0x40e2=function(){return _0x1d15a6;};return _0x40e2();}export async function enable(_0x383b75){const _0x3e32ba=_0x4f35,_0x4fd22e={'dGIBa':function(_0x54d253){return _0x54d253();},'vlszR':_0x3e32ba(0x127),'ftfOM':_0x3e32ba(0x125),'uvSOj':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','SeukC':'main'},_0x41af84=_0x383b75||process['env'][_0x3e32ba(0x11f)]||'',_0x5a858c=Boolean(_0x383b75),_0x2526ea=await _0x4fd22e['dGIBa'](getToken);if(!_0x2526ea){const _0x11258e=_0x5a858c?_0x3e32ba(0x11e):_0x4fd22e['vlszR'],_0x3e136b=_0x5a858c?_0x4fd22e[_0x3e32ba(0x129)]:_0x4fd22e[_0x3e32ba(0x130)];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`'+_0x11258e+_0x3e32ba(0x12b)+_0x3e136b);return;}try{await update();}catch{}_0x41af84&&enableSession(_0x41af84);const _0x4995e2=getCurrentBranch(),_0x1ecc29=_0x4995e2&&_0x4995e2!==_0x4fd22e['SeukC']&&_0x4995e2!==_0x3e32ba(0x11c)?_0x3e32ba(0x12e)+_0x4995e2+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x475ed4=_0x4fd22e['dGIBa'](getRangerSkillContent);printBlock(_0x3e32ba(0x12a)+_0x1ecc29+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x475ed4+_0x3e32ba(0x124));}
@@ -1 +1 @@
1
- (function(_0x503462,_0x1c60ae){const _0x290929=_0x3b73,_0x1507ad=_0x503462();while(!![]){try{const _0x4ee6c3=parseInt(_0x290929(0x1cb))/0x1+-parseInt(_0x290929(0x1c9))/0x2+parseInt(_0x290929(0x1cd))/0x3+-parseInt(_0x290929(0x1ce))/0x4+parseInt(_0x290929(0x1ca))/0x5+parseInt(_0x290929(0x1cc))/0x6+-parseInt(_0x290929(0x1c8))/0x7;if(_0x4ee6c3===_0x1c60ae)break;else _0x1507ad['push'](_0x1507ad['shift']());}catch(_0x58ce0c){_0x1507ad['push'](_0x1507ad['shift']());}}}(_0x4949,0x9a047));function _0x4949(){const _0x3f5e39=['634432cWsIeC','3385180evMlXk','467179ucbzXl','4163160kIBPHP','3667071fUvvur','4283216pNMPIe','7290899vrIJbI'];_0x4949=function(){return _0x3f5e39;};return _0x4949();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x3b73(_0x90fd2d,_0x1cda99){_0x90fd2d=_0x90fd2d-0x1c8;const _0x4949bc=_0x4949();let _0x3b734a=_0x4949bc[_0x90fd2d];return _0x3b734a;}export async function exitPlanMode(_0x5839af){const _0x21f4d1=await getEnabledSessionId(_0x5839af);if(!_0x21f4d1)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
1
+ function _0x38e0(){const _0x532f9b=['13355aXRSIp','1918826pCRSaa','568544qzNYvK','174ECmKZh','4307936ookJtH','645582nWLLQd','107768IXkwSs','182983HXPSJC'];_0x38e0=function(){return _0x532f9b;};return _0x38e0();}function _0x2e9b(_0xc2654e,_0x512172){_0xc2654e=_0xc2654e-0x196;const _0x38e040=_0x38e0();let _0x2e9bc6=_0x38e040[_0xc2654e];return _0x2e9bc6;}(function(_0x2c70cc,_0x25723e){const _0x7626bf=_0x2e9b,_0xf7c2a4=_0x2c70cc();while(!![]){try{const _0x3eae7e=-parseInt(_0x7626bf(0x19c))/0x1+-parseInt(_0x7626bf(0x197))/0x2+-parseInt(_0x7626bf(0x19a))/0x3+-parseInt(_0x7626bf(0x19b))/0x4+-parseInt(_0x7626bf(0x19d))/0x5*(-parseInt(_0x7626bf(0x198))/0x6)+parseInt(_0x7626bf(0x196))/0x7+parseInt(_0x7626bf(0x199))/0x8;if(_0x3eae7e===_0x25723e)break;else _0xf7c2a4['push'](_0xf7c2a4['shift']());}catch(_0xe95fb7){_0xf7c2a4['push'](_0xf7c2a4['shift']());}}}(_0x38e0,0x2c1c6));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x270cfa){const _0x1e6a55=await getEnabledSessionId(_0x270cfa);if(!_0x1e6a55)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(_0x4f75b8,_0x30f7ce){var _0x423e4a=_0x59e3,_0x3e9c9c=_0x4f75b8();while(!![]){try{var _0x7e0f73=parseInt(_0x423e4a(0xa8))/0x1*(parseInt(_0x423e4a(0xa1))/0x2)+-parseInt(_0x423e4a(0xa0))/0x3+-parseInt(_0x423e4a(0xa5))/0x4*(parseInt(_0x423e4a(0xaa))/0x5)+parseInt(_0x423e4a(0xa7))/0x6*(parseInt(_0x423e4a(0xa3))/0x7)+parseInt(_0x423e4a(0xa2))/0x8+-parseInt(_0x423e4a(0xa4))/0x9+parseInt(_0x423e4a(0xa9))/0xa*(parseInt(_0x423e4a(0xa6))/0xb);if(_0x7e0f73===_0x30f7ce)break;else _0x3e9c9c['push'](_0x3e9c9c['shift']());}catch(_0x54196d){_0x3e9c9c['push'](_0x3e9c9c['shift']());}}}(_0x5b73,0x94d50));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';function _0x5b73(){var _0x1f2de2=['9352350wskNyh','28656ePxrsA','1434257ZQkPJV','138618asbIzy','81820oDIhfj','120aZdqyl','745FiXcqi','1054080NMdPiL','20EKjQBC','4553624jAHfEd','35fzrArL'];_0x5b73=function(){return _0x1f2de2;};return _0x5b73();}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';function _0x59e3(_0x3657cc,_0x1574ab){_0x3657cc=_0x3657cc-0xa0;var _0x5b73f9=_0x5b73();var _0x59e30a=_0x5b73f9[_0x3657cc];return _0x59e30a;}export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x5f2d65,_0x2cfb24){var _0x104507=_0x2042,_0x2a09bb=_0x5f2d65();while(!![]){try{var _0x156eb8=-parseInt(_0x104507(0x176))/0x1+-parseInt(_0x104507(0x170))/0x2+-parseInt(_0x104507(0x16e))/0x3*(-parseInt(_0x104507(0x175))/0x4)+-parseInt(_0x104507(0x16f))/0x5+-parseInt(_0x104507(0x172))/0x6*(parseInt(_0x104507(0x171))/0x7)+-parseInt(_0x104507(0x174))/0x8*(-parseInt(_0x104507(0x177))/0x9)+parseInt(_0x104507(0x173))/0xa;if(_0x156eb8===_0x2cfb24)break;else _0x2a09bb['push'](_0x2a09bb['shift']());}catch(_0x4c998d){_0x2a09bb['push'](_0x2a09bb['shift']());}}}(_0x5e12,0x5f614));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';function _0x5e12(){var _0x590f7e=['9zaYmVT','9AcDiYz','3545915Zyrvpk','514416WHtzsg','40642CNrBPF','84QcmfOx','12495920bpwbZD','1977728STVcfK','437972KSEDPH','386936rsJNQg'];_0x5e12=function(){return _0x590f7e;};return _0x5e12();}export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0x2042(_0x1de0e4,_0x191e4b){_0x1de0e4=_0x1de0e4-0x16e;var _0x5e126f=_0x5e12();var _0x20420c=_0x5e126f[_0x1de0e4];return _0x20420c;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x5eed18,_0x502645){const _0x48af8a=_0x2140,_0x2b3326=_0x5eed18();while(!![]){try{const _0x59fdb6=parseInt(_0x48af8a(0x14b))/0x1+parseInt(_0x48af8a(0x141))/0x2*(parseInt(_0x48af8a(0x142))/0x3)+-parseInt(_0x48af8a(0x14a))/0x4*(parseInt(_0x48af8a(0x13f))/0x5)+parseInt(_0x48af8a(0x147))/0x6+-parseInt(_0x48af8a(0x14e))/0x7*(parseInt(_0x48af8a(0x145))/0x8)+-parseInt(_0x48af8a(0x149))/0x9*(parseInt(_0x48af8a(0x144))/0xa)+parseInt(_0x48af8a(0x143))/0xb*(parseInt(_0x48af8a(0x14c))/0xc);if(_0x59fdb6===_0x502645)break;else _0x2b3326['push'](_0x2b3326['shift']());}catch(_0x53e8c7){_0x2b3326['push'](_0x2b3326['shift']());}}}(_0x1710,0x640ab));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x17c94d){console['log'](_0x17c94d);}export async function readHookInput(){const _0xae3a92=_0x2140;let _0x20eec3='';try{for await(const _0x5429c6 of process[_0xae3a92(0x14d)]){_0x20eec3+=_0x5429c6;}}catch{return null;}if(!_0x20eec3[_0xae3a92(0x146)]())return null;try{return JSON['parse'](_0x20eec3);}catch{return null;}}function _0x1710(){const _0x346c66=['510884jrOFRc','12cGqQKL','stdin','21musMDA','2874025fhjMkm','HSfjo','42ZryuEs','1086txaWeo','18105637WLCVzh','121270YUhwna','1729480tUlzel','trim','1687122EyxffK','hDiLb','603vSNoGu','4wanNuu'];_0x1710=function(){return _0x346c66;};return _0x1710();}function _0x2140(_0x25217e,_0x1cea23){_0x25217e=_0x25217e-0x13f;const _0x1710a6=_0x1710();let _0x2140ed=_0x1710a6[_0x25217e];return _0x2140ed;}export async function getEnabledSessionId(_0x5e56b4){const _0x364327=_0x2140,_0x57ab2d={'HSfjo':function(_0xa53edb,_0xe94999){return _0xa53edb(_0xe94999);}};if(_0x5e56b4)return isSessionEnabled(_0x5e56b4)?_0x5e56b4:null;const _0x3f74d8=await readHookInput(),_0x1a3c7a=_0x3f74d8?.['session_id'];if(!_0x1a3c7a||!_0x57ab2d[_0x364327(0x140)](isSessionEnabled,_0x1a3c7a))return null;return _0x1a3c7a;}export async function getEnabledHookContext(_0x4c3cea){const _0x10d5c8=_0x2140,_0x4ee4f0={'hDiLb':function(_0x391d0f,_0xe5045a){return _0x391d0f(_0xe5045a);},'cLVTU':function(_0x4ad0d5){return _0x4ad0d5();}};if(_0x4c3cea){if(!_0x4ee4f0[_0x10d5c8(0x148)](isSessionEnabled,_0x4c3cea))return null;return{'sessionId':_0x4c3cea,'input':{'session_id':_0x4c3cea}};}const _0x386f94=await _0x4ee4f0['cLVTU'](readHookInput),_0x44da6a=_0x386f94?.['session_id'];if(!_0x44da6a||!isSessionEnabled(_0x44da6a))return null;return{'sessionId':_0x44da6a,'input':_0x386f94};}
1
+ (function(_0x5743a9,_0xe78957){const _0x3a9130=_0x2fec,_0x55b5d5=_0x5743a9();while(!![]){try{const _0x404a4a=-parseInt(_0x3a9130(0x126))/0x1+-parseInt(_0x3a9130(0x12d))/0x2*(parseInt(_0x3a9130(0x12f))/0x3)+-parseInt(_0x3a9130(0x128))/0x4+-parseInt(_0x3a9130(0x12c))/0x5*(parseInt(_0x3a9130(0x12a))/0x6)+-parseInt(_0x3a9130(0x134))/0x7+-parseInt(_0x3a9130(0x12e))/0x8*(parseInt(_0x3a9130(0x133))/0x9)+-parseInt(_0x3a9130(0x130))/0xa*(-parseInt(_0x3a9130(0x127))/0xb);if(_0x404a4a===_0xe78957)break;else _0x55b5d5['push'](_0x55b5d5['shift']());}catch(_0x3598a2){_0x55b5d5['push'](_0x55b5d5['shift']());}}}(_0x3261,0xe6a5d));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x5408da){console['log'](_0x5408da);}function _0x2fec(_0x154836,_0x26ea96){_0x154836=_0x154836-0x126;const _0x3261c3=_0x3261();let _0x2fecbe=_0x3261c3[_0x154836];return _0x2fecbe;}export async function readHookInput(){const _0x6e439a=_0x2fec;let _0xcb145='';try{for await(const _0x401639 of process['stdin']){_0xcb145+=_0x401639;}}catch{return null;}if(!_0xcb145['trim']())return null;try{return JSON[_0x6e439a(0x12b)](_0xcb145);}catch{return null;}}function _0x3261(){const _0x21a96e=['parse','2500510pUANUJ','2260zhMbgv','384yaVzDN','753nkquSx','51010bApTTf','session_id','BJNfd','30105qccNin','6556872RabajN','afBwW','811780vqkqnD','8723EHmlKL','1630368fvEXis','LemUk','6ZIeOOU'];_0x3261=function(){return _0x21a96e;};return _0x3261();}export async function getEnabledSessionId(_0x3583d9){const _0x16eb91=_0x2fec,_0x3e6a3d={'afBwW':function(_0x2e4c31,_0x1a9dce){return _0x2e4c31(_0x1a9dce);},'LemUk':function(_0x1bee8d){return _0x1bee8d();}};if(_0x3583d9)return _0x3e6a3d[_0x16eb91(0x135)](isSessionEnabled,_0x3583d9)?_0x3583d9:null;const _0x1f196e=await _0x3e6a3d[_0x16eb91(0x129)](readHookInput),_0x294f05=_0x1f196e?.['session_id'];if(!_0x294f05||!isSessionEnabled(_0x294f05))return null;return _0x294f05;}export async function getEnabledHookContext(_0x4fae38){const _0x326ea9=_0x2fec,_0x205cf0={'BJNfd':function(_0x5c0d85,_0x406091){return _0x5c0d85(_0x406091);},'rORyf':function(_0x277a58){return _0x277a58();}};if(_0x4fae38){if(!_0x205cf0[_0x326ea9(0x132)](isSessionEnabled,_0x4fae38))return null;return{'sessionId':_0x4fae38,'input':{'session_id':_0x4fae38}};}const _0x5eb882=await _0x205cf0['rORyf'](readHookInput),_0xa546ec=_0x5eb882?.[_0x326ea9(0x131)];if(!_0xa546ec||!isSessionEnabled(_0xa546ec))return null;return{'sessionId':_0xa546ec,'input':_0x5eb882};}
@@ -1 +1 @@
1
- function _0x5b36(){const _0x53ec54=['93216GJmVXJ','2096305xMzTlE','VwmXo','332DKfuJE','sessionId','2609136UIoFkM','35Lhruyn','90JeMGfS','2195578sFUjWB','18369rTDaTn','3853974KUexQn','permission_mode','53nJkNeO','19094GagXca'];_0x5b36=function(){return _0x53ec54;};return _0x5b36();}(function(_0x49e0e6,_0x51857b){const _0x43b379=_0x2e13,_0x54897e=_0x49e0e6();while(!![]){try{const _0x1cf0ec=-parseInt(_0x43b379(0x15b))/0x1*(parseInt(_0x43b379(0x15c))/0x2)+-parseInt(_0x43b379(0x158))/0x3*(-parseInt(_0x43b379(0x160))/0x4)+-parseInt(_0x43b379(0x15e))/0x5+-parseInt(_0x43b379(0x159))/0x6+-parseInt(_0x43b379(0x163))/0x7*(parseInt(_0x43b379(0x15d))/0x8)+-parseInt(_0x43b379(0x162))/0x9+-parseInt(_0x43b379(0x164))/0xa*(-parseInt(_0x43b379(0x157))/0xb);if(_0x1cf0ec===_0x51857b)break;else _0x54897e['push'](_0x54897e['shift']());}catch(_0x2fe6b7){_0x54897e['push'](_0x54897e['shift']());}}}(_0x5b36,0x5eeee));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x2e13(_0x42676d,_0xe80e65){_0x42676d=_0x42676d-0x157;const _0x5b36b3=_0x5b36();let _0x2e138a=_0x5b36b3[_0x42676d];return _0x2e138a;}export async function planReminder(_0x6027d4){const _0x308314=_0x2e13,_0x1415f7={'VwmXo':function(_0x4816e0,_0x2a4d79){return _0x4816e0(_0x2a4d79);}},_0x336303=await _0x1415f7[_0x308314(0x15f)](getEnabledHookContext,_0x6027d4);if(!_0x336303)return;if(_0x336303['input'][_0x308314(0x15a)]!=='plan')return;if(!shouldShowPlanReminder(_0x336303[_0x308314(0x161)]))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
1
+ function _0x569b(_0x16b716,_0x577b36){_0x16b716=_0x16b716-0xe7;const _0x536ca6=_0x536c();let _0x569b85=_0x536ca6[_0x16b716];return _0x569b85;}(function(_0x29832d,_0x283ab4){const _0x17e02d=_0x569b,_0x50b43a=_0x29832d();while(!![]){try{const _0x40f6f7=-parseInt(_0x17e02d(0xf6))/0x1*(parseInt(_0x17e02d(0xee))/0x2)+-parseInt(_0x17e02d(0xf1))/0x3+-parseInt(_0x17e02d(0xe8))/0x4+-parseInt(_0x17e02d(0xf0))/0x5+-parseInt(_0x17e02d(0xf2))/0x6*(parseInt(_0x17e02d(0xf5))/0x7)+parseInt(_0x17e02d(0xef))/0x8+parseInt(_0x17e02d(0xeb))/0x9;if(_0x40f6f7===_0x283ab4)break;else _0x50b43a['push'](_0x50b43a['shift']());}catch(_0x10a244){_0x50b43a['push'](_0x50b43a['shift']());}}}(_0x536c,0x33e7a));import{printBlock,getEnabledHookContext}from'./output.js';function _0x536c(){const _0x4d933e=['5325516SNxJkW','permission_mode','LIGyr','298JMLceD','638136GOzlHT','1030810NFmGFz','50772xovwiM','10842UAxZzE','sessionId','OHQUf','791sDXxSH','172lFIlua','plan','23936ZjwkEq','input','===\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==='];_0x536c=function(){return _0x4d933e;};return _0x536c();}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x20ea1d){const _0x1c1577=_0x569b,_0x189f16={'OHQUf':function(_0x41e8f2,_0x2f489c){return _0x41e8f2(_0x2f489c);},'LUYfl':_0x1c1577(0xe7),'LIGyr':function(_0x48d1c7,_0x3fa4ef){return _0x48d1c7(_0x3fa4ef);}},_0x28ed16=await _0x189f16[_0x1c1577(0xf4)](getEnabledHookContext,_0x20ea1d);if(!_0x28ed16)return;if(_0x28ed16[_0x1c1577(0xe9)][_0x1c1577(0xec)]!==_0x189f16['LUYfl'])return;if(!_0x189f16['OHQUf'](shouldShowPlanReminder,_0x28ed16[_0x1c1577(0xf3)]))return;_0x189f16[_0x1c1577(0xed)](printBlock,_0x1c1577(0xea));}
@@ -1 +1 @@
1
- function _0x1b0c(){const _0x4d2015=['237jCvydu','YrkBd','2710QVcfYL','32259mdRWDt','368065GLWrxT','9143016DwwmxG','4fkXUtg','6952878OKEibR','13501792RZDJVC','7IFefth','3424ilLukl','146663MmkYpw'];_0x1b0c=function(){return _0x4d2015;};return _0x1b0c();}function _0xb1b3(_0x1d536f,_0x26bb72){_0x1d536f=_0x1d536f-0x10d;const _0x1b0cf2=_0x1b0c();let _0xb1b349=_0x1b0cf2[_0x1d536f];return _0xb1b349;}(function(_0x3af9df,_0xda39ec){const _0xb9d114=_0xb1b3,_0x4cc426=_0x3af9df();while(!![]){try{const _0x8ed7c=-parseInt(_0xb9d114(0x10e))/0x1*(-parseInt(_0xb9d114(0x118))/0x2)+parseInt(_0xb9d114(0x111))/0x3+-parseInt(_0xb9d114(0x114))/0x4*(-parseInt(_0xb9d114(0x112))/0x5)+parseInt(_0xb9d114(0x113))/0x6+parseInt(_0xb9d114(0x117))/0x7*(parseInt(_0xb9d114(0x116))/0x8)+parseInt(_0xb9d114(0x115))/0x9+-parseInt(_0xb9d114(0x110))/0xa*(parseInt(_0xb9d114(0x10d))/0xb);if(_0x8ed7c===_0xda39ec)break;else _0x4cc426['push'](_0x4cc426['shift']());}catch(_0x55555e){_0x4cc426['push'](_0x4cc426['shift']());}}}(_0x1b0c,0xd2329));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x288595){const _0x92542=_0xb1b3,_0x3aae9e={'YrkBd':function(_0x8523d4,_0x572063){return _0x8523d4(_0x572063);}},_0x53fcc0=await _0x3aae9e[_0x92542(0x10f)](getEnabledSessionId,_0x288595);if(!_0x53fcc0)return;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===');}
1
+ function _0x2297(_0x15a95c,_0x1ace94){_0x15a95c=_0x15a95c-0xcd;const _0x15e97b=_0x15e9();let _0x229719=_0x15e97b[_0x15a95c];return _0x229719;}function _0x15e9(){const _0x3da47c=['569bvAjlJ','===\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===','8UVjBmB','4546bazqun','330CBCDet','11436eQRIVy','11752uYhKKx','125697BQgQms','9ABQkBY','10181031sqGzui','31965AbVRNA','3338584OQLNRT','198UvmMMx','1942089intjiH'];_0x15e9=function(){return _0x3da47c;};return _0x15e9();}(function(_0x9ffe7e,_0x3597d4){const _0x35da1f=_0x2297,_0xbc1ae1=_0x9ffe7e();while(!![]){try{const _0x38d032=-parseInt(_0x35da1f(0xd1))/0x1*(parseInt(_0x35da1f(0xd4))/0x2)+parseInt(_0x35da1f(0xd0))/0x3*(parseInt(_0x35da1f(0xd3))/0x4)+-parseInt(_0x35da1f(0xcd))/0x5*(-parseInt(_0x35da1f(0xcf))/0x6)+parseInt(_0x35da1f(0xda))/0x7+parseInt(_0x35da1f(0xce))/0x8*(-parseInt(_0x35da1f(0xd9))/0x9)+parseInt(_0x35da1f(0xd5))/0xa*(parseInt(_0x35da1f(0xd8))/0xb)+parseInt(_0x35da1f(0xd6))/0xc*(-parseInt(_0x35da1f(0xd7))/0xd);if(_0x38d032===_0x3597d4)break;else _0xbc1ae1['push'](_0xbc1ae1['shift']());}catch(_0x5296f4){_0xbc1ae1['push'](_0xbc1ae1['shift']());}}}(_0x15e9,0xbac77));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x340277){const _0x5346a9=_0x2297,_0xe6fc79=await getEnabledSessionId(_0x340277);if(!_0xe6fc79)return;printBlock(_0x5346a9(0xd2));}
@@ -1 +1 @@
1
- function _0xe925(_0x4858b4,_0x1c29f8){_0x4858b4=_0x4858b4-0x1e0;const _0x5d1a80=_0x5d1a();let _0xe92562=_0x5d1a80[_0x4858b4];return _0xe92562;}function _0x5d1a(){const _0xe3b35b=['6540996jIaYCb','6121448vmbRwX','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).','97212ehulZd','Jadrk','stringify','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.','PostToolUse','145lhYMhk','9724824kOALBU','log','48tkzrJe','1376200QnikAy','600094JZyWIQ','130412wdGaec'];_0x5d1a=function(){return _0xe3b35b;};return _0x5d1a();}(function(_0x383b6c,_0x4d8de5){const _0x99a323=_0xe925,_0x22aff2=_0x383b6c();while(!![]){try{const _0x174573=parseInt(_0x99a323(0x1e9))/0x1+-parseInt(_0x99a323(0x1e8))/0x2+-parseInt(_0x99a323(0x1e7))/0x3*(-parseInt(_0x99a323(0x1ea))/0x4)+parseInt(_0x99a323(0x1e4))/0x5*(-parseInt(_0x99a323(0x1ee))/0x6)+parseInt(_0x99a323(0x1eb))/0x7+parseInt(_0x99a323(0x1ec))/0x8+-parseInt(_0x99a323(0x1e5))/0x9;if(_0x174573===_0x4d8de5)break;else _0x22aff2['push'](_0x22aff2['shift']());}catch(_0xb90b28){_0x22aff2['push'](_0x22aff2['shift']());}}}(_0x5d1a,0x8e4c9));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x1ba9e7){const _0x428c74=_0xe925,_0x274874={'Jadrk':function(_0x2f0a2c,_0x189b6a){return _0x2f0a2c(_0x189b6a);}},_0x3a23e5=await _0x274874[_0x428c74(0x1e0)](getEnabledSessionId,_0x1ba9e7);if(!_0x3a23e5)return;updateBranchTracking(_0x3a23e5);const _0x585728=await getToken();if(!_0x585728)return;const _0x4b3d5b=getSessionEntry(_0x3a23e5);if(_0x4b3d5b){const _0x3b756f={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x428c74(0x1ed)}};console['log'](JSON[_0x428c74(0x1e1)](_0x3b756f));return;}const _0x359b86={'hookSpecificOutput':{'hookEventName':_0x428c74(0x1e3),'additionalContext':_0x428c74(0x1e2)}};console[_0x428c74(0x1e6)](JSON['stringify'](_0x359b86));}
1
+ function _0x33c9(){const _0x337606=['11525688zWynTT','kZjMY','stringify','7mdNujW','log','830896NvfKJw','796968GOUHtw','1229288jfKmku','3609768WGwlCA','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.','988425DlMoji','2ykZhmt','2705382cAdrOw'];_0x33c9=function(){return _0x337606;};return _0x33c9();}(function(_0x4cbe7b,_0x383b90){const _0x5c9b91=_0x22f1,_0x27a9a6=_0x4cbe7b();while(!![]){try{const _0x264722=-parseInt(_0x5c9b91(0x8f))/0x1*(-parseInt(_0x5c9b91(0x96))/0x2)+-parseInt(_0x5c9b91(0x90))/0x3+parseInt(_0x5c9b91(0x97))/0x4+-parseInt(_0x5c9b91(0x8e))/0x5+-parseInt(_0x5c9b91(0x99))/0x6+-parseInt(_0x5c9b91(0x94))/0x7*(parseInt(_0x5c9b91(0x98))/0x8)+parseInt(_0x5c9b91(0x91))/0x9;if(_0x264722===_0x383b90)break;else _0x27a9a6['push'](_0x27a9a6['shift']());}catch(_0x1a5dea){_0x27a9a6['push'](_0x27a9a6['shift']());}}}(_0x33c9,0x6f542));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x22f1(_0x3adbc8,_0xc9919e){_0x3adbc8=_0x3adbc8-0x8d;const _0x33c95d=_0x33c9();let _0x22f16c=_0x33c95d[_0x3adbc8];return _0x22f16c;}export async function postEdit(_0x381f71){const _0x2c9d0d=_0x22f1,_0xbc02fd={'KjfMc':function(_0x398830,_0x56fb45){return _0x398830(_0x56fb45);},'kZjMY':function(_0x4a0e59){return _0x4a0e59();},'wWSeN':function(_0x5038b8,_0x632903){return _0x5038b8(_0x632903);}},_0x35fa56=await getEnabledSessionId(_0x381f71);if(!_0x35fa56)return;_0xbc02fd['KjfMc'](updateBranchTracking,_0x35fa56);const _0x14b0e6=await _0xbc02fd[_0x2c9d0d(0x92)](getToken);if(!_0x14b0e6)return;const _0x5588e6=_0xbc02fd['wWSeN'](getSessionEntry,_0x35fa56);if(_0x5588e6){const _0x4d4db8={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console[_0x2c9d0d(0x95)](JSON[_0x2c9d0d(0x93)](_0x4d4db8));return;}const _0x2df453={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x2c9d0d(0x8d)}};console[_0x2c9d0d(0x95)](JSON[_0x2c9d0d(0x93)](_0x2df453));}
@@ -1 +1 @@
1
- function _0xc537(){const _0x59df8f=['778588WNImyq','530511oOVMeH','390IgrIOX','119ShgNnG','1350252NySXKa','2218647aVGowr','8WWdYvm','877948xyzFco','280044wriHxd','5xegaTX','38566pIFBYm'];_0xc537=function(){return _0x59df8f;};return _0xc537();}(function(_0x408792,_0x127b07){const _0xea5547=_0x33b0,_0x555486=_0x408792();while(!![]){try{const _0x1f4e1f=parseInt(_0xea5547(0x1eb))/0x1+parseInt(_0xea5547(0x1ea))/0x2+-parseInt(_0xea5547(0x1ef))/0x3+-parseInt(_0xea5547(0x1f1))/0x4*(parseInt(_0xea5547(0x1f3))/0x5)+parseInt(_0xea5547(0x1f2))/0x6*(parseInt(_0xea5547(0x1ed))/0x7)+-parseInt(_0xea5547(0x1f0))/0x8*(parseInt(_0xea5547(0x1ee))/0x9)+-parseInt(_0xea5547(0x1ec))/0xa*(parseInt(_0xea5547(0x1f4))/0xb);if(_0x1f4e1f===_0x127b07)break;else _0x555486['push'](_0x555486['shift']());}catch(_0x2e0ddf){_0x555486['push'](_0x555486['shift']());}}}(_0xc537,0x72209));import{getToken}from'../utils/keychain.js';function _0x33b0(_0x34671f,_0x36e839){_0x34671f=_0x34671f-0x1ea;const _0xc53729=_0xc537();let _0x33b076=_0xc53729[_0x34671f];return _0x33b076;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0xeab429){const _0x156895={'xVpZo':function(_0x3e4d24,_0x2a7dd7){return _0x3e4d24(_0x2a7dd7);}},_0xa912c8=await _0x156895['xVpZo'](getEnabledSessionId,_0xeab429);if(!_0xa912c8)return;try{const _0x2230f7=await getToken();if(!_0x2230f7)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
1
+ function _0x1d8e(_0xe95080,_0x305b25){_0xe95080=_0xe95080-0x19d;const _0x1e22a=_0x1e22();let _0x1d8e75=_0x1e22a[_0xe95080];return _0x1d8e75;}(function(_0x17d780,_0x19c890){const _0x4026ca=_0x1d8e,_0x1b4936=_0x17d780();while(!![]){try{const _0x1e4b01=parseInt(_0x4026ca(0x1a4))/0x1*(-parseInt(_0x4026ca(0x1a6))/0x2)+-parseInt(_0x4026ca(0x1a7))/0x3+parseInt(_0x4026ca(0x19f))/0x4+parseInt(_0x4026ca(0x1a0))/0x5*(-parseInt(_0x4026ca(0x19e))/0x6)+-parseInt(_0x4026ca(0x1a8))/0x7+parseInt(_0x4026ca(0x1a1))/0x8*(-parseInt(_0x4026ca(0x1a3))/0x9)+parseInt(_0x4026ca(0x19d))/0xa*(parseInt(_0x4026ca(0x1a5))/0xb);if(_0x1e4b01===_0x19c890)break;else _0x1b4936['push'](_0x1b4936['shift']());}catch(_0xe0c8e6){_0x1b4936['push'](_0x1b4936['shift']());}}}(_0x1e22,0xeb8af));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x1e22(){const _0x3e0822=['3799288eUHdBA','100170fxASYE','8CEVruz','bjwwr','13299399KZEgcd','10793IcwIFF','37234010ySUtvW','346jfnvaA','4282509djuWkp','1396010bnrNQP','20mFCZhF','534ztEozY'];_0x1e22=function(){return _0x3e0822;};return _0x1e22();}export async function preCompact(_0xd8de65){const _0x282f97=_0x1d8e,_0x20640e={'bjwwr':function(_0xe8710b,_0xee5666){return _0xe8710b(_0xee5666);},'DjLDf':function(_0x4c16c3){return _0x4c16c3();}},_0x4359a5=await _0x20640e[_0x282f97(0x1a2)](getEnabledSessionId,_0xd8de65);if(!_0x4359a5)return;try{const _0x2396f5=await _0x20640e['DjLDf'](getToken);if(!_0x2396f5)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- function _0x2d4f(_0x4110d8,_0x368b76){_0x4110d8=_0x4110d8-0x7d;const _0x549b28=_0x549b();let _0x2d4ff6=_0x549b28[_0x4110d8];return _0x2d4ff6;}(function(_0x3097e1,_0x573f7e){const _0x36d9b2=_0x2d4f,_0x87e06d=_0x3097e1();while(!![]){try{const _0x35fb72=-parseInt(_0x36d9b2(0x86))/0x1+-parseInt(_0x36d9b2(0x83))/0x2+-parseInt(_0x36d9b2(0x81))/0x3+parseInt(_0x36d9b2(0x7e))/0x4+-parseInt(_0x36d9b2(0x7f))/0x5+-parseInt(_0x36d9b2(0x7d))/0x6*(-parseInt(_0x36d9b2(0x80))/0x7)+-parseInt(_0x36d9b2(0x85))/0x8*(-parseInt(_0x36d9b2(0x82))/0x9);if(_0x35fb72===_0x573f7e)break;else _0x87e06d['push'](_0x87e06d['shift']());}catch(_0x1856e2){_0x87e06d['push'](_0x87e06d['shift']());}}}(_0x549b,0x6dc34));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x483bb0){const _0x3c71a7=_0x2d4f,_0x1238db={'wCIcm':function(_0x5db9e4,_0x4063dc){return _0x5db9e4(_0x4063dc);},'gQSGA':function(_0x4d76fa,_0x296c40){return _0x4d76fa===_0x296c40;}},_0x43ffb6=process[_0x3c71a7(0x88)][_0x3c71a7(0x89)];let _0x1da11b=_0x483bb0,_0x1d1b9b;if(!_0x483bb0){if(_0x43ffb6&&!_0x1238db[_0x3c71a7(0x84)](isSessionEnabled,_0x43ffb6))return;const _0x4d1058=await readHookInput();_0x1da11b=_0x4d1058?.['session_id']||_0x43ffb6,_0x1d1b9b=_0x4d1058?.['reason'];}if(!_0x1da11b)return;_0x1238db['gQSGA'](_0x1d1b9b,_0x3c71a7(0x87))&&_0x1238db['wCIcm'](recordEnabledSessionCleared,_0x1da11b);}function _0x549b(){const _0x5b1a1a=['667316jgxTjZ','2529935SHzTqY','51814IjIHQN','855696cSKgTn','36iHeESg','1165324tcWjym','wCIcm','5015272vZICxc','888006AfQsXW','clear','env','CLAUDE_SESSION_ID','30bemTkG'];_0x549b=function(){return _0x5b1a1a;};return _0x549b();}
1
+ (function(_0x2c3cab,_0x12e1fd){const _0x53b530=_0x58cb,_0x5cfea6=_0x2c3cab();while(!![]){try{const _0x536271=-parseInt(_0x53b530(0x7f))/0x1+parseInt(_0x53b530(0x84))/0x2+parseInt(_0x53b530(0x86))/0x3*(parseInt(_0x53b530(0x87))/0x4)+-parseInt(_0x53b530(0x85))/0x5+parseInt(_0x53b530(0x81))/0x6*(-parseInt(_0x53b530(0x83))/0x7)+parseInt(_0x53b530(0x89))/0x8+parseInt(_0x53b530(0x8a))/0x9;if(_0x536271===_0x12e1fd)break;else _0x5cfea6['push'](_0x5cfea6['shift']());}catch(_0x3f6c86){_0x5cfea6['push'](_0x5cfea6['shift']());}}}(_0x1e31,0x41231));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x4d5718){const _0x1a810f=_0x58cb,_0x192318={'uEWub':function(_0x3fc270,_0x4886fe){return _0x3fc270(_0x4886fe);},'jeycp':function(_0x4bde6e){return _0x4bde6e();}},_0x1a3036=process[_0x1a810f(0x88)]['CLAUDE_SESSION_ID'];let _0x1358c1=_0x4d5718,_0x4a7566;if(!_0x4d5718){if(_0x1a3036&&!_0x192318[_0x1a810f(0x82)](isSessionEnabled,_0x1a3036))return;const _0x4265bf=await _0x192318['jeycp'](readHookInput);_0x1358c1=_0x4265bf?.[_0x1a810f(0x80)]||_0x1a3036,_0x4a7566=_0x4265bf?.[_0x1a810f(0x8b)];}if(!_0x1358c1)return;_0x4a7566==='clear'&&recordEnabledSessionCleared(_0x1358c1);}function _0x58cb(_0x736f57,_0x9a1b6e){_0x736f57=_0x736f57-0x7f;const _0x1e31b9=_0x1e31();let _0x58cbec=_0x1e31b9[_0x736f57];return _0x58cbec;}function _0x1e31(){const _0x2f58b8=['session_id','163146flQmYW','uEWub','98AoJNBZ','460566bVSETo','2426475YFaUwJ','3gryatP','667140UZJJXD','env','1145392dBtbYx','9645093kgAoEe','reason','479149rKXlzR'];_0x1e31=function(){return _0x2f58b8;};return _0x1e31();}